Debian w akcji> mini sterownik PLC
- arturromarr
- Beginner
- Posty: 190
- Rejestracja: 14 sierpnia 2015, 01:21
Debian w akcji> mini sterownik PLC
Witam,
Witam chciałem przedstawić projekt, który całkowicie zrealizowałem w darmowym oprogramowaniu pod kontrolą Debiana.
Jest to mały sterownik programowalny w skrócie PLC. W założeniach ma sterować drobną automatyką domową, być tani i prosty w użyciu.
Komunikacja z użytkownikiem odbywa się popularnym protokołem ModBus. W przyszłości powstanie panel operatorski do wpływania na sterowanie. Protokół zdeterminował całą architekturę sterownika i koncepcję jego programowania. Sterownik posiada listę realizowanych rozkazów (16 bitowych jak słowo w ModBus), które odwołują się do typowej dla tej magistrali mapy pamięci.
Elektronika powstała w programie KiCAD. Jest to zupełnie wystarczające narzędzie do większości średniej wielkości projektów. Możemy opracowywać w nim schematy, płytki drukowane i na koniec generować pliki produkcyjne. Obecnie jest znacznie nowsza wersja niż ta na której pracowałem, mająca kilka udogodnień, ale Debian nie zawarł jej w stabilnym repo więc jeszcze poczekam.
Oprogramowanie mikrokontrolera w sterowniku powstało w gcc z Toolchain-em Atmel-a
Sam projekt w lekkim środowisku CodeLite.
Obecnie powstaje narzędzie do wprowadzania programów użytkownika z komputera na sterownik. Aplikację piszę z wykorzystaniem wtyczek GTK. Jak będzie w fazie godnej pokazania to również się pochwalę.
Aktualnie sterownik w ramach próby generalnej steruje oświetleniem w moim akwarium. W płynny sposób rozjaśnia i ściemnia lampę o zadanych godzinach. W kolejnych fazach testu będzie regulował temperaturę, CO2 i inne parametry.
W dalszej kolejności chcę użyć sterownika do automatyki domowej i dodać jakąś aplikację HMI do łatwego zarządzania całością systemu.
Pozdrawiam
Witam chciałem przedstawić projekt, który całkowicie zrealizowałem w darmowym oprogramowaniu pod kontrolą Debiana.
Jest to mały sterownik programowalny w skrócie PLC. W założeniach ma sterować drobną automatyką domową, być tani i prosty w użyciu.
Komunikacja z użytkownikiem odbywa się popularnym protokołem ModBus. W przyszłości powstanie panel operatorski do wpływania na sterowanie. Protokół zdeterminował całą architekturę sterownika i koncepcję jego programowania. Sterownik posiada listę realizowanych rozkazów (16 bitowych jak słowo w ModBus), które odwołują się do typowej dla tej magistrali mapy pamięci.
Elektronika powstała w programie KiCAD. Jest to zupełnie wystarczające narzędzie do większości średniej wielkości projektów. Możemy opracowywać w nim schematy, płytki drukowane i na koniec generować pliki produkcyjne. Obecnie jest znacznie nowsza wersja niż ta na której pracowałem, mająca kilka udogodnień, ale Debian nie zawarł jej w stabilnym repo więc jeszcze poczekam.
Oprogramowanie mikrokontrolera w sterowniku powstało w gcc z Toolchain-em Atmel-a
Sam projekt w lekkim środowisku CodeLite.
Obecnie powstaje narzędzie do wprowadzania programów użytkownika z komputera na sterownik. Aplikację piszę z wykorzystaniem wtyczek GTK. Jak będzie w fazie godnej pokazania to również się pochwalę.
Aktualnie sterownik w ramach próby generalnej steruje oświetleniem w moim akwarium. W płynny sposób rozjaśnia i ściemnia lampę o zadanych godzinach. W kolejnych fazach testu będzie regulował temperaturę, CO2 i inne parametry.
W dalszej kolejności chcę użyć sterownika do automatyki domowej i dodać jakąś aplikację HMI do łatwego zarządzania całością systemu.
Pozdrawiam
- LordRuthwen
- Moderator
- Posty: 2316
- Rejestracja: 18 września 2009, 21:45
- Lokalizacja: klikash?
Re: Debian w akcji> mini sterownik PLC
A teraz pytanie: nie prościej to zrobić na Arduino albo malinie?
Samo wykonanie masz bardzo estetyczne, ale po co wyważać otwarte drzwi?
Samo wykonanie masz bardzo estetyczne, ale po co wyważać otwarte drzwi?
- arturromarr
- Beginner
- Posty: 190
- Rejestracja: 14 sierpnia 2015, 01:21
Re: Debian w akcji> mini sterownik PLC
Arduino to dla mnie "zamknięte drzwi", bo nigdy nie używałem, a programując swobodnie mikrokontrolery w gcc nie mam potrzeby poznawania tej platformy. Arduino mam w RepRapie (drukarka 3d), ale jakoś nie miałem jeszcze motywacji by się nim pobawić.
Malina nigdy nie będzie sprzętem typu PLC, nawet porównując z najsłabszymi modelami. Sterownik programowalny rusza całkowicie po kilkudziesięciu cyklach zegara (nie startuje najpierw system operacyjny), Programy działają w czasie rzeczywistym czyli program odtwarzany jest w dokładnych interwałach czasowych i nic nie może tego zakłócić.
Jest to dla mnie projekt poznawczy, chcę nauczyć się maksymalnie optymalizować kod dla wyciśnięcia jak najwięcej z procesora. Udało mi się opracować język programowania rodzaj kodu maszynowego, którego wykonanie zajmuje kilka milisekund na cykl, przy jednoczesnej komunikacji z komputerem. Jak na stary już procesor jest to niezły wynik.
Malina nigdy nie będzie sprzętem typu PLC, nawet porównując z najsłabszymi modelami. Sterownik programowalny rusza całkowicie po kilkudziesięciu cyklach zegara (nie startuje najpierw system operacyjny), Programy działają w czasie rzeczywistym czyli program odtwarzany jest w dokładnych interwałach czasowych i nic nie może tego zakłócić.
Jest to dla mnie projekt poznawczy, chcę nauczyć się maksymalnie optymalizować kod dla wyciśnięcia jak najwięcej z procesora. Udało mi się opracować język programowania rodzaj kodu maszynowego, którego wykonanie zajmuje kilka milisekund na cykl, przy jednoczesnej komunikacji z komputerem. Jak na stary już procesor jest to niezły wynik.
Ostatnio zmieniony 21 kwietnia 2017, 19:51 przez arturromarr, łącznie zmieniany 1 raz.
- LordRuthwen
- Moderator
- Posty: 2316
- Rejestracja: 18 września 2009, 21:45
- Lokalizacja: klikash?
Re: Debian w akcji> mini sterownik PLC
To ja proponuję AVR albo 8051 + kilkanaście linii kodu w bascomie - żeby nie "zniżać się" do czystego ASM
- arturromarr
- Beginner
- Posty: 190
- Rejestracja: 14 sierpnia 2015, 01:21
Re: Debian w akcji> mini sterownik PLC
W moim sterowniku jest AVR. Jeśli piszesz o kilkunastu liniach kodu to nie wiesz co to jest sterownik PLC.
Re: Debian w akcji> mini sterownik PLC
Mi tam się podoba. Ale też preferuje maline+avr+rs485. Osobiście taki zestaw steruje mi kamerą do podglądu bramy wjazdowej i jak i jej kontrolowania oraz kilkoma czujnikami ds18b20.
- LordRuthwen
- Moderator
- Posty: 2316
- Rejestracja: 18 września 2009, 21:45
- Lokalizacja: klikash?
Re: Debian w akcji> mini sterownik PLC
Wiem, miałem przyjemność bawić się nie tyle AVR co właśnie wspomnianą 51, obecnie buduję centrum sterowania (wszech)światem w formie domu na malinie.
- arturromarr
- Beginner
- Posty: 190
- Rejestracja: 14 sierpnia 2015, 01:21
Re: Debian w akcji> mini sterownik PLC
Też używam maliny.
Myślę, że wszytko ma swoje zastosowania.
Myślę, że wszytko ma swoje zastosowania.
Re: Debian w akcji> mini sterownik PLC
czym sterujesz za pomocą mikrostyków?
jaką mają funkcje?
jaką mają funkcje?
Re: Debian w akcji> mini sterownik PLC
Wygląda, że z jednej strony są wejścia dwustanowe, a z drugiej wyjścia przekaźnikowe.
Funkcje na pewno programowalne, tak jak w typowym PLC.
W planach pewnie interfejsy Ethernet lub inna łączność ze światem zewnętrznym.
Wykonanie profesjonalne. Gratuluję.
Funkcje na pewno programowalne, tak jak w typowym PLC.
W planach pewnie interfejsy Ethernet lub inna łączność ze światem zewnętrznym.
Wykonanie profesjonalne. Gratuluję.