Hirdetés
- Luck Dragon: Asszociációs játék. :)
- Luck Dragon: Óraátállítás
- NvidiaRTX: Xiaomi Electric Scooter 6 Max: Az első rollerem
- bambano: Bambanő háza tája
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- Geri Bátyó: Agglegénykonyha különkiadás 2 – Kajás poénok
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Magga: PLEX: multimédia az egész lakásban
Új hozzászólás Aktív témák
-
Szirty
őstag
válasz
horvathcsaba
#264
üzenetére
Helló horvathcsaba!
Nos az általad idézett PID controler hívás szerintem a következők miatt nem úgy működik mint ahogy várod:
1.
I_ITL_ON:=TRUE
Ez az integráló tag inicializálását kapcsolja be, és mivel TRUE értéket adtál neki, nálad ez aktív. Az inicializálás azt csinálja, hogy ha az I_ITL_ON:=TRUE, akkor az integráló tagbe beírja az I_ITL_VAL értékét, ami a te hívásodnál 0. Ezzel gyakorlatilag hatástalanítod az integráló tagot, mivel az nem lesz képes kimozdulni 0 értékről (amennyire tudom az I_ITL_ON nem élvezérelt).2.
CYCLE :=T#10S
A nagyobb gond szerintem ezzel lesz. A PID controller hívásának van egy olyan szabálya, hogy konstans időközönként kell meghívni! Tehát nem tehetd bele simán a programban, ahol minden PLC ciklusban lefut, mivel a PLC ciklusok hossza nem konstans. Két kézenfekvő hívási mód kínálkozik:
- Egy élvezérelt cycle memory bittel hívod.
- Cyclic interruptból hívod (pl. OB35)
Mindkét megoldás biztosítja a fenti feltételt. A PID CYCLE paraméterében pedig pontosan ugyanezt az időt kell megadnod amennyi időnként hívod (ms pontossággal). Ebből tudja a PID "belül", hogyan telik az idő, ennek alpján számolja az integrálási és diff időket stb. Ezért ha ez a paraméter nem jól van megadva, akkor a PID rendszerint kiakad vagy nem megfelelően működik.
A dolog folyománya hogy a PID legkisebb reakcióideje a hívási ciklusidőnél semmiképp nem lehet kisebb.
A fenti 10s tehát valószínűleg nem jó, hacsak nem 10 másodpercenként hívod a PID-et.3.
PVPER_ON:=TRUE
Ha a PVPER_ON be van kapcsolva, akkor a PID-nek a mért értéket (process variable) perifériaszó formában adod meg és a PID-re bízod az érték normalizálását (0-100% tartományra konvertálását), amit a PV_FAC mint szorzó és PV_OFF mint eltolás értéke alapján számol ki. Ezek nálad 1 és 0. Tehát ettől működhet ugyan, de a PIW 256-ban 0-100 tartományban kell tartani az értéket. A Step7 alapból feltelepít egy doksit ami angolul ugyan, de elég jól leírja mi merre meddig. Ebben van is egy blokk diagram a PID-ről, ami segít áttekinteni a paramétereket:
Új hozzászólás Aktív témák
- Kingdom Come: Deliverance 2 fordító: "Kirúgtak, és AI-val pótolnak”
- VR topik
- Trollok komolyan
- Futás, futópályák
- Kerékpárosok, bringások ide!
- iPhone 12 mini - kicsi a bors, de bitang erős
- Gumi és felni topik
- Xiaomi 15T Pro - a téma nincs lezárva
- Luck Dragon: Asszociációs játék. :)
- Luck Dragon: Óraátállítás
- További aktív témák...
- Bomba ár! Dell Latitude 5490 - i5-8G I 8GB I 256SSD I 14" HD I HDMI I Cam I W11 I Garancia!
- Bomba ár! Lenovo X1 Yoga 1st - i5-6G I 8GB I 512SSD I 14" FHD PXCsík I HDMI I W11 I Cam I Gari
- Bomba ár! Lenovo ThinkPad T490 - i5-8G I 8GB I 256SSD I 14" FHD I HUN I Cam I W11 I Garancia!
- HP ProDesk 600 G4 USDT,Pentium Gold G5400T,8GB DDR4,256GB M2 SSD,WIN11
- Xbox One S 1TB
- Csere-Beszámítás! Playstation 5 Lemezes kiadás!
- Felújított laptopok számlával, garanciával! Ingyen Foxpost/PostaPont!
- GYÖNYÖRŰ iPhone 13 128GB Red-1 ÉV GARANCIA - Kártyafüggetlen, MS4373, 100% Akkumulátor
- Xbox Game Pass Ultimate előfizetések kedvező áron
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
