Electoday 4.0

ประกาศ => Projects => Topic started by: tumrobot on December 01, 2016, 01:01:28 pm

Title: ทดลอง ส่งการแจ้งเตือนการบุกรุก เข้าทางแอพไลน์ และควบคุมด้วย Android
Post by: tumrobot on December 01, 2016, 01:01:28 pm
เนื่องจากว่า มีความจำเป็นที่จะต้องทิ้งบ้าน เพื่อเดินทางไปธุระ บ่อยๆ จึงค่อนข้างที่จะเป็นห่วงทรัพย์สินของตนเองภายในบ้าน ซึ่งก่อนหน้านี้ ก็ได้แต่เพียงใช้การสั่งงานเปิดปิดไฟฟ้า และตั้งเวลา ผ่านระบบอินเตอร์เน็ต ซึ่งคิดว่ายังไม่น่าจะเพียงพอที่จะป้องกัน โจร ขโมย ที่อาจจะเข้ามาบุกรุกบ้านได้ เพราะเคยได้ข่าวว่า ปัจจุบัน พวกโจร ขโมย จะสังเกตุพฤติกรรมของผู้อาศัยภายในบ้าน สังเกตุเวลาเปิด ปิดไฟ ว่าอยู่บ้านเหรอเปล่า และตอนนี้ก็มีระบบกล้องวงจรปิด ที่เริ่มเป็นที่นิยมมากขึ้น ไว้คอยบันทึกเหตุการณ์ต่างๆ ที่เกิดขึ้นในขณะที่เราไม่ได้อยู่ที่บ้านให้เจ้าของ สามารถเห็นเหตุการณ์ในบ้านของตนเอง ขณะที่ไม่อยู่บ้านได้ แต่การติดกล้องวงจรปิด ก็เป็นแค่การป้องปรามโจรผู้ร้าย ไม่อาจจะช่วยขับไล่ได้ ดังนั้นจึงมีความคิดที่ว่าน่าจะมีระบบกันขโมยที่สามารถสั่งควบคุมได้ และแจ้งเตือนการบุกรุก เข้ามาที่โทรศัพท์มือถือของเราได้ด้วย

แนวคิดการแจ้งเตือนการบุกรุก เข้าโทรศัพท์มือถือ มีอยู่ 2 ทางก็คือ

1. ส่งการแจ้งเตือนผ่านระบบ SMS เข้าทางโทรศัพท์มือถือ ข้อดีก็คือสามารถทำได้ง่าย เพราะแค่ส่งคำสั่งไปที่ GSM Module ไม่กี่คำสั่งก็สามารถทั้งส่ง SMS และโทรไปยังเครื่องปลายทางได้ทันที แต่ข้อเสียก็คือ มีค่าใช้จ่ายในการที่ต้องเสียค่าส่งข้อความ และยังจะต้องเติมเงินเพื่อรักษาสภาพซิมการ์ดอีก

2. ส่งการแจ้งเตือนผ่านระบบอินเตอร์เน็ต แบบ Push Notification ก็จะมีหลายวิธี ไม่ว่าจะ Push ผ่านเวปเช่น pushbullet.com หรือผ่านทาง google notification แต่ก็รู้สึกว่ามีความยุ่งยากซับซ้อนในการทำงานมากเกินไป

จนกระทั่ง Line ได้เปิดให้ใช้งาน Line Bot Notification ให้สามารถส่งแจ้งเตือนข้อความเข้า App ไลน์ ได้โดยผ่านการส่งข้อมูลแบบ POST หรือ GET จึงทำให้ง่ายต่อการที่เราจะส่งข้อความแจ้งเตือนเข้าโทรศัพท์มือถือของเรา ประกอบกับปัจจุบันตัว WiFi Module ESP8266 ก็มีความสามารถที่จะเชื่อมต่ออินเตอร์เน็ตและสามารถเขียนโปรแกรมเพื่อพัฒนาผ่าน Arduino IDE จึงทำให้ยิ่งสะดวกมากขึ้นที่จะทำระบบการแจ้งเตือนการบุกรุก ส่งข้อความแจ้งเตือนเข้าทาง ไลน์ ซึ่งเราก็ใช้แอพพลิเคชั่นนี้เป็นประจำอยู่แล้ว

อุปกรณ์ที่ใช้ในการทดสอบ คร่าวๆ มีดังต่อไปนี้

1. สวิตช์แม่เหล็ก แบบ NO

2. อุปกรณ์ ส่วนควบคุม , MCU, WiFi Module , รีเลย์ , PCB และ Power Supply 5V

3. ไซเรน ขนาด 12V แต่ใช้ไฟเพียงแค่ 5 โวลต์ ก็สามารถทำงานได้แล้ว

(http://openfog.net/MyPicture/Document/Alert/14993490_1136532773049791_519807286574111579_n.jpg)


(http://openfog.net/MyPicture/Document/Alert/15196060_1136535566382845_114612351826191872_o.jpg)


(http://openfog.net/MyPicture/Document/Alert/15110403_1136535726382829_8959268169259666595_o.jpg)

      
วงจรตัวอย่างที่ต่อเสร็จแล้ว


(http://openfog.net/MyPicture/Document/Alert/15137511_1136535913049477_6009886497102071127_o.jpg)

       
สาเหตุที่ต้องเพิ่ม MCU เบอร์ PIC18F14K50-I/P เข้ามาในวงจรอีกทั้งๆ ที่ตัว ESP8266 ก็สามารถเขียนโปรแกรมให้ทำงานได้เองและมี I/O ที่น่าจะเพียงพอกับการใช้งาน ก็เนื่องมาจากว่า ก่อนหน้านี้เคยทดสอบนำตัว ESP8266 มาทำงานในลักษณะนี้แบบเดี่ยวๆ แล้วผลที่เจอก็คือ ในขณะที่มีการเชื่อมต่อไวไฟ เข้ากับเร้าเตอร์แล้วถ้าสัญญาณอินเตอร์เน็ตเกิดมีปัญหา แล้วเวลาเราให้ตัว ESP8266 ที่การ reset ตัวเองแล้วมีบางครั้งที่ตัว ESP8266 รีบูตกลับมาทำงานเองไม่ได้ดังนั้นเบื้องต้นจึงให้ทำงานควบคู่กับ MCU ไปก่อน และคอยให้ตัว MCU คอยเช็คสถานะการทำงานของ ESP8266 ซึ่งถ้าหากตรวจพบการทำงานที่ผิดปกติก็ให้ตัว MCU ทำการรีเซ็ตตัว ESP8266 แทน แล้วในอนาคตเดี๋ยวค่อยหาทางแก้ปัญหานี้ และพัฒนาให้สามารถทำงานได้ด้วยตัวโมดูลเองให้ได้อย่างเต็มประสิทธิภาพอีกครั้งนึง อีกสาเหตุนึงก็คือตัว ESP8266 นั้นการใช้ Interupt Timer ในตัวนั้นค่อนข้างจำกัด ในที่่นี้ก็คือนอกจากจะมีให้ใช้น้อยแล้ว บางครั้งยังพบการทำงานของ Timer ที่ผิดพลาดจนเป็นสาเหตุทำให้ตัว WDT ทำการรีเซ็ตตัวมันเองอีกด้วย เพราะฉะนั้น หากต้องการการทำงานของตัว ESP8266 ที่ค่อนข้างเสถียร เราจึ่งให้ตัว ESP8266 ทำหน้าที่แค่เชื่อมต่อสัญญาณอินเตอร์เน็ตเท่านั้น

ทดสอบการทำงานของ ตัวแจ้งเตือนการบุกรุก ส่งข้อความเข้าไลน์

       
(http://openfog.net/MyPicture/Document/Alert/videoalert.png)
https://www.youtube.com/watch?v=nZ8QYV0KPbM (https://www.youtube.com/watch?v=nZ8QYV0KPbM)


Source Code:

MCU: เขียนด้วย CCS สามารถดาวน์โหลดได้ ที่นี่ http://openfog.net/MyPicture/Document/Alert/MCU_CODE.zip (http://openfog.net/MyPicture/Document/Alert/MCU_CODE.zip)

ESP8266: เขียนด้วย Arduino IDE สามารถดาวน์โหลดได้ ที่นี่ http://openfog.net/MyPicture/Document/Alert/ESP8266_LINE_ALERT.zip (http://openfog.net/MyPicture/Document/Alert/ESP8266_LINE_ALERT.zip)

 
App Android :

(http://openfog.net/MyPicture/Document/Alert/MQTTTest.png)
 

Android Code: พัฒนาด้วย Android SDK บน Eclipse IDE สามารถดาวน์โหลดได้ ที่นี่ http://openfog.net/MyPicture/Document/Alert/MQTT_Test.zip (http://openfog.net/MyPicture/Document/Alert/MQTT_Test.zip)

 

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

1. แจ้งเตือนการกดกริ่งหน้าบ้าน ทำเป็น Smart Ring Bell

2. แจ้งเตือนเหตุ ไฟใหม้ ไฟฟ้าลัดวงจร

3. แจ้งเตือนสำหรับกันขโมยของรถยนต์ กรณีรถโดนทุบ หรือประตูรถถูกเปิด

ไว้ถ้าหากมีโอกาสจะมาลองทำโปรเจ็คเหล่านี้เล่นๆดูครับ


ขอบคุณ ข้อมูลจาก

http://www.ioxhop.com/article/47/esp8266-esp8285-%E0%B8%81%E0%B8%B1%E0%B8%9A%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%AA%E0%B9%88%E0%B8%87%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%81%E0%B8%88%E0%B9%89%E0%B8%87%E0%B9%80%E0%B8%95%E0%B8%B7%E0%B8%AD%E0%B8%99%E0%B9%80%E0%B8%82%E0%B9%89%E0%B8%B2-line (http://www.ioxhop.com/article/47/esp8266-esp8285-%E0%B8%81%E0%B8%B1%E0%B8%9A%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%AA%E0%B9%88%E0%B8%87%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%81%E0%B8%88%E0%B9%89%E0%B8%87%E0%B9%80%E0%B8%95%E0%B8%B7%E0%B8%AD%E0%B8%99%E0%B9%80%E0%B8%82%E0%B9%89%E0%B8%B2-line)


https://python3.wannaphong.com/2016/10/%E0%B8%97%E0%B8%B3%E0%B8%A3%E0%B8%B0%E0%B8%9A%E0%B8%9A%E0%B9%81%E0%B8%88%E0%B9%89%E0%B8%87%E0%B9%80%E0%B8%95%E0%B8%B7%E0%B8%AD%E0%B8%99%E0%B8%9A%E0%B8%99-line-%E0%B8%94%E0%B9%89%E0%B8%A7%E0%B8%A2-py.html (https://python3.wannaphong.com/2016/10/%E0%B8%97%E0%B8%B3%E0%B8%A3%E0%B8%B0%E0%B8%9A%E0%B8%9A%E0%B9%81%E0%B8%88%E0%B9%89%E0%B8%87%E0%B9%80%E0%B8%95%E0%B8%B7%E0%B8%AD%E0%B8%99%E0%B8%9A%E0%B8%99-line-%E0%B8%94%E0%B9%89%E0%B8%A7%E0%B8%A2-py.html)
Title: Re: ทดลอง ส่งการแจ้งเตือนการบุกรุก เข้าทางแอพไลน์ และควบคุมด้วย Android
Post by: skytec on December 29, 2016, 01:30:37 am
เนียนดีครับ แต่ ลองใช้ตัวนี้แทน น่าจะออก มาสวยงามขึ้นอีก
http://www.domotic.in/wp-content/uploads/2016/06/ESP8266-Wifi-Relay-Board-02-300x197.jpg
Title: Re: ทดลอง ส่งการแจ้งเตือนการบุกรุก เข้าทางแอพไลน์ และควบคุมด้วย Android
Post by: wlasoi on December 29, 2016, 10:27:55 pm
กำลังสนใจ LineBot อยู่พอดี
Title: Re: ทดลอง ส่งการแจ้งเตือนการบุกรุก เข้าทางแอพไลน์ และควบคุมด้วย Android
Post by: tatree_b on December 30, 2016, 10:46:51 am
ลองแยกตัวแหล่งจ่ายสวิทชิ่งออกมา หรือไม่ก็ใช้ไฟดีซีจากอะแดปเตอร์ลิเนียร์ไปก่อนเพื่อเลี่ยงการรบกวน ถ้าระบบมันเสภียรก็ค่อยเอากลับแล้วฟิลเตอร์ให้ดี อาจจะลดปัญหารีเซ็ทเองได้
Title: Re: ทดลอง ส่งการแจ้งเตือนการบุกรุก เข้าทางแอพไลน์ และควบคุมด้วย Android
Post by: hj2 on December 30, 2016, 07:57:53 pm
ผมกด play หลายรอบเลย
 ;D