Keresés

Hirdetés

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

  • And

    veterán

    válasz Szirty #5419 üzenetére

    Szia,
    Kösz a választ! Egy viszonylag egyszerű gépről / programról van szó, amihez természetesen nincs meg az eredeti kommentezett, szimbólumokkal ellátott gyári program, csak egy backup (az olasz gyártó lepattintott, mikor megpróbáltuk elkérni a programot, bár olasz nyelvű kommentekkel csak egy kicsit lennénk előrébb ;]). Szerencsére a Bartec HMI-ről letöltött projekt visszaállítható volt szerkeszthető formába, az sokat segített a változók és a programrészletek azonosításában.
    Összesen hét DB létezik a programban, három shared és négy instance blokk. Ezeken kívül 24 darab FC, két FB és öt OB (amiből 3 lényegében tök üres, gondolom a PLC leállását megelőzendő, mint az OB121, OB122). Bónuszként látok 1-1 SFB-t és SFC-t.
    Az új DB-t egyszerűen új objektumként próbáltam létrehozni a jó öreg Step7 v5.3 SP1 alatt (Insert new object / Data Block), adtam neki nem létező sorszámot, de ha létezőt próbáltam, akkor úgyis egyből piros lett a DB sorszáma. Szóval shared DB-ként (mondjuk DB51 névvel) simán létrehoz egy üres blokkot, ha viszont azt mondom neki, hogy legyen Instance DB, a legördülő menüből kiválasztom hozzá az FB41-et és Ok-t nyomok, akkor némi gondolkodás után feldob egy 'Insert Data Block' üzenetablakot, benne a következő üzenettel: "Insert Data Block (34:4343) / W Ln 000001 Col 020: No valid offline ASCII type description found for called or addressed block FB 41."
    Erre a help annyit mond, hogy "Description of Error: This is just a warning. No type description is available for the block you called. ". Erre az ablakra Close-t lehet nyomni, és a DB nem jön létre.
    "OB1-ből vagy egyéb blokkból hívott FB41-nél is biztosítható a pontos ciklusonkénti hívás a blokk EN "bemenete" előtt megadott megfelelő feltétellel."
    Látszatra mindenféle egyéb feltétel megadása nélkül hívja meg a meglévő FB41-et egy STL-ben írt blokk, a hívás előtt sem látok semmilyen feltételes elágazást vagy időzített hívásra utalást. Az FB41-et hívó FC is két áttétellel hívódik meg az OB1-ből (OB1: Call FC20, FC20: Call FC51, FC51: Call FB41), látható feltételek nélkül.

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