Skip to main content

Topic: Arduino projekti - weather station, ardupilot, GPS, i ostalo (Read 26801 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.

Arduino projekti - weather station, ardupilot, GPS, i ostalo

Evo, umjesto letenja po ovoj žegi, malo sam se bacio na programiranje. Za sada imam samo jedan arduino nano, senzore: barometar sa termometrom, magnetometar i ultrazvučni daljinomjer (plus nRF24, full duplex komunikacija na 2.4 GHz). Svaki senzor je dolar-dva. Arduino nano je 2-3 dolara.

Ideja je bila da se napravi kontroler za quadcopter, no sada vidim da se brzo i jednostavno može napraviti sve i svašta. Nije toliko komplicirano, koliko treba vremena i besanih noći da se protumače ponekad nejasne skripte na internetu.

Magnetometar radi dobro, no ovako statički - u sobi.. nema neku svrhu. Osim toga, još nisam skontao kako ga kalibrirati (odsupa po sve tri osi u očitanju, ništa strašno, ali opet). Sam za sebe nije neka pomoć recimo za quad ili avion, no u 'suradnji' sa ostalim senzorima (uh, nisam imao novaca za accelerometer i gyro), može se napraviti lijep kontroler za bilo što - od auta do rakete.

Barometar je vrlo zanimljiv. Teoretski može od dubine u vodi do 150 metara - pa sve do svemira, tj. potpunog vakuuma. Jedina mana ovih jeftinih na eBay-u je ta što ima relativno visoki šum, pa je potrebno 'peglati' podatke, što oduzima procesorsko vrijeme. Za sada sam uspio nekako ispeglati tako da mi ipak uspije poslati podatke 3-4 puta u sekundi. Presporo za bilo što leteće, no ne i za meteorološku stanicu.

Baš jučer sam gledao kako tlak pada u realnom vremenu; vrlo zanimljiva promjena tlaka u trenutku kad je kiša počela padati (a i led), tlak je naglo skočio gore, što je nemoguće na bilo kojoj web stranici, pogotovo ne na DHMZ. Današnje očitanje (nisam stigao sve napraviti; skalu, vrijeme i datum, no ipak mi je dobrodošlo za probu i učenje):

[attach=1]

Arduino sketch (u C jeziku) je 'upržen' u čip, a komunikacija sa kompjuterom je preko USB kabela. Podaci su interpretirani sa "Processing" okruženjem - zgodna stvar, iako za sada u verziji 2.2.1 ne radi konverzija u .exe, tako da bi se teoretski mogla startati neovisni program. No i oavko je super (starta se Processing, učita se sketch i klikne na play, to je sve).

Još nemam vlagomjer (na putu je), SD karticu (moguće je napraviti log podataka, tako da se kasnije može analizirati na PC-u), GPS prijemnik je isto na putu... Iako je GLONASS bolji i precizniji (i može više očitanja u sekundi od GPS-a, umjesto 10, može 18) od GPS-a, za sada nemam novaca za onu verziju koja bi me veselila, a to je GNSS + barometer + accelerometer + gyro. Ima vremena,
stignem jednog dana i to kupiti.

Probao sam i visinomjer sa ovim barometrom, ali nisam siguran da je od velike koristi, upravo zbog tog 'šuma' (noise). Sa poda na stol, 75 cm razlike - pokazuje točno, ali samo ako se uzme prosjek zadnjih nekoliko očitanja. Sve ostalo je +/- 1 metar (ok, manje u modu 3 [+/- 17 cm, teoretski], koji je precizniji, ali i sporiji (umjesto 5 milisekundi -> 26 mS).

EDIT (ispravka netočnog navoda :D ). Nije "+/- 1 m" i nije "+/- 17 cm", nego: "+/-1 0.5m" (1 metar je totalno odstupanje, tj. šum u odnosu na prosjek) i "+/- 8.5 cm" greška ili šum (totalno 17cm u odnosu na prosjek, ako se radi 'filtriranje' više uzoraka -> zbroj svih mjerenja/broj mjerenja).

Toliko za sada. Komentari i pitanja su dobrodošli.

LP,
milan
---

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #1
Evo moje vježbe na tu temu:



[attachimg=2][attachimg=1]
Outrage Fusion 50
Futaba T14SG

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #2
Davore, pa to lijepo izgleda.

Koji si senzor za tlak koristio? Ja koristim BMP180, koji je dosta dobar, iako ima i boljih (barem za vario-metar, MS5611) Ovaj drugi ima navodno brže očitanje, pogodno za vario, ali nisam siguran da mu je točnost mjerenja, tj. šum u granici 'normale', tj. dali je upotrebljiv. Na RCForumu sam našao dijagram i sketch za vario od Rolf R. Bakke-a:

http://www.rcgroups.com/forums/showthread.php?t=1749208

Probao sam sa mojim senzorom, ali ne radi (samo očita kalibracijske podatke i onda šuti,...). Za sada nemam taj MS5611, malo je skuplji (nekih 8-9 dolara, džabe kad sam na nuli).

BTW, što je ovo iza LCD-a? Vidim da ima puno elektronike. Superkompjuter?  ;)

LP,
milan
---

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #3
Evo, zahvaljujući Davoru, i ja sam se primorao da napravim to sa LCD-om.  8)

[attach=1]

Jedino sam temperaturu 'vadio' iz barometra (BMP180, ima mjerenje temperature, vjerojatno kao korekcija greške u tlaku pri promjeni temperature), a ne iz vlagomjera/termometra (DHT22 ili DHT11), jer ga nemam (tek sam naručio).

LP,
milan
---


Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #4
Nikako nisam uspio skontati dinamičko 'peglanje' podataka, tako da za sada ostaju segmenti od po 20 mjerenja. Iako je svaki takav segment ispeglan sam za sebe, dva susjedna segmenta pokazuju razliku. Mislim da su primjeri za "RollingAverage" loši, nikako ne uspijevam ugurati "double" (dvostruki dugački decimalni broj) unutar te funkcije. Stalno mi pokazuje neku grešku...

No i ovo što sam večeras probao, donekle izgleda dobro, ne baš onako kako bi želio.:

[attachimg=1]

Iako je na slici 0 metara ili 0 centimetara visoko, a 2m ili 200cm nisko - to je zato što nisam invertirao mjerenje tlaka. Dakle, dolje na podu je viši, gore na ormaru niži tlak. Isto tako, ova oscilacija od 25 cm se jedva vidi - to sam želio postići da bude vidljivo (rezolucija visine treba biti malo bolja). Ne znam dali je sve ovo dovoljno dobro, ili treba još preciznije za recimo quad - altitude hold?!

EDIT: Ako ništa drugo, uspio sam ubrzati slanje podataka, tj. skratiti vrijeme između dva očitanja. Nije bio toliko problem u dugačkom algoritmu, nego ponajviše u brzini prijenosa serijske veze (USB). Sada to ide vrlo brzo na 115200 bps (umjesto dosadašnjih 57600, a moguće da sam greškom bio spustio na 9600), dobijem nekih 50 tak podataka u sekundi - dovoljno, možda i previše. U konačnici, ta komunikacija će biti drugačija - najvjerojatnije dva ili više minijaturna arduina, svaki će imati svoj zadatak. Može i jedan veliki "stroj", ali mislim da je ovako bolje - u slučaju da jedan zaglavi, drugi preuzima neke funkcije.

EDIT2: Ovo, gore navedeno oko segmenata i RollingAverage - isto se uzima prosjek, recimo 20 mjerenja, ali se taj segment 'pomiče', tj. ranije mjerenje se briše i u izračun se stavlja najnovije... i to se onda ponavlja i šalje dalje. Pri tome će postojati malo kašnjenje u konačnici, a nadam se da neće biti toga previše - tako da bilo koja letjelica može održati relativno stabilnu (zadanu) visinu.

LP,
milan
---

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #5
Evo moje vježbe na tu temu:

Nego, Davore. Dali si uključio tvoju lokalnu nadmorsku visinu u izračun tlaka? Pitam zato što se može staviti korekcija tlaka, tako da pokazuje tlak kako ga prikazuje recimo DHMZ (osim u slučaju planinskih krajeva, gdje je izraženo kao "lokalni tlak na razini postaje"). Ako te zanima, mogu ti poslati sketch-eve, pa si prilagodi.

LP,
milan
---

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #6
Nisam se baš toliko duboko uvalio kao ti.
Koristio sam primjere i gotove sketcheve koje sam samo nadoštukljao i onda "potrimao" da radi.
Cilj je bio vidjeti da li tlak raste ili pada. Točan tlak nisam uspio dobiti iako sam koristio primjer koji izračunava na osnovu temperaturne kompenzacije i umjernih konstanti koje su memorirane u chipu. To ipak ne radi dobro, vjerojatno te konstante nisu dobre. Ipak je ta pločica 2$.
Može se uzeti kompenzacija za razliku visine između npr. Griča i Velike Gorice, III kat :) ali to nije dovoljno, jer je to sve skupa nelinearno.
Imam mogućnosti vrlo točnog generiranja apsolutnog tlaka (pomoću tlačne vage točnosti 5ppm) pa bi mogao izmjeriti u recimo 20 ili više točaka i provući interpolacijski polinom, što bi poboljšalo točnost (za to bi mi trebalo 5 dana), ali bi ipak ostao utjecaj temperature.
Ne znam više točno koji je senzor, neki BMP je. Za temperaturu je onaj bijeli rešetkasti DH nešto. Imam pločicu sa SD card utorom i RTC-om, na koju je stavljen BMP i DH. Sve na I2C. Pločica ispod LCD-a je samo razvod nožica sa shield-a na LCD i namještanje osvjetljenja. Pločica sa dugačkim pinovima je baterija sa punjačem i nekakva WiFi veza koju nisam koristio.
Moj loger radi tako da očitava RTC cijelo vrijeme i ispisuje na LCD, a senzore očitava svaku sekundu. Slijedeći je zadatak koristiti 1S square puls sa RTC-a koji bi preko interapta pokretao potprogram za očitavanje senzora. To bi bilo "čišće". Zapis na SD radi ali je za sada onemogućen. Planiram još napraviti web server, i povezati sa PC-jem na kojem ću preko matlaba ili nečeg sličnog napraviti prikaz podataka.
Toliko o logeru.
Sad malo o žiroskopima, akcelerometrima i sl. Osim očigledne činjenice da ardupilot ima sve što ti treba, arduino je kompatibilan, open source, itd. ima i drugih zanimljivih pločica. Odeš na e-bay i potražiš "ahrs" ili "10DOF" ili "9DOF" pa češ naći upravo ono što ti treba, osim GPS-a. Ima i gotovih libraryja sa filtriranjem i preračunavanjem u koji već pozicioni sustav želiš (najpopularniji su kvaternioni). Za par dolara. Dobro, ahrs je oko 30$, ali on ima kontroler na sebi, sa već ubačenim softwaretom koji preko serijskog porta šalje već obrađene podatke.
Eto to je mudrost koju sam uspio skupiti, plus par desetaka megabajta kojekakvih primjera. Ali nisam išao u dubinu kako što radi, samo toliko da profunkcionira. Sad više nemam vremena za taj dio zanimacija, više sam orjentiran vanjskim aktivnostima...

Pozdrav
Davor
Outrage Fusion 50
Futaba T14SG

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #7
Evo još slika pojedinačnih komponenti

[attachimg=1]
Outrage Fusion 50
Futaba T14SG

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #8
Najs ekipa.

Imam punu ladicu senzora i plocica, 10ak RF modula za mesh mrezu i sl.
Ako nekome treba nesto, na PM.
Posljednji model:
Sin V1: tezina: 7500 g, raspon: 70 cm, gorivo:mlijeko, kapacitet rezervoara: sve veci, izdrzljivost: 0-24

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #9
Nisam se baš toliko duboko uvalio kao ti.
Koristio sam primjere i gotove sketcheve koje sam samo nadoštukljao i onda "potrimao" da radi.
Cilj je bio vidjeti da li tlak raste ili pada. Točan tlak nisam uspio dobiti iako sam koristio primjer koji izračunava na osnovu temperaturne kompenzacije i umjernih konstanti koje su memorirane u chipu. To ipak ne radi dobro, vjerojatno te konstante nisu dobre. Ipak je ta pločica 2$.

I ja koristim gotove sketcheve, ali se trudim razumjeti što koja komponenta radi. Recimo, ovaj barometar, ima više načina pristupanja, no na kraju se sve svodi na pravilan redosljed čitanja podataka - prvo se MORA očitati temperatura, da bi senzor bio oslobođen te varijable, a zatim izračunao i ostatk.

Da bi vidio dali tlak raste i pada, a da ne moraš pamtiti, na tvom LCD-u vidim da si malo pomaknuo oznake (hPa, °C, %RH) udesno, a mogao bi to vratiti za dva polja ulijevo i nadodati matematiku (pošto imaš RTC clock, ja za sada nemam) tako da ti izračunava i izbaci gotovu cifru promjene tlaka recimo u jednom satu (ili što god već poželiš, po minuti ako treba).  Isto i za temperaturu i za vlažnost, iako je svima nama ovaj tlak dosta bitan.

Quote
Može se uzeti kompenzacija za razliku visine između npr. Griča i Velike Gorice, III kat :) ali to nije dovoljno, jer je to sve skupa nelinearno.

Znam da je nelinearno, tlak se po visini mijenja p^1.5... ne znam točnu cifru ni matematiku (za sada, ali sam vidio). No kao i svaka nelinearnost, u manjem rasponu mjerenja postoji dosta linearan dio. Ovo za 3. kat... a odokativno, po google maps-u pogledaš što oni kažu za tvoju lokaciju, pa onda na to + nekih 10-tak metara. Recimo, za moju lokaciju je 82 metra, a ovjdje kod mene je 84 (2 metra višlje). Ima razlike, ne prevelike, ali ima. U samom sketch-u (ovisi od koga si uzeo), postoji varijabla koja se ubaci u jednostavnu matematiku, a algoritam preračuna ostalo. Nisam siguran, ali mislim da sam senzor odrađuje taj dio, samo mu moraš reći na kojoj si visini.

Quote
Imam mogućnosti vrlo točnog generiranja apsolutnog tlaka (pomoću tlačne vage točnosti 5ppm) pa bi mogao izmjeriti u recimo 20 ili više točaka i provući interpolacijski polinom, što bi poboljšalo točnost (za to bi mi trebalo 5 dana), ali bi ipak ostao utjecaj temperature.

Moja namjera nije natjecanje u točnosti sa ostalim meteorološkim stanicama. Uostalom, nemam pojma gdje je morska razina... i taj podatak treba, jer plime/oseke... jer tada ni moja nadmorska visina od 82 metra nikada nije točna, pošto se razina mora stalno mijenja. Meni je isto tako bitan apsolutni tlak, da bi znao preračunati mjerenje visine pomoću tlakomjera. No ono što je ovdje bitno je to da je sam senzor... takav kakav jeste - jeftino kinesko... ima i skupljih, samo.. uvijek muka s tim novcima.  :(

Quote
Ne znam više točno koji je senzor, neki BMP je. Za temperaturu je onaj bijeli rešetkasti DH nešto. Imam pločicu sa SD card utorom i RTC-om, na koju je stavljen BMP i DH. Sve na I2C.

BMP085 ili BMP180, svejedno - obadva rade dobro svoj posao, iako sa malo 'grbavosti' ako se ne pegla. Za vlagu i temperaturu, DHT11 ili DHT22. Ovaj drugi je 4 puta precizniji, za samo dvostruko novaca.

Quote
Pločica ispod LCD-a je samo razvod nožica sa shield-a na LCD i namještanje osvjetljenja. Pločica sa dugačkim pinovima je baterija sa punjačem i nekakva WiFi veza koju nisam koristio.

Negdje sam vidio odličnu stvar sa kombinacijom WiFi-ja i MCU-a. Podatke možeš očitavati lokalno, na nekom recimo LCD-u, a može se onda i pristupiti putem web browsera, nešto kao "http://123.123.23.23/moj_senzor_1.html" ili /main.html, gdje onda napraviš cijeli preglednik za sve postojeće senzore. Prednost ovoga je štu unutar dometa kompjutera samo klikneš na spremljeni bookmark i imaš sve kao na dlanu. Mana je što se moraš malo patiti sa PHP i Java, kao i ostalim glavolomkama,... nisam još stigao do tog dijela. Može se teoretski otvoriti kanal prema internetu i djeliti podatke, no tu se ne bi za sada upuštao, jer bi mi isto tako neko mogau ući po istom kanalu.

Quote
Moj loger radi tako da očitava RTC cijelo vrijeme i ispisuje na LCD, a senzore očitava svaku sekundu. Slijedeći je zadatak koristiti 1S square puls sa RTC-a koji bi preko interapta pokretao potprogram za očitavanje senzora. To bi bilo "čišće". Zapis na SD radi ali je za sada onemogućen. Planiram još napraviti web server, i povezati sa PC-jem na kojem ću preko matlaba ili nečeg sličnog napraviti prikaz podataka.

Obadvije ideje su super - i pohrana podataka (log) i web server. Iako bi možda bilo bolje podatke slati na neki HUB (ne, ne na pornhub  :D ), pa čitati odakle god želiš.

Quote
Toliko o logeru.
Sad malo o žiroskopima, akcelerometrima i sl. Osim očigledne činjenice da ardupilot ima sve što ti treba, arduino je kompatibilan, open source, itd. ima i drugih zanimljivih pločica. Odeš na e-bay i potražiš "ahrs" ili "10DOF" ili "9DOF" pa češ naći upravo ono što ti treba, osim GPS-a. Ima i gotovih libraryja sa filtriranjem i preračunavanjem u koji već pozicioni sustav želiš (najpopularniji su kvaternioni). Za par dolara. Dobro, ahrs je oko 30$, ali on ima kontroler na sebi, sa već ubačenim softwaretom koji preko serijskog porta šalje već obrađene podatke.

Ma lijepo je to sa gotovim žiroskopima i ostalim. Ja želim znati kako sve to radi, i kako međusobno koordinirati podatke, te vidjeti što mi od toga treba, kada i gdje. Zato i radim ovako pojedinačno - koje je naravno u konačnici skuplje. Ali to je mala cijena koja se plati za upoznavanje pojedinih komponenti. Naravno, ima ljudi koje to ne zanima. Recimo, za odmor koristim ovaj moj mali Eachine H8 - samo napuniš bateriju, spojiš i letiš. Prava uživancija. Nema kompas, GPS, plan leta.. ništa, samo gyro/acc i to je sve što mu treba. A samo 100 kuna. Naravno da taj mali ne može nikakvu kameru (može, ali su te mikro-minijaturne preskupe).

Quote
Eto to je mudrost koju sam uspio skupiti, plus par desetaka megabajta kojekakvih primjera. Ali nisam išao u dubinu kako što radi, samo toliko da profunkcionira. Sad više nemam vremena za taj dio zanimacija, više sam orjentiran vanjskim aktivnostima...
[/qute]

Ne idem ni ja u neku dubinu ako nije nužno. Uglavnom uzmem gotove sketcheve, preopravim, doradim. Za prikaz koristim ono što za sada imam pri ruci: ovaj mali Nokia 5110 LCD ili serisku vezu, pa vizualiziram preko Processing (može i mathlab, no nisam familijaran s njim) na PC. Tek sam počeo sa arduinom. Prije sam se patio sa PIC-em, odlična stvar, samo sam pokušavao raditi u strojnom kodu... pa sam odustao ili odgodio zbog glavobolje - da bi išta smisleno dobio, moraš biti guru u manipulaciji podacima, poznavati arhitekturu samog MCU-a, parametre... hrpa stvari. Ovo je super kod arduina - bez obzira imao najmanji ili najveći, sve je isto - jedino se mora paziti na količinu memorije. Milina.

Quote
Pozdrav
Davor

LP,
milan
---

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #10
Da malo pomognem oko ovih visina:
Ono sto nam treba je QNE, geopotencijalna visina od srednje razine mora.
Uzmes svoj manje vise tocno izracunat i izmjeren barometarski tlak, pa odes u ISA tablicu (International Standard Atmosphere - ima za skinuti) i iz nje ocitas svoju visinu, interpolirajuci izmedju dvije najblize vrijednosti. Od toga oduzmes svoju lokalnu visinu.
Racunske metode su manje tocne, ali mogu posluziti.
Ne znam koji algoritam koristi APM, ali mislim da za te razlike u visini od par sto metara moze se racunati da je gotovo linearna promjena tlaka s visinom.

Ovo s promjenama tlaka bi napravio kao marker, strelica gore kad raste, strelica dolje kad pada. To mi je dovoljno.

Ja se nemam namjeru baviti s tim kako hardware radi, samo me zanima ocitavanje, koje je vec netko rijesio, znaci copy-paste, i onda nesto s time.
Ovo oko koristenja 9DOF chipa kao sto je MPU-9150, je previse kompleksno za mene pa uzimam gotovi library i koristim kao polaziste.
Tu mi je rijeseno ocitavanje, kalman filtriranje i transformacija u kvaternione. S tim bi znao sto dalje.

P
Outrage Fusion 50
Futaba T14SG

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #11
Nijue arduino, ali dobro izgleda:

http://www.emlid.com/

RPi+NavIO shield, djeluje mocno.
Negdje se spominjao i autopilot shield za BeagleBone?
Outrage Fusion 50
Futaba T14SG

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #12
Da malo pomognem oko ovih visina:
Ono sto nam treba je QNE, geopotencijalna visina od srednje razine mora.
Uzmes svoj manje vise tocno izracunat i izmjeren barometarski tlak, pa odes u ISA tablicu (International Standard Atmosphere - ima za skinuti) i iz nje ocitas svoju visinu, interpolirajuci izmedju dvije najblize vrijednosti. Od toga oduzmes svoju lokalnu visinu.
Racunske metode su manje tocne, ali mogu posluziti.

Ovo ću uzeti u razmatranje, za sada ne znam koliko mi je ovo točno, samo znam da mi pokazuje promjenu trlaka, a dosta se slaže i sa DHMZ-om. Pošto su mi najbliže postaje Osijek i Gradište/Županja, uzimam neku srednju vrijednost ako su različite. Da, matematika... vidjet ću za tu tablicu i dali mi u opće treba, jer su mi ovi arduino nano jako 'kratki' što se tiče memorije - samo 2 kB memorije. Jednog dana ću nabaviti neki EEPROM, pa na I2C, tako da su mi lookup tabele tamo, ne u glavnoj memoriji.

Quote
Ne znam koji algoritam koristi APM, ali mislim da za te razlike u visini od par sto metara moze se racunati da je gotovo linearna promjena tlaka s visinom.

To će mi biti dovoljno za početak - linearno. Kad mi stigne GPS, a i microSD čitač, pokušat ću napraviti log leta (za sada samo avion), tako da mi od GPS koordinata uzme pozicije (dovoljno je 1 uzorak u sekundi, možda dva, ovisi), a vidjtet ću već što je točnije; GPS ili bareometarska visina. Navodno GPS zna biti jako neprecizan ako su sateliti blizu horizonta. Koliko precizni/neprecizni... ne znam. Moram to osobno vidjeti, osjetiti, zapisati, prilagoditi...

Quote
Ovo s promjenama tlaka bi napravio kao marker, strelica gore kad raste, strelica dolje kad pada. To mi je dovoljno.

De mi reci, meteo-službe, oni uzimaju prosjek u zadnih sat vremena? Dali im je očitanje (recimo) točno u okrugli sat, ili uzimaju prosjek u proteklih sat vremena? Ovo je bitno, jer ako je prosjek, onda mi to dopunski komplicira program. Dakle, ako je samo zadnje očitanje (od recimo 12:00 sati), onda mi je jednostavno obraditi dva broja, onaj u 11:00 sati i onaj u 12:00 sati, pa izračunati tendenciju tlaka. Može se i jedno i drugo; strelica gore/dolje i vrijednosti u formatu +0.4 hPa / -0.3 hPa na primjer. To su mi samo tri varijable; double p_prethodni, double p_trenutni, float dp_prosjek (pošto prosjek ne treba više od jedne ili dvije decimale i nije veliki broj). Iskreno, trenutno ne bi znao kako napisati kod, jer nemam RTC clock, pa ne znam ni u kojem formatu ni kako ga čitati. Pošto očitavaš svake sekunde, za izračun tendencije tlaka ne idu sve vrijednosti, nego samo ako se uvjetno poklopi recimo "okruglo" vijeme, npr. 14:00:00, tek onda uzima jedno mjerenje i stavlja u drugu varijablu (sada nju vadi i piše na LCD-u kao trenutni tlak), a prvu... eh, tren... isto tako if() petlja, tako da ako je sam početak rada WS, tu bi bila nula. Ne, ne znam, priznajem... no riješit ćemo to nekako...

Quote
Ja se nemam namjeru baviti s tim kako hardware radi, samo me zanima ocitavanje, koje je vec netko rijesio, znaci copy-paste, i onda nesto s time.
Ovo oko koristenja 9DOF chipa kao sto je MPU-9150, je previse kompleksno za mene pa uzimam gotovi library i koristim kao polaziste.
Tu mi je rijeseno ocitavanje, kalman filtriranje i transformacija u kvaternione. S tim bi znao sto dalje.

P

Ma ima toga na webu i previše, svatko je to riješio na svoj način. A valjda negdje ima i matematika, iako jednom kad vidim format i način baratanja tim brojevima, onda je lako nastaviti. Mene još uvijek pati rad sa nRF24 (iako je na 2.4 GHz, nije "pravi" WiFi) - malo je zeznuto krenuti, jer promjena programa nekada nije odmah viljiva - potrebno ga je doslovce ugasiti, pa ponovo upaliti da promjeni način rada. Na to sam izgubio cijelu jednu noć i nisam nigdje stigao, jer sam imao samo komunikaciju RPi <--> Arduino, ne dva arduina. A razlike u C++ kodu su minimalne ali značajne. Uskoro (ne znam koliko uskoro) će mi sitći još jedan arduino nano, pa će proces treninga i testiranja ići brže, ovako moram monitor stalno prebacivati na win7/raspbian. A i dvije tipkovnice i dva miša mi je nezgodno...

EDIT: Sad sam se sjetio da postoji SSH komunikacija između win7 i RPi, gdje se iz windowsa pristupa RPi-ju. No ipak ću pričekati da mi stigne drugi ardu-MCU, jer će mi biti daleko lakše, jednostavnije, brže i manje konfuzno.

LP,
milan
---

 

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #13
Toplo preporučam SSH.
Jednostavno je a radi.
Možeš vrtiti sve na PC-u, IDE za arduino u jednom prozoru, terminal preko SSH u drugom. Ako imaš veliki monitor.
Onda nema problema sa tastaturama i miševima.
Problem s dvi to VGA me je natjerao da koristim SSH za RPi (malo radi malo ne radi).
Iako sa novim Pi navodno je moguće sasvim pristojno raditi sa Arduino IDE-om.

Za ove meteo stanice ne znam točno kako očitavaju, valjda ručno tj. odokativno, pa onda upisuju u neku bazu. Pretpostavljam da je svaki puni sat, nekoliko očitanja pa onda srednja vrijednost.

P
Outrage Fusion 50
Futaba T14SG

Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo

Reply #14
Nijue arduino, ali dobro izgleda:

http://www.emlid.com/

RPi+NavIO shield, djeluje mocno.
Negdje se spominjao i autopilot shield za BeagleBone?

Koliko ta divota košta? Bojim se da je skupo. Za sada ne znam kako će se stvari odvijati, nemam neki određeni plan, nego onako kako uspijem savladati tematiku, tako planiram proširenje i nadogradnju. Zato i idem na najjeftiniju varijantu, a opet da ima relativno dosta memorije, a to je arduino nano. Ima i manjih, samo... brzo se memorija napuni.

Ovo će biti lijepo jednog dana kad dobijem taj osječaj; što je što zapravo, kako radi i što sve treba implementirati. Ovako imam (za sada) samo jedan nano, pa moram brisati stari program kako bi implementirao novi za potrebe učenja. Što jednostavnije to bolje, bar za početak. Kad savladam sve to "gradivo", onda ću već vidjeti od tih gotovih kontrolera leta - koji će mi biti optimalan za neki budući plan. Kad sve to vidim i ocjenim da sam spreman, onda idem na nabavku motora, ESC-ova i ostalog.

LP,
milan
---