logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak stworzyć generator 1Hz w STEP7 do cyklicznego sterowania lampą?

dobry001 22 Mar 2007 11:07 11191 9
  • #1 3706096
    dobry001
    Poziom 13  
    Posty: 51
    Ocena: 2
    Stawiwam pierwsze kroki w STEP7 i proszę o pomoc.
    Jak programowo "zrobić" generator przebiegu powiedzmy o częstotliwości 1 Hz (chodzi o cykliczne włączanie i wyłączanie np. lampy - 0.5 s świeci 0.5s nie świeci)
  • #2 3706276
    pawslaw
    Specjalista Automatyk
    Posty: 223
    Pomógł: 35
    Ocena: 11
    Witam,
    Właściwości CPU zakladka Cycle/Clock Memory, zaznacz Clock Memory i ustaw bajt, w którym bity będą systemowo taktowane.
    Period duration/frequency is assigned to each bit of the clock memory byte:
    Bit                  7       6         5     4        3     2       1     0
    Period duration (s): 2       1.6       1     0.8      0.5   0.4     0.2   0.1
    Frequency (Hz):      0.5     0.625     1     1.25     2     2.5     5     10
    

    Pozdrawiam
    Paweł
  • #4 3708269
    dobry001
    Poziom 13  
    Posty: 51
    Ocena: 2
    Dziękuję za szybką odpowiedz.
    Samemu udało mi się wymyślić coś takiego:

    A T4
    JC MR_P
    AN M0.0
    = M0.0

    MR_P:
    AN T4
    L S5T#500MS
    SE T4

    W symulatorze działa. W sterowniku jeszcze nie sprawdzałem.

    w moim step7 v5.3 Właściwości CPU zakladka Cycle/Clock Memory są tylko do odczytu :-(
  • #5 3711507
    andy1955
    Specjalista Automatyk
    Posty: 700
    Pomógł: 136
    Ocena: 50
    a czy nie lepiej coś takiego ?
    Załączniki:
    • Jak stworzyć generator 1Hz w STEP7 do cyklicznego sterowania lampą? generator.gif (1.95 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #6 3718529
    ziemson

    Poziom 16  
    Posty: 123
    Pomógł: 11
    Ocena: 4
    Moze i lepiej, ale marnujesz 2 timery. W malym projekcie nie ma problemu, a uzywajac Cycle/Clock Memory nie zuzywasz praktycznie wcale zasobow CPU.
    Konto firmowe:
    PTControl Z.Smyk, R.Karczewski Sp.J.
    Montwiłła 55, Grodzisk Mazowiecki, 05-825
  • #7 3719775
    andy1955
    Specjalista Automatyk
    Posty: 700
    Pomógł: 136
    Ocena: 50
    Cytat:
    Moze i lepiej, ale marnujesz 2 timery


    Może i masz rację ale nie można być aż tak skąpym :D
    Praktycznie każde sterowanie S7-300 posiada 2048 timerów , a więc nie obawiaj się, że zabraknie timerów.
    W 99 % używam taktmerkera ustawionego w Hardware ale są czasami sytuacje, że potrzeba impulsów o określonym czasie trwania oraz przerwie między nimi.
    Dodam,że pytanie brzmiało:
    Cytat:
    jak programowo "zrobić" generator przebiegu powiedzmy o częstotliwości 1 Hz
  • #8 3719892
    ziemson

    Poziom 16  
    Posty: 123
    Pomógł: 11
    Ocena: 4
    andy1955 napisał:
    Cytat:
    Praktycznie każde sterowanie S7-300 posiada 2048 timerów


    Z tego co wiem nie takie kazde, bo tylko CPU 319, pozostale maja od 128 do 512 timerow. Wiec przy 128 kazdy timer jest dosc cenny. A jak zrobic najprostszy generator, napisal pawslaw.
    Konto firmowe:
    PTControl Z.Smyk, R.Karczewski Sp.J.
    Montwiłła 55, Grodzisk Mazowiecki, 05-825
  • #9 3721865
    marte
    Poziom 13  
    Posty: 56
    Pomógł: 4
    Ocena: 2
    Witam!

    Bardzo łatwo mozna zrobić generator używając tajmera oraz XOR....
    W 1 networku wstawiasz tajmer PULSE z odpowiednim stykiem.
    W kolejnym networku realizujesz XOR.

    Pozdrawiam
  • #10 3722313
    step
    Poziom 11  
    Posty: 14
    Tak Czytam i muszę się włączyć a sprawa dotyczy timerów w s7 i powiem wam że ich liczbę ogranicza tylko pamięć na karcie. Ja osobiście nie używam timerów siemensa korzystam z funkcji SFB3,SFB4,SFB5 zachęcam popróbować.

Podsumowanie tematu

✨ Dyskusja dotyczy sposobu realizacji generatora sygnału 1 Hz w środowisku programistycznym STEP7 do cyklicznego sterowania lampą (0,5 s włączona, 0,5 s wyłączona). Jednym z proponowanych rozwiązań jest wykorzystanie funkcji Cycle/Clock Memory w właściwościach CPU, gdzie poszczególne bity bajtu taktują sygnał o określonej częstotliwości, w tym 1 Hz. Jednak w niektórych wersjach STEP7 (np. v5.3) opcja ta jest tylko do odczytu. Alternatywnie można zastosować timer (np. S5T#500MS) w połączeniu z logiką sterującą (np. instrukcje JC, AN, SE, L) do generowania impulsów. W dyskusji pojawiła się także propozycja użycia timerów PULSE i operacji XOR do prostego generatora. Poruszono kwestię zasobów timerów w sterownikach S7, gdzie liczba timerów zależy od modelu CPU (od 128 do 2048), co wpływa na wybór metody. Zwrócono uwagę, że użycie Cycle/Clock Memory nie obciąża zasobów CPU, ale w praktyce timerów jest zwykle wystarczająco dużo. Wspomniano także o funkcjach systemowych SFB3, SFB4, SFB5 jako alternatywie do standardowych timerów Siemens.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA