Fórum témák
» Több friss téma |
Fórum » GPS modul és PIC
Szia! Én az egyszerűbb megoldások híve vagyok Először a vezérlés működjön, aztán lehet majd bővíteni. Első lépésként arra gondoltam, hogy megfelelő helyen a távvezérőről adott gombnyomásra mentse el az adatot, aztán majd a pic vezérlés automatikusan vigye vissza oda. Ez idáig csak programozás kérdése. A nehezebb megoldás egy adó-vevő kapcsolat. A kis hatótávú (kb. 60-70 méter) 2,4 GHz-es adóvevő modulok olcsók, elég könnyű pic-cel vezérelni őket, egy végerősítővel megtoldva eseleg ki lehetne bővíteni a távolságot 4-500 méterre. Ha a távvezérlőben egy USB-s pic van, már laptopról is lehet vezérelni, gondolom hostos pic kezelhető az okos teleforól is. Kérdés hogy ez a távolság kiterjesztés mennyire legális, utána kell nézni, nem szeretném ha szétrúgnák a sejhajt Ha ez az előbbi ok miatt nem lenne járható út, marad a szegény ember megoldása Kéz alatt venni egy kis hatósugarú (1-2 Km) adóvevő párost, amilyennel a kissrácok játszanak, minden benne van a lényeghez, egyetlen de nagy hátránya az átvitel lassúsága, viszont egy byte-os parancsokkal azért el lehetne kinlódni vele. Itt a GPS adatok valós idejű cseréje természetesen már túl hosszú időt venne igénybe, max. két lehetőség lenne, vagy megvárod amíg a küldött adat átmegy az álló hajóba, vagy egy byte-os paranccsal választasz az előre letároltak közül. Ezeken még nem gondolkodtam különösebben, most még csak a tájékozódásnál tartok. Sajnos a pénzhiány kompromisszumos megoldásokra kényszerít
Üdv. Danó Ferenc.
A 2,4Ghz-es digit RF kiterjesztésével nem lesz gondod. Tóparton nemigazán zavar senkit, ha nem 60m, hanem 400m a hatótávod, és ott sem folyamatos az adás.
Program elképzelés jó. De ha van egy GPS koordinátád, ahova el akarsz jutni, hogy oldod meg az írányítást? Vagy kell egy digit compass (nemigazán olcsó), vagy próbálgatsz. Mivel azt tudni kell, hogy nem tudja a hajó merrefele áll az orra. Tehát ha van egy célpontod és tudod a saját GPS koordinátád, még azt nem tudod merre áll az orrod, merre indulj. (Ugyan van irány adat a GPS adatokban, de ez nemigazán használható, csak hosszabb méterek után tudja kiszámolni a kb értéket) És mivel a GPS 10m pontosságú (de a 30m pozició különbség időjárástól függően előfordulhat) lehet tök ellentétes irányadatokat ad lassú járműnél. Tehát ha nincs digitcompass, jó sokáig keringhet, mire cél közelébe ér.
Microchipnek a MRF24WB0MB/RM wifi modulja is tudja a 3-400m távolságot jó minőségű antennával, ha rálátás van.
Halkan jegyzem meg, hogy egy digitális iránytű valahol 1000-1200Ft között van az ebay-en, és ez már modul. HMC5883L
Egy tavon azért csak van rálátás, bár a sűrű nádas okozhat némi csökkenést.
Ismerem, van is belőle. Meg 10DOF-om is, az is izgalmas
A HMC5883L-t piccel használod? Még nem sikerült életre keltenem a saját modulomat.
Közben találtam 433 MHz-es olcsó SPI-s adóvevő modult, kb. 4-500 méter hatótávval. Azt még erősíteni sem kell. Mint írtam, az egyszerűbb megoldások híve vagyok A hajó onnan tudja merre áll az orra, hogy én teszem vízre Letárolom a kiindulási és az érkezési pontot, aztán már csak egyenesen kell mennie, a beérkező GPS adatokat kb. 3-4-et átlagolva már tudni fogja mennyire tér el az iránytól és a távolságtól. A célterület közelében lassítana, és több adatot átlagolva bevánszorogna a célba. Természetesen mivel ezen a téren abszolút kezdő vagyok, lehet hogy nagy marhaságot írok, nyugodtan javítsatok ki, akár le is hülyézhettek
Azt figyeltem meg a működő GPS-emen, hogy a haladási irány szerinti helymeghatározás eltérése a valóstól kb. majdnem mindig ugyan úgy esik, tehát ha nem abszolút hanem relatív a célpont, akkor lehetne korrigálni, ha egyáltalán érdemes, az a lényeg, hogy max. 10 méteres sugarú körben mindig célba érjen. Mivel a távolságot pontosan felmérni nem lehet, viszont az irányt igen, azon lehet kézi vezérléssel korrigálni ha van támpont amihez egy vonalba igazítom, akkor a célterület alakja ellipszis szerű lesz, tovább csökkentve a hibát.
Sziasztok!
Köszönöm a segítséget! Elindult a soros adatátvitel a gps modul és PICKit2 között. Csak 4800bps megy, de kísérletezni ez is elég. Köszönöm! Üdv.
Mi a baj a 4800-al? Úgy is csak másodpercenként kapsz pár byte-ot.
De ha gyorsabb kell be tudod állítani. Küld ki neki ezt a parancsot: $PSRF100,1,115200,8,1,0*05 És állj át 115200 baudra.
Sziasztok,
remélem itt tud valaki segíteni nekem. Egy Quectel L50-es GPS modullal küzdök. Ki akarom váltani vele a GlobalSat-os EM406a-t. Működik is a dolog, csakhogy gondok vannak a be/ki kapcsolással. Az on/off lábat fölhúztam 1.8V-ra 10K-val. Az adatlap szerint a két tápfeszültség ráadása után meg kell jelennie ki-be kapcsoló lábon is nagyjából az 1.8V-nak (ez meg is van). kb. fél másodperc elteltével legalább 1ms-ig le kell húzni GND-re. Ezt meg is tettem egy nyomógombbal, el is indult a modul, és fosta az adatokat. Csakhogy elvileg a ki-be kapcsoló lábnak vissza kellene állnia tápfeszre, majd egy újabb gombnyomásra kellene hibernálnia magát és így tovább. Sajnos ez már nem megy a modulnak. Működik, küldi az adatokat, de a ki-be kapcsoló láb 50mV feszültségen marad bekapcsolás után, és innen csak a reszet billenti vissza a tápfeszültségre. Ráadásul ha bekapcsoltam egy hosszabb működés után egyszer csak gondol egyet és hibernálja magát. Nagyjából leírtam a problémámat, remélem magyarázatot tudtok adni a jelenségre. Örülnék, ha esetleg valaki ellenőríni tudná a leírtakat egy másik működő példányon. Remélem megosztja valaki velem a tapasztalatait e modullal kapcsolatban, mert úgy tűnik jó lenne az alkalmazásra, ha nem lenne a felül említett idegesítő jelenség. Először az adatlapban közölt módon kontrollerrel próbáltam ki-be kapcsolni, miután nem ment folyamodtam a fenti egyszerű megoldáshoz, ami szintén nem vezetett sikerre. Segítségeteket előre is köszönöm. Üdv, Zoli
A PICkit2 csak 38400 -ig bírja...
A hozzászólás módosítva: Ápr 15, 2013
Igaz. Mondjuk én 500 Ft-os [USB - UART] modulokat használok, ami 1,5Mbps-ig bírja.
Ami nálam hiba volt soros portos kapcsolatoknál, az hogy az rs232 jel feszültségszintjei nem voltak jók.Erre a legváltozatosabb hibákat produkálták a különféle készülékek.
A másik hibám, amivel sokat szenvedtem, volt olyan szerkezet ,ami igényelte e TX láb határozott, és neki tetsző szintjét.( a pic vételszünetben a soros port lábait elengedte ,a kommunikáció többé nem épült fel ,a készülék nem küldött adatot.)
A gomb pergesmentesitve van vagy legalabb rajta van egy kondi?
Elkepzelheto, hogy az impulzusok kozott kell tartani legalabb x ms szunetet.
A gondol egyet és hibernálja magát -ban nem lehet valami szabályt felfedezni ? Lehet a leállás adatfüggő. Amíg nem talált elég holdat / érvénytelenek az adatok addig küzd ,aztán kapcsol ki miután valós adatokat tud közölni. Lehet szobában nem is talál holdat ,azért viselkedik összevissza.
Szia !
Én két ilyen eszközt is használok, eddig a legnagyobb megelégedettségemre, mivel semmilyen - általad jelzett - hibát nem tapasztaltam. Én nem használok felhúzó ellenállást az ON/OFF lábon, hanem a uC húzza fel (3,3V-ra, soros 1K-val) és ki/bekapcsoláskor le 10 msec-re, utána vissza 3,3 V-ra (Mivel a leírás szerint 3,6 V-ot elvisel ez a láb, emiatt így oldottam meg, igaz nem PIC, hanem AVR, de ez teljesen mindegy) Nekem soha nem kapcsolt ki, többször volt 4-5 órán keresztül bekapcsolva, az adatok mentek a uSD kártyára, így feltűnt volna. Nem tudom UART-on használod-e és a CFG0/SCK (17-es) lábat felhúztad-e 10K-val VCC-re, a többit meg hagytad-e szabadon. A hozzászólás módosítva: Ápr 17, 2013
Szia,
UART-on használom, és a 17-es lábat fölhúztam. Megy a konfigolás is UART-on keresztül. Minden működik. Már kiszedtem az összes fölhúzó ellenállást is, a ki-be kapcsoló és a reszet lábakról. Próbáltam 1K-val lehúzva bekapcsolni, de a helyzet ugyanaz. A modul bekapcsolt állapotában a ki-be kapcsoló láb csak párszor 10mV-on van. Kikapcsolni csak a reszet lábbal lehet, akkor visszaáll tápfesz körüli értékre, majd újra bekapcsolható. Vagy egy idő után magától kapcsol ki.
Szia!
Az 1,8V-os tápfesz. jó? Nincs esetleg gerjedés, ami megzavarhatná? Milyen eszközzel állítod elő az 1,8V-ot? Én MCP1700T-1802 LDO-t használok.
Én LD29150DT18R LDO-t használok, szerintem a táp rendben van. 1k felhúzóval a ki-bekapcsoló láb már 300mV-on van bekapcsolt állapotban, ez olyan, mintha a kontollerrel kapcsolgatnád. De szerintem magától is vissza kellene állnia, ráadásul 1.8V közelébe. Kezd elegem lenni, már azt nézegettem az előbb, hogyan lehetne lepattintani a az árnyékoló fedőt. Úgy nézem forrasztva van.
Gyanítom, hogy nálad, amikor már bekapcsoltad a modult a kontrollerrel, az 1K-s ellenállás modul felőli "lábán" több mint 300mV-ot mérnél..
Szia !
Tegnap nem volt érkezésem megmérni, de ma este remélem lesz időm és akkor mindenképpen leírom a tapasztaltakat.
Köszi szépen!
Szia !
Megmértem mind működő, mind kikapcsolt GPS mellett. Mindkét esetben 3,17V van az L50 ON/OFF lábán, ugyanakkor a uC kimenetén 3,3V.
Ahogy azt sejtettem. köszönöm. Jöhet a skalpolás.
Üdv, Zoli
Sziasztok. PIC32MX460F512L kontrollerrel szeretném feldolgozni egy Quectel L30 típusú GPS adatait(UART módban). A probléma ott van, hogy a olvasáskor '$GPGGAAAAAAAAA','$GPGLLLLLLLLLL' és hasonló stringeket kapok. Megtelik az UART memória? Hogyan kell kiüríteni? C-ben és/vagy pascalban írjátok, ha lehet. Köszönöm.
Szia!
Már olyan sokszor leírtam.... Nem szabad a vétel közben várakozni, feldolgozni. Bufferelt, megszakításos UART kezelés kell. Ezekívül le kell kezelni a hibásan vett karakter eseteit is.
Mikor megérkezik egy byte, hozzáadom egy string végéhez. Amikor elérek a string 512. eleméig(ennyiben már biztosan benne van az információ ami kell), letiltom az interruptot és így kapok ilyeneket. Hogyan kellene csinálni?
Tehát
A hozzászólás módosítva: Máj 2, 2013
Nem tudom ,néha az is szívatott, hiába tiltod le a soros port megszakítását, a jelzőbitjei attól élnek.Ezért ha egy másik okból (akár egy időzítő rutin) a megszakítás bekövetkezik, a soros port rutinja is lefut, hiszen a jelzőbit jelzi attól függetlenül, hogy ténylegesen nem okozott megszakítást.
|
Bejelentkezés
Hirdetés |