Forum Astronomskog Magazina

Astronomske diskusije => ATM => Topic started by: CyberianIce on May 26, 2021, 03:52:56 pm

Title: DIY: AstroEQ kontroler
Post by: CyberianIce on May 26, 2021, 03:52:56 pm
U sklopu projekta YugoKosmos, koristim AstroEQ kontroler za kontrolu mehanike. Mngo pitanja mi dolazi o tome, i obecavao sam da cu pisati ali nikako da se organizujem, pa cu ovako postepeno pokusati deo po deo.

AstroEQ je jedna od opensource alternativa koja omogucava da bukvalno bilo koju ekvatorijalnu platformu povezete na racunar po EQDIR modelu. Da podsetim, EQDIR je SkyWatcher-ov model povezivanja mehanika direkno na racunar putem serijskog, USB ili WiFi interfejsa, kako bi se koristio u sklopu ASCOM platforme kao GoTo ili za guiding pomocu aplikacija opste namene poput PHD2 ili MetaGuide ili nekog vendorskog resenja kakva ima recimo ZWO. Astro EQ je ranije je dolazio kao kit baziran na PCB-u sa ATMega mikrokontrolerom, USB konverterom i drajverima za stepere ali jos od pocetka COVID-a, autor nije bio u mogucnosti da isporucuje ove kitove. Na srecu, jos ranije je razvio alternativnu varijantu koja radi na Arduino Mega 2650 razvojnoj ploci. U daljem tekstu govorim isključivo o AstroEQ varijanti koja radi na tom Arduinu.

Osnovna ideja je povezati mehaniku na ASCOM platformu, preko EQMOD drajvera, tako da je racunar vidi kao bilo koji drugi EQMOD uredjaj. Nakon sto je to postignuto, aplikacije poput Stellarium-a ili KStars mogu da upravljaju mehanikom za GoTo, ili aplikacije za vodjenje mogu da rade korekcije prilikom pracenja.

Povezivanje sa racunarom se ostvarije preko USB kabela ili preko serijskog interfejsa. U svakom slucaju krajnji cilj je da operativni sistem vidi COM port na koji je povezan kontroler. U slucaju kada se koristi USB, to je virtualni COM port koji dolazi od samog Arduina. Zavisno od izvedvbe vašeg Arduina (ili klona) on na sebi moze imati 16u2, CP2102 ili CH340g chip, koji povezuje USB na racunaru sa serijskim interfejsom ATMega mikrokontrolera na Arduinu. Razlike za sada mozemo ostaviti po strani, jer jedina praktica razlika je u samom drajveru koji treba instalirati da bi racunar video taj Arduino. U slucaju kada se koristi najnoviji Windows 10 automatski ga prepoznaje bez potrebe da se instalira ikakav rustični drajver. Ovo sve menjalo od builda do builda Windowsa 10-ke, radim na poslednjoj verziji koja se redovno ažurira i problemi koji se mogu javiti sa tim drajverima neće biti predmet ovog posta, jer svi se mogu resiti uz malo guglanja, eventualno restart i instalacija drajvera u rezimu bez verifikacije potpisa drajvera, mada sam licno testirao i sva tri cipa bivaju prepoznata odmah po povezivanju na USB kabel. Ovu temu cu da pisem iz tri dela (1: Firmware, 2: Hardwer, 3: Softver) , stoga vas molim da ne pisete nikakve odgovore dok ne zavrsim sve, kako bi na vrhu ostalo ono najbitnije za laske snalazenje.

PRVI DEO:

Instalacija AstroEQ Firmware-a:
Najbolje je prvo uploadovati AstroEQ firmware na Arduino i konfigurisati ga, pa ako sve prodje kako treba onda moze da se bavi povezivanjem ostalih komponenti. Procedura je veoma jednostavna i ne zahteva nikakvo poznavanje programiranja niti rucnu izmenu konfiguracionih fajlova ili hedera. Svi parametri mehanike se cuvaju u 4096 bajtova EEPROM-a kojim Arduino Mega 2650 raspolaze.


U principu to je sve sto se tice ovog dela, u sledecem postu cu da napisem nesto o samom hardveru. Stay tuned.
Title: Re: DIY: AstroEQ kontroler
Post by: CyberianIce on May 26, 2021, 05:11:33 pm
DRUGI DEO:

AstroEQ Hardware:
Malo sam prepravio izvornu shemu. Izbacio sam šotke i dodao dva buck konvertera bazirana na chipu XL4015 (step down) jer mi je tako zgodno da imam dva nezavisna raila od 5V DC za logiku (na koji ja spajam jos i raspberry, RTC, GPS i druge periferije) a 12V DC za motore sa dovoljno snage za sve sto u buducnosti budem povezivao (a o tome u nekoj drugoj temi), recimo dew heater ili filter revolver, fokuser ili bilo šta na tu temu. Takođe, na ovaj naičin se omogućava varijabilan ulazni napon, pa na terenu mogu koristiti 12V akumulator a kod kuće 24V napajanje bez ikakvih intervencija, i na posletku, ovi buck konverteri se kod nas jako lako i jeftino nabavljaju. Ako neko zeli, mozde komotno da ih izbaci i da dovede 12V direktno iz akumulatora na VIN od arduina, pa zatim sa Arduinovog +5V pina da napaja logiku drajvera jer moze i tako da radi bez problema, samo sto u tom slucaju +5V rail maksimalno pruza 20mA, sto nije dovoljno za dodavanje periferija u buducnosti ako bude potrebe za tim. Moguce je koristiti i druge buck konvertere ali XL4015 se pokazao kao pouzdan kao napajanje i ne pati od nekih problema od kojih slicni step down konverteri koji su prvenstveno namenjeni za kontrolu punjenja pate i koji mogu biti izuzetno opasni za ostatak hardvera.

Shema:
(https://i.postimg.cc/VkSmd9v1/AstroEQ.png) (https://i.postimg.cc/tpkTv2H1/AstroEQ.png)

BOM:
1 x Arduino Mega 2650
2 x DRV8825
2 x 100uF 50V elektrolitski kondenzator
2 x 100nF keramicki kondenzator
2 x 4p aviator terminal F (4-polni mikrofonski terminal, zenski)
1 x XL4015 buck converter 5A (step down)
1 x 6.3A T (osigurac 6.3A tromi, sa kucistem)
1 x PVC kutija (proizvoljnih dimenzija)
1 x Prekidac 24V/10A aviator LED crveni (opciono)
Ostalo: LE diode, terminali, headeri, cesljevi, univerzalni PCB, termoskupljajuci buziri, kablovi za povezivanje, distanceri za montazu, kutija - to je sve proizvoljno. Teoretski moze sve da se poveze na protoboard, moze da se izradi shield za Arduino po gerber fajlu... Takodje trebace vam kalaj, fluks, unimer, lemilica i slicno.

Napomene:
1. Pre povezivanja, neophodno je podesiti maksimalan izlazni napon i jačinu struje na svakom od ova step down konvertera preko njihovih trim potenciomera. Jedan je 5V DC a drugi 12V DC. Prvi sam ograničio na 2.5A a drugi na 4A.
2. Kondenzatori C1 i C2 moraju biti zalemljeni sto blize drajverima DRV8825 sa dobro ošišanim nogicama. Njihvoa uloga je da štite drajer od spajkova koji su dosta elastični i zavisno od dužine kablova mogu da dosegnu i nekoliko puta veći napon od ulalznog.
3. Obavezno je podesiti limit struje na steperima. Ovo podešavanje se obavlja prema specifikaciji samih stepera, okretanjem potenciomera i merenjem napona na svakom od drajvera (Vref). U slučaju drajvera DRV8825 izračunava se po formuli I = 2 x Vref. Ako se kojim slučajem koristi substitut A4988 formula je malo komplikovanija a i ograničavate se na 1/16 mikrokoraka, odnosno još jednom ćete prepoloviti maksimalnu rezoluciju. Iščitavanje vrednosti Vref je moguće uraditi tek nakon povezivanja napajanja stepera i logike ali obavezno pre povezivanja samih motora da ih nebi spržili. Pogledajte ovaj video (https://www.youtube.com/watch?v=YJSmrbeZUp4&ab_channel=MillRightCNC) pre puštanja u rad. Važno je dovesti dovoljno struje do stepera, jer u rezimu 1/32 vrlo lako dolazi do preskakanja ako steper nema dovoljno snage.
4. Ako koristite PHD2 ili MetaGuide, ST4 port je potpuno suvisna stvar. Konekcija ka racunaru preko USB-a je sasvim dovoljna i dovoljno brza, svakako je brza nego bitbengovani serijski interfejs jer ST4 je u stvari to. Njegova svrha je samo za autoguiding, da se izbegne PC ili laptop. Sumnjam da to ikome ko se odlucio za DIY treba tako nesto posto su to skupe varijante. Ja uopste nisam ugradio taj konektor, ako bude trebalo moze lako da se doda.
5. U mojoj varijanti, arduino sam prcvrstio an distancere a drajvere zalemio na univerzalni PCB i povezao sve kablovima. Takodje buck konvertere sam zavrnuo jedan na drugi distancerima i namonitrao ih tako u kutiju kao sto se vidi na slikama. Na slikama se vidi i raspberry i RTC ali ih ignorisite, to je deo neke druge price.

(https://i.postimg.cc/tY3vnhkz/20210522-211822.jpg) (https://postimg.cc/tY3vnhkz) (https://i.postimg.cc/5YXkXTKH/20210522-211834.jpg) (https://postimg.cc/5YXkXTKH) (https://i.postimg.cc/xNHxRH2n/20210526-124107.jpg) (https://postimg.cc/xNHxRH2n) (https://i.postimg.cc/56dktPB0/20210526-124103.jpg) (https://postimg.cc/56dktPB0) (https://i.postimg.cc/QB92FZGv/20210526-170947.jpg) (https://postimg.cc/QB92FZGv)


Dodatne reference vezane za hardver (sheme, gerber fajlovi itd) postoje ovde: https://github.com/TCWORLD/AstroEQ/blob/master/Downloads/AstroEQ-Hardware.zip

Ovako jednom sklopljen AstroEQ se na racunar povezuje preko USB porta na arduinu i koristi kao ASCOM EQMOD periferija u kombinaciji sa gore pomenutim softverima o kojima ce biti reci u trecem delu.
Title: Re: DIY: AstroEQ kontroler
Post by: mitja on May 26, 2021, 10:02:49 pm
Cyber vrh. Bravo.
Title: Re: DIY: AstroEQ kontroler
Post by: mboskovic on June 01, 2021, 12:00:57 am
Bravo Cyber!!