- AirTag-riválist hoz Európába a Xiaomi
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
- iPhone topik
- Fotók, videók mobillal
- Xiaomi 15T Pro - a téma nincs lezárva
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Jolla és SailfishOS tapasztalatcsere
- OnePlus 15 - van plusz energia
- Samsung Galaxy A54 - türelemjáték
- Egy héten belül itt a Motorola Edge 70 Fusion
Ú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
- PlayStation 5
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Bundle topik
- AirTag-riválist hoz Európába a Xiaomi
- Kormányok / autós szimulátorok topikja
- Fejhallgató erősítő és DAC topik
- Szinte meg sem jött, máris fogyókúrára fogták a Logitech Rapid Triggeres egerét
- Milyen monitort vegyek?
- Épített vízhűtés (nem kompakt) topic
- OLED TV topic
- További aktív témák...
- Lenovo X390 i7 8665U, 16GB RAM, 512GB SSD, jó akku, számla, 6 hó gar
- Eladó mechanikus billentyűzet - MSI VIGOR GK60 (magyar kiosztás)
- Apple iPhone 14 Pro 128 GB 100% akkumulátor Deep Purple 12 hónap Garancia Beszámítás Házhozszállítás
- Lenovo T490S i5 8360U, 16GB RAM, 256GB SSD, jó akku, számla, 6 hó gar
- Apple Watch Series 11 GPS 46mm Black - Új, bontatlan, 3 év gari, akár beszámítással
- GYÖNYÖRŰ iPhone 15 Pro Max 256GB Fehér Titán - 12 hónap JÓTÁLLÁS - Kártyafüggetlen, 100% Aksi
- Asus RP-AC87 AC2600 Wi-Fi range extender
- HIBÁTLAN iPhone 14 Pro 256GB Gold- 1 ÉV GARANCIA - Kártyafüggetlen, MS4514
- Xiaomi 13 Pro 12/256GB Ceramic Black használt 6 hónap garancia
- BESZÁMÍTÁS! ASRock A520M R5 3600 16GB DDR4 512GB SSD GTX 1060 6GB ZALMAN T3 Plus Deepcool 400W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

