สารบัญ:

ทำให้ลูกน้อยของคุณเย็นสบายในฤดูร้อนนี้ - ควบคุมแฟนใบ้ด้วยสิ่งที่ฉลาด!: 6 ขั้นตอน (พร้อมรูปภาพ)
ทำให้ลูกน้อยของคุณเย็นสบายในฤดูร้อนนี้ - ควบคุมแฟนใบ้ด้วยสิ่งที่ฉลาด!: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: ทำให้ลูกน้อยของคุณเย็นสบายในฤดูร้อนนี้ - ควบคุมแฟนใบ้ด้วยสิ่งที่ฉลาด!: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: ทำให้ลูกน้อยของคุณเย็นสบายในฤดูร้อนนี้ - ควบคุมแฟนใบ้ด้วยสิ่งที่ฉลาด!: 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: ลูกดื้อพูดไม่ฟัง สอนอย่างไรดี Getupteacher by ครูต้นปาล์ม Habitscan 2024, พฤศจิกายน
Anonim
ทำให้ลูกน้อยของคุณเย็นสบายในฤดูร้อนนี้ - ควบคุมแฟนใบ้ด้วยสิ่งที่ฉลาด!
ทำให้ลูกน้อยของคุณเย็นสบายในฤดูร้อนนี้ - ควบคุมแฟนใบ้ด้วยสิ่งที่ฉลาด!
ทำให้ลูกน้อยของคุณเย็นสบายในฤดูร้อนนี้ - ควบคุมแฟนใบ้ด้วยสิ่งที่ฉลาด!
ทำให้ลูกน้อยของคุณเย็นสบายในฤดูร้อนนี้ - ควบคุมแฟนใบ้ด้วยสิ่งที่ฉลาด!

ตอนที่เขียนบทความนี้เมื่อสองสัปดาห์ก่อน ฉันได้เป็นพ่อของลูกชายสุดเหลือเชื่อ!

ด้วยฤดูกาลที่เปลี่ยนไป วันที่ยาวนานขึ้นและอุณหภูมิที่ร้อนขึ้น ฉันคิดว่าคงจะดีถ้ามีเครื่องติดตามในเรือนเพาะชำเพื่อตรวจดูว่ามันร้อนแค่ไหนที่ขึ้นไปที่นั่น!

ฉันไม่ได้แก้ไข Python มากนักในช่วงหลายปีที่ผ่านมา แต่อยากกลับเข้าไปใหม่ตั้งแต่เรียนมหาวิทยาลัยปีแรกเมื่อเกือบ 5 ปีที่แล้ว! ด้วยเหตุนี้ ฉันคิดว่าควรบันทึกสิ่งที่ฉันทำลงไป ช่วยฉันทีหลัง และช่วยใครก็ตามที่ต้องการทำแบบเดียวกันด้วย!

เมื่อใช้ Raspberry pi, Enviro pHAT และปลั๊ก kasa TP-link อัจฉริยะ คุณสามารถควบคุมปลั๊กโดยใช้เฟรมเวิร์ก IFTTT! มันง่ายมากที่จะทำและคุณยังสามารถปรับเปลี่ยนคำแนะนำนี้เพื่อควบคุมทุกอย่างผ่านเซ็นเซอร์และอุปกรณ์ต่าง ๆ ! หวังว่าคุณจะพบว่ามีประโยชน์ หากคุณชอบคำแนะนำนี้ โปรดอย่าลืมโหวตให้การส่งของฉันในการประกวดเซ็นเซอร์!:D (ขออภัยที่ถาม) นี่เป็นครั้งแรกที่ทำสิ่งนี้และต้องการมีโอกาสชนะบางสิ่งบางอย่างตลอดเวลาที่ฉันใส่ลงไปในนี้

** แก้ไข ** ในอีกไม่กี่วันข้างหน้า ฉันจะดูที่การส่งข้อมูลนี้ไปยังบอร์ด Grafana ถ้าคุณคิดว่ามันจะดีก็บอกมา!:NS

มาเข้าเรื่องกันเลย…

เสบียง

  1. Raspberry pi ใด ๆ ที่จะทำ แต่ฉันเลือก Zero W เนื่องจากเป็นสิ่งที่ฉันต้องมอบให้ในการจับรางวัล แต่ก็มีฟอร์มแฟคเตอร์ที่เล็กที่สุดเช่นกันโดยเปิดใช้งาน WiFi โดยค่าเริ่มต้น! - Raspberry PI Zero w
  2. การ์ด SD ทุกคนมีความชอบแตกต่างกันไป แต่ฉันใช้หนึ่งในนั้น! - การ์ด Micro-SD
  3. หากคุณติดขัด นี่คือเอกสารที่รองรับอย่างเป็นทางการสำหรับการ์ด SD -การ์ด SD ที่รองรับอย่างเป็นทางการ
  4. สายจัมเปอร์ (จะอธิบายในภายหลัง) - สายจัมเปอร์
  5. Enviro pHAT สำหรับเซ็นเซอร์อันรุ่งโรจน์ทั้งหมด! - Envrio-pHAT
  6. สมาร์ทปลั๊ก ฉันใช้ TP-Link แล้ว เพราะคุณไม่จำเป็นต้องมีฮับแฟนซีใดๆ เพื่อให้มันใช้งานได้จริง! - สมาร์ทปลั๊ก!
  7. พัดลมใบ้เพื่อควบคุม คุณสามารถใช้พัดลมอะไรก็ได้ ฉันเพิ่งพบพัดลมใน Amazon แต่พัดลมเต้ารับติดผนังตัวใดก็ตามก็ใช้ได้ดี - พัดลมใบ้
  8. หัวแร้ง แต่ถ้าคุณไม่ต้องการใช้หัวแร้ง คุณสามารถคลิกส่วนหัวสำหรับ PI และ pHAT ของคุณ - GPIO-hammer-header

เพื่อให้การเชื่อมต่อระหว่าง TP-links kasa และ IFTTT ทำงานได้ คุณจะต้องตั้งค่าบัญชี kasa ของ TP-link และ IFTTT ก่อนเริ่มคำแนะนำนี้ เมื่อคุณได้รับสมาร์ทปลั๊ก TP-link คำแนะนำที่มาพร้อมกับปลั๊กอัจฉริยะจะแนะนำคุณตลอดขั้นตอนการตั้งค่า รวมถึงวิธีตั้งชื่อปลั๊กและฟังก์ชันพื้นฐาน

เมื่อคุณมีรายการช้อปปิ้งทั้งหมดแล้ว ก็ถึงเวลารวบรวมทั้งหมด!

ขั้นตอนที่ 1: การตั้งค่า Raspberry Pi. ของคุณ

การถ่ายภาพการ์ด micro-SD ของคุณ รับภาพ Raspbian ล่าสุดและยิ่งใหญ่ที่สุด เวอร์ชัน lite จะทำงานได้ดี ถ้าไม่ดีกว่าสำหรับ 0 w! -

เขียนภาพนี้ไปยังการ์ด SD คุณจะต้องมีเครื่องอ่านสำหรับสิ่งนี้และอิมเมจฉันใช้ตัวแกะสลัก -

ตั้งค่า Wifi (ไม่บังคับ) หาก PI ของคุณมี WIFI ในตัว ทำไมไม่ตั้งค่าตอนนี้เพื่อไม่ต้องวุ่นวายกับคอนโซลในภายหลัง!

เมื่อ pi ของคุณได้รับภาพแล้ว ไดรฟ์จะถูกดีดออก ตัดการเชื่อมต่อและเชื่อมต่อการ์ด SD เพื่อให้เครื่องของคุณตรวจพบอีกครั้ง พาร์ติชันสำหรับเริ่มระบบควรปรากฏขึ้น

สร้างไฟล์เปล่าชื่อ wpa_supplicant.conf ภายในพาร์ติชันสำหรับเริ่มระบบของ pi ของคุณ วางไฟล์ใหม่ด้านล่างนี้ไว้ด้านล่างนี้:

เครือข่าย={

ssid="YOUR_SSID" psk="YOUR_WIFI_PASSWORD" key_mgmt=WPA-PSK }

เปิดใช้งาน SSH บน PI ที่คุณเลือก (ไม่บังคับ)

ตามค่าเริ่มต้น รูปภาพ Raspbian ที่สะอาดจะถูกปิดใช้งาน ssh คุณจะต้องบูตระบบ เชื่อมต่อแป้นพิมพ์และจอแสดงผลกับ Pi จากนั้นเปิดใช้งาน ssh ขั้นตอนนี้จะเปิดใช้งาน ssh ในการบูตครั้งแรก ในพาร์ติชันสำหรับเริ่มระบบ ให้สร้างไฟล์ใหม่ชื่อ ssh ไฟล์เปล่าที่มีชื่อนั้นพอดี

หลังจากเสร็จสิ้นขั้นตอนทางเลือกสองขั้นตอน PI ของคุณจะเชื่อมต่อกับ WIFI ของคุณโดยอัตโนมัติและเปิดใช้งาน SSH ตามค่าเริ่มต้น

เมื่อคุณสร้างภาพและกำหนดค่าการ์ด micro-SD แล้ว คุณสามารถเสียบการ์ดนั้นลงใน PI หรือตัวเลือกและเปิดเครื่องได้!

การอัปเดต PIO เมื่อคุณบูต PI แล้ว คุณสามารถค้นหาที่อยู่ IP ของ PI ของคุณได้ภายในการตั้งค่าเราเตอร์ไร้สายของคุณ เราเตอร์ส่วนใหญ่มีความแตกต่างกันดังนั้นจึงเป็นเรื่องยากที่จะเขียนคำแนะนำสำหรับเรื่องนี้!

เมื่อคุณมี IP ของ PI แล้ว ให้เชื่อมต่อผ่าน SSH และเข้าสู่ระบบด้วยสิ่งต่อไปนี้:

ชื่อผู้ใช้: pi

รหัสผ่าน: ราสเบอร์รี่

เมื่อคุณมีเซสชัน SSH ที่ใช้งานอยู่กับ PI ของคุณแล้ว คุณจะต้องอัปเดตเซสชันนั้น เพียงเรียกใช้ด้านล่างด้วย Y หรือ N ที่เกี่ยวข้องตลอดการอัปเดต:

sudo apt-get update

sudo apt-get อัพเกรด

เป็นการดีที่จะรีบูต PI หลังจากติดตั้งการอัปเดตใหม่ ๆ เพื่อให้แน่ใจว่ามีการรันใหม่พร้อมกับการอัปเดตล่าสุด ซึ่งสามารถทำได้ด้วย

sudo รีบูต -n

ตอนนี้ PI พร้อมแล้ว ได้เวลาไปยังขั้นตอนต่อไป!

ขั้นตอนที่ 2: การตั้งค่า Enviro PHAT. ของคุณ

การตั้งค่า Enviro PHAT. ของคุณ
การตั้งค่า Enviro PHAT. ของคุณ
การตั้งค่า Enviro PHAT. ของคุณ
การตั้งค่า Enviro PHAT. ของคุณ

การเดินสายไฟ Enviro pHAT. ของคุณ

เมื่อคุณมี pi ของคุณเป็นปัจจุบันแล้ว คุณสามารถเชื่อมต่อ Enviro pHAT ของคุณกับ PI ที่คุณเลือกได้!

***เพื่อให้แน่ใจว่าคุณจะไม่สร้างความเสียหายให้กับ PI หรือ pHAT ของคุณ ให้ปิดมันก่อน***

ที่นี่ฉันใช้จัมเปอร์ลีดเพราะคุณจะได้รับการระบายความร้อนจาก CPU ที่ร้อนขึ้นภายใต้ Enviro pHAT ความร้อนที่เพิ่มขึ้นนี้สามารถเปลี่ยนแปลงการอ่านอุณหภูมิที่คุณจะได้รับในภายหลัง ด้วยเหตุนี้ ฉันจึงใช้จัมเปอร์ลีด 5 ตัวบนหมุดด้านล่าง:

  • พิน 3 – GPIO2 (SDA I2C)
  • พิน 5 – GPIO3 (SCL I2C)
  • พิน 7 – GPIO4
  • พิน 6 – กราวด์
  • ขา 4 - 5V

โปรดตรวจสอบแผนภาพการเดินสายไฟที่ด้านบนของขั้นตอนนี้เพื่อใช้เป็นภาพอ้างอิงหรือลิงก์ด้านล่าง:

pinout.xyz/pinout/enviro_phat

(ขออภัยที่งานสีห่วย)

เมื่อเดินสาย pHAT ของคุณ ตรวจสอบให้แน่ใจว่าคุณได้ตั้งค่าให้ถูกวิธี ไม่เช่นนั้นคุณอาจสร้างความเสียหายได้!!! ในการทำเช่นนี้ ฉันมีการตั้งค่าของฉันเพื่อให้ส่วนหัว ANALOG IN หันไปทางช่องเสียบการ์ด SD ซึ่งต่อมาได้เปลี่ยนรูปภาพของฉันเพื่อให้พอดีกับ "ผู้ให้บริการ" ของฉัน

การติดตั้งการพึ่งพา

เพิ่มพลังให้ PI ของคุณสำรองและ SSH กลับเข้ามา

เมื่อกลับมาที่ PI ของคุณแล้ว ให้เรียกใช้สิ่งต่อไปนี้เพื่อติดตั้งแพ็คเกจและซอฟต์แวร์ที่จำเป็นสำหรับ Enviro pHAT ของคุณ:

curl https://get.pimoroni.com/enviropat | ทุบตี

อย่าลืมกด Y หรือ N เมื่อจำเป็น

หลังจากติดตั้งเสร็จแล้ว อย่าลืมรีสตาร์ท PI…

sudo รีบูต -n

การทดสอบ pHAT

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

จากสภาพอากาศนำเข้าสิ่งแวดล้อม

พิมพ์ (สภาพอากาศ อุณหภูมิ ())

นี่ควรแสดงการอ่านข้อมูลดังนี้:

>> จากสภาพอากาศนำเข้าสิ่งแวดล้อม

>> พิมพ์ (weather.temperature()) 24.0806166987

การแก้ไขปัญหา

หากคุณได้รับสิ่งที่เกิดข้อผิดพลาดด้านล่าง:

Traceback (การโทรล่าสุดครั้งล่าสุด): ไฟล์ "" บรรทัดที่ 1 ในไฟล์ "/usr/lib/python2.7/dist-packages/enviropat/bmp280.py" บรรทัด 134 ในอุณหภูมิ self.update() ไฟล์ " /usr/lib/python2.7/dist-packages/enviropat/bmp280.py" บรรทัดที่ 169 กำลังอัปเดตหาก self._read_byte(REGISTER_CHIPID) == 0x58: # ตรวจสอบรหัสเซ็นเซอร์ 0x58=ไฟล์ BMP280 "/usr/lib/ python2.7/dist-packages/enviropat/bmp280.py" บรรทัดที่ 116 ใน _read_byte ส่งคืน self.i2c_bus.read_byte_data (self.addr ลงทะเบียน) IOError: [Errno 121] ข้อผิดพลาด I/O ระยะไกล

จากนั้นคุณสามารถเรียกใช้:

sudo i2cdetect -y 1

การดำเนินการนี้จะทำการตรวจสอบวินิจฉัยการเชื่อมต่อ/การเดินสายของคุณ และคุณจะต้องการค้นหาสิ่งต่อไปนี้:

pi@raspberrypi:~ $ sudo i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 abcdef 00: -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- 1 วัน -- -- 20: -- -- -- -- -- -- -- - - -- 29 -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- 50: -- -- -- -- -- -- -- - - -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - 70: -- -- -- -- -- -- -- 77

ถ้าไม่เช่นนั้น คุณจะต้องกลับไปตรวจสอบสายไฟอีกครั้ง โปรดตรวจสอบแผนภาพการเดินสายแล้วลองอีกครั้ง!

การติดตั้งสคริปต์ pi-baby-cooler.py

หากทุกอย่างเรียบร้อยดี และคุณประสบความสำเร็จในการอ่านค่าอุณหภูมิ เราสามารถดำเนินการติดตั้งแพ็คเกจ baby-cooler.py ได้เลย!

เนื่องจากผู้สั่งสอนจัดการกับลิงก์ได้อย่างไร ฉันได้แนบสคริปต์.py ในส่วนหัวของขั้นตอนข้างต้น… ในการคัดลอกสิ่งนี้ไปยัง PI ของคุณ ฉันขอแนะนำให้ใช้บางอย่างเช่น WinSCP:

winscp.net/eng/download.php

WinSCP เป็นไคลเอนต์ SFTP และไคลเอนต์ FTP ยอดนิยมสำหรับ Microsoft Windows! คัดลอกไฟล์ระหว่างเครื่องคอมพิวเตอร์และเซิร์ฟเวอร์ระยะไกลโดยใช้โปรโตคอลการถ่ายโอนไฟล์ FTP, FTPS, SCP, SFTP, WebDAV หรือ S3

WinSCP ใช้งานง่าย เพียงเชื่อมต่อกับ PI ของคุณโดยใช้ที่อยู่ IP ของ PI จากนั้นลากและวางไฟล์.py ไปยังตำแหน่งที่คุณต้องการเรียกใช้จากฉัน ซึ่งมาจาก /home/pi

ตอนนี้สคริปต์.py อยู่ใน PI ของคุณแล้ว ถึงเวลาดำเนินการตั้งค่าบัญชี / การเชื่อมต่อ IFTTT ของคุณ

ขั้นตอนที่ 3: การตั้งค่าบัญชี/การเชื่อมต่อ IFTTT ของคุณ

การตั้งค่าบัญชี/การเชื่อมต่อ IFTTT ของคุณ
การตั้งค่าบัญชี/การเชื่อมต่อ IFTTT ของคุณ
การตั้งค่าบัญชี/การเชื่อมต่อ IFTTT ของคุณ
การตั้งค่าบัญชี/การเชื่อมต่อ IFTTT ของคุณ
การตั้งค่าบัญชี/การเชื่อมต่อ IFTTT ของคุณ
การตั้งค่าบัญชี/การเชื่อมต่อ IFTTT ของคุณ

ต่อไปเราจะดูการรับโทเค็น IFTTT ซึ่งจะถูกใช้เมื่อเรียกใช้ฟังก์ชัน hot / cold ภายในสคริปต์เพื่อเชื่อมต่อกับปลั๊ก kasa และเปิด/ปิดพัดลม

การสร้างเว็บฮุค

ไปที่ https://ifttt.com/ และสร้างบัญชี หากคุณยังไม่มี

เมื่อคุณเข้าสู่ระบบแล้ว ภายในแถบค้นหา ให้ค้นหา: TP-link kasa

เมื่อโหลดแล้วให้คลิกบริการแล้วคลิก TP-link kasa จากนั้นคุณจะต้องเชื่อมต่อบัญชี kasa ของคุณกับบัญชี IFTTT ลงชื่อเข้าใช้บัญชี kasa ของคุณผ่าน IFTTT เพื่อทำการเชื่อมต่อ

หลังจากเชื่อมโยงบัญชีของคุณแล้ว ให้คลิก "แอปเพล็ตของฉัน" จากนั้นคลิกแอปเพล็ตใหม่ จากนั้นคลิก "+นี่" และค้นหาเว็บฮุค

คลิก "รับคำขอทางเว็บ" ภายในชื่อกิจกรรมประเภท hot (อาจเป็นอะไรก็ได้ที่คุณต้องการ แต่คุณต้องอัปเดตในภายหลังในสคริปต์ pi-baby-coller.py ไม่เช่นนั้นจะไม่ทำงาน ฉันใช้ hot เพื่อเปลี่ยน เปิดพัดลมและเย็นเพื่อปิดพัดลม จากนั้น คลิกสร้างทริกเกอร์

ถัดไป เราต้องเชื่อมโยงทริกเกอร์ใหม่ของคุณกับบัญชี Kasa ของคุณ คลิก "+นั่น" และค้นหา kasa คลิกลิงก์ TP จากนั้นคลิก "เปิด" หลังจากนี้เลือกอุปกรณ์ที่คุณต้องการเปิด จากนั้นคลิกสร้าง การกระทำ. ตรวจสอบการดำเนินการและคลิกเสร็จสิ้นหากถูกต้อง

**********

จำไว้ว่าหากคุณเลือกชื่อกิจกรรมอื่นที่ไม่ใช่ "ร้อน" และ "เย็น" คุณจะต้องจดบันทึกชื่อเหล่านี้ไว้สำหรับภายหลังและอัปเดตสคริปต์! มิฉะนั้นสคริปต์.py จะไม่ทำงาน

**********

หลังจากที่เราสร้าง web hook แรกของเราแล้ว ให้ทำซ้ำขั้นตอนสำหรับ "cold" แต่คราวนี้ คุณกำลังเลือกปิดแทนที่จะเปิดเมื่อเลือก +การกระทำนั้น

เมื่อเรามี webhooks สองเหตุการณ์ภายในส่วนบัญชี applet ของฉันแล้ว ให้คลิกบริการและค้นหา webhooks จากนั้นคลิกที่ ภายในนี้คุณจะเห็นปุ่มเอกสาร (บนขวา) ให้คลิกปุ่มนั้น นี่คือที่ที่คุณจะพบคีย์โทเค็น IFTTT ของคุณ ในระหว่างนี้ ให้จดบันทึกคีย์ของคุณ (คุณจะต้องใช้ในภายหลัง) ฉันได้แก้ไขของฉันภายในรูปภาพ มิฉะนั้น ทุกคนจะสามารถเปิดหรือปิดปลั๊กอัจฉริยะของฉันได้

การทดสอบเว็บฮุค

ตอนนี้เราได้สร้างเว็บฮุคสองเว็บซึ่งเชื่อมต่อกับบัญชี kasa ของเราแล้ว เราสามารถทดสอบว่ามันใช้งานได้หรือไม่!

ภายใน PI ของคุณ คุณสามารถป้อนข้อมูลต่อไปนี้:

curl -X POST

ในกรณีที่มีข้อความว่า "ร้อน" คุณต้องเพิ่มชื่อกิจกรรมของคุณ หากคุณปล่อยให้เป็น "ร้อน" ให้ปล่อยไว้ตามลำพัง ตำแหน่งที่ระบุว่า / คุณ… คุณต้องแทนที่ด้วยคีย์โทเค็น IFTTT ของคุณ กด Enter จากนั้นคุณควรได้ยินเสียงคลิกของรีเลย์ปลั๊กอัจฉริยะของคุณที่เปิดปลั๊ก หากคุณไม่ได้ยิน คุณสามารถตรวจสอบแอป Kasa เพื่อตรวจสอบสถานะของปลั๊กได้

ตอนนี้เรามีการขึ้นต่อกันสำหรับ Enviro pHAT ของเราแล้ว และตอนนี้ก็มีการตั้งค่า IFTTT แล้ว ถึงเวลาปิดท้ายด้วยการแก้ไขโค้ด

ขั้นตอนที่ 4: การแก้ไขสคริปต์

การแก้ไขสคริปต์
การแก้ไขสคริปต์

ชื่อเหตุการณ์และ IFTTT TOKENS กลับไปที่ pi ของคุณ เลื่อนระดับไปยังตำแหน่งของสคริปต์ pi-baby-cooler.py ของคุณ สำหรับฉันแล้ว มันอยู่ใน /home/pi (โฟลเดอร์บ้านของฉัน) และแก้ไขไฟล์โดยใช้ nano:

nano pi-baby-cooler.py

ภายในตัวค้นหาที่ระบุว่า def turn_off()

def turn_off():

# ตั้งคำเรียกของคุณ - เช่น "เย็น" - และโทเค็น IFTTT Webhook ด้านล่าง TRIGGER_WORD = "cold" TOKEN = "โทเค็น IFTTT ของคุณไปที่นี่" คำขอโพสต์ ("https://maker.ifttt.com/trigger/{trigger_word}/with/key/{token}".format(trigger_word=TRIGGER_WORD, token=TOKEN)) พิมพ์ ("ปิดพัดลม!"):

เป็นฟังก์ชั่นปิดพัดลม ทำได้โดยส่งเว็บฮุคไปที่ IFTTT ซึ่งจะทริกเกอร์ tplink HS100 เพื่อปิด หากคุณเก็บทริกเกอร์ให้ทำงานภายในบัญชี IFTTT ของคุณเหมือนกับ "cold" คุณสามารถปล่อยมันไว้ และแทนที่โทเค็นที่คุณได้รับจากเอกสาร webhooks ก่อนหน้านี้ หากคุณเลือกชื่อกิจกรรมอื่น ให้แทนที่คำนี้ที่นี่

หลังจากวางโทเค็น IFTTT ของคุณแล้ว ให้ไปที่ส่วนถัดไปที่ระบุว่า def turn_on()

def turn_on():# ตั้งคำเรียกของคุณ - เช่น "ร้อนแรง" - และโทเค็น IFTTT Webhook ด้านล่าง TRIGGER_WORD = "ร้อน" TOKEN = "โทเค็น IFTTT ของคุณไปที่นี่" คำขอโพสต์ ("https://maker.ifttt.com/trigger/{trigger_word}/with/key/{token}".format(trigger_word=TRIGGER_WORD, token=TOKEN)) พิมพ์ ("เปิดพัดลม!")

ฟังก์ชันนี้เป็นการย้อนกลับของการปิด เปิดสมาร์ทปลั๊ก TP-link!

หากคุณเก็บทริกเกอร์ให้ทำงานภายในบัญชี IFTTT ของคุณเหมือนกับ "hot" คุณสามารถปล่อยมันไว้ และแทนที่โทเค็นที่คุณได้รับจากเอกสาร webhooks ก่อนหน้านี้ หากคุณเลือกชื่อกิจกรรมอื่น ให้แทนที่คำนี้ที่นี่

ทุกอย่างอื่นถูกเข้ารหัสไว้แล้ว ดังนั้นคุณจึงไม่ต้องเปลี่ยนแปลงโค้ดอื่นใดใน TRIGGER_WORD, TOKEN และการปรับอุณหภูมิอีกเล็กน้อยในครั้งต่อไป!

เปลี่ยนอุณหภูมิ

ถัดไป หาที่ที่ระบุว่า # ตัวแปรท้องถิ่น

ลอง: # ตัวแปรท้องถิ่น state = 0 # ตั้งค่าสถานะสำหรับสวิตช์ต่ำ = 20 # ค่าต่ำสุดสำหรับระดับอุณหภูมิ (เซลเซียส) สูง = 24 # ค่าสูงสำหรับระดับอุณหภูมิ (เซลเซียส). ระยะเวลา = 120 # หน่วงเวลาเป็นวินาทีระหว่างการโทร

ตัวแปรสถานะคือวิธีที่ pi รู้ว่าปลั๊กเปิดอยู่หรือไม่ ซึ่งจะได้รับการอัปเดตในภายหลังหากร้อนเกินไป (24+*c สถานะจะเปลี่ยนเป็น 1) ในภายหลัง สิ่งนี้จะเริ่มต้นที่ webhook แล้วเปิด สมาร์ทปลั๊ก!

ตัวแปรต่ำคือฉันต้องการห้องเย็นแค่ไหนก่อนที่จะปิดปลั๊ก หากคุณต้องการให้ห้องอุ่นขึ้น เพียงแค่เปลี่ยนเป็นค่าที่สูงขึ้น หากคุณต้องการให้เย็นลงให้ลดค่าลง

ตัวแปรสูงคืออุณหภูมิสูงสุดที่ฉันต้องการให้ห้องได้รับก่อนที่ฉันจะให้พัดลมเตะเข้าและเริ่มทำให้ห้องเย็นลง หากคุณต้องการให้พัดลมทำงานก่อนหน้านี้ ให้ลดค่าลงหรือหากคุณต้องการให้พัดลมอุ่นขึ้นก็ให้เพิ่มมูลค่าให้สูงขึ้น

ตัวแปรช่วงเวลาคือระยะเวลาเป็นวินาทีระหว่างการตรวจสอบอุณหภูมิ หากคุณต้องการให้สคริปต์ pi ตรวจสอบไม่บ่อยนัก ให้เพิ่มตัวเลขให้สูงขึ้นหากคุณต้องการย่นเวลา ให้ลดจำนวนลง

เมื่อคุณทำการเปลี่ยนแปลงแล้วให้บันทึกและออกจาก nano

CTRL + x

ขั้นตอนที่ 5: การใช้สคริปต์

การใช้สคริปต์
การใช้สคริปต์

เรียกใช้สคริปต์ในเครื่อง

มีสองสามวิธีที่คุณสามารถเรียกใช้สคริปต์นี้ คุณสามารถเชื่อมต่อผ่าน SSH และพิมพ์ดังต่อไปนี้:

sudo python /pi-baby-cooler.py

การดำเนินการนี้จะเรียกใช้สคริปต์ตามต้องการ ซึ่งจะใช้งานได้ตราบเท่าที่มีเซสชัน SSH ที่ใช้งานอยู่ใน PI อีกวิธีหนึ่งคือการใช้หน้าจอ ไม่ได้ติดตั้งหน้าจอตามค่าเริ่มต้น ฉันไม่คิดว่าจะต้องใช้หน้าจอการติดตั้ง sudo apt

นี่คือบทช่วยสอนที่ยอดเยี่ยมเกี่ยวกับวิธีการใช้หน้าจออย่างถูกต้อง:

Screen หรือ GNU Screen เป็นเทอร์มินัลมัลติเพล็กเซอร์ กล่าวอีกนัยหนึ่งหมายความว่าคุณสามารถเริ่มเซสชันหน้าจอแล้วเปิดหน้าต่าง (เทอร์มินัลเสมือน) จำนวนเท่าใดก็ได้ภายในเซสชันนั้น กระบวนการที่ทำงานในหน้าจอจะยังคงทำงานต่อไปเมื่อมองไม่เห็นหน้าต่างแม้ว่าคุณจะถูกตัดการเชื่อมต่อ

ทำงานอัตโนมัติในการบูต

อีกวิธีคือแก้ไขไฟล์บูตใน /etc/rc.local เพื่อใช้ nano

sudo nano /etc/rc.local

การแก้ไขไฟล์นี้จะทำให้สคริปต์ทำงานเมื่อบูต หมายความว่าจะทำงานเสมอเมื่อเปิด PI นี่คือวิธีที่ฉันเรียกใช้สคริปต์ 90% บน PI อื่น

หากคุณเคยใช้ rc.local แล้ว คุณสามารถเรียกใช้คำสั่งด้านล่างเพื่อตรวจสอบสิ่งที่กำลังทำงานอยู่บน PI ได้ วิธีนี้สะดวกสำหรับการแก้ปัญหาในภายหลังเพื่อดูว่าสคริปต์ทำงานอยู่หรือไม่:

ps -aef | grep python

ขั้นตอนที่ 6: เสร็จแล้ว

อืม… ขอบคุณถ้าคุณยังอยู่ที่นี่และมาถึงจุดนี้!

ขออภัย มันค่อนข้างยาว นี่เป็นครั้งแรกที่ฉันสอนได้และไม่แน่ใจว่าจะเขียนอะไร

ดังที่ฉันได้กล่าวไปแล้วในตอนเริ่มต้น คำสั่งนี้มีแอปพลิเคชันต่างๆ มากมายโดยใช้ความร้อนเพื่อกระตุ้นปลั๊กอัจฉริยะ! คุณสามารถทำให้ห้องในบ้าน/แฟลต/อพาร์ตเมนต์/โรงรถ/โรงจอดรถเย็นลงได้ คุณยังสามารถปรับเปลี่ยน IFTTT เพื่อทริกเกอร์อุปกรณ์อัจฉริยะใดๆ ที่สามารถควบคุมผ่าน IFTTT ได้ โดยไม่จำเป็นต้องเป็นอุปกรณ์ TP-link kasa เท่านั้น

ฉันชอบที่จะได้ยินว่าคุณได้ลองใช้คำแนะนำนี้แล้วหรือยังถ้าคุณพบว่าน่าสนใจโปรดแสดงความคิดเห็นด้านล่าง!

หากคุณมีคำถามใด ๆ โปรดทิ้งคำถามไว้ด้านล่างและเราจะพยายามตอบคำถามเหล่านี้ให้ดีที่สุด!

การประกวดเซนเซอร์
การประกวดเซนเซอร์
การประกวดเซนเซอร์
การประกวดเซนเซอร์

รองชนะเลิศการประกวดเซนเซอร์

แนะนำ: