Hirdetés

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

  • Szirty

    őstag

    válasz #95904256 #2311 üzenetére

    Hali akosf!

    "Csak a blokkok szerkezete másolódik, a tartalma nem. Legalábbis visszatöltés után a PLC-ben a DB "Initial value" értékei nullázák az on-line tartalmat."

    Lesz itt egy kis keveredés úgy érzem.
    Hiszen a PLC-ben lévő DB tartalom maga az online tartalom!

    Megpróbálom részletesebben leírni. Valószínűleg kitérek pár olyan részletre is, amiket már régen ismersz, ezért elnézést kérek, de lehet hogy pont egy másik, hasonló részlet kapcsán válik világossá a dolog.

    A lényeg, hogy a DB blokkoknak kétféle nézete van (most nem instance, hanem shared DB-kől van szó), Adat nézet és deklarációs nézet, amik között a View menüben lehet váltani, amikor a blokk meg van nyitva.
    Az alap nézet a deklarációs nézet, itt van egy "Inital value" oszlop.
    Az Initial value oszlopban megadott értéket az adott sor akkor veszi fel, amikor először rátöltöd a DB-t a PLC, re, amiben az a blokk még nem létezik.
    Adat nézetben már két oszlopot látsz, ami a tartalomra vonatkozik. "Initial value" és "Actual value".
    Az "Actual value" a blokk adott sorának pillanatnyilag érvényes, tényleges tartalmát mutatja.

    Az egészet megduplázza az a tény, hogy vannak online (PLC-ben lévő) és offline (a PC-n a projectben lévő) blokkok.
    Ha az online blokkot nézed data view módban, akkor az "Actual value" oszlopban azokat az értékeket látod, amiket a PLC-ben lévő DB abban a pillanatban tartalmazott, amikor azt megnyitottad! ha a blokk tartalma közben a PLC-ben a program futása során megváltozott, akkor már NEM az aktuális adatot látod.
    Az éppen aktuális adatokat monitor módban láthatod, amikor az online blokkot nézed! Olyankor az adatok változása is természetesen látható, ha épp változnak.

    Ezért nehéz eligazodni amikor arról beszélünk, hogy egy DB-ben éppen mi van. Mert van:
    - Offline blokk initial value
    - Offline blokk actual value
    - Online blokk initial value (ez lényegében azonos az offline init val-lal)
    - Online blokk actual value ami az online blokk megnyitásának pillanatában volt
    - Online blokk actual value monitorozva: a PLC-ben lévő pillanatnyi adatok

    Ha pl. egy DB egy adatának tartalmát a PC-ről meg akarod változtatni, akkor megteheted hogy az offline megnyitott DB-ben átváltasz data view-re, ott átírod az actual value értéket, majd rátöltöd a blokkot a PLC-re.
    Ezt a módszert nem nagyon szoktuk használni, mert a művelet az egész offline blokkot rátölti a PLC-re. Tehát ha azon kívül az adaton kívül amit kézzel átírtunk a PLC-ben már eltérő értékek vannak, akkor azok is felülíródnak a régebbi, offline blokkban lévő adatokkal.
    De átírhatod a monitorozott online blokkban is.

    Ha az a feladat, hogy a PLC-ben lévő DB adatait lementsük a PC-n lévő offline projectbe, akkor csak azt kell tenned, amit korábbi üzenetben már leírtam:
    Managerben átváltasz online nézetre, ott kiválasztod az összes adatblokkot, amit menteni akarsz, majd COPY. Visszaváltasz offline nézetre és ott PASTE a felülírás kérdésére Yes ALL-t válaszolsz.
    Innentől kezdve a PC-n a kijelölt offline blokkok pontosan azt az adatot fogják tartalmazni, amik a PLC-ben akkor voltak, amikor a Yes to All-t nyomtál a felülírás kérdésre.
    Erről meg is győződhetsz rendkívül egyszerűen:

    Megnyitsz egy offline DB-t és átváltasz adat nézetre, megnézed milyen adatok vannak ott. Megnyitod ugyanazt a blokkot online nézetben, átváltasz adat nézetre és ott ugyanazt fogod látni! Feltéve természetesen, hogy azalatt a pár perc alatt, ami a blokkok áttöltése és az ellenőrzés között eltelt, a PLC programja nem változtatta meg őket!

    "Ráadásul nem csak akkor törlődnek a szimbólumok és kommentek, ha a szerkezet eltér, hanem már akkor is ha csak az időbélyegek eltérnek."

    Akkor bizony megváltoztattad vagy valaki megváltoztatta a blokkban lévő adatsorok deklarációját vagy a PLC-ben, vagy a projectben.
    A timestamp eltérése sosem okozza a szimbólum információk elvesztését.Nem okozz a blokk adatainak eltérése sem. Sőt a szimból infók akkor is megmaradnak ha az offline blokkban megváltoztatom egy vagy több sor kommentjét!
    Azonnal megszűnik azonban minden szimból infó, ha az online és offline blokkok szerkezete eltér, mert valaki megváltoztatott egy adattípust, init value értéket, vagy új sort rakott bele, vagy meglévő sort törölt!
    Sőt akkor is elvesznek, ha valaki a végére rak egy új sort, majd úgy dönt hogy nem kell és törli. Innentől kezdve már teljesen mindegy hogy a két blokk szerkezete azonos, a szimbólum infók elvesznek, mert az adatblokk szerkezetét megváltoztatták!

    [ Szerkesztve ]

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