หน้าเว็บ

แสดงบทความที่มีป้ายกำกับ โครงงาน แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ โครงงาน แสดงบทความทั้งหมด

วันเสาร์ที่ 20 ธันวาคม พ.ศ. 2557

ระบบติดตามไร่สวนด้วยกล้อง (ตอนจบ)

ตอนที่ 8: แจ้งเตือนผู้ใช้เมื่อตรวจเจอการเคลื่อนไหวทางอีเมล์ 

ก่อนอื่นมาตั้งค่าเมล์ก่อน 
ตามที่แจ้งไว้ในตอนที่ 5 ว่าลง SMTP service สำหรับการส่งเมล์ตามรายการนี้

opkg install ssmtp

แต่ผมไปเจออีกอันใช้งานง่ายกว่าก็เลยเปลี่ยนใจมาใช้อันใหม่ https://forum.openwrt.org/viewtopic.php?id=18669

1. ลง SMTP service สำหรับการส่งเมล์อันใหม่
opkg install msmtp

2.ทำการตั้งค่า smtp โดยใช้คำสั่ง vi /etc/mstmprc แก้ค่าต่างๆให้ออกมาดังรูป อันนี้ใช้อีเมลล์ gmail เป็นตัวส่ง 




3. save file แล้วก็ลองทดลองส่งโดยใช้คำสั่ง 

echo 'Hello, World!' | sendmail xxxx@hotmail.com

คำสั่งข้างบนเป็นการทดลองส่งคำว่า Hello world ไปยังเมลล์ xxxx@hotmail.com

ส่งเสร็จลองไปเช็คเมลล์ดูถ้ามีเมลล์เข้าแสดงว่าการตั้งค่าสำเร็จแล้ว

4. เข้าไปตั้งค่าในโปรแกรม motion เพื่อให้มันส่งเมลล์เมื่อเจอภาพเคลื่อนไหว ใช้คำสั่ง vi /etc/motion.conf





เมื่อเข้าไปในไฟล์ ประมาณบรรทัดที่ 522 จะพบประโยค
; on_picture_save value
ให้ตัดเ ครื่องหมาย ; ออกเพื่อเปิดใช้งานฟังก์ชันนี้
แล้วเปลี่ยนค่า value เสียใหม่ ก็จะเป็นดังนี้

on_picture_save /mnt/sda1/notify "%d-%m-%Y" "%H:%M:%S" "%f"

/mnt/sda1/notify หมายถึงว่าให้เมื่อมีการบันทึกไฟล์ให้ไปเรียกโค๊ดที่อยู่ในไฟล notify ที่เก็บไว้ในโฟลเดอร์ /mnt/sda1/ 
"%d-%m-%Y"  หมายถึงว่าให้ส่งค่า วัน เดือน ปี ที่มีการบันทึกภาพไปที่โค๊ด notify
"%H:%M:%S"  หมายถึงว่าให้ส่งค่า เวลา ที่มีการบันทึกภาพไปที่โค๊ด notify
"%f"               หมายถึงว่าให้ส่งชื่อไฟล์ที่บันทึกไปที่โค๊ด notify

5. สร้างโค๊ด notify ไว้ในโฟลเดอร์ /mnt/sda1   โดยใช้คำสั่ง vi /mnt/sda1/notify แล้วพิมพ์โค๊ดขึ้นมาดังนี้



6. เตรียมโค๊ดต่างๆเสร็จแล้วก็รันโปรแกรม motion ด้วยการพิมพ์ motion เหมือนในตอนที่ 8
7. เมื่อ motion จับภาพเคลื่อนไหวและบันทึกภาพ โปรแกรม motion ก็จะเรียกโค๊ด notify ให้ทำงานพร้อมส่งค่าไปให้ด้วย ทางโค๊ด notify ก็จะทำการส่งเมล์แจ้งค่าเหล่านั้นไป รูปข้างล่างคือข้อมูลที่มันส่งไปที่เมลล์ xxxx@hotmail.com



เป็นอันเสร็จเรียบร้อยสำหรับการส่งเมล์ 

ตอนนี้ถือว่าเป็นการจบโครงงานนี้ครับ

วันจันทร์ที่ 8 ธันวาคม พ.ศ. 2557

ระบบติดตามไร่สวนด้วยกล้อง (ตอนที่เจ็ด)


 ตอนที่ 7 : ตั้งค่าโปรแกรม Motion Detection.


Motion เป็นโปรแกรมที่ถูกเขียนขึ้นด้วยภาษา C สำหรับระบบปฎิบัติการลีนุก เป็นงานอดิเรกของคนกลุ่มหนึ่งที่ทำให้เกิดผลประโยชน์แก่คนกลุ่มมาก

โปรแกรมใช้หลักการง่ายๆคือ วัดความแตกต่างของพิกเซลของแต่ละเฟรม ถ้ามีความแตกต่างระหว่างเฟรมมากก็แสดงว่ามีการเคลื่อนไหว ให้บันทึกรูปเก็บไว้

ในการพัฒนาครั้งนี้อ้างอิงจากเว๊บอย่างเป็นทางการของ motion http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHome

จากตอนที่ 5 เราได้ลงโปรแกรม motion ไปแล้วด้วยคำสั่ง opkg install motion

1. เข้าไปแก้ใขค่าในไฟล์ config ของ motion โดยพิมพ์คำสั่ง vi /etc/motion.conf





จากรูปด้านบน ประมาณบรรทัดที่ 360 ให้ใส่ path ที่เราต้องการบันทึกรูปไว้ ซึ่งของเราจะบันทึกไว้ที่ flash drive ที่ mount ไว้กับ router แล้ว ก็คือที่โฟลเดอร์ /mnt/sda1/motion (ดูรายละเอียดการ mount ได้ที่ตอนที่ 5)

เราสามารถตั้งค่าอย่างอื่นได้อีกมากมาย ไม่ว่าจะเป็นขนาดของรูป จะดูผ่านเว๊บหรือไม่ ความแตกต่างของพิกเซลที่จะให้จับเท่าไร ทำให้สามารถประยุกต์ใช้ได้อีกเยอะครับ รายละเอียดการตั้งก็ดูได้จาก http://www.lavrsen.dk/foswiki/bin/view/Motion/MotionGuide

2. เมื่อจะใช้งาน motion ก็แค่พิมพ์คำว่า motion แล้วมันก็จะทำงานเอง รูปด้านล่างมันกำลังจบภาพเคลื่อนใหวอยู่


3. เมื่อมันจับภาพเคลื่อนไหวมันจะบันทึกลงโฟลเดอร์ที่เราต้องค่าไว้ ดังแสดงในรูปด้านล่าง



4. พิมพ์ Ctrl+C เพื่อออกจากโปรแกรม แล้วพิมพ์ cd /mnt/sda1/motion  และก็ ls จะพบว่ามีไฟล์รูปถูกบันทึกเข้าไปแล้ว


รูปผู้ชายขี้เหร่ที่ปรากฎอยู่ในตอนที่หก ก็ได้มาด้วยวิธีนี้เอง


ยังไม่จบนะครับ โปรดติดตามตอนต่อไป

วันศุกร์ที่ 5 ธันวาคม พ.ศ. 2557

ระบบติดตามไร่สวนด้วยกล้อง (ตอนที่หก)


ตอนที่ 6 : ทำให้ USB webcam ทำงาน

ตอนผมทำโปรเจคนี้ ผมไปซื้อเว๊บแคมถูกๆร้อยกว่าบาทมาใช้ครับ ยี้ห้อ RICH-211 ความละเอียดประมาณแสนพิกเซลเอง หาข้อมูลในกูเกิลไม่เจออย่างอื่นๆนอกจากรูปของมัน






เมื่อไม่มีข้อมูลใดๆ ก็ไม่รู้ว่าจะมีไดร์เวอร์ที่สนับสนุนอันนี้หรือไม่ หาข้อมูลเท่าไรก็ไม่เจอ ก็เลยมาลองเอาเว๊บแคมมาใช้บน Ubuntu แล้ว Dmesg ดู ก็ไม่มีข้อมูลอะไรเลย 


หาข้อมูลไปเรื่อยๆ เจอเรื่องน่าอ่าน  เป็นเรื่องชาวฝรั่งเศสที่ซื้อเวบแคมมาเป็นของขวัญวันคริสมัสให้ลูกสาวแต่ปรากฎมันใช้บน Linux ไม่ได้ เขาก็เลยสร้างไดร์เวอร์ซะเองเลย ตอนนี้ไดร์เวอร์ของเขาถูกใช้อย่างกว้างขวางใน  Linux หลายๆ distribution อ่านเรื่องราวเต็มได้ที่ http://www.theinquirer.net/inquirer/news/1047633/one-writes-linux-drivers-235-usb-webcams


แต่โค๊ดของเขาเมื่อเอามาคอมไพล์บน Ubuntu เ วอร์ชั่น 9.04 ที่ผมใช้ตอนทำโปรเจ๊คนี้ ผมคอมไพล์มันไม่ผ่าน 

ลองหาข้อมูลเรื่อยๆ พบมีข้อมูลว่าทีมพัฒนา Ubuntu ได้นำมันไปใส่ไว้ใน driver ที่มีชื่อว่า USB  Video Class หรือเรียกย่อๆว่า UVC ซึ่งถูกนำไปใช้ใน Ubuntu 9.10 แล้ว 

ก็เลยไปดาว์นโหลด ubuntu 9.10 มาลองใช้บน vmware ดู (ดูรายละเอียดเกี่ยว vmware ไ ด้ที่ http://en.wikipedia.org/wiki/VMware ) ปรากฎว่าเมื่อ dmesg แล้วพบว่ามันเกี่ยวกล้องโผล่มาแล้ว และมีการสร้างไฟล์สำหรับ video ด้วย











นำข้อมูลนี้ไปเช็ค ว่ามีไดรเวอร์ UVC เวอร์ชัน v0.1.0 ที่สนับสนุนบน Openwrt 2.6 บ้างหรือไม่ ปรากฏว่ามีครับ ทำให้การค้นหาที่ยาวนานไปจบลงได้ และทำให้สามารถเริ่มปฎิบัติการติดตั้งกล้องได้

1. จากตอนที่แล้ว ซึ่งได้ลงไดร์เวอร์ของ USB Webcam ตามรายการต่อไ ปนี้

opkg install kmod-usb-video
opkg install spcacat    ----สำหรับถ่ายภาพจากกล้อง webcam

ให้ตัด opkg install spcacat    ----สำหรับถ่ายภาพจากกล้อง webcam  เพราะไม่จำเป็นแล้ว

แล้วลงไดร์เวอร์  UVC เพิ่มโดยใช้คำสั่ง

opkg install kmod-video-uvc

2. ลงเสร็จแล้วให้ถอนสาย adapter ของ router ออกแล้วเสียบใหม่

3. เข้าไปใน putty แล้วพิมพ์คำสั่ง dmesg จะพบข้อความดังรูปด้านล่างที่แสดงว่า router มันเจอเว๊บแคมแล้ว






4.พิมพ์คำสั่ง cd /dev แล้วก็ ls ก็จะพบว่ามีโฟลเดอร์ vdo0 ขึ้นมาแล้ว







นี้เป็นตัวอย่างภาพจากกล้องเว๊บแคบครับ




เป็นความสำเร็จแบบขี้เหร่จริงๆ 555

ยังไม่จบนะครับ โปรดติดตามตอนต่อไป

วันเสาร์ที่ 29 ตุลาคม พ.ศ. 2554

ห้องวิจัยเล็กๆ

จากที่ได้เอาเรื่องราวนี้ไปแบ่งบันให้ในเว๊บเกษตรพอเพียงในครั้งก่อน
จนได้คำแนะนำหลายๆอย่างมา

สิ่งสำคัญที่ได้มาคือ ตัวผมเองยังไม่รู้จักธรรมชาติของเกษตร แต่ดันอุตริคิดสร้างเครื่องมือทางเกษตร 555

ไม่เป็นไร นักวิจัย ก็คือนักเรียนรู้ การเรียนรู้ไม่มีที่สิ้นสุด

เมื่อลองหาจุดเริ่มต้นที่จะเรียนรู้การทำเกษตร
คำสุดฮิต ไฮโดรปอนิกส์ (hydroponics) ก็เข้าหัวมา
ลองหาเรื่องราวนี้ในกูเกิล แต่ไปสะดุดกับคำว่า อควาปอนิกส์ (aquaponics) แทน

พูดแบบง่ายๆ อควาปอนิกส์ คือการเอาของเสียของปลามาเป็นสารอาหารให้ผัก
ส่วนผักก็กำจัดส่วนที่เป็นของเสียให้กับบ่อปลา

อ่านงานวิจัยเกี่ยวกับเรื่องนี้ไปหลายชิ้น
เพื่อให้เข้าใจเรื่องนี้มากขึ้น ก็เลยหยิบชิ้นหนึ่งมาลองทำตาม

แต่ด้วยข้อจำกัดหลายอย่าง ก็เลยเปลี่ยนแปลงระบบของงานวิจัยดั้งเดิม
จากใช้ปลาดุกที่ขับถ่ายออกมาเป็นสารจำพวกไนโตรเจนสูง มาใช้ปลาคาร์พแทน
จากที่ปลูกผัก lettuce เป็นปลูกกวางตุ้งกับผักกาดขาวแทน 555

แล้วห้องวิจัยเล็กๆของผมก็ได้ถูกก่อตั้งขึ้นดังรูปนี้

ห้องวิจัยเล็กๆของผม
















ห้องวิจัยแบ่งเป็น 2 ส่วน
ส่วนแรกเป็นระบบ อควาปอนิกส์เล็กๆ
ปั๊มน้ำสูบน้ำจากบ่อปลาคาร์พขึ้นไปในระบบบ่อพักและบ่อกรอง
น้ำที่ผ่านจากบ่อกรองก็ไหลสู่บ่อปลูกผักที่มีอยู่ 2 บ่อ แล้วไหลกลับไปสู่บ่อปลา
2 บ่อนี้ปลูกผักได้ 16 กระถาง

ระบบ aquaponics ของห้องวิจัย













ส่วนที่สองเป็นแปลงปลูกผักใช้ดินแบบพื้นๆที่ทำจากลังโฟม

ทดลองไประยะหนึ่ง ปรากฎว่าผักในแปลงลังโฟมใหญ่โตตามรูปด้านล่าง


ผักในแปลงลังโฟม














แต่ในระบบอควาปอนิกส์เติบโตได้แค่นี้ 555

กวางตุ้งและผักกาดขาวในระบบ aquaponics
















เนื่องจากไม่มีเครื่องตรวจวัดเหมือนห้องวิจัยใหญ่ๆ
จึงไม่สามารถวัดปริมาณสารอาหารในระบบอควาปอนิกส์ของผมได้

ก็เลยลองเปลี่ยน จากปลูกกวางตุ้งกับผักกาดขาว
มาปลูกผักที่ต้องการปุ๋ยน้อยกว่าอย่างผักบุ้งในระบบอควาปอนิกส์แทน

ผลปรากฎเป็นตามรูปนี้ครับ


ผักบุ้งในระบบ aquaponics

















ถือว่าโตในระดับที่ใช้ได้เลยครับ

การทดลองนี้ยังไม่ได้สรุปผลใดๆ
แค่เอามาเล่าสู่กันฟังก็เท่านั้นเอง