ทดสอบการใช้งาน Rasberry Pi3 ต่อกับกล้อง WebCam

   ในบทความนี้จะนำเสนอการใช้ WebCam ที่เป็น usb ต่อเข้ากับบอร์ด RaspberryPi เพื่อทำการติดตั้ง โปรแกรม Motion ที่มีอยู่แล้วในระบบปฏิบัติการ Debain ที่เป็น Linux โดยโปรแกรมดังกล่าวสามารถดูภาพกล้องผ่านทางเวปได้และยังมี Function ในการดักจับความเคลือนไหวของภาพเพื่อบันทึกและเก็บข้อมูลเป็นไฟล์ ภาพ หรือ วีดีโอ เก็บไว้ได้ครับ ก่อนอื่นเรามาเตรียมอุปกรณ์กันก่อนครับ

อุปกรณ์ที่ใช้

  1. rasberry pi 3 เเละ sd card (อาจมีแถมมากับบอร์ด) รูปภาพที่เกี่ยวข้อง
  2. usb camera
    ผลการค้นหารูปภาพสำหรับ usb camera
  3. สายแลน
  4. สาย HDMI
  5. Adapter สำหรับ Rasberry pi (น่าจะแถมมากับตัวบอร์ด)

วิธีติดตั้ง Raspbian OS บน Raspberry Pi

     Raspbian เป็น OS ซึ่งทาง Raspberry Pi Foundation แนะนำสำหรับติดตั้งบน Raspberry Pi โดยพัฒนามาจาก Debian Linux ซึ่งเป็น Distro ยอดนิยมอันหนึ่ง และทำการปรับแต่งให้เหมาะกับตัว Raspberry Pi
Raspbian สามารถติดตั้งบน SD card ขนาด 2GB ได้ แต่ขนาดที่แนะนำคือตั้งแต่ 4GB ขึ้นไป

Download

download Raspbian ได้จาก http://www.raspberrypi.org/downloads
หลังจาก download เสร็จแล้วให้ทำ unzip จะได้ไฟล์นามสกุล .img
ไฟล์ล่าสุดขณะเขียนบล็อกนี้คือ 2013-07-26-wheezy-raspbian.img

เขียนลง SD card

หลังจากได้ไฟล์ .img มาแล้วก็เตรียมเขียนลงใน SD card  
สำหรับ Windows
  • download โปรแกรมสำหรับเขียน SD card ชื่อ Win32DiskImager ได้จากที่นี่ http://sourceforge.net/projects/win32diskimager/
  • สร้าง directory สำหรับเก็บโปรแกรมนี้ เช่น C:\Win32DiskImager
  • unzip ไฟล์ที่ download ไปไว้ใน directory ที่สร้างขึ้น
  • รันโปรแกรม Win32DiskImager.exe ที่ unzip มา จะได้หน้าตาประมาณนี้
  • เลือก Image File เป็น .img ที่ unzip ไว้
  • เลือก Device ไปที่ SD card ที่จะเขียน
  • กด Write รอจนเสร็จ แล้วทำ Safely Remove Hardware ของ SD card
สำหรับ Mac
  • ใส่ SD card ลงใน card reader
  • เปิดโปรแกรม Terminal
  • ต้องหาว่า SD card อยู่ที่ device อะไร โดยใช้คำสั่ง
    diskutil list
    ตัวอย่าง SD card ขนาด 4GB จะได้ผลลัพธ์ประมาณนี้
    ดูขนาดจาก column SIZE แล้วดู device จาก column IDENTIFIER จะเห็นได้ว่า SD card ตัวนี้อยู่ที่ disk1 (ไม่ต้องสนใจ disk1s1 เพราะ s1 ที่ตามหลังคือ partition 1 ของ disk1)
  • สั่ง unmount device (ในตัวอย่าง device คือ disk1) โดยใช้คำสั่ง
    diskutil unmountDisk /dev/disk1
  • ทำการเขียน SD card โดยใช้คำสั่ง
    sudo dd bs=1m if=XX.img of=/dev/disk1
    แทนที่ XX.img ด้วยชื่อไฟล์ .img ที่ download และ unzip ไว้ตั้งแต่ต้น
    ส่วน disk1 คือ device ที่ unmount ไว้
    อาจมีการถาม password ด้วย
  • หลังจากเขียนเสร็จ Mac OS X จะทำการ mount device กลับมาให้อัตโนมัติ และทำการสร้าง directory .Trashes กับ .fseventsd เพิ่มลงใน device ซึ่งจะทำให้เกิดปัญหาตอนติดตั้ง ต้องลบสอง directory นี้ออก 
    ไปที่ /Volumes/Boot โดยใช้คำสั่ง
    cd /Volumes/boot
    ทำการลบ directory ที่เกินมาโดยใช้คำสั่ง
    rm -f -r .Trashes .fseventsd
    ออกจาก /Volumes/Boot กลับไปที่ home โดยใช้คำสั่ง
    cd
  • สั่ง unmount device อีกครั้งโดยใช้คำสั่ง
    diskutil unmountDisk /dev/disk1

Boot Raspbian

  • ใส่ SD card ที่เตรียมไว้ลงใน socket ที่อยู่ด้านล่างของบอร์ด Raspberry Pi
  • ต่อจอภาพโดยใช้สาย HDMI หรือ composite RCA
  • ต่อ keyboard เข้าทางช่อง USB
  • ต่อสาย network เข้าทางช่อง RJ45
  • ต่อสายไฟเข้าที่ช่อง MicroUSB
จะเห็น boot message ออกทางจอภาพ รอจนกระทั้งเห็นเมนูตามภาพ
การเลือกหัวข้อให้ใช้ลูกศรขึ้นลงกับ Tab เมื่อต้องการทำหัวข้อนั้นให้กด Enter
ข้อควรระวัง เนื่องจาก Raspberry Pi ใช้ CPU ความเร็วต่ำกว่า PC ที่เราคุ้นเคย เวลากด Enter ต้องรอซักนิด เพราะอาจดูเหมือนมันไม่ทำงาน

หัวข้อที่ควรทำ

  • Expand Filesystem จะเป็นการขยาย file system ให้เต็มตามขนาดของ SD card และจะมีผลหลังจาก reboot ครั้งถัดไป
  • Change User Password เป็นการตั้ง password ของ user pi
  • Internationalisation Options เข้าไปเปลี่ยน timezone ให้เป็น Bangkok กับเปลี่ยน keyboard layout จาก UK เป็น US
หลังจากออกจากเมนูนี้อาจจะมีการ reboot
หากต้องการเข้าเมนูนี้อีก ก็เปิด terminal หรือ login ด้วย secure shell แล้วใช้คำสั่ง
sudo raspi-config

การปิด/เปิดเครื่อง

ตัวบอร์ด Raspberry Pi ไม่มีปุ่มเปิดปิด เวลาปิดก็ถอดสายหรือปิดไฟที่จ่ายทางช่อง MicroUSB ได้เลย
แต่หากต้องการ shutdown OS ให้สมบูรณ์ก่อน ให้ใช้คำสั่ง
sudo shutdown -h now
แล้วรอให้ไฟสถานะบนบอร์ดเหลือแค่ LED สีแดงดวงเดียว

 การใช้งาน Raspberry Pi3 ในการถ่ายทอดสด ด้วย USB WebCam

1. ติดตั้ง WebCam with Motion

1.1 เริ่มต้น Update Software apt-get ให้พร้อม และ rpi-update สำหรับ  UVC support

sudo apt-get install rpi-update
sudo rpi-update
sudo apt-get update
sudo apt-get upgrade
1.2 เริ่มต้นติดตั้งโปรแกรม Motion และ Webcam
ติดตั้งโปแกรม Motion
sudo apt-get install motion
 ทำการติดตั้ง webcam ที่ USB และ สามารถตรวจสอบได้จากคำสั่ง lsusb โดยจะได้ผลลัพธิ์ คล้ายๆกับข้างล่างนี้ ตามรูป device ของ webcam ที่ต่ออยู่
lsusb
….
Bus 001 Device 002: ID 04ea:1142 Microsoft Corp.
….
1.3 การเริ่มต้นการใช้งาน
เข้าไปตั้งค่าโปรแกรมโดยใช้คำสั่ง
sudo nano /etc/motion/motion.conf
โดยควจจะเปลี่ยนค่าโดยทั่วไปให้เป็นดังนี้
daemon ON ( เพื่อให้รัน motion เป็น daemon service เมื่อใดที่มีการ รัน user pi )
webcam_localhost OFF (สามารถให้เครื่องทุกเครื่องเข้าถึง webcam ได้)
webcam_port 8081 (default Port 8081 สำหรับเป็น video stream)
 เริ่มต้นการ Start the Software โดยเข้าไปแก้ไขไฟล้
sudo nano /etc/default/motion
 ให้แก้ไขโดยเปลี่ยนให้เป็น start_motion_daemon=yes  และ กด Ctl-X เพื่อออกและกด y เพื่อบันทึก
สุดท้ายทำการรันโปรแกรม motion ด้วยคำสั่ง
sudo service motion start
 รอประมาณสัก 30 วินาที และสามารถเข้าไปดู Vedio Stream ได้ที่ http://%5BIP%5D:8081
 ดูได้จากโปรแกรม VLC โดยเข้าไปที่  File > open Network และใส่  http://[IP]:8081
VLC Program

1.4 ตั้งค่า Config ผ่านเวป
เราสามารถเข้าไปแก้ไขไฟล์ motion.conf ผ่านหน้าเวปได้โดยเข้าไปตั้งค่า
sudo nano /etc/motion/motion.conf
เปลี่ยนค่าดังนี้
control_localhost off (สามารถให้เครื่องทุกเครื่องสั่งงานผ่าน browserได้)
 กด Ctl-X เพื่อออกและกด y เพื่อบันทึก
ทำการ restart โปรแกรม motion ด้วยคำสั่ง
sudo service motion restart
 ทดสอบลองเข้าเวป http://[Your IP]:8080 ผ่าน browser จะได้ตามรูปข้างล่าง
motion_webcofig
ref:    http://www.raspberrysource.in.th/article/5/webcam-on-raspberry-pi-with-motion
ref:    http://santilert.blogspot.com/2013/09/raspbian-os-raspberry-pi.html

Comments

Popular posts from this blog

VHDL

Embedded สัปดาห์ที่ 9 NI labview 2014