สารบัญ:
- ขั้นตอนที่ 1: สิ่งที่คุณต้องการ
- ขั้นตอนที่ 2: ตั้งค่า Outlets
- ขั้นตอนที่ 3: ตั้งค่าบัญชี PubNub
- ขั้นตอนที่ 4: เตรียม Raspberry Pi
- ขั้นตอนที่ 5: การสร้างวงจร
- ขั้นตอนที่ 6: รับรหัส RF ของคุณ
- ขั้นตอนที่ 7: การเรียกใช้โปรแกรม
- ขั้นตอนที่ 8: ทำงานเมื่อเริ่มต้น
- ขั้นตอนที่ 9: การเพิ่มสวิตช์เพิ่มเติม
- ขั้นตอนที่ 10: ก้าวต่อไป
- ขั้นตอนที่ 11: เครดิต
วีดีโอ: ระบบอัตโนมัติภายในบ้านราคาถูกและมีประสิทธิภาพด้วย Raspberry Pi: 11 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
ฉันต้องการควบคุมไฟแบบไร้สายมาโดยตลอด แต่ตัวเลือกเชิงพาณิชย์มักจะมีราคาแพง ไฟ Philips Hue มีราคาประมาณ 70 เหรียญและไฟที่เชื่อมต่อ WiFi ก็มีราคาแพงเช่นกัน บทแนะนำนี้จะบอกคุณถึงวิธีควบคุมไฟ/โคม/ไฟคริสต์มาสสูงสุดห้าเส้นในราคาประมาณ 50 ดอลลาร์ และสามารถขยายให้รวมไฟได้มากขึ้นด้วย
ขั้นตอนที่ 1: สิ่งที่คุณต้องการ
วัสดุ:
Raspberry Pi Zero W (รุ่นไร้สาย)
การ์ด Micro SD (อย่างน้อย 4GB)
สายเคเบิล/ตัวแปลง Mini HDMI เป็น HDMI (มีความแตกต่างระหว่าง mini และ micro ตรวจสอบให้แน่ใจว่าได้อันที่ถูกต้อง!)
สาย/ตัวแปลง Micro USB เป็น USB
แป้นพิมพ์ USB
หมายเหตุ: ฉันได้รับชุดเริ่มต้น Raspberry Pi Zero W จาก Amazon ที่มาพร้อมกับ Raspberry Pi Zero W, การ์ด SD, เคส, สายไฟ, ตัวแปลง HDMI และตัวแปลง USB เพียง 30 เหรียญก็เป็นตัวเลือกที่ดีทีเดียว (ลิงก์)
คุณสามารถใช้ Raspberry Pi รุ่นอื่นได้ แต่ Raspberry Pi ต้องมีรูปแบบการเชื่อมต่ออินเทอร์เน็ต และ Pi Zero W เป็นตัวเลือกที่ถูกที่สุด
Remote Outlets - ฉันใช้สิ่งเหล่านี้
ตัวส่งและตัวรับ RF (หมายเหตุ: ความถี่ของตัวส่ง/ตัวรับต้องตรงกับความถี่ของเต้ารับระยะไกล) - ฉันใช้สิ่งเหล่านี้
ลวดสำหรับเสาอากาศ (ฉันใช้ลวดทองแดงแกนแข็ง 22 เกจ สายอื่นอาจใช้งานได้)
เขียงหั่นขนม, สายจัมเปอร์, หัวต่อตัวผู้ต่อตัวผู้ 40 พิน
ซอฟต์แวร์:
Raspberry Pi OS (ดาวน์โหลด Raspbian Desktop)
Etcher disk imager (สำหรับเขียน Pi OS ลงใน SD Card)
เครื่องมือ:
หัวแร้ง
คอมพิวเตอร์สำหรับดาวน์โหลด Pi OS และ Etcher
ขั้นตอนที่ 2: ตั้งค่า Outlets
เริ่มต้นด้วยการเสียบปลั๊กไฟเข้ากับเต้ารับ ทำตามคำแนะนำที่ให้มาเพื่อตั้งค่า และเสียบไฟ/เครื่องใช้ไฟฟ้าของคุณ ตรวจสอบให้แน่ใจว่ารีโมทของคุณจับคู่อย่างถูกต้องและกำลังควบคุมซ็อกเก็ต
ขั้นตอนที่ 3: ตั้งค่าบัญชี PubNub
PubNub เป็นเซิร์ฟเวอร์อินเทอร์เน็ตฟรีที่ให้คุณสื่อสารระหว่างอุปกรณ์ได้ทุกที่ในโลก สคริปต์หลามรับข้อความจากหน้าเว็บ และใช้ข้อมูลในข้อความเพื่อเปิดหรือปิดไฟ คุณสามารถลงทะเบียนสำหรับบัญชีฟรีของคุณได้ที่นี่ เมื่อคุณลงชื่อสมัครใช้แล้ว ให้ลงชื่อเข้าใช้บัญชีของคุณ สิ่งนี้จะนำคุณไปยังหน้าการจัดการแอพ คลิกที่ "สร้างแอปใหม่" ตั้งชื่อแอป แล้วเลือกจากรายการแอป (หากเป็นแอปแรก จะเป็นแอปเดียว) การดำเนินการนี้จะนำคุณไปยังหน้าคีย์แอป คลิกที่ "Demo Keyset" และคุณจะเห็นปุ่มที่แตกต่างกันสามปุ่ม เก็บหน้านี้ไว้ คุณจะต้องใช้คีย์เหล่านี้ในภายหลัง ตอนนี้คุณมีบัญชี PubNub แล้ว คุณสามารถตั้งค่า Raspberry Pi ได้
ขั้นตอนที่ 4: เตรียม Raspberry Pi
ดาวน์โหลด Etcher และ Raspberry Pi OS ลงในคอมพิวเตอร์ของคุณ (ลิงก์ในรายการชิ้นส่วน)
ติดตั้ง Etcher บนคอมพิวเตอร์ของคุณและเปิดเครื่องรูด (ถ้าจำเป็น) Raspberry Pi OS ใส่การ์ด Micro SD ลงในคอมพิวเตอร์แล้วเปิด Etcher คลิก "เลือกรูปภาพ" และไปที่ไฟล์ Raspberry Pi OS ที่คลายซิป เลือกจากนั้นคลิก "เลือกไดรฟ์" และเลือกการ์ด micro SD ของคุณจากรายการ คลิก "Flash" และรอให้ Etcher ดำเนินการเสร็จสิ้น เมื่อ Etcher เสร็จสิ้น ให้นำการ์ด SD ของคุณออกจากคอมพิวเตอร์ (Etcher จะดีดออกโดยอัตโนมัติ) แล้วใส่ลงใน Raspberry Pi ณ จุดนี้ คุณจะต้องเชื่อมต่อ Raspberry Pi กับจอภาพด้วยตัวแปลง HDMI เสียบแป้นพิมพ์ (และเมาส์หากคุณมีฮับ USB หลายตัว) และเสียบสายไฟ มีพอร์ต micro USB สองพอร์ต อันหนึ่งใช้สำหรับจ่ายไฟ อีกอันหนึ่งเป็นพอร์ต USB จริง อันที่ใกล้กับจุดสิ้นสุดของ Pi ที่สุดคือพลังงานในขณะที่อีกอันที่อยู่ตรงกลางคือ USB ราสเบอร์รี่ pi ของคุณจะเริ่มบูตแล้ว อาจรีสตาร์ทสองสามครั้งระหว่างการบู๊ตครั้งแรก แต่นั่นเป็นเรื่องปกติ เมื่อ Raspberry pi ของคุณเริ่มทำงานแล้ว ให้เชื่อมต่อกับ WiFi ของคุณ หลังจากเชื่อมต่อกับ WiFi แล้ว คุณอาจใช้เซิร์ฟเวอร์ SSH ได้ แต่ตอนนี้ฉันพบว่าใช้ GUI ได้ง่ายขึ้น เปิดหน้าต่างเทอร์มินัลแล้วป้อนคำสั่งเหล่านี้:
sudo pip3 ติดตั้ง 'pubnub==3.9.0'
cd git โคลน git://git.drogon.net/wiringPi git โคลน
โคลน sudo git https://github.com/timleland/rfoutlet.git /var/www/rfoutlet
sudo chown root.root /var/www/rfoutlet/codesend sudo chmod 4755 /var/www/rfoutlet/codesend
cdสายไฟPi
./สร้าง
ตอนนี้เปิดเบราว์เซอร์ไฟล์ Raspberry Pi แล้วคุณจะเห็นโฟลเดอร์ pi-home-automation ดับเบิลคลิก แล้วคุณจะเห็นไฟล์ชื่อ RFControl.py คัดลอก (ตรงข้ามคลิกและเลือก "คัดลอก") จากนั้นกลับไปที่โฟลเดอร์ pi แล้ววางที่นั่น
ปิดราสเบอร์รี่ pi ของคุณ (ไม่ว่าจะจากเมนูหรือโดยการเรียกใช้ sudo poweroff จากบรรทัดคำสั่ง) และถอดปลั๊กเมื่อไฟสีเขียวหยุดกะพริบ
ขั้นตอนที่ 5: การสร้างวงจร
ตอนนี้ได้เวลาสร้างวงจรแล้ว ฉันใช้เขียงหั่นขนม แต่คุณสามารถทำตามที่คุณต้องการ
อันดับแรก เราต้องสร้างเสาอากาศสำหรับเครื่องส่ง RF บทช่วยสอนนี้บอกวิธีสร้างเสาอากาศสำหรับเครื่องส่งสัญญาณ RF ทำตามคำแนะนำ จากนั้นประสานเข้ากับหมุดเสาอากาศของเครื่องส่งสัญญาณ (อันที่ฉันใช้มีข้อความว่า ANT) โดยให้ด้านที่สั้นกว่าใกล้กับเครื่องส่งสัญญาณมากที่สุด
ต่อสายเครื่องส่งสัญญาณ
เครื่องส่งสัญญาณใช้หมุดเหล่านี้:
ข้อมูล: GPIO 17, พินจริง 11
VCC: Raspberry Pi 5v, ขาจริง 2
GND: Raspberry Pi GND, พินจริง 6
ต่อสายเครื่องรับ
ผู้รับใช้หมุดเหล่านี้:
GND: Raspberry Pi GND, พินจริง 9
VCC: Raspberry Pi 5v, ขาจริง 4
ข้อมูล: GPIO 27, พินกายภาพ 13 (มีหมุดข้อมูลสองตัวบนตัวรับสัญญาณที่ฉันใช้ และฉันใช้อันที่ใกล้กับ VCC มากที่สุด)
ขั้นตอนที่ 6: รับรหัส RF ของคุณ
หลังจากที่ต่อวงจรของคุณเข้ากับ Raspberry Pi แล้ว ให้ตรวจสอบสองครั้งเพื่อให้แน่ใจว่าทุกอย่างเข้าที่แล้ว จากนั้นเปิดเครื่องอีกครั้ง เมื่อเปิดเครื่องแล้ว ให้เปิดเทอร์มินัลแล้วพิมพ์
sudo /var/www/rfoutlet/RFSniffer
ถัดไป เปิดโปรแกรม RFControl การวางหน้าต่างเทอร์มินัลและหน้าต่างโปรแกรมเคียงข้างกันอาจเป็นประโยชน์ในขั้นตอนต่อไป
คุณจะต้องใช้รีโมทที่รวมอยู่ในชุดเต้ารับไฟฟ้าในตอนนี้ ถือไว้ใกล้กับเครื่องรับ แล้วกดปุ่มแต่ละปุ่ม เมื่อคุณกดปุ่ม คุณจะเห็นตัวเลขสองตัวพิมพ์บนหน้าจอ ตัวหนึ่งจะเป็นรหัสหกหรือเจ็ดหลัก และอีกตัวเป็นรหัส 3 หลัก คุณจะต้องแก้ไขพจนานุกรมรหัสในโปรแกรม ป้อนรหัส 7 หลักในตำแหน่งของสวิตช์ที่เกี่ยวข้องในโปรแกรม และสำหรับปุ่มเปิด/ปิดแต่ละปุ่ม ให้ใส่รหัส 3 หลัก (นี่คือความยาว) ลงในเลนของสวิตช์ที่เกี่ยวข้องในโปรแกรม
ตัวอย่างเช่น หากสวิตช์เปิด 1 มีรหัส 1234567 รหัสปิด 7654321 และความยาว 890 รหัสจะมีลักษณะดังนี้:
รหัส = {
'switch1': { 'on': 1234567, #This is switch 1 on 'off': 7654321, #this is switch 1 off 'len': 890, #this is switch 1 code length }, 'switch2': {… }, … }
ทำซ้ำสำหรับแต่ละปุ่ม ขณะที่คุณกำลังแก้ไขไฟล์นี้ ให้เปลี่ยนสตริงที่ระบุว่า "YOUR-SUB-KEY" เป็นรหัสสมัครสมาชิก PubNub ของคุณและ "YOUR-PUB-KEY" เป็นคีย์การเผยแพร่ของคุณ
เมื่อบันทึกแต่ละปุ่มแล้ว คุณสามารถไปยังส่วนถัดไปได้
ขั้นตอนที่ 7: การเรียกใช้โปรแกรม
เมื่อคุณมีรหัสทั้งหมดแล้ว ไปที่หน้า GitHub นี้ (บนคอมพิวเตอร์ของคุณ ไม่ใช่ raspberry pi) และคลิกที่ปุ่มสีเขียวที่ระบุว่า "โคลนหรือดาวน์โหลด" จากนั้นคลิก "ดาวน์โหลด ZIP" เมื่อดาวน์โหลดไฟล์นี้แล้ว ให้เปิดเครื่องรูดและเปิดโฟลเดอร์ เปิดไฟล์ชื่อ main.js คุณจะต้องป้อนคีย์การสมัครและเผยแพร่ในโปรแกรมโดยแทนที่ "YOUR-PUB-KEY" ด้วยคีย์การเผยแพร่และ "YOUR-SUB-KEY" ด้วยคีย์การสมัครของคุณ
ถัดไป กลับไปที่ Raspberry Pi ของคุณและป้อน
python3 RFControl.py
เมื่อพิมพ์ว่า "พร้อม" ให้กลับไปที่คอมพิวเตอร์ของคุณและเปิดไฟล์ index.html ในเว็บเบราว์เซอร์โดยคลิกตรงกันข้าม เลือก "เปิดด้วย" และเลือกเบราว์เซอร์ที่คุณต้องการ คุณควรเห็น 2 คอลัมน์ 5 ปุ่ม พร้อมชื่อสวิตช์ระหว่างกัน กดปุ่มใดก็ได้ ถ้ามันควบคุมซ็อกเก็ตได้ถูกต้องก็เยี่ยมมาก! หากไม่ ให้ลองทำดังนี้
- ตรวจสอบให้แน่ใจว่า Raspberry Pi ได้รับข้อความ ควรพิมพ์ไปที่หน้าจอทุกครั้งที่ได้รับข้อความจากหน้าเว็บ หากไม่ ตรวจสอบให้แน่ใจว่าคีย์การสมัคร/เผยแพร่ของคุณถูกต้อง
- หาก Raspberry Pi ได้รับข้อความ ตรวจสอบให้แน่ใจว่ารหัส RF ของคุณถูกต้อง ตรวจสอบให้แน่ใจว่าเต้ารับของคุณจับคู่กับรีโมตของคุณแล้ว รีโมทของคุณสามารถควบคุมได้ และรหัสที่คุณป้อนลงในโปรแกรมนั้นถูกต้อง
- หากรหัส RF ถูกต้อง ตรวจสอบให้แน่ใจว่า Raspberry Pi ของคุณอยู่ในระยะของช่องสัญญาณ ถ้าพวกมันเริ่มทำงานหลังจากขยับเข้าไปใกล้แล้ว คุณอาจต้องทำเสาอากาศใหม่
- หากยังใช้งานไม่ได้ โปรดบอกปัญหาของคุณในความคิดเห็น แล้วเราจะพยายามช่วยเหลือ
ขั้นตอนที่ 8: ทำงานเมื่อเริ่มต้น
ในการทำให้โปรแกรม python ของคุณทำงานเมื่อเริ่มต้น ให้ป้อนข้อมูลนี้ลงในเทอร์มินัล raspberry pi ของคุณ:
crontab -e
ถัดไป ไปที่ด้านล่างของไฟล์และป้อนสิ่งนี้:
@reboot python3 /home/pi/RFControl.py &
สิ่งนี้จะทำให้สคริปต์ Python ของคุณทำงานเมื่อเริ่มต้นในแต่ละครั้ง ตอนนี้รีบูต Raspberry Pi ของคุณ
ขั้นตอนที่ 9: การเพิ่มสวิตช์เพิ่มเติม
หากคุณต้องการเพิ่มร้านค้า ให้ทำตามคำแนะนำเหล่านี้:
เปิด RFControl.py บน Raspberry Pi ของคุณ แล้วเพิ่มสวิตช์ใหม่ลงในพจนานุกรมสวิตช์
ตัวอย่าง:
สวิตช์ = {
…สวิตช์อื่นๆ… 'NAME-OF-SWITCH': { 'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz, }, }
ถัดไป เพิ่มปุ่มใหม่ในเว็บแอปของคุณโดยแก้ไขตัวแปรสวิตช์ใน main.js บนคอมพิวเตอร์ของคุณ
ตัวอย่าง:
สวิตช์ var = […สวิตช์เก่า… ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];
แทนที่ NAME-TO-DISPLAY ด้วยชื่อที่คุณต้องการให้แสดงบนหน้าเว็บ และแทนที่ NAME-OF-SWITCH บนทั้งสองไฟล์ด้วยสิ่งที่คุณชอบ แต่ต้องไม่ซ้ำกับคนอื่น!
ขั้นตอนที่ 10: ก้าวต่อไป
PubNub รองรับบนแพลตฟอร์มต่าง ๆ มากมาย ซึ่งหมายความว่าคุณสามารถส่งข้อความจากเกือบทุกอุปกรณ์! ฉันใช้ชุด Raspberry Pi AIY Voice และ PubNub เพื่อส่งคำสั่งด้วยเสียงของฉัน แต่นั่นอาจเป็นหัวข้อของคำแนะนำในภายหลัง ขอบคุณที่อ่านคำแนะนำของฉัน ฉันหวังว่ามันจะเป็นประโยชน์!
ขั้นตอนที่ 11: เครดิต
ขอบคุณ Tim Leland สำหรับบทช่วยสอนเกี่ยวกับการตั้งค่าเครื่องส่งสัญญาณ RF: บทช่วยสอน
ขอบคุณ diy_bloke สำหรับบทช่วยสอนเกี่ยวกับการสร้างเสาอากาศ: กวดวิชา
ขอบคุณคนอื่น ๆ ที่โพสต์บทเรียนออนไลน์ที่ฉันดูเพื่อขอความช่วยเหลือ!
แนะนำ:
บ้านอัจฉริยะโดย Raspberry Pi: 5 ขั้นตอน (พร้อมรูปภาพ)
บ้านอัจฉริยะโดย Raspberry Pi: มีผลิตภัณฑ์หลายอย่างที่ทำให้แฟลตของคุณฉลาดขึ้น แต่ส่วนใหญ่เป็นโซลูชันที่เป็นกรรมสิทธิ์ แต่ทำไมคุณต้องเชื่อมต่ออินเทอร์เน็ตเพื่อเปลี่ยนไฟด้วยสมาร์ทโฟนของคุณ นั่นเป็นเหตุผลหนึ่งที่ทำให้ฉันสร้าง Smar ของตัวเอง
จอแสดงผลเกม LED ทำจากไม้ที่ขับเคลื่อนโดย Raspberry Pi Zero: 11 ขั้นตอน (พร้อมรูปภาพ)
จอแสดงผล LED สำหรับเล่นเกมแบบไม้ที่ขับเคลื่อนโดย Raspberry Pi Zero: โปรเจ็กต์นี้ใช้จอแสดงผล LED แบบ WS2812 ขนาด 20x10 พิกเซลที่มีขนาด 78x35 ซม. ซึ่งสามารถติดตั้งได้ง่ายในห้องนั่งเล่นเพื่อเล่นเกมย้อนยุค เมทริกซ์เวอร์ชันแรกนี้สร้างขึ้นในปี 2016 และสร้างขึ้นใหม่โดยคนอื่นๆ อีกหลายคน ประสบการณ์นี้
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): 6 ขั้นตอน (พร้อมรูปภาพ)
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): การชาร์จแบบเหนี่ยวนำ (เรียกอีกอย่างว่าการชาร์จแบบไร้สายหรือการชาร์จแบบไร้สาย) เป็นการถ่ายโอนพลังงานแบบไร้สาย ใช้การเหนี่ยวนำแม่เหล็กไฟฟ้าเพื่อจ่ายกระแสไฟฟ้าให้กับอุปกรณ์พกพา แอปพลิเคชั่นที่พบบ่อยที่สุดคือ Qi Wireless Charging st
4 ขั้นตอน Digital Sequencer: 19 ขั้นตอน (พร้อมรูปภาพ)
4 ขั้นตอน Digital Sequencer: CPE 133, Cal Poly San Luis Obispo ผู้สร้างโปรเจ็กต์: Jayson Johnston และ Bjorn Nelson ในอุตสาหกรรมเพลงในปัจจุบัน ซึ่งเป็นหนึ่งใน “instruments” เป็นเครื่องสังเคราะห์เสียงดิจิตอล ดนตรีทุกประเภท ตั้งแต่ฮิปฮอป ป๊อป และอีฟ
ป้ายโฆษณาแบบพกพาราคาถูกเพียง 10 ขั้นตอน!!: 13 ขั้นตอน (พร้อมรูปภาพ)
ป้ายโฆษณาแบบพกพาราคาถูกเพียง 10 ขั้นตอน!!: ทำป้ายโฆษณาแบบพกพาราคาถูกด้วยตัวเอง ด้วยป้ายนี้ คุณสามารถแสดงข้อความหรือโลโก้ของคุณได้ทุกที่ทั่วทั้งเมือง คำแนะนำนี้เป็นการตอบสนองต่อ/ปรับปรุง/เปลี่ยนแปลงของ: https://www.instructables.com/id/Low-Cost-Illuminated-