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.8 / 256 )
Magyarokamarson -10. nap 

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.1 / 215 )
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 ( 2.9 / 190 )
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.2 / 227 )
Upgrade routerstation firmware from Openwrt daily snapshot. 

Just a small note to myself, because I have forgotten it again.

Connect the RS board to your PC trough it's WAN port.
Give static IP to your PC in the 192.168.1.255 subnet.
(IP 192.168.1.1 mask: 255.0.0.0 gw: 192.168.1.20)

cd to your Openwrt's bin directory. (bin/ar71xx)
Power up your RS (trough POE) while holding down it's reset button.
You can release it when the RF led starts light.
Run tftp in the bin/ar71xx directory:

$tftp
binary
trace
put openwrt-ar71xx-ubnt-rs-squashfs-factory.bin


If the process is successful then wait 5-6 minutes. Once the upgrade is finished you the RS will reboot itself.
You will notice it because the wired connection is downed during the reset.

After the reboot it will wait a few minutes, because it erases jffs2 filesystem, and it is takes a long time.
Don't panic, it will finish it.


[ hozzászólás ] ( 13 megtekintés ) [ 0 trackbackek ] permalink ( 3.1 / 241 )

<< <Előző | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | Következő> >>

 
számláló