- AMD vs. INTEL vs. NVIDIA
- Kettő együtt: Radeon RX 9070 és 9070 XT tesztje
- Apple asztali gépek
- Azonnali fotós kérdések órája
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Házimozi belépő szinten
- Milyen alaplapot vegyek?
- Dell asztali gépek
- Milyen billentyűzetet vegyek?
- VR topik (Oculus Rift, stb.)
Új hozzászólás Aktív témák
-
Szirty
őstag
válasz
Shirchy #4899 üzenetére
Helló Shirchy!
Jól számoltál 3000rpm-hez 3000 rev/pulse jeladónál 150kHz jön ki.
Ide tehát a 10kHz-es bemenet kevés lenne.De van amit nem értek.
A szervó motoron lévő encoder 150kHz-es jelét nem a PLC-d fogadja szerintem, hanem a szervó vezérlő.Gondolom a munkadarab mozgását (az előző vágás óta megtett útját) is kell mérni és a szervóval mozgatott munkapad pozícióját is.
Ez két encoder. Egyiket a szervó vezérlő kezeli (munkapad helyzete) a másikat a PLC, de nem írtad ez milyen enecoder lenne. Na az nem lehet olyan ami 10kHz-nél nagyobb frekvenciájú jelsorozatot ad.Melyik eszköz pontosan milyen szerepet kap a műveletben?
-
Shirchy
tag
Hali!
Van egy feladatom amiben elakadtam és nem tudom hogyan tovább. Remélem tudtok segíteni.
Egy szervoval hajtott munkapad mozgatását kellene megoldanom.
A munkapad mozgatása repülőollós daraboláshoz kell. Az alapgép maximum 60m/perc-es sebességgel tudja adagolni a darabolni kívánt anyagot. A munkapad maximális újta 60cm.
A lényeg az lenne,hogy a vágáshoz 60cm-en felgyorsuljon a munkapad a darabolni kívánt anyaghoz majd miután a vágás megtörtént a munkapad térjen vissza az alaphelyzetbe amíg a következő vágási pont következik.Felhasznált eszközök:
PLC:
Unitornics V280
Unitornics V200-18-E2B
Gyorszámláló bemenet: 32bit 10kHzSzervo vezérlő:
AMC DPRAHIE-030A400Motor:
APM-SE15AEK
240V
1500W
3000rpm
beépített inkrementális jeldaó: 3000 jel/fordA probléma:
A szervo a 60m/p -es maximális követési sebességet 50 ford/mp - el tudja,azaz maximális 3000 ford/p esetén. Amennyiben jól számoltam ez 150.000 jel/mp -et jelentene. A PLC-ben mérnem kellene a sebességet és tudni a pozíciót.
Viszont a PLC le tudja lekezelni a 150.000-es jelet, ha max 10kHz a bemenet?
Szerintetek ezt gyakorlatban,hogy lehetne összehozni?
Esetleg valaki ismeri ennek a szervovezérlőnek a paraméterezhetőségét, hogy meg lehet-e adni olyan áttételt, hogy az 1 mp-re juto jelmennyiséget le tudja kezelni a PLC?
Sajnos online még nem tudtam átbogarászni a paraméterező szoftvert. -
rsf
senior tag
Hali
Igen hiba van, de ez a hiba nincs benne a diag bufferben.Ha a Tia Portalban bekapcsolom a Receive alarm-ot jobb gombbal a CPU-n. Akkor ilyenkor oda kerül egy bejegyzés. De a diag bufferbe nem.
Igazából az a problémám, hogy ennek a terepi eszköznek ki lehet olvasni az állapotát az SFC13-al, de ezt az utasítást triggerelni kell. Ezt a triggerelést kellene megoldani erre az esetre.Mert ha elveszem a tápját, vagy szétszedem a buszt akkor lefut az OB82,86, ami ilyenkor triggereli az SFC13-at,de zárlatnál is kellene egy flag. Amugy láttam, hogy az SF hibát is le lehet kérdezni a CPU-tól majd holnap kipróbálom. Csak sajna ez az utasítás is trigger vezérelt.Üdv.
-
Szirty
őstag
Helló!
Ha SF van, akkor van hiba is szerintem.
A diag buffer egyébként sem lehet üres, mert minimum az benne kell hogy legyen, amikor a CPU elindult (hacsak nem törli a program).Ha van lehetőség törölj minden hibakezelő OB-t a CPU-ból az OB1 első sorába meg tegyél egy BE-t
Nyisd meg online-ban a HW configot. Az eszközöknek van saját diag bufferük, nézd meg azokat is.
Sok DP eszköznél lehet állítani a diagnosztikát hogy mi történjen amikor... Lehet hogy ez van tiltva.De ha maga az eszköz nem is szól (nem okoz interruptot) SFC hívásokkal akkor is le lehet kérdezgetni tőlük hogy érzik magukat. Én ebbe az irányba nézelődnék...
-
rsf
senior tag
Sziasztok kellene egy kis segítség.
Terepi IO modul(nem siemens) kimenetén zárlat van.
315ös PLC SF Led bepirosodik, Tia portál szól, hogy Error in lower-level component.
Diagnostic status:Error, Diagnostics buffer: üres!!
Erre az eseményre szeretnék egy figyelmeztetést.Szóval kellene egy trigger jel, de ugy látom, hogy mivel üres a Diag buffer ezt a hibát nem tudom, hogy melyik OB jelzi a CPU-nak. az OB82,83,86 biztosan nem.
Milyen irányban kellene elindulnom?
Előre is köszi.
Üdv. -
Szirty
őstag
válasz
Mazsika #4893 üzenetére
Helló Mazsika!
Az LMN_PER jó lehet, de az azt feltételezi, hogy az értékeket százalékra normalizáltad, mivel:
Kimenő érték = Beavatkozó érték * (27648 / 100)
számítást végzi.Ami miatt az eredmény akkor ad 100%-os analóg jelet, ha a beavatkozó értéked 100.
Ez akár jó is lehet, de nem árt átgondolni."Az I és D tagot időzítve kapcsoljam, vagy valamilyen feltételhez kellene kötni?"
Nem! Én arról beszélek, hogy a hibakeresés során kapcsold ki őket.
Egyébként szerintem nem szükséges őket kapcsolgatni, a szabályzás felfüggeszthető az INT_HOLD bemenettel is, ha használod az I tagot.
De ha azt akarod, hogy nulla legyen a beavatkozó érték bizonyos esetben, akkor ez is egy megoldás. -
Szirty
őstag
válasz
Mazsika #4888 üzenetére
Helló!
Szerintem először csak a P tagot kapcsold be! A D-t és I-t ne!
"A blokkon a PV_IN-en keresztül etetem egyből a hőfokkal"
A PID kimenetén megjelenő értéket hogyan használod fel?
Ha ugyanis (mint írtad) nem normalizálod a hőmérsékletet a bemeneten (nyilván annak érdekében hogy a beállított értéket is hőmérsékletben lehessen megadni neki) akkor a beavatkozó érték is hőmérséklet lesz, ami nem biztos hogy megfelelő értéktartomány egy propszelep vezérléséhez... :-) -
byte-by
tag
válasz
#34322688 #4889 üzenetére
halo!
a grafcet egy programozási "nyelv", mint pl. a létra.
akár a siemens step 7 -tel is lehet graph (igy hívja a grafcet-et) nyelven programot írni.
viszont azt hiszem a graph modul nem része az alap programnak .
a plc fejlesztőkörnyezetek manuáljában benne vannak a lehetséges opciók, ott nézz körül.megjegyzem , a grafcet (mi anno folyamatábrának is hívtuk, nemtom mér' ) eléggé szekvenciális dolgokra használható csak igazán.
viszont az utasításlistát , a létrát és az FBD-t szint minden plc editor ismeri. ha közel áll hozzád a relés logika és/vagy a vizuális értelemzés akkor létrát vagy fbd-t javaslok, mint jeleztem ahhoz szinte bármilyen fejlesztőkörnyezet jó.(omron,siemens, macsupicsu,stb.)más megjegyzés ,feltételezem Bablena András könyvét szerezted meg, abból is az első kötetet.
amásodik kötetben épp arról szól, hogy grafcet-ben sokmindent nem célszerű programozni, abban más nyelvekről van szó.byte
-
#34322688
törölt tag
Sziasztok.
Sikerült szereznem egy plc-programozással foglalkozó könyvet, mégpedig a Plc programozás kezdőknek címűt. Abban egy grafcet-módszerről írnak. A kérdésem, milyen program szükséges a kipróbálásához, honnan tölthető ha egyáltalán van.
Köszönöm -
Mazsika
őstag
Szia!
Igen, az FB41-ről van szó (CONT_C). A blokkon a PV_IN-en keresztül etetem egyből a hőfokkal, a PVPER_ON folyamatosan resetelve van. A PID blokkot tartalmazó FC-t az OB35-ben hívom, aminek a ciklus ideje 100ms, és a PID cycle-nek is 100ms-et adtam meg.
Sajnos a hiba azóta nem jött elő, de csatolok egy képet a paraméterezésről, és az aktuális értékekről. Hátha már így is látszik belőle valamilyen hiba... -
byte-by
tag
válasz
dave0825 #4886 üzenetére
halo!
az Output Latch-et tekintheted set-nek az Output Unlatch-et pedig reset-nek gndolom.
esetleg ugyanazokkal a feltételekkel leírhatod megnézed hol seteli hol reseteli a merkert.(vagy fizikai címet)az sr tárolóhoz ismerni kell az összes set feltételt és az összes reset feltételt, ha ezekből nincs sok akkor átböngészve a programot összeszedheted őket és átgondolva berakhatod a megfelelő set vagy reset ágba.(létrában gondolkozva, de az AB -t figyelembe véve gondolom létrában van írva.)
de, mint mondtam talán átemelheted a forrásprogramot és ahol latch-el ott setelsz, ahol unlatch-el ott resetelsz.
lehet van másnak még jobb ötlete.byte
-
dave0825
őstag
Egy RsLogix 500-ban megírt programban, amiben Output Latch és Output Unlatch-ek vannak, azt hogyan lehet a legegyszerűbben átírni Simatic Step 7-be? SR-tárolóval valahogy? Vagy mivel, hogyan? (Suliba kell PLC2 tárgyhoz rövid előadásban elmondani, hogy hogy működik a program, de S7-be kellett átírnom, viszont ezeket még nem tudom, más már minden megvan nagyjából.)
-
Szirty
őstag
válasz
Mazsika #4883 üzenetére
Üdv Mazsika!
Nem írtad le konkrétan melyik PID szabályzót használod (van ám sok), de ha jól értem akkor a standard PID controllerek közül a FB41 “CONT_C”-t.
Erre fog vonatkozni a válaszom is. Ha nem ezt a PID controllert használod, akkor így járás, de utálok fölöslegesen irkálni.A szabályzó újraindítására a COM_RST (complete restart) paraméter szolgál. Ha ez TRUE értékű. Ez mindössze annyit csinál, hogy a belső változók és kimenő paraméterek értékét visszaállítja alapértékre.
Hogy melyiknek mi az alap értéke az kiderül az FB41 instance DB-jéből. Megnyitod és megnézed mi van a DB "Initial value" oszlopban. Erre áll be. A COM_RST nem élvezérelt, az init value mindaddig benne lesz a változókban amíg állapota TRUE. Természetesen amint FALSE lesz, az összes olyan változó aminek a programban értéket adsz azonnal felülíródik!!!Erre írok egy példát.
Ha a beállított értéked 20 (SP_INT) a mért értéked pedig 50 (PV_IN) és az integráló tag be van kapcsolva (P_SEL=TRUE) az erősítés 1 (GAIN) akkor lesz egy -30-as hibajeled és természetesen egy ezzel azonos beavatkozó értéked (LMN).
Ha most a COM_RST taposod (TRUE) akkor minden nulla lesz amíg ez TRUE, de abban a pillanatban ahogy felengeded (FALSE) minden azonnal visszaáll a fenti értékekre, mert kívülről (az FB41 paramétereivel) azonnal felülíródik. Tehát ez teljesen természetes, más nem is történhet, ezen nem kell csodálkozni!
Ami nem íródik felül azonnal az az integráló tag aktuális értéke, ami szintén 0 lesz egy COM_RST alatt. Hiszen üzem közben az LMN_I szépen ballag lefele a padlóig, vagy felfele a plafonig a hibajel és az integrálási idő által meghatározott mértékben, vagy beáll valahova. A COM_RST hatására nulláról újrakezdi ezt a "ballagást". Ez persze nagyon gyors is lehet rövid integrálási idő beállítása mellett vagy extrém hibajel esetén. Az integráló tag egyébként külön is alaphelyzetbe állítható az I_ITLVAL=0 és I_ITL_ON=TRUE állapottal.A legjobban úgy lehet tetten érni hogy a szabályzód miért akad ki, ha figyeled a hibajelet, és a 3 beavatkozó értéket (LMN_P. LMN_I ás LMN_D). Azonnal látni fogod melyik tag viszi el a beavatkozó értéket.
Egyébként PID élesztést lépésenként érdemes csinálni. ELőször kis GAIN (akár 0-val kezdve) és csak a P tag legyen bekapcsolva, az I lés D kikapcsolva!Van pár alapszabály a PID blokk paraméterezését és használatát illetően. Pl. hogy az értékeket normalizálni kell (vagy legalábbis célszerű) kézenfekvően %-ra.
Nagyon sok helyen elbukhat a dolog kezdve azzal, hogy pl. bekapcsolod a PVPER_ON-t, de a PV_IN-en eteted nem a PV_PER-en keresztül. EZ nagyon ostoba hiba szokott lenni.
Vagy a PV_PER-en eteted, de rosszul (vagy sehogy) van megadva a normalizáláshoz szükséges PV_FAC, PV_OFF értéke. Ha már a hibajel kiakad valamelyik végtelenbe (+ vagy -), akkor bizony itt van a baj!Ráadásul a PID blokkot nem, tudom hogyan hívtad meg, de ha P vagy D tagot is használod benne, akkor nagyon fontos hogy pontos időközönként legyen meghívva és ezt az időközt pontosan közölni kell vele a CYCLE paraméterben. ha ezek közül egyik feltétel sem teljesül, akkor a D és az I tag hülyeséget fog csinálni, mert a blokknak fogalma sem lesz arról mennyi idő telt el az előző lefutása óta.
-
Mazsika
őstag
Természetesen fel sem merült bennem ez a lehetőség, ezt csak a kommentjében feltételezett dolgokra irtam...!
És resetelni tudom ezt a szabalyzót? Pl amikor kinyit a szelep akkor kezdje "előröl" a szabályzást?
Kedden megpróbálom előidézni, lepróbálni a dolgot! és csinálok print screent. -
byte-by
tag
válasz
Mazsika #4880 üzenetére
halo !
nem hiszem, hogy a gyári blokk hibás.
"Ahogy neztem a fb parametereit a hibajel kimenet negativ ertek. Illetve azt hiszem a prop tag erteke is."
jó lenne tudni, hogy a prop gain pozitív vagy negatív konkrétan.
egyébként a hirtelen változás (pl. ez esetben a hidegvíz azonnali feltöltése) az úgynevezett "tűske", idézhet elő lengéseket, és a paraméterektől függően nyeri vissza a PID az irányítást, ha minden beállítás korrekt.
kis időt még kellett volna neki adni, hátha látsz valami változást, persze megértem, ha nem volt rá lehetőség.ha túl nagy az erősítés goromba beavatkozó jel keletkezik amit a rendszer ki akar egyenlíteni , ez akár a beavatkozó jel csökkenésével is járhat, bár nem hinném , hogy erről van szó.
használtam már negatív erősítést vákuumtartály abszolút nyomásának kiegyenlítésére, ami egy kopoltyút nyitogatott friss levegőnek.
jó lenne látni a blokkot ,monitorozva pláne.
byte
Új hozzászólás Aktív témák
Hirdetés
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Anime stílusú steampunk akció-szerepjáték lesz a Silver Palace
- AMD vs. INTEL vs. NVIDIA
- Feltörték a PROHARDVER!-es regisztrációmat (vagy elvesztettem a belépési emailcímet, 2FA-t)
- Eredeti játékok OFF topik
- Autós topik
- sziku69: Szólánc.
- Robot fűnyírók
- Kettő együtt: Radeon RX 9070 és 9070 XT tesztje
- Apple asztali gépek
- További aktív témák...
- Eladó Lenovo ThinkCentre M70q Gen3 számítógép + Lenovo ThinkVision E24-28 monitor
- ASUS X301 (RX170HD)
- Lenovo Thinkpad T495s Ryzen 5 PRO 3500U/16GB RAM/256 SSD/14" FHD touch Magyar bill. laptop eladó
- Lenovo ThinkPad X1 Yoga 4th i5-8265U/8GB/256GB NVME SSD/FHD Touch UltraBook garanciás
- Superconsole X2PRO retro játékkonzol 70000 játékkal + android box egyben
- Lenovo Thinkpad T480 csak belső akku. 8-32GB 256GB-2TB
- BESZÁMÍTÁS! Gigabyte H610M i5 12600K 16GB DDR4 512GB SSD RTX 3060Ti 8GB Rampage SHIVA Seasonic 650W
- LG 77G3 - 77" OLED evo - 4K 120Hz 0.1ms - MLA - 2000 Nits - NVIDIA G-Sync - AMD FreeSync - HDMI 2.1
- Huawei Nova Y90 128GB, Kártyafüggetlen, 1 Év Garanciával
- ASUS RT-N12+ 300Mbps router
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest