Skocz do zawartości

MateuszW

Biznes
  • Postów

    9 943
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    41

Odpowiedzi opublikowane przez MateuszW

  1. Wszystko jest dobrze. Wszystkie gwiazdki zataczają taki sam okrąg, ale również rysunki w lunetce (krzyż na środku) zataczają taki sam okrąg. Dzięki temu gwiazdy nie ruszają się w stosunku do krzyża na środku, a o to właśnie chodzi. W HEQ5 nie da się tak zjustować lunetki, żeby gwiazdy nie zataczały okręgów. Justując lunetkę ruch gwiazd się nie zmienia, a za to środek rysunków zaczyna zataczać okrąg. Poprawnie zjustowana lunetka to taka, że gwiazdy i środek rysunków (krzyż) zataczają taki sam okrąg.

  2. Ja w ostatnim plebiscycie zagłosowałem dość późno, teraz pewnie też tak będzie, a na forum jestem prawie codziennie. To dlatego, że nie mogę się przezwyciężyć i zmusić do 15 min przeglądania, bo cały czas nie mam na nic czasu. Ale na pewno zagłosuję :) Myślę, że to naturalne, że wiele osób nie głosuje od razu. Na pewno dużo z tych 250 zagłosuje za niedługo.

  3. Niestety HEQ5 ma zauważalnie mimośrodowe ślimaki i ślimacznice wskutek czego nie da się dokładnie wykasować luzu. Radzę sprawdzić, jak montaż się zachowuje w każdej pozycji (360st), bo może się okazać że w jakiejś będzie problem. Ta było u mnie - doregulowałem ładnie luzy i w okolicach miejsca, gdzie regulowałem było OK, ale już na deklinacji M33 którą akurat fociłem okazało się, że dość mocno jest ściśnięte i w deklinacji miałem straszne piki. Ciężko opisać, jaki opór jest akceptowalny, ale powiem tylko, że niewielki :) tzn można swobodnie kręcić jednym palcem ślimak za dużą zębatkę. Możesz zrobić test z silnikiem na minimalnej prędkości, czy nie słychać przy ruszaniu i stawaniu takiego "tyk", bo to oznacza za duży docisk i skutkuje minimalnym szarpaniem przy ruszaniu, co widać na wykresie guide jaki piki 6-8" (w deklinacji, bo tam silnik staje i zmienia kierunek).

    Mi wygodnie było kręcić na próbę ślimakami za tej dużej zębatki, ty to robisz w jaki sposób? Silnik miałem tylko odsunięty, abym mógł go szybko zasprzęglić i przejeżdżałem silnikiem co jakieś 20st i sprawdzałem luzy w każdej z takich pozycji (ręcznie można sie zarobić na śmierć z tym kręceniem :) ).

     

    Zbyt wielkiego doświadczenia nie mam, ale jak zostawiłem lekko wyczuwalny opór, bez obciążenia było wszystko ok, lecz pod obciążeniem, silniki potrafiły "przeskakiwać" zwłaszcza przy lekkim niezrównoważeniu zestawu.

    To ciekawe, że już lekki opór im wystarczał, żeby gubiły kroki. Ja po wspomnianym felernym wyregulowaniu deklinacji też miałem wyraźny opór w niektórych pozycjach, ale silnik nie przeskakiwał. To może zależeć od tego, co definiujesz przez "lekko wyczuwalny opór" :)

    • Lubię 1
  4. Masz błąd położenia mniejszy od dokładności prowadzenia przez napęd?

    Tyle mi pokazał pinpoint dla 2 fotek M33 z różnych nocy. Może akurat mi się udało. Choć wydaje mi się, że EQMod może umożliwiać dokładniejsze celowanie od SynScana (protokół komunikacji na to pozwala). Robiłem ze 2 plateslowy i ze 4 razy użyłem "point telescope here" i trafił tak dokładnie. Widać było, że przy każdym pointowaniu miał coraz to inny błąd (mniejszy od minuty), aż w końcu trafił w prawie w punkt.

  5. Orientacja detektora w wyciągu nie wpływa na orientację spajków względem fotografowanego obiektu, a z tego co zrozumiałem, to o to było pytanie :) Czyli nieważne jak wsadzisz aparat, to zawsze po obróceniu fotki na kompie spajki się zgrają. Na orientację spajków wpływa tylko obrót tuby w obejmach (czyli w osi optycznej). Oczywiście ważne jest zachowanie podobnej orientacji aparatu między sesjami, ale ze względu na to, żeby nie stracić niepokrywających się miejsc, a nie ze względu na spajki. Ręcznie nie uda Ci się ustawić idealnie tak samo kadru między sesjami ale błąd będzie niewielki i nie stracisz na tym znacznie (myślę że jakieś 5-10st błędu będzie).

    • Lubię 2
  6. Jeszcze raz napisze zlikwiduj luzy, potem pomyślimy co dalej . Gdzieś na forum opisałem krok po kroku jak to robimy

     

     

    Idea jest następująca:

     

    1. przysuwamy ślimacznice do ślimaka (zmniejszamy luzy)

     

    2. odsuwamy (czyli zmniejszamy docisk) - np. wtedy gdy nie możemy ręcznie obrócić przekładni zębatej zamontowanej na silniku krokowym

    A czy te obrazki nie są dokładnie na odwrót? Jak regulowałem luzy, to wydaje mi się, że zachowanie było właśnie odwrotne, czyli dokręcanie śrubki od strony ślimaka powodowało zmniejszenie oporu (odsunięcie). Zresztą jak się zastanowić logicznie nad rysunkiem, to widać że jest na odwrót. Strzałki powinny być w te same strony (mała i duża), bo przecież dokręcenie lewej śruby powoduje przesuwanie tego żółtego elementu, czarnego dołu i ślimacznicy na prawo. Mogę się mylić, ale tak się wydaje logicznie.

  7. Mam jeszcze jedno pytanie. Czy warto bawić się w takie ładne stopniowe rozpędzanie silnika na dużych prędkościach? Coś jak ma miejsce w HEQ5. Będzie z tym trochę roboty, a nie wiem czy to cokolwiek wniesie przydatnego. Na pewno by to wyglądało ładnie. Raczej bym to wykorzystywał tylko przy ustawianiu pozycji z pamięci/komputera, bo ręcznie lepiej nie mieć takich "opóźnień".

  8. nie chodzi o jakiś limit indukcyjności tylko o proste zjawisko samoindukcji, która powoduje spowolnienie narastania prądu w uzwojeniu. Efekt jest taki, że prąd jeszcze nie zdąży wzrosnąć do pożądanej wartości, a już próbujesz wymusić jego zmianę i ustawienie nowej wartości prądu (kolejny krok). Całe starowanie mikrokrokowe bierze wtedy w łeb

    A, to o tym wiem, wcześniej Cię nie zrozumiałem :) Trochę ten efekt łagodzi funkcjonalność układów sterujących, które przy włączaniu uzwojenia na krótką chwilę dają prąd ciut wyższy od znamionowego, przez co uzwojenie się szybciej "ładuje".

     

    nie potrzebujesz pełnych tablic funkcji sinus i cosinus bo wystarczy jedna ćwiartka sinusa (reszta się powtarza w odwrotnej kolejności), a cosinus jest przesunięty w fazie o kąt elektryczny 90*

    Właśnie obnażyłeś moją głupotę i totalną ignorancję sterowania mikrokrokowego :bash:

    O, widzę, że sam to zauważyłeś :)

    upssss ... z tego co widzę nie sterujesz prądem w funkcji sinus tylko liniowo. Niestety to się nie przekłada na liniową zmianę kąta obrotu osi wiec cała dokładność fokusera idzie w maliny. Trzeba by to dokładnie policzyć bo może się okazać, że nie wystarczy do prawidłowego ustawienia ostrości

    No właśnie, a do tej pory myślałem, że to jest tak ładnie liniowo :) Muszę to czym prędzej poprawić.

     

    jeśli wystarcza do pełnej precyzji podział kroku przez 8 to sprawa robi się banalna bo możesz sterować pókrokowo z podziałem przez 4 ... o ile silnik ma rzeczywiście odpowiednio duży moment obrotowy. Jeśli jest słaby to pełny krok dwufazowy z podziałem przez 8 i sterowaniem jedną fazą (PWM w jednym uzwojeniu co podnosi moment obrotowy 1,41 razy)

    Chciałbym zachować większą ilość mikrokroków z uwagi na redukcję drgań. Trochę nie rozumiem tego drugiego sposobu sterowania, mógłbyś opisać szerzej?

     

    ten delay na końcu zabiera Ci aż 2,5ms na każdy krok. Wywołuj funkcję gdy w przerwaniu ustawisz flagę upływu 2,5 ms, a wszelkie problemy z wydajnością znikną. W tym czasie procesor może wykonać 17,5 tys. instrukcji czyli cały program w pamięci ;)

    Zabiera mi tyle w skrajnym przypadku, czyli przy minimalnej prędkości. Przy maksymalnej ten delay wynosi 0, a prędkość ogranicza reszta kodu. W zasadzie poza sterowaniem silnikiem procesor w tym samym czasie nie robi za dużo. Co kilka sekund sprawdza czujnik temperatury i ewentualnie odpowiada na RSa, że jest zajęty. Te czynności wywołuję właśnie w przerwaniu, czyli jakby w drugą stronę :).

     

    przy dużych prędkościach obrotowych zmieniasz ilość mikrokroków i przechodzisz na półkrok?

    Tak myślałem zrobić, żeby odciążyć procesor, ale jeszcze tego nie zrobiłem. Będzie trochę babraniny, żeby się nie pogubić w krokach, czego strasznie nie lubię (tej babraniny). A czy poza odciążeniem procesora wpływa to na inne rzeczy? Nie wydaje mi się, żeby to wpływało na np. moment obrotowy, bo przecież sumaryczny prąd w uzwojeniach wynosi od 100% do 200% cały czas, czyli to samo, co w półkroku.

  9. Pod względem sterowania ciekawy wydaje się np. układ L6470. Nie wiem, czy jest on Wam znany, ale piszę teraz pracę inżynierską i będę go wykorzystywał, także jakby co, to dam znać, jak się z nim pracuje.

    O, fajny układ. Jak coś to czekam na opis :) Sprzętowe mikrokroki są bardzo wygodne. Szkoda, że cena jest 10x większa od moich układów (nic dziwnego), ale jeszcze nie taka duża.

  10. Zastanawiam się, czy Ganimedes po prostu się nie "zglejował" ze swoim cieniem,

    na fotce poniżej moja propozycja wyjaśnienia "znikającego księżyca".

    Fotka w oryginale zawiera dość dyskusyjny moment wejścia księżyca w obszar rzucanego

    przez siebie cienia na "powierzchni" Jowisza. Za poprawną interpretacją przemawia też analiza animacji

    Adama. Ciekawa historia.

    To może być to, choć skąd wiemy, że cień akurat szedł po tarczy przy księżycu, a nie że nie było go zupełnie wtedy?

  11. trochę Cię tu fantazja poniosła ;)

    prędkość silnika jest ograniczona indukcyjnością uzwojeń, a tym samym maksymalną częstotliwością impulsów sterujących, która wynosi w najlepszym razie 1-2 kHz (ale należy się już liczyć ze znacznym spadkiem momentu obrotowego)

    Nie poniosła mnie, to jest prawda :) O ograniczeniach sprzętowych prędkości wiem dobrze i przy poprzednim sterowaniu 6 mikrokrokowym właśnie taki był limit - sprzętowe możliwości silnika. Ciekawe, jest to co piszesz o ograniczeniach indukcyjności, bo do tej pory myślałem, że jedyny problem to spadek momentu tak, że silnik już nie może się ruszyć. Czyli mam rozumieć, że zanim moment spadnie do prawie zera, to już skończy się ten limit indukcyjności? W indukcyjności i magnetyzmie niestety słabo się orientuję.

     

    Atmega16 to procesor o architekturze RISC czyli większość rozkazów realizuje w jednym takcie zegara. Jeśli jest taktowany zegarem 7MHz to między kolejnymi mikrokrokami zdąży zrealizować kilka tysięcy rozkazów. Samo sterowanie PWM odbywa się sprzętowo czyli nie obciąża procesora. Wystarczy wpisać odpowiednie liczby do rejestrów OCR i ewentualnie ustawić porty sterujące driverem, a to ledwie kilkanaście (max kilkadziesiąt) instrukcji. Między nimi procek nie ma nic do roboty poza obsługą przerwań. Jeśli masz problemy z wydajnością to prawdopodobnie zastosowałeś programowanie liniowe. Przejdź na pracę w czasie rzeczywistym, a zrobisz to samo i będziesz miał spory zapas mocy. Niedawno pisałem program na ATmega8 8MHz obsługujący czujniki SHT22, DTH11 i DS18B20 (każdy na innym protokole), odczyt klawiszy, sterowanie silnikiem krokowym i przesyłający wyniki pomiarów po USB na terminal VT100 (sporo tego jak na prędkość 9600). Gdybym miał jeszcze trochę pamięci FLASH dałbym radę obsłużyć dodatkowo przesył danych przez internet :)

     

    pozdrawiam

    Przy ruszaniu silnikiem z maksymalną prędkością odpalam kod zmiany kroku bez żadnej przerwy. Ten kod ogranicza mi prędkość. On nie jest niestety taki prosty. Wcześniej (krok 1/6) robiłem to tak, że przepisywałem wprost wartości z tablicy, gdzie miałem wpisane ustawienia protów na każdy mikrokrok. Teraz nie mogę tak zrobić, bo bym musiał mieć zdefiniowane 256 stanów (po 4 chary na każdy), co by dało już 1KB pamięci (cały ram zajęty). Dlatego przy każdym kroku liczę sobie wartości potrzebnych rejestrów i je ustawiam. Podejrzewam, że skomplikowałem masakrycznie ten kod i mógłby być dużo prostszy. Wrzucam ten fragment poniżej, może będzie Ci się chciało go zrozumieć i poradzić mi jak go przyśpieszyć :) . Funkcję KrokSilnika odpalam, aby przesunąć silnik o jeden mikrokrok. Parametr kierunek wynosi 0 lub 1. Nie do końca rozumiem, jak programowanie w czasie rzeczywistym może mi podnieść wydajność. Jak procesor może przyśpieszyć, jeżeli już wykorzystuje całą moc?

    char kroki[8]={0b100111,0b110100,0b011100,0b000110,0b000011,0b010000,0b111000,0b100010};
    
    uint16_t polozenie=0;
    int i=0;
    int nap=0;
    int mikro=32;
    
    void KrokSilnika(long double pr, char kierunek)
    {
    	if(nap==mikro || nap==0)
    	{
    		char chce_do_gory=(((kroki[i]&0b11000)>>3) == 0b11) || ((kroki[i]&0b11) == 0b11);
    		if(nap==0)
    		{
    			if(!chce_do_gory && !kierunek)
    				i++;
    			else if(chce_do_gory && kierunek)
    				i--;
    		}
    		else
    		{
    			if(chce_do_gory && !kierunek)
    				i++;
    			else if(!chce_do_gory && kierunek)
    				i--;
    		}
    		if(i>7)i=0;
    		if(i<0)i=7;
    		output(silnik_kierunekA,kroki[i]>>5);
    		output(silnik_kierunekB,(kroki[i]&0b100)>>2);
    	}
    	
    	char narastanie;
    	if((kroki[i]&0b10000)>>4)narastanie=(kroki[i]&0b1000)>>3;
    	else narastanie=kroki[i]&0b1;
    	
    	if((narastanie && !kierunek) || (!narastanie && kierunek))nap++;
    	else nap--;
    	
    	if(kierunek)polozenie++;
    	else polozenie--;
    	
    	if((kroki[i]&0b10000)>>4)
    	{
    		OCR1A=nap*255/mikro;
    		OCR1B=255;
    	}
    	else
    	{
    		OCR1A=255;
    		OCR1B=nap*255/mikro;
    	}
    	_delay_us(2500/pr-50);
    }

     

     

  12. Dodam, że rozwiązanie mechaniczne masz wielce zgrabne :-)

     

    Super sprawa. I tak jak pisze Pimo - mechanicznie bardzo elegancko, co jest moją wielką bolączką niestety :)

    Dzięki. Jakoś tak ładnie wyszło :)

     

    Tak się zastanawiam czemu w takim razie komercyjne rozwiązania bazują praktycznie zawsze na przekładniach - czy to planetarnych czy paskowych, i chyba jedyny powód to taki że opisane rozwiązanie wymaga ciągłego zasilania. Choć w przypadku zestawów do astrofoto nie ma to aż takiego znaczenia bo i tak są wymagają zasilania...

    Kwestia zasilania może być dla niektórych pewnym problemem, na szczęście ja zawsze mam zasilanie z sieci, bo i tak by tego wszystkiego żaden sensowny akumulator nie pociągnął i dlatego o sprawę zasilania nie dbam. Jest jeszcze jedna istotna rzecz - gdybym maił umieścić taki napęd w obserwatorium, przy teleskopie z innym wyciągiem (takim, który nie ślizga się na końcach zakresu, jak Crayford), to przy wyłączeniu zasilania traciłbym aktualne położenie i nie mógłbym go łatwo, zdalnie wyzerować. Choć rozwiązanie jest takie, żeby silnik się "parkował" przed wyłączeniem zasilania, czyli wskakiwał na najbliższy pełny krok. U mnie te problemy nie występują zupełnie, bo po włączeniu zeruję napęd, czyli silnik przejeżdża dystans większy od zakresu pracy i wykorzystuje to, że Crayford się ślizga na końcach zakresów, a więc po takim przejeździe jest idealnie na początku zakresu.

     

    PS - liczyłeś jakoś spadek momentu obrotowego dla sterowania mikrokrokowego? Z tego co pamiętam spada przy takim sterowaniu i dodatkowo zależy od bieżącego położenia osi. 42Ncm to bardzo zacny moment, ale np wg http://www.micromo.com/microstepping-myths-and-realities.aspx moment przyrostowy dla 64 mikrokroków wynosi jedynie 2.45% momentu silnika.

    Dzięki za link, trochę się z tym namęczyłem, ale chyba rozumiem :) Już myślałem, że coś się nie zgadza, bo przecież silnik na mikrokrokach nie stracił na ogólnej mocy (czyli dalej podnosi podobne obciążenie), a tu przecież chodzi o moment trzymania zadanego mikrokroku. W takim razie chyba z powrotem ustawię moc na 100%, bo to zawsze 2x lepsze trzymanie. Zmniejszyłem to, żeby się silnik nie grzał, ale i tak mu nic nie powinno być. Czytałem już kilka artykułów o mikrokrokach, ale nie natknąłem się jeszcze na takie informacje, a to przecież ważne i logiczne.

     

    w dodatku żaden silnik nie jest w stanie uzyskać dowolnej precyzji ustawienia osi. Powodem są niedokładności ustawienia "ząbków" w trakcie produkcji. W efekcie daje się uzyskać sensowną dokładność na poziomie 1/8, a w najlepszym razie 1/16 kroku. Dodatkowy problem to utrzymanie zadanej pozycji. Maksymalny moment obrotowy uzyskamy w pełnym kroku (pod warunkiem sterowania dwufazowego), a to będzie za mało do precyzyjnego ustawienia ostrości w jasnym sprzęcie. Tylko przekładnie mechaniczne są w stanie zapewnić niezbędną precyzję i odpowiedni moment obrotowy. Bezpośredni napęd może się nadawać od biedy do wizuala w katadioptrykach (pod warunkiem nie zasilania go z baterii) ale do fotografii nie będzie dobry

    Oczywiście zdaję sobie sprawę z tego, że silnik jest niedokładny, ale to mi niczego nie psuje. Zauważ, że nie potrzebuję takiej dużej, jak teoretyczna dokładności. Już przy czterech mikrokrokach dokładność silnika jest ponad 3,5x lepsza, niż CFZ ! Jeśli natomiast wezmę przypadek skrajnego teleskopu (f/3), to CFZ zmniejsza się do 21 um (dla najgorszej fali niebieskiej), a więc używając zaledwie ośmiu mikrokroków uzyskuję dokładność 2,5x większą. Czego tu chcieć więcej? Sam piszesz, że sensowna dokładność silnika krokowego to 1/8 kroku, czyli wszystko będzie OK. Silnik z mikrokrokiem 1/8 będzie trzymał pozycję z momentem 20%, czyli przy odpowiednio mocnym silniku (jak u mnie) będzie to wystarczające. U mnie większa ilość mikrokroków jest głównie dlatego, żeby silnik nie powodował drgań przy obracaniu i nie "tykał".

    Tak więc nie zgadzam się, że napęd bezpośredni to tylko do wizuala i mam nadzieję, że to rzeczowo wyjaśniłem :)

     

    Jaka jest przewaga napędu bezpośredniego nad przekładnią?

    - Nieporównywalnie większa prędkość (jak czytałem o tych minutach potrzebnych na pełne przejechanie zakresu robofocusem, to mi się słabo robiło :) ), która przy astrofoto ma co prawda nieduże znaczenie, ale już dla wizuala jest istotna.

    - brak backlasha, co z kolei ma niebagatelne znaczenie w precyzyjnym autofocusowaniu. Żadne kompensowanie backlasha nie da takiego efektu, jak jego brak.

     

    Dodam jeszcze, że pierwotnie planowałem użycie silnika 400 krokowego - to prawdziwy rarytas, ceny takich cacek w sklepie są bardzo duże. Niestety okazał się za słaby do tego celu. A skąd miałem taki silnik? Z archaicznego dysku twardego. Byłem zaskoczony, że kiedyś takie dyski były. Silnik służył do ruszania głowicą. Podejrzewam, że jego dokładność jest bardzo duża, bo on nie miał żadnej przekładni mechanicznej, tylko bezpośrednio kręcił głowicą. A to przecież dysk twardy, tam precyzja jest ogromna. A właściwie, to te układy do sterowania silnikiem podpatrzyłem właśnie z tego dysku.

    • Lubię 1
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.