[Week 11] EXERCISE

Raspberry Pi : MQTT



1.Send Temperature DS1820 from Raspberry Pi to MQTT Broker

- กำหนดค่า Gadget Keeper
- ทำตามวิธีการสร้าง Event And Trigger tutorial หากคุณต้องการรายละเอียด “point and click” UI instructions.
1. สร้าง the “thermometer” thing


2. สร้าง “temperatureChanged” event


3. สร้าง API Key กับ "All" การอนุญาต“thermomiter”


4.Download "gadgetkeeper directory" จาก https://drive.google.com/folderview?id=0Bwe-LR9mO7CcenVJTkRJblRxZXc&usp=sharing และย้ายไดเรกทอรี / home / Pi

5. ไปที่ "cd gadgetkeeper" และ "sudo chmod 777 *" เพื่อช่วยให้ได้รับอนุญาตจากผู้ใช้สำหรับการอ่าน/เขียนและการดำเนินการไฟล์ในไดเรกทอรี

6.ใช้ "sudo นาโน event_trigger.sh" และเปลี่ยน API_KEY, THING_ID และ EVEN_ID

7. ใช้ "sudo nano get_value.sh" และ "sudo nano set_value.sh" และเปลี่ยน API_KEY, THING_ID และ PROPERTY_ID

8. ใช้คำสั่ง "./send_temperature.sh" เพื่อส่งอุณหภูมิ




ค่าของอุณหภูมิจะแสดงใน “thermometer >> Properties >> Edit Value >> Get”




2.Temperature monitoring with Raspberry Pi and Event/Trigger

1. สร้าง “temperatureChanged” เหตุการณ์




2. สร้าง “highTemperatureEmail” trigger


3. คลิกปุ่ม “Edit Script” กับ "highTemperatureEmail" trigger และ code trigger business logic

ดูโค้ดโปรแกรมที่นี่ คลิ้ก



4. ใช้คำสั่ง "./send_temperature.sh" ในการที่จะส่ง RPI ไปที่ อุณหภูมิ


5. fire "การเปลี่ยนแปลงของอุณหภูมิ" โดยใช้ UI


- เปิด “Events” in the “Thing: Thermometer” tab
- เลือก “temperatureChanged”
- คลิ้ก “Push Event” to open dialog
- กำหนดรายละเอียดเหตุการณ์ (the float “value” may be edited)
- คลิก “Push” เพื่อเปิดใช้งาน event and its trigger
- ตรวจสอบว่าอีเมลถูกส่ง


3.Home automation and security with Raspberry Pi

เราจะมี switch 1 เป็น sensor1, switch 2 เป็น sensor2 และ switch 3 เป็น Motion sensor. เมื่อ switch 1 หรือ switch 2 เปลี่ยนสถานะ  สถานะจะแสดงใน RPI และอีเมล์จะถูกส่งเมื่อสถานะเปิด เมื่อตรวจพบการเคลื่อนไหวไฟจะเปิดและส่งสถานะที่จะส่งอีเมล

1. เชื่อมต่อ RPI ขา 8 ไปที่ 1 RPI ขา 10 ไปที่ 2 RPI ขา 12 ไปที่ 3 และ RPI ขา 16 LED

2. ใช้คำสั่ง "CD / gadgetkeeper / GK_home_automation" และ "sudo nano home_automation.py" และเปลี่ยน API_KEY, THING_ID, DOOR_EVENT, WINDOW_EVENT และ MOTION_EVENT

ดูโค้ดโปรแกรมที่นี่ คลิ้ก




3 run home_automation.py โดยคำสั่ง "sudo python home_automation.py"





สมมุติ switch 1 ควบคุมการ ปิด/เปิดไฟชั้นบน ถ้า on = เปิดไฟชั้นบน
สมมุติ switch 2 ควบคุมการ ปิด/เปิดไฟชั้นล่าง ถ้า on = เปิดไฟชั้นล่าง
สมมุติ switch 3 ควบคุมการตรวจจับว่า ถ้า switch 1 และ switch 2 = on จะส่งข้อความไปที่ email


ถ้า switch 1 เป็น on ไฟชั้นบนจะติด ถ้า switch 2 เป็น on ไฟชั้นล่างจะติด และ ถ้า switch 3 เป็น on มอนิเตอร์จะตรวจสอบและส่งข้อความไปที่ email