เปลี่ยนคอมเน่าๆให้เป็นอุปกรณ์รักษาความปลอดภัย

รูปภาพของ golf24

ถ้าคุณมีคอมเก่าๆไม่รู้จะเอาไปทำอะไร นอกจากทิ้งไว้ใหแมงมุมเกาะ(ทำรัง) วันนี้ผมขอแนะนำอีกทางเลือกหนึ่งนอกจากการขายทิ้ง คือทำให้เครื่องคอมของคุณเป็นอุปกรณ์เพื่อรักษาความปลอดภัย โดยการลงโปรแกรมสำหรับบันทึกภาพเฉพาะเมื่อมีการเคลื่อนไหวเกิดขึ้น(motion detection) หรือโปรแกรมจะบันทึกภาพเฉพาะในกรณีที่จำนวน pixel ระหว่าง 2 ภาพล่าสุด มีความเปลี่ยนแปลงมากกว่าที่ผู้ใ้ช้กำหนดไว้ โดยอุปกรณ์ที่ผู้เขียนใช้จะเน้นต้นทุนต่ำสุดๆ ซึ่งมีดังนี้

  • คอมพิวเตอร์ intel 566 MHz มือสอง 2(หรือ 3) ไม่มี ram และ harddisk ราคา 500 บาท
  • webcam เลหลัง ราคา 100 บาท
  • อุปกรณ์แปลง ide เป็น compact flash ราคา 100 บาท
  • Compact flash 1 Gb ยืมพี่ต้นมา
  • SD Ram 64 Mb ยืมพี่โอ๊ตมา(ประมาณ 100 กว่าบาท เซียร์รังสิต)

ขั้นตอนแรกให้ลง openwrt linux สำหรับ X86 ก่อน โดยดาวน์โหลดที่ http://downloads.openwrt.org/kamikaze/7.07/x86-2.6/openwrt-x86-2.6-ext2.... หลังจากนั้นให้ mount เพื่อหาไฟล์ที่อยู่ภายในโดยใช้คำสั่ง

mkdir /media/openwrt_boot

mkdir /media/openwrt_root

mount -o loop,offset=32256 -t ext2 openwrt-x86-2.6-ext2.image /media/openwrt_boot/

mount -o loop,offset=4677120 -t ext2 openwrt-x86-2.6-ext2.image /media/openwrt_root/

- หมายเหตุ การ mount ไฟล์ได้ความช่วยเหลือจากพี่ต้น

จากนั้นให้ copy ไฟล์ทั้งหมดที่อยู่ในทั้ง directory /media/openwrt_boot/ และ /media/openwrt_root/ ลงใน compact flash หรือ harddisk เปล่า

หลังจากนั้นให้ลง bootloader เช่น grub หรือ lilo

เมื่อลง bootloader เสร็จให้ reboot เครื่อง แล้วเปลี่ยนให้บู๊ตจาก compact flash หรือ harddisk เพิ่งลง linux ไว้

- หมายเหตุ กรณี boot เครื่องจาก compact flash เครื่องจะเห็นเป็น harddisk ตัวหนึ่ง

เมื่อเข้าหน้าจอ terminal ให้ลงไดรเวอร์ของอุปกรณ์ network ก่อนเพื่อให้สามารถติดต่อกับเครื่องอื่นได้ โดยไดรเวอร์ที่ลงขึ้นอยู่กับ chipset ของ อุปกรณ์ ซึ่งสามารถ search ดูได้จาก http://downloads.openwrt.org/kamikaze/7.07/x86-2.6/packages/Packages


เมื่อใช้งานอินเตอร์เน็ตได้แล้ว ให้ลงโปรแกรมโดยพิมพ์คำสั่งดังข้างล่างโดยเริ่มจาก

ไดรเวอร์ของระบบไฟล์

ipkg install kmod-fs-ext3

ipkg install kmod-fs-vfat

ipkg install kmod-fs-msdos

ipkg install kmod-fs-nfs

ไดรเวอร์ของอุปกรณ์ usb

ipkg install kmod-usb-core

ipkg install kmod-usb-uhci

ipkg install kmod-usb-ohci

ipkg install kmod-usb2

ไดรเวอร์ของอุปกรณ์แสดงผลและ webcam

ipkg install kmod-videodev

ipkg install kmod-spca5xx-le

ipkg install kmod-gspca

ftp server สำหรับรับส่งไฟล์

ipkg install vsftpd

โปรแกรมบันทึกและตรวจจับการเคลื่อนไหว

ipkg install motion

ไดรเวอรของอุปกรณ์ usb to parellel เพื่อควบคุมอุปกรณ์ภายนอก

ipkg install kmod-usb-parellel

- หมายเหตุ ถ้าลงโปรแกรมไม่ได้โดยขึ้น error ว่าขาด library ให้ลง library ตัวนั้นๆ ด้วยคำสั่ง ipkg install หรือใช้คำสั่ง ldd ตามด้วยโปรแกรมที่ต้องการใช้งาน เพื่อดูว่าโปรแกรมดังกล่าวต้องการใช้ library ตัวใดบ้าง

 

เมื่อต้องการรันโปรแกรมก็พิมพ์ motion ที่ console และเมื่อต้องการดูภาพก็ใช้โปรแกรมพวก ftp client เช่น gftp, filezilla คัดลอกไฟล์มาไว้ที่เครื่องเรา หรือถ้าไม่อยากคัดลอกไฟล์ ก็ให้ลง nfs server หรือ samba server ที่เครื่องที่รันโปรแกรม motion แล้วค่อยใช้เครื่องเราิอีกเครื่องดูภาพผ่าน network

- หมายเหตุ openwrt linux มีเฉพาะ text mode จึงไม่สามารถดูภาพจากตัวเองได้ ต้องนำภาพไปดูที่เครื่องอื่น

รูปตัวอย่างขนาด 640x480 จากโปรแกรม คุณภาพอาจไม่ดีนัก(ห่วย) เพราะใช้กล้อง webcam คุณภาพต่ำ

 

การปรับแต่งไฟล์ config ของ motion (/etc/motion.conf)

การแก้ไฟล์ผู้เขียนใช้โปรแกรม vi โดยการใช้การคือ vi /etc/motion.conf และในไฟล์ motion.conf จะอธิบายรายละเอียดของ config แต่ละตัวไว้แล้ว ในที่นี้จะเน้นที่เห็นว่าสำคัญดังนี้

width กำหนดขนาดความกว้างของภาพที่บันทึก(ค่าเริ่มต้น 320)

height กำหนดขนาดความสูงของภาพที่บันทึก(ค่าเริ่มต้น 240)

framerate กำหนดจำนวนภาพที่จะบันทึกต่อวินาที กรณีที่เกิดการเคลื่อนไหว

targer_dir กำหนด directory ที่ใช้เก็บภาพเมื่อมีการเคลื่อนไหวเกิดขึ้น

webcam_port กำหนด port ที่ใช้สำหรับดูภาพ ณ ขณะนั้น ผ่านทาง web browser

control_port กำหนด port ที่ใช้ในการปรับแต่่งไฟล์ motion.conf และการควบคุมอื่นๆ ผ่านทาง web browser

threshold กำหนดจำนวน pixel ขั้นต่ำที่ใช้ในการตรวจจับ คือ ถ้ามีการเปลี่ยนแปลง pixel ระหว่าง 2 ภาพ มากกว่าที่กำหนดไว้ โปรแกรมจะบันทึกภาพ

 

การเขียนโปรแกรมเพื่อควบคุม parellel port(usb to parellel)

ในที่นี้จะใช้ขาสัญญาณ ของ parellel port เพื่ออ่านค่าจาก proximity switch ที่ติดอยู่กับประตู เพื่อตรวจสอบว่าประตูห้องของเราถูกเปิดออกตอนที่เราไม่อยู่ห้องหรือไม่ โดยจะแจ้งเตือนผ่าน e-mail เมื่อประตูถูกเปิดออกเกิน 0.5 วินาที

 

การส่ง e-mail อัตโนมัติผ่าน internet เพื่อแจ้งเตือน

TODO

 

ข้อแนะนำเพิ่มเติม

- ในการใช้งานจริงควรเปลี่ยนจาก compact flash เป็น harddisk เพราะจำนวนครั้งของการเขียนข้อมูลลง compact flash มีจำกัด 

- ไม่ควร(หรือห้าม) ทำ swap บน compact flash เพราะจะทำให้ compact flash เสียเร็ว(มาก)

- ถ้าต้องการภาพที่มีคุณภาพสูง ควรเปลี่ยนเป็นกล้อง webcam ที่มีคุณภาพสูง หรือเปลี่ยนเป็นกล้องแบบ analog

รายละเอียดเพิ่มเติม

- http://www.openwrt.org

- http://www.opentle.org/th/node/5479 บล๊อกเก่าของผู้เขียน

- http://mxhaard.free.fr/spca5xx.html คุณภาพของกล้องแต่ละยี่ห้อ

รูปภาพของ ไม่ออกนาม

ขอถามหน่อยครับ

จากที่ผมอ่านเป็นบทความทีดีทีเดียวครับ แต่ยังงงครับ ตรงการติดตั้ง bootloader เช่น grub หรือ lilo ผมต้อทำอย่างไรครับ ช่วยตอบกลับทางเมลผมได้ไหมครับ meaw_up@hotmail.com ขอบคุณมากครับ
Syndicate content