Integrasi Microsoft Kinect dengan Raspberry Pi untuk Deteksi Manusia Real-Time pada Robot Sonbi
A. Tujuan
Tujuan kami adalah untuk menyematkan stack perangkat lunak penuh pada Raspberry Pi robot Sonbi, menghubungkan Microsoft Kinect, dan memungkinkan robot untuk menyapa orang dengan melambaikan lengan saat mendeteksi manusia yang berdiri di depan sensor.
B. Sistem Hardware
- Raspberry Pi dengan penyimpanan flash 8 GB
- Kontroler servo Pololu Maestro 24-channel
- Microsoft Kinect (kamera RGB, sensor kedalaman, pemancar IR, array multi-mikrofon, akselemeter)
- Suplai daya ATX 500 W
- Papan prototipe, kabeling, dan komponen mekanis
Spesifikasi Raspberry Pi
- Prosesor inti ARM1176JZF‑S 700 MHz
- SDRAM 512 MB
- Input daya MicroUSB 5 V
- Ethernet, HDMI, dan dua port USB untuk periferal
- Menjalankan OS Raspbian – dukungan komunitas yang luas
Pololu Maestro 24
- 24 channel servo independen
- Laju pulsa hingga 333 Hz
- Memori skrip hingga 8 KB
- Hingga 1,5 A per channel
- Opsi input USB atau header daya
- Dapat di-script melalui API native atau firmware kustom
Menghubungkan Raspberry Pi ke Pololu
- Kabeling serial TTL sederhana: daya, ground, Tx‑Rx, Rx‑Tx
- Bebaskan konsol serial default Pi dengan mengedit
/etc/inittab dan /boot/cmdline.txt - Lihat tutorial ini untuk instruksi detail
Fitur Microsoft Kinect
- Kamera RGB (resolusi 1280×960) untuk citra warna
- Pemancar IR dan sensor kedalaman untuk pemetaan jarak 3‑D
- Array empat mikrofon untuk pengambilan audio dan lokalisasi sumber suara
- Akselerometer 3‑sumbu (±2 G) untuk deteksi orientasi
- Rentang tilt vertikal: 27°
- Laju frame 30 fps
C. Integrasi Kinect dengan Raspberry Pi
Karena driver native Kinect hanya untuk Windows, menginstal library yang diperlukan pada Raspberry Pi berbasis Linux memakan waktu namun penting. Langkah-langkah berikut menguraikan prosesnya.
1. Instal Driver Kinect
- Pilih antara Libfreenect (driver ruang pengguna) atau OpenNI (framework tingkat tinggi). Kami menginstal keduanya untuk fleksibilitas maksimal.
- Libfreenect mendukung gambar RGB/kedalaman, kontrol motor, akselemeter, dan LED; dukungan audio bersifat eksperimental.
- OpenNI menyediakan dukungan SDK lintas platform untuk kedalaman, audio, dan pelacakan rangka.
2. Bangun Libfreenect
sudo apt-get install git-core cmake pkg-config build-essential libusb-1.0-0-dev git clone https://github.com/OpenKinect/libfreenect cd libfreenect mkdir build cd build cmake -L .. make # optional: cmake --build .
3. Bangun OpenNI
sudo apt-get install g++ python libusb-1.0-0-dev freeglut3-dev cd Platform/Linux/CreateRedist ./RedistMaker sudo ./install.sh # optional: make mono_wrapper && make mono_samples
D. Stack Perangkat Lunak dan Runtime
Robot booting skrip bootscript_sonbi.sh yang meluncurkan modul deteksi wajah:
python facedetect.py --cascade=face.xml 0
Unduh file Haar cascade yang telah dilatih di sini: face.xml. Skrip memstreaming feed RGB Kinect, mendeteksi wajah secara real time, dan memberi sinyal pada eksekusi Sonbi untuk mengaktifkan servo motor untuk gerakan sambutan.
E. Ringkasan Tindakan
Ketika manusia terdeteksi, Kinect menangkap gambar yang menyadari kedalaman, algoritma deteksi mengonfirmasi wajah, dan Pololu Maestro memerintahkan servo lengan robot Sonbi untuk melakukan gerakan sambutan ramah. Integrasi ini menunjukkan keberadaan hardware konsumen untuk robotika interaktif.