assignmet 2 selectedtopic topic in computer engineer
TRANSCRIPT
InternetOf
Thing
Group1: “หนึ่งหนวยกลุม”
Concept
วัดอุณหภูมิโดยใช dht11 สงคาเวลาและอุณภูมิผาน Webservice ซึ่งจะมีฟงกชันสงชวงเวลาปจจุบัน หรือชวงหนึ่งถึงอีกชวงหนึ่ง แลวคืนคาเปนอุณหภูมิกับเวลาในชวงเวลานั้นๆ
Equipment
- dht11
DHT11เปน Module สําหรับวัดอุณหภูมิกับความชื้นในอากาศโดยมี
● ยานวัดความชื้น 20-90% RH โดยมีคาความแมนยํา ± 5% RH ● ยานวัดอุณหภูมิ 0 -50 องศาเซลเซียส โดยมีคาความแมนยํา ± 2● กินกระแส 0.5 - 2.5 mA (ขณะทําการวัดคา) ที่ระดับแรงดัน 3 - 5.5 VDC● อานคาสัญญาณ (Sample Rate) ทุก 1 วินาที ● ใชการสงสัญญาณแบบ Single-wire Two-way Serial interface
Equipment
- Raspberry Pi 2
Raspberry piบอรดคอมพิวเตอรขนาดเล็กที่สามารถเชื่อมตอกับจอมอนิเตอร คียบอรด และเมาสได สามารถนํามาประยุกตใชงานตางๆเชนงานทางดานอิเล็กทรอนิกส การเขียนโปรแกรม รองรับระบบปฏิบัติการลินุกซ (Linux Operating System) ไดหลายระบบ เชน Raspbian (Debian) Pidora (Fedora) และ Arch Linux เปนตน
Amazon web servicesเปนผลิตภัณฑที่ใหการบริการเครื่องคอมพิวเตอร (Cloud Computing) เพื่อใชงานในดานตางๆ เชน Web Server, Database Server, File Server
การเชื่อมตอ
อานขอมูลอุณหภูมิ
สงขอมูลอุณหภูมิและเวลา
Web Serviceฟงกชั่น
add
- รับคาอุณหภูมิ วัน เดือน ป ชั่วโมง และนาทีเพื่อเก็บคาเขาไปในไฟล xml
temperature
- รับคาวันเดือนปชั่วโมงและนาที 2 ชวงแลวคืนคาเปนอุณหภูมิและชวงเวลาที่อยูในคาที่สงมา
Xml
ผลลัพธการเพิ่มชวงอุณหภูมิในเวลา 6/11/2016 9:00น.
ผลลัพธการเรียกชวงเวลาในที่นี้เรียกชวง 6/11/2016 9:00 - 15:00น.
อุปกรณ1.) Raspberry Pi2.) DHT11 temperature and humidity sensor3.) Breadboard4.) Jumper wires
Setup the hardwarePrepare the Raspberry Pi hardware as follows:
DH11 Raspberry Pi
DATA GPIO#4
GND GND
VCC 3.3v
ภาพการตอวงจร
การสงคาขอมูลimport sysimport timeimport datetimeimport Adafruit_DHTfrom SOAPpy import SOAPProxyfrom SOAPpy import WSDLserverUrl='http://35.162.15.38:8081'namespace='xml'server = SOAPProxy(serverUrl, namespace)while(True):
now = datetime.datetime.now() humidity , temperature = Adafruit_DHT.read_retry(22, 4)
if humidity is not None and temperature is not None: server.add(temperature,now.day,now.month,now.year,now.hour,now.minute)
else: print 'Failed to get reading. Try again!'
time.sleep(120)
ผลลัพธผลการเรียกเมื่อเวลาตั้งแต 7:54-8:11 โดยเก็บคาอุณหภูมิทุกๆ 2 นาที
ผลลัพธเมื่อใหเก็บคาขอมูลตั้งแต
13:19 - 19:19 วันที่ 19/11/2016
What’s Thingspeak?Thingspeak เปนบริการ Platform as a Services ที่ใหบริการ เก็บขอมูลแบบ Real-time, แสดงขอมูลกราฟ จากที่ใดก็ไดในโลก และ สามารถเปดดูจากที่ไหนก็ได อีกเชนกัน ซึ่งก็คลายกับ data.sparkfun.com แตสิ่งที่ตางกัน คือ Thingspeak จะแสดงผลขอมูลผานกราฟได และ ดึงขอมูล (PUT DATA) ไปใชแสดงผลที่เวปเราไดผาน <iframe> ซึ่งมัน update realtime ดวย ซึ่งมีทั้งบริการทั้งแบบฟรี และ เสียเงิน แตในเวอรชั่นฟรี จะยอมใหเราบันทึกขอมูล ทุกๆ 15 วินาที
What’s Thingspeak?
Sending Data with Thingspeak.HTTP Request
การสงขอมูลจะสงโดยใช GET Method รูปแบบของ HTTP Request แบบที่ data.sparkfun.com ใชงาน สําหรับ Thinkspeak จะใชรูปแบบดังรูป
Sending Data with Thingspeak.REST API (Representational State Transfer)
เปน Web Service แบบเรียบงาย โดยเรียกใชผานทาง HTTP Method GET/POST/PUT/DELETE ซึ่งมันออกแบบไวเปน เชื่อมตอกับจัดการฐานขอมูล แสดงผล, เพิ่มรายการ, แกไขรายการ และ ลบรายการ ซึ่งมันทําไดมากกวา HTTP Request
Sending Data with Thingspeak.REST API (Representational State Transfer)
Step by step with Thingspeak.1. สมัครใชงานเพื่อขอเปดบัญชีผูใชใหม (Sign Up)2. ยืนยันตัวตนเพื่อเขาใชงานสําหรับบัญชีที่สรางไวแลว (Sign In)3. สราง New Channel หรือชองทางในการสงขอมูลใหม พรอมกําหนดคุณสมบัติของ
Channel4. สราง API Key สําหรับเขียนขอมูล (API Key for Write) และอานขอมูล (API Key for
Read)5. เขียนโคด Python และรันโปรแกรม เพื่อสงขอมูลไปยัง ThingSpeak.com ผาน Channel
ที่ไดสรางไว6. ดูขอมูลในรูปของกราฟผานหนาเว็บ
ผลลัพธ
import sysimport Adafruit_DHTimport timeimport urllib while(True):
humidity, temperature = Adafruit_DHT.read_retry(22, 4)params = urllib.urlencode({'key': '7XUS2L1NL265HEXE',
'field1': temperature})f = urllib.urlopen("https://api.thingspeak.com/update",
data=params)time.sleep(120)
วิดิโอสาธิตการทดลองYoutube: Raspberry Pi2 read data of DHT11 and send it to Cloud (IOT)
https://youtu.be/NpJU05GUnDQ
MemberGroup1นาย อภิวัฒธ วงศโทะ รหัสนักศึกษา 52-1116-530-2นางสาว พัลลภา เขมรังสฤษฏ รหัสนักศึกษา 56-010126-2008-1นางสาว อัญธิกา หนองบัว รหัสนักศึกษา 56-010126-3028-1นาย ธีรวัฒน ผองสกุล รหัสนักศึกษา 56-010126-3015-9นาย ธนดล เตชะวัชรีกุล รหัสนักศึกษา 56-010126-3009-4นาย ภุมมิฑล ไชยเชิดเกียรติ รหัสนักศึกษา 56-010116-2131-8