Multikopterit.net keskusteluforum

SUPER SIMPLE 5.8GHz RSSI ANTENNA TRACKER

Aloittaja robofly, marraskuu 06, 2016, 10:33:10 IP

« edellinen - seuraava »

0 Jäsenet ja 1 Vieras katselee tätä aihetta.

robofly

Tässä tulee jälleen yksi antenni trackeri. Helppo ja halpa rakentaa. Pohjautuu RC540R diversiteetti vastaanottimeen.

Tarvittavat osat:
RC540R diversiteetti vastaanotin
Arduino Pro Micro ATmega32U4
9g servo
5V jänniteregulaattori
2 x suunta-antenni
sevo mountti, 3d printattu tai jotenkin muuten kyhätty

Arduino koodi
https://github.com/andreiva/simple-rssi-antenna-tracker

Käytiin tänään ensimmäisellä testilennolla 25mW lähettimellä ja hyvinhän se toimi. 400 metrin päässä ei ollut mitään häiriöitä. Harmi vaan en tajunnut verrata FatShark omaan vastariin.

Tässä video

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

MikeK

Hienoa :D Yks väsäili moisen rcgroupissa, mut sit koodi koodi poistettiin sieltä ja teki siitä kaupallisen version?
"Eikö kukaan tosiaan lennä multia enää muuten ku rilleillä?"

robofly

Tämä on opensource versio :D Youtube videossa on kaikki linkit, mutta kertauksen vuoksi laitetaan vielä tänne:

Koodit löytyy täältä, jos kiinnostaa kehittää.
https://github.com/andreiva/simple-rssi-antenna-tracker

Suuntaus "algoritmi" on todella yksinkertainen, kääntää servoa siihen suuntaan missä on voimakkaampi signaali ja pysähtyy silloin kun signaalit ovat (melkein) yhtä vahvoja. Samalla tämä on algoritmin heikkous, se saattaa löytää sellaisen kohdan missä signaalit ovat yhtä vahvoja mutta seurattava kohde ei ole keskellä. Tähän pitäisi koodata lisää älyä.

MikeK

On yks Uno ylimääräisenä ja pelittääkö siinä?
"Eikö kukaan tosiaan lennä multia enää muuten ku rilleillä?"

robofly

Lainaus käyttäjältä: MikeK - marraskuu 07, 2016, 10:10:25 AP
On yks Uno ylimääräisenä ja pelittääkö siinä?

Melko varmasti toimii heittämällä. Katoin nopeasti että pinnijärjestykin on sama.
Joissain arduinoissa on erilainen pinnijärjestys, silloin koodissa pitää muuttaa pinnimappaukseen oikeat arvot:

#define LEFT_RSSI_PIN       0     // analog RSSI measurement pin
#define RIGHT_RSSI_PIN      1
#define PAN_SERVO_PIN       5     // Pan servo pin

Petsku

Tätä olis tarvittu kesällä jo monesti. Iso käsi kun jaksaa väsätä. Kohta on printattu osat trackerille. Oli muuten jotain hämminkiä tossa bottom-gopro.stl tiedostossa. Simlify jätti kokonaan platen pois ja olis tulostanu vaan noi gp:n kiinnityskorvat. No ei siinä kauaa mee ku ite teki uudestaan ton palikan :) Toi servo mikä tossa videolla on kiinni tuossa niin onko se 360 pyörivä? Näyttää niin isolta toi alue millä kääntelee.
Ardua pitää vielä odotella.


Nasty76

tuosta saa ympäripyörivän kun hommaa halvan stepperimoottori ohjain kortti kombon.
helpompaa kuin servon modaaminen ympäri pyöriväksi

Petsku

Servo modattiin parilla tipalla liimaa ja yhellä tapin poistolla 360 pyöriväks ;) vieläkään ei tosin ardua näy eikä kuulu perkl...

Nasty76

#8
juu ei se huono ole mutta saattaa lähteä lämpötilan vaihtelun vuoksi ryömimään johonkin suuntaan. nimim kokemusta on. siksi suosin steppereitä.
Mulla arskan nanoa himassa ylimääräsenä jos on kiireesti tarve voin luopua sopu hintaan.  Joskus käytettiin rc auton vinsseissä noita servoja mutta ongelmaksi tuli juuri tuo ryömintä omituisuus mikä ei ole hyvä.
laita vaikka yv jos polttelee saada arska nopeesti kätösiin =)
tietysti jos arduinolla pelleillee niin sillä arduinon h-sillalla voi ajaa suoraan servon moottoria voi jättää kokonaan ohjaimen pois se ei kanssa ryömi mihinkään.


MikeK

#9
FR632:Seen asennettu ja testattu, mutta ei pelitä. Kun kääntää koko jalustaa pois lähettimestä, joka ulkona kauempana, näkyy näytössä kuinka FR hakee A sekä B vastareiden välillä. Servo vaan antaa pientä liikettä eikä lähde hakemaan parempaa kuuluvuutta. RSSI offsettiä sekä RSSI min ja max arvot on haettu ja ehkä oikein? ;)

EDIT: Rupesikin toimimaan. Antenneina 7 kiekkaset helicalit ja osoittivat liian suoraan eteenpäin. Lisäsi kulmaa ja sit pelitti. Seuraavaksi jos testais jollain lentävällä...
"Eikö kukaan tosiaan lennä multia enää muuten ku rilleillä?"

MikeK

Robofly, onnistuisiko tohon koodiin lisätä, et jos rssi on alle tietyn rajan alle, lähtisi hakemaan signaalia oikealta vasemmalle? Just testattiin träkkeriä ja toimi aivan loistavasti. Ongelma tuli siinä kun lensi kaukana esim. täysin vasemmalle ja tulikin takaisin suoraan vastarin yläpuolelta. Servo ei lähtenyt hakemaan parempaa signaalia vaan jäi paikoilleen sinne vasemmalle, kun taas lentokone oli täysin vastakkaisessa suunnassa. Vasta kun lensi kauempaa oikealta vasemmalle, sai vastari "kopin" signaalista ja rupesi taas seuraamaan.
"Eikö kukaan tosiaan lennä multia enää muuten ku rilleillä?"

robofly

Lainaus käyttäjältä: MikeK - joulukuu 21, 2016, 02:05:31 IP
Robofly, onnistuisiko tohon koodiin lisätä, et jos rssi on alle tietyn rajan alle, lähtisi hakemaan signaalia oikealta vasemmalle?
Jep, tiedän mitä tarkoitat. Ihan ensimmäisessä versiossa mulla oli joku tuon tapainen toiminto mutta poistin sen, koska se ei toiminut riittävän hyvin. Mä voin toki koodata, mutta se mitä kaipaan on brainstorminkiä, miten tämän pitäisi toimia.

Tämän hetkinen "haku algoritmi" perustuu siihen että liikutaan aina siihen suuntaan missä on vahvempi signaali, tämä johtaa siihen että jossain vaiheessa löytyy sellainen kohta missä signaalit ovat yhtä vahvoja, jolloin hakupää jää paikalleen tai oskilloi vähän molempiin suuntiin. Ongelma tässä on se että niitä kohtia missä signaali on yhtä vahva on useita. Voi olla että antennin takavasemmalla on kohta missä signaalit ovat 40% ja 40% silloin hakupää jumii siihen, vaikka edessä olisikin parempi signaali.
Helikalin polaariakaaviosta näkee että sivulle ja taakse töröttää jäniksen korvia jotka aiheuttavat tämän ilmiön.


Palaan asiaan vielä vähän myöhemmin...kiire

Nasty76

itse ehkä tekisin tuon niin että jos signaali on yhtä vahva niin tekis vaikka sweepin siis skannais vasemmalle ja oikeelle vaikka 10 astetta tms ja menis sitten vahvempaan signaaliin
esim timer library avuksi jos signaali esim 3 sec tasa vahva sweeppailtas sivuille jos tulis parempaa signaalia.

MikeK

Tollasen jonkinlaiset haun voisi tosissaan tehdä. Nyt oli kone jo todella kaukana antennin takana. Pientä nytkytystä servo teki. Pitäis laittaa kone kiinni et näkis millasia rssi lukemia antaa tollasessa tilanteessa.
"Eikö kukaan tosiaan lennä multia enää muuten ku rilleillä?"

Nasty76

Jotenkin niin , kannattaa manuaalisesti debuga tilanteet läpi miten signaali käyttäytyy suurinpiirtein niin osaisi ehkä ajatella sweep moodin koodia sen jälkeen. ja ainahan signaalia voi verrata johonkin annettuun arvoon että hyvällä signaalilla ei sweeppaile tms