สารบัญ:
- ขั้นตอนที่ 1: สร้างแผนผัง
- ขั้นตอนที่ 2: การเข้ารหัส
- ขั้นตอนที่ 3: การทดสอบและการบัดกรี
- ขั้นตอนที่ 4: การสาธิต
วีดีโอ: พัดลมควบคุมอุณหภูมิ !: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
การใช้ชีวิตในประเทศเขตร้อนอย่างสิงคโปร์ การมีเหงื่อออกทั้งวันเป็นเรื่องที่น่าหงุดหงิด แต่ในขณะเดียวกัน คุณจำเป็นต้องจดจ่อกับการเรียนหรือทำงานในสภาพแวดล้อมที่อบอ้าวเช่นนี้ เพื่อให้อากาศไหลเวียนและทำให้ตัวเองเย็นลง ผมได้แนวคิดเรื่องพัดลมควบคุมอุณหภูมิซึ่งจะเปิดโดยอัตโนมัติเมื่ออุณหภูมิถึง 25 องศาเซลเซียส (นั่นคือเวลาที่คนส่วนใหญ่เริ่มรู้สึกร้อน) และความเร็วของพัดลมก็เพิ่มขึ้นและนำมาซึ่ง ลมแรง 30 องศาเซลเซียส
ส่วนประกอบที่จำเป็น:
1. Arduino Uno หนึ่งตัว
2. One Temperature Sensor (TMP36 ที่มีเอาต์พุตแบบอะนาล็อก)
3. ทรานซิสเตอร์ TIP110 หนึ่งตัว
4. มอเตอร์ DC 6V หนึ่งตัวพร้อมใบพัดลม
5. หนึ่งไดโอด (1N4007)
6. ไฟ LED หนึ่งดวง
7.ตัวต้านทานสองตัว (220Ohm และ 330Ohm)
พาวเวอร์ซัพพลาย 8.6V
ขั้นตอนที่ 1: สร้างแผนผัง
นี่คือแผนผังที่ฉันสร้างขึ้นสำหรับโครงการนี้โดยใช้ Eagle
วงจรเซ็นเซอร์อุณหภูมิให้อินพุตแบบอะนาล็อกโดยพิจารณาจากการเปิดมอเตอร์และเปลี่ยนความเร็ว ดังที่แสดงในเลย์เอาต์พินด้านบน pin1 ควรเชื่อมต่อกับแหล่งจ่ายไฟ เนื่องจาก TMP36 ทำงานได้ดีภายใต้แรงดันไฟฟ้า 2.7V ถึง 5.5V (จากแผ่นข้อมูล) 5V จากบอร์ด Arduino ก็เพียงพอที่จะจ่ายไฟให้กับเซ็นเซอร์อุณหภูมิ พิน 2 ส่งออกค่าแรงดันแอนะล็อกไปที่พิน A0 ใน Arduino ซึ่งเป็นสัดส่วนเชิงเส้นกับอุณหภูมิเซนติเกรด ในขณะที่ Pin3 เชื่อมต่อกับ GND ใน Arduino
ตามอุณหภูมิที่ตรวจพบ พิน PWM 6 จะ "ส่งออกแรงดันไฟฟ้าที่แตกต่างกัน" (แรงดันไฟฟ้าที่ต่างกันทำได้โดยการเปิดและปิดสัญญาณซ้ำๆ) ไปยังฐานของทรานซิสเตอร์ TIP110 R1 ใช้เพื่อจำกัดกระแสดังนั้นจึงไม่เกินกระแสฐานสูงสุด (สำหรับ TIP110 คือ 50mA ตามตารางข้อมูล) แหล่งจ่ายไฟภายนอก 6V แทน 5V จาก Arduino ใช้สำหรับจ่ายไฟให้กับมอเตอร์ขนาดใหญ่ กระแสที่มอเตอร์ดึงออกมาอาจทำลาย Arduino ทรานซิสเตอร์ที่นี่ยังทำหน้าที่เป็นบัฟเฟอร์เพื่อแยกวงจรมอเตอร์ออกจาก Arduino ด้วยเหตุผลเดียวกัน (ป้องกันกระแสดึงโดยมอเตอร์เพื่อทำให้ Arduino เสียหาย) มอเตอร์จะหมุนด้วยความเร็วต่างกันด้วยแรงดันไฟฟ้าที่ต่างกัน ไดโอดที่เชื่อมต่อกับมอเตอร์จะทำหน้าที่กระจายแรงเคลื่อนไฟฟ้าเหนี่ยวนำที่เกิดจากมอเตอร์ในขณะที่เราเปิดและปิดพัดลม เพื่อป้องกันทรานซิสเตอร์ไม่ให้เกิดความเสียหาย (การเปลี่ยนแปลงอย่างกะทันหันของกระแสจะทำให้แรงเคลื่อนไฟฟ้าย้อนกลับซึ่งอาจทำให้ทรานซิสเตอร์เสียหายได้)
พินดิจิตอล 8 เชื่อมต่อกับ LED ซึ่งจะสว่างขึ้นเมื่อพัดลมหมุน ตัวต้านทาน R2 ที่นี่ใช้สำหรับจำกัดกระแส
หมายเหตุ*: ส่วนประกอบทั้งหมดในวงจรใช้กราวด์เดียวกัน ดังนั้นจึงมีจุดอ้างอิงทั่วไป
ขั้นตอนที่ 2: การเข้ารหัส
ความคิดเห็นในการเขียนโค้ดของฉันได้อธิบายทุกขั้นตอนแล้ว ต่อไปนี้เป็นข้อมูลเพิ่มเติม
ส่วนแรกของการเข้ารหัสของฉันคือการกำหนดตัวแปรและหมุดทั้งหมด (รูปแรก):
บรรทัดที่ 1: อุณหภูมิถูกกำหนดให้ลอยเพื่อให้แม่นยำยิ่งขึ้น
บรรทัดที่ 3 และบรรทัดที่ 4: อุณหภูมิต่ำสุดที่เปิดพัดลมสามารถปรับให้เป็นค่าอื่นๆ ได้ เช่นเดียวกับ "tempHigh" ที่พัดลมหมุนเร็วขึ้น
บรรทัดที่ 5: พินพัดลมสามารถเป็นพิน PWM ใดก็ได้ (พิน 11, 10, 9, 6, 5, 3)
ส่วนที่สองของการเข้ารหัสของฉันคือการควบคุมวงจรทั้งหมด (ภาพที่สอง):
บรรทัดที่ 3 และบรรทัดที่ 4: ตัวแปลงแอนะล็อกเป็นดิจิทัลใน Arduino รับค่าของสัญญาณแอนะล็อกจาก analogRead () และส่งกลับค่าดิจิทัลตั้งแต่ 0-1023 (10 บิต) ในการแปลงค่าดิจิตอลเป็นอุณหภูมิ จะหารด้วย 1024 และคูณด้วย 5 V เพื่อคำนวณแรงดันไฟขาออกดิจิตอลจากเซ็นเซอร์อุณหภูมิ
Line5 & Line 6: ตามแผ่นข้อมูลของ TMP36 มีแรงดันไฟฟ้าชดเชย 0.5V ดังนั้น 0.5v จะถูกลบออกจากแรงดันไฟฟ้าดิจิตอลดั้งเดิมเพื่อรับแรงดันเอาต์พุตจริง สุดท้าย เราคูณแรงดันไฟฟ้าจริงด้วย 100 เนื่องจาก TMP36 มีสเกลแฟกเตอร์ที่ 10mV/องศาเซลเซียส (1/(10mV/องศาเซลเซียส))=100องศาเซลเซียส/V.
Line 18 & Line24: PWM Pin แรงดันเอาต์พุตตั้งแต่ 0-5V แรงดันไฟฟ้านี้กำหนดโดยรอบการทำงานตั้งแต่ 0-255 โดยมีค่า 0 แทน 0% และ 255 คิดเป็น 100% ดังนั้น "80" และ "255" นี่คือความเร็วพัดลม
ขั้นตอนที่ 3: การทดสอบและการบัดกรี
หลังจากร่างแผนผังและการเข้ารหัสแล้วก็ถึงเวลาทดสอบวงจรบนเขียงหั่นขนม!
ต่อวงจรตามที่แสดงในแผนผัง
ฉันใช้แบตเตอรี่ 9V ในระหว่างเฟสนี้ซึ่งไม่เหมาะกับมอเตอร์ DC 6V แต่ควรเชื่อมต่อเข้าด้วยกันในช่วงเวลาสั้นๆ ระหว่างการสร้างต้นแบบจริง ฉันใช้แหล่งจ่ายไฟภายนอกเพื่อจ่ายไฟให้กับมอเตอร์ 6V หลังจากทดสอบแล้ว แสดงว่าวงจรทำงานได้ดี ถึงเวลาบัดกรีพวกมันบนกระดาน!
ก่อนบัดกรีวงจร…
เป็นการดีที่จะวาดวงจรบนแผ่นการวางแผนเลย์เอาต์ Stripboard เพื่อวางแผนตำแหน่งที่จะวางส่วนประกอบและตำแหน่งที่จะเจาะรู จากประสบการณ์ของผม การบัดกรีจะง่ายกว่าเมื่อคุณทิ้งคอลัมน์ไว้ระหว่างการบัดกรีสองครั้ง
เมื่อบัดกรี…
โปรดใช้ความระมัดระวังเกี่ยวกับส่วนประกอบที่มีขั้ว ในวงจรนี้จะเป็นหลอด LED ที่มีขายาวเป็นขั้วบวกและไดโอดที่มีส่วนสีเทาเป็นขั้วลบ ควรพิจารณาพินเอาต์ของทรานซิสเตอร์ TIP110 และเซ็นเซอร์อุณหภูมิ TMP36 ด้วย
ขั้นตอนที่ 4: การสาธิต
ในการทำให้วงจรทั้งหมดเรียบร้อยและไม่เลอะเทอะ ฉันใช้ส่วนหัวระหว่างตัวเมียกับตัวผู้เพื่อวางสตริปบอร์ดบน Arduino ในขณะที่เชื่อมต่อกับพินใน Arduino ฉันยังพิมพ์ 3D ที่ยึดพัดลมเพื่อจับพัดลม โดยแนบไฟล์ stl ไว้ด้านล่าง ในระหว่างการสาธิต ฉันใช้แหล่งจ่ายไฟภายนอกเนื่องจากแบตเตอรี่ 9V ของฉันไม่ทำงาน
วิดีโอสาธิตขั้นสุดท้ายแนบมาด้านบน ขอบคุณที่รับชม!
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง