สารบัญ:

Arduino Alarm พร้อมเซ็นเซอร์การสั่นสะเทือนแบบดิจิตอล: 5 ขั้นตอน
Arduino Alarm พร้อมเซ็นเซอร์การสั่นสะเทือนแบบดิจิตอล: 5 ขั้นตอน

วีดีโอ: Arduino Alarm พร้อมเซ็นเซอร์การสั่นสะเทือนแบบดิจิตอล: 5 ขั้นตอน

วีดีโอ: Arduino Alarm พร้อมเซ็นเซอร์การสั่นสะเทือนแบบดิจิตอล: 5 ขั้นตอน
วีดีโอ: โมดูลตรวจจับการสั่น Vibration Sensor 2024, กรกฎาคม
Anonim
Arduino Alarm พร้อมเซ็นเซอร์สั่นสะเทือนดิจิตอล
Arduino Alarm พร้อมเซ็นเซอร์สั่นสะเทือนดิจิตอล

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

หากคุณมีคำถามหรือปัญหาใด ๆ คุณสามารถติดต่อฉันได้ที่อีเมลของฉัน:[email protected]

มาเริ่มกันเลย

ส่วนประกอบที่จัดเตรียมโดย DFRobot

ขั้นตอนที่ 1: วัสดุ

วัสดุ
วัสดุ
วัสดุ
วัสดุ
วัสดุ
วัสดุ

วัสดุที่จำเป็นทั้งหมดสำหรับโครงการนี้สามารถซื้อได้ที่ร้านค้าออนไลน์: DFRobot

สำหรับโครงการนี้เราต้องการ:

-Arduino Uno (คุณยังสามารถใช้ MEGA 2560)

- เซ็นเซอร์สัมผัส capacitive ดิจิตอล V2 4x

-ดิจิตอลเซ็นเซอร์การสั่นสะเทือน V2 1x

- โมดูลออดดิจิตอล 1x

-จอLCD 20x4

- ไฟ LED บางดวง

-4 Channel Relay Shield สำหรับ Arduino

-สายจัมเปอร์(มีเยอะ)

-เขียงหั่นขนม

-9V แบตเตอรี่

- ที่ใส่แบตเตอรี่

หากคุณต้องการควบคุมไฟหรืออะไรทำนองนั้น คุณสามารถใช้ Relay Shield สำหรับ Arduino ได้

ฉันยังสร้างที่อยู่อาศัยสำหรับนาฬิกาปลุกนี้ ดังนั้นคุณจะต้องใช้ SolidWorks หรือโปรแกรมอื่นที่คล้ายคลึงกัน แน่นอน คุณจะต้องใช้เครื่องพิมพ์ 3 มิติด้วย หากคุณไม่มีเครื่องพิมพ์ 3D คุณยังสามารถใช้กล่องเชื่อมต่อไฟฟ้าแบบปิดผนึกบนพื้นผิวหรือสิ่งที่คล้ายกันได้

ขั้นตอนที่ 2: โมดูล

โมดูล
โมดูล
โมดูล
โมดูล
โมดูล
โมดูล
โมดูล
โมดูล

สำหรับโครงการนี้ ฉันใช้โมดูลที่แตกต่างกันสามโมดูล การเชื่อมต่อโมดูลเหล่านั้นกับ Arduino ทำได้ง่ายมาก เนื่องจากมีการออกแบบการเชื่อมต่อที่ดีมาก คุณได้รับสายเชื่อมต่อในแพ็คเกจพร้อมโมดูล (สามารถเห็นได้ในภาพ)

โมดูลเซ็นเซอร์การสั่นสะเทือนแบบดิจิตอล

โมดูลเซ็นเซอร์นี้ใช้งานง่ายมากและสนุกกับการเล่น ความไวของมันสูงมาก ดังนั้นคุณไม่จำเป็นต้องเขย่าแรงๆ สะบัดเล็กน้อยจะเพียงพอ

ข้อมูลจำเพาะ:

  • ประเภท IO: ดิจิตอล
  • เปลี่ยนชีวิต: สูงถึง 10 ล้านวินาที
  • ความต้านทานวงจรเปิด: 10Mohm
  • แรงดันไฟ: 3.3V ถึง 5V
  • อินเทอร์เฟซ: Digital
  • ขนาด:22x30 มม. (0.87 x 1.18 นิ้ว)

โมดูลเซ็นเซอร์สัมผัส capacitive ดิจิตอล

หากคุณไม่ชอบปุ่มกดแบบธรรมดา คุณสามารถใช้โมดูลเซ็นเซอร์สัมผัสแบบ capacitive นี้ได้ พวกมันมีเวลาตอบสนองที่รวดเร็วมาก พื้นที่สัมผัสขนาดใหญ่ทั้งสองด้าน

ข้อมูลจำเพาะ:

  • แรงดันไฟ: 3.3V ถึง 5V
  • อินเทอร์เฟซ: Digital
  • ขนาด:22x30 มม. (0.87 x 1.18 นิ้ว)

โมดูลออดดิจิตอล

ง่ายมากและในกรณีส่วนใหญ่โมดูลออดที่น่ารำคาญมาก

ข้อมูลจำเพาะ:

  • ประเภท: ดิจิตอล
  • แหล่งจ่ายไฟ: 5VDC

หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับโมดูลนี้ คุณสามารถไปที่: DFRobot Product Wiki

ขั้นตอนที่ 3: ที่อยู่อาศัยปลุก

ที่อยู่อาศัยปลุก
ที่อยู่อาศัยปลุก
ที่อยู่อาศัยปลุก
ที่อยู่อาศัยปลุก
ที่อยู่อาศัยปลุก
ที่อยู่อาศัยปลุก

ฉันสร้างเคสพิมพ์ 3 มิติสำหรับนาฬิกาปลุกนี้

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

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

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

ขนาด:

150x60x120mm

ตัวเรือนทำจากพลาสติก PLA มีผนังกว้าง 3 มม. ซึ่งเพียงพอสำหรับที่อยู่อาศัย ช่องเปิดที่ใหญ่ที่สุดสำหรับจอ LCD รูเล็กๆ ข้างจอ LCD คือช่องสำหรับ LED ที่ด้านล่างมีช่องสำหรับโมดูลสัมผัสและโมดูลออด ทางด้านขวายังมีช่องเปิดอีกหนึ่งช่องสำหรับโมดูลสัมผัส คุณสามารถยึดตัวเรือนนี้เข้ากับผนังหรือประตูได้

ขั้นตอนที่ 4: การเดินสายไฟ

การเดินสายไฟ
การเดินสายไฟ

มีองค์ประกอบที่แตกต่างกันมากมายในโปรเจ็กต์นี้ ดังนั้นคุณจึงต้องระมัดระวังในการเชื่อมต่อให้ถูกต้อง

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

โมดูลเซ็นเซอร์สัมผัส:

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

โมดูลนี้มีสามพิน (5V+, GND, OUTPUT)

คุณเชื่อมต่อสายสีแดงกับ 5V+ และสายสีดำกับ GND สายสีเขียวไปที่ขาดิจิตอลบน Arduino (คุณยังสามารถใช้สีต่างๆ กันได้ แต่จะง่ายกว่าสำหรับคุณและจัดการได้ง่ายขึ้นหากคุณใช้สีนี้)

สำหรับโครงการนี้:

  • โมดูลสำหรับการลดลงเชื่อมต่อกับขาดิจิตอล 8
  • โมดูลสำหรับการเพิ่มขึ้นเชื่อมต่อกับพินดิจิตอล 9
  • โมดูลสำหรับเลือกโปรแกรมเชื่อมต่อกับขาดิจิตอล 10
  • โมดูลสำหรับเปิดใช้งานการเตือนเชื่อมต่อกับพินดิจิตอล 11

เซ็นเซอร์การสั่นสะเทือนแบบดิจิตอล:

โมดูลนี้มีสามพิน (5V+, GND, OUTPUT)

โมดูลเชื่อมต่อกับขาดิจิตอล3

โมดูลออด:

โมดูลนี้มีสามพิน (5V+, GND, OUTPUT)

โมดูลเชื่อมต่อกับพินดิจิตอล 13

จอ LCD:

จอแสดงผลมีสี่พิน (Vcc, GND, SCL, SDA):

เชื่อมต่อ Vcc กับ 5V+, GND ถึง GND บนขา Arduino, SCL และ SDA บนจอแสดงผลไปยังขา SLC และ SDA บน Arduino

นำ:

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

  • LED สีเขียวเชื่อมต่อกับพินดิจิตอล 4 (เปิดเมื่อเปิดใช้งานการเตือน)
  • LED สีเหลืองเชื่อมต่อกับพินดิจิตอล 5 (เปิดเมื่อปิดการเตือน)
  • LED สีแดงเชื่อมต่อกับพินดิจิตอล 12 (กะพริบหากคุณเลือกโปรแกรมที่ถูกต้องและหากคุณเขย่าเซ็นเซอร์การสั่นสะเทือน)
  • ไฟ LED สีขาวเชื่อมต่อกับพินดิจิตอล 2 (เปิดเมื่อปิดการเตือนเพื่อให้คุณเห็นโมดูลสัมผัส)

โมดูลและไฟ LED มาจาก Arduino ดังนั้นคุณเพียงแค่เชื่อมต่อพิน Vcc ทั้งหมดกับ 5V บน Arduino และพิน GND ทั้งหมดกับ GND บน Arduino Arduino มีพิน 5V และ GND ไม่เพียงพอ ดังนั้นคุณต้องใช้เขียงหั่นขนม

คุณสามารถจัดหา Arduino ด้วยแบตเตอรี่ 9V หรืออะแดปเตอร์ที่เหมาะสม การเปิดเครื่องด้วยแบตเตอรี่ 9V จะทำให้คุณมีความคล่องตัวมากขึ้น แต่คุณจะต้องเปลี่ยนใหม่หลังจากผ่านไประยะหนึ่ง

หากคุณต้องการควบคุมอุปกรณ์ไฟฟ้ากระแสสลับ คุณจะต้องเชื่อมต่อโมดูลรีเลย์

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

รหัส
รหัส
รหัส
รหัส

รหัสจะยาวขึ้นเล็กน้อย และถ้าคุณไม่คุ้นเคยกับการเขียนโปรแกรม คุณอาจหลงทางได้ง่ายมาก

ฉันใช้โปรแกรมย่อยเพราะสิ่งนี้ทำให้โปรแกรมจัดการได้ง่ายขึ้น

ดังนั้นแนวคิดของโปรแกรมก็คือ:

  • คุณสามารถเลือกระยะเวลาปลุก (1-15 วินาทีกับ 5 ช่วงเวลา)
  • คุณสามารถเลือกโปรแกรมได้ (สำหรับโปรแกรม ฉันหมายถึงความเป็นไปได้ต่างๆ ในการที่นาฬิกาปลุกจะดับลง คุณสามารถเลือกได้ว่าจะให้เปิดเฉพาะออด ออดที่รวมกับ LED ติดสว่าง หรือเพียงแค่ LED ติดสว่าง)
  • คุณสามารถเปิดและปิดการเตือนได้ (ซึ่งจะแสดงด้วยไฟ LED โดยมีสีเขียวและสีเหลือง)
  • และทุกอย่างจะแสดงบนจอ LCD คุณมีความเป็นไปได้มากมายสำหรับสิ่งที่คุณต้องการแสดงบนจอ LCD
  • ดังนั้นเมื่อคุณเขย่า สัญญาณเตือนเซ็นเซอร์สั่นสะเทือนจะดับลง แต่ขึ้นอยู่กับโปรแกรมที่คุณเลือก

ดังนั้น หากคุณรู้วิธีใช้ if statement และหากคุณรู้จักการควบคุมสำหรับ LCD display(lcd.clear, lcd.setCursor(x, y)…) โปรแกรมนี้ไม่น่าจะเข้าใจยาก

แนะนำ: