สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: การสร้างช่อง Thingspeak
- ขั้นตอนที่ 2: การใช้ IFTTT App
- ขั้นตอนที่ 3: ในที่สุดก็เริ่มเขียนโค้ด
วีดีโอ: การควบคุม LED ของ Google Assistant โดยใช้ Raspberry Pi: 3 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:02
เฮ้!
ในโครงการนี้ เราจะใช้การควบคุม Google Assistant ของ LED โดยใช้ Raspberry Pi 4 โดยใช้ HTTP ใน Python คุณสามารถเปลี่ยนหลอดไฟ LED เป็นหลอดไฟได้ (แน่นอนว่าไม่ใช่ตามตัวอักษร คุณจะต้องมีโมดูลรีเลย์ในระหว่างนั้น) หรือเครื่องใช้ในบ้านอื่นๆ เพื่อให้โครงการนี้สามารถใช้งานได้ต่อไปสำหรับระบบอัตโนมัติภายในบ้าน
เสบียง
สิ่งที่คุณต้องการสำหรับโครงการนี้:
1. ราสเบอร์รี่ปี่
2. LED
3. สายจัมเปอร์-2 (ชายกับหญิง)
4. เขียงหั่นขนม
5. แอป IFTTT (https://play.google.com/store/apps/details?id=com.ifttt.ifttt&hl=en_IN)
6. บัญชี Thingspeak (https://thingspeak.com/)
ข้อกำหนดเบื้องต้นบางประการ:
1. พื้นฐานเครือข่าย-HTTP
2. Python เพื่อเข้าถึงข้อมูลเว็บ
ขั้นตอนที่ 1: การสร้างช่อง Thingspeak
หากคุณเพิ่งเริ่มใช้ Thingspeak และไม่เคยใช้งานมาก่อน ให้ทำตามขั้นตอนด้านล่าง:
เข้าไปที่
คุณจะต้องลงทะเบียนก่อนที่จะเริ่มใช้ Thingspeak
หลังจากสมัครแล้ว ให้ไปที่ส่วนช่อง
ภายใต้ Channels เลือก New Channel (ดูภาพสำหรับการอ้างอิง)
ใน New Channel คุณจะเห็นช่องข้อมูลต่างๆ คุณเพียงแค่ต้องกรอกในช่องชื่อ คุณสามารถตั้งชื่อช่องของคุณได้ตามที่คุณต้องการ ฉันได้แนบรูปภาพที่ฉันตั้งชื่อช่องของฉันว่า Raspberry Pi 4 ปล่อยให้กล่องที่เหลือเหมือนเดิม
ยินดีด้วย! คุณได้สร้างช่องทางสำหรับโครงการ IoT ของคุณสำเร็จแล้ว (ดูภาพที่แนบมาซึ่งคุณสามารถดูช่องของฉันที่ชื่อว่า Raspberry Pi 4 ได้สำเร็จ)
ขั้นตอนที่ 2: การใช้ IFTTT App
เราต้องใช้แอพนี้เพื่อเรียกคำขอ GET สำหรับการโพสต์ข้อมูลในช่อง Thingspeak ที่คุณสร้างขึ้นโดยใช้ Google Assistant คิดว่าแอปนี้เป็นอินเทอร์เฟซระหว่าง Google Assistant และช่อง Thingspeak ของคุณ
ต่อไป เราสร้างคำขอ GET บนแอป IFTTT
ดาวน์โหลดแอป IFTTT จาก
สร้างบัญชีของคุณ
ไปที่สร้างแอปเพล็ตของคุณเองตั้งแต่เริ่มต้น
แตะที่ถ้าตัวเลือกนี้
เลือกบริการทริกเกอร์เป็น Google Assistant
จากนั้นเลือก พูดวลีง่ายๆ
ภายใต้ตัวเลือกนั้น กล่องข้อมูลบางกล่องจะปรากฏขึ้น ให้อ้างอิงกับรูปภาพและกรอกรายละเอียดให้เหมาะสม! (มีสองภาพเพื่อจุดประสงค์นี้: 1. เพื่อเปิด LED 2. เพื่อปิด LED)
เราได้ทำส่วน If This ซึ่งเป็น Google Assistant เสร็จเรียบร้อยแล้ว ตอนนี้เราเลือกแล้วตัวเลือกนั้นซึ่งก็คือ Webhooks
ข้างใต้นั้น เลือก ทำการร้องขอเว็บ
อ้างอิงรูปภาพสำหรับข้อมูลที่ต้องกรอกในกล่อง อ้างอิง URL นี้ https://api.thingspeak.com/update?api_key=INSERT YOUR WRITE API KEY&field1=1
ใน URL ด้านบน คุณจะสังเกตเห็นว่าฉันได้กล่าวถึง INSERT YOUR WRITE API KEY นี่คือคีย์ API ที่เป็นข้อมูลระบุตัวตนของช่องที่คุณสร้างบน Thingspeak (ดูรูป) เขียนคีย์ API จะช่วยให้คุณเขียนข้อมูลเฉพาะลงในช่องของคุณ และในทำนองเดียวกัน อ่านคีย์ API จะช่วยให้คุณได้รับข้อมูลจากช่อง
นอกเหนือจากคีย์ API การเขียนของคุณ ข้อมูลที่เหลือจากกล่องจะยังคงเหมือนเดิม
ดังนั้นที่นี่คุณได้สร้างทริกเกอร์ซึ่งเมื่อคุณพูดกับ Google Assistant ของคุณว่า "เปิดไฟ LED" มันจะส่ง "1" ไปยังช่อง Thingspeak ของคุณ
ในทำนองเดียวกัน คุณต้องสร้างแอปเพล็ตใหม่ในแอป IFTTT เพื่อปิดไฟ LED ฉันได้แนบรูปภาพหากคุณสับสนเกี่ยวกับสิ่งเดียวกัน มิฉะนั้น ขั้นตอนการปิด LED จะเหมือนกับขั้นตอนที่คุณทำด้านบน นอกเหนือจากการเปลี่ยนแปลงเล็กน้อย
ขั้นตอนที่ 3: ในที่สุดก็เริ่มเขียนโค้ด
ฉันจะอธิบายวัตถุประสงค์หลักของรหัส Python เราต้องดึงข้อมูลจากช่อง Thingspeak ซึ่งจะเป็น "1" หรือ "0" ตามสิ่งที่คุณพูดกับ Google Assistant เราต้องเปิดหรือปิด LED ตามนี้ หากค่าที่อัปโหลดบนช่อง Thingspeak คือ "1" เราจะเปิด LED และหากเป็น "0" เราจะปิด
ในโค้ด คุณจะต้องมีสองสิ่ง: 1. คีย์ Read API ของคุณ 2. Channel ID ของคุณ (ดูภาพเหมือนกัน)
นี่คือรหัส (สมมติว่าคุณรู้ข้อกำหนดเบื้องต้นของ HTTP และ Python):
นำเข้า urllib
คำขอนำเข้า
นำเข้า json
เวลานำเข้า
นำเข้า RPi. GPIO เป็น GPIO
GPIO.setmode(GPIO.บอร์ด)
GPIO.setup(7, GPIO.ออก)
ลอง:
ในขณะที่(1):
URL='https://api.thingspeak.com/channels/INSER YOUR CHANNEL ID/fields/1.json?api_key=' KEY='INSERT YOUR READ API KEY'
HEADER='&ผลลัพธ์=2'
NEW_URL=URL+KEY+HEADER
#print(NEW_URL)
get_data=requests.get(NEW_URL).json()
#พิมพ์(get_data)
feild_1=get_data['ฟีด']
#print("ฟิลด์:", feild_1)
t=
สำหรับ x ใน feild_1:
t.append(x['field1'])
พิมพ์(t[1])
ถ้า int(t[1])==1:
GPIO.เอาท์พุท(7, 1)
elif int(t[1])==0:
GPIO.เอาท์พุท(7, 0)
ยกเว้น KeyboardInterrupt:
GPIO. การล้างข้อมูล ()
แนะนำ:
การควบคุม Led ผ่านแอพ Blynk โดยใช้ Nodemcu ทางอินเทอร์เน็ต: 5 ขั้นตอน
การควบคุม Led ผ่านแอพ Blynk โดยใช้ Nodemcu ทางอินเทอร์เน็ต: สวัสดีทุกคน วันนี้เราจะแสดงให้คุณเห็นว่าคุณสามารถควบคุม LED โดยใช้สมาร์ทโฟนผ่านอินเทอร์เน็ตได้อย่างไร
การควบคุม Raspberry Pi โดยใช้ Matlab: 5 ขั้นตอน
การควบคุม Raspberry Pi โดยใช้ Matlab: เฮ้ บทช่วยสอนนี้เกี่ยวกับการควบคุม Raspberry Pi ที่ไม่มีหัวของคุณโดยใช้ Matlab คุณอาจต้องติดตั้ง matlab เป็นเวอร์ชันล่าสุดเพื่อรองรับบอร์ด raspberry pi ที่ใหม่กว่า
การควบคุม LED หลายดวงด้วย Python และ GPIO Pins ของ Raspberry Pi: 4 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมไฟ LED หลายดวงด้วย Python และพิน GPIO ของ Raspberry Pi: คำแนะนำนี้สาธิตวิธีควบคุมพิน GPIO หลายอันบน RaspberryPi ของคุณเพื่อจ่ายไฟ 4 LEDs นอกจากนี้ยังจะแนะนำคุณเกี่ยวกับพารามิเตอร์และคำสั่งเงื่อนไขใน Python คำสั่งก่อนหน้าของเราโดยใช้ GPIO Pins ของ Raspberry Pi เพื่อต่อ
การควบคุม Led Matrix โดยใช้ Arduino: 5 ขั้นตอน
การควบคุม Led Matrix โดยใช้ Arduino: สวัสดีเพื่อน ในบทความนี้ฉันจะแสดงวิธีใช้ Led Matrix โดยใช้ ArduinoLed Matrix คือชุดของ LED ในรูปแบบของอาร์เรย์ Led Matrices มีคอลัมน์และแถวที่หลากหลาย ขึ้นอยู่กับประเภท โดยนำเสนอ LEDs หลายดวงที่รับรอง
การควบคุม WiFi ของ Model Train โดยใช้ MQTT: 9 ขั้นตอน
การควบคุม WiFi ของ Model Train โดยใช้ MQTT: มีระบบโมเดล TT Scale Train แบบเก่า ฉันมีแนวคิดว่าจะควบคุม locos แยกกันอย่างไร เมื่อคำนึงถึงสิ่งนี้ ฉันได้ก้าวไปอีกขั้นและค้นพบว่าสิ่งที่จำเป็นไม่เพียงแต่ควบคุมรถไฟเท่านั้น แต่มีข้อมูลเพิ่มเติมเกี่ยวกับ