USB ์น์บ ์ ํ๋ ์ฃผ์ ์๋๋ฐ ๋์์ด ์๋ผ์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ๋ฌ์์ฃผ๊ธฐ๋ก ํ์ต๋๋ค.
์น์บ ์ ํ์ Logitech Orbit/Sphere AF์ ๋๋ค.
uvcdynctrl ๋ฅผ ํตํด์ webcam์ Pan/Tilt๋ฅผ ์กฐ์ ํ ์์ ์ ๋๋ค.
0. uvcdynctrl ์ค์น
sudo apt-get install uvcdynctrl
1. uvdynctrl ๋์๋ง
uvcdynctrl -h
2. uvdynctrl ์ฌ์ฉ ๊ฐ๋ฅํ ์ฅ์น ๋ฆฌ์คํธ ํ์ธ
uvcdynctrl -c
2. uvdynctrl ์ปจํธ๋กค
Controls that work
# uvcdynctrl -s "Pan/tilt Reset" -- 1
# uvcdynctrl -s "Pan/tilt Reset" -- 2
# uvcdynctrl -s "Pan/tilt Reset" -- 3
# uvcdynctrl -s "Pan (relative)" -- -700
$ uvcdynctrl -s "Pan (relative)" -- 700
# uvcdynctrl -s "Tilt (relative)" -- -500
# uvcdynctrl -s "Tilt (relative)" -- 500
# uvcdynctrl -s "Brightness" -- 1
# uvcdynctrl -s "Brightness" -- 255
# uvcdynctrl -s "Contrast" -- 1
# uvcdynctrl -s "Contrast" -- 255
# uvcdynctrl -s "Saturation" -- 1
# uvcdynctrl -s "Saturation" -- 255
# uvcdynctrl -s "Gain" -- 1
# uvcdynctrl -s "Gain" -- 255
# uvcdynctrl -s "Backlight Compensation" -- 0
# uvcdynctrl -s "Backlight Compensation" -- 1
# uvcdynctrl -s "Backlight Compensation" -- 2
# uvcdynctrl -s "Power Line Frequency" -- 0
# uvcdynctrl -s "Power Line Frequency" -- 1
# uvcdynctrl -s "Power Line Frequency" -- 2
# uvcdynctrl -s "White Balance Temperature" -- x
# uvcdynctrl -s "LED1 Mode" -- 0 LED off
# uvcdynctrl -s "LED1 Mode" -- 1 LED on
# uvcdynctrl -s "LED1 Mode" -- 2 LED blinking
# uvcdynctrl -s "LED1 Mode" -- 3 LED on
# ์ฅ์น๊ฐ ์ฌ๋ฌ๊ฐ ์กํ์์ ๋ ๋ช
์์ ์ผ๋ก ์ง์
# uvcdynctrl ( --device=video0 ) -s "Pan/tilt Reset" -- 1
3. uvdynctrl ๋ฌธ์
a. uvdynctrl์ด ์ค๋๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๊ณ , ๋ ์ด์ ์ ๋ฐ์ดํธ๊ฐ ์๋จ.
b. tilt๋ ๋์ง๋ง, pan์ด ๋ช ๋ น์ด ์์. ์ ๊ฐ์ ๊ฒฝ์ฐ๋ ์ถ๊ฐํด์ฃผ์๊ธฐ ๋๋ฌธ์ 'pan (relative)'๊ฐ ์์ต๋๋ค.
๋ช ๋ น ์ถ๊ฐํด์ค๋๋ค.
sudo vim /usr/share/uvcdynctrl/data/046d/logitech.xml
๋ฌธ์์ด ์ฐพ๊ธฐ : V4L2_CID_PAN_RELATIVE
2008๋ ๋์ Pan ๊ด๋ จํด์ ์ ๋ฐ์ดํธ๋ฅผ ํ๋ค๊ณ ํฉ๋๋ค.
๋ฌธ์์ด ์ฐพ๊ธฐ : V4L2_CID_TILT_RELATIVE
์ ๊ฐ์ ๊ฒฝ์ฐ๋ ๋ ธ๋์์ผ๋ก ๋ถ๋ถ ID ์ชฝ์ ๊ณต๋ฐฑ์ผ๋ก ๋ผ์์์ต๋๋ค.
V4L2_CID_PAN_RELATIVE ์ถ๊ฐํด์ฃผ๋ฉด ๋ฉ๋๋ค.
์ถ๊ฐ๊ฐ ๋์์ผ๋ฉด,
uvcdynctrl --import=/usr/share/uvcdynctrl/data/046d/logitech.xml
ํน์ ๋ชจ๋ฅด๋ ์ฌ๋ถํ ๋ ํด์ค๋๋ค.
sudo reboot
4. ๊ทธ๋๋ ์ ๋ ๊ฒฝ์ฐ
docs.ros.org/en/jade/api/tuw_uvc/html/dynctrl-logitech_8h.html#a193f86e1414943187cb3c847358c0275
tuw_uvc: dynctrl-logitech.h File Reference
Go to the source code of this file. Define Documentation Value: { \ 0x82, 0x06, 0x61, 0x63, 0x70, 0x50, 0xab, 0x49, \ 0xb8, 0xcc, 0xb3, 0x85, 0x5e, 0x8d, 0x22, 0x56 \ } Definition at line 36 of file dynctrl-logitech.h. Value: { \ 0x82, 0x06, 0x61, 0x63, 0x
docs.ros.org
ํน์ ๋ชจ๋ฅด๋, ์ URL์ ๋ง์ถฐ value ๊ฐ์ ๋ฐ๊ฟ๋๋ค.
V4L2_CID_PAN_RELATIVE = 0x009A0904
V4L2_CID_PAN_RESET = 0x009A0906
V4L2_CID_TILT_RELATIVE = 0x009A0905
V4L2_CID_TILT_RESET = 0x009A0907