บ้านอัจฉริยะที่ใช้ตัวควบคุม Arduino: การออกแบบและการจัดระเบียบพื้นที่ควบคุม
การพัฒนาเครื่องมืออัตโนมัติได้นำไปสู่การสร้างระบบที่ซับซ้อนซึ่งปรับปรุงคุณภาพชีวิตของมนุษย์ผู้ผลิตอุปกรณ์อิเล็กทรอนิกส์และซอฟต์แวร์ที่มีชื่อเสียงหลายรายนำเสนอโซลูชันมาตรฐานสำเร็จรูปสำหรับวัตถุต่างๆ
แม้แต่ผู้ใช้ที่ไม่มีประสบการณ์ก็สามารถพัฒนาโปรเจ็กต์อิสระและประกอบ "บ้านอัจฉริยะ" โดยใช้ Arduino เพื่อให้เหมาะกับความต้องการของพวกเขา สิ่งสำคัญคือการเข้าใจพื้นฐานและอย่ากลัวที่จะทดลอง
ในบทความนี้เราจะดูหลักการของการสร้างและฟังก์ชันหลักของบ้านอัตโนมัติโดยใช้อุปกรณ์ Arduino เราจะพิจารณาประเภทของบอร์ดที่ใช้และโมดูลหลักของระบบด้วย
เนื้อหาของบทความ:
การสร้างระบบบนแพลตฟอร์ม Arduino
Arduino เป็นแพลตฟอร์มสำหรับการพัฒนาอุปกรณ์อิเล็กทรอนิกส์ที่มีการควบคุมอัตโนมัติ กึ่งอัตโนมัติ หรือด้วยตนเอง มันถูกสร้างขึ้นตามหลักการของนักออกแบบโดยมีกฎการโต้ตอบระหว่างองค์ประกอบที่กำหนดไว้อย่างชัดเจน ระบบเปิดอยู่ซึ่งช่วยให้ผู้ผลิตบุคคลที่สามสามารถมีส่วนร่วมในการพัฒนาได้
คลาสสิค «บ้านอัจฉริยะ» ประกอบด้วยบล็อกอัตโนมัติที่ทำหน้าที่ดังต่อไปนี้:
- รวบรวมข้อมูลที่จำเป็นผ่านเซ็นเซอร์
- วิเคราะห์ข้อมูลและตัดสินใจโดยใช้ไมโครโปรเซสเซอร์ที่ตั้งโปรแกรมได้
- ดำเนินการตัดสินใจโดยการออกคำสั่งไปยังอุปกรณ์ต่างๆ
แพลตฟอร์ม Arduino นั้นดีอย่างแน่นอน เนื่องจากไม่ได้ล็อคอยู่กับผู้ผลิตรายใดรายหนึ่ง แต่ช่วยให้ผู้บริโภคสามารถเลือกส่วนประกอบที่เหมาะกับเขาได้ การเลือกของพวกเขามีขนาดใหญ่มาก ดังนั้นคุณจึงสามารถตระหนักถึงความคิดได้เกือบทุกอย่าง
เราขอแนะนำให้ตรวจสอบสิ่งที่ดีที่สุด อุปกรณ์อัจฉริยะสำหรับบ้าน.
นอกเหนือจากความหลากหลายของอุปกรณ์ที่เชื่อมต่อแล้ว สภาพแวดล้อมการเขียนโปรแกรมที่ใช้งานใน C++ ยังเพิ่มความหลากหลายอีกด้วย ผู้ใช้ไม่เพียงแต่สามารถใช้ไลบรารีที่สร้างขึ้นเท่านั้น แต่ยังตั้งโปรแกรมปฏิกิริยาของส่วนประกอบของระบบต่อเหตุการณ์ที่เกิดขึ้นได้อีกด้วย
องค์ประกอบของกระดานหลัก
องค์ประกอบหลักของ "บ้านอัจฉริยะ" คือแผงกลาง (แม่) หนึ่งแผงขึ้นไป พวกเขามีหน้าที่รับผิดชอบในการโต้ตอบขององค์ประกอบทั้งหมด หลังจากระบุงานที่ต้องแก้ไขแล้วเท่านั้นคุณสามารถเริ่มเลือกโหนดหลักของระบบได้
เมนบอร์ดรวมองค์ประกอบต่อไปนี้:
- ไมโครคอนโทรลเลอร์ (โปรเซสเซอร์) วัตถุประสงค์หลักคือเพื่อส่งออกและวัดแรงดันไฟฟ้าในพอร์ตในช่วง 0-5 หรือ 0-3.3 V เก็บข้อมูลและทำการคำนวณ
- โปรแกรมเมอร์ (ไม่ใช่ทุกบอร์ดจะมี) เมื่อใช้อุปกรณ์นี้ โปรแกรมจะถูกเขียนลงในหน่วยความจำของไมโครคอนโทรลเลอร์ตามที่ "บ้านอัจฉริยะ" จะทำงาน เชื่อมต่อกับคอมพิวเตอร์ แท็บเล็ต สมาร์ทโฟน หรืออุปกรณ์อื่นๆ โดยใช้อินเทอร์เฟซ USB
- ตัวควบคุมแรงดันไฟฟ้า ต้องใช้อุปกรณ์ 5 โวลต์ในการจ่ายไฟให้กับทั้งระบบ
บอร์ดหลายรุ่นผลิตภายใต้แบรนด์ Arduinoมีความแตกต่างกันในเรื่องฟอร์มแฟคเตอร์ (ขนาด) จำนวนพอร์ต และความจุหน่วยความจำ ขึ้นอยู่กับตัวบ่งชี้เหล่านี้ที่คุณต้องเลือกอุปกรณ์ที่เหมาะสม
พอร์ตมีสองประเภท:
- ดิจิทัลซึ่งมีตัวอักษรกำกับไว้บนกระดาน "ด";
- อนาล็อกซึ่งมีตัวอักษรกำกับไว้ "ก".
ต้องขอบคุณพวกเขาที่ทำให้ไมโครคอนโทรลเลอร์สื่อสารกับอุปกรณ์ที่เชื่อมต่อ พอร์ตใดก็ได้สามารถทำงานได้ทั้งเพื่อรับสัญญาณและส่งออก พอร์ตดิจิตอลที่มีเครื่องหมาย “pwm” มีไว้สำหรับอินพุตและเอาต์พุตของสัญญาณ PWM (การปรับความกว้างพัลส์)
ดังนั้นก่อนที่จะซื้อบอร์ดจำเป็นต้องประเมินระดับการโหลดบนอุปกรณ์ต่าง ๆ โดยประมาณเป็นอย่างน้อย ซึ่งจะช่วยให้คุณสามารถกำหนดจำนวนพอร์ตที่ต้องการทุกประเภทได้
ควรเข้าใจว่าระบบสมาร์ทโฮมไม่จำเป็นต้องเชื่อมต่อกับชุดควบคุมที่ใช้มาเธอร์บอร์ดตัวเดียว ฟังก์ชั่นต่างๆ เช่น การเปิดไฟส่องสว่างในท้องถิ่นโดยขึ้นอยู่กับช่วงเวลาของวัน และการรักษาปริมาณน้ำสำรองในถังเก็บน้ำจะเป็นอิสระจากกัน
จากจุดยืนในการรับรองความน่าเชื่อถือของระบบอิเล็กทรอนิกส์ เป็นการดีกว่าที่จะแยกงานที่ไม่เกี่ยวข้องออกเป็นบล็อกต่างๆ ซึ่งแนวคิดของ Arduino ทำให้ง่ายต่อการนำไปใช้ หากคุณรวมอุปกรณ์จำนวนมากไว้ในที่เดียว ไมโครโปรเซสเซอร์อาจมีความร้อนมากเกินไป ไลบรารีซอฟต์แวร์ขัดแย้งกัน และความยากลำบากในการค้นหาและกำจัดข้อผิดพลาดของซอฟต์แวร์และฮาร์ดแวร์
ไมโครโปรเซสเซอร์แต่ละตัวมีหน่วยความจำสามประเภท:
- หน่วยความจำแฟลช หน่วยความจำหลักที่ใช้จัดเก็บโค้ดโปรแกรมการจัดการระบบ ส่วนเล็ก ๆ (3-12%) ถูกครอบครองโดยโปรแกรม bootloader ในตัว
- สแรม RAM ซึ่งเก็บข้อมูลชั่วคราวที่จำเป็นสำหรับการรันโปรแกรม มีความเร็วในการทำงานสูง
- อีพรอม หน่วยความจำช้าลงซึ่งสามารถจัดเก็บข้อมูลได้
ความแตกต่างที่สำคัญระหว่างประเภทของหน่วยความจำสำหรับการจัดเก็บข้อมูลก็คือ เมื่อปิดเครื่อง ข้อมูลที่บันทึกไว้ใน SRAM จะสูญหาย แต่ยังคงอยู่ใน EEPROM แต่ประเภทที่ไม่ลบเลือนก็มีข้อเสียเช่นกัน - รอบการเขียนมีจำนวนจำกัด นี่คือสิ่งที่ควรคำนึงถึงเมื่อสร้างแอปพลิเคชันของคุณเอง
ต่างจากการใช้ Arduino ในวิทยาการหุ่นยนต์ งานบ้านอัจฉริยะส่วนใหญ่ไม่จำเป็นต้องใช้หน่วยความจำจำนวนมากสำหรับโปรแกรมหรือการจัดเก็บข้อมูล
ประเภทของบอร์ดสำหรับประกอบบ้านอัจฉริยะ
มาดูบอร์ดประเภทหลักที่ใช้บ่อยที่สุดเมื่อประกอบระบบสมาร์ทโฮม
มุมมอง #1 - Arduino Uno และอนุพันธ์ของมัน
บอร์ดที่ใช้บ่อยที่สุดในระบบสมาร์ทโฮมคือ Arduino Uno และ Arduino Nano พวกเขามีฟังก์ชันการทำงานเพียงพอที่จะแก้ไขปัญหาทั่วไป
พารามิเตอร์หลักของ Arduino Uno Rev3:
- หน่วยประมวลผล: ATMega328P (8 บิต, 16 MHz);
- จำนวนพอร์ตดิจิตอล: 14;
- ซึ่งมีฟังก์ชั่น PWM: 6;
- จำนวนพอร์ตอะนาล็อก: 6;
- หน่วยความจำแฟลช: 32 กิโลไบต์;
- สแรม: 2 กิโลไบต์;
- อีพรอม: 1 กิโลไบต์
ไม่นานมานี้ มีการเผยแพร่การแก้ไข - Uno Wi-Fi ซึ่งประกอบด้วยโมดูล ESP8266 ในตัวที่ให้คุณแลกเปลี่ยนข้อมูลกับอุปกรณ์อื่น ๆ ที่ใช้มาตรฐาน 802.11 b/g/n
ความแตกต่างระหว่าง Arduino Nano กับรุ่นที่ใหญ่กว่าคือไม่มีปลั๊กไฟ 12 V ของตัวเอง ซึ่งทำเพื่อให้อุปกรณ์มีขนาดเล็กลงซึ่งช่วยให้ซ่อนได้ง่ายในพื้นที่ขนาดเล็ก เพื่อจุดประสงค์เหล่านี้ การเชื่อมต่อ USB มาตรฐานจะถูกแทนที่ด้วยชิปที่มีสาย mini-USB Arduino Nano มีพอร์ตอะนาล็อกมากกว่า 2 พอร์ตเมื่อเทียบกับ Uno
มีการดัดแปลงบอร์ด Uno อีกครั้ง - Arduino Mini มันเล็กกว่านาโนด้วยซ้ำ และใช้งานยากกว่ามาก ประการแรกการไม่มีพอร์ต USB ทำให้เกิดปัญหากับเฟิร์มแวร์เนื่องจากคุณจะต้องใช้ตัวแปลง USB-Serial สำหรับสิ่งนี้ ประการที่สองบอร์ดนี้จู้จี้จุกจิกมากขึ้นเมื่อพูดถึงแหล่งจ่ายไฟ - จำเป็นต้องจัดให้มีช่วงแรงดันไฟฟ้าอินพุตที่ 7-9 V
ด้วยเหตุผลที่อธิบายไว้ข้างต้น บอร์ด Arduino Mini จึงไม่ค่อยได้ใช้สำหรับการใช้งานในบ้านอัจฉริยะ มักใช้ในวิทยาการหุ่นยนต์หรือในการดำเนินโครงการสำเร็จรูป
มุมมอง #2 - Arduino Leonardo และ Micro
บอร์ด Arduino Leonardo นั้นคล้ายกับ Uno แต่มีประสิทธิภาพมากกว่าเล็กน้อย คุณสมบัติที่น่าสนใจอีกอย่างของรุ่นนี้คือระบุเป็นคีย์บอร์ด เมาส์ หรือจอยสติ๊กเมื่อเชื่อมต่อกับคอมพิวเตอร์ ดังนั้นจึงมักใช้เพื่อสร้างอุปกรณ์เล่นเกมและตัวจำลองดั้งเดิม
พารามิเตอร์หลักของ Arduino Leonardo มีดังนี้:
- หน่วยประมวลผล: ATMega32u4 (8 บิต, 16 MHz);
- จำนวนพอร์ตดิจิตอล: 20;
- ซึ่งมีฟังก์ชั่น PWM: 7;
- จำนวนพอร์ตอะนาล็อก: 12;
- หน่วยความจำแฟลช: 32 กิโลไบต์;
- สแรม: 2.5 กิโลไบต์;
- อีพรอม: 1 กิโลไบต์
ดังที่เห็นได้จากรายการพารามิเตอร์ Leonardo มีพอร์ตมากขึ้นซึ่งทำให้รุ่นนี้สามารถโหลดเซ็นเซอร์จำนวนมากขึ้นได้
นอกจากนี้สำหรับ Leonardo ยังมีอะนาล็อกขนาดเล็กที่มีลักษณะเหมือนกันทุกประการที่เรียกว่าไมโคร ไม่มีแหล่งจ่ายไฟ 12V และแทนที่จะเป็นอินพุต USB แบบเต็มจะมีชิปสำหรับสาย mini-USB
การดัดแปลงของ Leonardo ที่เรียกว่า Esplora นั้นเป็นโมเดลการเล่นเกมล้วนๆ และไม่เหมาะกับความต้องการของ "บ้านอัจฉริยะ"
มุมมอง #3 - Arduino 101, Arduino Zero และ Arduino MKR1000
บางครั้งการทำงานของระบบสมาร์ทโฮมที่ใช้ Arduino ต้องใช้พลังการประมวลผลจำนวนมากซึ่งไมโครคอนโทรลเลอร์ 8 บิตไม่สามารถให้ได้ งานต่างๆ เช่น การจดจำเสียงหรือรูปภาพ ต้องใช้โปรเซสเซอร์ที่รวดเร็วและ RAM จำนวนมากสำหรับอุปกรณ์ดังกล่าว
เพื่อแก้ไขปัญหาเฉพาะดังกล่าว จึงมีการใช้บอร์ดอันทรงพลังที่ทำงานตามแนวคิด Arduino จำนวนพอร์ตที่มีอยู่นั้นใกล้เคียงกับบอร์ด Uno หรือ Leonardo
หนึ่งในบอร์ดที่ใช้งานง่ายแต่ทรงพลัง Arduino 101 มีลักษณะดังต่อไปนี้:
- หน่วยประมวลผล: Intel Curie (32 บิต, 32 MHz);
- หน่วยความจำแฟลช: 196 กิโลไบต์;
- แรม: 24 กิโลไบต์;
- อีพรอม: ไม่
นอกจากนี้ บอร์ดยังมีฟังก์ชัน BLE (บลูทูธพลังงานต่ำ) ที่สามารถเชื่อมต่อโซลูชันสำเร็จรูปได้อย่างง่ายดาย เช่น เซ็นเซอร์วัดอัตราการเต้นของหัวใจ รับข้อมูลเกี่ยวกับสภาพอากาศนอกหน้าต่าง การส่งข้อความ เป็นต้น ไจโรสโคปและมาตรความเร่งยังรวมอยู่ในอุปกรณ์ด้วย แต่ส่วนใหญ่จะใช้ในวิทยาการหุ่นยนต์
บอร์ดอื่นที่คล้ายกัน Arduino Zero มีตัวบ่งชี้ดังต่อไปนี้:
- หน่วยประมวลผล: SAM-D21 (32 บิต, 48 MHz);
- หน่วยความจำแฟลช: 256 KB;
- สแรม: 32 กิโลไบต์;
- อีพรอม: ไม่
คุณสมบัติที่โดดเด่นของรุ่นนี้คือการมีดีบักเกอร์ในตัว (EDBG) ด้วยความช่วยเหลือทำให้ค้นหาข้อผิดพลาดได้ง่ายขึ้นมากเมื่อตั้งโปรแกรมบอร์ด
Arduino MKR1000 เป็นอีกรุ่นหนึ่งที่เหมาะสำหรับการประมวลผลพลังงานสูง มีไมโครโปรเซสเซอร์และหน่วยความจำคล้ายกับซีโร่ ความแตกต่างที่สำคัญคือการมีชิป Wi-Fi ในตัวพร้อมโปรโตคอล 802.11 b/g/n และชิปเข้ารหัสที่รองรับอัลกอริธึม SHA-256 เพื่อปกป้องข้อมูลที่ส่ง
ดู #4 - โมเดลตระกูล Mega
บางครั้งจำเป็นต้องใช้เซ็นเซอร์จำนวนมากและควบคุมอุปกรณ์จำนวนมาก ตัวอย่างเช่นนี่เป็นสิ่งจำเป็นสำหรับการทำงานอัตโนมัติของระบบปรับอากาศแบบกระจายซึ่งรักษาอุณหภูมิที่แน่นอนสำหรับแต่ละโซน
สำหรับแต่ละพื้นที่จำเป็นต้องตรวจสอบการอ่านเซ็นเซอร์อุณหภูมิสองตัว (อันที่สองใช้เป็นตัวควบคุม) และตามอัลกอริทึมให้ปรับตำแหน่งของแดมเปอร์ซึ่งกำหนดปริมาตรของอากาศอุ่นที่เข้ามา
หากกระท่อมมีโซนดังกล่าวมากกว่า 10 โซน ก็จำเป็นต้องมีพอร์ตมากกว่า 30 พอร์ตเพื่อควบคุมระบบทั้งหมด แน่นอนว่าคุณสามารถใช้บอร์ด Uno-type ได้หลายบอร์ดภายใต้การควบคุมทั่วไปของหนึ่งในนั้น แต่สิ่งนี้จะสร้างปัญหาในการสลับเพิ่มเติม ในกรณีนี้ขอแนะนำให้ใช้โมเดลตระกูล Mega
บอร์ด Arduino Mega ใช้ไมโครโปรเซสเซอร์ 8 บิต 16 MHz ที่ค่อนข้างเรียบง่าย atMega1280
มีหน่วยความจำจำนวนมาก:
- หน่วยความจำแฟลช: 128 กิโลไบต์;
- สแรม: 8 กิโลไบต์;
- อีพรอม: 4 กิโลไบต์
แต่ข้อได้เปรียบหลักคือการมีพอร์ตมากมาย:
- จำนวนพอร์ตดิจิตอล: 54;
- ซึ่งมีฟังก์ชั่น PWM: 15;
- จำนวนพอร์ตอะนาล็อก: 16
บอร์ดนี้มีสองประเภทที่ทันสมัย:
- Mega 2560 ใช้ไมโครโปรเซสเซอร์ aTMega2560 ซึ่งมีหน่วยความจำแฟลชจำนวนมาก - 256 KB;
- Mega ADK นอกเหนือจากไมโครโปรเซสเซอร์ aTMega2560 แล้วยังมีอินเทอร์เฟซ USB ที่สามารถเชื่อมต่อกับอุปกรณ์ที่ใช้ระบบปฏิบัติการ Android
รุ่น Arduino Mega ADK มีคุณสมบัติเดียว เมื่อเชื่อมต่อโทรศัพท์เข้ากับอินพุต USB อาจเกิดสถานการณ์ต่อไปนี้: หากโทรศัพท์จำเป็นต้องชาร์จโทรศัพท์จะเริ่ม "ดึง" ออกจากบอร์ด ดังนั้นจึงมีข้อกำหนดเพิ่มเติมสำหรับแหล่งไฟฟ้า - ต้องมีกระแสไฟฟ้า 1.5 แอมแปร์ เมื่อจ่ายไฟผ่านแบตเตอรี่ต้องคำนึงถึงเงื่อนไขนี้ด้วย
Due เป็นอีกรุ่นหนึ่งจาก Arduino ที่รวมพลังของไมโครโปรเซสเซอร์เข้ากับพอร์ตจำนวนมาก
ลักษณะของมันมีดังนี้:
- หน่วยประมวลผล: Atmel SAM3X8E (32 บิต, 84 MHz);
- จำนวนพอร์ตดิจิตอล: 54;
- ซึ่งมีฟังก์ชั่น PWM: 12;
- จำนวนพอร์ตอะนาล็อก: 14;
- หน่วยความจำแฟลช: 512 กิโลไบต์;
- แรม: 96 กิโลไบต์;
- อีพรอม: ไม่
หน้าสัมผัสแบบอะนาล็อกของบอร์ดนี้สามารถทำงานได้ทั้งในความละเอียด 10 บิตปกติสำหรับ Arduino ซึ่งทำขึ้นเพื่อให้เข้ากันได้กับรุ่นก่อนหน้าและใน 12 บิตซึ่งช่วยให้คุณรับสัญญาณที่แม่นยำยิ่งขึ้น
คุณสมบัติของการโต้ตอบโมดูลผ่านพอร์ต
โมดูลทั้งหมดที่จะเชื่อมต่อกับบอร์ดจะมีเอาต์พุตอย่างน้อยสามเอาต์พุต สองในนั้นคือสายไฟเช่น "กราวด์" เช่นเดียวกับแรงดันไฟฟ้า 5 หรือ 3.3 V สายที่สามมีเหตุผล มันส่งข้อมูลไปที่พอร์ต ในการเชื่อมต่อโมดูลจะใช้สายไฟพิเศษที่จัดกลุ่มเป็นกลุ่มละ 3 เส้นซึ่งบางครั้งเรียกว่าจัมเปอร์
เนื่องจากรุ่น Arduino มักจะมีพอร์ตแรงดันไฟฟ้าเพียง 1 พอร์ตและพอร์ตกราวด์ 1-2 พอร์ต ดังนั้นในการเชื่อมต่ออุปกรณ์หลายเครื่อง คุณจะต้องบัดกรีสายไฟหรือใช้เขียงหั่นขนม
การบัดกรีมีความน่าเชื่อถือมากกว่าและใช้ในอุปกรณ์ที่ได้รับผลกระทบทางกายภาพ เช่น แผงควบคุมสำหรับหุ่นยนต์และควอดคอปเตอร์ สำหรับบ้านอัจฉริยะ ควรใช้บอร์ดพัฒนาเนื่องจากจะง่ายกว่าทั้งเมื่อติดตั้งและเมื่อถอดโมดูล
บางรุ่น (เช่น Arduino Zero และ MKR1000) มีแรงดันไฟฟ้าในการทำงานที่ 3.3 V ดังนั้นหากใช้ค่าที่สูงกว่ากับพอร์ต บอร์ดอาจเสียหายได้ ข้อมูลทั้งหมดเกี่ยวกับแหล่งจ่ายไฟมีอยู่ในเอกสารทางเทคนิคของอุปกรณ์
บอร์ดเสริม (โล่)
เพื่อเพิ่มความสามารถของมาเธอร์บอร์ดจึงมีการใช้ Shields - อุปกรณ์เพิ่มเติมที่ขยายฟังก์ชันการทำงาน ผลิตขึ้นสำหรับฟอร์มแฟคเตอร์เฉพาะ ซึ่งแตกต่างจากโมดูลที่เชื่อมต่อกับพอร์ต โล่มีราคาแพงกว่าโมดูล แต่การทำงานกับพวกมันนั้นง่ายกว่า พวกเขายังติดตั้งไลบรารี่พร้อมโค้ดซึ่งจะช่วยเร่งการพัฒนาโปรแกรมควบคุมของคุณเองสำหรับบ้านอัจฉริยะ
โล่โปรโตและเซนเซอร์
โล่มาตรฐานทั้งสองนี้ไม่ได้เพิ่มฟังก์ชันพิเศษใดๆ ใช้สำหรับการเชื่อมต่อโมดูลจำนวนมากที่กะทัดรัดและสะดวกสบายยิ่งขึ้น
Proto Shield เป็นสำเนาต้นฉบับที่เกือบจะสมบูรณ์ในแง่ของพอร์ต และคุณสามารถติดบอร์ดพัฒนาไว้ตรงกลางโมดูลได้ ทำให้ง่ายต่อการประกอบโครงสร้าง ส่วนเสริมดังกล่าวมีอยู่ในบอร์ด Arduino แบบเต็มความยาวทั้งหมด
แต่หากมีอุปกรณ์จำนวนมาก (มากกว่า 10 เครื่อง) ก็ควรใช้แผงสวิตช์ Sensor Shield ที่มีราคาแพงกว่า
พวกเขาไม่มีแบรดบอร์ด แต่พินพอร์ตทั้งหมดจะจ่ายไฟและกราวด์แยกกัน วิธีนี้ช่วยให้คุณหลีกเลี่ยงการพันกันกับสายไฟและจัมเปอร์ได้
บอร์ดนี้ยังมีขั้วต่อสำหรับเชื่อมต่อโมดูลต่างๆ ได้อย่างง่ายดาย: Bluetoots, การ์ด SD, RS232 (พอร์ต COM), วิทยุ และอัลตราซาวนด์
การเชื่อมต่อฟังก์ชันเสริม
แผงป้องกันที่มีฟังก์ชันการทำงานรวมอยู่ในนั้นได้รับการออกแบบมาเพื่อแก้ไขปัญหาที่ซับซ้อนแต่โดยทั่วไป หากคุณต้องการนำแนวคิดดั้งเดิมไปใช้จะเป็นการดีกว่าถ้าเลือกโมดูลที่เหมาะสม
โล่มอเตอร์. ได้รับการออกแบบมาเพื่อควบคุมความเร็วและการหมุนของมอเตอร์กำลังต่ำ รุ่นดั้งเดิมมาพร้อมกับชิป L298 หนึ่งตัวและสามารถขับเคลื่อนมอเตอร์ DC สองตัวหรือเซอร์โวตัวเดียวในเวลาเดียวกัน นอกจากนี้ยังมีชิ้นส่วนของบุคคลที่สามที่เข้ากันได้ซึ่งมีชิป L293D สองตัวที่สามารถควบคุมไดรฟ์ได้มากเป็นสองเท่า
รีเลย์ชิลด์. โมดูลที่ใช้บ่อยในระบบสมาร์ทโฮม บอร์ดที่มีรีเลย์ระบบเครื่องกลไฟฟ้า 4 ตัว ซึ่งแต่ละตัวสามารถจ่ายกระแสผ่านได้ด้วยแรงสูงสุด 5A ซึ่งเพียงพอที่จะเปิดและปิดอุปกรณ์กิโลวัตต์หรือสายไฟที่ออกแบบมาสำหรับไฟฟ้ากระแสสลับ 220 V โดยอัตโนมัติ
จอแอลซีดีชิลด์ ให้คุณแสดงข้อมูลบนหน้าจอในตัวซึ่งสามารถอัพเกรดเป็นอุปกรณ์ TFT ได้ ส่วนขยายนี้มักใช้เพื่อสร้างสถานีตรวจอากาศด้วยการอ่านอุณหภูมิในพื้นที่อยู่อาศัย อาคารหลังบ้าน โรงรถ รวมถึงอุณหภูมิ ความชื้น และความเร็วลมภายนอก
โล่การบันทึกข้อมูล หน้าที่หลักของโมดูลคือการบันทึกข้อมูลจากเซ็นเซอร์ลงในการ์ด SD แบบเต็มรูปแบบสูงสุด 32 Gb พร้อมรองรับระบบไฟล์ FAT32 หากต้องการบันทึกลงการ์ด micro SD คุณต้องซื้ออะแดปเตอร์โล่นี้สามารถใช้เป็นที่จัดเก็บข้อมูลได้ เช่น เมื่อบันทึกข้อมูลจาก DVR ผลิตโดยบริษัท Adafruit Industries ในอเมริกา
การ์ด SD ชิลด์ โมดูลก่อนหน้าเวอร์ชันที่เรียบง่ายและราคาถูกกว่า ผู้ผลิตหลายรายผลิตส่วนขยายดังกล่าว
อีเธอร์เน็ตชิลด์ โมดูลอย่างเป็นทางการสำหรับเชื่อมต่อ Arduino กับอินเทอร์เน็ตโดยไม่ต้องใช้คอมพิวเตอร์ มีช่องสำหรับใส่การ์ด micro SD ซึ่งให้คุณบันทึกและส่งข้อมูลผ่านเวิลด์ไวด์เว็บ
โล่ Wi-Fi อนุญาตการแลกเปลี่ยนข้อมูลแบบไร้สายพร้อมรองรับโหมดการเข้ารหัส ทำหน้าที่เชื่อมต่ออินเทอร์เน็ตและอุปกรณ์ที่สามารถควบคุมผ่าน Wi-Fi
โล่ GPRS. โดยปกติโมดูลนี้ใช้เพื่อสื่อสารระหว่างบ้านอัจฉริยะและเจ้าของผ่านโทรศัพท์มือถือผ่านข้อความ SMS
โมดูลบ้านอัจฉริยะ
การเชื่อมต่อโมดูลจากผู้ผลิตบุคคลที่สามและความสามารถในการทำงานร่วมกับพวกเขาโดยใช้ภาษาการเขียนโปรแกรมในตัวเป็นข้อได้เปรียบหลักของระบบ Arduino แบบเปิดเมื่อเปรียบเทียบกับโซลูชันบ้านอัจฉริยะ "แบรนด์" สิ่งสำคัญคือโมดูลมีคำอธิบายของสัญญาณที่ได้รับหรือส่งสัญญาณ
ช่องทางในการรับข้อมูล
การป้อนข้อมูลสามารถทำได้ผ่านพอร์ตดิจิตอลหรืออนาล็อก ขึ้นอยู่กับชนิดของปุ่มหรือเซ็นเซอร์ที่รับข้อมูลและส่งไปที่บอร์ด
บุคคลที่ใช้สองวิธีในการส่งสัญญาณไปยังไมโครโปรเซสเซอร์สามารถส่งได้:
- การกดปุ่ม (ปุ่ม). สายลอจิคัลในกรณีนี้จะไปที่พอร์ตดิจิทัล ซึ่งจะได้รับค่า "0" หากปล่อยปุ่ม และ "1" หากถูกกด
- การหมุนฝาโพเทนชิโอมิเตอร์แบบหมุน (ตัวต้านทาน) หรือเปลี่ยนคันโยกเครื่องยนต์ ในกรณีนี้ สายลอจิคัลจะไปที่พอร์ตแอนะล็อก แรงดันไฟฟ้าจะผ่านตัวแปลงแอนะล็อกเป็นดิจิทัล หลังจากนั้นข้อมูลจะถูกส่งไปยังไมโครโปรเซสเซอร์
ปุ่มต่างๆ ใช้เพื่อเริ่มกิจกรรม เช่น การเปิดและปิดไฟเลี้ยว ระบบทำความร้อน หรือการระบายอากาศ ปุ่มหมุนใช้เพื่อเปลี่ยนความเข้ม - เพิ่มหรือลดความสว่างของแสง ระดับเสียง หรือความเร็วการหมุนของใบพัดลม
เซ็นเซอร์ใช้ในการระบุพารามิเตอร์ด้านสิ่งแวดล้อมหรือที่มาของเหตุการณ์โดยอัตโนมัติ
ประเภทต่อไปนี้เป็นที่ต้องการมากที่สุดสำหรับการทำงานในบ้านอัจฉริยะ:
- เซ็นเซอร์เสียง อุปกรณ์นี้เวอร์ชันดิจิทัลใช้เพื่อเปิดใช้งานกิจกรรมโดยใช้การตบมือหรือเสียง รุ่นอะนาล็อกช่วยให้คุณสามารถจดจำและประมวลผลเสียงได้
- เซ็นเซอร์วัดแสง อุปกรณ์เหล่านี้สามารถทำงานได้ทั้งในช่วงที่มองเห็นและอินฟราเรด หลังสามารถใช้เป็นระบบเตือนอัคคีภัยได้
- เซ็นเซอร์อุณหภูมิ. รุ่นต่างๆ ใช้สำหรับภายในและภายนอกอาคาร เนื่องจากรุ่นภายนอกได้รับการปกป้องจากความชื้นได้ดีกว่า นอกจากนี้ยังมีอุปกรณ์ระยะไกลอยู่บนสายด้วย
- เซ็นเซอร์ความชื้นในอากาศ รุ่น DHT11 เหมาะสำหรับใช้ในอาคาร และรุ่น DHT22 มีราคาแพงกว่าสำหรับกลางแจ้ง อุปกรณ์ทั้งสองยังสามารถอ่านค่าอุณหภูมิได้ เชื่อมต่อกับพอร์ตดิจิตอล
- เซ็นเซอร์ความดันอากาศ บารอมิเตอร์แบบอะนาล็อกจาก Bosh พิสูจน์แล้วว่าทำงานได้ดีกับบอร์ด Arduino: bmp180, bmp280 พวกเขายังวัดอุณหภูมิรุ่น bme280 สามารถเรียกได้ว่าเป็นสถานีตรวจอากาศเนื่องจากให้ค่าความชื้นเพิ่มเติมด้วย
- เซ็นเซอร์ตรวจจับความเคลื่อนไหวและการแสดงตน ใช้เพื่อความปลอดภัยหรือเปิดไฟอัตโนมัติ
- เซ็นเซอร์วัดปริมาณน้ำฝน ทำปฏิกิริยากับน้ำที่เข้าสู่ผิวน้ำ นอกจากนี้ยังสามารถใช้เพื่อส่งสัญญาณเตือนการรั่วไหลในระบบประปาหรือวงจรทำความร้อนได้อีกด้วย
- เซ็นเซอร์ปัจจุบัน ใช้เพื่อตรวจจับเครื่องใช้ไฟฟ้าที่ไม่ทำงาน (หลอดไฟไหม้) หรือวิเคราะห์แรงดันไฟฟ้าเพื่อป้องกันการโอเวอร์โหลด
- เซ็นเซอร์ตรวจจับแก๊สรั่ว ใช้เพื่อตรวจจับและตอบสนองต่อความเข้มข้นที่เพิ่มขึ้นของโพรเพน
- เซ็นเซอร์คาร์บอนไดออกไซด์ ใช้เพื่อกำหนดความเข้มข้นของคาร์บอนไดออกไซด์ในห้องนั่งเล่นและในห้องพิเศษ เช่น ห้องเก็บไวน์ ที่มีการหมักเกิดขึ้น
มีเซ็นเซอร์ที่แตกต่างกันอีกมากมายสำหรับงานเฉพาะ เช่น สำหรับการวัดน้ำหนัก ความเร็วการไหลของน้ำ ระยะทาง ความชื้นในดิน เป็นต้น
เซ็นเซอร์และเซ็นเซอร์จำนวนมากสามารถสร้างได้อย่างอิสระโดยใช้ส่วนประกอบที่เรียบง่ายกว่า มันจะเสียค่าใช้จ่ายน้อยลง แต่ต่างจากการใช้อุปกรณ์แบบอนุกรม คุณจะต้องใช้เวลาในการสอบเทียบ
การควบคุมอุปกรณ์และระบบ
นอกจากการรวบรวมและวิเคราะห์ข้อมูลแล้ว “บ้านอัจฉริยะ” ยังต้องตอบสนองต่อเหตุการณ์ที่เกิดขึ้นอีกด้วย การมีอุปกรณ์อิเล็กทรอนิกส์ขั้นสูงในเครื่องใช้ในครัวเรือนสมัยใหม่ช่วยให้คุณสามารถเข้าถึงได้โดยตรงโดยใช้ Wi-Fi, GPRS หรือ EtherNet โดยทั่วไปแล้ว ระบบ Arduino จะใช้การสลับระหว่างไมโครโปรเซสเซอร์และอุปกรณ์ไฮเทคผ่าน Wi-Fi
ในการใช้ Arduino เปิดเครื่องปรับอากาศเมื่ออุณหภูมิสูงในบ้าน ปิดทีวีและอินเทอร์เน็ตในเวลากลางคืนในห้องเด็ก หรือเริ่มหม้อต้มน้ำร้อนเมื่อเจ้าของมาถึง คุณต้องดำเนินการสามขั้นตอน:
- ติดตั้งโมดูล Wi-Fi บนเมนบอร์ด
- ค้นหาช่องความถี่ว่างเพื่อหลีกเลี่ยงความขัดแย้งของระบบ
- ทำความเข้าใจคำสั่งของอุปกรณ์และการทำงานของโปรแกรม (หรือใช้ไลบรารีสำเร็จรูป)
นอกเหนือจากการ "สื่อสาร" กับอุปกรณ์คอมพิวเตอร์แล้ว งานต่างๆ มักเกิดขึ้นที่เกี่ยวข้องกับการดำเนินการทางกลบางอย่างด้วย ตัวอย่างเช่นคุณสามารถเชื่อมต่อเซอร์โวไดรฟ์หรือกระปุกเกียร์ขนาดเล็กเข้ากับบอร์ดซึ่งจะใช้พลังงานจากมัน
หากจำเป็นต้องเชื่อมต่ออุปกรณ์ที่มีประสิทธิภาพซึ่งทำงานจากแหล่งพลังงานภายนอก จะใช้สองตัวเลือก:
- รวมไว้ในวงจรรีเลย์
- การเชื่อมต่อสวิตช์ไฟและไตรแอค
รวมอยู่ในวงจรไฟฟ้า แม่เหล็กไฟฟ้า หรือ โซลิดสเตตรีเลย์ ปิดและเปิดสายไฟเส้นใดเส้นหนึ่งตามคำสั่งที่มาจากไมโครโปรเซสเซอร์ ลักษณะหลักคือกระแสสูงสุดที่อนุญาต (เช่น 40 A) ที่สามารถผ่านอุปกรณ์นี้ได้
สำหรับการต่อสวิตช์ไฟ (mosfet) สำหรับกระแสตรงและไทรแอกสำหรับกระแสสลับนั้นจะมีกระแสไฟที่อนุญาตต่ำกว่า (5-15 A) แต่สามารถเพิ่มโหลดได้อย่างราบรื่น เพื่อจุดประสงค์นี้จึงมีการจัดเตรียมพอร์ต PWM ไว้บนบอร์ด คุณสมบัตินี้ใช้ในการควบคุมความสว่างของแสง ความเร็วพัดลม ฯลฯ
การใช้รีเลย์และสวิตช์ไฟทำให้วงจรไฟฟ้าทั้งหมดที่บ้านเป็นระบบอัตโนมัติและสตาร์ทเครื่องกำเนิดไฟฟ้าในกรณีที่ไม่มีกระแสไฟฟ้า ดังนั้นบนพื้นฐานของ Arduino จึงเป็นไปได้ที่จะใช้การจัดหาอพาร์ทเมนต์หรืออาคารแบบอัตโนมัติรวมถึงฟังก์ชั่นที่สำคัญโดยเฉพาะทั้งหมด - เครื่องทำความร้อน,ประปา,ระบายน้ำ,ระบายอากาศและระบบรักษาความปลอดภัย
คุณต้องการให้บ้านของคุณฉลาดขึ้นแต่มีโปรแกรมสำหรับ “คุณ” หรือไม่? ในกรณีนี้ เราขอแนะนำให้ดูโซลูชันสำเร็จรูปจาก Xiaomi และ Apple ซึ่งติดตั้งและกำหนดค่าได้ง่ายแม้สำหรับผู้เริ่มต้น และคุณสามารถตั้งค่าคำสั่งและควบคุมการใช้งานได้แม้กระทั่งจากสมาร์ทโฟนของคุณ
อ่านเพิ่มเติมเกี่ยวกับบ้านอัจฉริยะจาก Xiaomi และ Apple ในบทความต่อไปนี้:
- บ้านอัจฉริยะ Xiaomi: คุณสมบัติการออกแบบ ภาพรวมของส่วนประกอบหลัก และองค์ประกอบการทำงาน
- บ้านอัจฉริยะของ Apple: รายละเอียดปลีกย่อยของการจัดระเบียบระบบควบคุมบ้านจากบริษัท Apple
บทสรุปและวิดีโอที่เป็นประโยชน์ในหัวข้อ
ตัวอย่างชิ้นงานระดับเริ่มต้นที่ประกอบเองสำหรับ "บ้านอัจฉริยะ":
ความเปิดกว้างของแพลตฟอร์ม Arduino ทำให้สามารถใช้ส่วนประกอบจากผู้ผลิตหลายรายได้ ทำให้ง่ายต่อการออกแบบ “บ้านอัจฉริยะ” ให้เหมาะกับความต้องการของผู้ใช้ ดังนั้นหากคุณมีความรู้เล็กน้อยในด้านการเขียนโปรแกรมและการเชื่อมต่ออุปกรณ์อิเล็กทรอนิกส์ระบบนี้ก็คุ้มค่าที่จะให้ความสนใจ.
คุณคุ้นเคยกับแพลตฟอร์ม Arduino ในทางปฏิบัติแล้วและต้องการแบ่งปันประสบการณ์ของคุณกับผู้มาใหม่ในเรื่องนี้หรือไม่? บางทีคุณอาจต้องการเสริมเนื้อหาข้างต้นด้วยคำแนะนำหรือความคิดเห็นที่เป็นประโยชน์ เขียนความคิดเห็นของคุณภายใต้สิ่งพิมพ์นี้
หากคุณมีคำถามใดๆ เกี่ยวกับการออกแบบระบบบ้านอัตโนมัติที่ใช้ Arduino โปรดสอบถามผู้เชี่ยวชาญของเราและผู้เยี่ยมชมไซต์คนอื่นๆ ในบล็อกด้านล่าง