FlyFreak

Online => Birtija => Topic started by: vedronebo on June 12, 2015, 04:52:16 pm

Title: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 12, 2015, 04:52:16 pm
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
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 12, 2015, 08:47:02 pm
Evo moje vježbe na tu temu:



[attachimg=2][attachimg=1]
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 12, 2015, 09:44:41 pm
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 (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
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 12:08:22 am
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
---

Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 03:20:52 am
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
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 03:33:03 am
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
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 13, 2015, 07:16:08 am
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
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 13, 2015, 07:19:57 am
Evo još slika pojedinačnih komponenti

[attachimg=1]
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: Wespen on June 13, 2015, 11:53:08 am
Najs ekipa.

Imam punu ladicu senzora i plocica, 10ak RF modula za mesh mrezu i sl.
Ako nekome treba nesto, na PM.
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 01:16:17 pm
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 (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
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 13, 2015, 02:30:25 pm
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
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 13, 2015, 02:40:35 pm
Nijue arduino, ali dobro izgleda:

http://www.emlid.com/ (http://www.emlid.com/)

RPi+NavIO shield, djeluje mocno.
Negdje se spominjao i autopilot shield za BeagleBone?
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 07:14:20 pm
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
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 13, 2015, 07:30:47 pm
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
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 07:43:05 pm
Nijue arduino, ali dobro izgleda:

http://www.emlid.com/ (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
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 07:54:08 pm
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

Ma, brate mili, onaj "sudo" me ubi. To stalno zaboravim upisati, pa mi kaže da nemam privilegije da mijenjam sadržaj.  :D To kod win7 nema. Nije mi problem sa VGA, je i RPi i win7 imaju HDMI kabel. Problem je pun stol žica, tipkovnica i miševa, Samo mačka fali.  ;D

Imam prvu verziju RPi, a i to sam dobio na poklon. Problem je u tome što ovaj ubogi nRF24 moram stalno resetirati - vaditi +ve nožicu, a postoji opasnost da obogaljim RPi. Kod arduina je to lako - skinem ga sa napajanja i ponovo prikopčam, proradi daleko brže nego se može recimo RPi re-boot-ati.

Meteo-stanice, eh,... mislim da oni to očitavaju jednom ili nijednom svaki sat vremena. Barem tako vdim na DHMZ. No za sada koristim verziju WS koja ima opciju upisivanja moje lokalne nadmorske visine. Prije sam koristion onu verziju koja je imala opciju upisivanja lokalnog tlaka od drugih meteo-postaja, pa mi onda izračuna moju nadmorsku visinu. Samo nekoliko prvih izračuna lokalne nadmorske visine je bilo relativno točno (taj puta se tlak naglo mijenjao, padao je dolje).

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 08:02:25 pm
Sad vidim koliko košta ova "igračka" od NAVIO+, cijene su tu (za mene paprene):

http://www.emlid.com/shop/ (http://www.emlid.com/shop/)

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: Diogen on June 13, 2015, 09:39:03 pm

Vedronebo: "Ma, brate mili, onaj "sudo" me ubi."

Upišeš: sudo su  i onda te pita za pass. Upišeš lozinku i dalje radiš u tom terminalu (CLI, shell) bez da stalno moraš ponavljati sudo.
Ako ideš sa ssh, možeš dodati i opciju -l user i tada te samo jednom pita za lozinku... dalje radiš normalno.
Kada sa ove strane na PC nebi bio win7, sve bi bilo puno lakše.

Damir
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 09:46:58 pm

Vedronebo: "Ma, brate mili, onaj "sudo" me ubi."

Upišeš: sudo su  i onda te pita za pass. Upišeš lozinku i dalje radiš u tom terminalu (CLI, shell) bez da stalno moraš ponavljati sudo.
Ako ideš sa ssh, možeš dodati i opciju -l user i tada te samo jednom pita za lozinku... dalje radiš normalno.
Kada sa ove strane na PC nebi bio win7, sve bi bilo puno lakše.


Damir


A vidjet ću što ću vidjeti. Ovo sa "-l user" sam nekada znao, ali u zadnje vrijeme... pozaboravljao (probao samo -l, ne pali). Bilo je to jaaako puno godina od mog prethodnog čeprkanja po linuxu. Do sada sam sa RPi-om radio samo na "kllik mišem", no sada imam potrebu programirati.

Kad si već tu, da ne tražim po forumima, koje sve parametre moram upisati u RPi u "config.?" listi (ili što god je). Znam samo da mora biti neka adresa, ostalo... zbunjava. Pristupam sa PUTTY? Malo pomoći, nisam baš tu "doma" što se tiće linuxa.

EDIT: Ovo zadnje je za spoj preko LAN mreže (spojeno, na RPi imam internet i ostalo). Jedino mi je potrebna pomoć oko konfiguracije SSH ili što god već na RPi, te malo pomoći oko SSH ili što god je već potrebno na win7.

Unaprijed hvala.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 13, 2015, 10:00:25 pm
Mislim da na windowsima ne treba ništa osim upisati u Putty adresu koju je RPi dobio ...
A na RPi samo treba omogućiti kod onog prvog setupa SSH i to je to.

https://www.raspberrypi.org/documentation/remote-access/ssh/windows.md (https://www.raspberrypi.org/documentation/remote-access/ssh/windows.md)
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 10:12:34 pm
WOW - do bola jednostavno, samo sam slijedio ovaj video:

https://www.youtube.com/watch?v=toWBmUsWD6M

Logiran, idem se igrati.  :D :P 8)

Hvala svima, ovo je super dobro, predobro!!!

"Look ma, no more two keyboards and full house of mouse.  :D :D :D "

[attach=1]

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: Diogen on June 13, 2015, 10:24:43 pm
Mislim da na windowsima ne treba ništa osim upisati u Putty adresu koju je RPi dobio ...
A na RPi samo treba omogućiti kod onog prvog setupa SSH i to je to.

https://www.raspberrypi.org/documentation/remote-access/ssh/windows.md (https://www.raspberrypi.org/documentation/remote-access/ssh/windows.md)
Da, Putty je najbolji izbor za Win. Upišeš adresu i izabereš SSH, automatski se odabire port 22. Moguće je i spremiti da ne moraš svaki puta upisivati.
U slućaju da neka verzija pingvina za RPi počne gnjaviti, upišeš adresu Windoza u  /etc/hosts.equiv
Tada je moguće pristupati i nekim protokolima bez da te išta pita (rsh, rlogin, rcp ....).
Damir
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 13, 2015, 10:38:15 pm
Mislim da na windowsima ne treba ništa osim upisati u Putty adresu koju je RPi dobio ...
A na RPi samo treba omogućiti kod onog prvog setupa SSH i to je to.

https://www.raspberrypi.org/documentation/remote-access/ssh/windows.md (https://www.raspberrypi.org/documentation/remote-access/ssh/windows.md)
Da, Putty je najbolji izbor za Win. Upišeš adresu i izabereš SSH, automatski se odabire port 22. Moguće je i spremiti da ne moraš svaki puta upisivati.
U slućaju da neka verzija pingvina za RPi počne gnjaviti, upišeš adresu Windoza u  /etc/hosts.equiv
Tada je moguće pristupati i nekim protokolima bez da te išta pita (rsh, rlogin, rcp ....).
Damir

Hvala Damire. Upisano, spremljeno. Ovo sa /etc/hosts.equiv -> upisano samo IP adrese (ime kompa/ostalo i mshome... valjda je to-to?!). Za sada ne zeza, ali ćemo vidjeti.

Hvala i Davoru.

LP,
milan
---

P.S.EDIT: Provjerio sam, sad mi je HDMI2 ekran potpuno crn, nema ništa na ekranu, dobar znak da se RPi "prepustio" SSH vezi.

Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 14, 2015, 12:56:30 am
Za sada sam zapeo i idem spavati. Nešto me muči: svaki puta moram ipscanner da mi nađe adresu RPi, jer se mijenja, jednom je 192.168.137.2, rugi puta 192.168.137.57 itd.

Kolliko se sjećam, nešto treba upisati negdje u neki konfiguracijski file, možda config.txt ili slično. Sjećanje me izdaje.

Nadalje, ovo je stalo zato što su primjeri za tlak i ostalo u python okruženju, ne u nekom C++ tipu, koji sam donekle savladao. Ovo nemam pojma kako da krenem. Jeste slično sa C++, a opet tako različito. Planirao sam večeras prebaciti tlakomjer na RPi, pa onda putem 433 MHz poslati signal na arduino, no nisam stigao nigdje.

U konačnici, večinom ću koristiti arduino <-> arduino linkove, iako je i ovo dobra opcija sa RPi. No, za sada to šteka. Još moram skontati kako da mu napravim Manchester code za slanje putem OOK (on/off keying) na 433 MHz. Od svih mogućih protokola, Manchester je nekako najpouzdaniji a i OOK se pokazao kao uskopojasan, ali zato dalekometan, nešto kao telegrafija na ostalim bandovima.

Laku noć ljudi, idem se reboot-ati u krevetu.

LP,
milan
--

EDIT: U python-u sam uspio pokrenuti samo sirovi primjer (na ekran mi izbaci temperaturu, relativni tlak, apsolutni tlak, visinu), ali dalje nemam pojma, niti mogu što napraviti. Čak ne znam ni petlju napraviti, tako da mi te podatke povremeno izbacije...
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: Diogen on June 14, 2015, 10:46:40 am
Za sada sam zapeo i idem spavati. Nešto me muči: svaki puta moram ipscanner da mi nađe adresu RPi, jer se mijenja, jednom je 192.168.137.2, rugi puta 192.168.137.57 itd.
Kolliko se sjećam, nešto treba upisati negdje u neki konfiguracijski file, možda config.txt ili slično. Sjećanje me izdaje.
Ne treba ti ipscaner, dovoljno je upisati ifconfig ( u Windozama je to ipconfig) i znaš adresu.

Ako ti smeta stalna promjena (dinamička IP) imaš nekoliko načina: prvi je da se spajaš preko nekog routera koji ima DHCP (koji radi preko MAC adrese i za isti uređaj uvijek dobiješ istu adresu).

Ako želiš iskonfigurirati i zadati IP adresu koja ti odgovara (statičku) ovdje ima X načina lijepo opisano:
http://www.wikihow.com/Assign-an-IP-Address-on-a-Linux-Computer (http://www.wikihow.com/Assign-an-IP-Address-on-a-Linux-Computer)

Samo naprijed Milane, i složi nam dobre projekte za naše modele  ;)
Damir
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: h.kreso on June 14, 2015, 02:05:26 pm
Moja dva projekta sa Arduinom. Super što se sve može sa malo truda, i novaca

https://www.facebook.com/kresimir.hrastovec/videos/1689116674648053/?pnref=story (https://www.facebook.com/kresimir.hrastovec/videos/1689116674648053/?pnref=story)

! No longer available (http://www.youtube.com/watch?v=d5EQJZWeMYk#)
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 14, 2015, 02:55:43 pm
Za sada sam zapeo i idem spavati. Nešto me muči: svaki puta moram ipscanner da mi nađe adresu RPi, jer se mijenja, jednom je 192.168.137.2, rugi puta 192.168.137.57 itd.
Kolliko se sjećam, nešto treba upisati negdje u neki konfiguracijski file, možda config.txt ili slično. Sjećanje me izdaje.
Ne treba ti ipscaner, dovoljno je upisati ifconfig ( u Windozama je to ipconfig) i znaš adresu.

Ako ti smeta stalna promjena (dinamička IP) imaš nekoliko načina: prvi je da se spajaš preko nekog routera koji ima DHCP (koji radi preko MAC adrese i za isti uređaj uvijek dobiješ istu adresu).

Ako želiš iskonfigurirati i zadati IP adresu koja ti odgovara (statičku) ovdje ima X načina lijepo opisano:
http://www.wikihow.com/Assign-an-IP-Address-on-a-Linux-Computer (http://www.wikihow.com/Assign-an-IP-Address-on-a-Linux-Computer)

Samo naprijed Milane, i složi nam dobre projekte za naše modele  ;)
Damir

Evo, riješeno; svi primjeri komunikacije na YT a i internetu su opčenito - IP adresa. A putty (SSH) može i sa imenom, a ime u mom slučaju je "raspberrypi.mshome.net". Tako da to upišem, a moj komp se onda brine o toj dinamičkoj adresi. Uvijek je isto ime, samo se IP mijenja.

Ma, napravit ću što mogu,... ovo čekanje na kineze me ubija, prođe me volja dok ih dočekam. Jest da su jeftini, ali opet. Kad bi barem znao što će mi ubuduće trebati, pa da nekako skrpam novce i to kupim, tako da kad jednom dođe - mogu raditi na miru. Ovako, gnjavaža... Sad vidim da mi fali ovih male to male konektora (u konačnici će ići direktno lemljenje, no za sada mi je ovo brže za test). Fali mi i breadboard-ova... fali svašta ponešta. Da sam bar ranije prepoznao potencijale ovih uvjetno rečeno igračaka... No ok, dobra stvar je što bar imam neke osnove iz C++, iako ne 100%, bar se snalazim.

Hvala na podršci.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 14, 2015, 03:00:44 pm
Moja dva projekta sa Arduinom. Super što se sve može sa malo truda, i novaca

https://www.facebook.com/kresimir.hrastovec/videos/1689116674648053/?pnref=story (https://www.facebook.com/kresimir.hrastovec/videos/1689116674648053/?pnref=story)

! No longer available (http://www.youtube.com/watch?v=d5EQJZWeMYk#)

Ovo super izgleda, kao pravo. Da, svašta se može napraviti. Moj put je bio prvo sa PIC MCU-ima, i to u strojnom (assembler) jeziku. Teško, preteško. Išlo je donekle, no jako sporo. Jednu funkciju uspijem razraditi u jednom danu, povezati... eh, dva do tri dana. Onda dođu "mušice" (bug-ovi), pa onda danima gledam što sam krivo napravio. Ovako - sketchevi već postoje, samo se prilagode potrebama.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 14, 2015, 08:55:08 pm
Ajde razumijem što moj kod za weather station nije gotov, ali državni HM zavod me nadmašio:

[attachimg=1]

Nije im se valjda dalo ni dovršiti rečenicu, nego samo "prete" (žno)...  Nemam riječi.

LP,
milan
---

EDIT: Da, to je zapravo bilo za 19 sati:

http://vrijeme.hr/aktpod.php?id=hrvatska_n&param=19, (http://vrijeme.hr/aktpod.php?id=hrvatska_n&param=19,) a ovo za 20 sati su samo obrisali večinu toga: http://vrijeme.hr/aktpod.php?id=hrvatska_n&param=20 (http://vrijeme.hr/aktpod.php?id=hrvatska_n&param=20)
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 15, 2015, 11:45:44 am
Ipak se kreće.  8)

Evo, skontao grešku sa "average" funkcijom. Cijela poanta je bila u loše objašnjenom primjeru, gdje je postavljena petlja od 'n' broja uzoraka, a ja sam uporno pokušavao mijenjati taj broj. No, prava 'rezervacija' spremišta 'n' broja uzoraka se nalazi na kompletno drugom mjestu ("Average<float> ave(300);". Tu mi je bila zbunjava, a tek kad sam počeo mijenjati ove brojeve u zagradi, tek onda se počeo mijenjati opseg prosjeka. Taj dio je zapravo neka vrsta digitalnog low pass filtera, koji 'pegla' šum visoke frekvencije, ovisi o tom broju ("ave") - što je broj veći, to je bolje filtriranje. Limit arduino nano je negdje između 300 i 400 uzoraka, a ovisi o preostaloj slobodnoj memoriji (max 2048 bajta, od toga nekih 700 zauzeto). Pošto su brojevi za tlak dugački 4 bajta, dakle ostaje cca. 325 mjesta za taj dio, no postoje i ostale varijable, pa sam smanjio taj broj na 'sigurnih' 300. Evo razlike (preve 3 slike prikazuju razliku tlaka pri promjeni visine senzora od 2 metra - pod/ormar):

[attach=1] Prosjek=1 [attach=2] Prosjek=10 [attach=3] Prosjek=100 [attach=4] Nisam još stavio vremensku bazu, no ustanovio sam delta T i delta P.

Toliko za sada, čekaju se ostali senzori, kao i druge stvarčice da stignu.

EDIT: Vremensku bazu za prikaz promjene temperature i tlaka po jedinici vremena još nisam radio, jer još uvijek ne znam koja će bit konačna varijanta brzine prijenosa, rang temperature i tlaka, rang vremenskog perioda... A, bilo bi lijepo početi se igrati sa spremanjem podataka, da ne moram stalno raditi screenshot da bi pohranio podatke - koje onda kasnije ne mogu analizirati. Za sada je to još uvijek u izradi. Fale još senzori za vanjsku temperaturu, vlažnost zraka (vani/unutra), a jednog dana i ostalo; brzina i smjer vjetra, piezo detekcija oborina (slaba/srednja/jaka kiša/tuča, za snijeg ne znam...) i što god se još sjetim nadodati.

EDIT2: Iako sam stavio 'peglanje', na ovoj četvrtoj slici se vidi da je krivulja jako 'grbava'. To je zato što 'pumpam' previše podataka odjednom - za potrebe testiranja. U konačnici će se to moći daleko bolje poravnati i neće biti tako grbavo. Ostaje još dosta dorade, najviše vremena sam izgubio na savladavanju šuma, gdje sam uspio dobiti maksimalno za ovu kinesku jeftu. Naravno, bolji (i skupji) senzor nema toliko šuma, a bit će predviđen za variometar, no ovaj je više nego dovoljno dobar za WS (Weather Station). A, vidjet ću kad ću se moći igrati i za dubinomjer u vodi - potrebno je sve to dobro enkapsulirati u nepropunsu posudu, sa fleksibilnim prozorom. Navodno ide do 150 metara dubine - pokazivanje dubine u odnosu na izmjereni tlak.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: mozgy on June 17, 2015, 08:30:10 pm
Ak vas zanima WiFi + Arduino-like kontrola pinova pogledajte ESP8266 (board -12E posebice) ..

--
Mozz
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 17, 2015, 10:36:44 pm
Ak vas zanima WiFi + Arduino-like kontrola pinova pogledajte ESP8266 (board -12E posebice) ..

--
Mozz

Hvala Mozgy. Za sada me zanima samo bilo kakva komunikacija, da je dvosmjerna, i da mogu otići malo van stardandnih kanala (iznad 14-tog). Za to mi je dobra ova nRF24. Ima 10mW verzija i 100mW verzija. Ova koju si preporučio je super, mislim da je isto 100mW (ja sam si naručio dvije 10mW verzije, tek toliko da imam po kući neki intranet). Kad mi stigne, moram vidjeti dali ima isto tako opciju da ode van standardnih kanala. Mana nRF24 je ta što može progurati samo 32 bajta u jednom paketu, dok ESP8266 mislim da može 512 ili tu negdje. Osim toga, program se učitava na MCU na samoj kartici - što je izvrsna stvar. 32 bajta mi je više nego dovoljno za neke projekte za daljinsko upravljanje.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 17, 2015, 11:52:08 pm
Za vašu informaciju (FYI).

Evo reješenja zagonetke (barem za mene) oko 9 osnog stabilizatora. Nisam imao pojma kakva je razlika između 3-osnog, 6-osnog i ovog 9-osnog stabilizatora. Stvar je zapravo jednostavna, a ovih 3+3+3 osi su zapravo; žirposkop + akcelerometar +  magnetometar, sve u jednom čipu.

[attach=1]

Ovo na slici, "SCL" i "SDA", to su dvije 'žice' od I2C komunikacije između čipa i MCU-a. A ovo "EDA" i "DCL" su I2C komunikacija sa "vanjskim" senzorom, kao što je barometar. Tako da od recimo ta dva čipa zajedno idu samo 4 žice (+ve, GND, SCL i SDA), umjesto tri puta toliko, za svaki senzor posebno. Mislim da je dobra kombinacija. Evo i datasheet-a (za one koje vole petljati po arduinu):

https://dlnmh9ip6v2uc.cloudfront.net/datasheets/Sensors/IMU/PS-MPU-9150A.pdf (https://dlnmh9ip6v2uc.cloudfront.net/datasheets/Sensors/IMU/PS-MPU-9150A.pdf)

Link za kupnju: http://www.banggood.com/MPU9150-9-Axis-Accelerometer-Sensor-Module-For-Arduino-p-971657.html?p=EH10221611330201505Q (http://www.banggood.com/MPU9150-9-Axis-Accelerometer-Sensor-Module-For-Arduino-p-971657.html?p=EH10221611330201505Q)

Arduino biblioteka za taj senzor:

https://github.com/sparkfun/MPU-9150_Breakout (https://github.com/sparkfun/MPU-9150_Breakout)  (iako je na slici neka druga verzija pločice, library je isti za taj čip)

Još jedna prednost kod smanjivanja broja žica za DIY samogradnju recimo stabilizatora leta (ali nije ograničeno samo na letenje), je ta da je sveukupna dodatna težina minimalna u odnosu na uporabu tri senzora posebno, ponajviše zbog relativno teških žica, lemnih mjesta (kositar/olovo!), a i smanjuje se petljavina oko rasporeda elemenata (moraju biti sve tri osi točno poravnate, inače nema dobre stabilizacije).

Sam kontroler, starija verzija KK2 ploče ima upravo odvojena 3 senzora, dok novije verzije KK2.1x imaju samo jedan senzor. Ono što mene pati je nedostatak visinomjera (barometar), tako da bi se moglo napraviti "altitude hold" opcija. Iako bi se moglno hakirati, tj. na istom čipu naći te dvije nožice i dodati barometar, ne znam dali postoji "source code" za KK2? Frimware je u HEX formatu, a bojim se da se tu ništa nemože više optimizirati ni dodati. Osim toga, KK2 ima samo PI podešavanje, a ne PID - što bi bilo daleko bolje za stabilniji let (ovo D, Derivative, to mu daje korekciju nagle promjene kod stabilizacije).

Isto tako ne postoji opcija dodavanja ultrazvučnog daljinometra, u slučaju potrebe nadogradnje (može se napraviti korekcija mjerenja visine za altitude hold u slučaju greške na barometru ili ako se tlak zraka u međuvremenu promjeni). O implementaciji GPS/GLONASS da ne govorim - ne postoji na KK2. Zato i forsiram samogradnju na osnovi arduina, tj. Atmega procesora (bilo koje verzije).

Toliko za sada, više informacija kad budem skontao još stvarčica.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 18, 2015, 07:06:24 am
Probaj na e-bay-u potraziti "10DOF". To je 9DOF + barometar.
Ovaj DOF = Degrees Of Freedom, tj stupnjeva slobode gibanja.
Minimalni  DOF za orjentaciju u prostoru je 6, tri stupnja slobode rotacije (ziroskopi) i tri stupnja slobode trenslacije (akcelerometri).
Industrijski roboti imaju vise stupnjeva slobode jer osim orjentacije vrha robotske ruke imaju jos i stupnjeve slobode prihvatnice.
Kinematicki gledano magnetometar i barometar ne povecavaju DOF, ali eto tako je prihvaceno ...
Tako da za samu orjentaciju u prostoru, tj. pracenje iste su dovoljni 3xziro + 3xakcelerometar. A za upravljanje trebaju i barometar, magnetometar, ultrazvucni senzori, opticki senzor horizonta, opticki senzor translacije (kamera prema dolje), GPS. Vise senzora za istu stvar unosi redundanciju, a time i povecava robusnost upravljanja. Npr. translaciju se moze mjeriti GPS-om, akcelerometrima, optickim senzorom. Jedno od toga ce valjda raditi!
Za PX4 platformu APM-a pojavio se kombinirani senzor ultrazvucni/kamera i kosta 60-ak $. Phantom 3 i Parrot to imaju (a vjerojatno neki drugi).

Pozdrav
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 18, 2015, 07:51:34 am
Probaj na e-bay-u potraziti "10DOF". To je 9DOF + barometar.
Ovaj DOF = Degrees Of Freedom, tj stupnjeva slobode gibanja.
Minimalni  DOF za orjentaciju u prostoru je 6, tri stupnja slobode rotacije (ziroskopi) i tri stupnja slobode trenslacije (akcelerometri).
Industrijski roboti imaju vise stupnjeva slobode jer osim orjentacije vrha robotske ruke imaju jos i stupnjeve slobode prihvatnice.
Kinematicki gledano magnetometar i barometar ne povecavaju DOF, ali eto tako je prihvaceno ...
Tako da za samu orjentaciju u prostoru, tj. pracenje iste su dovoljni 3xziro + 3xakcelerometar. A za upravljanje trebaju i barometar, magnetometar, ultrazvucni senzori, opticki senzor horizonta, opticki senzor translacije (kamera prema dolje), GPS. Vise senzora za istu stvar unosi redundanciju, a time i povecava robusnost upravljanja. Npr. translaciju se moze mjeriti GPS-om, akcelerometrima, optickim senzorom. Jedno od toga ce valjda raditi!
Za PX4 platformu APM-a pojavio se kombinirani senzor ultrazvucni/kamera i kosta 60-ak $. Phantom 3 i Parrot to imaju (a vjerojatno neki drugi).

Pozdrav

Davoe, Kad si već spomenou ovaj optički senzor horizonta, dali imaš neku oznaku ili barem gdje kupiti/link ili slično? Isto mi je ovo zanimljivo sa kamerom, iako sam vidio da neki rade slično sa optičkim senzorom od miša, koji ima nekih 8x8 pixela (ako se dobro sjećam), a može se promjeniti optika, tako da umjesto 1 cm, "gleda" na veću udaljenost.

Za sada se patim sa upoznavanjem arudina i svega i svačega - ide to, samo se mora dobro upoznati svaki senzor, probati gotove skripte (sketcheve), prilagoditi/izmjeniti/napopuniti, te u konačnici skontati kako sve to objediniti. Bilo bi lijepo da mogu napraviti moj vlastiti kontroler leta, ali tako da bude modularan - onako kako mi senzori stignu (i onako kako ih uspijem shvatiti), da ih mogu samo nadodati. Prije toga planiram napraviti program koji će gledati dali neki senzor postoji, a ako ne - nastaviti sa onim senzorima koji već postoje.

Još mi je sve to apstraktno. Za sada se igram sa jednim senzorom, onda sa drugim itd. Tek toliko da vidim koje su mu prednosti i mane, a i način rada.

Ovo za PX4, za sada mi je to skupo... Još nemam ideju koji frame, koji motori, propeleri... Ne žurim, do nagodinu ću valjda složiti nešto po mom "ćejfu".  8)

Još jednom hvala. Ako imaj još koju ideju, reci.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 18, 2015, 07:54:07 am
U međuvremenu sam se malo igrao sa RF modulom i napravio primitivni WiFi scanner/spektralni analizator. Još ima dosta mušica, ali barem nešto pokazuje. Kanali i oznake istih se ne podudaraju sa grafikonom ispod, ali za sada okvirno radi. Isto tako, rezoluciju nisam uspio dobiti malo bolju, nego je gruba - slabi signali se ne vide, odnosno ili ih ima ili ih nema. Ne mogu za sada vidjeti koliko su jaki ili slabi.

http://www.youtube.com/watch?v=TfgPcuXhYhQ (http://www.youtube.com/watch?v=TfgPcuXhYhQ)

Kad bude gotovo, javim.

EDIT: Heh, prednost imaju oni koji su se pretplatili (subscribed) na moj YT kanal - ti prvi saznaju što se 'kuha' u mojoj radionici.  :D ;D

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on June 18, 2015, 08:42:18 am
Optički senzor horizonta koristi Revolectrix Co-Pilot II.
DJI Matrix mi izgleda kao da radi na istom principu, obzirom da ima senzore okomito na horizontalnu ravninu.
Spartan je imao neku varijantu FBL-a za heliće na koju se može prikopčati ovaj senzor od revolectrixa.
Nisam vidio da ih ima za arduino.
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 18, 2015, 10:53:32 am
Optički senzor horizonta koristi Revolectrix Co-Pilot II.
DJI Matrix mi izgleda kao da radi na istom principu, obzirom da ima senzore okomito na horizontalnu ravninu.
Spartan je imao neku varijantu FBL-a za heliće na koju se može prikopčati ovaj senzor od revolectrixa.
Nisam vidio da ih ima za arduino.

Ha, vidio sam jedan video, gdje tip tvrdi da taj optički stabilizira helikopter tako da ga teoretski ne možeš slupati zbog dezorijentacije, odnosno navodno bolje stabilizira nego gyro i ostalo. No, gledao sam i cijenu... eh...

Ne znam za arduino, ali senzor kao senzor, ako je to onaj termalni IR senzor, onda se sve može nakačiti na arduino. Ako ne direktno, onda preko nekog dodatnog A/D konvertera.

Hvala za info.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 19, 2015, 09:08:41 am
Evo, i GPS modul je stigao. Malo sam se napatio oko library-ja, nešto radi, nešto ne radi.

[attach=1]

Sat, minute, sekunde nisam vadio onako kako je trebalo, nego kako sam znao. Milisekundi sa ovim library-jem nema (TinyGPS.h), valjda se nikome nije dalo preračunavati, iako u sirovim podacima čitam i milisekunde i brzinu i orijentaciju. Ove tri zadnje varijable jednostavno ne rade. Ajd' što je miliskenunda stavljena na nulu, ali brzinu i orijentaciju bi trebao imati. Visina nije nikako točna, upočetku mi da neku visino od preko 300 metara. Nakon nekog vremena se smanji na vrijednost koja je najbliža onoj sa google maps-a. Ima jedna glupa stvar, ne znam dali je to do modula, ili to tako mora biti; ako stojim stacionarno, nadmorska visina je totalno pogrešna, no kako se počinjem kretati po dvorištu/ulici, polako dolazi na približno točnu vrijednost. Jesam li stao, opet raste. Ili su svi sateliti u tom trenu bili blizu horizonta (to sam čuo da zna zezati), ili ja nemam pojma kako zapravo GPS radi.

Počeo me i kompjuter zezati; miš - lijeva tipka nekad neće, nekad 'okine' više puta, USB prijenos malo radi, malo ne radi sa nekim kablovima.

Sve u svemu, nekako uspijem sve to shvatiti i improvizirati. Ne mogu reći 'napraviti', jer je ovo tek početak mog učenja svih tih senzora. Stigao mi je i vlagomjer/termometar, te dva WiFi modula, no nisam se uspio još pozabaviti s njima. Jedino mi fali 3/6/9 osni žiroskop/akcelerometar/magnetometar (ok, imam magnetometar, ali posebno).

Toliko za sada, javim kad bude noviteta iz moje kuhinje.  ;)

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 23, 2015, 01:19:03 am
Evo, napokon došao do prve radne verzije, iako je još dosta daleko do finalne. GPS tražilica izgubljenog aviona ili quadkoptera.

https://www.youtube.com/watch?v=d4vkqwq-35c

Još da savladam magnetometar, tako da mi se pokazivač smjera okreće onako kako se i uređaj okreće, da ne moram znati gdje je sjever. I da savladam Mancherster kod i napravim predajnu jedinicu koja će ići na avion. Sve to onda testiram, ispravim moguće greške... Najviše mi je muke zadao ovaj GPS, jer sam napravio tako da je kabel kratak, a na prozoru hvatam samo 3-4 satelita, pa udaljenost od izgubljenog modela zna jako varirati. Još uvijek ne znam što ću i kako dodati, ali to će doći samo po sebi kad se ukaže prilika. Planiran je i logger letenja i još štošta ponešta  ;D , no vidjet ćemo u konačnici što ću uspjeti napraviti. Za sada nemam dosta memorije da napravim log (bit će najvjerojatnije na microSD kartici).

Primjedbe, želje, savjeti... sve je dobrodošlo.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 24, 2015, 06:03:30 pm
Prije nego što prolupam udarajući glavom o tipkovnicu (zapelo na matematici) ::) , evo prvog, moglo bi se reći - radnog prototipa 'tra-gaća za izgubljenim stvarima' (znam da je po hrvatskom 'tragač', ali kad razmišljaš o traganju za ženskim gaćicama i vlasnicom istih, onda je tra-gać) :D .

[attach=1]

Problem je u razlici u izvornim podacima; GPS mi daje kut u stupnjevima, ja trebam to pretvoriti u koordinate LCD-a, gdje se koristi funkcija sinus(radian), a onda magnetometar, koji mi daje x/y/z koordinate u nekom proizvoljnom broju - ovisno o jačini magnetskog polja, pa sad trebam te x/y koordinate magnetometra (za kompas funkciju) pretvoriti u stupnjeve... e tu je zapelo. Danima sam se patio sa funkcijom asin() [sin-1] i acos() [cos-1], a tek sam sada skontao da trebam atan() [tan-1]. Naime sve dobro 'radi' na kalkulatoru, jedino je kalkulator podešen da mi prikazuje stupnjeve a ne radijane... i onda nastaje zbunjava (360 stupnjeva = 2 * Pi *  57.296..., gdje je jedan radi(j)an približno  ≈ 57.296°, iako se može uzeti i više decimala).

Za sada, ovo na slici je upotrebljivo, samo ako je kazaljka kompasa poklopljena sa zvjezdicom, onda je ova druga kazaljka sa kružićem oznaka pravca gdje se izgubljena stvar nalazi. Plan je da se napravi da se ne mora usmjeravati uređaj točno na sjever, nego da se ova druga kazaljka automatski pomiče kako pomičem uređaj sa ugrađenim kompasom (taj magnetometar, osi X i Y, a treba dodati i preračun Z osi za kompenzaciju nagnutosti uređaja/zemljinog mag. polja, jer zamljino magnetsko polje ne ide paralelno sa površinom, nego pod nekim kutem - ovisi o zemljopisnoj širini i magnetskom odstupanju u odnosu na zemljopisni sjever).

Toliko za sada.

LP,
milan
---

EDIT: Na slici gore, u pozadini se mutno vidi stolica, koja je postavljena otprilike gdje mi je google maps dao koordinate, a iste sam unio fiksno u Arduino. U konačnoj verziji, to će ići na taj način da će se podaci promptno slati radio vezom, a zemaljska stanica će snimati te koordinate i po potrebi (za lociranje izgubljene letjelice, žene, ljubavnice...) uzeti zadnja snimljena koordinata i preračunati udaljenost i pravac gdje treba tražiti. Udaljenost ne računa Arduino, nego sam GPS modul - samo mu zadam moje koordinate/koordinate letjelice (trenutne ili zadnje primljene). Jednom kad se stigne blizu letjelice (moguće je da se veza prekine, ako letjelicu vjetar odnese predaleko), novi podaci će se uzeti u obzir umjesto starih, snimljenih. Stigao mi je danas čitač microSD kartice, ali ne i kartica... a ne mogu koristiti onu iz Mobius-a (imao sam još dvije, ali sam ih posijao negdje). Točnost ovog najjeftinijeg GPS modula je 5 metara, što je loše u odnosu na bolje modele - 2.5 metara ili manje. No, za probu, kupio sam taj jeftini... jer nisam mogao biti siguran dali ću u opće znati batatati s tim podacima. Ispostavilo se da cijela stvar i nije tako komplicirana, samo se treba sjediti satima (i danima) i analizirati što se zapravo događa i koji podatak treba, koji ne. Nevjerojatno je što se sve može 'iščupati' iz tih podataka.  8)
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 24, 2015, 07:54:52 pm
Joj, skontao srž problema. (ali ne i rješenje)

Ako ima neki matematičar, molim pomoć.

Ova funkcija:

  float rad=57.2957795;
  float xos=((sin(ang/rad))*35+42);//42+42
  float yos=((-cos(ang/rad))*20+24);//24+24

radi, jer je kut "ang" dobiven kao takav u stupnjevima iz GPS modula. Koordinate LCD displeya su maximalno 84x48, pa sam morao skalirati sa x+35 i y+20, sa pozicijom sredine (x=42, y=24). Ovo iza // oznaka su prijašnje probne verzije tipa nagađanja. Ovdje nisam imao problem, jer je vektor uvijek isti, tj. proizvolja vrijednost (ovih 35 za x i ovih 20 za y os, pa mi onda iscrtava pravilni krug umjesto jajastog oblika zbog "aspect ratio" od 84/48=1.75).

A sada imam suprotnu situaciju i potpuno sam zaboravio da je dužina vektora (strellice koja pokazuje pravac, ali i snagu mag. polja) promjenjiva u rasponu od nekih -520 do +520 za x os skoro jednako (ovisi o "bias" korekciji kod kalibracije magnetometra). Iako djeluje da kompas pokazuje točno, ipak nije tako - točan je samo svakih 90 stupnjeva (sjever, istok, zapad, jug). ostalo griješi, jer nisam uzeo dužinu vektora u obzir (valjda se zove dužina ili... ne znam). Greška se manifestira tako što od tih glavnih osi, iscrtana crta "brže leti" preko ekrana na ostalim pravcima. Ništa strašno.

Ne mogu više, iako mi se rješenje nazire, zaista sam prolupao... toliki umni napor... glava boli, rastura. Odoh spavati. Ako ne nađem rješenje, a valjda ima netko na ovom svijetu tko je radio s tim.

LP,
milan
---

EDIT: Opet sam krivo skontao: Ne griješi pri iscrtavanju pravca, nego dužini crte. Kad naginjem magnetometar i kako x i y os idu prema nuli (kad nema magnetskog polja), crta se skraćuje prema sredini, što je u redu i nekako poželjno da vidim kad je kompas nagnut. Iako će u konačnici biti kompenzirano sa z osi, za sada mi je i ovo previše.

Hvala na strpljenju.

EDIT2: Sad vidim da sam izgleda prije ovog pisanja ipak u nekom trenutku bio nadošao na 'pravo rješenje', jedino me zbunjavalo što ponekad ispiše na ekran "NAN", što je oznaka da vrijednost ne postoji, ili INF, što je oznaka da je vrijednost beskonačna (infinity). Ah... to je zato što je stvar pokušala iscrtati kut i prikazati isti kao brojčanu vrijednost, no nisam uzeo u obzir dužinu vektora, pa je rezultat bio ili nula ili beskonačan u nekim trenucima, ovisno kako je senzor bio nagnut. Ovo će mi biti korisno ne samo za ovaj projekt, nego i za buduće radove na quadcopteru, moja varijanta. :)
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 25, 2015, 07:16:11 am
Taman prije nego sam odustao, nadošla mi je ideja... iako još uvijek ne znam implementirati, odnosno mozak samo što ne eksplodira.  :-X

Nikakav tangens, jer recimo, ako gledam moju sjenu, a sunce visoko, tangenta (sjena) će biti kratka i mogu dosta precizno odrediti njenu dužinu. No, kako sunce zalazi, sjena je sve duža i samim time sve teža za odrediti. Jest da sam dobio neke rezultate, ali su isto tako neprecizni pri nekim kutevima.

Odgovor leži u pitagorinom teoremu. C2=A2+B2 , dakle [glow=red,2,300]C=SQRT(A2+B2)[/glow], a kut između A i C je COS[theta]=B/C, tj. [theta]=ACOS(B/C). Jedini problem je sa tim COS i SIN, pošto ovaj koordinatni sustav ima pozitivne i negativne 'krakove', tako da moram IF petlju staviti (točnije njih četiri), tako da moram koristiti sinus i cosinus ovisno o kojem kutu se radi. Iako sam to već prije probao, ali često dobijem na ekranu "NAN", što je oznaka za grešku u računanju (~math error), jer ako mi se pod korijenom [SQRT()] nađe negativan broj, računica je u banani (a podaci sa magnetometra i jesu negativni i/ili pozitivni, ovisi kako se okrene). Ovdje sam se najviše iznenadio kako sam to mogao previdjeti.  :-[ :o A, valjda sam prolupao cijelu noć vrteči kompas okolo naokolo i gledao brojke.

Joj, napokon mogu ići spavati (u ovako sitne sate).  8)   Nisam ništa ni jeo, ni pošteno spavao... ali sam ipak donekle riješio, ili bar znam gdje je bila kardinalna greška.

LN
milan
---

EDIT: Sad sam se sjetio jednog trika, da ne moram IF petlje koristiti; pošto podaci nikad ne prelaze +/-550, mogu pomaknuti još malo više nultu točku 'u stranu' (i po X i po Y osi), recimo +1000, tako da će podaci ispod korijena uvijek biti pozitivni. Onda i samo onda kad se prinese neki jak magnet, onda će se dogoditi da će me snaći na ekranu poruka "NAN", ali u tom slučaju mogu provjeriti: If (x<0||y<0) {izračunaj kut} else print("miči taj magnet dalje od instrumenta!");  ;D Dakle, ako je polje po X i Y osi negativno (čak i sa dodanim 'offset-om', onda će alarmirati da je greška. Ionako bi bila greška čak i da sam cijelu tu proceduru izbacio - kompas bi pokazivao tko zna što, a ne pravi sjever.
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: wirevt on June 25, 2015, 12:12:55 pm
E to se zove upornost, svaka čast! :)
Pratim temu jer i meni je želja malo se igrati arduinom preko zime,, možda i prije,, pa da vidim u što ulazim.
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 26, 2015, 12:37:48 am
E to se zove upornost, svaka čast! :)
Pratim temu jer i meni je želja malo se igrati arduinom preko zime,, možda i prije,, pa da vidim u što ulazim.

Hvala, kolega.

Zašto samo preko zime? Ja sam ovo intenzivirao, jer će mi trebati - ne samo za pronalaženje izgubljene letjelice, nego mislim dodati i log leta. Jedan na avionu, jedan na zemlji. Onaj na avionu će biti 'mandatoran', a onaj na zemlji 'backup' u slučaju da mi avion negdje odleti na jakom vjetru. U teoriji, sve je jednostavno, no ja sam zapeo na relativno jednostavnom matematičkom zadatku - moje nedovoljno poznavanje matematike + ne koristim ju baš prečesto.

Uzmeš barem jedan Arduino nano (uno i sve ostalo je isto, samo ima više prostora na ploči i prilagođeno je gotovom nadogradnjama, ovo se mora staviti na neki 'breadboard' kako bi mogao slagati dodatne elemente. Skineš IDE za pisanje sketch-eva. Sve ti je tipa google search "example". Prvi primjeri su kompleksni, odnosno tako se čini, jer je zbunjujuće oko priključka, no kasnije već uđeš u štos i  znaš da ako je u sketch-u deklaracija neke konekcije recimo (3,4,5) to su nožice na nano/uno/mega broj 3, 4 i 5. Dobro je što su napravili da kod svih verzija arduina, ti su brojevi isti.

Za svaki slučaj provjeriš, recimo da ti je I2C na 27 i 28 (SDA i SCL) - na svim verzijama isti brojevi, iako su priključci fizički na drugoj lokaciji. Priključiš na iste izvode recimo barometar, termometar, i nešto drugo što koristi I2C, a software se brine da komunicira sa određenim senzorom preko specifične adrese za svaki senzor (večinom fiksne, neke se mogu prilagoditi za više od jednog istovrstnog senzora). Čak i ako koristiš recimo dva vlagomjera koji imaju istu adresu, neki od njih imaju CE ili CS (chip enable, ili chip select), a onda sa jednom dodatnom nožicom sa MCU-a prebacuješ s kojeg senzora trenutno očitavaš.

Ja sada svaki primjer prilagodim sebi, recimo LCD je bio na nožicama 8-12, ja stavim 2-6, jer su mi te njihove zauzete. Samo prvi koraci su relativno komplicirani. Prvi projekt ti je da pokreneš LED da blinka. To napraviš za 5 minuta, zajedno sa traganjem za pogodnom LED-icom i žicama. Kasnije ide brzo. Recimo servo, ne moraš znati protokol da bi ga koristio, postoji library Servo.h, deklariraš nožicu gdje je servo sa myservo.attach(9); a poziciju istog mijenjaš sa recimo myservo.write(0); delay(1000); myservo.write(180); - što rezultira postavljanjem servoa u krajni položaj (ovisi, lijevi ili desni, neznam sad točno), a nakon odgode od 1 sekunde, postavlja ga u suprotni krajnji položaj. Jednostavno do bola, kasnije zakompliciraš sa svojim idejama kako da se servo okreće.  8)

Ulaziš u svijet ostvarenja želja. Složiš nekog robota za dan-dva.

Toliko za sada, napokon sam se naspavao, pa idem u rješavanje preostalih zagonetaka oko magnetometra.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 27, 2015, 01:06:45 pm
Evo riješio i kompenzaciju orijentacije uređaja pomoću kompasa.

[attach=1]

Korekcija kuta "cang" se izračunava nekako ovako:

  if (x>0&&y<0){cang=360-acos(-y/sqrt(sq(x)+sq(-y)))*rad;}
  if (x<0&&y>0){cang=180-acos(y/sqrt(sq(-x)+sq(y)))*rad;}
  if (x>0&&y>0){cang=180+acos(y/sqrt(sq(x)+sq(y)))*rad;}
  if (x<0&&y<0){cang=acos(-y/sqrt(sq(-x)+sq(-y)))*rad;}

Morao sam ipak podijeliti na segmente, jer mi ne smije niti jedna os magnetometra doči u minus ispod korijena. Ovako prije nego i počne računati, provjeri vrijednosti, dali su negativne ili ne. Nula nije problem. Ostaje još rad na manchester kod-u, pronalaženju dobrog predajnika i isto tako prijemnika, izrada prijenosa i snimanja podataka... ima još svega pomalo. Uglavnom, ono kritično sam riješio.

Ovaj jeftini kineski GPS je pravo sr***je, kad vidim da sekunde ne idu, onda znam da ne prima dobro sve satelite. Jednom kad se pokrene, onda je dosta točno. Idem sada testirati na otvorenom, ovdje između objekata mi uvijek nekoliko ključnih satelita fali, pa je možda i zato.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: mozgy on June 27, 2015, 02:50:53 pm
E to se zove upornost, svaka čast! :)
Pratim temu jer i meni je želja malo se igrati arduinom preko zime,, možda i prije,, pa da vidim u što ulazim.

Hvala, kolega.

Zašto samo preko zime? Ja sam ovo intenzivirao, jer će mi trebati - ne samo za pronalaženje izgubljene letjelice, nego mislim dodati i log leta. Jedan na avionu, jedan na zemlji. Onaj na avionu će biti 'mandatoran', a onaj na zemlji 'backup' u slučaju da mi avion negdje odleti na jakom vjetru. U teoriji, sve je jednostavno, no ja sam zapeo na relativno jednostavnom matematičkom zadatku - moje nedovoljno poznavanje matematike + ne koristim ju baš prečesto.

Uzmeš barem jedan Arduino nano (uno i sve ostalo je isto, samo ima više prostora na ploči i prilagođeno je gotovom nadogradnjama, ovo se mora staviti na neki 'breadboard' kako bi mogao slagati dodatne elemente. Skineš IDE za pisanje sketch-eva. Sve ti je tipa google search "example". Prvi primjeri su kompleksni, odnosno tako se čini, jer je zbunjujuće oko priključka, no kasnije već uđeš u štos i  znaš da ako je u sketch-u deklaracija neke konekcije recimo (3,4,5) to su nožice na nano/uno/mega broj 3, 4 i 5. Dobro je što su napravili da kod svih verzija arduina, ti su brojevi isti.

Za svaki slučaj provjeriš, recimo da ti je I2C na 27 i 28 (SDA i SCL) - na svim verzijama isti brojevi, iako su priključci fizički na drugoj lokaciji. Priključiš na iste izvode recimo barometar, termometar, i nešto drugo što koristi I2C, a software se brine da komunicira sa određenim senzorom preko specifične adrese za svaki senzor (večinom fiksne, neke se mogu prilagoditi za više od jednog istovrstnog senzora). Čak i ako koristiš recimo dva vlagomjera koji imaju istu adresu, neki od njih imaju CE ili CS (chip enable, ili chip select), a onda sa jednom dodatnom nožicom sa MCU-a prebacuješ s kojeg senzora trenutno očitavaš.

Ja sada svaki primjer prilagodim sebi, recimo LCD je bio na nožicama 8-12, ja stavim 2-6, jer su mi te njihove zauzete. Samo prvi koraci su relativno komplicirani. Prvi projekt ti je da pokreneš LED da blinka. To napraviš za 5 minuta, zajedno sa traganjem za pogodnom LED-icom i žicama. Kasnije ide brzo. Recimo servo, ne moraš znati protokol da bi ga koristio, postoji library Servo.h, deklariraš nožicu gdje je servo sa myservo.attach(9); a poziciju istog mijenjaš sa recimo myservo.write(0); delay(1000); myservo.write(180); - što rezultira postavljanjem servoa u krajni položaj (ovisi, lijevi ili desni, neznam sad točno), a nakon odgode od 1 sekunde, postavlja ga u suprotni krajnji položaj. Jednostavno do bola, kasnije zakompliciraš sa svojim idejama kako da se servo okreće.  8)

Ulaziš u svijet ostvarenja želja. Složiš nekog robota za dan-dva.

Toliko za sada, napokon sam se naspavao, pa idem u rješavanje preostalih zagonetaka oko magnetometra.

LP,
milan
---

Aheheh, kao da čitam prva poglavlja Arduino tutoriala ! :)

Super sve izgleda, samo dalje ! Osobno sam malo više zagrizao s ESP8266 ..

--
Mozz
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 27, 2015, 11:33:03 pm
Aheheh, kao da čitam prva poglavlja Arduino tutoriala ! :)

Super sve izgleda, samo dalje ! Osobno sam malo više zagrizao s ESP8266 ..

--
Mozz

Ne znam zašto forsiram članke oko Arduina... Mislim da bi svatko trebao barem probati. Iako programiranje mikrokontrolera zvuči zastrašujuće i komplicirano, valjda sama riječ programiranje.. ne znam. No, zapravo se radi o copy/paste primjera i prilagodba istih. Nema što se ne može napraviti, samo treba malo vremena i dobre volje. Programski jezik C++ je relativno jednostavan, bitno je skontati strukturu, osnovne postavke, uključiti librarije za određeni zadatak i početi pisati.

Za početak imaš pregršt primjera (examples):

[attach=1]

Ono čega nema u tim primjerima, ima na YT i općenito na internetu (google). Netko je već radio na nečemu sličnom, tvoje je da si to prilagodiš za svoje potrebe. Jednom kad uđeš u štos, uključiš kreativnost i praviš čuda da ti se ljudi dive i 'skidaju kapu'. Kad zapneš, uključiš se u Arduino forum, pošalješ kod gdje si zapeo i netko će ti već odgovoriti u čemu je greška.

Senzora, releja, servoa, stepper motor pojačala/drivera i drugih priključaka ima pregršt, ovisi što ti treba (uglavnom eBay, ali ne isključivo). Načini komunikacije s tim dodacima su; UART, SPI, I2C, PWM, analogni i digitalni pinovi.

U početku uzmeš Arduino koji ima USB, tako da ti je programiranje brzo i lagano. Jednom kad savladaš tehniku, onda pređerš na Arduino PRO i programiraš sa recimo USBasp programatorom (par dolara). Razlika je ta što ti za USB treba bootloader (već je 'upržen') koji 'krade' oko 1 KB memorije, a Arduino pločica na sebi ima (nepotrebni) USBasp programator (s druge strane, suprotno od Atmel MCU-a). Na pločici je minimalan broj dijelova, a težina istog je pogodna za stavljanje na razne letjelice. Za aute, brodove, podmornice... manje bitno. Isto tako, bez USB porta je manji, pa ga možeš ugraditi u štogod već želiš.

Nakon toga, sljedeći korak ti je Atiny, čip sa samo 8 nožica (bilo da je na pločici sa bootloader-om ili samostalan), pa si napraviš razna pomagala. Recimo ona pištalica za indikaciju niskog napona LiPo baterije ima upravo taj čip. Servo tester isto. I još puno uređaja, iako neke se ne isplate praviti jer je kinez to već napravio.  :) Nisam siguran, ali ova LED svjetla sa jednim dugmetom (LED lampe za bicikl, zadnje svjetlo), sve one idu manje više na taj čip (iznimke su rijetke sa PIC MCU-om). Dakle, jednom kad ti krepa lampa, imaš besplatan čip, samo ga izvadiš, staviš na neku pločicu (ili viseće na žicama) re-programiraš i imaš 'igračku'.

ESP8266 je luda stvar isto kao i nRF24. Mašta ti je jedini limit.  8)

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: 4tm on June 27, 2015, 11:38:46 pm
Mićo ne forsiraš-dapače treba  takvih projekata ovdje da se svi malo zainteresiramo oko samogradnje raznih pomagala za naše modele.
AKo ne komentiramo tvoje postove ne znači da ih ne čitamo i uživamo u njima..
Samo nastavi područje je interesantno.....očekujem neki jednostavniji autopilot za home-made modele da ne kupujemo vanka.....testirajmo naše.... :)


73
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 28, 2015, 12:21:40 am
Mićo ne forsiraš-dapače treba  takvih projekata ovdje da se svi malo zainteresiramo oko samogradnje raznih pomagala za naše modele.
AKo ne komentiramo tvoje postove ne znači da ih ne čitamo i uživamo u njima..
Samo nastavi područje je interesantno.....očekujem neki jednostavniji autopilot za home-made modele da ne kupujemo vanka.....testirajmo naše.... :)


73

Hvala na komplimentu, mislio sam da sam dosadan i naporan... a ispada da ljudi vole čitati o nečemu malo drugačijem od modela i sličnog.

Nastavit ću, za sada sam uzeo jedan od možda malo (pre) zahtjevnijih zadataka - ovaj Lost Plane Locator/GPS Data Logger. U međuvremenu, kad mi ponestane ideja, radim na WiFi skaneru, malom robotu na četiri kotača (svaki ima pogoon), hakiranju ovih igračaka, tj. njihovih protokola za komunikaciju. Iako postoji gotova stanica Walker Devo sa pregršt modela, želim baš svoje. Meteorološka stanica, za nju još nisam našao rješenje za brzinu vjetra, ali i to ću nekako skontati kad nađem vremena. Za variometar, precizni barometar je tu, ali opet sam kratak sa vremenom, jer sam bio zapeo oko osnovnoškolske matematike pitagorinog poučka.  :-X I još puno sitnih projekata koje bi želio raditi... Recimo taj autopilot, a ne bi bilo loše ni planer leta napraviti. Nije to toliko teško, samo se mora sjesti i dobro razrditi plan, vidjeti što je sve potrebno i napraviti probni model. Nemam ni motore za quad (imam samo one majušne sa četkicama, ali to jedva sebe i bateriju nosi), ni ESC-ove, fali mi još žiroskop i pokoja sitnica. Za sada je puno stvari na listi čekanja (i želja).

U pravu si što se tiče 'naših domaćih' proizvoda. Pošto ne stignem sve sam napraviti, bilo bi super da se još netko sa foruma (ali nije uvjet da bude isključivo sa foruma) uključi u to, pa da svi zajedno napravimo nešto svoje, nešto što će svatko moći prilagoditi svojim potrebama za model, ali i za ostale svakodnevne situacije. 

EDIT: Još uvijek brkam pojmove oko kontrolera i stabilizacije modela, autopilota i planera leta. Recimo pod autopilot, dali tu spada i jednostavna funkcija RTH? Mislim, samo se na avionu/quadu zada 'home' lokacija, a ako izgubi signal i/ili prebacimo prekidač na stanici, onda se vraća doma i ostane kružiti na nekoj visini sve dok ne preuzmemo nazad kontrolu. Tu je jedino problem što se nisam bavio parametrima letenja - koliko brzo da okrene (avion), na kojoj visini, kojom brzinom da se vraća,...

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 28, 2015, 12:57:58 am
4tm mi je dao odličnu ideju za razmišljanje i razmatranje. Autopilot. Iako imam jedan GPS modul, dosta je neprecizan - uzeo neku jeftinjaru na Banggood-u, gdje mu je odstupanje do 5 metara, a tvoriničke postavke su mu 1 sekunda update podataka. Za sada još nisam uspio skontati kako da to ubrzam na maksimum od 10 vrijednosti u sekundi, a bilo bi lijepo. Prvo bi stavio flight/datalogger na svoj avion, pa odletio par letova i kasnije analizirao brzine leta, visinu, nagib (uh, za ovo mi treba gyro/acc, nisam ni naručio jer nemam love do 10. u sljedećem mjesecu [mirovina]).

Iako je na većim visinama odstupanje od plana tih 5 metara gotovo zanemarivo, ipak ne bi volio da mi avion ili quad ševeri lijevo/desno. Visinu obavezno sa barometrom/altimetrom. A i zračna brzina je upitna na GPS modulu, bio bi bolje onaj senzor (ne znam točno kako se zove, neki diferencijalni barometar sa cijevčicama). Ima ga za kupiti, jedino je malo preskup. Odnosno, te novce koje ću uskoro imati... moram nekako optimalno rasporediti.

Dio podataka za autopilot i/ili planer leta (točke leta [waypoint] i slično će ići na microSD ili SD karticu (ili što god već), a dio na EEPROM (osnovne rutine, kao što su; koliko letjelica treba dugo ubrzavati/usporavati/penjati se/ponirati, pod kojim nagibom [aileroni, rudder, elevator], koliko gasa i slično). Već vidim da je taj projekt jedan od zahtjevnijih. RTH je možda i jednostavan, no bilo kakav ozbiljniji planer leta... ne znam. S druge strane, ima gotovih rješenja, ali ono što sam vidio je poprilično skupo.

Osim toga, treba mi dosta vremena da 'probavim' sve ovo do sada što sam radio i vidjeti što se s čim može kombinirati.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 28, 2015, 04:26:00 pm
A evo i brzog kompletiranja već gotovog programa: variometar

https://www.youtube.com/watch?v=C6IYakTN8DY

Sastavio za nekih 5-6 minuta. Nevjerojatno luda stvar!

Daljnje smanjivanje gabarita i dimenzija će uslijediti kad mi stigne Arduino Pro Mini... ok, još ga nisam naručio, ali jednog dana...  ;D

Danas prije kiše malo testirao 10 mW predajnik na 433 MHz. Ide lijepo - iz kuće sa dipol antenom (kroz hrpu zidova), zadnji podatak (manchester) primio na oko 270 metara na 4800 bauda (čitaj: boda). Taman kad sam htio testirati na manjim brzinama prijenosa, počela dosadna kiša. Vrijeme je za spavanje, a onda opet cijelu noć za mozganje.  8)

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: mozgy on June 28, 2015, 11:32:01 pm
Mićo ne forsiraš-dapače treba  takvih projekata ovdje da se svi malo zainteresiramo oko samogradnje raznih pomagala za naše modele.
AKo ne komentiramo tvoje postove ne znači da ih ne čitamo i uživamo u njima..
Samo nastavi područje je interesantno.....očekujem neki jednostavniji autopilot za home-made modele da ne kupujemo vanka.....testirajmo naše.... :)


73

Hvala na komplimentu, mislio sam da sam dosadan i naporan... a ispada da ljudi vole čitati o nečemu malo drugačijem od modela i sličnog.

Nastavit ću, za sada sam uzeo jedan od možda malo (pre) zahtjevnijih zadataka - ovaj Lost Plane Locator/GPS Data Logger. U međuvremenu, kad mi ponestane ideja, radim na WiFi skaneru, malom robotu na četiri kotača (svaki ima pogoon), hakiranju ovih igračaka, tj. njihovih protokola za komunikaciju. Iako postoji gotova stanica Walker Devo sa pregršt modela, želim baš svoje. Meteorološka stanica, za nju još nisam našao rješenje za brzinu vjetra, ali i to ću nekako skontati kad nađem vremena. Za variometar, precizni barometar je tu, ali opet sam kratak sa vremenom, jer sam bio zapeo oko osnovnoškolske matematike pitagorinog poučka.  :-X I još puno sitnih projekata koje bi želio raditi... Recimo taj autopilot, a ne bi bilo loše ni planer leta napraviti. Nije to toliko teško, samo se mora sjesti i dobro razrditi plan, vidjeti što je sve potrebno i napraviti probni model. Nemam ni motore za quad (imam samo one majušne sa četkicama, ali to jedva sebe i bateriju nosi), ni ESC-ove, fali mi još žiroskop i pokoja sitnica. Za sada je puno stvari na listi čekanja (i želja).

U pravu si što se tiče 'naših domaćih' proizvoda. Pošto ne stignem sve sam napraviti, bilo bi super da se još netko sa foruma (ali nije uvjet da bude isključivo sa foruma) uključi u to, pa da svi zajedno napravimo nešto svoje, nešto što će svatko moći prilagoditi svojim potrebama za model, ali i za ostale svakodnevne situacije. 

EDIT: Još uvijek brkam pojmove oko kontrolera i stabilizacije modela, autopilota i planera leta. Recimo pod autopilot, dali tu spada i jednostavna funkcija RTH? Mislim, samo se na avionu/quadu zada 'home' lokacija, a ako izgubi signal i/ili prebacimo prekidač na stanici, onda se vraća doma i ostane kružiti na nekoj visini sve dok ne preuzmemo nazad kontrolu. Tu je jedino problem što se nisam bavio parametrima letenja - koliko brzo da okrene (avion), na kojoj visini, kojom brzinom da se vraća,...

LP,
milan
---

Složih WiFi scanner s OLED, super fora - https://github.com/mozgy/esp8266/tree/master/WiFi_OLED

--
Mozz
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on June 29, 2015, 07:18:16 am
Mozgy, to super jednostavno izgleda. I taj oled ima barem 128x64 pixela, ne kao ovaj nokija 5110 samo 84x48, tako da je teško bilo kakvu pristojnu grafiku napraviti. Jedino je problem što sam naručio dvije pločice Atiny85, pa mi je ostalo samo 11 lipa na računu, a do mirovine 11 dana. Pa onda čekanje dok se kinez smisli poslati...

Sinoć (tj. noćas, cijelu noć) sam paničario - probao sam USBasp da vidim dali s njim mogu programirati Arduino nano. Neku grešku je izbacio tipa nadogradnje firmwarea, pa sam onda otišao na YT da vidim kako i zašto. Onda skinuo "eePe" program, i napravio brljavu. Nakon toga ni Arduino IDE ni USBasp mi nisu radili. Obrisao taj eePe, re-instalirao arduino IDE (i usput obrisao sve moje librarije, jer su bili pod 'program files' a ne u my documents, kako sam kasnije skontao da je bolje.

Na kraju je ispalo da je zapravo greška nastala kad sam pokušao jedan arduino nano koristiti kao programer za re-programiranje USBasp-a, pa se bootloader pobrkao. Iako je ostao na mjestu, neki od bitova su mu valjda pobrkani, pa je cijela stvar postala komplicirana: nisam mogao više niti jedan arduino programirati, tj. upload .hex filea. A nije radilo ni "burn bootloader" iz arduino IDE sučelja.

Riješio sam tako što sam pomoću "Hazama AVR programmer-a" skinuo ispravan bootloader sa druge pločice, pa ga 'upržio' na ovu pobrkanu. Sad sve radi.

Original variometar od Rolf R. Bakke-a je preko 8 kilobajta dugačak, ne stane u Atiny85. Onda sam pobrisao dosta toga, uglavnom serijsku komunikaciju sa kompjuterom, gdje se ispisuju poruke tipa "senzor nije priključen" i slično. Ionako samostalan rad tog MCU-a ne treba nikakav monitor. Sada je sve to oko 6.6 kilobajta, komotno stane u Atiny85 čak i sa 1 KB bootloader-om.

Kad nabavim taj čip (za sada sam naručio samo gotovu razvojnu pločicu sa tim čipom), onda taj programčić strpam u njega, stavim 433 MHz predajnik (koji ide na 3.3V, ali sam ga uspio pokrenuti na 5V bez pregaranja, pod uvjetom da radi impulsno !!!) i sve to zaštititi onom skupljajućom plastikom. Tako da će ići na klizač na 5V sa prijemnika.

Prijemni dio 433 MHz još moram probati dodati malo pojačalo sa jedan ili dva tranzistora i dodati neki majušni zvučnik, te bateriju do 5V (ne treba nikakav arduino na prijemnoj strani. Sve to planiram montirati na šiltiku (!) odmah do Mobius kamere, tako da mi je uvijek pri uhu.  8) prvo ću probati na MiniMag-u, a kasnije ću već vidjeti kad ću napokon dovršiti MiMi-ja. To je još prošle godine zapelo i nekako sam se ohladio, no uskoro planiram nastaviti. Tako da ću moći bez problema hvatati termale.

Za sada, sa ovim arduino nano bi bilo preteško, sama pločica je preko 7 grama, barometar oko 1.4 i prdajnik oko 1.1 gram (ovo dvoje i manje kad se poskidaju pinovi i drito zalemi žica). Mislim da će u konačnici biti oko 3-5 grama.

LP,
milan
---

EDIT: Čak sam mislio žrtvovati atiny iz alarma za LiPo bateriju, ali tamo je Atiny13, koji ima smao 2 kilobajta. Nažalost ne ide. Otvorio sam dvije svjetiljke, e sad... to su čipovi bez enkapsulacije, samo je neka smola stavljena preko njih. Nigdje da nađem bar jedan Atiny85, nemam neko brzo rješenje...
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on July 17, 2015, 07:53:31 am
Napokon su se stvari pomaknule s mjesta. Jedan od projekata; Vario by Rolf R. Bake. Pokušao sam ga skupiti na Attiny85, mali čip, jeftin i što je najvažnije lagan.

Recimo Arduino nano teži preko 7 grama, to mi ne odgovara za recimo manji klizač tipa MiMi ili slično. Danima sam se patio sa librarijem i greškama koje mi pokazuju, a evo jutros to sredio. Greška je bila u podršci za Attiny85, točnije u uputstvu za instalaciju: Navedeno je kako iz datoteke "Prospecive Boards.txt" treba copy/paste u Arduino folder u datoteku "Boards.txt" nadodati taj dio. Da ga slikaš to ne radi. Onda sam uspio naći drugu podršku za Attiny85, ali to je neka 'okljaštrena' verzija sa MIT instituta - dosta stvari ne radi.

Rješenje je da taj prokleti Boards.txt treba biti unutar /Tiny direktorija, odnosno preimenovati "Prospective Boards.txt" u Boards.txt i ostaviti tamo gdje jeste, a ne kao u uputstvu da se premjesti.

Sad radi, jedino imam neki problem (brujanje) svakih 14 milisekundi - točno toliko barometar šalje podatke, svakih 14 milisekundi. Trebam još samo naći način da isključim očitanje barometra (ako je moguće) dok se ton proizvodi. Ili drugo rješenje: slati 'sirove' podatke preko radio veze na 433 MHz u manchester kodu, a onda to pretvoriti u zvučnu indikaciju. Prednost ovog drugog načina je što je moguće dodati telemetriju, tj. indikaciju visine, jer se u sirovim podacima može ugurati i tlak i temperatura, te korekcija očitanja tlaka zbog promjene temperature na senzoru.

Oh, sad mi je lakše, sad mogu krenuti sa 'pravim' radom.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on August 10, 2015, 12:31:19 am
Quote

Složih WiFi scanner s OLED, super fora - https://github.com/mozgy/esp8266/tree/master/WiFi_OLED (https://github.com/mozgy/esp8266/tree/master/WiFi_OLED)

--
Mozz

Ajme, ovo je zbrda zdola, ne mogu naći 'user_interface.h' library. Gdje da to tražim?

Oprosti, ali me zadnja dva dana toliko boli glava da ću poludjeti. Jučer sam se cijelli dan patio sa ovim glupim motorima iz Banggood-a, pukao mi je imbus kluč jer sam stavio onaj glupi thread locker, pa sad ni vamo ni tamo. A ključ je 1.5 mm. Trgovine tek ujutro... eh, kad ja počnem raditi nešto subota popodne...

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 06, 2016, 10:48:45 pm
Ok, čini se da je došlo vrijeme da se vratim malo ozbiljnije na Arduino programiranje. Iako je prošlo više od 120 dana, ne želim načimati novu temu. Ova stara mije još dobra.

Evo, napokon nekako skontao manchester kod, tj. umjesto manchester.h upotrijebio virtualwire.h i stvar radi bez greške na 433 MHz.
 Baro senzor je MS5611 i radi odlično. Trebalo mi je dosta ta preopravim variometar od Rolf R. Bakke (kreator KK2 kontrolera) i poboljšam neke stvari. Ima još dosta za doradu, no prvi radni model je tu:

http://www.youtube.com/watch?v=UbrJFCluapo (http://www.youtube.com/watch?v=UbrJFCluapo)

Za sada ima samo OLED i visinu izraženu u feet-ima i metrima, pored tlaka na razini letjelice. Ima i ID, tako da će možda sljedeća verzija imati selekciju, ako bude više letjelica u istom zračnom prostoru. Do sada testirao domet kroz zidove - ide preko 300 metara... niako da se oslobodim tih prokletih poljoprivredno-proljetnih poslova... i da stavim to van i testiram biciklom dokle ide na otvorenom (10 mW predajnik na 433 MHz).

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on April 07, 2016, 08:52:58 am
Ima neki razlog zašto baš taj barometar?
Ja sam koristio BMP 085/180/280.
Došao sam do zaključka da ili 085 ne radi kako treba ili su konstante upisane u njega neispravne. Imam samo jedan, tako da može biti slučajno.
I još me zanima kako preračunavaš tlak u visinu? Do koje visine?

Pozdrav
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 07, 2016, 10:31:43 am
Ima neki razlog zašto baš taj barometar?

Ima. MS5611 ima šum tek 10 cm preračunato, dok ostali imaju 1 metar. Za meteorološke stanice se može napraviti average, tako da se smanji taj šum, no za letjelice je ovaj bolji. Osim šuma, ima brži ADC konverter i brže radi. Ovisi koliko preciznosti želiš.

Quote
Ja sam koristio BMP 085/180/280.
Došao sam do zaključka da ili 085 ne radi kako treba ili su konstante upisane u njega neispravne. Imam samo jedan, tako da može biti slučajno.

I ja sam isto radio, ali bez ikakvih konstanti, samo odgovarajući library, bez temperaturne kompenzacije. Za neku osnovnu funkciju barometra - samo tlak i temperatura, sasvim dovoljno. Za neku recimo meteo stanicu.  Moguće da je čip neispravan ili su varijable krivo učitane. Mora se konzultirati PDF za dotični senzor. Ima tu sitnih caka...

Quote
I još me zanima kako preračunavaš tlak u visinu? Do koje visine?

Pozdrav

altitude_ft=145366.45*(1-pow(((P/(float)100)/(setpress/(float)100)),0.190284));

https://en.wikipedia.org/wiki/Pressure_altitude (https://en.wikipedia.org/wiki/Pressure_altitude)

Korištena formula za visinu u stopama. Za metre, jednostavno pomnožiš tu vrijednost sa 0.3048:

display.print(altitude*0.3048,2); ili altitude_meters = altitude*0.3048,2;

Ovo gore (float)100, to je konverzija, jer mi predajnik šalje onako kako je senzor očitan, bez decimalne točke, pa ga onda dijelim sa 100, a da bi dobio pravilan broj, "long" se pretvara u "float".

Prvo sam izgubio živce sa ovim kolor TFT displayom, a na kraju skontao da je to sporo do bola i da je taj display samo za "photo frame" i ništa drugo. Eventualno neka spora grafika.

OLED je bolji, ali nema na sebi buffer, tj. memoriju slike u koju se iscrtava (kao na primjer Nokia 5110 koji to ima), a onda se kompletna slika prenese na ekran. Zato mi kompajler stalno šalje poruku da može doći do nestabilnosti. I dolazi: povremeno su cifre pogrešne pri paljenju, pa se mora tipka reset na Arduino nano. Komande za Nokia 5110 su slične, ali ne iste.

Naručio sam nešto superiška, samo kad stigne: Nextion display, 320x240. Odlična stvar, ima na sebi 2 MB RAM, 4 MB Flash RAM, a komunikacija je sa USART (UART), dakle samo 4 žice. Ikone i ostale sličice, recimo pozadina, pohrani se u flash, a poziva po potrebi. Osim toga ima touch screen, no samo onaj za plastičnu olovku. Ne i za prste.

Super stvar samo skupa. Ovaj OLED je malo taman za sunce, pa se i ne vidi najbolje, ali odlično radi i malo troši. Nokia 5110 LCD je još bolji... samo... zna se dogoditi da izgubi kontakte... no o tom-po tom...

LP,
milan
---

P.S. Još nisam stigao nacrtati dijagram prijemnika, no sličan je Arduino vario (samo su brojevi pinova drugi).

Više na mojoj web stranici:

http://wildlab.org/index.php/2016/03/11/arduino-altimeter/ (http://wildlab.org/index.php/2016/03/11/arduino-altimeter/)

http://wildlab.org/index.php/2015/07/07/arduino-variometer/ (http://wildlab.org/index.php/2015/07/07/arduino-variometer/)


Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 07, 2016, 10:33:31 am
Oh, zaboravih... do visine gdje je tlak 10 mbar, a to je ~stratosfera... to se neće tako lako dosegnuti. :D

Mislim da ovaj tvoj može skoro do totalnog vakuma, ali je zato manje precizan.

EDIT: Uh, kad sam već načeo novi odgovor...

Ovo sa wikipedije je zbunjujuće:

Tlak od 1013.25 je neki 'standardni' tlak pri 25°C na razini mora. Kod mene sam koristio varijablu 'setpress', kad se tipka stisne, trenutno mjereni tlak se kopira u desni dio razlomka, a novi mjereni se stalno mijenja i stavlja u  lijevi dio. To je dakle setiranje nule prije leta. Tijekom leta, tlak će padati, pa će vrijednost biti pozitivna. Ukoliko se leti recimo sa neke visoke točne na brdu ili planini, vrijednost je negativna. Isto tako, ovo je rezultat u stopama, netko je na to navikao, ja nisam. Jednostavno taj rezultat pomnožiš sa 0.3048 i to je to u metrima.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on April 07, 2016, 10:50:57 am
Baš sam jučer naletio na Nextion i stvar mi se svidjela.
Naravno više bi volio da netko drugi skuži kak se koristi pa da mogu pitat što i kako ...  :)

P
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 07, 2016, 11:00:52 am
Baš sam jučer naletio na Nextion i stvar mi se svidjela.
Naravno više bi volio da netko drugi skuži kak se koristi pa da mogu pitat što i kako ...  :)

P

I ja sam dobio info od prijatelja daje luda stvar. Ne znam, treba stići za nekih 10-tak dana sa Aliexpress-a. Onda ti javim.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on April 07, 2016, 11:12:29 am
BTW čitam na Adafruit stranicama, za BMP280, noise 0.25m, accuracy +-1m. Uzeo sam jedan pa ću vidjeti jel se bolje poklapa sa meteorološkim očitanjima.
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: davor on April 07, 2016, 11:22:16 am
Treba proučiti ovu sliku, pa će ti biti jasnije o čemu se radi oko visine, elevacije, "Mean Sea Level".
Uglavnom nisam pilot, ali sam ja to shvatio ovako: polećeš po QFE visini, gdje ubaciš u visinomjer tlak okoline koji dobiješ od kontrolnog tornja (visinomjer ti tada mora pokazivati 0), nakon nekog vremena prelaziš na QNE (ubaciš u visinomjer vrijednost standardne atnosfere  1013.25 - sada visinomjer očitava elevaciju), kad se približiš aerodromu odredišta, prelaziš opet na QFE prema tlaku koji ti jave sa tornja (onda ti visinomjer očitava visinu do piste). Za naše primjene, važan je samo QFE jer je polazišna točka i odredišna.

[attachimg=1]
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 07, 2016, 01:06:44 pm
BTW čitam na Adafruit stranicama, za BMP280, noise 0.25m, accuracy +-1m. Uzeo sam jedan pa ću vidjeti jel se bolje poklapa sa meteorološkim očitanjima.

Poklapa se na razini postaje. Da bi na tvom očitanju vidio ono što je na recimo DHMZ-u, onda moraš malo formulu preraditi i staviti tvoju trenutnu visinu. Recimo, bilo je nekada na google maps visina, sad više ne vidim. Meni je 82 metra + nekih 3 metra prizemlje + 0.75 metara stol. Kad bi onda napravio korekciju izmjerenog da mi pokazuje apsolutni tlak, tj. dogovorni tlak, tek onda bi se poklapalo sa bilo kakvim međunarodnim očitanjima. Sada mi na stolu očitava 1000.1 hPa, dok je na najbižoj postaji RC Gradište (kod Županje) 1009.2, a RC Osijek-Čepin 1009.7 hPa. Dakle razlika je nekih 8.35 hPa (ili mbar, svejedno). To je ekvivalent visine: (0.3048*145366.45)*(1-(1001.1/1009.45)0.190284)=69.98 metara. Nije 85 metara, ali je dovoljno točno u odnosu na očitanje tlaka za koje ne znam kad je točno napravljeno, a trenutno se tlak mijenja zbog promjene vremena (najavljena kiša).

EDIT: Evo, dok sam ovo pisao i ispravio greške, tlak je pao na 999.9 hPa, a prije pisanja setirao visunu nula metara, sad je oko 2 metra... Dakle, to je dovoljno točno. Za pravo testiranje bi bilo dobro izabrati dane kad je ta promjena najmanja, a bilo bi lijepo imati i telefonsku vezu s nekim tko ima kallibrirani barometar, pa onda usporediti očitanja. Ovako, i 15 minuta je dovoljno da se sve skupa ne slaže.

EDIT2: Heh, završio prvu korekciju (edit) a evo, sad mi pokazuje razliku od 2.3 ... oh, 2.4 metra). Bit će kiše uskoro! :D

 LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 07, 2016, 01:11:20 pm
Treba proučiti ovu sliku, pa će ti biti jasnije o čemu se radi oko visine, elevacije, "Mean See Level".
Uglavnom nisam pilot, ali sam ja to shvatio ovako: polećeš po QNF visini, gdje ubaciš u visinomjer tlak okoline koji dobiješ od kontrolnog tornja (visinomjer ti tada mora pokazivati 0), nakon nekog vremena prelaziš na QNE (ubaciš u visinomjer vrijednost standardne atnosfere  1013.25 - sada visinomjer očitava elevaciju), kad se približiš aerodromu odredišta, prelaziš opet na QNF prema tlaku koji ti jave sa tornja (onda ti visinomjer očitava visinu do piste). Za naše primjene, važan je samo QNF jer je polazišna točka i odredišna.

Ovo sve pada u vodu, jer ja osobno ne letim između dva aerodroma, pa mi ne treba usklađivanje parametara. Meni je dovoljno da setiram nulu kad mi je recimo quadcopter na zemlji... i to je to. A bit će nula na onom tlaku koji je tada prisutan. Imam u planu ugraditi još jedan barometar u baznu stanicu u slučaju dužih letova, recimo sat vremena i slično. Za ovih 10 minuta leta.. nema potrebe - ni najjača promjena vremena ne rezultira u većoj grešci od recimo 1 metar. Ovo nije za automatsko sllijetanje, nego tek toliko da zam do koje sam visine letio taj dan.

Ok, mogu to proučiti onako razonode radi. Nisam profi pilot, niti namjeravam biti. :D

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 09, 2016, 09:45:37 pm
Prvi od dva dijagrama nacrtan. Još ima dosta toga što ću promijeniti. Na primjer, na predajnoj strani ću probati mjeriti napon baterije na quadu, pa će na prijemnoj stanici biti opcija pokazivanja statusa baterije + moguće i neki zvučni alarm.

http://wildlab.org/index.php/2016/03/11/arduino-altimeter/ (http://wildlab.org/index.php/2016/03/11/arduino-altimeter/)

Ovaj projekt je donekle besmislen za one koji imaju "hobby grade", ili velike quadcoptere sa svom opremom, no za male aviončiće i "toy grade" quadcoptere itekako ima smisla. Možda netko i nije zainteresiran za letenje u visine (kao što ja jesam), ali će bar "svirati" na prijemnoj strani kad se baterija bliži kritičnoj razini. Cijeli projekt se odužio previše zbog okolokućnih poljoprivrednih radova. :D Zahvaljujući ovom zahlađenju, projekt se nastavlja.

Prijedlozi, komentari i sugestije dobrodošli.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 17, 2016, 08:46:45 am
Evo, sklepao predajni dio u jednu cjelinu. Radi bez greške... iako, treba testirati na quadu, avionu i raketi. :D

https://www.youtube.com/watch?v=Kc_ErPZ0KT4

Prijemni dio još nije gotov. Ovaj OLED display me zeza, tj. arduino nano ima pretrpanu memoriju, pa ponekad pokazuje brojke bez veze. Još čekam LCD i onaj famozni Nextion da stignu. No i ovo će za prvu ruku biti okay.

LP,
milan
---
Title: Odg: Arduino projekti - weather station, ardupilot, GPS, i ostalo
Post by: vedronebo on April 17, 2016, 04:02:15 pm
Oh, zaboravih dati URL za pregledavanje što je novoga na ovom projektu. U zadnje vrijeme radim na puno toga, pa onda malo u vrtu, pa na druge strane... sav sam smotan i smušen.

http://wildlab.org/index.php/2016/03/11/arduino-altimeter/ (http://wildlab.org/index.php/2016/03/11/arduino-altimeter/)

Još nema prijemnog dijagrama, to sam ostavio zadnje, jer je lakše na predajniku od 8 nožica odabrati koja će biti korištena, dok na arduino nano ima pregršt nožica, a pošto će ovaj projekt rasti, ne bi želio nepotrebno prekrajati dijagram i program. Iako nije frka, ali opet... Moram sjesti i zagrijati stolicu kako su nam to govorili kad smo išli u školu - i napraviti raspored žica tako da bude logično i da bude praktično. Na primjer, neki od ulaza/izlaza su analogni, neki specifični za ISP, neki za ovo, neki za ono... A ja sam ubadao na nožice onako kako mi došlo...

Ne znam, ili da napravim dijagram kako je, pa da prekrajam kasnije? Ima li netko neku ideju?

LP,
milan
---