Arduino ProMini+GPS cu posibilitate de RTH
#1
Postat 01 November 2014 - 12:29 PM
Asa ca, am o intrebare:
Vreau sa foloesc la o barca de nadit un modul Arduino ProMini 5V, 16MHz, Atmega 328, la care vreau sa-i adaug un GPS.
De ce? Dupa ce duc barca in locul stabilit, vreau sa activez functia ReturnToHome.
Nu mai vreau sa tot stau cu radiocomanda in mana.
RC am un Turnigy9x cu modul frsky.
Ma puteti indruma cu privire la ce tip de GPS ar fi compatibil cu aceasta placa de dezvoltare respectiv de ce as mai avea nevoie si cum sa le configurez?
https://www.youtube....HuEcHGiek&t=14s
Quad S500 cu Naza V2
EasyGlider Pro
#2
Postat 01 November 2014 - 01:41 PM
I2C converter
Am si eu unul de facut pentru o placa cu 328 dar inca nu n-am apucat de el.
+ un GPS dupa buget :rolleyes:
#3
Postat 01 November 2014 - 05:38 PM
Pe un 2560, adica APM, ti-as fi zis ArduBoat, dar pe un 328...:unsure:
#4
Postat 01 November 2014 - 05:44 PM
https://www.youtube....HuEcHGiek&t=14s
Quad S500 cu Naza V2
EasyGlider Pro
#5
Postat 01 November 2014 - 07:45 PM
p_cipri, la 01 November 2014 - 05:44 PM, a spus:
interesant... citeam undeva, candva ca s-ar putea folosi modul "AIRPLANE" (#define AIRPLANE in config.h) ca ca controlezi o barca. carma / yaw si turatia motorului / throttle, nu?
fa prima data barcuta sa raspunda la comenzi folosind multiwii si apoi, intr-adevar poti sa incerci sa-i agati un ublox printr-un i2c. pentru rth.... ce trebuie scris in i2c si in gps gasesti parca pe pagina proiectului multiwii.
tine-ne la curent cu progresele tale, p_cipri
Aceasta postare a fost editata de gabizz: 01 November 2014 - 07:49 PM
#6
Postat 03 November 2014 - 11:10 PM
#7
Postat 04 November 2014 - 05:44 AM
https://www.youtube....HuEcHGiek&t=14s
Quad S500 cu Naza V2
EasyGlider Pro
#8
Postat 04 November 2014 - 11:11 AM
Follow heading si hold altitude le programez eu. De unde as putea sa ma inspir pentru un RTH ? Ce ma intereseaza e sa calculez heading-ul pentru HOME. Practic am coordonatele pentru HOME, heading-ul si coordonatele paramotorului.
Am gasit ceva :
Calculation of direction between two geographical points To determine the direction from the starting point between two points on the earth, use the following formula: Δφ = ln( tan( latB / 2 + π / 4 ) / tan( latA / 2 + π / 4) ) Δlon = abs( lonA - lonB ) bearing : θ = atan2( Δlon , Δφ ) Note: 1) ln = natural log 2) if Δlon > 180° then Δlon = Δlon (mod 180).
Aceasta postare a fost editata de VeNoM386: 04 November 2014 - 11:14 AM
#9
Postat 04 November 2014 - 11:48 AM
#10
Postat 04 November 2014 - 07:05 PM
http://3.bp.blogspot.com/-Tpq5jPU6Grg/U2Sfd4ArMhI/AAAAAAAAEn4/JVrDicoHvf8/s1600/uno_NEO6MV2.png sau mai elegant poti folosi un I2C level converter. Teoretic poti si fara acele rezistenta/I2C dar RX de la gps e pe 3.3V iar pini arduino sunt la 5V si s-ar putea arde gps-ul.
ca biblioteca ia TinyGPS si ai acolo cateva exemple.
Citeaza
#include <TinyGPS.h>
TinyGPS gps;
SoftwareSerial ss(10, 11); // TX gps = 10 RX gps = 11
void setup()
{
Serial.begin(115200);
ss.begin(9600);
}
void loop()
{
bool newData = false;
{
while (ss.available())
{
char c = ss.read();
if (gps.encode©) // Did a new valid sentence come in?
newData = true;
}
}
if (newData)
{
float flat, flon;
gps.f_get_position(&flat, &flon);
Serial.print("LAT=");
Serial.print(flat == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flat, 6);
Serial.print(" LON=");
Serial.print(flon == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flon, 6);
Serial.println("");
}
}
#11
Postat 05 November 2014 - 06:32 AM
ca sa nu mai folosesc placa i2c ma refer
https://www.youtube....HuEcHGiek&t=14s
Quad S500 cu Naza V2
EasyGlider Pro
#12
Postat 05 November 2014 - 06:38 AM
Radu dar tu la arduino nano cum ai legat gps-ul?
lasa un nr. de tel. sa te pot suna
Aceasta postare a fost editata de p_cipri: 05 November 2014 - 06:40 AM
https://www.youtube....HuEcHGiek&t=14s
Quad S500 cu Naza V2
EasyGlider Pro
#13
Postat 05 November 2014 - 02:46 PM
p_cipri, la 05 November 2014 - 06:38 AM, a spus:
Radu dar tu la arduino nano cum ai legat gps-ul?
lasa un nr. de tel. sa te pot suna
Nu conteaza daca e UNO / Nano / Mega...La toate se conecteaza la fel. Acele 2 rezistente formeaza un divizor de voltaj. Gps il legi exact ca in poza:
3.3V - VCC
TX - orice pin digital (10 in cazul meu)
Rx - il conectezi la divizor apoi la orice pin digital (11 in cazul meu)
GND - GND
poza montajul meu: click
Ai zis ca ti-ai luat acelasi tip de gps: UbloxNEO6MV2.. va trebui tu sa ii lipesti cei 4 pini pentru ca vine cu ei separat. Poti folosi codul ce ti l-am pus eu pt a afisa LAT si LONG.
Atentie: dupa ce l-ai conectat sa nu te panichezi daca nu se aprinde nici un led imediat. Ledul de la gps va lumina DOAR dupa ce s-a "conectat la satelit" si poate dura 2-3min pana se intampla asta.
P.S: am incercat sa il conectez si fara cele 2 rezistoare si a functionat.
P.S.S: ai PM cu nr de tel.
Aceasta postare a fost editata de RaduRC: 05 November 2014 - 02:50 PM