|
Magyarok a marson -9. nap
A mai nap fejleményei: - Végig lett próbálva a misszió sikerrel. - Felszórtam egy HVGs olvasópróbás műanyagdarabra két alucsikkal az atmegás LCD-s demóboardot virág gyanánt. Így mutat a roverből: - Az űrliftten kijött némi probléma, többnyire mechanikai jellegűek. Ilyenek mint pld, a fogaskerékrendszerre kell némi védelem, nehogy a vezeték belelógva megakassza. Pár csavar hoszabbra lett cserélve mert a mágnes kitépte azt a pár menetet amin fogtak. - Megcsináltam a liftkábel vezetőt egy képkeret akasztóból. Nagyjából ennyi. Most van egy buglistám, ami holnap kiirtásra vár.
[ hozzászólás ] [ 0 trackbackek ] permalink ( 2.9 / 608 )
Ma semmi nagyon extra nem történt. Se jelentősnek modható előrelépés, se szívás. A SLUG megy mint a kisangyal.
Szoftveroldal: A mai napon implementálva és tesztelve lettek az alábbi funkciók:
- Képfeldolgozó által észlelt elakadás jelentése a földbázisnak. Ott felajánlani a direkt módot.
- Lehet logolni a navigáció eseményeit időbélyegekkel txt fájlokba.
- Apró funkcióként implementáltam, hogy az összes sznkronizációs paramétert (sziklák, célpontok, képfeldolgozó kalibráció) egyszerre lehessen küldeni.
Implementálva de tesztelve nem lettek az alábbiak:
- Zig-zig mód az LCD-s virág előtt. Az LCDs virághoz 4 adat ban hozzárendelve: Egy sugár, amelyet elérve a ha a rover az LCD-vel szemben áll, akkor az LCD felé fordul, és megáll, jelet küld a földre, amely átteheti zigzig módba. Egy sugár, amin ha belül kerül úgy hogy rá van fordítva az LCDre akkor megáll, és befejezettnek tekinti a taskot. Ez azért kell, hogy ne gázoljuk el a virágot. Egy szög ami magadja merre néz az LCD. Egy szögtartomány, amelyen belülről fordulunk csak rá.
Szóval ha ilyen zig-zig módba kerülünk, akkor a marsjáró 5 centis egyenes szakaszokat tesz meg 3 secenként 3 sec szünettel. A szünetek kezdeténél üzen a földbázsinak,hogy lehet képfeldolgozni. Ez azért kell, mert mozgás közben bluros szokott lenni a kép. A zigzig mód n darab ilyen mozgás után leáll, illetve a fentebb említett határ elérésekor is.
Hardver:
- Megoldottam az Asus router rögzítését két tejgumival. Mostmár biztos hogy a régi elektronika marad, mindegy ez legalább működik.
- Az ónszívószalag tokból improvizált megbízhatalan liftkábel kiengedő helyett építettünk egy megbízható spulnis rendszerűt. A tápkábel továbbra is a sordrott albán zománchuzal marad.
Nagyjából ennyi. Ha minden jól megy, akkor holnap teljes teszt.
[ 3 hozzászólás ] ( 76 megtekintés ) [ 0 trackbackek ] permalink ( 3 / 584 )
Magyarok a marson -11. nap
Eldöntöttem, hogy az utolsó két hétben ledokumentálom mit is csinálok, hogy utólag könnyen lehessen mutogatni hogy hol lett eltolva. Ma elektró után nekiálltam tesztelni az előkészítőben a hétvégén elkészült megállásérzékelő modult a képfeldolgozóban. A dolog lényege mindössze annyi, hogy ha egyenes haladás során n képkockáig nem észlel a magengedett küszöbérték feletti mozgást, akkor az első ilyen képkocka megszerzésének időpontját tekinti a mozgás befejeződésének. Ez több okból is hasznos: egyrészt kezelni tudjuk az elakadást, másrészt a hamarabb tudjuk kalkulálni a következő műveletet. A baj csak annyi, hogy a parancs kiküldése és a kép késése miatt kapásból megálltnak tekinti a gépet. Először próbáltam "élvezérlést tenni bele" értsd, ha elindult csak azután számolja a nem mozdult képeket. Ez sajnos nem jött be, így aztán maradt az a megoldás, hogy csak 1 sec után kezdjen el erre figyelni. Természetesen a napi szívás ma sem maradhatott el. A képfeldolgozó időnként elvesztette a rovert periódikusan. Elveszettenk akkor tekintjük, ha 500 msig nem sikerül megtalálni a képen a rovert. Értelemszerűen ez akkor is bekövetkezik ha 500 msig nem érkezik kép. Jó mondom rossz napja van az NSLU2nek újraindítom. A hibát továbbra is produkálta. Végül egy reboot után ráunva a dologra toltam egy: mm@lapos:~$ ifconfig eth0 eth0 Link encap:Ethernet HWaddr inet addr:192.168.1.148 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::21b:fcff:fedd:2c80/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:48970 errors:14568 dropped:0 overruns:0 frame:0 TX packets:68700 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3214264 (3.2 MB) TX bytes:1516204 (1.5 MB) Interrupt:20 Base address:0xb800
Hm hm. A használt 5 méteres kábelt anno kölcsönadtam egy spanomnak, aki azzal hozta vissza, hogy nem biztos benne hogy jó. Felmásztam hát és megmozgattam kicsit a kábelt odafent érdekes módon kiesett a linkből. 70 centi levág visszakrimpel. Élet megy tovább. Na mára ennyi. Reszelek egy kicsit még a képfeldolgozón, aztán várom a holnapi tesztet amin reményeim szerint a teljes missziót le tudjuk tesztelni. Most pedig Symbain SDK-t telepítek. Linuxra of korsz. http://labs.trolltech.com/blogs/2010/04 ... ing-linux/Jahh és megy ringyózon is a marsbázis: A megjelenítés (zoom pan ilyesmik) fürgébbnek tűnnnek, mivel itt be lehet kapcsolni az OpenGL accelerationt.
[ 1 hozzászólás ] ( 7 megtekintés ) [ 0 trackbackek ] permalink ( 3 / 543 )
Napi Qt okosságok: vegyesválogatott
1) Amikor a QTimerek szórakoznak.Történt a marsjáróvezérlő programmal, hogy elkezdett néha lefagyni a navigáció. Némi debug után arra jutottam, hogy bizony néhány QTimer nem emittál timeOut() szignált. Hosszas szívózás után rájöttem a dolog nyitjára. A program több saját készítésű könyvtárat használ. (Képletöltő, képfeldolgozó, rovervezérlő). Ez sok szíváshoz vezet, azonban symlinkek nélkül így sikerült megoldanom a földbázis és a marsbázis közös komponenseinek kezelését. A rovervezérlő könyvtárban elkövettem azt az hibát, hogy nem QTimert használtam, hanem a QObject startTimer() és timerEvent(QTimerEvent *event) metódusait az időzítésre. Ez önnmagában nem hiba, sőt átláthatóbb kódot eredményezhet bizonyos esetekben. Azonban a killTimer(int timerid) függvényt csak ésszel szabad használni. A hiba pontos okát nem tudtam feltárni, de annyi bizonyos: A) killTimer() -t nem hívunk meg nem megfelelően inicializált értékkel
B) killTimer() -t egy timerId-vel csak egyszer hívunk meg.2) Amikor a windowsos build elbukik mert nem találja a LIBS+= -lsettings -L=../../libs/bin után a settings libet, holott az ott van.A QtCreator újonnan szeret létrehozni egy shadow build könyvtárat, amiben a fordítás egy desktop nevű könyvtárban történik. Így nem -L=../../libs/bin -el kell linkelni, hanem egyel fentebbi könyvtárba. 3) Miután sikerrel lefordítottuk a stuffot az alkamazás QWidget: Must construct a QApplication before a QPaintDevice hibával elszáll. Az alkalmazásunk és a libjeink azonos módban legyenek fordítva (debug vagy release) És hogy legyen valami színes is a végére, ami unalmas, és semmitmondó mivel itthonról írok: A marsbázis fut fostalicska OS-en is némi hekkelés árán. BTW: Még : 14 nap van hátra. Az pontosan annyi mint: 336 óra. Azaz 20160 perc
[ hozzászólás ] ( 1 megtekintés ) [ 0 trackbackek ] permalink ( 3.1 / 429 )
<< <Előző | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |
|
|