ข้ามไปที่เนื้อหาหลัก

11 ARDUINO - เทอร์โมมิเตอร์ LED แบบแอนะล็อก

ARDUINO - เทอร์โมมิเตอร์ LED แบบแอนะล็อก



บทนำ: Arduino - เทอร์โมมิเตอร์ LED แบบอะนาล็อก

รูปภาพของ Arduino - เครื่องวัดอุณหภูมิ LED แบบแอนะล็อก
ตอนแรกผมคิดว่าโครงการนี้อาจจะมีพื้นฐานในการแชร์กับ Instructables แต่ผมรู้แล้วว่ามีพื้นที่สำหรับการเรียนรู้ในทุกระดับทักษะ ฉันหวังว่าคุณจะสนุกกับมัน. 

หลังจากอ่านหนังสือหลายเล่มและทดลองบทเรียนหลายเรื่องแล้วฉันตัดสินใจว่าถึงเวลาที่จะใช้สิ่งที่ฉันได้เรียนรู้และสร้างโครงการ "เริ่มต้น" จาก Arduino เป็นครั้งแรก ฉันต้องการให้มันง่าย แต่ยังมีโอกาสที่จะลองใช้เทคนิคการเขียนโค้ดใหม่ ๆ ที่ฉันได้เรียนรู้ 

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





ขั้นที่ 1: อะไหล่ที่ฉันใช้

1- Arduino UNO 
1- เขียงหั่นขนม
1- Protoshield (อุปกรณ์เสริม) 
1- TMP36 เซ็นเซอร์อุณหภูมิ
16- 10mm, ไฟ LED พร่าเลนส์ (สีฟ้า, สีเขียว, สีเหลือง, สีแดง) 
16 330 โอห์ม 1 / 4W ต้านทาน
2- 74HC595 เปลี่ยนแปลงการลงทะเบียนของวงจรรวม
สายจัมเปอร์




ขั้นที่ 2: การประกอบ

รูปภาพของแอสเซมบลี
การพิจารณาที่สำคัญอย่างหนึ่งเมื่อเริ่มการชุมนุมคือการรับไฟ LED ทั้งหมด 16 ดวงให้พอดีกับการเว้นระยะห่างอย่างสม่ำเสมอบนกระดานทำบอร์ด ฉันพบว่าฉันมีห้องเพียงพอที่จะพอดีกับพวกเขาบนเมนบอร์ด 4 "x6" ของฉันที่มีไฟ LED บนและล่างเอนตัวเล็กน้อยด้านนอก หลังจากนั้นก็เป็นเพียงเรื่องของการวางองค์ประกอบอื่น ๆ ในสถานที่ที่สะดวกและตรรกะเพื่ออำนวยความสะดวกการเชื่อมต่อสายจัมเปอร์มาก เพียงเชื่อมต่อทุกอย่างตามที่แสดงในแผนภาพ Fritzing และ / หรือตามความคิดเห็นในร่าง

ฉันรู้สึกกังวลเล็กน้อยเกี่ยวกับการใช้พลังงานในกรณีที่ไฟ LED ทั้ง 16 ดวงสว่างขึ้นในเวลาเดียวกัน เอาท์พุท 5v บน Arduino มีคะแนนสูงสุด 500ma พิจารณา resistors ฉันเลือกฉันประเมินว่าจอแสดงผลควรใช้น้อยกว่า 300ma. แต่ฉันไม่เคยคิดที่จะวัดได้จริงเมื่อโครงการเสร็จสิ้น กำลังไฟ LED แต่ละดวงลอดผ่านหมุดในชิปที่เปลี่ยนลงเพื่อให้อาร์เรย์เต็มรูปแบบจากขาออกของ Arduino ไม่เป็นปัญหา 

หมายเหตุ: การใช้ protoshield เป็นตัวเลือก คุณสามารถเชื่อมต่อ TMP36 กับ breadboard ได้อย่างง่ายดาย (ตามที่แสดงในแผนภาพ Fritzing) ฉันเพิ่งพบว่าสะดวกในการแยกการแสดงผลและการตรวจจับบางส่วนของโครงการ

หลังจากที่ฉันได้ทำงานฮาร์ดแวร์ฉันคิดค้นตัวอย่างแม่แบบอาจจะใส่รอบ LEDs เพื่อแสดงพร้อมกับสีอุณหภูมิที่ถูกรู้สึก (ไฟล์ PDF)





ขั้นที่ 3: ร่าง Arduino

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

ฉันต่อสู้กับวิธีที่สง่างามมากขึ้นในการกำหนดจุดตัดอุณหภูมิสำหรับแต่ละ LED จะได้รับการทดสอบ แต่ในที่สุดก็ยอมรับความพ่ายแพ้และไปกับรายการ IF-ELSE IF ที่ยาวนาน ฉันตระหนักว่าในกรณีที่มีไฟ LED ทั้งหมดหรือไม่มีไฟคุณจะไม่สามารถบอกได้ว่าอุณหภูมิอยู่ที่หรือดีกว่าขีด จำกัด ที่กำหนดเท่านั้น ดังนั้นจึงมีการทดสอบที่จะกระพริบทั้งบนหรือล่าง LED เพื่อแสดงว่าการอ่านเซ็นเซอร์อยู่นอกช่วงของจอแสดงผล สุดท้าย (ส่วนใหญ่เป็นเพราะชอบดูฉูดฉาด, thingys LED) ผมเพิ่มการทดสอบตัวเองของการแสดงผลที่ไฟขึ้นที่ไฟ LED ทั้งหมดในลำดับ









ขั้นตอนที่ 4: ข้อสรุป

ตอนแรกฉันสร้างโครงการนี้ขึ้นมาเมื่อปีที่แล้วและยาวนานนับตั้งแต่ถอดชิ้นส่วน ในการหวนกลับผมมีความคิดและความเข้าใจเพิ่มเติมดังนี้:



- ควรจะเพิ่มตัวควบคุมการหรี่แสงลงบนจอแสดงผลโดยการใช้สัญญาณ PWM ไปยังหมุด OE ของรีจิสเตอร์ ความสว่างของจอแสดงผลสามารถปรับได้ด้วยตนเองโดยใช้โพเทนชิออมิเตอร์หรือโดยอัตโนมัติด้วยกล้องเซลล์แสงอาทิตย์ 

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

- บางทีสักวันหนึ่งฉันจะทบทวนปัญหาอื่น ๆ หากเป็นเช่นนั้น บางทีบางส่วนของคุณ coders ผู้เชี่ยวชาญออกมีสามารถโยนฉัน :-) กระดูก

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

Flowchart

12เครื่องวัดความเร็วอะนาล็อกใช้ Arduino และเซ็นเซอร์ IR

10อัลตราโซนิกเซนเซอร์ตรวจจับระยะไกลใน ARDUINO พร้อม TINKERCAD