RTV forum PL | NewsGroups PL

Jak zrealizować przesyłanie danych z mikrokontrolera ATmega32 do PLC Siemens przez RS232?

Przesyłanie danych pomiędzy moim układem a sterownikiem PLC/

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Jak zrealizować przesyłanie danych z mikrokontrolera ATmega32 do PLC Siemens przez RS232?

Robbo
Guest

Fri Feb 05, 2010 7:30 pm   



Witam,

Posiadam w ofercie pewne urządzenie skonstruowane
na bazie mikrokontrolera Atmel AVR ATmega32.
Urządzenie to było sterowane za pomocą aplikacji
działającej na PC; dane przesyłane były poprzez
RS232 (wykorzystywałem 2 linie Tx,Rx oraz masę,
szybkość transmisji 9600 bps).
Teraz mój odbiora chce, żeby urządzenie było
sterowane za pomocą sterownika PLC/panelu
operatorskiego. Ponieważ nie znam się za bardzo
na sterownikach PLC, a jeszcze mniej na panelach
operatorskich, chciałem zapytać, czy nie będzie
problemem ze sterownika Siemens (nie wiem, jaki
model będzie wykorzystywany) bądź panelu
operatorskiego wykonać takie oto zadanie
(PS. to nie ja będę robił, ale chcę wiedzieć, czy
da się to wykonać sterowanie przy użyciu stransmisji
szeregowej, czy też trzeba szukać innego rozwiązania):
- użytkownik w panelu operatorskim ma możliwość
wprowadzenia 30 liczb dwucyfrowych
o wartościach z przedziału <0, 99>;
- liczby te byłyby wysłane za pomocą RS232
ze sterownika/panelu do mojego urządzenia
w postaci "paczki" 30 bajtów (każdy bajt reprezentuje jedną
liczbę z przedziału <0, 99>) oraz bezpośrednio
po tym jednego bajtu stanowiącego sumę kontrolną.

?

Byłem na kursie PLC firmy Fatek i tam wszystko robiliśmy
za pomocą "drabinek" i pewnych funkcji z biblioteki.
Na panelach operatorskich się nie znam i nie wiem,
czy można tam (oprócz przeciągania gotowych obiektów
z przybornika) tworzyć oprogramowanie na nieco niższym
poziomie (jakieś pętle, tablice, ...), a myślę, że to mogłoby być
przydatne przy budowie paczki danych do transmisji szeregowej.

Z góry dziękuję za pomoc.
Robbo

Paweł Sujkowski
Guest

Fri Feb 05, 2010 8:54 pm   



Witam

Nie powinno być problemu. Dla serii S7-300 czy -400 są procesory
komunikacyjne (np. CP340, 341) pozwalające w pewnych granicach
definiować swój protokół. Najbardziej typowe rozwiązanie, to takie że
PLC "agreguje" wszelkie dane z panelu, twojego urządzenia i wszystkie
wymiany są via PLC. Panel wykonuje interakcje z pamięcią PLC, jak i twój
program też się łączy z pamięcią PLC za pośrednictwem CP. Pozdrawiam

Paweł

Mario
Guest

Fri Feb 05, 2010 10:05 pm   



Paweł Sujkowski pisze:
Quote:
Witam

Nie powinno być problemu. Dla serii S7-300 czy -400 są procesory
komunikacyjne (np. CP340, 341) pozwalające w pewnych granicach
definiować swój protokół. Najbardziej typowe rozwiązanie, to takie że
PLC "agreguje" wszelkie dane z panelu, twojego urządzenia i wszystkie
wymiany są via PLC. Panel wykonuje interakcje z pamięcią PLC, jak i twój
program też się łączy z pamięcią PLC za pośrednictwem CP. Pozdrawiam


Ja to bym dorzucił jakieś Twido za 577zł netto plus drugi RS232 za
100zł. Z panelem może komunikować się na jednym porcie po Modbus a drugi
port swobodnie programowany w ASCII obsłużyłby komunikację z
urządzeniem. Wprawdzie w TWIDO trochę upierdliwe stosowanie funkcji
komunikacyjnej EXCH ale cena tego PLC ( w najsłabszej wersji) kilka razy
mniejsza niż moduł komunikacyjny do Siemensa. A i tworzenie własnego
protokołu do CP nie jest chyba zbyt proste. Oprogramowanie Twidosoft
jest darmowe. Sterownik programuje się przez RS485 więc nie ma problemu
ze specjalnym kablem programującym.

--
Pozdrawiam
MD

Mario
Guest

Fri Feb 05, 2010 10:24 pm   



Robbo pisze:
Quote:
Witam,

Posiadam w ofercie pewne urządzenie skonstruowane
na bazie mikrokontrolera Atmel AVR ATmega32.


Jeśli to twoje urządzenie to dopisz do niego Modbus slave. Z reguły
panele operatorskie mają Modbusa.

--
Pozdrawiam
MD

Robbo
Guest

Fri Feb 05, 2010 10:44 pm   



Quote:
Jeśli to twoje urządzenie to dopisz do niego Modbus slave. Z reguły panele
operatorskie mają Modbusa.

To by było zapewne najbardziej eleganckie rozwiązanie, ale ten mój
program na mikrokontroler i tak jest już na granicy pojemności pamięci
i boje się, że już więcej rzeczy się nie da dodać. A trzeba by dorobić
menu (moje urządzenie ma wyświetlacz i przyciski), w którym można
ustawiać numer slave'a protokołu Modbus, a to już trochę kosztuje pamięci.
Niemniej może implementacja slave'a może okazać się koniecznością.

Robbo

Andrzej
Guest

Sat Feb 06, 2010 12:57 am   



Robbo pisze:
Quote:
Witam,

- użytkownik w panelu operatorskim ma możliwość
wprowadzenia 30 liczb dwucyfrowych
o wartościach z przedziału <0, 99>;
- liczby te byłyby wysłane za pomocą RS232
ze sterownika/panelu do mojego urządzenia
w postaci "paczki" 30 bajtów (każdy bajt reprezentuje jedną
liczbę z przedziału <0, 99>) oraz bezpośrednio
po tym jednego bajtu stanowiącego sumę kontrolną.

Robbo



Oj. Widzę problem.
Jak chcesz za pomocą 30 bajtów wysłać 30 liczb dwucyfrowych ?
Gdyby było 60 to było by prosto.
Gorzej z RS232. Nie wszystkie PLC Siemensa mają go
bezpośrednio dostępnego.

Andrzej

Mario
Guest

Sat Feb 06, 2010 1:39 am   



Andrzej pisze:
Quote:
Robbo pisze:
Witam,

- użytkownik w panelu operatorskim ma możliwość
wprowadzenia 30 liczb dwucyfrowych
o wartościach z przedziału <0, 99>;
- liczby te byłyby wysłane za pomocą RS232
ze sterownika/panelu do mojego urządzenia
w postaci "paczki" 30 bajtów (każdy bajt reprezentuje jedną
liczbę z przedziału <0, 99>) oraz bezpośrednio
po tym jednego bajtu stanowiącego sumę kontrolną.

Robbo


Oj. Widzę problem.
Jak chcesz za pomocą 30 bajtów wysłać 30 liczb dwucyfrowych ?
Gdyby było 60 to było by prosto.

Ale pewnie nie przesyła znakowo tylko bajtowo. Bajt zmieści liczbę do
255 nie tylko do 99 :)



--
Pozdrawiam
MD

Robbo
Guest

Sat Feb 06, 2010 5:51 pm   



Quote:
Oj. Widzę problem.
Jak chcesz za pomocą 30 bajtów wysłać 30 liczb dwucyfrowych ?
Gdyby było 60 to było by prosto.

Ale pewnie nie przesyła znakowo tylko bajtowo. Bajt zmieści liczbę do 255
nie tylko do 99 Smile

Tak, wysyłam bajtowo.

elektroda NewsGroups Forum Index - Elektronika Polska - Jak zrealizować przesyłanie danych z mikrokontrolera ATmega32 do PLC Siemens przez RS232?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map