สารบัญ:

ระบบบ้านอัจฉริยะ: 6 ขั้นตอน
ระบบบ้านอัจฉริยะ: 6 ขั้นตอน

วีดีโอ: ระบบบ้านอัจฉริยะ: 6 ขั้นตอน

วีดีโอ: ระบบบ้านอัจฉริยะ: 6 ขั้นตอน
วีดีโอ: [spin9] เปิดระบบ Smart Home ที่บ้าน — บอกหมด เราใช้อะไรบ้าง 2024, พฤศจิกายน
Anonim
ระบบบ้านอัจฉริยะ
ระบบบ้านอัจฉริยะ

คำแนะนำนี้จะช่วยอธิบายวิธีตั้งค่าและใช้ระบบสมาร์ทโฮมของเราโดยใช้ซอฟต์แวร์ Matlab และฮาร์ดแวร์ Raspberry Pi ในตอนท้ายของคำแนะนำนี้ คุณควรจะสามารถใช้ผลิตภัณฑ์ของเราอย่างเต็มที่ได้อย่างง่ายดาย!

ขั้นตอนที่ 1: ขั้นตอนที่ 1: ชิ้นส่วนและวัสดุที่จำเป็น

ขั้นตอนที่ 1: ชิ้นส่วนและวัสดุที่จำเป็น
ขั้นตอนที่ 1: ชิ้นส่วนและวัสดุที่จำเป็น
ขั้นตอนที่ 1: ชิ้นส่วนและวัสดุที่จำเป็น
ขั้นตอนที่ 1: ชิ้นส่วนและวัสดุที่จำเป็น
  • ราสเบอร์รี่ปี่
  • เขียงหั่นขนม (x2)
  • เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR
  • โมดูล LCD
  • ไฟ LED
  • ตัวเก็บประจุ
  • กล้อง Raspberry Pi
  • ไมโครเซอร์โวมอเตอร์
  • สายไฟคู่ (20)

ขั้นตอนที่ 2: ขั้นตอนที่ 2: คำชี้แจงปัญหา

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

ขั้นตอนที่ 3: ขั้นตอนที่ 3: การกำหนดค่า Motion Sensor

ขั้นตอนที่ 3: การกำหนดค่า Motion Sensor
ขั้นตอนที่ 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

ขั้นตอนที่ 4: จอแสดงผลโมดูล LCD
ขั้นตอนที่ 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: โมดูลเซอร์โวมอเตอร์

ขั้นตอนที่ 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: กล้องตรวจจับความเคลื่อนไหว

ขั้นตอนที่ 6: กล้องตรวจจับความเคลื่อนไหว
ขั้นตอนที่ 6: กล้องตรวจจับความเคลื่อนไหว

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

ผม=0

กล้องใส

กล้อง = กระดานกล้อง (rpi);

ในขณะที่ i==0

สแนปชอต (ลูกเบี้ยว); %ล้างบัฟเฟอร์ภาพ

img = สแน็ปช็อต (กล้อง);

ภาพ (img);

จบ

แนะนำ: