8-Bitowy sterownik PLC (AVR)
Witam!
Prezentowana konstrukcja to 8-bitowy sterownik PLC oparty o mikro-kontroler Atmega8, oraz oprogramowanie PC. Projekt powstał z czystej ciekawości oraz z chęci nauczenia się języka "Ladder logic" najczęściej spotykanego w tego typu urządzeniach. Jest to projekt OPEN! zachęcam do modyfikacji oraz tworzenia własnych sterowników.
Zastosowania
Nie jest to profesjonalne PLC, mimo tego zastosowań dla niego jest mnóstwo.
-Proste maszyny nie wymagające pomiarów (brak wejść analogowych)
-Sterowanie bramami
-Sterowanie oświetleniem
-Nauka języka ladder
-Pomoc dla uczniów szkół o profilu elektronika/robotyka
i wiele innych...
Hardware
Moją konstrukcję cechują bardzo niskie koszty wykonania, łatwość montażu, oraz dużą wszechstronność zastosowania.
Sterownik posiada 9 wejść cyfrowych (24V) oraz 8 wyjść cyfrowych (24V).
Programowany jest za pomocą programatora USBasp poprzez złącze KANDA.
Wejścia
Jako iż z założenia miał być to projekt prosty i niskobudżetowy zrezygnowałem z optoizolacji wejść, co wcale nie jest wadą
Obwody wejść składają się z kilku elementów. Dioda LED sygnalizująca stan wysoki, rezystor 4k7 oraz, diody zenera 5v1. Wejścia samego uC podciągnięte są do masy rezystorem 1k2.
Wyjścia
Wyjścia stanowią dwa tranzystory oraz dioda led sygnalizująca stan wysoki.
Tranzystor końcowy to BD140. Jego prąd maksymalny to 1,5A, lecz fakt iż w moim projekcie nie są przewidziane radiatory, myślę że rozsądne maksymalne obciążenie wyjścia to 0,5A.
Tutaj także chciał bym podziękować kolegom z forum Atnel.pl za pomoc w dobraniu najlepszego rozwiązania.
Złącze programowania
Założenia były takie by Sterownik programowany był za pomocą złącza USB. Było by to na pewno znacznie wygodniejsze, aczkolwiek znacznie też podniosło by koszty, oraz zwiększyło by płytkę, która i tak nie należy do najmniejszych
Idąc na łatwiznę postanowiłem wykorzystywać do programowania wyżej wspomniany programator USBasp.
Software
Oprogramowanie PLC Manager to "nakładka" mojego autorstwa ułatwiająca pracę z programem LDmicro.
Niestety wyżej wymieniony kompilator nie został zaopatrzony w opcje "wrzucania wsadu" do uC. Jest to duża wada, gdyż wymaga osobnego oprogramowania, a dla osób, które nigdy nie miały doczynienia z AVR może to być kłopotliwe.
Dodatkowo w mojej nakładce jest opis wejść i wyjść (przyporządkowane pinom uC), co znacznie ułatwia tworzenie nowego programu.
Nakłada została zaopatrzona także w opcje edycji listy wejść/wyjść (konieczne przy innej wersji PLC niż moja), oraz edicji parametrów AVRdude. Przecież nikt nie powiedział że PLC musi być oparte o Atmega8
Zachęcam do własnych konstrukcji i dzielenie się nimi na forum
Źródła
"AVRdude" - http://savannah.nongnu.org/projects/avrdude/
"LDmicro" - http://cq.cx/ladder.pl
UWAGA!
Jeżeli nie jesteś zainteresowany wykonaniem projektu, ani dołączeniem do niego, bardzo proszę nie komentuj.
Jest to finalna wersja, i nie będę w niej już nic zmieniał, chyba że ktoś będzie chciał dołączyć się do projektu.
Projekt powstał w celach naukowych i doświadczalnych.
Wyjścia cyfrowe zostały zabezpieczone diodami, czego niema na zdjęciu - Obecna wersja PCB z załącznika, już posiada diody. należy je dobrać wedle własnego uznania. Ja zastosowałem zwykłe prostownicze 1n4007 z powodu braku diod schottky w moich zasobach.
Oto film z działania sterownika.
Pozbierałem wszystkie rzeczy 24V które znalazłem w domu i tak oto powstał!
Przepraszam za jakość i kompletny brak efektów. Klip ten powstał jedynie by pokazać jak działa moje PLC.
Witam!
Prezentowana konstrukcja to 8-bitowy sterownik PLC oparty o mikro-kontroler Atmega8, oraz oprogramowanie PC. Projekt powstał z czystej ciekawości oraz z chęci nauczenia się języka "Ladder logic" najczęściej spotykanego w tego typu urządzeniach. Jest to projekt OPEN! zachęcam do modyfikacji oraz tworzenia własnych sterowników.
Zastosowania
Nie jest to profesjonalne PLC, mimo tego zastosowań dla niego jest mnóstwo.
-Proste maszyny nie wymagające pomiarów (brak wejść analogowych)
-Sterowanie bramami
-Sterowanie oświetleniem
-Nauka języka ladder
-Pomoc dla uczniów szkół o profilu elektronika/robotyka
i wiele innych...
Hardware
Moją konstrukcję cechują bardzo niskie koszty wykonania, łatwość montażu, oraz dużą wszechstronność zastosowania.
Sterownik posiada 9 wejść cyfrowych (24V) oraz 8 wyjść cyfrowych (24V).
Programowany jest za pomocą programatora USBasp poprzez złącze KANDA.
Wejścia
Jako iż z założenia miał być to projekt prosty i niskobudżetowy zrezygnowałem z optoizolacji wejść, co wcale nie jest wadą
Obwody wejść składają się z kilku elementów. Dioda LED sygnalizująca stan wysoki, rezystor 4k7 oraz, diody zenera 5v1. Wejścia samego uC podciągnięte są do masy rezystorem 1k2.
Wyjścia
Wyjścia stanowią dwa tranzystory oraz dioda led sygnalizująca stan wysoki.
Tranzystor końcowy to BD140. Jego prąd maksymalny to 1,5A, lecz fakt iż w moim projekcie nie są przewidziane radiatory, myślę że rozsądne maksymalne obciążenie wyjścia to 0,5A.
Tutaj także chciał bym podziękować kolegom z forum Atnel.pl za pomoc w dobraniu najlepszego rozwiązania.
Złącze programowania
Założenia były takie by Sterownik programowany był za pomocą złącza USB. Było by to na pewno znacznie wygodniejsze, aczkolwiek znacznie też podniosło by koszty, oraz zwiększyło by płytkę, która i tak nie należy do najmniejszych
Idąc na łatwiznę postanowiłem wykorzystywać do programowania wyżej wspomniany programator USBasp.
Software
Oprogramowanie PLC Manager to "nakładka" mojego autorstwa ułatwiająca pracę z programem LDmicro.
Niestety wyżej wymieniony kompilator nie został zaopatrzony w opcje "wrzucania wsadu" do uC. Jest to duża wada, gdyż wymaga osobnego oprogramowania, a dla osób, które nigdy nie miały doczynienia z AVR może to być kłopotliwe.
Dodatkowo w mojej nakładce jest opis wejść i wyjść (przyporządkowane pinom uC), co znacznie ułatwia tworzenie nowego programu.
Nakłada została zaopatrzona także w opcje edycji listy wejść/wyjść (konieczne przy innej wersji PLC niż moja), oraz edicji parametrów AVRdude. Przecież nikt nie powiedział że PLC musi być oparte o Atmega8
Zachęcam do własnych konstrukcji i dzielenie się nimi na forum
Źródła
"AVRdude" - http://savannah.nongnu.org/projects/avrdude/
"LDmicro" - http://cq.cx/ladder.pl
UWAGA!
Jeżeli nie jesteś zainteresowany wykonaniem projektu, ani dołączeniem do niego, bardzo proszę nie komentuj.
Jest to finalna wersja, i nie będę w niej już nic zmieniał, chyba że ktoś będzie chciał dołączyć się do projektu.
Projekt powstał w celach naukowych i doświadczalnych.
Wyjścia cyfrowe zostały zabezpieczone diodami, czego niema na zdjęciu - Obecna wersja PCB z załącznika, już posiada diody. należy je dobrać wedle własnego uznania. Ja zastosowałem zwykłe prostownicze 1n4007 z powodu braku diod schottky w moich zasobach.
Oto film z działania sterownika.
Pozbierałem wszystkie rzeczy 24V które znalazłem w domu i tak oto powstał!
Przepraszam za jakość i kompletny brak efektów. Klip ten powstał jedynie by pokazać jak działa moje PLC.