สารบัญ:
- ขั้นตอนที่ 1: ขั้นตอนที่ 1: ชิ้นส่วนและวัสดุที่จำเป็น
- ขั้นตอนที่ 2: ขั้นตอนที่ 2: คำชี้แจงปัญหา
- ขั้นตอนที่ 3: ขั้นตอนที่ 3: การกำหนดค่า Motion Sensor
- ขั้นตอนที่ 4: ขั้นตอนที่ 4: จอแสดงผลโมดูล LCD
- ขั้นตอนที่ 5: ขั้นตอนที่ 5: โมดูลเซอร์โวมอเตอร์
- ขั้นตอนที่ 6: ขั้นตอนที่ 6: กล้องตรวจจับความเคลื่อนไหว
วีดีโอ: ระบบบ้านอัจฉริยะ: 6 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
คำแนะนำนี้จะช่วยอธิบายวิธีตั้งค่าและใช้ระบบสมาร์ทโฮมของเราโดยใช้ซอฟต์แวร์ Matlab และฮาร์ดแวร์ Raspberry Pi ในตอนท้ายของคำแนะนำนี้ คุณควรจะสามารถใช้ผลิตภัณฑ์ของเราอย่างเต็มที่ได้อย่างง่ายดาย!
ขั้นตอนที่ 1: ขั้นตอนที่ 1: ชิ้นส่วนและวัสดุที่จำเป็น
- ราสเบอร์รี่ปี่
- เขียงหั่นขนม (x2)
- เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR
- โมดูล LCD
- ไฟ LED
- ตัวเก็บประจุ
- กล้อง Raspberry Pi
- ไมโครเซอร์โวมอเตอร์
- สายไฟคู่ (20)
ขั้นตอนที่ 2: ขั้นตอนที่ 2: คำชี้แจงปัญหา
ปัญหาที่ผลิตภัณฑ์ของเราพยายามแก้ไข ได้แก่ การควบคุมแสงด้วยตนเอง การควบคุมอุณหภูมิภายในอาคาร และประสิทธิภาพการใช้พลังงาน เรามุ่งเน้นที่ปริมาณพลังงานที่คนในบ้านใช้โดยเฉลี่ย และเราต้องการหาวิธีลดการใช้พลังงาน ไฟถูกเปิดทิ้งไว้และอุณหภูมิเทอร์โมสตัทที่ไม่จำเป็นทำให้มีการใช้พลังงานที่ไม่จำเป็นสูงมาก แสงจะเคลื่อนไหวไปยังตำแหน่งที่ปิดเมื่อห้องว่าง และตัวควบคุมอุณหภูมิจะปรับอุณหภูมิให้เป็นมิตรกับสิ่งแวดล้อมโดยพิจารณาจากการอ่านอุณหภูมิภายนอกอาคาร
ขั้นตอนที่ 3: ขั้นตอนที่ 3: การกำหนดค่า Motion Sensor
เซ็นเซอร์ตรวจจับความเคลื่อนไหวเชื่อมต่อกับพินไฟ 3.3V, พินกราวด์ และพินดิจิทัลที่คุณเลือก พวกเขาเชื่อมต่อกับพอร์ต VCC, GND และ OUT บนเซ็นเซอร์ตรวจจับความเคลื่อนไหวตามลำดับ เซ็นเซอร์ตรวจจับความเคลื่อนไหวจะตรวจจับเมื่อมีคนอยู่ใกล้และเปิดใช้งาน LED เพื่อระบุว่าไฟเปิดอยู่ เมื่อตรวจไม่พบการเคลื่อนไหวอีกต่อไป ไฟ LED จะดับเอง รหัสมีดังนี้:
ในขณะที่จริง
motionDetected = readDigitalPin(rpi, 3);
ถ้าตรวจจับการเคลื่อนไหว == 1
เขียนDigitalPin(rpi, 16, 1)
อื่น
เขียนDigitalPin(rpi, 16, 0)
จบ
จบ
ขั้นตอนที่ 4: ขั้นตอนที่ 4: จอแสดงผลโมดูล LCD
จอ LCD นำข้อมูลอุณหภูมิจากข้อมูลสภาพอากาศสดที่ได้รับจากอินเทอร์เน็ต โมดูล LCD จะแสดงการอ่านอุณหภูมิปัจจุบัน ใน Matlab อุณหภูมิจะอ่านแล้วผ่านวงจร if เพื่อกำหนดว่าต้องปรับการตั้งค่าอุณหภูมิในบ้านมากน้อยเพียงใด รหัสมีดังนี้:
url='https://forecast.weather.gov/MapClick.php?lat=35.9606&lon=-83.9207&FcstType=json';
ข้อมูล = เว็บอ่าน (url);
a = data.currentobservation. Temp;
fprintf('อุณหภูมิภายนอกคือ %s\n', a)
x = str2num(a);
ถ้า x > 80
fprintf('ลดอุณหภูมิลง 15 องศา')
writeDigitalPin(rpi, 26, 1) % เปิดไฟ
elseif x > 75 && x < 80
fprintf('ปิดตัวควบคุมอุณหภูมิ \n')
writeDigitalPin(rpi, 26, 1) % เปิดไฟ
elseif x 55
fprintf('เปิดเครื่องควบคุมอุณหภูมิขึ้น 10 องศา \n')
writeDigitalPin(rpi, 26, 0) %ปิดไฟ
elseif x 45
fprintf('เปิดเครื่องควบคุมอุณหภูมิขึ้น 20 องศา \n')
writeDigitalPin(rpi, 26, 0) %ปิดไฟ
elseif x 40
fprintf('เปิดเครื่องควบคุมอุณหภูมิขึ้น 25 องศา \n')
writeDigitalPin(rpi, 26, 0) %ปิดไฟ
elseif x 30
fprintf('เปิดเครื่องควบคุมอุณหภูมิขึ้น 35 องศา \n')
อื่น
fprintf('ปรับอุณหภูมิสูงสุด 65 องศา \n')
จบ
ขั้นตอนที่ 5: ขั้นตอนที่ 5: โมดูลเซอร์โวมอเตอร์
Motor Servo Module คือการแสดงความสามารถในการเปิดและปิดมู่ลี่ เมื่อบ้านต้องการความเย็น มู่ลี่จะปิดเพื่อให้ความร้อนเข้ามาน้อยลง เมื่อบ้านต้องการความอบอุ่น มู่ลี่จะเปิดขึ้นเพื่อให้อบอุ่นเร็วขึ้น เซอร์โวตัดสินใจว่าจะทำอย่างไรโดยรับอินพุตจากผู้ใช้โต้ตอบกับเมนูตัวเลือก รหัสสำหรับมอเตอร์มีดังนี้:
s = เซอร์โว (rpi, 3)
เขียนDigitalPin(rpi, 4, 1)
ตำแหน่งการเขียน 45
temp_sys = menu('คุณรู้สึกอย่างไร') % ตัวปรับอุณหภูมิ
ถ้า temp_sys == 1 %hot
writeDigitalPin(rpi, 26, 1) % เปิดไฟ
writePosition(s, 0) %เปลี่ยนมอเตอร์ CW/CCW
ปิดม่านปิดไฟ
elseif temp_sys == 2 % เย็น
writeDigitalPin(rpi, 26, 0) %ปิดไฟ
writePosition(s, 180) %เปลี่ยนมอเตอร์ CCW/CW
เปิดม่านเปิดไฟ
elseif temp_sys == 3 % ถูกต้อง
fprintf('การรักษาสถานะอุณหภูมิ\n')
จบ
ขั้นตอนที่ 6: ขั้นตอนที่ 6: กล้องตรวจจับความเคลื่อนไหว
กล้องตรวจจับความเคลื่อนไหวจะถ่ายภาพผู้ที่เข้าหรือออกจากห้อง เราเลือกสิ่งนี้เป็นคุณสมบัติความปลอดภัยเพิ่มเติมสำหรับผู้ที่อยากรู้ว่าใครอยู่ในบ้านของพวกเขา เมื่อเซ็นเซอร์ตรวจจับความเคลื่อนไหวตรวจพบการเคลื่อนไหว รหัส Matlab จะบอกให้กล้องถ่ายภาพและแสดงภาพนั้น รหัสมีดังนี้:
ผม=0
กล้องใส
กล้อง = กระดานกล้อง (rpi);
ในขณะที่ i==0
สแนปชอต (ลูกเบี้ยว); %ล้างบัฟเฟอร์ภาพ
img = สแน็ปช็อต (กล้อง);
ภาพ (img);
จบ
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
ระบบบ้านอัจฉริยะ Arduino: 7 ขั้นตอน
Arduino Smart Home System: ในคำแนะนำนี้ เราจะแสดงวิธีสร้างระบบสมาร์ทโฮมของคุณเองด้วย App Designer ของ MATLAB พร้อมกระดาน Sparkfun Red คำแนะนำนี้สามารถใช้เพื่อช่วยเพิ่มความเข้าใจพื้นฐานเกี่ยวกับ App Designer ของ MATLAB ตลอดจนการใช้ photore