สารบัญ:
- ขั้นตอนที่ 1: รวบรวมชิ้นส่วน
- ขั้นตอนที่ 2: ตั้งค่า Raspberry Pi โดยไม่ต้องใช้จอภาพหรือคีย์บอร์ด
- ขั้นตอนที่ 3: ติดตั้ง Wiring Pi, Apache และ PHP
- ขั้นตอนที่ 4: เว็บไซต์
- ขั้นตอนที่ 5: รูปภาพเว็บไซต์
- ขั้นตอนที่ 6: ควบคุมเว็บเซิร์ฟเวอร์จากระยะไกล
- ขั้นตอนที่ 7: ต่อวงจรกับ Raspberry Pi
- ขั้นตอนที่ 8: สร้างบริการเริ่มต้น
- ขั้นตอนที่ 9: แนบ Raspberry Pi ไปที่โรงรถ
- ขั้นตอนที่ 10: แนบ Raspberry Pi กับ SECO-LARM
- ขั้นตอนที่ 11: ส่งการแจ้งเตือนหากประตูเปิดเมื่อควรปิด
- ขั้นตอนที่ 12: ใส่ Raspberry Pi ในหนังสือลับ
- ขั้นตอนที่ 13: ภาคผนวก: ข้อมูลอ้างอิง
- ขั้นตอนที่ 14: ภาคผนวก: อัปเดต
- ขั้นตอนที่ 15: ภาคผนวก: การแก้ไขปัญหา
วีดีโอ: ที่เปิดประตูโรงรถ Raspberry Pi 3: 15 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
ฉันสร้างคำแนะนำนี้ในปี 2014 มีการเปลี่ยนแปลงมากมายตั้งแต่นั้นมา ในปี 2021 ฉันได้อัปเดต Smart Garage Door Opener ที่นี่
ใช้ Raspberry Pi และสมาร์ทโฟนในการเปิด ปิด และตรวจสอบประตูโรงรถ การเปิดและปิดประตูมีความปลอดภัยโดยใช้ใบรับรองที่ลงนามเองซึ่งติดตั้งบนโทรศัพท์มือถือของครอบครัว หากประตูโรงรถเปิดในเวลาไม่ควร ให้ส่งข้อความ (SMS) ไปยังโทรศัพท์มือถือ
ประตูโรงรถมีการใช้งานอย่างต่อเนื่องตั้งแต่ปลายปี 2557 ตลอดหลายปีที่ผ่านมา ฉันพยายามปรับปรุงการเปลี่ยนแปลงให้ทันสมัยอยู่เสมอ มีภาคผนวกที่อธิบายการเปลี่ยนแปลงคำสั่งสอน
เป้าหมายของโครงการนี้คือ:
- ทำให้การสอนครั้งแรกของฉัน - ฉันไม่ได้วางแผนที่จะโพสต์สิ่งนี้ แต่ฉันได้รับคำขอมากมาย
- เปิดประตูโรงรถด้วยรีโมทมาตรฐาน
- เปิดประตูโรงรถด้วยกริ่งประตูโรงรถติดผนัง
- เปิดประตูโรงรถด้วยสมาร์ทโฟน
- ตรวจสอบสถานะของประตูโรงรถจากระยะไกลผ่านโทรศัพท์มือถือหรือแล็ปท็อป (เปิดหรือปิด?)
- ส่งข้อความไปยังโทรศัพท์มือถือของฉันหากประตูเปิดเมื่อควรจะปิด
- รักษาประตูโรงรถให้ปลอดภัย (เช่น เมื่อไฟฟ้าดับ ไม่ควรเปิดประตู)
- ไม่อนุญาตให้บุคคลอื่นบนเน็ตเปิดประตู (ใบรับรอง SSL แบบลงนามเองสองทาง)
- ใช้ WiFi แทนการเชื่อมต่อแบบมีสาย
- ใช้ Raspberry Pi 3
พื้นฐานสำหรับการใช้งานที่เปิดประตูโรงรถนี้มาจากคำสั่ง: Raspberry Pi Garage Door Opener โดย quartarian เดิมทีฉันใช้รุ่น B+ Raspberry Pi จากนั้นย้ายไปที่ Raspberry Pi 2 รุ่น B และตอนนี้ก็ใช้ Raspberry Pi 3
ฉันใช้ MacBook เพื่อสื่อสารกับ Raspberry Pi แต่สามารถใช้คอมพิวเตอร์เครื่องใดก็ได้
ไม่มีเหตุผลที่น่าสนใจในการสร้างอุปกรณ์นี้ แต่ก็สนุก มันคุ้มค่ากว่าที่จะซื้อ อุปกรณ์ที่คล้ายกันสามารถซื้อได้ในราคาประมาณ $130 USD
- ลิฟท์มาสเตอร์ 828LM
- Chamberlain MyQ $129
- ประตู GoGo $179
- ช่างฝีมือ $100
หมายเหตุ:
- ข้อความที่อยู่ในโพดำเช่นนี้ ♣replace-this♣ ควรแทนที่ด้วยค่าจริง
- Arduino ขีดเส้นใต้ข้อความสีน้ำเงินเป็นลิงค์ ในกรณีนี้ เป็นลิงค์ไปยังเครื่องเปิดประตูโรงรถรุ่น Arduino
- ฉันพยายามให้เครดิตทุกแหล่งที่ใช้ ฉันขอโทษสำหรับการละเลย เอกสารนี้ส่วนใหญ่อิงจากผลงานของผู้อื่น
- $ หมายถึงคำสั่งที่ดำเนินการในหน้าต่างเทอร์มินัลบน MacBook และมักจะถูกดำเนินการบน Raspberry Pi
ขั้นตอนที่ 1: รวบรวมชิ้นส่วน
ซื้อหรือรวบรวมชิ้นส่วนและเครื่องมือ (ราคาเป็น USD)
- Raspberry Pi 3 รุ่น B Newark Element14 $35
- อะแดปเตอร์แปลงไฟ USB 5.2V 2.5A จาก Amazon $9.99
- สาย Micro USB เป็น USB 6 ฟุต จาก Amazon $7.99
- เคสจาก Amazon $6.99
- SanDisk Ultra 16 GB microSDHC Class 10 พร้อมอะแดปเตอร์ (SDSQUAN-016G-G4A) จาก Amazon $ 8.99
- SunFounder 2 ช่อง 5V โมดูลโล่รีเลย์สำหรับ Arduino UNO 2560 1280 ARM PIC AVR STM32 Raspberry Pi - $6.79
- 3x สายจัมเปอร์หญิง-หญิง ซื้อที่ Fry's ในราคา 4.95 เหรียญ
- DNS แบบไดนามิก $40 ต่อปีสำหรับ 30 ชื่อ (dyn.com)
- 1-แก๊ง 18 ลูกบาศ์ก in. สวิตช์ติดผนังแบบเก่าและกล่องเอาท์เล็ท ราคา $3.12
- แผ่นผนังสีขาวแปรงเดี่ยว Ultra Pro, 7.88 เหรียญ
- SECO-LARM SM 226L, เซ็นเซอร์ประตูโรงรถ, ราคาแตกต่างกันอย่างมาก, $ 9.99 ใน Amazon พร้อมจัดส่งฟรี
- ลวดเทอร์โมสตัตแข็ง 50 ฟุต, Home Depot หรือ Lowe's, ~$20
ยอดรวมของฉัน: ~ $172.00
ฉันมีชิ้นส่วน เครื่องมือ และบริการดังต่อไปนี้:
- สายเคเบิลอีเธอร์เน็ต CAT5
- ลวดเกจขนาดเล็ก ยาว 6 ฟุต
- ไขควงปากแฉก
- คีมจมูกเข็ม
- เครื่องตัดกล่อง
- ไขควงปากแบนสำหรับอัญมณี จำเป็นสำหรับการคลายสกรูบนรีเลย์
- MacBook (สามารถใช้พีซีได้)
- AT&T GigaPower (สามารถใช้ผู้ให้บริการอินเทอร์เน็ตใดก็ได้)
ขั้นตอนที่ 2: ตั้งค่า Raspberry Pi โดยไม่ต้องใช้จอภาพหรือคีย์บอร์ด
โครงการ Raspberry Pi ทั้งหมดต้องมีการตั้งค่าบางประเภท ฉันชอบใช้ชุดคำสั่งเดียวกัน และเมื่อจำเป็น ควรมีที่เดียวในการอัปเดตคำแนะนำเหล่านั้น
ตั้งค่า Raspberry Pi โดยใช้คำแนะนำต่อไปนี้:
ตั้งค่า Raspberry Pi โดยไม่ต้องใช้จอภาพหรือคีย์บอร์ด
คำแนะนำข้างต้นมีขั้นตอนเพิ่มเติมในภาคผนวก อย่าลืมทำตามขั้นตอน:
เพิ่มใบรับรองฝั่งไคลเอ็นต์ให้กับเว็บเซิร์ฟเวอร์
ปิด Raspberry Pi
$ sudo ปิด -h 0
เมื่อปิดเครื่องแล้ว ให้ถอด
- สายอีเธอร์เน็ต
- สายเคเบิลอนุกรม USB
สิ่งเหล่านี้จะไม่จำเป็นอีกต่อไป ใช้ wifi, ssh และหน้าต่างเทอร์มินัลบน Mac Book เพื่อเรียกใช้คำสั่งบน Raspberry Pi
ถอดปลั๊กไฟและเสียบปลั๊กไฟกลับเข้าไป และ raspberry pi ควรรีบูต
ขั้นตอนที่ 3: ติดตั้ง Wiring Pi, Apache และ PHP
ติดตั้งสายไฟ Pi
เปิดหน้าต่างเทอร์มินัลบน Mac Book เข้าสู่ระบบ Raspberry Pi จากนั้นดาวน์โหลด คอมไพล์ และติดตั้ง Wiring Pi ซอฟต์แวร์นี้ช่วยให้สามารถควบคุมพิน GPIO นี่คือคำแนะนำทีละขั้นตอน:
wiringpi.com/download-and-install/
นี่คือคำแนะนำเวอร์ชันย่อ:
$ ssh pi@♣raspberry-pi-ip♣
รหัสผ่าน: ♣password♣ $ sudo apt-get install git-core $ git clone git://git.drogon.net/wiringPi $ cd wiringPi $ git pull origin $./build
เรียกใช้คำสั่ง gpio เพื่อตรวจสอบการติดตั้ง:
$ gpio -v
เวอร์ชัน gpio: 2.29 ลิขสิทธิ์ (c) 2012-2015 Gordon Henderson นี่เป็นซอฟต์แวร์ฟรีที่ไม่มีการรับประกันอย่างแน่นอน สำหรับรายละเอียดประเภท: gpio -warranty Raspberry Pi รายละเอียด: ประเภท: รุ่น 2, การแก้ไข: 1.1, หน่วยความจำ: 1024MB, ผู้ผลิต: Sony [OV] Device tree เปิดใช้งานอยู่ Raspberry Pi นี้รองรับการเข้าถึง GPIO ระดับผู้ใช้ -> ดู man-page สำหรับรายละเอียดเพิ่มเติม $ gpio readall +-----+-----+---------+------+---+--- Pi 2---+---+------+---------+----+-----+ | BCM | wPi | ชื่อ | โหมด | วี | ทางกายภาพ | วี | โหมด | ชื่อ | wPi | BCM | +-----+-----+---------+------+---+----++----+---+- -----+---------+-----+-----+ | | | 3.3v | | | 1 || 2 | | | 5v | | | | 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5V | | | | 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | | | 4 | 7 | จีพีโอ 7 | ออก | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 | | | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 | | 17 | 0 | จีพีโอ 0 | IN | 0 | 11 || 12 | 0 | IN | จีพีโอ 1 | 1 | 18 | | 27 | 2 | จีพีโอ 2 | IN | 0 | 13 || 14 | | | 0v | | | | 22 | 3 | จีพีโอ 3 | IN | 0 | 15 || 16 | 1 | IN | จีพีโอ 4 | 4 | 23 | | | | 3.3v | | | 17 || 18 | 0 | IN | จีพีโอ 5 | 5 | 24 | | 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | | | 9 | 13 | มิโซะ | IN | 0 | 21 || 22 | 0 | IN | จีพีโอ 6 | 6 | 25 | | 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 | | | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 | | 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 | | 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | | | 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 0 | IN | GPIO.26 | 26 | 12 | | 13 | 23 | GPIO.23 | IN | 0 | 33 || 34 | | | 0v | | | | 19 | 24 | GPIO.24 | IN | 0 | 35 || 36 | 0 | IN | GPIO.27 | 27 | 16 | | 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 0 | IN | GPIO.28 | 28 | 20 | | | | 0v | | | 39 || 40 | 0 | IN | GPIO.29 | 29 | 21 | +-----+-----+---------+------+---+----++----+---+- -----+---------+-----+-----+ | BCM | wPi | ชื่อ | โหมด | วี | ทางกายภาพ | วี | โหมด | ชื่อ | wPi | BCM | +-----+-----+---------+------+---+---Pi 2---+---+--- -----------+-----+-----+
คำสั่งข้างต้นควรให้ความมั่นใจแก่คุณว่าสายไฟPi ทำงานได้ดี
ติดตั้ง Apache และ PHP
รันคำสั่งต่อไปนี้:
$ ซีดี..
$ sudo apt-get update $ sudo apt-get ติดตั้ง apache2 php5 libapache2-mod-php5
หากต้องการตรวจสอบว่าเว็บเซิร์ฟเวอร์ทำงาน ให้เปิดเบราว์เซอร์และในช่อง URL ให้ป้อน:
♣raspberry-pi-ip♣
เว็บไซต์เริ่มต้นของ Apache ตอบสนองด้วย "มันใช้งานได้!"
ขั้นตอนที่ 4: เว็บไซต์
เปิดหน้าต่างเทอร์มินัลบน Mac Book เข้าสู่ระบบ Raspberry Pi จากนั้นลบไฟล์ index.html เริ่มต้น เปลี่ยนการอนุญาตบนไดเร็กทอรีเว็บไซต์ และแก้ไขไฟล์ชื่อ index.php
$ ssh pi@♣raspberry-pi-ip♣
รหัสผ่าน: ♣รหัสผ่าน♣ $ sudo rm /var/www/index.html $ sudo chown pi:root /var/www $ sudo nano /var/www/index.php
และป้อนรหัสต่อไปนี้:
ที่เปิดโรงรถ
ระบบอัตโนมัติในบ้าน |
---|
ที่เปิดประตูโรงรถ | คู่มือการเปิดประตูโรงรถ | ปิด 1 | เปิด 0 |
CTRL-o และ ENTER เพื่อเขียนไฟล์ และ CTRL-x เพื่อออกจากเอดิเตอร์
เปลี่ยนการอนุญาตในไฟล์
$ sudo chmod 664 /var/www/index.php
ขั้นตอนที่ 5: รูปภาพเว็บไซต์
หยิบที่เปิดประตูโรงรถระยะไกลความละเอียดสูงจากเว็บ แก้ไขภาพตามที่คุณต้องการโดยใช้พู่กัน Mac ในภาพด้านบน ใช้ Genie Garage Opener ความละเอียดสูง เพิ่มโลโก้ Raspberry pi และนำ LED ออก
ภาพหนึ่งเป็นพื้นหลัง (remote-background.jpg) และอีกภาพหนึ่งเป็นภาพที่ทำงานอยู่ (remote-press.jpg)
แผนคือเมื่อกดปุ่มแทนที่จะกะพริบไฟ LED ราสเบอร์รี่จะกะพริบ ฉันทำให้เว็บไซต์ง่ายขึ้น
คัดลอกรูปภาพไปยังราสเบอร์รี่ pi:
$ scp *-j.webp
รหัสผ่าน: ♣รหัสผ่าน♣
เว็บไซต์มีปุ่มกดเพียงปุ่มเดียว หากต้องการตรวจสอบ ให้เปิดเบราว์เซอร์และป้อน ♣raspberry-pi-ip♣ แทนที่จะเป็นเว็บไซต์เริ่มต้นของ Apache ซึ่งระบุว่า "ใช้งานได้!" ปุ่มควรปรากฏขึ้น กดเลย
ขั้นตอนที่ 6: ควบคุมเว็บเซิร์ฟเวอร์จากระยะไกล
เพื่อให้ง่ายต่อการเข้าถึงที่เปิดประตูโรงรถจากสถานที่ห่างไกล ฉันใช้ชื่อ DNS แบบไดนามิก เพราะฉันไม่ชอบจำที่อยู่ IP
ด้วยคุณสมบัตินี้ ฉันป้อน ♣dynamic-hostname♣.getmyip.com ในช่อง URL ของเบราว์เซอร์ หมายเหตุ: IP บนเราเตอร์ที่บ้านสามารถเปลี่ยนแปลงได้โดยไม่ต้องแจ้งให้ทราบ แต่สิ่งนี้ไม่ค่อยเกิดขึ้น ฉันเลือกใช้ DynDNS คุณจะต้องทราบที่อยู่ IP สาธารณะของเราเตอร์ของคุณ
U-Verse Router IP: ♣uverse-public-ip♣
คุณสามารถดูชื่อโฮสต์และรายละเอียดบัญชี DynDNS Pro ของคุณได้ ต่อไปนี้คือเคล็ดลับบางประการในการเริ่มต้น:
-
สร้างชื่อโฮสต์ DNS แบบไดนามิกของคุณ (1 จาก 30):
- ♣ชื่อโฮสต์แบบไดนามิก♣
- คีย์ตัวอัปเดต: ♣dynamic-ip-updater-key♣
-
ติดตั้งโปรแกรมอัปเดตไคลเอ็นต์เพื่อให้แน่ใจว่าชื่อโฮสต์ของคุณชี้ไปยังที่อยู่ IP ที่ถูกต้องเสมอ
- ดาวน์โหลดและติดตั้งบน MacBook
- AT&T U-verse IPs ไม่ค่อยเปลี่ยนแปลง ดังนั้นจึงสามารถเรียกใช้ตัวอัปเดตด้านบนได้ทุกเมื่อที่มีการเปลี่ยนแปลง
-
ทำตามคำแนะนำ:
- เพิ่มบัญชี
- ป้อนชื่อผู้ใช้และรหัสผ่าน: ♣dynamic-ip-username♣ ♣dynamic-ip-password♣
- เลือกชื่อโฮสต์
- คลิกกำหนดค่าโฮสต์ที่เลือก
- โฮสต์ควรเปิดใช้งาน
-
กำหนดค่าเครือข่ายของคุณเพื่ออนุญาตการเข้าถึงอุปกรณ์ของคุณจากอินเทอร์เน็ต คุณสามารถใช้ Dyn Wizard เพื่อดูคำแนะนำทั่วไปเกี่ยวกับวิธีการทำเช่นนี้ ใช้แหล่งข้อมูล เช่น PortForward.com หรือติดต่อผู้ผลิตอุปกรณ์เพื่อขอความช่วยเหลือ
- AT&T U-กลอน
- การส่งต่อพอร์ตสำหรับ 2-Wire 3801HGV - นี่คือเราเตอร์ AT&T U-Verse ที่ฉันมี ดูการอัปเดตในภาคผนวกสำหรับวิธีส่งต่อบนเราเตอร์ AT&T U-verse 5268ac
- เปิดเบราว์เซอร์และไปที่ ♣raspberry-pi-ip♣
- รหัสผ่าน: ♣รหัสผ่าน♣
- การตั้งค่า
-
ไฟร์วอลล์
- เลือก ♣raspberry-pi-hostname♣
-
เซิร์ฟเวอร์
- เว็บเซิร์ฟเวอร์พอร์ต80
- เซิร์ฟเวอร์ HTTPS – พอร์ต 443
- เพิ่ม
- บันทึก
เมื่อเสร็จแล้ว เว็บเซิร์ฟเวอร์จะทำงานจากอินเทอร์เน็ต หากต้องการตรวจสอบ ให้ป้อน ♣dynamic-hostname♣ แล้วคุณจะเห็นปุ่มเปิดประตูโรงรถ
ขั้นตอนที่ 7: ต่อวงจรกับ Raspberry Pi
สำหรับรหัสที่ให้มา (ขั้นตอนที่ 4 และ 6) ฉันใช้ GPIO pin 7 มันเป็นเรื่องบังเอิญที่ GPIO 7 เหมือนกับสายพินpin 7 ในโค้ด PHP จะใช้หมายเลขพินการเดินสาย Pi ไม่ใช่หมายเลขพิน GPIO คุณสามารถใช้อะไรก็ได้ที่คุณต้องการ แต่อย่าลืมเปลี่ยนรหัส
ฉันลองใช้ลวดบิด แต่รีเลย์ยึดลวดบิดได้ไม่ดี ลวดแข็งจะดีกว่า
ในความพยายามครั้งแรกของฉัน ฉันได้สร้างสายเคเบิลเชื่อมต่อสามสาย (ตัวเมียกับตัวผู้)
- ใช้สายจัมเปอร์สามตัวต่อตัวเมีย
-
ตัดลวดแข็งสามชิ้นให้เหลือประมาณ 1 นิ้ว
ดึงลวดแข็งทั้งสองข้างออก 1/4 นิ้ว
- ใส่ลวดแข็งหนึ่งเส้นเข้ากับสายจัมเปอร์ตัวเมียหนึ่งเส้น
นี่เป็นวิธีที่ดีกว่าในการสร้างสายเชื่อมต่อ (ตัวเมียกับตัวผู้):
- ใช้เฉพาะลวดแข็ง
- ตัดลวดแข็งขนาด 4 นิ้วสามเส้น
- ดึงลวดแข็งทั้งสองข้างออก 1/4 นิ้ว
-
ใช้หมุดเชื่อมต่อตัวเมีย
-
เลื่อนหมุดต่อตัวเมียหนึ่งตัวที่ปลายด้านหนึ่งของลวดแข็งและจีบ
หมุดตัวเมียไม่ควรหลวม ประสานถ้าจำเป็น
- เลื่อนตัวคลายความเครียดบนหมุดต่อตัวเมียหรือหมุดปิดด้วยเทปของช่างไฟฟ้า
-
ต่อรีเลย์เข้ากับ pi ดังแสดงในแผนภาพ:
- ต่อปลายสายตัวเมียเข้ากับขา Raspberry Pi
- ใส่ลวดแข็งเข้าไปในรีเลย์
ขั้นตอนที่ 8: สร้างบริการเริ่มต้น
รีเลย์ส่วนใหญ่รวมทั้งตัวที่ซื้อมาทำงานดังนี้:
- เมื่อสัญญาณเปิดอยู่ วงจรจะดับ
- เมื่อสัญญาณดับ แสดงว่าวงจรเปิด
หาก Raspberry Pi สูญเสียพลังงาน รีเลย์จะมีกลไกความปลอดภัยที่ทำให้วงจรปิด
ปัญหาอาจเกิดขึ้นเมื่อ Rapberry Pi และรีเลย์ได้รับพลังงานกลับคืนมา แต่ก่อนที่ Raspberry Pi จะทำการบูทเสร็จเพื่อเปิดสัญญาณ ON ซึ่งจำเป็นต้องปิดวงจร คุณสามารถตื่นนอนตอนเช้าโดยเปิดโรงรถและอาจมีเพื่อนใหม่อีกสองสามคน!
อย่างไรก็ตาม รีเลย์ไม่ได้เริ่มต้นจริง ๆ จนกว่าโหมดพิน GPIO จะถูกตั้งค่าผ่านคำสั่งนี้: gpio mode 7 out นอกจากนี้ หากพิน GPIO เป็น ON (gpio เขียน 7 1) ก่อนที่คุณจะตั้งค่าโหมด GPIO รีเลย์จะปิดเมื่อเริ่มต้น
ในการทำให้การเริ่มต้นนี้ทำงานเมื่อเปิดเครื่องและไม่เรียกเพื่อนใหม่ ให้ใช้สคริปต์เริ่มต้นต่อไปนี้
$ ssh pi@♣raspberry-pi-ip♣
$ sudo nano /etc/init.d/garagerelay
จากนั้นวางสคริปต์นี้:
#! /bin/bash
# /etc/init.d/garagerelay # ดำเนินการฟังก์ชั่นเฉพาะเมื่อถูกถามโดยกรณีของระบบ "$1" ในการเริ่มต้น) echo "Starting Relay" # เปิด 7 ซึ่งจะทำให้รีเลย์ปิด /usr/local/bin/gpio write 7 1 #Start Gpio /usr/local/bin/gpio โหมด 7 ออก;; หยุด) echo "กำลังหยุด gpio";; *) echo "การใช้งาน: /etc/init.d/garagerelay {start|stop}" exit 1;; esac ทางออก 0
วิธีบันทึก: CTRL-o, ENTER
หากต้องการออกจากนาโน ให้กด CTRL-x
ทำให้ไฟล์ปฏิบัติการได้:
$ sudo chmod +x /etc/init.d/garagerelay
ตอนนี้บอกให้ pi ของคุณรันสคริปต์นี้ตอนบูต:
$ sudo update-rc.d -f garagerelay เริ่ม 4
(หมายเหตุ: คุณสามารถละเว้นคำเตือน "แท็ก LSB ที่หายไป" ได้อย่างปลอดภัย)
ตรวจสอบให้แน่ใจว่าสคริปต์เริ่มต้นทำงานอยู่
$ sudo รีบูต
เปิดเบราว์เซอร์และคลิกที่ตัวเปิด รีเลย์ควรคลิก
ขั้นตอนที่ 9: แนบ Raspberry Pi ไปที่โรงรถ
เมื่อย้าย Raspberry Pi ต้องแน่ใจว่าได้เรียกใช้:
$ ปิด -h 0
คุณอาจต้องการปิดไฟไปที่โรงรถ ดังนั้นที่เปิดประตูจะไม่ทำให้ไฟฟ้าช็อตคุณ:) เหตุผลที่แท้จริงคือทุกครั้งที่คุณตัดสายไฟ ประตูจะขึ้นและลง
คลายสกรูยึดผนังออกจากตัวเปิดแบบกริ่งประตู ซึ่งยึดกริ่งประตูกับผนัง
เจาะรูจากโรงรถหลังกริ่งประตูเข้าบ้าน ในเท็กซัส Raspberry Pi ไม่ควรอยู่ในโรงรถ ความแปรผันของอุณหภูมิในโรงรถนั้นอยู่นอกเหนือข้อกำหนดการทำงานของ Raspberry Pi
เดินสายไฟรีเลย์ผ่านรู (ใช้ไม้แขวนเสื้อ)
คลายสกรูทั้งสองตัวที่ด้านหลังของที่เปิดประตู
ดึงปลายสายรีเลย์ทั้งสองข้างออก: 1) ประมาณ 1/8” นิ้วของด้านรีเลย์ และประมาณ ½” นิ้วที่ด้านกริ่งประตู งอด้านกริ่งประตูของลวดให้เป็นครึ่งวงที่ใหญ่พอที่จะใส่สกรูด้านหลังได้
ต่อสายรีเลย์หนึ่งเส้นเข้ากับสกรูแต่ละตัวที่ด้านหลังของกริ่งประตู แล้วขันสกรูให้แน่น การเชื่อมต่อมีดังแสดงในภาพ เนื่องจากรีเลย์แยกวงจร ทิศทางจึงไม่สำคัญว่าจะต่อรีเลย์ตัวไหนกับสกรูตัวไหน
ขั้นตอนที่ 10: แนบ Raspberry Pi กับ SECO-LARM
ก่อนที่ฉันจะเขียนโค้ดเสร็จ ฉันและครอบครัวก็ลาพักร้อนและฉันก็เปิดเบราว์เซอร์ขึ้นมา มุมมองสุดท้ายของเบราว์เซอร์ของฉันคือที่เปิดประตูโรงรถ – หน้าได้รับการรีเฟรชและประตูโรงรถเปิดออก ไม่กี่วันต่อมาเพื่อนบ้านโทรมาถามว่าควรเปิดประตูโรงรถหรือไม่? โชคดีที่ฉันสามารถปิดได้ตั้งแต่ 500 ไมล์
กลโกงนี้บังคับให้ฉันเปลี่ยนรหัสเพื่อไม่ให้สิ่งนี้เกิดขึ้น และเพิ่มเซ็นเซอร์และสถานะของประตูโรงรถลงในเว็บไซต์
นี่คือลิงค์ไปยังคำแนะนำดั้งเดิมสำหรับการเพิ่มเซ็นเซอร์ อย่างไรก็ตาม เนื่องจากทุกอย่างที่เสร็จสมบูรณ์แล้ว การติดตั้งเซ็นเซอร์จึงง่ายขึ้นอย่างมาก และแทนที่จะใช้ python ให้เพิ่มโค้ดสองสามบรรทัดลงใน index.php
closedแม่เหล็กติดอยู่ที่ด้านซ้ายมือ ด้านบนสุดของประตูโรงรถ และเซ็นเซอร์ติดอยู่กับผนังโรงรถ ดังนั้นฉันจึงต้องใช้สายเทอร์โมสตัทแบบแข็งจากเซ็นเซอร์กลับไปที่ราสเบอร์รี่ pi จำเป็นต้องมีรูจากโรงรถเข้าไปในห้องใต้หลังคา และจากห้องใต้หลังคาเข้าไปในผนังที่มีที่เปิดประตูโรงรถ (สวิตช์กริ่งประตู)
ฉันเสียบกล่องรวมสัญญาณสีน้ำเงินระหว่างเซ็นเซอร์ SECO-LARM กับสายไฟแบบทึบ
ในบ้านของฉัน มีช่องว่างระหว่างเพดานของชั้นหนึ่งกับด้านล่างของชั้นสอง 18 นิ้ว ฉันคิดว่านี่คือที่ที่ท่อความร้อนและความเย็นทำงาน ฉันต้องการส่วนต่อขยายดอกสว่านให้ยาวพอที่จะผ่านชั้นสองและผ่าน 2x4 ด้านบน (แผ่นด้านบน) ที่มีกริ่งประตู
ส่วนที่สำคัญที่สุดคือเมื่อเจาะจากห้องใต้หลังคาเข้าไปในบริเวณที่สายไฟจะวิ่งไปที่ที่เปิดประตูโรงรถคือห้ามเจาะไฟฟ้า การแก้ไขนี้ไม่สนุก การได้เห็นประกายไฟและดับไฟนั้นช่างน่าตื่นเต้นจริงๆ!
เซ็นเซอร์ต้องใช้สายเทอร์โมสตัตแข็งสองเส้นหรือลวดรั้วสุนัขที่มองไม่เห็น
Raspberry Pi มีคำอธิบายพินหลายแบบ (BCM, wPi, กายภาพ) รหัสนี้ใช้หมายเลขพินการเดินสาย ในการดูพินทั้งหมด และการแมปพินและค่าพิน ให้ป้อน:
$ gpio อ่านทั้งหมด
สำหรับคู่มือ gpio ให้ป้อน:
$ gpio แมน
ในคำแนะนำดั้งเดิม พินทางกายภาพ 9 ต่อกราวด์และเชื่อมต่อกับลีด SECO-LARM ตัวใดตัวหนึ่ง อย่างไรก็ตาม วิธีนี้ใช้ไม่ได้ผลสำหรับฉัน ให้เชื่อมต่อสายนำไปยังหมุดจริง 15 และ 17
พินจริง 15 (พิน wPi 3) ไปที่ 3.3V เมื่อปิดเซ็นเซอร์ SECO-LARM พินจริง 17 คือ 3.3v หากไม่ได้ผล ให้เปลี่ยนการเชื่อมต่อบน SECO-LARM
ติด SECO-LARM กับประตูโรงรถและผนัง เรียกใช้สายไฟและเชื่อมต่อกับ Raspberry Pi
ขั้นตอนที่ 11: ส่งการแจ้งเตือนหากประตูเปิดเมื่อควรปิด
หากประตูโรงรถเปิดในเวลาไม่ควร ให้ส่งข้อความไปยังโทรศัพท์มือถือ
ติดตั้งและกำหนดค่า SMTP อย่างง่าย
ฉันมีโทรศัพท์เคลื่อนที่ของ AT&T และใช้ ♣cell-phone-number♣@txt.att.net สำหรับการส่งข้อความ ฉันยังมีบัญชี Gmail และตัวอย่างด้านล่างใช้ ♣gmail-account♣@gmail.com หากคุณใช้บริการอื่น ให้ทำการเปลี่ยนแปลงตามความเหมาะสม
สำหรับคำสั่ง $ ด้านล่าง ให้เปิดหน้าต่างเทอร์มินัลบน MacBook และเข้าสู่ระบบ Raspberry Pi ของคุณ
ตรวจสอบให้แน่ใจว่าที่เก็บเป็นปัจจุบัน:
$ sudo apt-get update
ติดตั้งยูทิลิตี้ SSMTP และเมลอย่างง่าย:
$ sudo apt-get ติดตั้ง ssmtp
$ sudo apt-get ติดตั้ง mailutils
แก้ไขไฟล์การกำหนดค่า SSMTP:
$ sudo nano /etc/ssmtp/ssmtp.conf
ดังนี้
mailhub=smtp.gmail.com:587 ชื่อโฮสต์=♣ชื่อโฮสต์ของคุณ♣ AuthUser=♣gmail-account♣@gmail.com AuthPass=♣gmail-password♣ UseSTARTTLS=YES
แก้ไขไฟล์ชื่อแทน SSMTP:
$ sudo nano /etc/ssmtp/revaliases
สร้างหนึ่งบรรทัดสำหรับผู้ใช้แต่ละคนที่จะสามารถส่งอีเมลได้ ตัวอย่างเช่น:
ตั้งค่าการอนุญาตของไฟล์การกำหนดค่า SSMTP:
$ sudo chmod 664 /etc/ssmtp/ssmtp.conf
สิทธิ์ของไฟล์ /etc/ssmtp/ssmtp.conf กำหนดว่าใครสามารถส่งอีเมลจาก Raspberry Pi ได้ โดยค่าเริ่มต้น ไฟล์นี้เป็นเจ้าของโดยรูทผู้ใช้ และกลุ่มของไฟล์นั้นเป็นรูทด้วย
แก้ไขไฟล์ชื่อแทน SSMTP ซึ่งมีข้อมูลเกี่ยวกับบัญชีอีเมล:
$ sudo nano /etc/ssmtp/ssmtp.conf
เมื่อขั้นตอนการตั้งค่าและการกำหนดค่าข้างต้นเสร็จสิ้น ให้ทดสอบโดยส่งอีเมลจากบรรทัดคำสั่ง
$ echo "ปิดประตูโรงรถ" | mail -s "เปิดประตูโรงรถ" ♣cell-phone-number♣@txt.att.net
สร้างสคริปต์เพื่อตรวจสอบว่าประตูโรงรถเปิดอยู่หรือไม่เมื่อไม่ควรเปิด จากนั้นส่งข้อความ
$ sudo nano /usr/local/bin/garage.sh
และเพิ่มสิ่งต่อไปนี้:
#!/bin/bash
#ตรวจสอบว่าประตูโรงรถเปิดอยู่หรือไม่ # หากเปิดส่งการแจ้งเตือนและเขียนไปที่ syslog up=0; door=$(/home/pi/wiringPi/gpio/gpio read 3) if ["$door" -eq "$up"] จากนั้น logger ♣your-hostname♣: Garage Door Open echo "close the garage door" | mail -s "Garage Door Open" ♣cell-phone-number♣@txt.att.net fi exit 0
จากนั้นเพิ่ม crontab เพื่อเรียกใช้ในช่วงเวลาที่กำหนด:
$ sudo crontab –e
และเพิ่ม:
#ตอนกลางคืนเช็คทุกชั่วโมงว่าประตูโรงรถเปิดไหม
0 22-23/1 * * * sudo /usr/local/bin/garage.sh 0 0-5/1 * * * sudo /usr/local/bin/garage.sh
หากทุกอย่างใช้งานได้ ให้ไปที่ขั้นตอนถัดไป
ขั้นตอนที่ 12: ใส่ Raspberry Pi ในหนังสือลับ
ใส่ราสเบอร์รี่ pi ไว้ในหนังสือลับ ฉันได้อันนี้ที่ Michael's ประมาณ 7 เหรียญ ฉันตัดรูเล็ก ๆ สำหรับสายไฟและสายไฟ
ขั้นตอนที่ 13: ภาคผนวก: ข้อมูลอ้างอิง
SunFounder 2 ช่อง 5V โมดูลโล่รีเลย์สำหรับ Arduino UNO 2560 1280 ARM PIC AVR STM32
- 5V 2-Channel Relay interface board และแต่ละอันต้องการ 15-20mA
- กระแสไฟขับ พร้อมกับรีเลย์กระแสไฟสูง AC250V 10A; DC30V 10A
- อินเทอร์เฟซมาตรฐานที่สามารถควบคุมได้โดยตรงด้วยไมโครคอนโทรลเลอร์ (Arduino, 8051, AVR, PIC, DSP, ARM, ARM, MSP430, TTL logic)
- ไฟ LED แสดงสถานะ Relay output ลิงค์ดาวน์โหลดเอกสาร:
ขั้นตอนที่ 14: ภาคผนวก: อัปเดต
21FEB2016
-
ในคำแนะนำเดิมมีปัญหาเกี่ยวกับการแก้ไขอัตโนมัติ การจัดรูปแบบ และความชัดเจนของทิศทาง
- ตัวอย่างปัญหาคือเมื่อเครื่องหมายอัญประกาศคู่ในโค้ดถูกเปลี่ยนเป็นสิ่งที่ดูเหมือนอัญประกาศคู่ตัวเอียง อย่างไรก็ตาม หากคุณตัดและวางสิ่งนี้ลงในสคริปต์ มันจะไม่ทำงาน
- โปรแกรมแก้ไขที่สอนได้ชอบแก้ไขอัตโนมัติ ดังนั้น wlan จึงหันไปวางแผน และลบอัตโนมัติเปลี่ยนเป็นลบอัตโนมัติ การเปลี่ยนแปลงเหล่านี้สังเกตได้ยาก
- คำแนะนำของฉันบางส่วนอาจไม่ชัดเจนเพียงพอ
- โดยปกติ ฉันใช้วงเล็บมุมเป็นตัวบ่งชี้ถึงสิ่งที่จำเป็นต้องเปลี่ยน ตัวแก้ไขแปลงสิ่งเหล่านี้เป็น html ดังนั้นฉันจึงเปลี่ยนไปใช้วงเล็บเหลี่ยม แต่สิ่งเหล่านี้อาจทำให้เกิดปัญหาได้เนื่องจากดูเหมือนโค้ด ดังนั้นในที่สุดฉันก็ตัดสินที่ ♣s เป็นตัวบ่งชี้สำหรับการแทนที่ด้วยมูลค่าจริง
- เมื่อเวลาผ่านไปฉันได้ปรับปรุงสคริปต์บางส่วนด้วย
- แก้ไขขั้นตอนที่ 21-26
03เมษายน 2559
- สร้างภาคผนวกพร้อมการแก้ไขปัญหา ข้อมูลอ้างอิง และการอัปเดต (ขั้นตอนที่ 27-29)
- ย้ายการแก้ไขปัญหาไปยังภาคผนวกจากขั้นตอนที่ 2 ก่อนหน้านี้
- อัปเดตและเรียงตามตัวอักษรหน้าการแก้ไขปัญหา
- เปลี่ยนชื่อไฟล์จาก test2wifi.sh เป็น Garage.sh - อธิบายได้ชัดเจนยิ่งขึ้น
- อัปเดต cron เพื่อใช้ Garage.sh
- แก้ไข 1, 20-26 (สร้างบริการเริ่มต้นเป็นขั้นตอนก่อนภาคผนวก)
04เมษายน 2559
- แทนที่ขั้นตอนที่ 2-11 และ 16-20 ด้วยมาตรฐานของฉันคือการตั้งค่า Raspberry Pi
- อัพเดทรายการอะไหล่ ขั้นตอนที่ 1
- เพิ่ม/รวมรูปภาพ
05 เมษายน 2559
เว็บไซต์และรูปภาพแบบง่าย (ขั้นตอนที่ 4 และ 5)
01MAY2016
เพิ่มการแก้ปัญหาสำหรับเซ็นเซอร์ Seco-larm/raspberry Pi
01MAY2016
การแก้ไขก่อนหน้านี้ไม่ได้รับการบันทึกอย่างถูกต้อง?
11พ.ย. 2559
- อัปเดตเป็น AT&T GigaPower และเปลี่ยนเราเตอร์เป็น 5268ac
- 5268ac ไม่รองรับการวนซ้ำ ดังนั้นเซิร์ฟเวอร์ Garage Opener จึงไม่สามารถเข้าถึงได้จากคอมพิวเตอร์บน LAN สำหรับ MacBook เพื่อเข้าถึงเว็บเซิร์ฟเวอร์ที่เปิดโรงรถให้ทำดังต่อไปนี้:
$ sudo nano /etc/hosts
แล้วแอดไลน์
192.168.1.64 ♣ชื่อเซิร์ฟเวอร์ภายนอกโดเมน♣
บันทึกและออก CTRL-o, CTRL-x
$ sudo killall -HUP mDNSRตอบกลับ
-
กฎการส่งต่อพอร์ตในตัวของ 5268ac เช่น เซิร์ฟเวอร์ HTTPS, เซิร์ฟเวอร์ HTTP และเว็บเซิร์ฟเวอร์ไม่ทำงาน เพื่อให้การส่งต่อพอร์ตทำงาน:
- เปิดเบราว์เซอร์และไปที่ 192.168.1.254
- เข้าสู่ระบบ
- เลือกการตั้งค่า ไฟร์วอลล์ แอปพลิเคชัน รูเข็ม และ DMZ
- เลือกเว็บเซิร์ฟเวอร์ที่เปิดโรงรถ
- เลือกที่ผู้ใช้กำหนด
-
คลิกแอปพลิเคชันที่กำหนดโดยผู้ใช้ใหม่
- ในชื่อโปรไฟล์แอปพลิเคชัน ให้ป้อน: PortForwarding
-
ใน Create Application Definition ให้เพิ่มรายการต่อไปนี้แล้วคลิก Add to List:
- TCP จาก 80 ถึง 80 แมปกับพอร์ตโฮสต์ 443
- TCP จาก 443 ถึง 443 แมปไปยังพอร์ตโฮสต์ 443
- UDP จาก 443 ถึง 443 จับคู่กับพอร์ตโฮสต์ 443
- UDP จาก 80 ถึง 80 แมปกับพอร์ตโฮสต์ 443
- คลิกกลับ
- เลือกเว็บเซิร์ฟเวอร์ของคุณอีกครั้ง
- เลือกที่ผู้ใช้กำหนด
- เพิ่ม PortForwarding
- คลิกบันทึก
21ม.ค.2018
- อัปเดตเป็น Raspberry Pi 3
- แก้ไขหลายขั้นตอน
- อัพเดทอะไหล่และราคาบางส่วน
ขั้นตอนที่ 15: ภาคผนวก: การแก้ไขปัญหา
พื้นที่ดิสก์ที่ใช้
บรรทัดสุดท้ายแสดงพื้นที่ดิสก์ทั้งหมดที่ใช้ การ์ด SD มี 8GB
$ cd../..
$ sudo du –hx –c
อีเมล
หากคุณกำลังประสบปัญหา ให้ลองทำดังนี้:
$ echo "test" | sendmail -v ♣your-gmail-account♣@gmail.com
หากตั้งค่าอีเมลถูกต้อง คุณควรได้รับอีเมลในบัญชี Gmail ของคุณ
หากคุณได้รับการตรวจสอบล้มเหลว:
คุณอาจต้องลดความปลอดภัยในบัญชีของคุณ อย่างไรก็ตาม ไม่แนะนำให้ลดความปลอดภัยลง Google จะส่งอีเมลพร้อมลิงก์ไปยังการตั้งค่าความปลอดภัยที่ต่ำกว่า
คุณสามารถเปลี่ยนจากโปรแกรมอ่านอีเมลปัจจุบันของคุณเพื่อใช้ www.gmail.com เพื่อเข้าถึงบัญชีของคุณ (แนะนำ) หรือเปลี่ยนการตั้งค่าของคุณที่ https://www.google.com/settings/security/lesssecu… เพื่อให้บัญชีของคุณไม่มีอีกต่อไป ได้รับการคุ้มครองตามมาตรฐานความปลอดภัยที่ทันสมัย
ฉันไม่แนะนำให้ลดมาตรฐานความปลอดภัยของคุณ
หากคุณได้รับความล้มเหลวในการให้สิทธิ์:
สาเหตุที่เป็นไปได้มากที่สุดคือคุณระบุชื่อผู้ใช้หรือรหัสผ่านผิดสำหรับบัญชี gmail ของคุณในไฟล์ /etc/ssmtp/ssmtp.conf ตรวจสอบค่าของฟิลด์ AuthUser และ AuthPass อีกครั้ง
หากคุณขาดการเชื่อมต่อระหว่างการประมวลผล:
เป็นไปได้ว่าคุณระบุพอร์ตที่ไม่ถูกต้องสำหรับ Google smtp ที่ไหนสักแห่งใน /etc/ssmtp/ssmtp.conf หรือใน /etc/ssmtp/revaliases
ตรวจสอบบรรทัดสุดท้ายของบันทึกของคุณ ควรมีข้อความแสดงข้อผิดพลาดที่เกี่ยวข้องอยู่ในนั้น:
$ tail /var/log/mail.log
$ tail /var/log/syslog
ประตูโรงรถไม่เปิด
หากทุกอย่างทำงานและหยุดทำงาน ให้ลองเริ่มต้นใหม่ หากไม่ได้ผล ให้ดึงสายไฟจาก Raspberry Pi จากนั้นเปิดไฟอีกครั้ง Raspberry Pi ควรรีบูตในเวลาไม่ถึง 2 นาทีและทุกอย่างจะทำงานได้ดี โดยทั่วไปมีสาเหตุมาจากการสูญเสียพลังงานไปยัง Residential Gateway
GPIO
หากมีอะไรผิดพลาด วิธีที่ดีที่สุดในการดูว่าเกิดอะไรขึ้นคือใช้คำสั่งต่อไปนี้:
$ gpio อ่านทั้งหมด
เข้าสู่ระบบราสเบอร์รี่ pi จาก MacBook
เทอร์มินัลเป็นยูทิลิตี้ MacBook: ดิสก์/แอปพลิเคชัน/ยูทิลิตี้/เทอร์มินัล ฉันเก็บแอพเทอร์มินัลไว้ในท่าเรือ
บน MacBook ให้เปิดเทอร์มินัล
$ ssh pi@♣raspberry-pi-ip♣
♣รหัสผ่าน♣
เข้าสู่ระบบเกตเวย์ที่อยู่อาศัย
บน MacBook ให้เปิดเบราว์เซอร์
URL = ♣raspberry-pi-ip♣
เข้าสู่ระบบ: ♣gateway-รหัสผ่าน♣
บันทึก
หากมีข้อผิดพลาด ให้ตรวจสอบบันทึกเหล่านี้เพื่อหาข้อผิดพลาด คำเตือน หรือปัญหาอื่นๆ
$ cat /var/log/messages
$ cat /var/log/syslog $ cat /var/log/dmesg
ไดเรกทอรี MAC
ไดเรกทอรีบน MacBook ที่จัดเก็บไฟล์เว็บไซต์
ไดเรกทอรี MAC = /Users/♣my macbook♣/Desktop/wi-fi enable home/wifi enable garage door open/website
รหัสผ่าน
รหัสผ่าน = ♣raspberry-pi-password♣
RAM และ CPU ที่ใช้
$ ด้านบน
CTRL-c เพื่อออก
โฮมไดเร็กทอรี Raspberry Pi
$ pwd
/home/ปี่
ชื่อโฮสต์ Raspberry Pi
$ชื่อโฮสต์
ชื่อโฮสต์ = ♣ชื่อโฮสต์♣
Raspberry Pi IP
♣raspberry-pi-ip♣ = 192.168.1.93
ไดเรกทอรีเว็บไซต์ Raspberry Pi
/var/www
Seco-larm หยุดทำงาน
เมื่อวันที่ 01 พฤษภาคม 2559 Seco-larm หยุดทำงาน นี่เป็นครั้งที่สามที่เซ็นเซอร์หยุดทำงาน หากต้องการพูดอย่างถูกต้อง พินจริง 15 บน Raspberry Pi หยุดตรวจจับอินพุต 3.3v ฉันลองใช้พินจริง 3.3v 1 และ 17 และทั้งคู่ยังคงส่งออก 3.3v ฉันเปลี่ยนจากฟิสิคัลพิน 15 เป็น GPIO อื่น ฟิสิคัลพิน 16 (GPIO 4) และมันเริ่มทำงานอีกครั้ง ดังนั้นจึงไม่มีอะไรผิดปกติกับ Seco-larm ปัญหาน่าจะอยู่ที่ Raspberry Pi GPIO
GPIO 3, พินฟิสิคัล 15 ตายแล้ว เป็นโพสต์ที่ดีมากเกี่ยวกับวิธีการทดสอบพิน GPIO
ฉันเปลี่ยนจาก GPIO 3 เป็น GPIO 4 และเปลี่ยนรหัสตามนั้น ฉันไม่แน่ใจว่าทำไมพิน GPIO ถึงหยุดทำงาน นี่คือสาเหตุที่เป็นไปได้สองประการ:
- ฉันมีเซ็นเซอร์ Seco-larm ติดตั้งอยู่ ดังนั้นเมื่อปิดประตู จะมีเอาต์พุต 3.3v ประตูโรงรถปิดบ่อยกว่าจะเปิด บางทีพิน GPIO ไม่สามารถรับอินพุตคงที่มากหรือน้อยที่ 3.3v
- ความล้มเหลวเกิดขึ้นพร้อมกับการสูญเสียพลังงาน บางทีอาจมีไฟฟ้าขัดข้อง
U-verse Residential Gateway
ฉันมี AT&T U-verse พร้อม Residential Gateway แต่บริการใด ๆ ควรใช้งานได้
หาก U-verse Gateway ถูกรีสตาร์ทหรือสูญเสียพลังงาน อาจต้องรีบูต Raspberry Pi
เกตเวย์ที่อยู่อาศัย U-verse Public IP = ♣router's-public-ip♣
IP สาธารณะของเกตเวย์ที่อยู่อาศัย U-verse สามารถเปลี่ยนแปลงได้ แต่ทำได้น้อยมาก
หน้าแรกของเกตเวย์ที่อยู่อาศัย U-verse = 192.168.1.254
SSID ของจุดเชื่อมต่อไร้สาย U-verse Router = ♣ssid♣
ทรูพุต WiFi ช้ากว่าที่คาดไว้
เปลี่ยนเราเตอร์เป็นช่องสัญญาณที่ใช้งานน้อย ตามค่าเริ่มต้น ผู้ให้บริการวงจรทั้งหมดจะปรับ wifi ของทุกคนเป็นช่อง 1 เปลี่ยนเป็นช่องสัญญาณที่ใช้งานน้อย เช่น 11 ลองใช้เลขคี่
หมายเหตุ: ฉันบอกเพื่อนบ้านสองสามคนว่าฉันทำอะไรเพื่อปรับปรุง Wi-Fi และตอนนี้ทุกคนอยู่ที่ 9 หรือ 11 ดังนั้นฉันจึงย้ายกลับไปที่ 1 คุณควรใช้ช่องแปลก ๆ เสมอ
เปิดเบราว์เซอร์
สำหรับ U-verse ให้ป้อน 192.168.1.254 ในช่อง URL
คลิกที่ลิงค์ไร้สาย และเลือกช่อง 6 หรือ 11
มีแอพสำหรับสมาร์ทโฟนที่เรียกว่าตัววิเคราะห์ wifi หนึ่งในจอแสดงผลจะแสดงจุดเชื่อมต่อ wifi ในบริเวณใกล้เคียงทั้งหมดที่ออกอากาศในช่องใดช่องหนึ่ง ในละแวกของฉัน ทุกคนตั้งค่าเป็นช่อง 1
ถอดปลั๊ก Raspberry Pi แล้วคืนค่าพลังงาน
แนะนำ:
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): 6 ขั้นตอน (พร้อมรูปภาพ)
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): การชาร์จแบบเหนี่ยวนำ (เรียกอีกอย่างว่าการชาร์จแบบไร้สายหรือการชาร์จแบบไร้สาย) เป็นการถ่ายโอนพลังงานแบบไร้สาย ใช้การเหนี่ยวนำแม่เหล็กไฟฟ้าเพื่อจ่ายกระแสไฟฟ้าให้กับอุปกรณ์พกพา แอปพลิเคชั่นที่พบบ่อยที่สุดคือ Qi Wireless Charging st
ที่เปิดประตูโรงรถ Raspberry Pi: 5 ขั้นตอน
ที่เปิดประตูโรงรถ Raspberry Pi: ปุ่มกดอายุ 15 ปีของเราที่ช่วยให้เราเปิดประตูโรงรถได้ค่อยๆ ตายลง ด้วยปุ่มหลายปุ่มที่แทบไม่ลงทะเบียน ทำให้วัยรุ่น (หรือคนเลี้ยงสุนัข) ของเราเข้าไปในบ้านได้ยากเมื่อลืม กุญแจ. แทนการแทน
ที่เปิดประตูโรงรถ IPhone และ Arduino: 8 ขั้นตอน
ที่เปิดประตูโรงรถสำหรับ iPhone และ Arduino: ฉันมักจะทำตามคำแนะนำที่มีเทคโนโลยีมากมาย และรู้สึกทึ่งกับสิ่งที่ผู้คนคิดอยู่เสมอ ไม่นานมานี้ ฉันพบคำแนะนำเกี่ยวกับเครื่องเปิดประตูโรงรถ wifi ที่ฉันคิดว่าเจ๋งจริง ๆ และเพิ่มเข้าไปในรายการสนุก ๆ ที่ต้องทำของฉันไม่รู้จบ
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-