Jak napisać bardzo wydajną aplikację łączącą się z Siemens Logo?

0

Witam
Robił ktoś aplikacje łączącą się z Siemens Logo???
Aplikacja ma odczytać i zapisać dane z wejścia analogowego z jak największą częstotliwością.
Nigdy nie działałem z przemysłowymi sterownikami stąd moje pytanie.

2

Ale ten sterownik można programować w C#? Zwykle sterowiki PLC mają swoje własne standardy języków programowania. Zwłaszcza Siemens który ma swój standard języka IL i graficznych

UPDATE tutaj ktoś programuje Siemens LOGO w języku LD

UPDATE 2 widzę iż jest jeszcze dostępny FBD (Circuit program creation in the languages Function Block Diagram (FBD) or Ladder Diagram (LAD)) Źrodło

UPDATE 3 masz w ogóle środowisko graficzne do tego sterownika? Bo chyba w przeciwieństwie do VS nie jest ono darmowe (chociaż mogło się zmienić przez te ponad 10 lat)

UPDATE 4 D dobra doczytałem:

Robił ktoś aplikacje łączącą się z Siemens Logo???

To ty chcesz się połączyć ze sterownikiem?
No to chyba najważniejsze po jakim interfejsie. Czy tam ModBus chodzi czy jakieś inne dziewne rzeczy. Czy może sterownik można wpiąć jako zwykłe urządzenie USB? A może jest Stary dobry RS-232? Cholera wie. Trzeba sprawdzić w nocie katalogowej albo pogadać z gościem co zajmuje się tym sterownikiem na produkcji

1

Sprawdź czy masz .NETowy SDK od producenta

1
KamilAdam napisał(a):

To ty chcesz się połączyć ze sterownikiem?
No to chyba najważniejsze po jakim interfejsie. Czy tam ModBus chodzi czy jakieś inne dziewne rzeczy. Czy może sterownik można wpiąć jako zwykłe urządzenie USB? A może jest Stary dobry RS-232? Cholera wie. Trzeba sprawdzić w nocie katalogowej albo pogadać z gościem co zajmuje się tym sterownikiem na produkcji

Sądzę, że
"Aplikacja ma odczytać i zapisać dane z wejścia analogowego z jak największą częstotliwością."

Jest specyficzne na sterownikach, a jak jakieś (hipotetyczne) 19k na RS-232 to dosc niskie limity szybkości czy op/s

0

Czyli nie da się zrobić tego co chce zrobić Op bo nie da się oprogramować PLC w C#. Chyba iż ktoś ma kompilator C# -> LD

3
KamilAdam napisał(a):

nie da się oprogramować PLC w C#. Chyba iż ktoś ma kompilator C# -> LD

Siemens jak i wielu innych producentów dostarcza SDK do swoich urządzeń, więc jak najbardziej da się je oprogramować za pomocą języków wysokiego poziomu. Wiadomo, że nie dają one 100% możliwości tego co interfejsy natywne, niemniej w większości przypadków dają radę. Wiem bo pomagałem koledze automatykowi ogarnąć aplikację desktopową w .NET za pomocą SIMATIC Automation Tool SDK od Siemensa + sam pisałem integracje w .NET z urządzeniami medycznymi od nich.

2

zawsze można użyć modbusa. Z szybkością może być różnie ale jak na standardy PLC wystarczający szybko(o ile nie masz sieci do d**y co mi się kiedyś zdarzyło że słżo po pare sekund opóźnienia ale to duże instalacje z wieloma routerami i systemami plc).

Najprościej:

  1. Integrujesz w sofcie bilbioteke do modbus TCPIP
  2. Odnosisz się o mastera PLC i czytasz zapisujesz wartości.
  3. Albo to komp jest masterem a plc slavem.

Bardoz prosta integracja i przenośne de facto między producentami.

0

Mam oprogramowanie do Siemens LOGO - (Logo!Soft Comfort v8.3 i TIA Portal v18).
W Soft Comfort zaprogramowałem. Teraz chcę stworzyć aplikację w C# która połączy się z moim sterownikiem po IP i odczyta dane z wejścia analogowego.
Dane powinny być zapisywane np. co 0,1 sekundy.
Generalnie mam specjalną butlę w której spalam próbki. Jest czujnik podpięty do PLC i chcę mierzyć przyrost ciśnienia w czasie podczas spalania próbki.
Spalanie trwa max 10 sekund dlatego częstotliwość zapisu danych ma duże znaczenie.
Z zapisanych danych muszę zrobić wykres i policzyć szybkość spalania.

1

@Daniel777
ale po co te ceregiele?
https://ep.com.pl/files/12203.pdf
Po prostu zrób to po stornie sterownika i niech rzuca na serwer www.

bywamy sterownik Siemens LOGO! 8.1, otrzymujemy rasowy sprzęt
z dostępem przez sieć komputerową, który potrafi komunikować się
z wieloma urządzeniami, w tym z urządzeniami innych producentów
obsługującymi protokół Modbus TCP oraz z wbudowanym serwerem
www z obsługą wizualizacji typu SCADA.

ewentualnie o weź zobacz czy openscada nie ogarnie
http://oscada.org/
Zapis danych jest, wykresy są i chyba skrypty żeby policzyć sobie co chcesz(a najlepiej niech liczy sterownik). Od razu oganie wszystko jak to SCADA dodam że takich opensourcowych scad nie używałem.

edit:
Podsumowując licz wszystko p ostornie sterownika i pchaj wyliczone na komunikację co oznacza że opóźnieniem będzie tylko cykl stetornika.

1 użytkowników online, w tym zalogowanych: 0, gości: 1