Mikrokontroler Arduino i program podstawowy

Skoro napęd teleskopu już działa i można skoncentrować się na oglądaniu (fotografowaniu) nieba zamiast na walce z montażem Dobsona, to wypadałoby napisać dwa słowa o oprogramowaniu dla mikrokontrolera, który to wszystko ogarnia.

Cel był taki: napęd ma działać w dwóch podstawowych trybach: powolnym i szybkim. Tryb powolny ma za zadanie wprawianie OTA w powolny ruch tak, by obserwowany obiekt nie uciekał z pola widzenia okularu. Oczywiście w grę wchodzi obecnie ręczne sterowanie. No, ale ręczne sterowanie za pomocą przycisków lub manetki joystick’a to nie to samo, co popychanie lub ciągnięcie kilkunastokilogramowej rury na teflonowych klockach. Prędkość tego ruchu miała zostać dobrana (teoretycznie lub doświadczalnie – to nie jest istotne na tym etapie). Tryb szybki służyć ma do szybkiego skierowania teleskopu na zupełnie inny obiekt, w zupełnie innej części nieba. Tryb szybki powinien być więc kilka- do kilkudziesięciu razy szybszy od trybu wolnego. Wydawać by się mogło, że to kwestia zwykłego ustawienia szybkości.

Podstawowa praca silnika krokowego to praca w pełnych krokach. Moje silniki potrzebują wykonać 200 kroków do zamknięcia pełnego obrotu, a to oznacza kąt 1,8° na jeden krok. Niby mało. Okazuje się, że dla tuby o długości 120 cm, a dokładnie dla jej wlotu, te 1,8° oznacza całkiem spory skok. Oba silniki umożliwiają prace w mikrokrokach, co opisałem wcześniej. Im mniejszy jest mikrokrok, tym ciszej i płynniej pracuje napęd, a tuba teleskopu zdaje się płynąć w powietrzu. Resztę powinno załatwić oprogramowanie.

Ze względu na różne wielkości kół wielkich w osi pionowej i poziomej opracowałem tabelę przeliczenia przekładni, która powinna pomóc przy dobieraniu prędkości. Starałem się doprowadzić do stanu, w którym prędkość kątowa w obu osiach będzie podobna. Do wyliczenia przekładni posłużyłem się obwodem kół i ilością zębów (pasek GT2 ma okres zębów równy 2mm). Oprogramowanie powinno uwzględniać ten fakt.

przekładnia

W pierwotnym założeniu gamepad Nintendo miał służyć do zmian kierunku OTA i prędkości tych zmian. Gamepad ten posiada – oprócz krzyżyka kierunku – kilka przycisków, które początkowo posłużyły jako kolejne mnożniki prędkości: ×2, ×3, ×4, ×5. Gamepad spisywał się w tej roli doskonale, miał tylko problem z samym kierunkiem, bowiem naciśnięcie jednego przycisku krzyżyka odpowiedzialnego za wybrany kierunek owocowało niezamierzonym naciśnięciem sąsiedniej jego części odpowiedzialnej za napęd w drugiej osi.

gamepad_Nintendo

Być może dałoby się to jakoś podpiłować, albo inaczej zmodyfikować, ale spodobał mi się pomysł podłączenia zwykłego joystick’a typu arcade z lat 80-tych, który ma nieśmiertelne sprężynkowe mikrostyki kierunkowe i takiż mikrostyk przycisku „fire”. Obecnie teleskop jest sterowany tym własnie joystick’iem, wymieniłem tylko przewód na inny o długości 5m.

20170807_211053

Zmiana w oprogramowaniu polegała na przejściu z odczytu stanu wszystkich styków (co oferuje gamepad Nintendo) i obsługiwaniu stosownych warunków do odczytu stanu poszczególnych styków joystick’a. I byłoby fajnie, gdybym nie dostał przypadkiem płytki z gamepad’a PlayStation, z której wymontowałem grzybek wyposażony w dwa potencjometry i mikrostyk jako „fire”. Właśnie przerabiam sterowanie napędami pod kątem tego grzybka, ale to zostanie opisane niebawem.

Powolna prędkość przesuwu teleskopu nie wnosi żadnych zagrożeń, po prostu powolutku jedzie on sobie, co można zobaczyć tu. O gwałtownym ruszaniu i hamowaniu nie może być tu mowy. Zupełnie inaczej jest w przypadku zaledwie kilkukrotnie większej prędkości: silnik musi ruszyć z miejsca kawał bezwładnej rury, a na koniec zahamować. Jest to ogromne obciążenie dla systemu przenoszenia napędu, niszczy się i naciąga pasek, więc należało coś z tym zrobić. Już na etapie projektowania oprogramowania Krzysztof zaimplementował bibliotekę odpowiedzialną za przyśpieszanie i hamowanie silników. W oparciu o parametry mogę teraz zmieniać prędkość w trybie szybkim oraz wielkość przyspieszenia. Jest to także dość istotne, jeśli zamierzam powiesić moją lustrzankę na wyciągu okularowym i stosować soczewkę Barlow’a lub inne akcesoria w przyszłości – wszystko to powiększa masę układu, a więc i bezwładność. Jak wygląda ruch w trybie szybkim z uwzględnieniem przyspieszenia można zobaczyć tu. Wygląda to dość przyjemnie.

W chwili obecnej mamy drobny problem z ruchem w kierunku góra-dół. Z niewiadomych jeszcze przyczyn teleskop wchodzi w drgania widoczne jako swoisty ruch falowy, co również słychać. Może to być spowodowane wadliwym silnikiem, wadliwym sterownikiem silnika lub mechaniczną niedoskonałością. Mam nadzieję niebawem znaleźć rozwiązanie.

C.D.N.

Reklamy