จะออกแบบระบบอัตโนมัติภายในบ้านที่ใช้ Arduino โดยใช้รีโมททีวีได้อย่างไร

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

ในโครงการนี้เราจะใช้รีโมททีวีธรรมดาเพื่อสร้างระบบอัตโนมัติภายในบ้านแบบง่ายๆ รีโมททีวีนี้จะควบคุมอุปกรณ์ทั้งหมดที่เชื่อมต่อกับบอร์ดไมโครคอนโทรลเลอร์

จะใช้รีโมททีวีเพื่อสร้างระบบโฮมอัตโนมัติได้อย่างไร?

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

ขั้นตอนที่ 1: รวบรวมส่วนประกอบ

แนวทางที่ดีที่สุดในการเริ่มต้นโครงการคือการจัดทำรายการส่วนประกอบและทำการศึกษาส่วนประกอบเหล่านี้โดยสังเขปเนื่องจากไม่มีใครต้องการยึดติดอยู่ตรงกลางของโครงการเพียงเพราะส่วนประกอบที่ขาดหายไป รายการส่วนประกอบที่เราจะใช้ในโครงการนี้มีดังต่อไปนี้:

ขั้นตอนที่ 2: ศึกษาส่วนประกอบ

เมื่อเรารู้ว่าจะใช้ส่วนประกอบใด ให้เราศึกษาโดยสังเขปเพื่อให้เข้าใจมากขึ้นว่าวงจรของเราทำงานอย่างไร

Arduino Nano เป็นบอร์ดไมโครคอนโทรลเลอร์ที่ดำเนินการต่างๆในวงจรต่างๆ ต้องใช้ไฟล์ รหัส C ที่บอกคณะกรรมการว่าต้องปฏิบัติงานอะไรและทำอย่างไร มีพิน I / O ดิจิทัล 13 พินซึ่งหมายความว่าเราสามารถใช้งานอุปกรณ์ต่างๆได้ 13 เครื่อง หากคุณต้องการควบคุมอุปกรณ์มากกว่า 13 เครื่องให้ใช้ Arduino Mega

TSOP 1738 เป็นโมดูล IR สำหรับรีโมทคอนโทรล มีความถี่ของผู้ให้บริการ 38kHz ประกอบด้วยเครื่องตรวจจับแสงที่ตรวจจับสัญญาณแล้วทำการ demodulate เอาต์พุตถูกใช้โดยตรงโดย Arduino หรือบอร์ดไมโครคอนโทรลเลอร์อื่น ๆ

โมดูลรีเลย์เป็นอุปกรณ์สวิตชิ่ง ทำงานในสองโหมด ปกติเปิด (NO) และ โดยปกติ ปิด (NC). ในโหมด NO วงจรจะเสียเสมอเว้นแต่คุณจะส่งสัญญาณสูงไปยังรีเลย์ผ่าน Arduino โหมด NC แย่ลงในทางกลับกันวงจรจะสมบูรณ์เสมอเว้นแต่คุณจะเปิดโมดูลรีเลย์ ตรวจสอบให้แน่ใจว่าคุณได้เชื่อมต่อสายบวกของเครื่องใช้ไฟฟ้าเข้ากับโมดูลรีเลย์ตามวิธีที่แสดงด้านล่าง

รีโมทคอนโทรลของทีวีมาตรฐานมีปุ่มเปิดปิดและปุ่มตัวเลขทั้งหมดอยู่ ปุ่มตัวเลขเหล่านี้จะใช้สำหรับการเปลี่ยนเครื่องใช้ไฟฟ้า

ขั้นตอนที่ 3: การสร้างวงจร

ตอนนี้เมื่อเรารู้ว่าส่วนประกอบทั้งหมดทำงานอย่างไรให้เราก้าวไปข้างหน้าและเริ่มสร้างวงจร

  1. ใช้เขียงหั่นขนมแล้วใส่ Arduino Nano และ TSOP 1738 เข้าไป
  2. เปิดโมดูล TSOP 1738 และโมดูลรีเลย์ผ่าน Arduino เชื่อมต่อ ออก พินของ TSOP1738 กับพิน11 ของ Arduino และยังเชื่อมต่อ ใน หมุดของโมดูลรีเลย์ไปยัง Arduino ฉันควบคุมเครื่องใช้ไฟฟ้าเพียงสองเครื่องดังนั้นฉันจึงใช้โมดูลรีเลย์ที่นี่เท่านั้น หากคุณต้องการควบคุมอุปกรณ์เพิ่มเติมให้เชื่อมต่อโมดูลรีเลย์เพิ่มเติมในทำนองเดียวกัน

ขั้นตอนที่ 4: เริ่มต้นใช้งาน Arduino

หากคุณไม่เคยทำงานกับ Arduino IDE มาก่อน ไม่ต้องกังวลเพราะขั้นตอนในการตั้งค่า Arduino IDE แสดงอยู่ด้านล่าง

  1. เชื่อมต่อบอร์ด Arduino ของคุณกับพีซีและเปิดแผงควบคุม คลิกที่ ฮาร์ดแวร์และเสียง.เปิดให้บริการแล้ว อุปกรณ์และเครื่องพิมพ์ และค้นหาพอร์ตที่บอร์ดของคุณเชื่อมต่ออยู่ ในกรณีของฉันมันคือ COM14แต่มันแตกต่างกันในคอมพิวเตอร์แต่ละเครื่อง
  2. คลิกที่เมนูเครื่องมือและตั้งค่าบอร์ดเป็น Arduino นาโน (AT Mega 328P).
  3. คลิกที่เมนูเครื่องมืออีกครั้งและตั้งค่าพอร์ตที่คุณสังเกตเห็นในแผงควบคุมก่อนหน้านี้
  4. ในเมนูเครื่องมือเดียวกันตั้งค่าโปรเซสเซอร์เป็น ATmega328p (Bootloader เก่า).
  5. ในการถอดรหัสข้อมูลที่ส่งโดยรีโมทคอนโทรลเราจำเป็นต้องมีไลบรารีพิเศษสำหรับ A code Arduino ไลบรารีนี้แนบมาพร้อมกับรหัสในลิงค์ด้านล่าง หากต้องการเพิ่มห้องสมุด goto ร่าง > รวมไลบรารี > เพิ่มไลบรารี ZIP. กล่องจะปรากฏขึ้น ค้นหาโฟลเดอร์ ZIP ในคอมพิวเตอร์ของคุณและคลิกตกลงเพื่อรวมโฟลเดอร์
  6. ดาวน์โหลดโค้ดที่แนบมาด้านล่างและคลิกที่ปุ่มอัพโหลดเพื่อเบิร์นโค้ดในบอร์ด Arduino Nano ของคุณ

คลิกที่ปุ่มดาวน์โหลดเพื่อรับรหัส

ขั้นตอนที่ 5: รหัส

รหัสนี้เข้าใจง่ายมาก แต่ยังคงมีการอธิบายสั้น ๆ ไว้ด้านล่าง

1. การตั้งค่าเป็นโมฆะ ()เป็นฟังก์ชั่นที่เราเตรียมใช้งานพิน INPUT หรือ OUTPUT ฟังก์ชั่นนี้ยังกำหนดอัตราการรับส่งข้อมูลโดยใช้ Serial.begin () คำสั่ง Baud Rate คือความเร็วในการสื่อสารของไมโครคอนโทรลเลอร์

2. ห่วงเป็นโมฆะ ()เป็นฟังก์ชันที่ทำงานซ้ำ ๆ ในวง ในลูปนี้เราจะเขียนโค้ดที่บอกบอร์ดไมโครคอนโทรลเลอร์ว่าต้องทำอะไรและทำอย่างไร

3. เมื่อเราส่งข้อมูลจากรีโมททีวี Arduino จำเป็นต้องถอดรหัสข้อมูลนี้ สำหรับสิ่งนี้เราได้รวมไลบรารีพิเศษ # รวม . ฟังก์ชันในไลบรารีนี้จะใช้ในการถอดรหัสข้อมูลของแต่ละคีย์ซึ่งส่งมาจากรีโมต

# รวม  int RECV_PIN = 11; IRrecv irrecv (RECV_PIN); ผลลัพธ์ decode_results; การตั้งค่าเป็นโมฆะ () {Serial.begin (9600); irrecv.enableIRIn (); } void loop () {if (irrecv.decode (& results)) {Serial.println (results.value, HEX); irrecv.resume (); } ล่าช้า (100); }

โค้ดด้านบนกำลังอ่านค่าที่ส่งจากรีโมตและถอดรหัสเป็นค่า HEX ที่สอดคล้องกัน รหัสนี้นำมาจากตัวอย่างของไลบรารี IRremote ใน Arduino IDE รหัสนี้แนบมาในลิงค์ดาวน์โหลดด้วยชื่อ test.ino ให้ไว้ข้างต้น ผลลัพธ์ของฟังก์ชั่นนี้เมื่อกดปุ่มตัวเลขทั้งหมดจะเป็น:

4. ใน code.ino ที่แนบมาในลิงค์ดาวน์โหลดด้านบนพินของ Arduino ที่จะใช้จะเริ่มต้น ใน ห่วงเป็นโมฆะ () ฟังก์ชั่นเมื่อกดปุ่มบนรีโมทในตอนแรก เท็จ เปลี่ยนเป็นเงื่อนไข จริงและรีเลย์ตามลำดับจะเปิดอยู่ หากกดปุ่มเดิมอีกครั้งระบบจะสลับเงื่อนไขบูลีนและปิดรีเลย์ ปุ่มเปิดปิดจะเปิดหรือปิดรีเลย์ทั้งหมด

โมฆะ loop () {if (irrecv.decode (& results)) {Serial.println (results.value, HEX); ล่าช้า (100); ถ้า (results.value == 0x40BD00FF) {i =! i; digitalWrite (IN1, ผม); } if (results.value == 0x40BD807F) {j =! j; digitalWrite (IN2, เจ); // ล่าช้า (200); } ถ้า (results.value == 0x40BD28D7) {m =! m; digitalWrite (IN1, ม.); digitalWrite (IN2, ม.); digitalWrite (IN3, ม.); digitalWrite (IN4, ม.); // ล่าช้า (200); } irrecv.resume (); // รับค่าถัดไป // ล่าช้า (100); }}

นี่เป็นขั้นตอนทั้งหมดในการสร้าง Home Automation System แบบง่ายๆ ที่ควบคุมโดยรีโมทคอนโทรลของทีวี ตอนนี้คุณสามารถเชื่อมต่อโมดูลรีเลย์ตามจำนวนเครื่องใช้ไฟฟ้าของคุณและเพลิดเพลินกับระบบ Smart Home Automation ของคุณเอง

Facebook Twitter Google Plus Pinterest