Új hozzászólás Aktív témák
-
Shirchy
tag
Szia!
Teljesen jól írtad. Bocs,hogy kihagytam a másik encodert.
A motor encodert a szervo vezérlő kezeli. A PLC pedig egy másik encoder segítségével figyeli a munkadarab pozícióját és sebességét.
A PLC-re bevitt encoder egy 500 mm kerületű mérőkerék segítségével méri a sebességet és a pozíciót. Ennek az encodernek 1000 jel/ford a felbontása. Ez max 2000 jelet ad másodpercenként 60m/perc-es sebesség esetén.
Az anyag sebességének a mérése már eddig is működött, viszont csak álló darabolással ment a gép, ezért kellene ezt a szervo hajtásos dolgot megoldani valahogy.
A szervo vezérlőnek van enkóder kicsatolása ezért gondoltam hogy hátha lehet valamilyen beállítással magában a vezérlőben szoftveres áttétel megadásának segítségével olyan jelet kiadatni, amit a plc fel tud dolgozni.
Így a vágás csak akkor indulna ,ha a munkadarab és a vágóasztal sebessége egyezik és megfelelő pozícióban vannak egymáshoz képest.[ Szerkesztve ]
"jobb adni,mint kapni" mondta a boxoló... :P
-
Szirty
őstag
válasz Shirchy #4901 üzenetére
Üdv Shirchy!
Ha az unitronics-nak van nagy sebességű impulzus kimenete és a szoftvere ismer valamiféle motion control funkciót, akkor nem kell áthozni a PLC-be a motor encoder jeleit. A szervó tud STEP/DIR módot. Ezzel megoldható lenne. De ha a PLC nem tud STEP/DIR jelet kezelni, akkor nem érdemes foglalkozni vele.
A másik mód amit meg lehetne ezzel a felállással csinálni az, hogy a szervót sebesség vezérlés módban hajtod egy analóg PLC kimeneten keresztül. Ekkor a PLC nem ismerné a munkapad pozícióját. A szervónak küldött szinkron sebességet a PLC módosítaná a munkadarab mozgása közben a mért távolság és az elérni kívánt vágási pozíció közötti különbségének arányában.
Így a vágási pont közeledtével a szervónak egyre nagyobb sebességreferenciát adna és a munkapad sebessége épp akkor érné el a szinkron sebességet, amikor a vágási ponton van.
Ez valószínűleg nem lenne nagyon pontos, nem tudom mekkora pontosság kell.Amennyire láttam a szervóról szóló PDF-ekben az encoder kimenetén az jön ki ami a motor feedback encoderről bejön.
-
DP_Joci
tag
Sziasztok,
Van egy inkrementális encoder A és B csatornával. A plc számolja az impulzusokat, ki hogyan ellenőrizné, hogy a számolás megfelelő, tehát nem hibásodott meg az encoder.
köszi
üdv.
J. -
Shirchy
tag
Köszi!
Köszönöm a segítséget. A PLC-n csak két PWM és van két analóg kimenet van amiket ilyen alkalmazásra lehetne használni. Az egyik analóg kimenet már le van foglalva a munkadarabok mozgató motor frekiváltója miatt.
Szóval meg fogom próbálni a sebesség követős megoldást,mert így más nem maradt.
Szerinted 60 cm elég-e arra hogy a munkapad felgyorsuljon és megtörténjen a vágás is?
gondolom majd ki kell kísérletezni,de kb milyen pontosságra lehet számítani? (1-2 cm elcsúszás nem jelentene problémát)"jobb adni,mint kapni" mondta a boxoló... :P
-
Mazsika
őstag
Igen, a MAN módot amolyan mentőövnek tettem ki, hogy az operátorok tudják szabályozni kézzel is ha gond lenne.
Nem tartottam fontosnak említeni, mert ugy az nem befolyasolja egyebként a szabályzó működését. Akkor a teljesség kedvéért, WinCCről lehet manualba tenni a szabályzót, itt tudják még állítani man értékét is.Dáccsika
-
Szirty
őstag
válasz DP_Joci #4905 üzenetére
Helló DP_Joci!
Én ezt úgy csinálom, hogy amikor a hajtásnak forognia kell, akkor 100 ms-onként mintát veszek a számláló értékéből (pozícióból) és kivonom belőle az előzőleg vett minta értékét, majd veszem az eredmény abszolút értékét.
Így megkapom az egy tized másodperc alatt megtett út nagyságát. Ha ez néhány másodpercen keresztül túl kicsi vagy túl nagy, akkor hibát jelez.
Írtam erre egy blokkot.Azt kell jól kitalálni hogy milyen gyakoriságú legyen a mintavétel.
Ha az encoder felbontása kicsi vagy az üzemszerű mozgás nagyon lassú is lehet, akkor a tized mp lehet hogy rövid. Illetve jól kell meghatározni a határértéket amin kívül hibajelzés keletkezik.Rosszul megválasztott értékekkel hamis hibajelzéseket ad, vagy a valós meghibásodást későn veszi észre.
Ez észreveszi ha nem jönnek impulzusok az encoderről. Azt viszont nem feltétlenül, ha az encoder tengely és a hajtás kapcsolata elfordul egymáshoz képest (pl. eltörik az encoder kuplung, de egymáshoz ér még a két fele és hajt, de néha kihagy egy-egy kört).
Ezzel ugyanis keletkezik működés közben egy pozíció offset, az meg géptől függően törést is okozhat.Lehet egy ellenőrző pontot (szenzort) tenni valahova a mozgás útjába ahol gyakran halad el. Amikor a szenzor érzékel, akkor meg kell nézni, hogy az encoder pozíció szerint is ott van-e. Ezt nyilván egy pozíció ablakkal kell vizsgálni. Ha az ablakon kívül érkezik a szenzorról impulzus, vagy az ablakon belül nem érkezik róla impulzus, akkor pozicionálási hiba van.
-
DP_Joci
tag
Szia Szirty,
Köszi a leírást.
Most úgy oldottam meg a dolgot, hogy amikor mozgás van, akkor veszem a HSC aktuális értékét és az előző ciklus értékét. Ha ez a 2 érték egyenlő pl. 50ms ig, akkor azt mondom, hogy hiba van.A te megoldásodat használtam régen, de most győzött a lustaság. Majd ha lesz időm, akkor megírom ezt a dolgot Tia portálos verzióra is.
üdv.
J -
attrax
aktív tag
Hello,van arra valami módszer,hogy a Siemens logoból kiírtsuk a jelszókérést?
Unterschreiben
-
attrax
aktív tag
-
Szirty
őstag
Üdv!
Azt szerettem volna elérni, hogy kissé bővebben kifejtsd mit is szeretnél, hogy lehessen rá érdemben válaszolni.
A kérdésedhez, miszerint "hogyan lehet LOGO-ból kiirtani a jelszó kérést" a következő körülményeket tudom elképzelni:
1. Írtál egy programot LOGO-ra, majd azt jelszóval levédted, így ismered a jelszót de most szeretnéd ha nem kérné a jelszót, viszont nem tudod hogyan lehet kikapcsolni a jelszavas védelmet és erre vagy kíváncsi.
2. Szereztél egy LOGO-t, de van benne egy program ami jelszót kér. Szeretnéd használni valami másra a LOGO-t nem érdekel mi van benne, meg akarsz szabadulni a jelszavas védelemtől és a benne lévő programtól, hogy tiszta lappal kezdhess.
3. Van egy LOGO, ami jelszóval védett programot tartalmaz és neked ezt a programot kellene módosítani, ám a jelszót nem ismered.
Majd legközeleb...
-
Shirchy
tag
Sziasztok!
Szervo hajtás méretezésben valakinek van tapasztalata? Már mint gyakorlati oldalról. Esetleg tudtok olyan oldalt,vagy programot ahol utána tudok nézni az ezzel kapcsolatos számításoknak?
Konkrétan az érdekelne,hogy egy adott szervo motor adott tömeget mennyi idő és út alatt alatt képes felgyorsítani nulláról a motor max fordulatára, majd ugyan ezt fordítva?Azért, ha valaki tudna gyorsan segíteni ezeket a paramétereket találtam:
Mozgatott tömeg: 15kg
Motor max fordulat: 3000 RPM
Motor teljesítmény: 1500 W
Motor nyomaték: 4,77 Nm (RMS)
Motor maximális nyomaték: 14,3 Nm
Motor inertia: 12 x 10^-4 kgm^2
Áttétel 1:1
Golyós orsó: 1 fordulat 20mm mozgás[ Szerkesztve ]
"jobb adni,mint kapni" mondta a boxoló... :P
-
Esemesem
csendes tag
válasz Achilles83 #4857 üzenetére
Az általad leírt példában az osztás után az egész rész a D2000-be kerül, a maradék pedig a D2001-be. Ezek után te az FLT utasítással próbálod lebegőpontossá alakítani az eredményt. Az FLT utasítás EGY darab 16 bites egészt konvertál lebegőpontossá, amibe a D2001 már nincs benne, nem is tudná értelmezni. A megoldás az, hogy a 0-ás és a 10-es csatornát előbb alakítsd át lebegőpontossá, aztán végezd el az osztást a /F utasítással. Vigyázz, hogy ne legyen átfedés sehol, mert akkor hülyeség lehet az eredmény.
M.
-
01101010111
csendes tag
Sziasztok, egy kis segítséget szeretnék kérni tőletek. Egy TP170B MONO programját szeretném frissíteni. Az eredeti program még Protool-ban készült (v5.2 SP2), de az üzemben szeretnék kiirtani a Protool-os projekteket ezért át kell konvertálni WinnCC-be. Az a cél, hogy Wincc Flexible 2008 Advanced SP2 verzióval barkácsolni lehessen a programban. A program konverziót Protool-ból WinCC SP2-be, kis kerülővel ugyan, de megoldottam. (Előbb WinnCC 2008 SP1-el átkonvertáltam a Protoolos programot, majd WinCC 2008 SP2-vel a SP1-es programot.)
A TP-be való betöltés viszont nem megy. Egy OS update-re lenne szükség, de ezzel a hibaüzenettel megáll a folyamat:The desired action cannot be executed. This ProSave version and the operating sytem of the operating unit are not compatible. Please perform an operating system update for the HMI device. (Reset to 'factory settings' if necessary)
B5.2.2.23 Loader van a HMI-n, és a B7.2.3.0-at kéne valahogy feltenni. Az a baj hogy fogalmam sincs melyik verziószámú ProSave-re lenne szükség és honnan lehetne azt beszerezni. A legrégebbi ProSave nálam V7.4.6.0.
[ Szerkesztve ]
-
Szirty
őstag
válasz 01101010111 #4922 üzenetére
Helló!
Fel tudok ajánlani ProSave v6.0 és 7.3.3 verziókat próbálkozás céljából...
-
Szirty
őstag
-
Shirchy
tag
válasz soldi3r #4921 üzenetére
Szia!
Köszi ahogy számolt a program még névleges nyomatékkal is 12 m/s2 a gyorsulás így 0,1 mp alatt felgyorsít max fordulatra.
Mindenki:
A szervo vezérlésével kapcsolatban lenne egy elméleti megoldásom amiben szeretném a véleményeteket kérni. A PLC amivel a szervot szerettem volna vezérelni nem képes step&dir-re így a pontos pozíció követés ezzel nem megoldható.A gépen van egy másik inkrementális jeladó. Ha annak a jelét a szervovezérlő step&dir bemenetére bekötöm és csak akkor engedélyezem a bemenetet amikor indulnia kell akkor az szerintetek el tudja kapni a lépést a szervo vagy nem?
A plc ebben az esetben csak a bemenet engedélyezését vagy tiltását csinálná."jobb adni,mint kapni" mondta a boxoló... :P
-
Szirty
őstag
válasz Shirchy #4926 üzenetére
Üdv Shirchy!
Az inkrementális jeladó jelét a step bemenetre kötve elvileg a szervó pozíció szinkronban fog forogni a jeladóval.
A két forgás közötti eltérést azonban a szervó step/dir felbontása (mennyit fordul egy lépésre) és az encoder felbontása fogja adni. Ha ez nem megfelelő, akkor sokmindent nem tehetsz (hacsak a szervóban nem paraméterezhető ez).
A dir jelet neked kell előállítani. -
Shirchy
tag
Üdv!
A step bemenetre érkező/kimmenő jel arányát be lehet állítani, így elvileg azzal nem lesz probléma.
A dir jelen azt érted,hogy merre felé forogjon, vagyis kell egy digit bemenet a szervonál ami ha aktív akkor előre,ha 0 akkor hátrafelé menjen?[ Szerkesztve ]
"jobb adni,mint kapni" mondta a boxoló... :P
-
Shirchy
tag
Üdv!
Bocs kifogytam az időből.
A külső encoder-ről érkező jel és a szervo motor jele közötti eltérést egy aránybeállítással a szervo vezérlő programjában meg tudom adni.
Szóval akkor összegezve...
A step bemenetre menne az inkrementélis jeladó jele,így a bemenő step jeleknek megfelelően lekövetné a szervo a másik jeladóról érkező jeleknek megfelelően a mozgást,miután kikorrigáltam a kettő közötti különbséget a szervovezérlő paraméterei között.
Illetve kellene egy digitális bemenet a szervovezérlőn amit a PLC-vel kapcsolgatnék,hogy előre vagy hátrafelé mozogjon a szervo. Ez gondolom mikor előre felé megy lehet folyamatos egyes,majd amikor vissza kell vinni alappozícióba akkor nullázom és visszatér...
Azt hogy csak adott időben menjen a szervo előre vagy hátra... úgy gondoltam megoldani,hogy a step benetet jelét vagy szakítom vagy engedem,így csak akkor kapna step jelet mikor mennie kell.Ez így akkor működő képes elképzelés?
Illetve a szervo vezérlőben olyan funkciót hol találok,azaz mit keressek, hogy ha nem kap pl step jelet akkor álljon be egy alapjelre? (térjen vissza magától a null pontra)
[ Szerkesztve ]
"jobb adni,mint kapni" mondta a boxoló... :P
-
Szirty
őstag
válasz Shirchy #4929 üzenetére
Üdv Shirchy!
Igen a DIR jel az irányt határozza meg.
"Azt hogy csak adott időben menjen a szervo előre vagy hátra... úgy gondoltam megoldani,hogy a step benetet jelét vagy szakítom vagy engedem,így csak akkor kapna step jelet mikor mennie kell."
Kérdés az, hogyan reagál a szervó arra, ha 0 imp/s utéán egyszercsak kap 200 imp/s-et.
A rémpaidőket be kell tartani -
Shirchy
tag
Üdv Szirty!
Maximális sebességen 2000 jel/s -t ad az inkrementális jeladó... szóval 0 imp helyett egyszer csak 2000 imp menne be neki amit követnie kellene,de a maximális gyorsítást/lassítást be lehet állítani. Vagy az úgy kevés lesz?
A null pontra való visszaállásra van esetleg ötleted?
[ Szerkesztve ]
"jobb adni,mint kapni" mondta a boxoló... :P
-
Szirty
őstag
válasz Shirchy #4931 üzenetére
Helló!
Fogalmam sincs hogyan kezeli a drive ezt az esetet. Ha ilyenkor rámpázik, akkor a rámpa meredekségétől és az impulzus sebességtől függően lesz egy jó nagy követési hibád.
Ha az impulzus szám "lemaradását" kezeli, akkor a követési hibát kompenzálja, ha nem kezeli akkor megmarad.A nulla pontra állás szerintem megoldható a drive üzemmód váltásával. A leírásban említi,hogy on the fly lehet módot váltani akár a motor forgása közben is, de hogy ez alatt pontosan milyen üzemmódokat kell érteni azt nem tudom.
Tüzetesen át kell nézni a leírását. -
Dezsi82
tag
Sziasztok!
Lenne egy alkalmazásunk, ami során egy 315 2PN/DP CPU-t használunk. A PLCnek feladata lenne, hogy naplózzon adatot, és nem keveset.
Egy naplóbejegyzés nem lenne sok, max 10 bájt. Viszont jó lenne egy 10 000 rekordot tárolni. Mivel viszont már jó pár adat van a work memory-ben, az már nem fér bele. Lenne azonban egy 8 MB-os MMC. Tudtok valami módszert, hogy adatot tároljak ezen a majdnem üres MMCn, úgy hogy ha kell, olvasni is tudjak belőle?
A segítséget, ötleteket előre is köszönöm -
Dezsi82
tag
Üdv Szirty!
Örülök, hogy hasznos infóval szolgáltam. Ha esetleg valaki hasonló megoldásban gondolkodik, akkor a következőket kellet nekem figyelembe venni:
- az MMC élettartama 100 000 törlés és írás ciklus. Vagyis csak akkor írjuk, ha muszáj. Elvileg az MMC kezelő gondoskodik arról, hogy az írás ne ugyanarra a területre essen, így maximalizálva az élettartamot. De nem tudom, hogy vajon ez DBnél is megvalósul-e. Nyílván egy minden ciklusban írás, hamar kinyírja a kártyát. Jómagam úgy csinálom, hogy inkább csak írom, aztán ha 200 év múlva megtelik az MMC, akkor törli a DB tartalmát
- A DB mérete maximum 64 kB lehet, így sok adat tárolásakor lépegetni kell a DBket, esetleg automatikus létrehozásról (SFC85) gondoskodniEttől függetlenül jómagam jobban szeretem, ha a tárolást egy PC végzi, de jelen esetben a felhasználó nem kíván folyamatosan üzembe tartani egy PCt, hanem amikor szükségük van az adatra, kiolvassák, és statisztikákat végeznek.
Ráadásul egy napig keresgettem a netet megoldás után, erre a kérdés feltétele után 5 perccel megtaláltam
[ Szerkesztve ]
-
Shirchy
tag
Köszönöm a segítséget.
Beszéltem a hazai forgalmazóval. Nem tudták megmondani, hogy a gyakorlatban menni fog-e,de a vezérlő elvileg kompenzálja az eltérést.
Átolvastam a cirka 120 oldalas DriveWare (paraméterező program) leírást és elvileg van benne egy home üzemmód amit,ha sikeresen felparaméterezek magától üzemmódot vált egy bizonyos ponton. Ekkor megáll és visszamegy alaphelyzetbe,tehát a túlfutás sem jelentene problémát. A baj az,hogy a gyakorlatban leghamarabb is csak jövőre lesz valami a projectből, viszont nekem most kellene leadnom egy működőképes megoldást.Minden esetre még egyszer köszönöm a segítséget!
[ Szerkesztve ]
"jobb adni,mint kapni" mondta a boxoló... :P
-
DP_Joci
tag
válasz Dezsi82 #4936 üzenetére
Sziasztok,
Ez az adatmentéses téma engem is érdekel(t).
S7-1200-ban gondolkodtam hasonlóban, mégpedig úgy, hogy fájlokat hoztam létre a memória kártyán. Majd aktiváltam a plc web serverét amit ip cím alapján böngészővel el lehet érni. Innen a fájlokat le lehet tölteni, törölni stb.
Tetszőleges webes felületet lehet létrehozni ha valaki nagyon unatkozik.
Ha jól emlékszem beavatkozásra is van lehetőség (mérés indítás stb), ja igen még monitorozni is lehet a változókat.
Már viszonylag régen foglalkoztam a témával azért ilyen homályos.
Dezsi82 az adatok olvasása a te esetedben a fejlesztő szoftveren keresztül történne?üdv.
J -
DP_Joci
tag
Valamikor foglalkoztam Allen Bradley plc-vel is.
Azzal meg lehetett csinálni a következőt.
Egy PC össze van kötve egy plc-vel, a pc-n telepítve van excel amivel készült egy makró és a beállított plc változótól függően mentette az adatokat egy file-be. Talán egy RSLinx elég volt ehhez a művelethez.Hasonló megoldás létezik Siemensben?
Minél olcsóbb annál jobb.
pl. S7-1200 etherneten összeköthető a PC-vel. A vevők-nek általában van egy felesleges PC-je. A szoftveres megoldás a kérdéses. -
DP_Joci
tag
Használja valaki a POKE_BLK utasítást S7-1200-as plc-vel?
Help szerint működni kell.
Írtam egy programocskát, ami szimulátorral működik, igaz S7-1500-al, de ahogy letöltöttem egy s7-1200-ra itt nem csinálja a dolgát.
SCL-ben kell megírni, Tia V13-at használok és a plc is V4.0 –ás S7-1214 –es. -
Dezsi82
tag
válasz DP_Joci #4938 üzenetére
Üdv
Az én esetemben vagy WinCC Flexible vagy Zenon lesz használva.
Elég nagy az esélye a wincc flexible-nek. Azt még ki kell próbálnom, hogy vajon tudok-e olvasni unlinked db-t, vagy sem WinCC Flexible-lel. Ha nem, akkor a PLCbe kell tennem egy függvényt, ami kiolvas egy sort egy elérhető db-be. -
Dezsi82
tag
válasz DP_Joci #4939 üzenetére
Üdv!
Az RSlinx legtöbb verziójával elérhető, amit írtál, amit különben DDE-nek hívnak.
Ezt gyári szoftverrel ethernetes PLCnél szerintem OPC szerverrel a legegyszerűbb elérni. De kinek mi az olcsó. Nekem a legolcsóbb, hogy írok egy alkalmazást Delphiben, illetve egy egyszerű programrészt a PLCben, aztán mehet is a naplózás -
DP_Joci
tag
válasz Dezsi82 #4942 üzenetére
Valamikor ilyen Delphi-s dolgokkal foglalkoztam a régi szép időkben, talán prodave nevű drivert kellett hozzá használni, hogy profibuszon meg MPI-on kommunikáljon a PC a PLC-vel.
De már nem emlékszem ezekre a dolgokra.
Ha esetleg lenne feleslegben egy ilyen Delphi-s adatgyűjtögetős programocskád, amivel profineten keresztül lehetne naplózgatni, akkor szívesen lecsapnék ráüdv.
J. -
Dezsi82
tag
válasz DP_Joci #4943 üzenetére
Az a helyzet, hogy univerzális programot még nem készítettem, mindegyik alkalmazásspecifikus. Van olyan, ami SQL szervernek küldi az adatot, illetve olyan, ami rögzített adatokat fogad, és azokat tárolja le. Így sok hasznát ezeknek nem vennéd.
Ugyanakkor valamelyik projektünket egy kicsit ráérősebb időmben átalakíthatom, és mint TCP szerver, vagy kliens el tudja végezni ezt a naplózást. Ez azonban nem Profinetes naplózó, hanem TCP socket alapú. És a PLCben is meg kell csinálni a programozás részét. Ami nem sok, csak annyi, hogy adott időközönként, vagy trigger jelre elküldje az adatcsomagot a megfelelő formában, aztán az alkalmazás elmenti csv formában.
Ha gondolod, ezt szívesen megoldom, valószínű a jövő héten jutna rá időm -
01101010111
csendes tag
-
DP_Joci
tag
válasz 01101010111 #4945 üzenetére
Szia,
Kipróbálnád úgy, hogy DB-t másolsz DB-be.
Elméletileg menni kell neki, valszeg én írtam el valamit vagy valami már használva van valahol.
köszi
üdv.
J -
zumi24
csendes tag
Sziasztok!
Olyan problémám van,hogy adott egy s7-315 DP CPU,hozzá egy WAGO 750-333 csatoló, és még kártyák.Az alkalmazást kellene bővítenem ,de nincs meg az eredeti projekt,csak amit visszatöltöttem a plc-ből.A módosítás sikerült,csak kellene még kártyákat raknom a wago-hoz,de a HW config-ban nem enged bővíteni .Ha valakinek van ötlete szívesen venném .előre is köszönöm. -
Mazsika
őstag
Új hozzászólás Aktív témák
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen