สารบัญ:
- ขั้นตอนที่ 1: ตั้งค่าฮาร์ดแวร์
- ขั้นตอนที่ 2: ตั้งค่า Dropbox
- ขั้นตอนที่ 3: เตรียมโฟลเดอร์แอพ Dropbox ของคุณ
- ขั้นตอนที่ 4: เริ่มต้นใช้งานรหัส
- ขั้นตอนที่ 5: ขุดลึกลงไปในรหัส
- ขั้นตอนที่ 6: การใช้ไฟล์พารามิเตอร์ Dropbox
- ขั้นตอนที่ 7: บทสรุป
วีดีโอ: การตรวจสอบบ้าน Raspberry Pi ด้วย Dropbox: 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
บทช่วยสอนนี้จะแสดงวิธีสร้างระบบตรวจสอบบ้านที่เรียบง่ายและขยายได้โดยใช้ Raspberry Pi, เว็บแคม, ส่วนประกอบทางไฟฟ้าบางส่วน และบัญชี Dropbox ของคุณ ระบบที่เสร็จสิ้นแล้วจะช่วยให้คุณสามารถร้องขอและดูรูปภาพจากเว็บแคมของคุณจากระยะไกลได้ ในขณะที่ใช้เซ็นเซอร์อุณหภูมิแบบดิจิตอลที่มีจำหน่ายในท้องตลาดเพื่อตรวจสอบอุณหภูมิของบ้านของคุณผ่านทางอินเทอร์เน็ต ทั้งหมดนี้ใช้ Dropbox
นี่เป็นโครงการแรกที่ฉันคิดขึ้นหลังจากได้รับ Raspberry Pi 2 รุ่น B เป้าหมายของฉันคือการสร้างระบบตรวจสอบที่ใช้ Python ที่ฉันสามารถควบคุมและรับข้อมูลจากอินเทอร์เน็ตได้ แม้ว่าจะมีหลายวิธีในการทำเช่นนี้ แต่ฉันตัดสินใจใช้ Dropbox เป็นส่วนต่อประสานระหว่าง Pi และอินเทอร์เน็ต เนื่องจากมี Python API แบบง่าย ซึ่งช่วยให้คุณอัปโหลด แก้ไข และค้นหาไฟล์ในโฟลเดอร์เฉพาะโดยใช้บรรทัดสองสามบรรทัด รหัส.
ฉันยังต้องการให้โซลูชันของฉันมีน้ำหนักเบาและเรียบง่าย และเพื่อหลีกเลี่ยงการทำให้ Pi ของฉันยุ่งเหยิงด้วยไลบรารีและโปรแกรมที่ไม่จำเป็น ส่วนประกอบซอฟต์แวร์ของโปรเจ็กต์นี้ประกอบด้วยสคริปต์ Python ตัวเดียว ซึ่งหมายความว่าคุณสามารถใช้ Pi ต่อไปได้ตามปกติ แม้ในขณะที่ระบบตรวจสอบกำลังทำงานอยู่
สำหรับโครงการนี้ คุณจะต้อง:
ราสเบอร์รี่ Pi. รุ่นไหนก็ใช้ได้ ฉันใช้ชุดสตาร์ทแบบ all-in-one แต่บางทีคุณอาจต้องการเฉพาะยูนิตส่วนกลางเท่านั้น
เว็บแคม USB ฉันซื้อ ADVENT AWC72015 ราคาถูกซึ่งทำงานได้ดี อาจเป็นความคิดที่ดีที่จะศึกษารายการเว็บแคมที่ได้รับการยืนยันว่าใช้งานได้กับ Pi โปรดทราบว่าบางอันต้องใช้ฮับ USB ที่ใช้พลังงาน (ของฉันทำงานได้ดีโดยไม่ต้อง)
บัญชี Dropbox ฉันใช้บัญชีฟรีแบบมาตรฐานเนื่องจากโปรเจ็กต์นี้ไม่ต้องการพื้นที่เก็บข้อมูลมากนัก
เซ็นเซอร์อุณหภูมิดิจิตอล DS18B20 และตัวต้านทาน 4.7k คุณสามารถซื้อเซ็นเซอร์ได้ที่นี่ และอาจคุ้มค่าที่จะซื้อตัวต้านทานหลายตัวด้วย
อุปกรณ์ต่อพ่วงบางส่วน ฉันขอแนะนำให้ใช้เขียงหั่นขนมและสายจัมเปอร์เพื่อทำให้กระบวนการสร้างวงจรง่ายที่สุด
[หากคุณตัดสินใจซื้อผลิตภัณฑ์ใดๆ เหล่านี้ ฉันจะยินดีเป็นอย่างยิ่งหากคุณเข้าถึงรายชื่อโดยใช้ลิงก์ด้านบน ด้วยวิธีนี้ ฉันจะได้รับส่วนแบ่งกำไรเล็กน้อยโดยไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับคุณ!]
ขั้นตอนที่ 1: ตั้งค่าฮาร์ดแวร์
ขั้นตอนแรกคือตรวจสอบให้แน่ใจว่าได้ตั้งค่า Pi และอุปกรณ์ต่อพ่วงที่เกี่ยวข้องแล้ว
ขั้นแรก เชื่อมต่อ Pi ของคุณกับอินเทอร์เน็ต นี่เป็นสิ่งจำเป็นเพื่อให้แน่ใจว่าโปรแกรมตรวจสอบสามารถรับคำขอของคุณและอัปโหลดข้อมูลไปยัง Dropbox ฉันใช้การเชื่อมต่ออีเทอร์เน็ตเพื่อให้มั่นใจในความน่าเชื่อถือ แต่การเชื่อมต่อ Wi-Fi ก็ควรทำงานได้ดีเช่นกัน ในขณะที่ยังมีข้อดีของการพกพาที่ดีขึ้นอีกด้วย หากคุณเลือก Wi-Fi ฉันขอแนะนำดองเกิล USB นี้สำหรับ Pi
ถัดไป เชื่อมต่อเว็บแคมของคุณกับ Pi โดยเสียบเข้ากับพอร์ต USB อันใดอันหนึ่ง แม้ว่าคำแนะนำของเว็บแคม Advent ของฉันไม่ได้ระบุอย่างชัดเจนว่าจะใช้งานได้กับ Linux แต่สิ่งที่ฉันต้องทำคือเสียบปลั๊กและเปิดเครื่อง Pi ไม่จำเป็นต้องติดตั้งเพิ่มเติม เว็บแคมอื่นๆ อาจแตกต่างกันไป คุณสามารถตรวจสอบว่า Linux ตรวจพบเว็บแคมของคุณหรือไม่โดยใช้คำสั่งต่อไปนี้:
lsusb
ในภาพด้านบน เว็บแคมของฉันแสดงเป็น '0c45:6340 Microdia'
สุดท้าย คุณสามารถเชื่อมต่อเซ็นเซอร์อุณหภูมิ DS18B20 ของคุณกับส่วนหัว GPIO ของ Pi ฉันใช้เขียงหั่นขนมเพื่อทำให้กระบวนการสร้างวงจรง่ายขึ้น และฉันแนะนำให้คุณทำเช่นเดียวกัน โดยเฉพาะอย่างยิ่งเมื่อ DS18B20 ต้องการตัวต้านทาน 4.7k เพื่อวางระหว่างสองในสามพิน ลิงค์นี้แสดงไดอะแกรมการเดินสายที่ดีซึ่งแสดงให้เห็นว่าสามารถใช้เขียงหั่นขนมเพื่อเชื่อมต่อกับเซ็นเซอร์อุณหภูมินี้ได้อย่างไร
หน้าถัดไปของบทช่วยสอนข้างต้นยังครอบคลุมขั้นตอนที่จำเป็นในการอ่านข้อมูลจาก DS18B20 และแสดงวิธีตรวจสอบว่าข้อมูลทำงานอย่างไร คุณต้องทำตามขั้นตอนการตั้งค่าเหล่านี้ก่อนที่คุณจะสามารถใช้ DS18B20 สำหรับโปรเจ็กต์นี้ได้ นอกจากนี้เรายังจะรวมตัวอย่างสคริปต์ Python จากบทช่วยสอนลงในโปรแกรมตรวจสอบของเรา ดังนั้นคุณอาจต้องการอ่านโค้ดนี้แบบคร่าวๆ
โปรดจดบันทึกหมายเลขเฉพาะของ DS18B20 ของคุณด้วย มันคือตัวเลขที่ขึ้นต้นด้วย '28-' ที่คุณเจอระหว่างการสอนการตั้งค่า คุณจะต้องป้อนลงในโปรแกรม Python ที่จะเกิดขึ้นเพื่อให้สามารถอ่านได้ในอุณหภูมิ
ขั้นตอนที่ 2: ตั้งค่า Dropbox
เพื่อให้ Pi ของคุณเชื่อมต่อกับ Dropbox คุณต้องตั้งค่าแอพ Dropbox ใหม่ สิ่งนี้จะให้รายละเอียดที่จำเป็นสำหรับ Pi ของคุณในการจัดการไฟล์ออนไลน์โดยใช้ Python สมมติว่าคุณสร้างบัญชี Dropbox และเข้าสู่ระบบแล้ว คุณสามารถสร้างแอปใหม่โดยใช้ตัวเลือกเมนู ' นักพัฒนาซอฟต์แวร์ ' ดูภาพด้านบนเพื่อสรุปขั้นตอนที่สำคัญ
ภายในเมนู ' นักพัฒนาซอฟต์แวร์ ' เลือก ' แอปของฉัน ' จากนั้นกดปุ่ม ' สร้างแอป ' ในการกรอกแบบฟอร์มผลลัพธ์ เลือก ' Dropbox API ' ตามด้วย ' App Folder ' สุดท้าย คุณสามารถเลือกชื่อที่ไม่ซ้ำสำหรับแอปของคุณภายใน Dropbox คลิก ' สร้างแอป '
จากนั้นคุณจะถูกนำไปที่หน้าการตั้งค่าแอพของคุณภายใน Dropbox มีเพียงสิ่งเดียวที่คุณต้องทำที่นี่ - สร้างโทเค็นการเข้าถึงให้ตัวเอง ในการดำเนินการนี้ ให้เลื่อนลงไปที่ส่วน ' OAuth 2 ' และภายใต้ ' Generated access token ' ให้คลิกปุ่ม ' Generate '
การดำเนินการนี้จะนำเสนออักขระยาว ๆ ที่จำเป็นสำหรับการเข้าถึงบัญชี Dropbox ของคุณโดยใช้ Python จดบันทึกโทเค็นการเข้าถึงนี้ เนื่องจากคุณจะต้องระบุในภายหลังในรหัสของคุณ หากคุณทำโทเค็นหาย คุณสามารถย้อนกลับไปยังการตั้งค่าของแอปได้โดยคลิก ' แอปของฉัน ' ในส่วน ' นักพัฒนาซอฟต์แวร์ ' ของ Dropbox และสร้างโทเค็นใหม่
คุณสามารถปล่อยให้การตั้งค่าอื่นๆ เป็นไปตามที่เป็นอยู่ เพื่อยืนยันว่าแอปของคุณได้สร้างโฟลเดอร์ที่จำเป็นในบัญชี Dropbox ของคุณแล้ว ให้ไปที่โฮมเพจที่เก็บข้อมูลของคุณและมองหาโฟลเดอร์ ' Apps ' ภายในโฟลเดอร์นี้ควรเป็นโฟลเดอร์ย่อยที่มีชื่อที่คุณเลือกสำหรับแอปใหม่ของคุณ นี่คือที่ที่ไฟล์ทั้งหมดสำหรับระบบการตรวจสอบของคุณจะถูกวางไว้
ขั้นตอนที่ 3: เตรียมโฟลเดอร์แอพ Dropbox ของคุณ
เมื่อคุณตั้งค่าแอพ Dropbox แล้ว ก็ถึงเวลาคิดว่าคุณจะใช้โฟลเดอร์ผลลัพธ์ในบัญชี Dropbox ของคุณเพื่อโต้ตอบกับ Pi ของคุณอย่างไร สิ่งนี้ทำได้ค่อนข้างง่าย สคริปต์ Python ที่จะทำงานบน Pi จะใช้ชุดคำสั่งย่อยจาก Dropbox API เพื่อค้นหาและแก้ไขชื่อไฟล์ว่างที่ไม่มีนามสกุลในโฟลเดอร์แอปของคุณ เราจะเรียกไฟล์เหล่านี้ว่า 'ไฟล์พารามิเตอร์' เนื่องจากแต่ละไฟล์จะช่วยให้คุณสามารถควบคุมลักษณะการทำงานของระบบตรวจสอบที่แตกต่างกันได้ ภาพด้านบนแสดงไฟล์พารามิเตอร์สี่ไฟล์ซึ่งจำเป็นต้องมีอยู่ในโฟลเดอร์แอป Dropbox ของคุณสำหรับโปรเจ็กต์นี้ การสร้างมันเป็นเรื่องง่าย:
เริ่มต้นด้วยโฟลเดอร์แอปที่ว่างเปล่าโดยสมบูรณ์ ให้เปิดโปรแกรมแก้ไขข้อความบนคอมพิวเตอร์ของคุณ แม้ว่าสิ่งนี้สามารถทำได้โดยใช้ Pi แต่ฉันพบว่าการใช้แล็ปท็อป Windows ของฉันง่ายขึ้นสำหรับขั้นตอนการตั้งค่านี้ เมื่อเปิดโปรแกรมแก้ไขข้อความ (ฉันใช้ Notepad ใน Windows 7) สิ่งที่คุณต้องทำคือบันทึกไฟล์ข้อความเปล่าที่ใดก็ได้บนคอมพิวเตอร์ของคุณ ตามตัวอย่างแรก เราจะสร้างพารามิเตอร์แรกในรูปภาพส่วนหัว ตั้งชื่อไฟล์ 'delay=10' เมื่อคุณบันทึก
สรุป ตอนนี้คุณควรมีไฟล์ข้อความว่างที่จัดเก็บไว้ในคอมพิวเตอร์ของคุณโดยใช้ชื่อ 'delay=10' ไฟล์นี้จะมีนามสกุล '.txt' ซึ่งอาจมองเห็นได้หรือมองไม่เห็น
ขั้นตอนต่อไปคือการอัปโหลดไฟล์นี้ไปยังโฟลเดอร์แอป Dropbox ของคุณ ซึ่งก็เหมือนกับการอัพโหลด Dropbox อื่นๆ เพียงไปที่โฟลเดอร์ของแอปแล้วคลิก ' อัปโหลด ' และเลือกไฟล์ 'delay=10' ของคุณ
เมื่ออัปโหลดไฟล์นี้แล้ว คุณต้องลบส่วนขยาย '.txt' ซึ่งขณะนี้ควรปรากฏในชื่อไฟล์ ในการดำเนินการนี้ เพียงคลิกขวาที่ไฟล์และเลือก 'เปลี่ยนชื่อ' ลบส่วน '.txt' ของชื่อไฟล์ ตอนนี้คุณควรจะเหลือไฟล์ชื่อ 'delay=10' โดยไม่มีนามสกุลไฟล์ ดังที่แสดงในภาพส่วนหัว
ไฟล์พารามิเตอร์ 'delay' เป็นหนึ่งในสี่ไฟล์ที่โปรแกรมตรวจสอบจะใช้ ในการสร้างไฟล์อื่นๆ คุณเพียงแค่คัดลอกและเปลี่ยนชื่อไฟล์ 'delay' ของคุณโดยคลิกขวา เมื่อคุณสร้างสำเนาสามชุดแล้ว ให้ตั้งชื่อตามที่แสดงในรูปภาพส่วนหัว เพื่อให้โฟลเดอร์แอปของคุณเหมือนกับที่แสดงในตอนต้นของขั้นตอนนี้
ขั้นตอนที่ 4: เริ่มต้นใช้งานรหัส
ดังที่ได้กล่าวไว้ แกนหลักของระบบการตรวจสอบของเราจะประกอบด้วยสคริปต์ Python ตัวเดียวซึ่งจะเชื่อมต่อกับ Dropbox เพื่อให้โปรแกรมตรวจสอบทำงาน สคริปต์นี้จะต้องทำงานในพื้นหลังบน Pi ของคุณ ฉันเดาว่ามันอธิบายได้ถูกต้องที่สุดว่าเป็นสคริปต์ 'daemon' ซึ่งหมายความว่าคุณสามารถตั้งค่าให้ทำงานและลืมมันไปได้เลย สคริปต์ถูกแนบมากับขั้นตอนนี้ ดังนั้นจึงไม่มีเหตุผลที่จะทำซ้ำโค้ดที่นี่ ตอนนี้อาจเป็นเวลาที่ดีในการดาวน์โหลดและทำความคุ้นเคยกับมัน
ก่อนที่คุณจะสามารถเรียกใช้สคริปต์ได้ สิ่งสำคัญคือต้องตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งไลบรารี Python ที่เกี่ยวข้องแล้ว รายการที่คุณต้องการจะแสดงอยู่ที่ด้านบนของสคริปต์ที่แนบมา พวกเขาคือ:
นำเข้าดรอปบ็อกซ์
นำเข้า pygame.camera นำเข้าระบบปฏิบัติการ เวลานำเข้า
การติดตั้ง Python บน Pi ของฉันได้รวม pygame, os และเวลาไว้แล้ว ดังนั้นสิ่งเดียวที่ฉันต้องติดตั้งคือ Dropbox ฉันทำสิ่งนี้โดยใช้คำแนะนำในการติดตั้งที่ง่ายมากด้วย pip
เมื่อไลบรารีของคุณได้รับการตั้งค่าแล้ว คุณจะต้องแก้ไขสองบรรทัดบนสุดของสคริปต์ที่แนบมาให้ตรงกับ Dropbox Access Token ของคุณและตัวระบุเฉพาะของเซ็นเซอร์อุณหภูมิ DS18B20 ของคุณ นี่คือสองบรรทัดที่ต้องแก้ไข:
APP_ACCESS_TOKEN = '**********'
THERMOMETER_FILE = '/sys/bus/w1/devices/28-************/w1_slave'
เพียงแทนที่ ****s ด้วยค่าที่ถูกต้อง ณ จุดนี้คุณก็พร้อมที่จะเริ่มใช้โปรแกรมตรวจสอบแล้ว! แทนที่จะกระโดดเข้ามา เราขอแนะนำให้คุณดำเนินการในขั้นตอนต่อไปเพื่อดูภาพรวมทั่วไปของโค้ด
สำคัญ: เมื่อคุณเรียกใช้สคริปต์นี้ คุณต้องการให้สคริปต์ทำงานในพื้นหลังเพื่อให้ a) คุณสามารถใช้ Pi ต่อไปได้ และ b) เมื่อคุณปิดเซสชัน SSH สคริปต์จะทำงานต่อไป นี่คือคำสั่งที่ฉันใช้เมื่อรันสคริปต์:
nohup หลาม DropCamTherm.py &
สิ่งนี้บรรลุผลสามประการ: มันจะเรียกใช้สคริปต์ ('python DropCamTherm.py') มันจะคืนการควบคุมไปยังบรรทัดคำสั่งทันทีเพื่อให้คุณสามารถใช้ Pi ('&') ต่อไปได้ และจะส่งสัญญาณผลลัพธ์ของ Python ที่จะ โดยปกติจะแสดงบนบรรทัดคำสั่งเป็นไฟล์ที่เรียกว่า 'nohup.out' สามารถอ่านได้โดยใช้โปรแกรมแก้ไขข้อความ Linux (ที่ฉันชอบคือ nano) และจะถูกสร้างขึ้นโดยอัตโนมัติในไดเร็กทอรีที่เรียกใช้สคริปต์
ขั้นตอนที่ 5: ขุดลึกลงไปในรหัส
เมื่อคุณเปิดสคริปต์ คุณจะสังเกตเห็นว่าประกอบด้วยสามฟังก์ชันพร้อมกับบล็อกของโค้ดซึ่งใช้ฟังก์ชันเหล่านี้เมื่อเรียกใช้สคริปต์ ฟังก์ชันดังกล่าวใช้ Dropbox API และเข้าถึงไฟล์บันทึกอุณหภูมิของ DS18B20 เพื่อฟังคำสั่งจาก Dropbox และอัปโหลดการอ่านอุณหภูมิล่าสุด ด้านล่างนี้คือภาพรวมของฟังก์ชันต่างๆ และวิธีการใช้งานเพื่อให้ระบบตรวจสอบทำงาน:
- poll_parameter():
ฟังก์ชันนี้แสดงวัตถุประสงค์ของไฟล์พารามิเตอร์ Dropbox ที่เราสร้างขึ้นในขั้นตอนที่ 3 โดยจะค้นหาโฟลเดอร์แอป Dropbox เพื่อหาไฟล์ที่มีข้อความ 'param=' จากนั้นจะแยกข้อความหลัง '=' และพยายามแปลงเป็นจำนวนเต็ม คุณจะเห็นว่าสิ่งนี้ช่วยให้เราควบคุมโปรแกรมได้โดยการผนวกตัวเลขที่เกี่ยวข้องต่อท้ายไฟล์พารามิเตอร์ด้วยตนเอง ขั้นตอนต่อไปจะมีคู่มือการใช้งานสั้น ๆ ที่แสดงให้คุณเห็นถึงวิธีการใช้ไฟล์พารามิเตอร์แต่ละไฟล์เพื่อควบคุมลักษณะของโปรแกรม
- set_parameter():
ฟังก์ชันนี้อนุญาตให้โปรแกรมเปลี่ยนชื่อไฟล์พารามิเตอร์จากภายใน Python โดยจะทำเช่นนี้ในบางครั้ง เพื่อลดความจำเป็นในการเปลี่ยนชื่อไฟล์ด้วยตนเองมากเกินไป
- set_latest_temp():
ฟังก์ชันนี้ใช้ set_parameter() เพื่ออัปโหลดอุณหภูมิล่าสุดไปยังโฟลเดอร์แอป Dropbox โดยผนวกเข้ากับไฟล์พารามิเตอร์ 'อุณหภูมิ' ฟังก์ชันอ่านอุณหภูมิล่าสุดจากล็อกไฟล์ของ DS18B20 (ซึ่งมีอยู่ใน Linux ที่พาธที่ชี้โดยตัวแปร THERMOMETER_FILE)
ส่วนสุดท้ายของโปรแกรมประกอบด้วยรหัสที่จะดำเนินการเมื่อมีการเรียกใช้สคริปต์ หลังจากขั้นตอนการตั้งค่าที่จำเป็นสำหรับเซ็นเซอร์ DS18B20 เซ็นเซอร์จะเปิดเซสชัน Dropbox โดยใช้โทเค็นการเข้าถึงของคุณ และใช้ pygame เพื่อค้นหาเว็บแคมของคุณ หากพบเว็บแคม เว็บแคมจะเข้าสู่วงจรที่ใช้ poll_parameter() เพื่อดึงข้อมูลจาก Dropbox และดำเนินการกับเว็บแคม
สำคัญ: คุณจะสังเกตเห็นบรรทัดของรหัสต่อไปนี้:
กล้อง = pygame.camera. Camera(cam_list[0], (864, 480))
…นี่เป็นความพยายามที่จะสร้างอินเทอร์เฟซของกล้องที่ใช้งานได้จากเว็บแคมตัวแรกที่ pygame ตรวจพบ อาจต้องเปลี่ยนความละเอียดให้ตรงกับเว็บแคมของคุณ ทดลองกับค่าต่างๆ เพื่อหาค่าที่เหมาะสมที่สุด
ขั้นตอนที่ 6: การใช้ไฟล์พารามิเตอร์ Dropbox
ดังนั้นตอนนี้คุณควรมีสคริปต์การทำงานซึ่งเมื่อเรียกใช้โดยใช้คำแนะนำจากขั้นตอนที่ 4 จะทำให้ Pi ของคุณเริ่มตรวจสอบโฟลเดอร์แอปสำหรับข้อมูลที่คุณป้อน ในการเรียกใช้ครั้งแรก โฟลเดอร์แอปควรมีไฟล์พารามิเตอร์ต่อไปนี้:
ล่าช้า=10
exitprogram=0 imagerequest=0 temperature=0
การโต้ตอบกับโปรแกรมทำได้โดยการเปลี่ยนชื่อไฟล์พารามิเตอร์ด้วยตนเองผ่าน Dropbox ในการดำเนินการนี้ เพียงคลิกขวาที่ไฟล์ใดไฟล์หนึ่งแล้วเลือก 'เปลี่ยนชื่อ' ไฟล์พารามิเตอร์แต่ละไฟล์มีฟังก์ชันที่แตกต่างกัน:
- ล่าช้า:
ไฟล์นี้บอกโปรแกรมการมอนิเตอร์ว่าต้องรอกี่วินาทีระหว่างการวนซ้ำของลูปการมอนิเตอร์แต่ละครั้ง เมื่อฉันรู้ว่าฉันจะไม่โต้ตอบกับโปรแกรมมากนัก ฉันตั้งค่าเป็น 60 หรือ 120 เมื่อฉันรู้ว่าฉันต้องการขอข้อมูลจาก Pi บ่อยๆ ฉันตั้งค่าเป็น 10
- โปรแกรมออก:
ควรตั้งค่าเป็น 1 หรือ 0 หากโปรแกรมตรวจพบว่าตั้งค่าเป็น 1 โปรแกรมจะสิ้นสุดสคริปต์ หากคุณตั้งค่าเป็น 1 และสคริปต์ออก คุณจะต้องลงชื่อเข้าใช้ Pi อีกครั้งเพื่อเริ่มต้นการสำรองข้อมูล พารามิเตอร์นี้มีอยู่เพื่อให้คุณสามารถปิดโปรแกรมตรวจสอบได้อย่างสวยงามเมื่อคุณไม่ต้องการให้มันทำงานอีกต่อไป (เช่น หากคุณกลับบ้านแล้วและไม่ต้องการตรวจสอบเว็บแคมจากระยะไกลอีกต่อไป)
- คำขอรูปภาพ:
นี่อาจเป็นพารามิเตอร์ที่สำคัญที่สุด ควรตั้งค่าเป็น 1 หรือ 0 หากโปรแกรมตรวจพบว่าตั้งค่าเป็น 1 โปรแกรมจะขอรูปภาพจากเว็บแคมและอัปโหลดไปยังโฟลเดอร์แอป (โดยมีชื่อว่า 'image.jpg') หากมี 'image.jpg' อื่นอยู่ ระบบจะเขียนทับ
- อุณหภูมิ:
นี่คือการอ่านอุณหภูมิ DS18B20 ที่กำหนดโดยฟังก์ชัน set_latest_temp() คุณไม่จำเป็นต้องแก้ไขไฟล์พารามิเตอร์นี้ เนื่องจากโปรแกรมจะตั้งค่าให้โดยอัตโนมัติ
โปรดทราบว่าหากคุณตั้งค่า 'exitprogram' หรือ 'imagerequest' เป็น 1 โปรแกรมจะคืนค่าให้เป็น 0 โดยอัตโนมัติก่อนที่จะรันโค้ดที่เกี่ยวข้อง ทั้งนี้เพื่อความสะดวก คุณอาจสังเกตเห็นว่าโค้ดมีบล็อก 'ลอง' และ 'ยกเว้น' จำนวนมากที่อยู่รอบๆ ฟังก์ชันสำคัญๆ มากมาย ทั้งนี้เพื่อให้แน่ใจว่าสคริปต์จะไม่ส่งข้อยกเว้น (และหยุดทำงานด้วยเหตุนี้) หากมีข้อผิดพลาดเกิดขึ้น (เช่น ปัญหาการเชื่อมต่ออินเทอร์เน็ตที่ขัดขวางการเข้าถึง Dropbox)
ขั้นตอนที่ 7: บทสรุป
โครงการนี้ได้นำเสนอวิธีการควบคุม Raspberry Pi โดยใช้ Python และ Dropbox แม้ว่าฮาร์ดแวร์ที่ใช้ในโปรเจ็กต์นี้เป็นเซ็นเซอร์อุณหภูมิและเว็บแคม USB มีแอปพลิเคชั่นอื่น ๆ อีกมากมายสำหรับวิธีการนี้ในการควบคุม Pi ในความเป็นจริง ส่วนประกอบฮาร์ดแวร์ใดๆ ที่สามารถเข้าถึงได้ผ่าน GPIO สามารถควบคุมได้โดยใช้โครงสร้างโปรแกรมที่คล้ายคลึงกัน ทำให้ขยายระบบได้ง่ายมาก
ในขั้นตอนต่อไป คุณสามารถใช้ไลบรารี GUI เช่น Tkinter ร่วมกับ Dropbox API เพื่อสร้างโปรแกรมไคลเอนต์ซึ่งจะช่วยให้คุณแก้ไขไฟล์พารามิเตอร์ได้โดยไม่ต้องเข้าสู่ระบบ Dropbox
ฉันหวังว่าบทช่วยสอนนี้มีความชัดเจน และหากคุณมีคำถามหรือต้องการให้ฉันชี้แจงอะไร โปรดโพสต์ความคิดเห็น!
แนะนำ:
วิธีการตั้งค่า OSMC ด้วย Hyperion บน Raspberry Pi ด้วย WS2812b Led Strip: 8 ขั้นตอน
วิธีการตั้งค่า OSMC ด้วย Hyperion บน Raspberry Pi ด้วย WS2812b Led Strip: บางครั้งฉันพูดภาษาอังกฤษได้ดีมาก บางครั้งก็ไม่มี… สิ่งแรกเลย นี่เป็นการสอนครั้งแรกของฉันและภาษาอังกฤษไม่ใช่ภาษาแม่ของฉัน ดังนั้นโปรดอย่ากดดันฉันมากเกินไป นี่จะไม่เกี่ยวกับวิธีการสร้างเฟรมที่ง่าย มันเกี่ยวกับการติดตั้ง
การทดสอบ BBU Dropbox: 16 ขั้นตอน
Pentesting BBU Dropbox: นี่คือหน่วยสำรองแบตเตอรี่คอมพิวเตอร์ขนาดเล็กที่เปลี่ยนเป็นดรอปบ็อกซ์ที่กำลังทดสอบอยู่ มันมีไว้เพื่อติดตั้งหลังคอมพิวเตอร์หรืออุปกรณ์เครือข่ายขนาดเล็กและไม่มีใครสังเกตเห็นในขณะที่เพนสเตอร์มีการเข้าถึงเครือข่ายจากระยะไกลผ่านมัน เป้าหมาย
การติดตั้ง Raspbian Buster บน Raspberry Pi 3 - เริ่มต้นใช้งาน Raspbian Buster ด้วย Raspberry Pi 3b / 3b+: 4 ขั้นตอน
การติดตั้ง Raspbian Buster บน Raspberry Pi 3 | เริ่มต้นใช้งาน Raspbian Buster ด้วย Raspberry Pi 3b / 3b+: สวัสดี องค์กร Raspberry pi ที่เพิ่งเปิดตัว Raspbian OS ใหม่ที่เรียกว่า Raspbian Buster เป็นเวอร์ชันใหม่ของ Raspbian สำหรับ Raspberry pi ดังนั้นวันนี้ในคำแนะนำนี้ เราจะได้เรียนรู้วิธีติดตั้ง Raspbian Buster OS บน Raspberry pi 3 ของคุณ
การตรวจสอบบ้าน DIY ด้วย RaspberryPi และ Cloud4Rpi: 5 ขั้นตอน
การตรวจสอบบ้าน DIY ด้วย RaspberryPi และ Cloud4Rpi: วันหยุดสุดสัปดาห์ฤดูหนาววันหนึ่งฉันไปที่บ้านในชนบทและพบว่าที่นั่นหนาวมาก มีบางอย่างเกิดขึ้นกับไฟฟ้าและเบรกเกอร์ RCD ได้ปิดสวิตช์ และเครื่องทำความร้อนก็ดับลงเช่นกัน ฉันโชคดีที่มาที่นี่ มิฉะนั้นในอีกไม่กี่วัน
วิธีสร้าง CubeSat ด้วย Arduino ด้วย Arducam: 9 ขั้นตอน
วิธีสร้าง CubeSat ด้วย Arduino ด้วย Arducam: ในรูปแรก เรามี Arduino และเรียกว่า "Arduino Uno"ในรูปที่สอง เรามี Arducam และเรียกว่า "Arducam OV2640 มินิ 2MP"พร้อมกับภาพที่สอง มีวัสดุที่คุณต้อง