Ps3eye Linux: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Ssaarm (talk | contribs)
Ssaarm (talk | contribs)
 
Line 120: Line 120:
=Allikad=
=Allikad=
Põhiline tegelane, kellele toetuda on Kaswy:
Põhiline tegelane, kellele toetuda on Kaswy:
[http://kaswy.free.fr/?q=en/node/53 - Allikas, mille järele antud tegevused said tehtud]
[http://kaswy.free.fr/?q=en/node/53 - Allikas, mille järgi antud tegevused said tehtud]


[http://bear24rw.blogspot.com/2009/11/ps3-eye-driver-patch.html - parandatud draiver]
[http://bear24rw.blogspot.com/2009/11/ps3-eye-driver-patch.html - parandatud draiver]

Latest revision as of 23:59, 10 October 2011


Kui leiad vea, siis paranda ise ära:) (kui oled ITK'st) või anna autorile (Margus Ernits) teada.

Sissejuhatus

PS3eye on suhteliselt hea USB kaamera, mida saab omandada ~750kr eest. Kaamera üheks suureks eeliseks hobirobootika valdkonnas kasutamiseks on selle suur kaadrisagedus. Linux kernel sisaldab draiverit, mis ei kasuta kaamera kõiki võimalusi, nagu näiteks: Kaadrisagedus kuni 125 kaadrit/s, pildi pööramine jne. Nende võimaluste saamiseks tuleb antud draiver ehk kerneli moodul ise kompileerida, kasutades selleks Kaswy paika.

Skoop ja piirangud

Antud juhend on mõeldud Debian baasil Linux süsteemidele. Testitud kerneliga 2.6.32. Käsud tuleb sisestada root kasutaja õigustes, milleks võib kasutada järgnevat korraldust.:

sudo -i

Draiveri paigaldamine

Nõutavate tarkvarapakettide paigaldamine

apt-get install kernel-package libncurses5-dev wget bzip2 build-essential

Kerneli algteksti paigaldamine:

cd /usr/src
apt-get install linux-source
tar --bzip2 -xvf linux-source-<Kerneli versioon>.tar.bz2
ln -s linux-source-<Kerneli versioonin> linux
cd linux

Kerneli versiooni saad korraldusega:

uname -r

Väljund on näiteks:

2.6.32-24-generic

Sellisel juhul on kerneli versioon 2.6.32

Lae alla draiveri algtekst ja asenda kernelis olev draiver

cd /usr/src/linux
#wget www.cs.bris.ac.uk/~ebrahimi/ps3eye/ov534.c
wget ucfilespace.uc.edu/~thrunml/ov534.c
rm drivers/media/video/gspca/ov534.c
mv ov534.c drivers/media/video/gspca/

Alternatiivne draiver: ucfilespace.uc.edu/~thrunml/ov534.c

Loo kerneli konfiguratsioon, kasutades töötava kerneli seadeid:

cp /usr/src/linux-headers-$(uname -r)/Module.symvers /usr/src/linux
make oldconfig


Kompileeri uue draiveri moodul:

make modules_prepare
make SUBDIRS=drivers/media/video/gspca modules

Kopeeri kompileeritud draiver töötava kerneli kausta.

cp drivers/media/video/gspca/gspca_ov534.ko /lib/modules/$(uname -r)/kernel/drivers/media/video/gspca/
modprobe -r gspca_main
cp drivers/media/video/gspca/gspca_main.ko /lib/modules/$(uname -r)/kernel/drivers/media/video/gspca
modprobe gspca_main

depmod

Draiveril on erinevad parameetrid ja nende nimekirja ja võimalike väärtuseid saab näha järgneva korraldusega:

modinfo gspca-ov534

Eemalda mälust vana draiver (kui on laetud) ja lae uus.

modprobe -r gspca-ov534
modprobe  gspca-ov534 videomode=12

Kaamera parameetrite seadmine

Kuna antud draiver ei oma v4l2 liidest, siis toimub parameetrite seadmine draiveri laadimisel, näiteks:

modprobe  gspca-ov534 videomode=12 gain=0 hflip=1 vflip=1

Parameetrid ja nende väärtused:

gain = [0..63]
exposure = [0..255]
autogain = [0|1]
hflip = [0|1]
vflip = [0|1]

Parameeter videmode numbrid ja selgitused:

00: 640x480@15
01: 640x480@30
02: 640x480@40
03: 640x480@50
04: 640x480@60
10: 320x240@30
11: 320x240@40
12: 320x240@50
13: 320x240@60
14: 320x240@75
15: 320x240@100 
16: 320x240@125

Kokkuvõte

Robootikas kasutatavatele kaameratele seatakse kõrgeid nõudmisi just kosteajale, mis tihti on seotud kaadrisagedusega. Antud draiverit saab ITK pilditöötlusplatvorm kasutades kaadrisageduseks ~100 kaadrit/s (2tuuma kaasaegne arvuti). Kui ainult pilti näidata, siis saab 125 kaadrit/s.

Allikad

Põhiline tegelane, kellele toetuda on Kaswy: - Allikas, mille järgi antud tegevused said tehtud

- parandatud draiver

Autor

Margus Ernits - ITK robootikaklubi juhendaja