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

Jak napisać program PLC 314C-2DP do sekwencyjnego sterowania tranzystorami?

rwrojtek 11 Cze 2007 20:14 1440 3
  • #1 3974758
    rwrojtek
    Poziom 11  
    Posty: 37
    Pomógł: 1
    Ocena: 3
    Potrzebuję wykonać program, który przełączał będzie kolejne tranzystory (komutator elektroniczny) w określonej kolejności i czasie. Na pierwszej stronie poniższego dokumentu jest pokazana przykładowa sekwencja:
    http://www.komel.katowice.pl/ZRODLA/FULL/72/ref_29.pdf
    W tym momencie nie interesuje mnie czas przełączeń i długość impulsów (mogą być dowolne), bo tym w rzeczywistości będzie sterował sterownik PLC który na wejściu dostanie 3 sygnały z czujników hallotronowych umieszczonych na początku każdego z pasm w silniku (tak w skrócie). Niestety nie wiem jak napisać program, który będzie wykonywał przełączenia 6 tranzystorów w podanej sekwencji. Program ten posłużyć ma tylko do sprawdzenia poprawności połączeń komutatora i dodatkowej elektroniki (czy ją dobrze zmontowałem). Oczywiście po rozbudowie o dodatkowe wejścia powinien w przyszłości sterować silnikiem prądu stałego z komutatorem elektronicznym.
    Wykonałem przykład z:
    https://www.elektroda.pl/rtvforum/topic644938.html
    jednak jest on tylko dla jednego wyjścia a ja potrzebuję dla 6.
    Czy mogę prosić WAS o jakieś sugestie lub przykłady?


    posiadam Step7 v5.3 + SIEMENS 314C-2DP


    pozdrawiam
    Wojtek
  • #2 3974792
    PIXOSTAT
    Poziom 24  
    Posty: 544
    Pomógł: 52
    Ocena: 132
    Ja bym to zrobił za pomocą wskaźnika do tablicy DB, w której umieściłbym sekwencję. Licznikiem inkrementowanym co 1 krok sekwencji sterującej ładowałbym rejestr wskazujący na konkretną komórkę pamięci - może sposób mało oszczędny ale bardzo łatwy wizualnie do zmiany sekwencji - po prostu ją widać! Oczywiście w jednym bajcie DB zapisał bym stan 6 wyjść na tranzystory. Wskaźnik przestawiałbym co krok o jeden bajt, tak długo aż sekwencja zamknęła by się - wtedy zerowałbym wskaźnik na pierwszy bajt i tak w kółko.
  • #3 3976203
    rwrojtek
    Poziom 11  
    Posty: 37
    Pomógł: 1
    Ocena: 3
    Zapomniałem dodać, że jestem początkujący w STEP7, zatem to co napisał PIXOSTAT wydaje się być sensowne, natomiast nie mam pojęcia jak to zaimplementować w sterowniku. Ale dziękuję za pomoc.

    pozdrawiam
  • #4 3976582
    PIXOSTAT
    Poziom 24  
    Posty: 544
    Pomógł: 52
    Ocena: 132
    Poszukaj w sieci jak obsługuje się wskaźniki - to w sumie proste - ale trudno tak na szybko napisać cały rozdział podręcznika - nie mam aktualnie zainstalowanego STEPA, więc nie mogę Ci zrobić gotowca :cry: ale poszukam jakichś wskazówek...

    Tak sobie myślę, że można to jeszcze zrobić wpisując do 6 bajtów pamięci obszaru MBxxx poszczególne sekwencje i przesuwać je co krok wg timera podstawy czasu poleceniem rotate albo schift i wynik przesunięcia wysyłać mov-em na odpowienie QB... odpada cała arytmetyka wskaźników, a efekt ten sam :D
REKLAMA