(Prawie) Uniwersalny Sterownik napędów DIY

xooon | 27 Lut 2024, 22:40

Postanowiłem po raz kolejny zmierzyć się z tematem sterowania amatorskim montażem, trochę z chęci ponownego sprawdzenia się w temacie ale głównie z powodu lepszego poznania modułu procesora ESP32.

Nie będę tu rozpisywał się szerzej na temat tego procesora i raczej skupię się na jego działaniu w sterowniku ale dla porządku podam kilka podstawowych danych:
- procesor ma dużą pamięć operacyjną (kilkaset kB) oraz pamięć trwałą (do kilku Mb)
- system pracuje z zegarem 160MHz i ma koprocesor numeryczny(!)
- moduł ma więcej niż podstawowe peryferia ułatwiające dołączenie urządzeń zewnętrznych
- procesor jest łatwo programowalny za pomocą elementarnych narzędzi (np. edytor tekstu) z pomocą python-a
- moduł jest tani, tanie są również peryferia
Chętnie opowiem o szczegółach technicznych procesora zainteresowanym na zasadzie kontaktu bezpośredniego, podkreślę tu jedynie, że wszystkie pliki programu i danych to pliki tekstowe.

W temacie "siedzę" od dłuższego czasu i choć nie mam żadnej presji terminowej to doszedłem do wniosku, że rezultaty jakie osiągnąłem pozwalają na zaprezentowanie wyników chyba ponad dwustu godzin prac projektowych, programowania i testów.

Będę też próbował opisać rozwiązania jakie zastosowałem w oprogramowaniu w ścisłym powiązaniu z głównym "winnym" czyli mechaniką nieba i jego śledzeniem. Nie będą to prawdopodobnie omówienia modułów programu lecz bardziej sugestie co i w jaki sposób należy uwzględnić w programie o ile ktoś zainspiruje się sam tym tematem i podejmie swoją próbę rozwiązania.

Na razie system jest w stanie kontrolować napęd paralaktyczny (lub platformę paralaktyczną), umie odnaleźć Słońce i wszystkie planety, ma bazę danych gwiazd (ok. 3900 obiektów) o jasności do 6 wielkości i deklinacji do -40 stopni, ma bazę danych dso (ok. 5500 obiektów) o jasności do 10 i również o deklinacji do -40 stopni. Wyszukiwanie obiektów oparte jest na potocznych nazwach gwiazd (tych jaśniejszych) lub ds-ów lub z użyciem nazwy katalogowej HIP dla gwiazd i NGC dla dso.
Sterowanie pozwala na niezależne ustawienie parametrów sterownia dla kanałów Ra i De w zakresie od 1.2 arcsec/krok do ok. 0.05 arcsec/krok. Działa guide w obu kanałach w systemie ST4 oraz mikrokroki do ręcznej korekty położenia. Prędkość sterowania w trybie goto pozwala nawet na ponad tysiąckrotną wartość prędkości sideralnej (kilka stopni/sek)
Do zrobienia zostało sterowanie napędami azymutalnymi (dobson), poprawienie sterowania ręcznego, edytor bazy danych własnych obiektów.

Rozważam prośbę o pomoc w testowaniu sterownika na zasadach jakie podam nieco później. Liczę tu na kolegów mogących wprost zastosować sterownik do własnoręcznie wykonanych lub modyfikowanych montaży.

Na początek krótka prezentacja działającego już prototypu:

Image

Komplet urządzeń składa się z pilota i modułu połączeniowego. Pilot zawiera procesor, wyświetlacz 2x16, zegar, klawisze i sterowniki silników krokowych obu osi. Moduł połączeniowy, łączony kablem (15 przewodów) z pilotem zawiera głównie gniazda oraz dodatkowo może posiadać optoizolację guide. System pracuje z guide w standardzie ST4 za pomocą gniazda RJ45, które może być połączone wprost np. do kamery guide z portem ST4. Podobne złącza zostały użyte dla połączeń z silnikami krokowymi obu osi. W dalszej części opisu oszacuję koszt wykonania obu elementów systemu sterowania.

Image

Działający pilot wyświetla podczas śledzenia nazwę obiektu oraz jego bieżące lokalne położenie (azymut i wysokość) ale możliwy jest wybór innego obiektu z bazy planet, gwiazd lub DSO oraz wykonanie skoku goto.

Image

Image

Image

Tu pokazałem główne składowe pilota i wygląd elementów po zmontowaniu. Montaż drukowany powoduje, że całość jest stabilna dzięki temu można było skupić się głównie na problemach z oprogramowaniem.
Zleciłem wykonanie obudów zarówno dla pilota jak i dla modułu połączeniowego i jak nadejdą to się pochwalę ale na razie muszą wystarczyć zdjęcia "gołych" urządzeń.
cdn....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 29 Lut 2024, 12:19

Kilka dodatkowych danych na temat urządzenia:

Image

To wymiary płytek, urządzenia w obudowie będą kilka mm większe.

Schemat pilota
Schemat modułu połączeniowego

http://lx-net.pl/starch/proba7.jpg
http://lx-net.pl/starch/proba6.jpg
http://lx-net.pl/starch/proba5.jpg
http://lx-net.pl/starch/proba4.jpg
http://lx-net.pl/starch/proba3.jpg
http://lx-net.pl/starch/proba2.jpg
http://lx-net.pl/starch/proba1.jpg

Tu kilka linków do moich prób projektowych. Polecam wszystkim tą metodę aby przed zleceniem wykonania na zewnątrz detalu sprawdzić jak będzie prawdopodobnie wyglądał w naturze używając tanich materiałów i substytutów. Tu akurat robiłem próby z użyciem kartonu.

Koszt wykonania pilota bez obudowy:
- płytka ok. 15PLN
- procesor ESP32 ok. 27PLN
- wyświetlacz ok. 20PLN
- zegar RTC ok 5PLN
- sterowniki silników krokowych ok. 2x15PLN
- przyciski ok. 6x5PLN
- gniazda, diody, inne ok. 10PLN
===================================
łącznie ok. 150PLN

Koszt wykonania modułu połączeniowego:
- gniazda ok. 4x5PLN
- konwerter DC/DC ok. 20PLN
- płytka ok. 11PLN
- inne ok. 10PLN
===================================
Łącznie ok. 61PLN

Koszt kabla połączeniowego to ok. 35-40PLN.
cdn.....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 01 Mar 2024, 15:35

Dostałem elementy na obudowy urządzeń.

Image
Obudowy zrobione są z laminatu co pozwala je złożyć jak "puzzle" przez lutowanie

Pora na szybkie przedstawienie podstawowych funkcji sterownika.

Image
Po włączeniu ekran pokazuje bieżącą datę i czas, rozbieżności można skorygować w procedurze setup.

Image
Główny ekran zawiera cztery pozycje ale w zasadzie tylko dwie z nich są aktywne: Run (śledzenie, goto) i Obj (dostęp do bazy danych obiektów). Odpowiedni wybór wykonuje się za pomocą klawiszy poziomych a zatwierdza klawiszem środkowym. Wskaźnikiem aktywnej pozycji menu jest kursor.

Image
Podstawowy tryb to śledzenie (+ goto) wybranego obiektu -> tu obiektem jest Słońce, dolna linia pokazuje aktualny azymut i wysokość obiektu w stopniach.

Image
Przewiduję możliwość skorzystania z czterech baz danych:
PLA -> planety + Słońce
DSO -> obiekty dso identyfikowane przez nazwę własną lub numer NGC,
STA -> katalog kilku tysięcy gwiazd identyfikowanych nazwą własną lub przez numer w katalogu HIP oraz
OWN -> to baza własnych obiektów (ta funkcjonalność nie jest jeszcze działająca)

Setup wejście
Setup pozwala na ustawienie wszystkich niezbędnych i pomocniczych danych niezbędnych do sterowania i zawiera kolejno:

Image
Ustawienie miesiąca
Ustawienie dnia
Ustawienie godziny
Ustawienie minuty
Datę i czas można skorygować w górę i dół za pomocą klawiszy pionowych a wybór zatwierdza się klawiszem środkowym co dodatkowo przenosi program do kolejnej pozycji setup.
Kolejne pozycje setup to:

Ustawienie różnicy czasu względem GMT
Ustawienie typu montażu

Ustawienie wartości przekładni w osi Ra
Ustawienie wartości przekładni w osi De
Przekładnia dla każdej osi może być różna i ona decyduje o precyzji prowadzenia. Dla przykładu przekładnia o wartości 2000000 to krok sterownia ok. 360*60*60/2000000=0.648arcsec/krok

Ustawienie prędkości skoku goto w osi Ra
Ustawienie prędkości skoku goto w osi De
Prędkość skoku (slew) decyduje o szybkości z jaką montaż będzie wykonywał przesunięcie od obiektu do obiektu. Ten parametr to wielokrotność prędkości nieba (ok. 15.041 arcsec/sek) i dla przykładu dla wartości 400 dla osi Ra skok goto będzie wykonywany z prędkością ok. 400*15.041arcsec/sek czyli ok. 1.67stopnia/sek

Ustawienie długości geograficznej miejsca obserwacji
Ustawienie szerokości geograficznej miejsca obserwacji
Położenie ustalone jest z dokładnością 1/1000 stopnia czyli ok. 111m.

Ustawienie czułości guide Ra
Ustawienie czułości guide De
Podczas guide w osi Ra należy przyspieszyć lub spowolnić napęd. Ten parametr ustawiany w zakresie 1-1.5 pokazuje w jakiej proporcji prędkość nominalna będzie zwiększona lub zmniejszona.

Informacja o zakończeniu procedury setup
Po zakończeniu ustawień należy zrobić "hard reset" systemu za pomocą zasilnia. Po wznowieniu pracy system będzie działał z nowymi ustawieniami.

Zmiana przekładni Ra z ok. 4000000 na 8000000
Zmiana długości geograficznej
Z tego rozwiązania jestem szczególnie zadowolony bo za pomocą dość prostych środków udało mi się zapewnić w miarę szybką zmianę wartości w dużym zakresie. Przyciśnięcie klawisza strzałki w pionie powoduje zmniejszenie lub zwiększenie wartości a kolejna dziesiąta zmiana zostaje przeniesiona w prawo co oznacza zwiększenie skoku zmian 10-cio krotnie itd aż do zwolnienia klawisza.

Wyszukanie w bazie DSO M57 za pomocą nazwy własnej
Do wyszukiwania obiektów w bazach można używać nazw katalogowych (NGC dla dso i HIP dla gwiazd) ale można również szukać po nazwach własnych i wystarczy do tego dowolna część nazwy. Dla niekompletnej nazwy system pokaże kolejno znalezione nazwy pasujące do wzorca a jeśli wpisana nazwa jest pełna to wyszukiwanie jest jednoznaczne. Nazwy przed zatwierdzeniem można korygować kasując ostatni znak.


A na koniec tego posta kilka filmów:
Skok goto z M31 do Jowisza
Skok goto ze Słońca do gwiazdy Polarnej
Skok goto z Jowisza do Słońca
W tle obrazu słychać silnik osi De. Na razie mam jeden prowizoryczny napęd do testowania, który przełączam pomiędzy osiami w zależności od potrzeby. Podczas skoku goto widoczna jest w prawym górnym rogu klepsydra, która jest aktywna dopóki trwa skok goto. Stąd czasem jej aktywność pomimo ustania ruchu w osi De, pewnie w dalszym ciągu trwa ruch w osi Ra. Po zakończeniu skoku pojawiają się nowe współrzędne azymutalne obiektu i można dostrzec zmiany zarówno dla azymutu jak wysokości - to efekt przejścia w tryb śledzenia z prędkością nominalną nieba i gotowością do kolejnego skoku goto.
cdn ....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 05 Mar 2024, 12:59

Kończąc prezentację dotyczącą podstawowych funkcji urządzenia chciałbym pokazać jaka jest szybkość wyszukiwania obiektów w bazie danych.
Największą bazą jest baza dso zawierająca ponad 5500 obiektów głębokiego nieba.

Image
Na zdjęciu wyróżniłem podkreśleniem linie pokazujące ilość obiektów w bazie, pierwszy obiekt oraz ostatni obiekt w tej bazie. Baza jest ułożona w przybliżeniu z obiektami uszeregowanymi z narastającą wartością Ra od 0 do 23 (dla każdej grupy nazw np. Ic, Ngc itd.) Ostatni z obiektów w bazie ma nazwę Ter8 oraz współrzędne Ra=19.696 i De=-34.0 (wartość 12.4 to jasność obiektu ale nie ma znaczenia przy pracy programu). Film pokazuje wybór obiektu z bazy oraz czas niezbędny do przejrzenia wszystkich linii aby znaleźć ten obiekt. Algorytm wyszukiwania po prostu przeszukuje dane linia po linii.
najdłuższe wyszukiwanie
Czas wyszukiwania nie jest większy niż 15sek co daje prędkość ok. 370 linii (obiektów) na sekundę.

Image
Tu widać zawartość bazy danych gwiazd. Jak wspominałem baza oparta została na katalogu HIP ale zawiera również nazwy własne dla jaśniejszych gwiazd i dla przykładu wyliczyłem wszystkie gwiazdy (w tej bazie oczywiście) posiadające nazwy własne zaczynające się na literę "M". Wyszukiwanie obiektów możliwe jest zarówno po nazwie własnej jak i po nazwie katalogowej HIP.

Image
Oddzielną bazę danych stanowią planety. To obiekty, które dość szybko przesuwają się po niebie i wymagają wyliczenia Ra i De przed każdą obserwacją. Opiszę to dokładniej podczas analizy programu.

*************************************************************************************************

Oprogramowanie napisane zostało w języku python, który jest otwartą platformą pozwalającą na tworzenie bardzo złożonych aplikacji za pomocą względnie prostych i dostępnych narzędzi a sam język jest bardzo intuicyjny. Ja używam do programowania aplikacji uPyCraft i/lub Thonny - obie aplikacje są dostępne zarówno na platformie Windows jak i Linux i są oczywiście bezpłatne. Programy napisane w jezyku python to pliki tekstowe, dane używane przez program to również pliki tekstowe.

część mojego programu astro.py napisanego w python-ie

Image
Ten obraz pokazuje wszystkie (obecnie) pliki oprogramowania oraz danych jakie wgrałem do procesora ESP32. Pliki .py to programy, pliki .txt to pliki z danymi.
Programy i2c_lcd.py, lcd_api.py oraz ds1302.py to zewnętrzne, darmowe biblioteki do obsługi wyświetlacza i modułu zegara RTC.
Wspomniane wcześniej pliki tekstowe sta2.txt, pla2.txt,dso2.txt to bazy danych obiektów nieba przygotowane przeze mnie (na podstawie znacznie bardziej obszernych w dane) dostępnych baz w internecie..
Mój największy wkład to pliki setup.py (ustalenie konfiguracji), intro.py (wyliczenie pozycji słońca i planet) oraz astro.py (sterowanie montażem). Planuje dorobić dodatkowo mały program do budowy własnej bazy danych oraz program do testowania napędu gdzie będzie można na przykład wykonać określoną ilość obrotów silnika lub wykonać ruch o określoną wartość w osi Ra lub De co będzie pomocne przy sprawdzeniu i identyfikacji parametrów montażu DIY.

Image
Plik astro.txt to plik konfiguracyjny zawierający dane na temat montażu (typ, przekładnie, parametry guide, prędkość) i dane o miejscu obserwacji łącznie z określeniem strefy czasowej. Te dane ustalane są za pomocą programu setup.py
cdn...

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 06 Mar 2024, 14:12

Zanim zacznę omawiać algorytmy użyte w moim systemie sterowania podam główne źródło na jakim opierałem się w swoich pracach oraz wyjaśnię niezbędne pojęcia z jakimi spotykamy się przy konstrukcji sterownika:
Podstawy teoretyczne
Przykłady obliczeń do testowania programu

Ruch obiektów na niebie jest bardzo złożony ale podane wzory są na tyle dokładne, że są wystarczają w zupełności do celów zastosowań amatorskich. Autor (Paul Schlyter, Stockholm, Sweden) zastosował uproszczenia dokładnych procedur aby uzyskać dokładność położenia planet ok. 2' łuku.

Image
Pierwszym ważnym pojęciem jest tzw sideral time (czas gwiazdowy). Rysunek pokazuje różnicę między czasem gwiazdowym a czasem słonecznym - czyli tym jakim posługujemy się na co dzień za pomocą zegarka.
Załóżmy, że obserwujemy położenie Słońca (lub widocznej dokładnie za nim gwiazdy) będąc na Ziemi w punkcie O, dokładnie w południe kiedy Ziemia znajduje się w położeniu P1 na orbicie. Jeśli Ziemia wykona pełny obrót o 360 stopni to gwiazda (znajdująca się nieskończenie daleko w stosunku do Słońca) w dalszym ciągu będzie widziana w tym samym miejscu na niebie ale Słońce będzie znajdować się nieco na prawo (patrząc na południe). Słońce znajdzie się dokładnie na południe około 4 minuty później kiedy punkt O obróci się do położenia linii purpurowej. . Odpowiada to różnicy ok. 1 stopnia na niebie. Tak więc, jeśli każdego dnia będziemy obserwować Słońce w południe to ta sama gwiazda leżąca w oddali będzie każdego dnia zmieniać względem Słońca położenie o ok. 1 stopień. W ten sposób niebo i jego obiekty powoli zmieniają swoje położenie wędrując pozornie z zachodu na wschód (na półkuli południowej jest oczywiście odwrotnie).
Dokładniej mówiąc, doba słoneczna to 24 godziny a doba gwiazdowa to "tylko" 23h56:4.0905. Gwiazdy widzieć będziemy więc okresowo w tym samym miejscu co 23h56:4.0905 i taki okres czasu musi uwzględniać program określający położenie obiektu na niebie.

Najprostszy algorytm sterowania dla montażu paralaktycznego zapewniający śledzenie obiektu powinien więc wyglądać następująco:
1. Ustaw w przestrzeni montaż paralaktyczny (np. metodą na Gwiazdę Polarną (GP) i/lub dryft)
2. Wyszukaj na niebie obiekt do obserwacji
3. Obracaj montażem w osi Ra tak aby pełen obrót montażu wynosił 23h56:4.0905 (86164,0905 sek) czyli z prędkością kątową 360stopni/86164.0905sek = 15,041068646 arcsec/sek.

Punkt 3. można zrealizować na wiele sposobów ale bardzo popularna metoda to użycie silnika krokowego z przekładnią zębatą oraz dodatkową przekładnią w samym montażu. Popularne montaże EQ3 mają:
- silnik krokowy z krokiem 7.5 stopnia czyli na pełny obrót trzeba zrobić 360/7.5 = 48 kroków
- sterowanie półkrokowe co efektywnie zmniejsza krok o połowę a więc na pełny obrót silnika należy wykonać 96 kroków
- przekładnię zębatą silnika 1:120
- przekładnię montażu w osi Ra = 1:144
Łączna przekładnia takiego napędu wynosi 96*120*144 = 1658880 co powoduje, że krok sterowania to 360*60*60/1658880 = 0,78125 arcsek/krok
Aby więc taki montaż nadążał za niebem potrzeba aby wykonał 15,041068646 arcsec/sek / 0,78125 arcsek/krok = 19,252567867 kroków/sek
Taki napęd nie wymaga oczywiście skomplikowanego rozwiązania sterującego, wystarczy generator z częstotliwością ok. 19.25Hz. Taki generator będzie jednak niezbędnym wyposażeniem pełnego systemu goto w trybie śledzenia.
cdn...

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 07 Mar 2024, 15:00

Kolejne ustalenie w budowie sterownika napędu dotyczy czasu.
Czas nie ma początku i końca dlatego przyjęto pewien moment w historii, pewien punkt odniesienia, jako południe 4713 roku pne dla południka zerowego (Greenwich). To umownie rok zerowy. Dziś (07.03.2024 o 12:00) mamy tzw. dzień juliański (JD) 2460377.0, w roku 2000, pierwszego stycznia o północy był dzień juliański (JD) 2451544.5. Ta ostatnia data jest o tyle istotna, że względem niej definiuje się położenie obiektów w bazach danych. Położenie wielu obiektów na niebie ustala się na podstawie znajomości bieżącego dnia względem punktu odniesienia i w podanym wyżej opracowaniu niezbędna jest znajomość zmiennej d - czyli różnicy pomiędzy dniem obecnym a 01.01.2000 0:00:00 czyli d = JD - 2451543.5 lub znając bieżący dzień (D), miesiąc (M) oraz rok (Y) liczonej jako:
d = 367 * Y - (7 * (Y + ((M+9)/12))) / 4 + (275 * M) / 9 + D - 730530
Do wyliczenia zmiennej d pomocny jest zegar czasu rzeczywistego a więc korzystne jest aby sterownik zawierał taki zegar działający także kiedy sterownik jest wyłączony.

Kolejnym istotnym pojęciem jest sideral time. Sideral time to odległość w czasie od południka zerowego (Greenwich) do południka miejsca obserwacji a więc z uwzględnieniem długości geograficznej miejsca obserwacji liczony dla punktu przesilenia wiosennego. W chwili przesilenia wiosennego sideral time dla południka zerowego ma wartość zero i w tej samej chwili sideral time w miejscu obserwacji to po prostu różnica w szerokości geograficznej między południkiem zerowym a miejscem obserwacji - czyli po prostu długością geograficzną wyrażoną w jednostkach czasu (15 stopni szerokości to 1 godzina bo 360/24=15). W każdej innej chwili lokalny sideral time to:
sidt = sidt0 + time + szerokość_geograficzna_miejsca_obserwacji -> sidt0 to sideral time na południku 0, time, to lokalny czas HH:MM:SS a szerokość geograficzną należy wyrazić w jednostkach czasu (szerokość/15). Znajomość [b]sideral time
jest niezbędna do określenia najbardziej bieżącego położenia obiektu i należy liczyć go możliwie często, na przykład co 1 sek aby dane o obiekcie były aktualne. Tu również widać niezbędność działania zegara czasu rzeczywistego podającego lokalny czas na żądanie algorytmu sterowania.

Do kompletu danych niezbędnych do sterowania potrzebna jest znajomość położenia obiektów na niebie.

Image
Takie dane zawierają bazy danych obiektów nieba (poza Słońcem i planetami) bo można założyć, że ich położenie zmienia się nieznacznie w czasie. Zwykle bazy tworzone są dla określonego momentu w czasie a ostatnio obowiązujące mają odniesienie do punktu równonocy wiosennej w roku 2000 i oznaczane jako J2000. Punkt równonocy wiosennej to miejsce przecięcia ekliptyki (pozornej orbity Słońca względem Ziemi) oraz równika gwiazdowego (prostopadłego do osi N-S przechodzącej przez gwiazdę polarną).
Bazy danych dla obiektów nieba zawierają wiele danych ale z punktu widzenia sterowania najważniejsze to rektascencja (Ra) i Deklinacja (De). Rektascencja to odległość do obiektu liczona wzdłuż równika niebieskiego wyrażona w jednostkach czasu (1 godzina = 15 stopni) od punktu równonocy). Rektascencja przyjmuje wartości od 00:00:00 do 23:59:59. Deklinacja to odległość obiektu od równika w kierunku bieguna niebieskiego wyrażona w stopniach. Na równiku deklinacja jest równa zeru, w kierunku Gwiazdy Polarnej wzrasta do 90 stopni a w kierunku niebieskiego bieguna południowego maleje do -90 stopni.
Dane w bazach J2000 mówią, że gdybyśmy w momencie równonocy wiosennej w roku 2000 obserwowali niebo na południku zerowym (Greenwich) to każdy z obiektów leżałby dokładnie w miejscu określonym przez tą bazę. W chwili obecnej, znając ilość dni jakie upłynęły od momentu utworzenia bazy, aktualny czas oraz odległość od południka zero (szerokość geograficzną) jesteśmy w stanie znaleźć każdy obiekt na podstawie jego położenia w roku 2000.

Znając bazę danych obiektów nieba szybko można się zorientować, że przesunięcie z jednego obiektu na inny wymaga zawsze takiego samego ruchu. Dla przykładu pokazałem na rysunku dwie gwiazdy o współrzędnych S1: Ra1 = 6h33'30" i De1 = -15 34'20" oraz S2: Ra2 = 9h20'30" i De2 = 45 34'23". Aby przejść z obiektu S1 do S2 należy wykonać ruch wzdłuż równika niebieskiego o deltaRa = R2 - R1 = 2h47'0" oraz wzdłuż południka niebieskiego o deltaDe = De2 - De1 = 61 04'43".
Ponieważ montaż paralaktyczny zorientowany jest zgodnie z równikiem niebieskim (oś Ra) to w naturalny sposób przejście od S1 do S2 wymaga obrotu montażu dla współrzędnej Ra o deltaRa i pochylenia teleskopu dla współrzędnej De o deltaDe.

Można się więc pokusić o zarysowanie algorytmu goto dla montażu paralaktycznego "znającego" położenie obiektów na niebie:
1. Ustaw w przestrzeni montaż paralaktyczny (np. metodą na Gwiazdę Polarną (GP) i/lub dryft)
2. Wyszukaj na niebie obiekt do obserwacji -> S1
3. Zapamiętaj dane Ra1 i De1 obiektu S1
4. Obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S1
5. Wyszukaj w bazie dane Ra2 i De2 dla obiektu S2
6. Oblicz różnice deltaRa = Ra2 - Ra2 oraz deltaDe = De2 - De1
7. Obróć montaż wokół osi Ra o wartość deltaRa i pochyl teleskop o wartość deltaDe
8. Obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S2

Niestety, czas potrzebny na zmianę położenia od S1 do S2 może wynosić od kilku sekund do kilku minut ( co zależy od prędkości działania napędów dla każdej z osi) i w tym czasie obiekt S1 będzie podążał na niebie z prędkością ok. 15arcsec/sek więc kiedy nasz teleskop wykona w końcu przesunięcie deltaRa to obiektu nie będzie już w tym miejscu. Zakładając, że czas potrzebny na przestawienie montażu o deltaRa to dt w sekundach to obiekt znajdzie się w odległości dt * 15.041 arcsec od miejsca skoku. Algorytm powienien więc to uwzględniać modyfikując deltaRa o ok. 15.041 arcsec na każdą sekundę ruchu lub dodając na końcu ruchu przesunięcie dt * 15.041arcsec. Ten drugi sposób jest nieco łatwiejszy do wykonania ale z kolei też wymaga czasu na wykonanie ruchu więc należałoby po raz kolejny badać czas jego trwania i dodać kolejne przesunięcie w osi Ra itd.

Skorygowany algorytm powinien więc być podobny do tego opisu:
1. Ustaw w przestrzeni montaż paralaktyczny (np. metodą na Gwiazdę Polarną (GP) i/lub dryft)
2. Wyszukaj na niebie obiekt do obserwacji -> S1
3. Zapamiętaj dane Ra1 i De1 obiektu S1
4. Obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S1
5. Wyszukaj w bazie dane Ra2 i De2 dla obiektu S2
6. Oblicz różnice deltaRa = Ra2 - Ra2 oraz deltaDe = De2 - De1
7. Obróć montaż wokół osi Ra o wartość deltaRa i pochyl teleskop o wartość deltaDe, dodaj do deltaRa 15.041 arcsec na każdą sekundę ruchu w osi Ra
8. Obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S2

Opisany mechanizm nie wymaga dużych nakładów obliczeniowych, odległości między obiektami są ustalone w bazie i ruchy są dość proste do określenia. Ustawiając montaż paralaktyczny na znany obiekt S1 i mając zapewniony w osi Ra ruch z prędkością nieba (ok. 15.041 arcsec/sek) z łatwością można przesunąć się do obiektu S2 na podstawie jego znanych współrzędnych w bazie danych J2000. Nie jest na razie potrzebna znajomość ani daty juliańskiej, ani sideral time. Ustawienie montażu na znany obiekt, niejako z automatu zapewnia właściwy dobór tych parametrów, które i tak nie są potrzebne do zmiany położenia montażu na inny obiekt z bazy danych.

***********************************************************************************************************
Niestety, ten już i tak zawiły obraz muszę dodatkowo skomplikować następującymi uwagami:
- trzeba uważać wykonując obliczenia na współrzędnych De wyrażanych w stopniach, jeśli należy odjąć np. 12 26'52" to należy ze znakiem minus traktować każdą z frakcji a więc -12 -26' -26". Najłatwiej uniknąć problemów zamieniając zapis 12 26'52" na postać dziesiętną: 12+26/60+62/3600 = 12,450555556. Jeśli korzystamy z danych Ra w formie h:m:s to należy również przejść na postać dziesiętną dla ułatwienia obliczeń.
- korekta ruch w osi Ra o ok. 15.041arcsec na każdą sekundę łuku musi uwzględniać kierunek zmiany. Jeśli obiekt S2 ma Ra większe niż obiekt S1 to "gonimy" go i korekta musi być dodatnia ale jeśli ruch jest w kierunku mniejszych wartości Ra to obiekt S2 "biegnie" ku nam z dodatkową prędkością 15.041arcsec/sek i korekta deltaRa musi być ujemna w każdej sekundzie ruchu. Korekta w osi Ra musi zatem uwzględniać kierunek skoku.
- należy ostrożnie wyliczać dystans do pokonania dla obiektów Ra o dużej różnicy (>12h). Załóżmy, że S1 ma Ra=2h0'0" czyli dziesiętnie 2.0 a S2 ma Ra=23h0'0" czyli dziesiętnie 23.0 to skok z S1 do S2 wymaga deltaRa=23.0 - 2.0 = 21.0 (godzin) ale przecież odległość między tymi obiektami na okręgu to zaledwie 3 godziny.
Image
Na rysunku dla uproszczenia pokazałem tylko koło Ra (godzinowe) gdzie widać wyraźnie , że droga wzdłuż czerwonego łuku jest dużo dłuższa niż wzdłuż zielonego. Dlatego jeśli wyliczony dystans do pokonania jest większy niż 12 godzin (połowa okręgu) to należy skorygować wynik przez odjęcie wartości 24 oraz zmianę kierunku ruchu niż ten wynikający z początkowych wyliczeń.
Na tym samym przykładzie daje się wykryć kolejne utrudnienie dla algorytmu sterowania. Jeśli wyliczyć skok z S2 do S1 wtedy deltaRa = 2.0 -23.0 = -21.0 godzin. W tym wypadku należy przyjąć znak wyniku (-) jako kierunek przeciwny do kierunku obrotu nieba ale ostateczną wartość ruchu jako uzupełnienie do 24 godzin czyli: -21.0 + 24.0 = 3.0 (godziny).
cdn...

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 09 Mar 2024, 17:11

Jak dotąd nie było wyraźnej potrzeby aby wykorzystywać czas w obliczeniach ale dotyczy to tylko odległych obiektów, które w zasadzie nie zmianiają swojego położenia na niebie.
Inaczej jest dla Słońca, Księżyca i planet bo zmieniają one swoje położenie istotnie i niemal z dnia na dzień a w trakcie badania tego ruchu powstało wiele mniej lub bardziej udanych teorii ich mechaniki. Dla przykładu Słońce wykonuje roczną wędrówkę po niebie "odwiedzając" kolejne znaki zodiaku, bardziej oddalone planety wędrują po niebie wolniej ale nie można dla tych obiektów ustalić stałego położenia jak dla gwiazd i obiektów dso.
Podane wcześniej linki do opracowania Paul-a Schlyter-a to niezbędne uproszczenia dokładnych algorytmów stosowanych w zastosowaniach profesjonalnych ale zapewniające dokładności rzędu 2" co jest i tak mniejsze niż inne błędy np. w ustawieniu montażu.

Na szczęście, dla każdego z obiektów planetarnych i Słońca obliczenia są powtarzalne więc algorytm obliczeń można istotnie zautomatyzować i uprościć.

Image
Image
Image
Rysunki pokazują niezbędne wartości parametryzujące obliczenia oraz konkretne wartości dla Słońca i Jowisza. Jak widać, parametry te zależą bezpośrednio od wartości d czyli ilości dni jakie upłynęły od momenty J2000 dla którego budowane są bazy danych obiektów.

Mój algorytm, na podstawie znajomości aktualnej wartości d wylicza współrzędne Ra i De dla Słońca i planet, z wyjątkiem Księżyca i Plutona w procedurze intro.py. Analiza wykazuje, że jakkolwiek parametry te zmieniają się nieustannie, to dla potrzeb działania sterownika wystarczające jest aby policzyć je raz, właśnie podczas uruchomienia sterownika zachowując niezbędną dokładność sterowania.
Obliczenia dla Księżyca są na tyle skomplikowane a sam obiekt na tyle widoczny, że zdecydowałem się na razie nie robić dla niego obliczeń i nie ma go w bazie. Podobnie dla Plutona, który nie daje się objąć wspólnym algorytmem, jest on dla niego na tyle złożony , że na razie nie włączyłem go do modułu intro.py ale jak będę miał nieco więcej czasu to zapewne do tych obliczeń wrócę.

Reasumując, aby baza danych obiektów zawierająca niezmienne dane dla gwiazd i dso była pełna, niezbędne jest, jak u mnie, wyliczenie współrzędnych Ra i De Słońca i planet podczas startu sterownika lub, co trudniejsze i chyba niepotrzebne, obliczać te współrzędne z określoną częstotliwością (np. co minutę lub godzinę obserwacji). Tak więc, mój sterownik korzysta podczas pracy z trzech plików - baz danych zawierających współrzędne dla gwiazd i dso (niezmiennych) oraz z modyfikowanego podczas startu pliku danych dla planet i Słońca. Struktura tych danych jest identyczna dla każdego z tych plików co ułatwia późniejsze ich wykorzystanie.
Dodam, że początkowo należy wyznaczyć dane dla Słońca, które w późniejszym czasie są używane również dla obliczeń planet.
cdn....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 11 Mar 2024, 11:21

Tak więc, mając pełna informację na temat współrzędnych obiektów (tych stałych jak i tych zmieniających położenie) można pokusić się o poprawę algorytmu sterownia:

1. Uruchom system i wylicz na moment startu co najmniej współrzędne Ra i De dla Słońca i planet
2. Ustaw w przestrzeni montaż paralaktyczny (np. metodą na Gwiazdę Polarną (GP) i/lub dryft)
3. Wyszukaj na niebie znany (jasny) obiekt do obserwacji -> S1
4. Zapamiętaj dane Ra1 i De1 obiektu S1
5. Obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S1
6. Wyszukaj w bazie dane Ra2 i De2 dla obiektu S2
7. Oblicz różnice deltaRa = Ra2 - Ra2 oraz deltaDe = De2 - De1
8. Obróć montaż wokół osi Ra o wartość deltaRa i pochyl teleskop o wartość deltaDe, dodaj/odejmij do deltaRa 15.041 arcsec na każdą sekundę ruchu w osi Ra
9. Obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S2
10. Skocz do p.6 jeśli chcesz wykonać kolejny skok goto

Realizację p.1 algorytmu opisują zależności opisane przez Paul-a Schlyter-a i których nie przytaczam ze względu na większą przejrzystość opisu ale nadmienię tu jedynie, że najpierw należy wyliczyć parametry dla Słońca bo jeden z nich, tzw. lonsun (Sun longitude) używany jest następnie do wyliczenia współrzędnych Ra i De dla planet.

Ostatecznie więc dostajemy pełną bazę danych (w trzech plikach), w przybliżeniu nieruchomych obiektów nieba (gwiazd, dso, planet i Słońca). Po ustawieniu i synchronizacji montażu na znany obiekt S1 możliwe jest śledzenie i wykonywanie skoków goto.
Możemy nawet w przybliżeniu określić w jakiej stronie świata i na jakiej wysokości znajduje się obserwowany obiekt ale dokładną znajomość zarówno azymutu (Az) jak i wysokości (Alt) zapewni znajomość właśnie wspomnianego wcześniej sideral time, położenia geograficznego (długości i szerokości geograficznej) oraz nieco matematyki. Szczegóły tej operacji zawiera wspomniany wcześniej dokładny opis matematyczny i w razie potrzeby mogę zainteresowanym pomóc w jego interpretacji ale ważne jest zrozumienie, że układ obiektów na niebie (w przybliżeniu stałych w sensie Ra i De) podlega względnie szybkiej rotacji ze względu na obrót Ziemi. Dlatego współrzędne Az/Alt dla każdego z obiektów zmieniają się istotnie a dodatkowo szybkość tych zmian zależy od położenia obiektu na niebie. Ogólnie biorąc przejście z układu danych Ra/De na Alt/Az to w sensie matematycznym nieustanna rotacja współrzędnych powodująca, że obiekty na niebie leżące dokładnie na kierunku południowym (azymut 180 stopni) górują co oznacza również, że ich wysokość nad horyzontem (Alt) jest chwilowo największa z możliwych (i zmienia się dość wolno). Z drugiej strony, obiekty przecinające w swoim ruchu zenit poruszają się bardzo szybko (w teorii prędkość w zenicie jest nieskończona) co powoduje, że śledzenie obiektów za pomocą montaży Az/Alt jest utrudnione a sam algorytm sterownia nie jest banalny.
W każdym razie, sterownik powinien pokazywać aktualne położenie śledzonych obiektów w układzie azymut/wysokość a ze względu na szybką zmianę tych danych powinny one być odświeżane dość często (np. raz na sekundę). Dlatego punkt 9 algorytmu powinien być rozwinięty do postaci:

9. Obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S2
9a. Wylicz sideral time i dla jego nowej wartości wylicz azymut(Az) i wysokość(Alt) śledzonego obiektu
9b. Pokaz wyliczone wartości Az/Alt na wyświetlaczu
9c. Odczekaj np. 1 sek. i wróć do punktu 9a.

Czynność z p. 9 oraz 9c można wykonywać np. za pomocą opóźnienia w programie ale nie jest to praktyczny sposób kiedy chcemy aby system reagował jednocześnie na sterowanie i korektę ręczna położenia albo reagował na sterowanie guide. Nieco później pokażę jak wykorzystać do tego celu elementy funkcjonalne procesora (tzw. timer-y) w każdym razie wszystkie podstawowe funkcje systemu sterowania zostały osiągnięte: jest stała baza danych o obiektach (Ra/De), potrafimy wyliczyć sideral time a z jego pomocą pokazać bieżące współrzędne obiektu nad horyzontem.
cdn....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 13 Mar 2024, 11:14

Pozostało rozwikłać lakonicznie opisaną część procedury sterowania określonej jako "przesuń o deltaRa i/lub delta De". Pod tym skrótowym zapisem mieści się kilka obliczeń na etapie uruchomienia sterownika oraz bieżące obliczenia potrzebne do skoku goto.


Image
Wspomniany wcześniej plik konfiguracyjny astro.txt zawiera dane na temat możliwości dynamicznych napędu i na podstawie tych wartości wylicza podczas startu sterownika, kilka parametrów używanych później do bieżącego działania. Podane oznaczenia są oczywiście dowolne ale wyliczenie ich wartości jest niezbędne do dalszego prawidłowego działania programu.

Najważniejszy z nich to ra_g (ra_gear) oraz de_g (de_gear) czyli sumaryczne przekładnie dla osi Ra i De. Taka przekładnia jest iloczynem przekładni umownie zwanej elektryczną, w skład której wchodzi silnik krokowy oraz sposób jego sterowania oraz przekładni mechanicznej.
Podam to na przykładzie praktycznym mojego napędu: używam silnika z krokiem podstawowym 1.8 stopnia co daje 200 kroków na obrót (360/1.8=200), sterowanie jest mikrokrokowe z podziałem każdego kroku na 32 mikrokroki a przekładnia mechaniczna to ślimak o przełożeniu 625.
Łączna przekładnia wynosi więc ra_g = 200*32*625 = 4000000. Podobnie jest dla przekładni w osi De. Podane dane ra_g i de_g na zdjęciu są wprawdzie nieco inne bo robiłem w tym czasie drobne eksperymenty z prędkościami.

Znajomość przekładni pozwala na wyliczenie kroku sterowania ra_step i de_step jako:
ra_step = 360*60*60/ra_g = 360*60*60/4000000 = 0.324 arcsec/krok.
Podobnie wylicza się krok de_step - w tym wypadku przełożenie jest podobne i krok sterowania w osi De ma również wartość 0.324arcsec/krok
Nieco więcej na temat przekładni można znaleźć w opisie AstroPilota (http://lx-net.pl/astrop/astrop.php):
przekładnia mechaniczna
przekładnia elektryczna - silnik
przekładnia elektryczna - sterownik
Obliczona wartość kroku sterowania dla każdej osi używana jest później do wyliczenia niezbędnej ilości kroków jakie trzeba wykonać podczas skoku goto.

W podanym wcześniej przykładzie należy wykonać skoki goto o wartości deltaRa = 2h47'0" oraz deltaDe = 61 04'43". Ponieważ krok jednostkowy wyrażony jest w arcsec to na początek należy zamienić wszystkie dane na arcsec pamiętając, że 1h w osi Ra to 15 stopni a jeden stopień to 60*60 = 3600 arcsec.
Tak więc 2h42'0" to 2+42/60+0/3600 = 2.7h czyli 2.7 * 15 * 3600 = 145800 arcsec.
Podobnie 61 04'43" to 61+4/60+43/3600 = 61,078611111 stopni * 3600 arcsec czyli 219883 arcsec
A zatem w osi Ra należy wykonać 145800arcsec/0.324 arcsec/krok = 450000 kroków oraz 219883 arcsec/0.324arcsec/krok = 678651 kroków w osi De.

Drugą istotną rolę jaką odgrywa znajomość kroku sterowania w osi Ra jest sterowanie tej osi w trybie śledzenia. Ponieważ niebo obraca się z prędkością 15,041068646 arcsec/sek a krok sterowania w osi Ra to przykładowo 0.324arcsec/krok to częstotliwość sterowania w trybie śledzenia wynosi 15.041068646 arcsec/sek / 0.324arcsec/krok = 46.423051377 kroków/sek. Można to uzyskać z generatora o zbliżone częstotliwości. Oczywiście warto zapewnić możliwie dokładną częstotliwość sterowania ale na przykład zaokrąglenie tej wartości do 46.42Hz spowoduje w czasie godziny różnicę w prowadzeniu ok. 2.5' (minuty łuku). Jak widać nie absolutna dokładność ale raczej stabilność sterowania ma większe znaczenie.

Programując funkcję śledzenia należy więc zapewnić stałą częstotliwość sterowania w osi Ra ale raczej nie należy tego robić w głównej petli programu choćby przez odpowiednie opóźnienie bo trudno jest kontrolować stałość częstotliwości w czasie za pomocą prostej pętli a poza tym procesor w głównej pętli wykonywał by jedną czynność blokując inne funkcje. Dlatego do sterowania w funkcji śledzenia należy wykorzystywać tzw. timer-y czyli niezależne, funkcjonalne bloki sprzętowe procesora, które raz zaprogramowane zadaną częstotliwością odciążą procesor od tego zadania. Różne platformy programistyczne dla PC zapewniają z reguły do dyspozycji funkcję timer-a, robiąc program na mikroprocesor trzeba pamiętać o jego architekturze. ESP32 oferuje kilka timerów.

Znając częstotliwość sterowania dla osi Ra -> f_ra należy wyliczyć także częstotliwości sterowania w trybie guide. Dla osi Ra sterowanie na plus (+) oznacza przyspieszenie prędkości sterowania (f_ra_g_plus) a sterowania guide na minus (-) oznacza spowolnienie prędkości pracy (f_ra_g_minus). A zatem dla guide w osi Ra ruch odbywa się stale w tym samym kierunku choć z różną prędkością. W moim systemie można dobrać współczynnik ra_g oraz de_g w zakresie od 1 do 1.5 co oznacza, że częstotliwość dla osi Ra f_ra_g_plus = f_ra * ra_g oraz f_ra_g_minus = f_ra / ra_g. Dla osi De jest nieco inaczej bo zarówno sterowanie na plus i na minus powinno mieć wartość f_de_g = f_de * de_g a odpowiednią korektę uzyskuje się przez zmianę kierunku ruchu.

Kolejne parametry jakie zawiera plik konfiguracyjny astro.txt to maksymalne prędkości dla obu osi: mxra i mxde co oznacza, że w trybie skoku należy silniki obu osi sterować szybciej niż w trybie śledzenia do maksymalnej wartości ok. mxra * 15.041 arcsec/sek oraz mxde * 15.041 arcsec/sek. Ograniczenie prędkości wynika z fizycznych ograniczeń zarówno silników jak i samego montażu.

Plik konfiguracyjny astro.txt zawiera także położenie geograficzne miejsca obserwacji co ma bezpośredni wpływ na to co i gdzie na niebie będzie widoczne w chwili obserwacji a jest niezbędne do wyliczenia bieżących danych azymut/wysokość obserwowanego obiektu.

Reasumując, podczas startu systemu, poza wspomnianymi wcześniej obliczeniami dla współrzędnych Ra i De dla Słońca i planet należy wyliczyć również kroki sterowania dla każdej z osi a co za tym idzie także częstotliwość f_ra w osi Ra dla trybu śledzenia. Jeśli będzie działać guide to warto równie obliczyć częstotliwości sterowania dla guide a także maksymalne częstotliwości sterowania dla skoków goto.

Algorytm działania sterownika powinien więc być podobny do takiego:

1. Uruchom system i wylicz na moment startu współrzędne Ra i De dla Słońca i planet
1b. Wylicz kroki sterowania, oraz częstotliwości sterowania dla osi Ra i De, częstotliwości sterowania dla guide i maksymalne prędkości ruchu w trybie goto
2. Ustaw w przestrzeni montaż paralaktyczny (np. metodą na Gwiazdę Polarną (GP) i/lub dryft)
3. Wyszukaj na niebie znany (jasny) obiekt do obserwacji -> S1 i ustaw na niego montaż
4. Zapamiętaj dane Ra1 i De1 obiektu S1
5. Obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S1
6. Wyszukaj w bazie dane Ra2 i De2 dla obiektu S2
7. Oblicz różnicę deltaRa = Ra2 - Ra1 oraz deltaDe = De2 - De1, wylicz ilość kroków do wykonania dzieląc deltaRa i deltaDe przez wyliczone wcześniej wielkości kroków dla obu osi
8. Obróć montaż wokół osi Ra o wyliczoną ilość kroków w osi Ra i pochyl teleskop o wyliczoną wartość kroków w osi De, dodaj/odejmij do deltaRa 15.041 arcsec na każdą sekundę ruchu w osi Ra co oznacza, że trzeba dodać lub odjąć 15.04068646 / krok_ra (lub po prostu f_ra)
9. Po zakończeniu skoku goto ponownie obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S2
9a. Wylicz sideral time i dla jego nowej wartości wylicz azymut(Az) i wysokość(Alt) śledzonego obiektu
9b. Pokaz wyliczone wartości Az/Alt na wyświetlaczu
9c. Odczekaj np. 1 sek. i wróć do punktu 9a.
10. Skocz do p.6 jeśli chcesz wykonać kolejny skok goto

Image
A tak można pokazać schematycznie opisane elementy sterowania i ich oddziaływanie wzajemne.
cdn...

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 16 Mar 2024, 20:53

Biorąc pod uwagę automatyzm obliczania aktualnego położenia obiektu we współrzędnych Az/Alt oraz uzupełniając algorytm sterowania o guide należałoby doprecyzować w którym miejscu należy umieścić reakcje na sygnały korekcyjne:

9. Po zakończeniu skoku goto ponownie obracaj montażem w osi Ra tak aby prędkość obrotu wynosiła 15,041068646 arcsec/sek co zapewni śledzenie obiektu S2
9a. Wylicz sideral time (używając timer-a) i dla jego nowej wartości wylicz azymut(Az) i wysokość(Alt) śledzonego obiektu
9b. Pokaz wyliczone wartości Az/Alt na wyświetlaczu jeśli ostatnio wyliczone wartości są inne niż poprzednio
9c. Sprawdź czy pojawiło się żądanie korekty guide a jeśli tak to wykonaj korektę dla danej osi
9d. Wróć do punktu 9a.

====================================***=========================================

Napędy DIY mają często nietypowe lub niekonwencjonalne przekładnie napędowe co może stanowić trudność w określeniu rzeczywistej wartości takiej przekładni - może to dotyczyć choćby przekładni ciernych. Dlatego teraz zaproponuję kilka sposobów pozwalających na weryfikację działania sterownika. Oczywiście, trywialną metodą jest sprawdzenia jak działa montaż i sterowania na niebie. Wymaga to jednak ustawienia montażu, obserwacji nocnej i czasu. Jeśli napęd nie jest do końca gotowy to należy zastosować inne metody.

Podstawową metodą weryfikacji ruchu w osi Ra jest pomiar częstotliwości sterowania silnika krokowego w tej osi. Jak wyliczyć taką częstotliwość podałem wcześniej. Niestety, ta metoda wymaga posiadania częstościomierza lub oscyloskopu.
Najprostszą metodą badanie ruchu w osi Ra jest obserwacja tej osi w dłuższym okresie czasu. Należy uruchomić sterownik w trybie śledzenia obiektu, zaznaczyć położenie początkowe osi Ra odczekać pewien czas i odczytać ponownie położenie tej osi. Pamiętając, że niebo obraca się w przybliżeniu 15 stopni w ciągu godziny można po jedno lub dwugodzinnej obserwacji niezwłocznie stwierdzić, że ruch w tej osi jest zbliżony do założonego lub istotnie odbiega od założeń. Oczywiście oś Ra powinna posiadać skalę powiązaną z osią, wyskalowaną w stopniach (0-360) lub w godzinach (0-24). W pierwszym przypadku, po godzinie obserwacji obrót powinien wynosić ok. 15 stopni a w drugim przypadku jedną godzinę.
Dokładniejszą metodą pomiaru można zbudować z użyciem lasera zamocowanego na osi Ra i obserwując ślad lasera na odległej ścianie.

Image
Jeśli odległość r jest odpowiednio duża (co najmniej kilka lub nawet lepiej kilkanaście metrów) a l proporcjonalnie niewielkie to kąt o jaki przesunie się w czasie ślad lasera jest równy dl/r * 360/2/pi * 3600 (pi to ok. 3.141.., 360/2/pi to przeliczenie z miary łukowej na stopniową a 3600 to przeliczenie ze stopni na arcsek). Mierząc czas dt [sek] w jakim ślad lasera zmieni położenie o dl można powiedzieć, że dl/r * 360/2/pi * 3600 powinno być równe 15.04107 * dt [arcsek].

Testowanie obu osi można wykonywać także z użyciem generatora pozwalającego na generowanie odpowiedniej ilości impulsów. Pozwoli to na wykonanie ruchu o zadany kąt. W tym celu należy wyliczyć podstawowy krok sterowania dla każdej z osi zakładając znajomość silnika (ilość kroków), sterownika silnika (użyty mikrokrok) oraz przekładni mechanicznej. Chcąc wykonać zadaną zmianę należy wyliczyć ilość kroków dzieląc zadany kąt ruchu przez krok jednostkowy w tej osi. Najłatwiej jest ocenić ruch dla dobrze określonych kątów np 30,45,60,90 stopni. Przykładowo, obrót o 45 stopni wymaga wyliczenia ilości kroków jako 45*60*60/krok_sterowania przy czym krok sterowania trzeba wyrazić w arcsec/krok.
Dla podanego we wcześniejszych postach przykładu, gdzie wyliczony krok ma wartość 0.324arcsec/krok, wyliczenie da 45*60*60/0.324 = 500000 kroków.
Nie zawsze jest do dyspozycji generator pozwalający na generowanie zadanej liczby impulsów, dlatego napiszę moduł testujący, do którego będzie można wejść po starcie urządzenia, po czym możliwe będzie, na podstawie danych z pliku konfiguracyjnego, wykonanie odpowiedniego ruchu o zadaną ilość kroków lub zadany kąt.
Jeśli wykonany obrót jest inny niż założony to można łatwo przeliczyć korektę ustawienia przekładni i dokładność takiej korekty jest tym większa im większy był założony ruch. Załóżmy, że bieżąca przekładnia ma wartość 4000000 a po wykonaniu ruchu o 180 stopni rzeczywisty obrót wyniósł 184.5 stopni. Wtedy założona przekładnia jest za duża w proporcji 184.5/180 = 1.025 a skorygowana wartość przekładni powinna wynosić 4000000/1.025 = 3902439. Podobnie, jeśli napęd nie osiągnął 180 stopni a powiedzmy 179 stopni to współczynnik korekty wynosi 179/180 = 0.99(4) a przełożenie po korekcie 4000000/0.99(4) = 4022346. Po korekcie praca napędu powinna pokazywać mniejsze odchylenia od założonych ale można po raz kolejny skorygować przełożenia - tym razem o mniejsze wartości i zwykle 2 lub 3 takie korekty powinny być wystarczające.

====================================***=========================================
Image
Do testowania można użyć gotowego sterownika. Na zdjęciu pokazałem moją przekładnię testową z kołem o średnicy ok. 250mm (ok. 600 zębów) napędzanym śrubą M8 i silnikiem krokowym 200kroków/obrót. Na koło nakleiłem skalę w stopniach (0-360) i godzinach (0-24). Poniżej jest link do filmu, który pokazuje obrót koła w osi De z gwiazdy Rigel o współrzędnych Ra = 5.242h oraz De = -8.202 stopnia do gwiazdy Polaris o Ra = 2.53h oraz De = 89.264 stopni. Testowanie na danych Ra i De jest o tyle wygodne i zasadne bo po pierwsze zgodne z algorytmem sterowania a dodatkowo współrzędne te nie zmieniają się w czasie w przeciwieństwie do współrzędnych azymutalnych (Az, Alt).
Ponieważ koło ma zakres 0-360 stopni to współrzędna De = -8.202 stopnia dla Rigel ustawiłem na skali jako 351.8 (360 -8.2) a po wykonaniu skoku goto widać, że koło zatrzymało się w pobliżu wartości 89.2 stopnia

test skoku goto w osi De Rigel - Polaris
Przy okazji widać prędkość działania tego napędu, który ma ustawioną prędkość maksymalną na x800 a wnikliwe ucho zauważy również, że napęd startuje i rozpędza się a w końcowej fazie zwalnia stopniowo prędkość działania. Ten element również powinien być składnikiem algorytmu sterownika montażu ale dla większej jasności wywodu nie wspominałem o tym dotychczas.
Nie wspominałem również, że może okazać się korzystne odłączenie sterownika silnika w osi De po wykonaniu skoku goto i podczas śledzenia bo o ile sam sterownik z wyświetlaczem potrzebuje ok. 80mA do zasilania to każdy z silników pobiera, nawet w bezruchu, kilkaset mA. Silnik osi De zostaje odłączony od zasilania po upływie ok. 15 sekund w stanie jałowym oszczędzając prąd zasilania niemalże o połowę.

====================================***=========================================
Zamierzam zastosować pokazany napęd jak i sterownik z tego opisu w opisywanym już na tym forum napędzie podkowiastym.

Image
http://lx-net.pl/starch/mont02.jpg
http://lx-net.pl/starch/mont03.jpg
Tym razem zrobiłem dokładniejszy model montażu z kartonu (skala 1:5) i polecam tą metodę każdemu zajmującemu się projektowaniem złożonych struktur. Na modelu odkryłem istotną kolizję części ruchomych z nieruchomymi co pozwoliło na usunięcie kolizji na rysunkach wykonawczych. Z doświadczenia wiem, że nie da się do końca uniknąć mniejszych błędów w pierwszym podejściu choć mam nadzieję, że ich tez nie będzie ;-)

Na razie czekam na wykonanie niezbędnych elementów drewnianych i metalowych. Pokazany montaż działa w systemie paralaktycznym i dopasowany będzie do teleskopów o średnicy lustra ok. 200mm i długości od 800 do 1000mm więc pewnie kolejne informacje nie pojawią się szybko. Na razie zakończyłem opis sterownika montażu ale chętnie odpowiem na pytania dotyczące algorytmu, zastosowanych obliczeń lub inne związane z tematem.
Muszę również zacząć poszukiwanie tuby OTA ok. 200mm, najchętniej o ogniskowej 800mm (ewentualnie 1000mm) do pokazanego montażu i jeśli ktoś ma taką tubę do wypożyczenia/sprzedania to proszę o kontakt.
Chętnie nawiążę też kontakt z kolegami, którzy chcieliby i mieli techniczne możliwości do przetestowania sterownika na swoim montażu (paralaktyczny z silnikami krokowymi i przekładnią mechaniczną co najmniej 200).
cdn....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 18 Mar 2024, 15:45

Rozbudowę systemu o moduł testowy udało się zrobić szybciej niż planowałem :-)
Na szczęście udało się zastosować gotowe już porcje programu głównego, który zawiera już te elementy. Po odrzuceniu niepotrzebnych składników moduł testowania udało się przygotować jako oddzielny program wywoływany podczas uruchamiania sterownika.

Image
Na zdjęciu widać interface modułu, który jest najprostszy z możliwych. Górna linia dotyczy osi Ra, dolna osi De, dla każdej z osi można zmieniać jednostki sterowania silnikiem z godzin (Hr) na kroki (St) dla osi Ra oraz ze stopni (Dg) na kroki (St) dla osi De. Znaki "<" i ">" to kierunki ruchu - umownie ">" to ruch zgodnie z ruchem nieba dla Ra i w kierunku GP dla De a "<" to ruch w przeciwną stronę dla każdej z osi. Zmiana wartości przesunięcia działa tak jak pokazana wcześniej dla ustawień w procedurze Setup.

Wejście do modułu testowego i ustawienie parametrów testu
Test ruchu w osi Ra o 1h (15 stopni) oraz 20 stopni dla osi De

Na filmach pokazałem działanie modułu testowego. Pierwszy film pokazuje, że wejście do grupy poleceń opcjonalnych odbywa się za pomocą środkowego klawisza podczas startu urządzenia. Do dyspozycji jest właśnie moduł testowania Tst (nowy), moduł konfiguracji Set (istniejący), moduł edytora Edt (do napisania) oraz moduł wgrania wartości domyślnych Dft (istniejący).
Na drugim filmie pokazałem działanie silników dla obu osi z tym, że ruch wyskalowanego koła dotyczy osi Ra gdzie zadałem 1h przesunięcie (czyli 15 stopni). Dla silnika osi De zadałem 20 stopni i wprawdzie trudno ocenić czy ten ruch jest poprawny ale widać, że silnik ten zatrzymuje się nieco później niż silnik w osi Ra.
cdn...

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 23 Mar 2024, 20:55

Czekając na elementy montażu, które, mam nadzieję, wkrótce będą, zająłem się testowaniem algorytmu obliczania pozycji obiektów przez sterownik i korzystając z gotowych modułów programu napisałem prosty symulator położenia obiektów z ich wizualizacją. Program jest przeznaczony przede wszystkim dla obiektów szybko zmiennych (Słońce, planety) ale początkowo chodziło mi o zasymulowanie analemy Słońca w moim miejscu obserwacji.

Image

Więcej na ten temat można znaleźć w wątku uzyskane wyniki symulacji , w którym rozszerzyłem symulację o położenie planet wewnętrznych w relacji do Słońca.

Ale przede wszystkim zająłem się programowaniem brakujących modułów: szybkiego sterowania manualnego oraz edytora obiektów nie znajdujących się w istniejących już bazach.
Na filmie pokazuję jak działa tryb manualny . Do uruchomienia tego trybu użyłem nieczynnego do tej pory szóstego klawisza (Esc). W tym trybie następuje zatrzymanie automatycznego ruchu w osi Ra, pojawia się napis M1 i można klawiszami kierunku uruchamiać ruch dla danej osi i kierunku. Klawisz środkowy służy do zmiany prędkości tego ruchu sygnalizując zmianę napisem M2, M3. Zmiana jest cykliczna a odpowiadające komunikatom M1, M2 i M3 prędkości to odpowiednio 10x, 50x i 200x prędkości nominalnej (15.041arcsec/sek). Na razie dobrane mnożniki są arbitralne i będą wymagać sprawdzenia i ewentualnej korekty w przyszłości. Realizowany montaż podkowiasty ma napędy dość daleko oddalone od siebie co utrudnia odsprzęglenie napędów w celu szybkiego przestawienia montażu dlatego szybkie tryby manualne mogą ułatwić przestawienie bez konieczności odsprzęglania.
Powrót do śledzenia następuje po ponownym użyciu klawisza Esc.

Zbudowałem również moduł edytora własnej bazy danych obiektów nieba, która ma u mnie nazwę OWN. Ponieważ to program dodatkowy to wejście do niego, podobnie jak do procedury Setup i programu testującego odbywa się na początku działania sterownika i wymaga restartu urządzenia po zakończeniu edycji. Pierwszy film pokazuje wejście do edytora oraz podstawowe działania. Możliwe jest usunięcie istniejących już w bazie obiektów oraz dodanie nowych. Na razie mam w tej bazie kilka przypadkowych rekordów dla sprawdzenia pracy modułu. Film pokazuje dodanie obiektu o nazwie "Jen" (nic mądrzejszego nie przyszło mi do głowy przy nagraniu). Każdy nowy obiekt ma przypisane wartości domyślne Ra (12h) i De (60 stopni), które należy oczywiście zmienić na właściwe.
Na drugim filmie pokazałem, że nowy obiekt o nazwie "Jen" pojawił się w bazie OWN i jest możliwy do wyboru i śledzenia lub skoku goto.

W ten sposób, w zasadzie zrealizowałem założenia merytoryczne dotyczące sterownika. Pozostało teraz testować zachowanie sterownika, poprawić drobniejsze niedogodności i sprawdzić jak sterownik zachowa się z realnym montażem.
cdn....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 29 Mar 2024, 12:38

Mam pierwsze elementy z warsztatu i zacząłem montaż napędu.

Image
Początkowo zeszlifowałem i pomalowałem wszystkie elementy drewniane. Okazało się, że nie zamówiłem kilku istotnych detali a jeden jest juz do korekty :( .

Image Image
Image
Zacząłem montaż od stóp ustawionych na wahliwych wspornikach wkręcanych do wsporników w podstawie teleskopu.

Image Image
Montaż jest obliczony dla szerokości geograficznej 51 stopni ale dzięki regulacji wysokości stóp możliwe jest ustawienie go z łatwością co najmniej w zakresie 47 - 55 stopni (ok. 8mm różnicy w wysokości części północnej i południowej montażu) a z dodatkowymi podkładkami również w szerszym zakresie.

Czekam ciągle na elementy z metalu (osie, jarzmo teleskopu) ale w końcu cdn.... :)

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 05 Kwi 2024, 12:30

Mam już prawie wszystkie elementy i powoli zaczynam montaż co wiąże się z koniecznością dopasowania elementów, wprowadzenia poprawek w dokumentacji ale powoli sprawy posuwają się do przodu.

Image
http://lx-net.pl/starch/os_ra002.jpg
http://lx-net.pl/starch/os_ra003.jpg
Oś Ra składa się w zasadzie z trzech osi: centralnej i dwóch osi bocznych podpierających główne koło (podkowę).

Image
http://lx-net.pl/starch/os_ra02.jpg
http://lx-net.pl/starch/os_ra03.jpg
http://lx-net.pl/starch/os_ra04.jpg[url][/url]
Oś główna Ra wykonana jest ze stali i łożyskowana jest za pomocą łożysk osadzonych w wyfrezowaniach wspornika. Wspornik jest w dalszej kolejności skręcany a następnie osadzony w podstawie. W podobny sposób wykonane jest łożyskowanie wszystkich osi, których położenie ustalone jest przez wyfrezowania a sklejce a usztywnienie przez skręcenie lustrzanych połówek wspornika lub za pomocą dwustronnych nasadek.

Image
http://lx-net.pl/starch/osie_de02.jpg
http://lx-net.pl/starch/osie_de01.jpg
Osie De mocowane są w głównym kole (podkowie) napędu na podobnej zasadzie. Osie po uzupełnienia w łożyska wciskane są w wycięcia w kole a dodatkowo usztywnione w nim za pomocą dwóch nasadek z obu stron koła. Na razie nie montowałem jeszcze osi ale sprawdziłem, że nie ma tu chyba błędów w projekcie.

Image
http://lx-net.pl/starch/wsp_kola02.jpg
http://lx-net.pl/starch/wsp_kola03.jpg
Równolegle składam wspornik głównego koła (podkowy). Elementy wspornika wsuwane są jeden w drugi a następnie zostaną przykręcone do koła. W środkowej części widać miejsce gdzie wstawiana będzie główna oś Ra.

Image
Ostatecznie, wszystkie osie Ra we wspornikach zostają osadzone w podstawie. cdn.....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 10 Kwi 2024, 13:14

Złożyłem wstępnie napęd osi Ra i nie mogłem się powstrzymać aby sprawdzić jak działa.

Image
Na razie moduł napędowy jest jeszcze na "sznurkach" - przynajmniej jeśli chodzi o naciąg sprężyny dociskającej napęd :D
W linkach można obejrzeć napęd w działaniu. To ruch w osi Ra ze Słońca do Aldebarana lub odwrotnie - w azymucie to ok. 66 stopni ale realny ruch Ra to ok. 3.3h (około 50 stopni).

Aldebaran - Słońce 01
Aldebaran - Słońce 02 zbliżenie na napęd
Aldebaran - Słońce 03 - widok z boku

cdn....

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 15 Kwi 2024, 12:31

Czekając na ostatnie elementy (jarzmo teleskopu i koło napędowe De) postanowiłem zastosować koło drewniane bez gwintu oraz jarzmo z grubego kartonu.

Image Image
Pozwala to na sprawdzenie czy zamówione elementy będą pasować do montażu oraz czy nastąpi jakaś oczywista kolizja podczas ruchu montażu

Dodatkowo przygotowałem kilka krótkich filmów pokazujących głównie ruch osi De - w tym wypadku ze Słońca na GP (Gwiazdę Polarną) i z powrotem. Drewniane koło nie na nacięcia gwintu więc działa jedynie wskutek tarcia gwintu śruby napędowej z powierzchnią boczną koła. Koło ma takie same wymiary jak koło rzeczywiste zrobione z poliwęglanu ale na jednym z filmów słychać jak śruba napędu trze o koło wywołując dodatkowe efekty dźwiękowe :)
Na razie wydaje się, że teoretyczne założenia są bardzo bliskie potrzebnym wymiarom i położeniom. Jarzmo będzie zrobione z blachy stalowej #2mm a na nim zamontuję obejmy teleskopu o średnicy ok. 200mm i wtedy dopiero okaże się czy wszystko pasuje do siebie.

ruch Słońce - GP 01
ruch Słońce - GP 02
ruch GP - Słońce 01

cdn....
xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 24 Kwi 2024, 19:45

Mam już jarzmo, pora na jego mocowania na montażu:

Image

Image Image
Na jarzmo założyłem także obejmy teleskopu - na razie puste :D

Image
W końcu nałożyłem na rolki wspierające De gumę z dętki rowerowej

Teraz kolej na teleskop, który już z pomocą jednego z kolegów na forum pozyskałem ale z powodu kilkudniowego wyjazdu zrobię to dopiero za kilka dni.

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

xooon | 17 Maj 2024, 14:31

Powoli zbliżam się do skompletowania wszystkich elementów montażu a nawet, z pomocą jednego z kolegów z forum, stałem się właścicielem teleskopu SkyWatcher 200/1000.
Ostatnie elementy jakie dostałem z warsztatu to przeciwwagi teleskopu.

Image
Do tej pory używałem jako przeciwwagi kilku woreczków ze śrubami umieszczonymi pod lustrem i zamocowanych za pomocą taśmy klejącej do obudowy teleskopu.

Image
Główna przeciwwaga wykonana jest z blachy stalowej o grubości 10mm i ma ciężar ok. 2.3kg czyli właśnie tyle ile trzeba do zrównoważenia tuby na montażu. Druga przeciwwaga, z blachy o grubości 5mm ma o połowę mniejszy ciężar i ma ewentualnie służyć do zrównoważenia np. aparatu, kamery guide itp. Przeciwwagi zostały wycięte techniką cnc za pomocą lasera i na razie noszą ślady wypalania co da się łatwo usunąć za pomocą papieru ściernego.

Image
Przeciwwaga wpasowana jest otwór pierścienia tubusa teleskopu i ma wycięcia na śruby regulujące położenie lustra a mocowana jest do tubusa za pomocą trzech wkrętów M4.

Image
Kolejna modyfikacja to zmiana koloru wyświetlacza na czerwony za pomocą folii używanej głównie do karoserii samochodowych.
Przy okazji okazało się, że pomocne w nocy jest lekkie podświetlenie klawiszy pilota. Na razie dołożyłem dwie czerwony diody led na płytkę pilota ale docelowo trzeba będzie wprowadzić 4 czerwone diody wprost na płytkę drukowaną.

Ostatnim z elementów jaki pojawił się przy okazji analizy ruchu teleskopu na montażu to kwestia uproszczenia ruchu przy przejściu ze strony południowej na północną.

Image Image
Napiszę o tym nieco więcej jak zrobię stosowne rysunki.

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

lulu | 17 Maj 2024, 16:02

Imponujące. Jak planujesz malować to drewno?
pozdrowienia Łukasz
Mapa Księżyca: https://astrostrona.pl/narzedzia-i-pomo ... -ksiezyca/
Awatar użytkownika
Kierownik techniczny
 
Posty: 3685
Rejestracja: 07 Wrz 2019, 23:18
Miejscowość: spod Krakowa

xooon | 18 Maj 2024, 10:56

Elementy drewniane są już pomalowane :D . Używam do tego bezbarwnego, matowego lakieru akrylowego. Oczywiście wcześniej elementy są szlifowane papierem ściernym a po drugim malowaniu powierzchnie są odporne na wodę i proste zanieczyszczenia oraz przyjemne w dotyku.

=========================================================================================================

Zakres ruchu teleskopu na montażu pokażę na zdjęciach i rysunkach.

Image Image
Montaż jest ustawiony na GP - na zdjęciach jest to kierunek w prawo. Lewe zdjęcie pokazuje teleskop zwrócony na południe a na zdjęciu prawym teleskop jest zwrócony na północ. Jak widać, nie ma żadnych ograniczeń jeśli chodzi o ruch w osi De, da się zobaczyć wszystko co tylko wystaje zza horyzontu :)

Image
Rysunki pokazują zakres ruchu montażu w osi Ra. Na rysunku A montaż jest skierowany dokładnie na południe i w tym stanie widać obiekty górujące w danej lokalizacji a więc mające Ra równe sideral time. Na rysunkach B i C pokazałem możliwy, dostępny zakres ruchu w tej osi jeśli teleskop jest skierowany na południe. Ze względu na osie podtrzymujące podkowę zakres ruchu wynosi ok. 105 stopnie na wschód i na zachód od kierunku południowego (ok. plus/minus 7h w jednostkach Ra czyli w sumie ok. 210 stopni).
Kierunek południowy jest zwykle najbardziej interesujący jeśli chodzi o obserwacje ale w razie potrzeby można obrócić teleskop w kierunku północnym i ponownie zakres ruchu wynosi 210 stopni w zakresie pokazanym na rysunkach D,E i F. W sumie montaż zapewnia dostęp w zakresie 420 stopni z czego 60 stopni (420 - 360 = 2 * 30) to miejsca gdzie obiekty są widziane zarówno w północnym jak i w południowym kierunku obserwacji.

Napęd podkowiasty pozwala na uproszczenie (skrócenie) ruchu goto pomiędzy niektórymi obiektami. Dobrze jest to widoczne na przykładzie np. pary Kochab i Polaris.

Image
Obie gwiazdy leżą w pobliżu zenitu i ich odległość "po najkrótszej drodze" nie wydaje się zbyt wielka. Ale podstawowy algorytm liczy różnice współrzędnych w osiach Ra i De i w tym przypadku wynosi to delta_Ra = 3h - 14h50' = -11h50' (ok. 177.5 stopnia) oraz delta_De = 89 22' - 74 03' = 15 19' stopni. Teoretycznie więc łączny ruch powinien wynieść ok. 177.5 +15.3 = 192.8 stopnia i jest pokazany w kolorze czerwonym.
Tymczasem zakładając ruch teleskopu najpierw względem bieguna wystarczy ruch ok. (90 - De_Kochab = 15 57') oraz (90 - Ra_Polaris = 38') czyli w sumie ok. 16 35' oraz lekka korekta w osi Ra równą 12h - 11h 50' = 10'. w sumie więc taki ruch wymaga jedynie 16 35' + 10' = 16 45' co jest wartością ponad 11 razy mniejszą i jest pokazany w kolorze zielonym.

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

lulu | 18 Maj 2024, 12:58

Super, nareszcie ktoś się nie wstydzi naturalnego koloru sklejki. Uważam, że taka naturalna w kolorze sklejka wygląda szpanersko, podkreślając wyjątkowy, a przede techniczny charakter konstrukcji - zgodnie z jej prawdziwą naturą.
pozdrowienia Łukasz
Mapa Księżyca: https://astrostrona.pl/narzedzia-i-pomo ... -ksiezyca/
Awatar użytkownika
Kierownik techniczny
 
Posty: 3685
Rejestracja: 07 Wrz 2019, 23:18
Miejscowość: spod Krakowa

xooon | 18 Lip 2024, 13:39

Zrobiłem w ostatnim czasie kilka zmian w konstrukcji napędu.
Po pierwsze poprawiłem w kilku miejscach algorytm sterowania, nie są to zmiany fundamentalne wiec tylko wspominam dla porządku. Najważniejsza zmiana to uruchomienie funkcji 'escape' pozwalającej na natychmiastowe przerwanie operacji podczas skoku goto. Funkcja wykorzystuje dodatkowy klawisz (w kolorze żółtym na zdjęciu), który podczas śledzenia pozwala na przejście w tryb korekty manualnej.

Image
Pilot napędu został ostatecznie pomalowany w kolorze niebieskim i wydaje się być konstrukcją skończoną.

Najbardziej istotną zmianą jest nowe jarzmo utrzymujące teleskop na montażu. Okazało się, że dotychczasowe jarzmo, wykonane z blachy 2mm, jest zbyt 'wiotkie' dla tuby teleskopu o masie ok. 8kg. Dodatkowo, przeciwwaga o masie ok. 5kg powoduje, że większość masy teleskopu skoncentrowana jest praktycznie w jednym miejscu, w dolnej części tuby gdzie umocowane jest także lustro.

Image
Zdjęcie pokazuje porównanie rozmiarów tuby (długość 92cm), starego jarzma (długość 30cm) oraz nowego jarzma (długość 47cm). Nowe jarzmo wykonane zostało z blachy o grubości 3mm (stare ma grubość blachy 2mm). Stare jarzmo podtrzymywało tubę w jej środkowej części co powodowało, że masa lustra oraz przeciwwagi mocowana była na dość długim ramieniu (tuby) a w efekcie, podczas silnych przechyłów bocznych tuby następowało jej ugięcie i w efekcie zmieniało się położenie lustra (z przeciwwagą) w stosunku do osi teleskopu powodując zarówno zmianę w kolimacji ale także, większe odległości obiektu od centrum pola widzenia po skoku goto.

Image
Dodatkowo, obejmy teleskopu zostały związane z jarzmem za pomocą dwóch dodatkowych punktów na końcach jarzma za pomocą, widocznych na zdjęciu, wkrętów M4. Wymagało to modyfikacji obejm teleskopu - zostały nawiercone i nagwintowane w odpowiednich miejscach ale również musiałem zrobić dodatkowe wycięcia w drewnianej 'podkowie' montażu na śruby obejm.

Image Image
W ten sposób teleskop został silnie i jednoznacznie związany z jarzmem a solidne jarzmo zrobione z blachy o grubości 3mm dodatkowo usztywniło całość konstrukcji. Na zdjęciach widać bowiem, że teleskop może znajdować się w różnych położeniach a w skrajnych przypadkach, po skoku z nieba południowego na północne, wisi nawet 'do góry nogami'. Większe jarzmo okazało się również cięższe ale ponieważ jego masa jest skupiona z jednej strony tuby to w naturalny sposób bedzie równowazyć ewentualne zwiększenie masy np. po założeniu sprzętu do astrofotografii.

Image
Z nowym jarzmem obejmuje ono prawie połowę teleskopu i w zasadzie całą jego masę ale stare jarzmo może być wykorzystane do obciążenia sprzetem o większym skupieniu oraz mniejszej masie np. do fotografii szerokokątowej lub z wykorzystaniem mniejszych lunet. W takim wypadku można zastosować też większe prędkości skoków.

Na koniec kilka filmów z działania montażu w trybie goto z różnymi prędkościami:
skok Aldebaran -> Słońce z prędkością 300
skok Słońce -> Aldebaran z prędkością 600
skok Aldebaran -> Kochab z prędkością 600
skok Kochab -> Aldebaran z prędkością 300

Przez prędkość należy rozumieć tu wielokrotność prędkości sideralnej (ok. 15.041 arcsec/sek) co oznacza, że ruch odbywa się maksymalna prędkością np. 300 x 15.041arcsec/sek czyli ok. 1.25 stopnia/ sek. Dla teleskopu o tej masie widać już lekkie rezonanse podczas ruchu i dlatego komfortową prędkością byłaby chyba prędkość 200 ale testowałem też prędkość 1200 ;-) .

Obiekty w chwili testu miały przybliżone położenie: Słońce: 125/49 stopni (azymut/wysokość), Aldebaran: 204/53, Kochab: 13/38

Na szczególną uwagę zasługuje skok do i z Kochab-a. Kochab znajdował się bowiem na północnej stronie nieba w stosunku do położonych na południe Aldebaran-a i Słońca. Różnica kąta azymutalnego dla Kochaba-a i Aldebaran-a to ok. 204-13 = 191 stopni z zachodu na wschód lub (360-204) +13 = 69 stopni ze wschodu na zachód. W wysokości różnica ta wynosi ok. 53 - 38 = 15 stopni. Napęd nie jest w stanie wykonać pełnego obrotu wokół osi Ra ale ma większą swobodę w zakresie ruchu w osi De dlatego zastosowana tu została, wcześniej opisana, procedura przejścia z półkuli południowej na północną i odwrotnie. Przejście S->N w osi De wymaga 180 - 53 - 13 = 114 stopni ruchu a przejście w osi Ra zaledwie ok. (204 + 180) mod 360 - 13 = 11 stopni.

cdn...
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

lulu | 18 Lip 2024, 18:26

Te otwory w blasze to dla oszczędności wagi?
pozdrowienia Łukasz
Mapa Księżyca: https://astrostrona.pl/narzedzia-i-pomo ... -ksiezyca/
Awatar użytkownika
Kierownik techniczny
 
Posty: 3685
Rejestracja: 07 Wrz 2019, 23:18
Miejscowość: spod Krakowa

Krzysztof z Bagien | 19 Lip 2024, 01:58

Umknął mi ten wątek jakoś wcześniej - no widzę, że kawał roboty wykonałeś, gratulacje.
Przyznam szczerze, że wszystkiego dokładnie nie przeczytałem, tylko przejrzałem na szybko, ale późno już a ja jestem zmęczony - więc przepraszam, jeśli coś mi umknęło - pytanie, czy przewidujesz (albo czy sterownik ogarnia):
- możliwość sterowania całkowicie z zewnątrz (z kompa za pośrednictwem ASCOMa itp.)?
- pulse guide (bo wiele nowych kamer po prostu nie ma złącza ST4)?
- to co w ASCOMie nazywa się "variabla tracking rates", czyli ustawienie dowolnej prędkości dla obu osi niezależnie (pytam w kontekście np. śledzenia satelitów)?
Jestem odpadem atomowym.
Awatar użytkownika
 
Posty: 354
Rejestracja: 17 Wrz 2017, 05:31
Miejscowość: Łódź

xooon | 27 Sie 2024, 11:45

Witam!

Przepraszam za opóźnienie z odpowiedziami :-(

Otwory w jarzmie teleskopu faktycznie mają za zadanie zmniejszenie wagi jarzma.
Dobrane zostały tak aby zachować potrzebną sztywność jarzma i jednocześnie zmniejszyć wagę tego elementu.
Teleskop to ok. 8kg a przeciwwaga i jarzmo to także ok. 5 + 3 = 8kg. Dodatkowo, do masy poruszanej napędem należy wliczyć okular i ewentualnie sprzęt do astrofotografii więc redukcja niepotrzebnej masy jest celowa.

Na razie sterownik nie ma styku do oprogramowania ASCOM, nie pozwala na pulse guide ani na variable tracking. Wszystkie te zagadnienia to spore, niezależne zadania programistyczne ale droga do nich nie jest zamknięta bo sterownik ma port szeregowy USB, a sterowanie w każdej osi może być realizowane niezależnie.
Wydaje się, że najłatwiejsze byłoby wykonanie pulse guide ale na razie nie mam tego w planie i zdaje się, że można wykonać odpowiedni konwerter USB/ST4.

Na razie chciałbym zainteresować kolegów bardziej konstrukcją samego montażu. Gdyby się znalazły 2, 3 chętne osoby do złożenia montażu to chętnie pomogę w takim zadaniu po kosztach własnych.
Ze swoje strony zapewniam wykonanie pełnej elektroniki również po kosztach produkcyjnych. Nie mam na razie pełnych wyliczeń ale o sterowniku pisałem na początku wątku, koszt jarzma i przeciwwagi to ok. 500PLN, elementy drewniane teraz pewnie ok. tysiąca a dodatkowe kilkaset PLN należy przeznaczyć na elementy napędu mechaniki napędu (osie, silniki). Podaję orientacyjny poziom cen dla potencjalnie zainteresowanych kolegów ale jakby się zebrało kilka takich osób to zrobiłbym dokładniejszą wycenę.
Opisywany napęd ma charakter raczej stacjonarny choć podzielony na 2 (podstawa, podkowa z jarzmem) lub lepiej na 3 części (jarzmo, podstawa, podkowa) może być dość szybko (kilka, maksimum kilkanaście minut) zdemontowany i zmontowany ponownie ale do przewiezienia wymaga co najmniej tylnego siedzenia w samochodzie.
Przy okazji, szukam kontaktu z warsztatem (głównie tokarz), który mógłby wykonać właśnie niezbędne elementy napędu.

Rozważam również możliwość nieodpłatnego "wypożyczenia" napędu osobie z doświadczeniem i sprzętem do astrofotografii w celu przetestowania możliwości napędu w tym zakresie. Proszę o kontakt gdyby się taki chętny znalazł, dowiozę sprzęt na miejsce jeśli nie będzie to zbyt daleko od Wrocławia.

xooon
 
Posty: 62
Rejestracja: 18 Maj 2017, 15:04

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 1 gość