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

Literatura o szybkim I/O w PLC Siemens: przerwania, PWM, PTO

elektrokuba 05 Lis 2010 23:37 5345 12
  • #1 8707786
    elektrokuba
    Poziom 12  
    Posty: 101
    Pomógł: 2
    Ocena: 5
    Witam
    Czy ktoś może przytoczyć tutaj jakąś dostępną przez internet literaturę na ten temat? Interesuje mnie czysto praktyczne wykorzystanie w sterowniku szczególnie Siemensa. Chodzi mi tutaj o przerwania od szybkich liczników i działania na nich jak zarówno o ingerencję w szybkie wyjścia PWM PTO i jakie tam jeszcze są.
    Z góry dziękuję za odpowiedzi.
  • #2 8708548
    harry83
    Poziom 11  
    Posty: 6
    Pomógł: 1
    Ocena: 1
    Witam,
    wszystko zajdziesz na stronie siemensa,
    poszukaj na przykład podręcznika do S-7-200 dostępny w pdf,

    pozdrawiam
  • #3 8708683
    elektrokuba
    Poziom 12  
    Posty: 101
    Pomógł: 2
    Ocena: 5
    Strone siemensa już przejrzałem. Tam są straszne ogólniki. Szukam praktycznych przykładów lub szczegółowego opisu.

    W jaki sposób można wciągnąć sygnał z PWM do struktury programu i pracować na nim poza cyklem PLC? Potrzebuje szybko włączać i wyłączać PWM i porównywać ten sygnał z drugim PWM i nie wiem za bardzo jak to zrobić. A może jest jakiś sposób aby pracować poza cyklem sterownika nie wykorzystując PWM.
  • #4 8711860
    YR1
    Poziom 24  
    Posty: 786
    Pomógł: 49
    Ocena: 52
    Jak zrozumiałem, chcesz z PLC uzyskać PWM i porównywać go z innym. Jest to wykonalne, ale czy ten 2 PWM jest "podobny"? Tak jak w TTL przekłamanie nazywa się hazard, tak też tutaj możesz osiągnąć podobny efekt.
    Opisz cały problem, wtedy łatwiej będzie udzielić odpowiedzi.
  • #5 8711900
    elektrokuba
    Poziom 12  
    Posty: 101
    Pomógł: 2
    Ocena: 5
    Wyjścia PWM są jak najbardziej "podobne" ten sam sterownik te same parametry konfiguracyjne PWM więc raczej z hazardem nie powinno być problemu.
    Usiłuje uzyskać coś w stylu kontroli programowej nad wysyłanym sygnałem i móc indywidualnie włączać bądź wyłączać każdy impuls PWM na wyjściu sterownika, wypełnienie sygnału jest stałe np 50% ale bawić się chcę ilością wysłanych pulsów, coś w stylu sterowania częstotliwościowego ale nie do końca. Poprostu w zależności od wymagań będzie w danym czasie szła różna sekwencja impulsów i chcę móc nad tym zapanować. To tak w wielkim skrócie. Szczegóły są mało istotne i proszę powstrzymać się od komentarzy że to głupie i że "po co mi to". Chodzi o samo zagadnienie które przytoczyłem. W jaki sposób to można wykonać?
    Myślałem tutaj o jakiś przerwaniach i myślę że coś takiego można by wykorzystać tylko moja praktyka z PLC do tej pory nie wykraczała poza cykl sterownika i stąd te pytania.
    No chyba ze da się w jakiś sposób zaznaczyć konkretne wyjścia aby pracowały poza cyklem. Może jakieś networki czy coś.
    Proszę o rady.
  • #6 8712391
    kemot55
    Poziom 31  
    Posty: 1306
    Pomógł: 184
    Ocena: 147
    Rzeczywiście opisałeś problem w "wielkim" skrócie. Poza przerwaniami raczej nie ma możliwości pracy poza cyklem. A same przerwania też są dość skomplikowanym mechanizmem. Np. w FX3U przerwana są kolejkowane (bez dokładnego opisu procesu). Zgodnie z opisem w manualu do S7200(CPU215) żeby zsynchronizować chwilę zmiany współczynnika wypełnienia trzeba przewodem zewnętrznym! połączyć wyjście PTO z wejściem przerwaniowym (co dla mnie jest kosmicznym rozwiązaniem ja na "super firmę" SIEMENS).
    Może to co chcesz zrobić wymaga jednak z rezygnacji z PLC i zrobienie zadania na kontrolerze specjalizowanym. Albo opisz dokładnie co chcesz zrealizować.
  • #7 8712581
    elektrokuba
    Poziom 12  
    Posty: 101
    Pomógł: 2
    Ocena: 5
    Powiedzmy że ma być to coś na kształt nadajnika w komunikacji szeregowej wykonanej na wyjściach sterownika. Aktualnie bawię się s7-1200 i z tego co wyczytałem to tam są bloki do przerwań (ATTACH DETTACH) tylko nie wiem jak je wykorzystać, bo nie rozumie logiki ich działania. Jak ktoś wie jak to zrobić na s7-200 też chętnie się dowiem. Niestety nie na rękę była by mi rezygnacja z PLC więc to raczej nie wchodzi w grę.
  • #8 8713914
    kemot55
    Poziom 31  
    Posty: 1306
    Pomógł: 184
    Ocena: 147
    Komunikacja szeregowa na wyjściu PTO sterownika PLC i do tego SIEMENS raczej nie wyjdzie. Zostań przy 1200 bo 200'tka zaraz się pojawi na śmietnikach całej Europy (coś mi się zdaje się, że naszym sąsiadom skończył się właśnie "czas życia" sterownika S7200 i za chwilę nastąpi jego globalna wymiana)
    Co do transmisji szeregowej na wyjściu to myślę, że dałoby się to zrobić na przerwaniach i zwykłych wyjściach z tym, że transmisja była by na poziomie 100Bod albo mniej.
    A nie lepiej dołożyć moduł transmisji szeregowej lub skorzystać z serwera OPC (i wykorzystać wbudowany interfejs sieciowy)?

    A instrukcja ATTACH kojarzy obsługę przerwania ze zdarzeniem i konfiguruje dane zdarzenie (np. startuje timer z określonym czasem w przypadku zdarzeń zgłaszanych okresowo). DETTACH odłącza procedurę od zdarzenia i wyłącza obsługę zdarzenia. Zmuszenie SIEMENSA do jakiś wariacji niestandardowych nie wyjdzie Ci na zdrowie (szczególnie psychiczne :-)) chociaż czasem coś tam da się zrobić (ale na pewno nie będzie to stabilne/przewidywalne na 100%).
  • #9 8714787
    adamusx
    Poziom 27  
    Posty: 977
    Pomógł: 94
    Ocena: 28
    Witam.
    Materiały n/t szybkich liczników w PLC siemens możesz znaleść tutaj.
    Jest dokument w języku polskim.
  • #10 8717292
    elektrokuba
    Poziom 12  
    Posty: 101
    Pomógł: 2
    Ocena: 5
    OK dziękuje bardzo za odpowiedzi, coś już się dowiedziałem. Tylko nasuwa mi się kolejne pytanie. Dajmy na to że użyje szybkiego licznika do zliczania impulsów PWM i ten licznik naliczy żądaną wartość (CV=PV) i uruchomi przerwanie w bloku OB to teraz pytanie czy program napisany w tym przerwaniu jest realizowany w takt cyklu PLC czy nie? Czy działa linijka po linijce tak jak np. w uC i dopiero po powrocie z przerwania zaczyna pracować spowrotem z cyklem PLC. ??

    Ktoś potrafi na to odpowiedzieć?
  • #11 8725005
    adamusx
    Poziom 27  
    Posty: 977
    Pomógł: 94
    Ocena: 28
    Program po przejściu do podprogramu (obsługującego to przerwanie) zostanie wykonany raz, linia po linii tak program w pętli głównej.
  • #12 8730886
    elektrokuba
    Poziom 12  
    Posty: 101
    Pomógł: 2
    Ocena: 5
    Super. Dziękuję za odpowiedź. Mam kolejne "trudne" pytania.

    1) Skoro sterownik ma maksymalną częstotliwość załączania wyjść równą 100kHz to w jaki sposób poza PWM/PTO mogę to wyjście z taką częstotliwością zasymulować? Przerwania czasowe można maksymalnie co 1ms uruchamiać więc to odpada.
    2) Czy jest możliwość uruchamiania przerwania od flagi wewnętrznej? Na podstawie mojej wiedzy wiem że można uruchamiać od danej wartości szybkiego licznika oraz od fizycznego wejścia sterownika ale nic mi nie wiadomo o zmiennych wewnętrznych, może ktoś mnie poprawi?
  • #13 16857200
    bigmaster
    Poziom 15  
    Posty: 583
    Pomógł: 4
    Ocena: 91
    czy udało sie rozwiązać problem?

Podsumowanie tematu

LABEL_AI_GENERATED
W dyskusji poruszono temat szybkiego I/O w sterownikach PLC Siemens, w szczególności dotyczący przerwań, PWM i PTO. Użytkownicy poszukiwali literatury oraz praktycznych przykładów dotyczących implementacji przerwań w programie, a także sposobów na manipulację sygnałami PWM. Wskazano, że przerwania są skomplikowanym mechanizmem, a ich wykorzystanie wymaga zewnętrznych połączeń w niektórych modelach. Użytkownicy omawiali również możliwości symulacji wysokich częstotliwości wyjść oraz uruchamiania przerwań na podstawie flag wewnętrznych. Wskazano na różnice w działaniu programów w kontekście cyklu PLC oraz przerwań, a także na ograniczenia związane z częstotliwością wyjść.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA