Elektroda.pl
Elektroda.pl
X
SterControlSterControl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

STEP7 - Czym się różni M od DB

04 Sty 2012 21:45 1797 5
  • Poziom 18  
    Czy występuje jakaś istotna różnica między wykorzystaniem markerów a bitów umieszczonych w DB? Dajmy na to taki przykład:

    Code:
    -| M10.0| -- |M10.1|-- (M20.0)
    

    a

    -|DB1.DBX0.0|--|DB1.DBX0.1|---(DB1.DBX0.2)--

    Czy występuje tu jakaś różnica prędkości zapisu, odczytu albo jakaś inna pułapka?
    Darmowe szkolenie: Ethernet w przemyśle dziś i jutro. Zarejestruj się za darmo.
  • SterControlSterControl
  • Poziom 24  
    Pułapki nie powinno być :-)

    Pamięć M - to obszar markerów (flag) - dostępne są bezpośrednio w każdym sterowniku.
    Bloki danych DB należy wpierw zadeklarować i stworzyć ich strukturę, która może zawierać dowolne zmienne (od bitów, poprzez bajty, słowa, tablice itp. także różnych typów: int, real, string, time).
    Jest to tak jakby dodatkowy obszar pamięci.

    Generalnie bloki DB tworzysz aby przeznaczyć je do pełnienia konkretnej funkcji, związanej np. z jakąś częścią logiki.
    Również występują jako dane skojarzonych z nimi bloków funkcyjnych FB.

    Co do czasu odczytu/zapisu - tutaj nie podam szczegółów.
    Przypuszczalnie dostęp może być trochę wolniejszy (lecz prawie niezauważalny dla normalnego użytkownika).
    Operacje R/W przebiegają pośrednio, ponieważ w odpowiednim rejestrze znajduje się numer bloku DB (coś jak adresowanie pośrednie).
    Poprzez składnię jaką podałeś poniżej, przebiega to automatycznie.
  • SterControlSterControl
  • Poziom 12  
    Różnica jest taka, że po zaniku napięcia wartość zapisana jako M (marker) nie pamięta stanu przed zdarzeniem i posiada stan 0. Wartość zapisana w DB pamięta stan po zaniku napięcia, więc jeśli przed zdarzeniem miała stan TRUE taki też będzie miała po starcie sterownika.
  • Poziom 17  
    Markery też bęą pamiętane pod warunkiem, że będą zadeklarowane jako Retentive
  • Poziom 13  
    Podepnę się pod temat i zapytam czy jest możliwośc bitowi DB nadac symbol.