Hirdetés

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

  • Szirty

    őstag

    válasz DP_Joci #3834 üzenetére

    Üdv DP_Joci!

    "Ha jól tudom, akkor, ha felfutó élre meghívok egy OB –t, akkor az egyszer lefut és végrehajtja a benne lévő dolgokat. Majd kell egy másik felfutó él az újabb híváshoz."

    A HW megszakítás OB-t nem te hívod meg, hanem a rendszer!! Ettől HW megszakítás.
    Egy bemenetre tudod beállítani, hogy amikor a bemenet él átmeneten megy át, akkor az OB lefut.
    Neked pont ez kell, ha azt akarod, hogy a bemenet változását a program a lehető legkisebb időveszteséggel észlelje.
    Feltéve természetesen azt, hogy a mérést indító esemény a PLC-n kívül keletkezik és nem a PLC programban. Az utóbbi estben ugyanis egy egészen egyszerű feltételes hívással indíthatod a mérést, mindenféle megszakításos trükközés nélkül.

    Egyszerűen beírod a mérés indító megszakítás OB-ba, hogy kapcsolja be a mérést és indítsa el a 100ms időt.
    A főprogramban meg mérsz amikor a megszakítás OB által indított idő letelik és újraindítod az időt, ha a "mérés folyamatban" jel aktív. A másik (mérés stop) bemenet által okozott megszakítás OB-ban meg kikapcsolod a "mérés folyamatban" jelzést, mire a főprogram leállítja a további méréseket
    Ha a mérést nem külső esemény indítja, akkor a feladat még ennél is egyszerűbb.

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

Hirdetés