Elektroda.pl
Elektroda.pl
X
Przedłużacze helukabelPrzedłużacze helukabel
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Wizualizacja stanu pamięci sterownika PLC GE Fanuc (darmowa)

18 Lut 2009 11:09 10133 11
  • Poziom 12  
    Witam

    Chciałbym przedstawić Wam program SNP Monitor!. Powstał on w ramach realizowanej do niedawna przeze mnie pracy dyplomowej o tytule "Wizualizacja stanu pamięci sterownika programowalnego GE Fanuc z wykorzystaniem stron internetowych". Praca powstała na kierunku Automatyka i Robotyka na wydziale Elektrotechniki i Automatyki Politechniki Gdańskiej.

    Program ten umożliwia budowę darmowego elastycznego i skalowalnego systemu wizualizacji dla sterowników PLC firmy GE Fanuc. Prezentowany w tym temacie program SNP Monitor! stanowi w tym systemie most komunikacyjny między pamięcią sterownika i bazą danych. Działanie programu odzwierciedla poniższy rysunek:

    Wizualizacja stanu pamięci sterownika PLC GE Fanuc (darmowa)

    Do generowania stron internetowych zawierających wizualizację wykorzystana została darmowa platforma AMP = Apache + MySQL + PHP. Mechanizm ten przedstawiono na rysunku:

    Wizualizacja stanu pamięci sterownika PLC GE Fanuc (darmowa)

    Aby przedstawione na stronie dane były aktualne to strona była wyposażona w mechanizm wczytujący ja od nowa co 2 sekundy.

    Wizualizacja stanu pamięci sterownika PLC GE Fanuc (darmowa)

    Oczywiście wizualizację można rozwiązać już na 1000 sposobów. Można wykorzystać technologię AJAX, inne języki skryptowe, inny serwer itd... Elementem niezmiennym musi pozostać baza danych MySQL, co nie jest mankamentem. Oprócz wizualizacji wykonałem moduł umożliwiający generowanie przebiegów wartości zmiennych. W tym celu wykorzystałem bibliotekę PHPlot.

    Wizualizacja stanu pamięci sterownika PLC GE Fanuc (darmowa)

    Dzięki programowi SNP Monitor! można opracować system o funkcjonalności takiej jak komercyjne oprogramowanie HMI.

    Interfejs programu SNP Monitor!:

    Wizualizacja stanu pamięci sterownika PLC GE Fanuc (darmowa)

    Program można pobrać ze strony:

    http://snpmonitor.omegazone.web44.net/

    Strona ta będzie rozwijana, szczególnie w przypadku Waszego zainteresowania.

    Możliwości:
    - konfiguracja ustawień portu szeregowego, połączenia z serwerem baz danych MySQL, czasów protokołu SNP, określenie zachowania w przypadku utraty komunikacji, możliwość zapisu i załadowania ustawień z pliku.
    - zmiana trybu pracy sterownika Run/Stop itd...
    - podgląd w programie wybranych obszarów pamięci sterownika i możliwość zmiany wartości wybranej zmiennej z poziomu interfejsu użytkownika.
    - włączenie/wyłączenie obsługi bazy danych
    - wybór zakresu pamięci który ma być odczytywany
    - minimalizacja do postaci ikony na pasku systemowym

    Kompatybilność:
    - program może komunikować się ze wszystkimi sterownikami PLC Firmy GE Fanuc, a także z kontrolerami PAC RX3i
    - program może komunikować się z bazami danych MySQL, testowany był z wersją 3.23.58, 4.1.22, najnowsza stabilna 5, oraz bety 5.1 i 6 (komunikacja przebiegała prawidłowo)
    - program skompilowany został dla OS M$ Windows, ale dzięki programowi WINE który jest implementacją tego środowiska dla systemów klasy UNIX, to można go uruchomić na Linuksie (testowany był na Ubuntu 8.1)
    - do komunikacji ze sterownikiem wykorzystywany był zarówno zintegrowany port szeregowy w PC, jak i adapter USB oparty o chip Prolific oraz karta PCMCIA, we wszytkich przypadkach komunikacja działała bezproblemowo.

    Co jest potrzebne?:
    - port szeregowy RS-232/422/485
    - kabel łączący komputer ze sterownikiem - taki sam jaki wykorzystywany jest do jego programowania i ewentualnie konwerter standardów, który tak samo jest potrzebny przy programowaniu.
    - plik libmysql.dll - dzięki temu program może działać na komputerach na których nie zainstalowano bazy danych MySQL i będzie łączył się z nią np.: przez sieć lokalną, lub w ogóle opcja ta może być wyłączona.

    Możliwe są różne struktury systemu:

    - zarówno prosta

    Wizualizacja stanu pamięci sterownika PLC GE Fanuc (darmowa)

    - jak i rozproszona

    Wizualizacja stanu pamięci sterownika PLC GE Fanuc (darmowa)


    Program był tworzony z myślą aby służył nie tylko mi ani pracy dyplomowej samej w sobie, dlatego też założyłem ten ten temat. Jeśli ktoś będzie bardzo zainteresowany pewną funkcją która nie jest aktualnie dostępna w programie to mogę go zmodyfikować na życzenie (o ile będę w stanie).
    W załączniku znajduje się paczka zawierająca program, bibliotekę libmysql.dll, a także pomoc dla programu. Jest on także dostępny na:
    http://snpmonitor.omegazone.web44.net/
  • Przedłużacze helukabelPrzedłużacze helukabel
  • Specjalista Automatyk
    Proponuję dorzucić obsługę protokołu Modbus jako bardziej wszechstronnego niż SNP (używany przez GE-Fanuc). O ile sam program nie budzi większych zastrzeżeń to nie nazwał bym tego "wizualizacją" skoro część odpowiedzialna za wizualizację została potraktowana po macoszemu.
    Gdybyś dołączył np. edytor prostych stron www to miałoby większy sens a tak to wygląda trochę jak serwer komunikacyjny z funkcjonalnością zapisu danych do bazy.
  • Przedłużacze helukabelPrzedłużacze helukabel
  • Poziom 14  
    Będzie to współpracowało z GE NANO który ma tylko Slave SNP ?
  • Poziom 12  
    @gervee

    1) Tak masz rację, gdybym dzisiaj miał jeszcze raz podejmować to zagadnienie, to pewnie wybrał bym Modbusa, ale to pierwszy mój taki poważny program i od czegoś trzeba było zacząć, a w laboratorium mieliśmy akurat GE Fanuki.
    2) Fakt większy nacisk położyłem na program a wizualizacja jest tylko przykładowa. Program jest jedynie elementem systemu, ale umożliwia on opracowanie wizualizacji bazującej na całkowicie darmowych technologiach. Moja praca i tak wyszła bardzo obszerna a pisanie programu zajęło dużo czasu, więc ten kreator zostawiam dla przyszłych pokoleń :). Nawet mój opiekun zasugerował że może powstać taki temat jako uzupełnienie mojego systemu. Ale fakt faktem program ten daje pamięć sterownika na srebrnej tacy, wystarczy tylko sięgnąć rączką :)


    @gigipawel

    Tak oczywiście że będzie. Domyślam się że chodzi o VersaMax Nano. Testowałem go m.in z VersaMax Micro.
  • Poziom 12  
    Napisałeś: "Strona ta będzie rozwijana, szczególnie w przypadku Waszego zainteresowania." Wielkie dzięki! Rozwijaj! I pomyśl o innych sterownikach - tu mam nadzieję, że nie zapomnisz o świetnych, choć mało popularnych w naszym kraju sterownikach Panasonica serii FP (FP-0, FP-1, FP-Sigma), dawniej znanych pod marką Matsushity. Od lat robię wszystko na nich właśnie i od lat szukam szegoś do wizualizacji - i nie chodzi mi tu o jakiś panel/pulpit, ale o wizualizację na ekranie peceta (i to najlepiej z Linuksem na pokładzie).

    Pomyśl o tym - ja będę Twoim pierwszym klientem, jeśli cena za taki pakiet mnie nie porazi! Szukam czegoś co rozwiązałoby taki problem:
    Mam kilka maszyn na hali produkcyjnej. Każda jest sterowana sterownikiem PLC serii FP-Sigma. Każda robi coś innego. Każda ma inne parametry bieżące. Na każdej chcę zamontować laptopa z jakimś programem do ustawiania jej parametrów i do bieżącej wizualizacji pracy jej mechanizmów (z odczytem temperatur, położenia mechanizmów, wysterowania zaworów itd.). A w biurze stoi pecet z uruchomionym programem do wizualizacji wszystkich danych z wszystkich maszyn i robi bieżącą analizę danych dotyczących produkcji i jakości.
    Czy ten Twój system da radę? Rozwiniesz go?
  • Poziom 12  
    Jak nie da jak da :D

    Już teraz by dał, gdyby program SNP Monitor! mógł się komunikować z tymi sterownikami.

    Jakie one posiadają protokoły komunikacyjne? Posiadają może któryś z bardziej popularnych jak Modbus ? Jeśli wyłącznie protokół specyficzny dla tej firmy to czy jest dostępna jego szczegółowa dokumentacja?

    Jeśli chodzi o Linuxa to oczywiście standard stron internetowych jest przenośny, a jak już wspomniałem, program ten też jest w pełni funkcjonalny pod pingwinem.

    Wiadomo opracowanie oprogramowania, implementacja protokołu, testy zajmują trochę roboczogodzin i nie wiem czy będę robił to w ramach hobby (bo mam dużo innych spraw na głowie). Ale jeśli jesteś naprawdę zainteresowany i poważnie myślisz o wykorzystaniu takiego systemu to moglibyśmy się dogadać.


    PS: Jak te maszyny funkcjonują w tej chwili bez wizualizacji?
  • Specjalista Automatyk
    kuba_new napisał:


    Pomyśl o tym - ja będę Twoim pierwszym klientem, jeśli cena za taki pakiet mnie nie porazi! Szukam czegoś co rozwiązałoby taki problem:
    Mam kilka maszyn na hali produkcyjnej. Każda jest sterowana sterownikiem PLC serii FP-Sigma. Każda robi coś innego. Każda ma inne parametry bieżące. Na każdej chcę zamontować laptopa z jakimś programem do ustawiania jej parametrów i do bieżącej wizualizacji pracy jej mechanizmów (z odczytem temperatur, położenia mechanizmów, wysterowania zaworów itd.). A w biurze stoi pecet z uruchomionym programem do wizualizacji wszystkich danych z wszystkich maszyn i robi bieżącą analizę danych dotyczących produkcji i jakości.


    Dlaczego chcesz tak kombinować? Daj po panelu/sterownikieu z odpowiednio dużym wyświetlaczem do każdej maszyny (panele z możliwością pracy w sieci i protokołem komunikacyjnym np. Modbus Slave na drugim porcie). Wszystkie zepnij w sieć i podłącz do komputera w biurze (na komputerze zainstaluj oprogramowanie np. iFIX lub InTouch). W ten sposób będziesz mieć lokalnie na panelach wizualizację/zadawanie parametrów a na komputerze w biurze rejestrację danych i wizualizację wszystkich maszyn.
  • Poziom 12  
    Myślę że chodzi o kwestie $.

    Wiadomo większość rzeczy można rozwiązać oprogramowaniem komercyjnym tylko to kwesta kasy. Ja w moim temacie pracy tez mogłem nie robić żadnego programu tylko np wykorzystać Wonderware Suite Voyager i komercyjną bazę MSSQL i wizualizacja działa tam tylko w przeglądarce IE z tego co słyszałem :]

    Myślę że dobrze jest mieć jakąś alternatywę.
  • Poziom 11  
    Witam.
    Z helpa.
    Cytat:
    Zmienne odczytane, 6 tabel: plc_i, plc_m, plc_q, plc_ai, plc_r, plc_aq. W tabelach tych przechowywane są wartości zmiennych odczytane ze sterownika. Przy każdorazowym odczytaniu wartości ze sterownika, zmienne te są nadpisywane.

    Z jaką częstotliwością są zapisywane dane do tabel?

    Pozdrawiam
    Wiesiek
  • Poziom 10  
    Wiem, sprawa może mało istotna dla sporej grupy osób, no ale...

    Jak wygląda sprawa licencji?
    Określenie "darmowa" wydaje się być dość hmm skrótowe...
    Rozumiem, że ten soft można wykorzystywać w sposób dowolny? W tym komercyjny?

    Nie szukałem jakoś strasznie dokładnie, ale ani na stronie, ani w dołączonej dokumentacji nie znalazłem na ten temat żadnych informacji...

    Myślałeś może o opublikowaniu źródeł?
  • Poziom 10  
    kol. viper_lasser - jeśli możliwe to proszę o kontakt biuro(malpa)softstarter.pl
    Elbląg