miercuri, 22 mai 2013

Trackuino - APRS tracker

Navigand pe internet am gasit un proiect interesant, un tracker de mici dimensiuni pentru baloane stratosferice, dezvoltat de EA5HAV pe platforma Arduino.
Nu lucrasem pana acum cu astfel de medii de dezvoltare si mi-am propus sa incerc. Oricum aveam nevoie de un proiect practic pentru facultate.

Tracker-ul are la baza un Arduino UNO V3, placa de dezvoltare open-source cu microcontroller, destinata programatorilor incepatori, bazata pe hardware si software flexibil si simplu de folosit. Este o platforma de mici dimensiuni (6.8 cm x 5.3 cm) construita in jurul unui procesor de semnal, capabil de a prelua date din mediul incojurator printr-o serie de senzori si de a efectua actiuni asupra mediului prin intermediul unor actuatoare.

Arhitectura acestuia este realizata in jurul unui microcontroller Atmel ATmega 328P care preia datele de la senzorii de temperatura, tensiune si de la receptorul GPS si le converteste in cadre AX25, sub forma unui semnal AFSK la viteza de 1200 bps. Tot microcontrollerul da si comanda de trecere in emisie a modulului radio.


Receptorul GPS este fabricat de Sparkfun si se prezinta sub forma unui dispozitiv de mici dimensiuni, cantarind in jur de 20gr. Modelul folosit in proiect, Venus 11058, este echipat cu un chipset Skytraq 638FLPx, avand implementat protocolul de comunicatie NMEA 0183 v3.01. Astfel, dispozitivul se poate conecta cu orice software care este compatibil NMEA, in vederea afisarii pozitiei pe harta.

 
Receptorul Venus 11058 poate fi utilizat peste altitudini de 18000 m, doar in cazul in care nu se depaseste viteza de 515 m/s si poate receptiona fluxuri de date de la maximum 65 sateliti geostationari, in banda de frecventa L1 (1575.42 MHz).
Antena externa poate fi pasiva sau activa. In prezentul experiment am folosit o antena activa Ublox ANN-MS cu conector SMA.
Iesirea datelor se face prin port serial de nivel TTL la viteza de 9600 bps.
Din testele efectuate eroarea aproximativa de determinare a pozitiei a fost de aproximativ 4 m.

Pentru acest proiect am cautat un emitator radio cu un consum de energie, greutate si dimensiuni cat se poate de reduse. Am optat pentru un modul Radiometrix, model HX-1 cu frecventa fixa 144.800 MHz, frecventa APRS stabilita la nivel european. Puterea de iesire este de numai 300 mW.

 
Am utilizat doi senzori integrati de temperatura, LM60 in capsula TO-92, cu o caracteristica liniara de iesire, avand intervalul de masurare de la -40 ˚C la +125 ˚C, sensibilitate de 6.25 mV/˚C, si precizie de +/- 2 ˚C, conform datelor de catalog.

Am lipit primul senzor direct pe cablajul tracker-ului pentru a masura temperatura interna a acestuia, iar al doilea senzor este detasabil si se va instala in exterior prin intermediul unui cablu scurt. Cei doi senzori se alimenteaza la 5V, iar semnalele de iesire se aplica direct la intrarea convertoarelor analog-digitale de 10 biti (pinii A0 si A1) de pe platforma Arduino.


Senzorul de tensiune este format dintr-un divizor rezistiv, cu R1 = 10 kΩ si R2 = 3.3 kΩ. Tensiunea de la iesirea divizorului, de pe R2, se aplica la intrarea celui de-al treilea convertor (pinul A2). Acest ansamblu masoara tensiunea acumulatorilor care alimenteaza intreg sistemul de telemetrie.

Montajul in faza de testare cu un Yaesu VX-3 (HX-1 nu venise inca)




Am asamblat toate componentele de mai sus pe o placa de circuit imprimat de dimensiunea placii Arduino UNO, astfel ca cele doua sa se imbine una peste alta. Scopul a fost obtinea unui dispozitiv de telemetrie de greutate si dimensiuni cat mai reduse, care poate fi amplasat in nacela baloanelor statosferice.

Schema placii cu senzori

 

Am urmarit obtinerea unui consum de curent cat mai redus. In acest scop am utilizat stabilizatorul intern de 5 V de pe platforma Arduino UNO (max. 1 A) pentru alimentarea senzorilor de temperatura si al emitatorului, iar pentru alimentarea modului GPS am adaugat un stabilizator LDO de 3.3 V (model LP2950-33LPE3 in capsula TO-92 – max. 100 mA).


Consumul de curent masurat:
Arduino + 2 senzori temperatura = ~50 mA
GPS + stabilizator 3.3 V = ~100 mA
HX1 in emisie = ~100 mA
                                                                   total
Tracker in stand by = ~150 mA
Tracker in emisie = ~250 mA


Codul sursa poate fi gasit aici.