หน้าเว็บ

แสดงบทความที่มีป้ายกำกับ Embedded Systems แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ Embedded Systems แสดงบทความทั้งหมด

วันศุกร์ที่ 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

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

วันพุธที่ 3 ธันวาคม พ.ศ. 2557

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

ตอนที่ 4 : ต่อ router เข้ากับ internet บ้าน
ตอนที่แล้วลองติดต่อ router ผ่านทาง telnet แต่ว่าการติดต่อทาง telnet ไม่ค่อยปลอดภัยเนื่องจากไม่ได้กำหนดรหัสเพื่อเข้าไปจัดการrouter   ซึ่งทำใ ห้ใครก็สามารถเข้าไปจัดการมันได้ ดังนั้นต้องกำหนดรหัสให้มัน  แต่เมื่อใส่รหัสแล้วจะไม่สามารถติดต่อผ่าน telnet ได้อีก ต้องติดต่อผ่านโปรแกรม putty

1. บนหน้า telnet พิมพ์ passwd  มันจะบอกให้ใส่ password และใส่อีกครั้งเพื่อยืนยัน หลังนั้นให้ออกจาก telnet ด้วยคำสั่งexit


2. บน terminal ของ ubuntu ให้ลงโปรแกรม Putty ด้วยคำสั่งsudo apt-get install putty

3. เมื่อลงเสร็จให้พิมพ์คำสั่ง putty เพื่อเรียกใช้โปรแกรม จะปรากฎหน้าต่างดังรูปด้านล่าง แล้วให้พิมพ์ IP ของ Router ที่เราต้องการติดต่อนั้นคือ IP 192.168.1.1 แ ล้วกด open






4. จะมีการถามตามรูปด้านล่างนี้ให้กด Accept





5. หลังจากนั้นก็จะเข้าไปหน้าที่ให้เราใส่ login และ password เมื่อใส่เสร็จก็เข้าหน้าที่แสดงว่าเราสามารถติดต่อผ่าน Router ผ่านโปรแกรม putty ได้แล้ว







6. พิมพ์คำสั่ง vi /etc/config/network เพื่อใช้โปรแกรมอิดิเตอร์ของ linux ที่ชื่อว่า vi เข้าไปแก้ใข ไฟล์ที่ชื่อว่า network ในโฟลเดอร์ /etc/config/ รูปด้านล่างเป็นค่า network เดิม






7. จากข้อ 6 แก้ IP ของ router WL500gpV2 ให้เป็น 192.168.2.1 ซึ่งอยู่อีกวงหนึ่งเพื่อป้องไม่ให้ไปชนกับ IP ของ router อีกอันที่ใช้ต่อ internet อยู่ (IP 192.168.1.1 เป็นค่าที่ตั้งเป็นค่าตั้งต้นของทุก Router ที่ใช้กันอยู่ทั่วไป)




8. หลังแก้แล้วให้ พิมพ์คำสั่ง exit เพื่อออกจาก putty 

9 ถอด adapter ของ WL500gpV2 ประมาณ 20 วินาทีแล้วเสียบกลับเข้าไป เพื่อให้มันได้ reboot 
10. ติดต่อ router WL500gpV2 ผ่าน putty อีกครั้ง แต่คราวนี้ต้องพิมพ์ IP เป็น 192.168.2.1 เนื่องจากเราได้เปลี่ยนมันมาใช้อันนี้แล้ว

11. เอาสายแลนอีกเส้นนึง ปลายด้านหนึ่งเสียบช่อง WAN ของ WL500gpV2 แล้วเอาอีกปลายไปเสียบกับช่อง LAN ของ Router ที่ใช้ต่อ internet ซึ่งกรณีของผมเป็น Wireless router ยี่ห้อ Thomson นี้คือเหตุผลที่ต้องเปลี่ยน IP เพื่อไม่ให้สอง Router มี IP ชนกัน



















12. ลองทดสอบว่า router WL500gpV2 ติดต่อ internet ได้หรือยัง โดยการพิมพ์คำสั่ง ping www.google.com หากผลเป็นตามรูปด้านล่างแสดงว่า WL500gpV2 ติดต่อกับ internet ได้แล้ว 




หมายเหตุ ..... ในระบบ Linux การติดต่อกับ internet ได้เป็นสิ่งที่สำคัญมาก เพราะการลงโปรแกรมเป็นการลงแบบ real time คือ download มาแล้วก็ Install ทันที


เมื่อต่อเน็ตได้แล้ว ตอนหน้าจะเป็นการลง ไดร์เวอร์และโปรแกรมที่จำเป็น ใน WL500gvP2

วันจันทร์ที่ 24 พฤศจิกายน พ.ศ. 2557

PlayWithOpenSource

ผมกำลังเขียน blog อันใหม่ขึ้นเป็นภาษาอังกฤษครับ
สำหรับใครที่ชื่นชอบ opensource ลองเขาไปดูนะครับ

http://playwithopensource.blogspot.com/

PlayWithOpensource: This site provides you the tutorial for building your own system by exploiting existing well-known opensource software/hardware. OpenWrt, TinyOS, GNU radio and USRP are the main targets of this site. Please enjoy and play together.