Dzięki temu, że moje zainteresowania skupiają się wokół wielu dziedzin ścisłych takich jak chemia, fizyka czy elektronika, mogę w miarę skutecznie próbować je łączyć. Efektem Takiej próby połączenia dziedzin jest urządzenie, które chcę Państwu zaprezentować. Jest to przyrząd, który zrodził się z potrzeby pomiaru ilości gazów powstających w różnych procesach chemicznych i biochemicznych i możliwości obrazowania ich produkcji w czasie. Co z tego wyszło zobaczycie Państwo sami czytając poniższy artykuł.
Pomysł na to urządzenie zrodził się podczas mojej wizyty na targach odnawialnych źródeł energii w Kielcach. Na jednym ze stoisk firma Biogaz Zeneris zaprezentowała laboratoryjne stanowisko do badania procesów beztlenowej fermentacji materii organicznej, która jest źródłem wysokoenergetycznego biogazu bogatego w metan.
Fot. 1 Stanowisko do badania procesów beztlenowej fermentacji metanowej.
Z racji tego, że jestem zwolennikiem odnawialnych źródeł energii, ten temat bardzo mnie zainteresował i postanowiłem sam poeksperymentować z produkcją takiego gazu. Ilość wydzielanego gazu zazwyczaj bada się zbierając go w naczyniach miarowych, poprzez wypieranie zeń wody ale sposób taki ma kilka znaczących wad jak np. niedokładność czy brak możliwości obrazowania w czasie sprawności procesu. Postanowiłem więc zbudować własne urządzenia pomiarowe, które zdolne będzie w sposób autonomiczny i długoterminowy mierzyć sumaryczną ilość powstałego gazu oraz przepływ minutowy i godzinowy oraz wysyłać je na bieżąco do komputera.
Pomysłów było kilka np. cylinder wypełniany wodą z czujnikami poziomu oraz elektronicznie sterowanymi zaworami i pompką. Pojemnik wypełniał by się do pewnej objętości, a po wykryciu jej przełączał by się zawór a pompka wypompowywała by próbkę. Pomysł ten jednak wyparty został przez fragment pewnego urządzenia, które leżało od dłuższego czasu w mojej pracowni. Był to element składający się z silnika krokowego i napędu śrubowego, który mógł się poruszać do przodu i do tyłu w pewnym zakresie.
Fot. 2 Rozmontowany układ napędu liniowego wraz z przygotowaną już do montarzu strzykawką.
Wystarczyło tylko odpowiednio sterować silnikiem by przesuwać zamontowaną na liniowym łożysku ślizgowym belką. I tu właśnie narodził się pomysł zamontowania strzykawki, którą również widać na zdjęciu oraz połączeniu jej tłoka z ruchomą belką. W taki sposób sterując silnikiem mogłem zasysać i wydmuchiwać gaz. Należało jeszcze rozwiązać kilka kwestii m.in.
a) sposób sterowania silnikiem,
b) metodę informowania układu sterowania silnikiem o tym, że należy gaz zasysać czy wydmuchiwać oraz sposób kierowania gazu do i ze strzykawki,
c) sposób odmierzania ilości gazu,
d) interfejs użytkownika i metody wizualizacji,
e) układ elektroniczny i algorytm dla mikrokontrolera.
Ad. 1
Całość układu, jak jego nazwa wskazuje będzie zarządzana w pełni przez mikroprocesor. Należało więc tak dobrać sterownik silnika krokowego, by w możliwie najprostszy sposób mógł współpracować z mikrokontrolerem. Mój wybór padł na sterownik zbudowany w oparciu o parę dedykowanych do sterowania takimi silnikami, układów scalonych - L297 i L298.
Jego zaletą jest to, że do sterowania wystarczy doprowadzić trzy sygnały odpowiedzialne za kierunek, włączenie zasilania cewek i obroty poza tym w żaden sposób nie trzeba obciążać mikroprocesora do generowania odpowiednich sekwencji poruszających wał. Po prostu jeśli silnik ma wykonać pewien obrót w odpowiednią stronę na portach mikrokontrolera należy wystawić odpowiedni stan dla wejścia sterującego DIR - odpowiedzialnego za kierunek oraz odpowiedni stan dla wejścia ENA włączającego zasilanie cewek silnika. Teraz gdy mikrokontroler na wejście CLK będzie podawał impulsy to każdy taki impuls przesunie wał silnika o odpowiedni kont.
W naszym przypadku każdy taki impuls przesunie tłok strzykawki i zassie bądź wydmuchnie, w zależności od stanu wejścia DIR minimalną porcję gazu. Samego sterownika nie będę opisywał w tym opracowaniu bo w Internecie znajduje się wiele wyczerpujących opracować. Powiem tylko, że oprócz wymienionych sygnałów sterujących potrzeba doprowadzić jeszcze zasilanie części logicznej +5V oraz oddzielne zasilanie silnika krokowego maksymalnie napięcie +40 V.
Wspomniany układ sterowania posiada tzw. chopper prądowy czyli przerywacz, który zbudowany jest w taki sposób, aby odcinał dopływ prądu do cewek silnika, gdy przekroczy on zadaną wartość ustawioną za pomocą zamontowanego na płytce potencjometru oraz ponownie włączał. Dzięki temu układowi nie musimy się martwić o napięcie, jakie możemy podać na silnik - w praktyce ustawia się napięcie zasilania na najwyższe dla danego sterownika a tylko za pomocą potencjometru dobiera się dopuszczalny dla danego modelu silnika prąd cewek. Silnik co prawda zasilany jest napięciem przerywanym o dużej częstotliwości ( wyłączanie i włączanie zasilania przez przerywacz) ale nie wpływa to w żaden sposób na jego prace, no może poza charakterystycznym piszczeniem, które w niektórych zastosowaniach może być niepożądane.
Fot. 3 Pierwsze uruchomienie układu napędowego ze sterownikiem silnika krokowego.
Podczas testów ręcznie ustawiałem stany sygnałów wejściowych DIR i ENA oraz z generatora podawałem impulsy taktujące co skutkowało przesuwaniem tłoka strzykawki w jedną lub drugą stronę. Tu oczywiście pojawiła się kolejna kwestia, która należało rozwiązać a mianowicie zabezpieczenie dopuszczalnych granic, w których tłok strzykawki może pracować. Rozwiązaniem było zastosowanie tzw. krańcówek, czyli małych przełączników, które poinformują mikrokontroler o tym, że tłok osiągnął już maksymalne dla danego kierunku położenie i należy zmienić kierunek bądź zatrzymać tłok a przy okazji wykonać inne czynności jak np. przełączenie zaworu zarządzającego kierunkiem przepływu gazu.
Fot. 4 Widok jednej z krańcówek ograniczających ruch ramienia napędowego.
Na zdjęciu nr 4 widać tłok strzykawki, do którego przykręcone jest ramie napędowe oraz jeden z włączników krańcowych, który poda sygnał do mikrokontrolera, gdy ramie znajdzie się w jego zasięgu. Odpowiedni algorytm wprowadzony do mikrokontrolera zareaguje na taki sygnał, ale to opiszę w dalszej części opracowania. Gdyby tej informacji nie było silnik nadal próbował by wysuwać tłok co groziło by uszkodzeniem układu. Pozostałe kwestie dotyczące metody zarządzania pracą silnika napędowego jak np. generowanie sygnału taktującego o odpowiedniej częstotliwości czy np. wyłączanie zasilania cewek podczas bezczynności by oszczędzać energię i nie przegrzewać ich, opisane zostaną w części poświęconej tworzeniu algorytmu dla mikrokontrolera.