Keresés

Új hozzászólás Aktív témák

  • Szirty

    őstag

    válasz horvathcsaba #267 üzenetére

    Helló horvathcsaba

    Ok, én nem tudhattam mit olvastál már a témában, elnézést ha már ismert forrást ajánlottam.

    Szintén a példa hozta. Igazából az OB35-be tettem a PID-et. A S7 help az OB35-re 100ms intervallumot ír.

    Az jó lehet. Én is 100ms-re szoktam tenni a PID-et. (néha 500-ra).
    Egyébként az OB35 hívási gyakorisága állítható a hardver konfigban (de a dolog CPU-tól is függ).

    Akkor a CYLE is 100ms kell legyen? Legalábbis így értem.

    Pontosan! Tehát: CYCLE :=T#100MS

    Nekem ebből az jön le, hogy a %-ra alakítás miatt a PIW 256 nem kell, hogy 0 és 100 között legyen.

    Ez így igaz, de azt is odaírtam előtte, hogy a PVPER_ON értékét további két paraméter szerint, a PV_FAC mint szorzó és PV_OFF mint eltolás értéke szerint skálázza.
    Ezeket az értékeet azonban az általad idézett példa defaulton hagyta, vagyis aszorzó 1, az eltolás pedig 0. Tehát így NEM végez skálázást.
    Ennélfogva a PV értéke csak akkor marad 0-100 tartományban, ha a PVPER_ON-nak megadott perifériaszavad is azon belül marad.
    Egyébként a skálázás lényege az amit le is írtál. Én csak azért említettem mert minek tetted skálázós bemenetre, ha aztán meg mégsem skáláztad.

    Nekem ebből az jön le, hogy a %-ra alakítás miatt a PIW 256 nem kell, hogy 0 és 100 között legyen. Mert PIW 256 = 0 -> 0% és PIW 256 = 27648 -> 100%.

    PIW256 = 27648 csak akkor lesz 100%, ha a PV_FAC paraméterbe nem egyet teszel, hanem 0.003616898148148148-at, vagyis: PV_FAC :=3.616898e-003
    De egyébként úgy van, ahog írtad!

Új hozzászólás Aktív témák