สารบัญ:
- ขั้นตอนที่ 1: มันทำงานอย่างไร
- ขั้นตอนที่ 2: สิ่งที่ฉันใช้
- ขั้นตอนที่ 3: คดี
- ขั้นตอนที่ 4: อุปกรณ์อิเล็กทรอนิกส์
- ขั้นตอนที่ 5: รหัส
- ขั้นตอนที่ 6: บทสรุป
วีดีโอ: การควบคุมอุณหภูมิด้วยพัดลม Arduino และ PWM: 6 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
การควบคุมอุณหภูมิด้วย PID บนพัดลม Arduino และ PWM สำหรับเซิร์ฟเวอร์ DIY / ชั้นวางเครือข่ายระบายความร้อน
เมื่อไม่กี่สัปดาห์ก่อน ฉันต้องติดตั้งแร็คที่มีอุปกรณ์เครือข่ายและเซิร์ฟเวอร์สองสามเครื่อง
ชั้นวางวางอยู่ในโรงรถแบบปิด ดังนั้นช่วงอุณหภูมิระหว่างฤดูหนาวและฤดูร้อนจึงค่อนข้างสูง และฝุ่นก็อาจเป็นปัญหาได้เช่นกัน
ขณะท่องอินเทอร์เน็ตเพื่อหาวิธีแก้ปัญหาการระบายความร้อน ฉันพบว่ามันค่อนข้างแพง อย่างน้อยก็มากกว่า 100 ยูโรสำหรับพัดลมติดเพดาน 230V จำนวน 4 ตัวที่มีตัวควบคุมอุณหภูมิ ฉันไม่ชอบตัวขับเทอร์โมสตัทเพราะมันดูดฝุ่นจำนวนมากเมื่อเปิดเครื่อง เนื่องจากพัดลมทำงานเต็มกำลัง และไม่มีการระบายอากาศเลยเมื่อไม่ได้จ่ายไฟ
ด้วยความไม่พอใจกับผลิตภัณฑ์เหล่านี้ ฉันจึงตัดสินใจใช้วิธี DIY โดยสร้างสิ่งที่สามารถรักษาอุณหภูมิไว้ได้อย่างราบรื่น
ขั้นตอนที่ 1: มันทำงานอย่างไร
เพื่อให้สิ่งต่าง ๆ ง่ายขึ้นมาก ฉันจึงเลือกพัดลม DC: พวกมันมีเสียงดังน้อยกว่าพัดลม AC มากในขณะที่เป่าแรงน้อยกว่าเล็กน้อย แต่ก็ยังมากเกินพอสำหรับฉัน
ระบบใช้เซ็นเซอร์อุณหภูมิเพื่อควบคุมพัดลมสี่ตัวที่ขับเคลื่อนด้วยคอนโทรลเลอร์ Arduino Arduino ควบคุมความเร็วพัดลมโดยใช้ตรรกะ PID และขับเคลื่อนผ่าน PWM
อุณหภูมิและความเร็วพัดลมจะรายงานผ่านจอแสดงผล 7 ส่วน 8 หลัก ซึ่งติดตั้งบนแท่งอะลูมิเนียมแบบแร็ค นอกจากจอแสดงผลแล้ว ยังมีปุ่มสองปุ่มสำหรับปรับอุณหภูมิเป้าหมาย
ขั้นตอนที่ 2: สิ่งที่ฉันใช้
หมายเหตุ: ฉันพยายามทำให้โครงการนี้เป็นจริงด้วยสิ่งที่ฉันมีอยู่ในบ้าน ดังนั้นไม่ใช่ว่าทุกอย่างจะสมบูรณ์แบบได้ งบประมาณเป็นเรื่องที่น่ากังวล
นี่คือส่วนประกอบที่ฉันใช้:
-
ฮาร์ดแวร์
- แผงอะครีลิคหนึ่งแผ่น: ใช้เป็นฐาน (€ 1.50);
- โปรไฟล์ PVC รูปตัว L ขนาด 3.6x1 ซม. สี่รูป (€ 4.00);
- แผงอะลูมิเนียมหนึ่งแผ่น: ตัดที่ความกว้าง 19 นิ้ว (3.00 ยูโร)
-
อิเล็กทรอนิกส์
- พัดลม PWM ขนาด 120 มม. สี่ตัว: ฉันไปสำหรับ Arctic F12 PWM PST เพราะความสามารถในการซ้อนแบบขนาน (4x € 8.00);
- One Pro Micro: บอร์ดที่ขับเคลื่อนด้วย ATMega 32u4 ควรทำงานได้ดีกับรหัสของฉัน (€ 4.00);
- บอร์ดรีเลย์หนึ่งแผง: เพื่อปิดพัดลมเมื่อไม่ต้องการ (€ 1.50);
- โมดูลแสดงผล MAX7219 7 หลัก 8 หลัก 8 หลัก (€ 2.00);
- ปุ่มกดชั่วคราวสามปุ่ม 1 ปุ่มสำหรับรีเซ็ต (€ 2.00);
- สวิตช์ไฟ 3A หนึ่งตัว (€ 1.50);
- ตัวต่อสาย LAN หนึ่งตัว: เพื่อถอดส่วนประกอบหลักเข้ากับแผงแสดงผลได้อย่างง่ายดาย (€ 2.50);
-
แหล่งจ่ายไฟออกคู่ 5V และ 12V หนึ่งตัว: คุณสามารถใช้ PSU แยกกัน 2 ตัวหรือ 12V พร้อมตัวแปลงสเต็ปดาวน์เป็น 5V (€ 15.00);
- สายเคเบิล สกรู และส่วนประกอบย่อยอื่นๆ (€ 5.00);
ค่าใช้จ่ายทั้งหมด: € 74.00 (ถ้าฉันต้องซื้อส่วนประกอบทั้งหมดใน Ebay/Amazon)
ขั้นตอนที่ 3: คดี
ตัวเรือนทำจากโปรไฟล์พลาสติกรูปตัว L บาง 4 ชิ้นติดกาวและตรึงบนกระดานอะคริลิก
ส่วนประกอบทั้งหมดของกล่องติดกาวด้วยอีพ็อกซี่
อะครีลิกตัดรูขนาด 120 มม. สี่รูเพื่อให้พอดีกับพัดลม เจาะรูเพิ่มเติมเพื่อให้สายเทอร์โมมิเตอร์ผ่านได้
แผงด้านหน้ามีสวิตช์เปิดปิดพร้อมไฟแสดงสถานะ ทางด้านซ้าย รูสองรูช่วยให้สายที่แผงด้านหน้าและสาย USB หลุดออก มีการเพิ่มปุ่มรีเซ็ตเพิ่มเติมเพื่อให้ตั้งโปรแกรมได้ง่ายขึ้น (Pro Micro ไม่มีปุ่มรีเซ็ต และบางครั้งก็มีประโยชน์ในการอัปโหลดโปรแกรมลง)
กล่องถูกยึดด้วยสกรู 4 ตัวผ่านรูที่ฐานอะคริลิก
แผงด้านหน้าทำจากแผงอะลูมิเนียมขัดเงา ตัดที่ความกว้าง 19 นิ้ว และสูงประมาณ 4 ซม. รูแสดงผลทำด้วย Dremel และอีก 4 รูสำหรับสกรูและปุ่มทำด้วยสว่าน
ขั้นตอนที่ 4: อุปกรณ์อิเล็กทรอนิกส์
แผงควบคุมค่อนข้างเรียบง่ายและกะทัดรัด ในระหว่างการทำโปรเจ็กต์ ฉันพบว่าเมื่อฉันจ่าย 0% PWM ให้กับพัดลม พัดลมจะทำงานด้วยความเร็วเต็มที่ เพื่อป้องกันไม่ให้พัดลมหมุนอย่างสมบูรณ์ ฉันได้เพิ่มรีเลย์ที่จะปิดพัดลมเมื่อไม่ต้องการ
แผงด้านหน้าเชื่อมต่อกับบอร์ดผ่านสายเคเบิลเครือข่าย ซึ่งสามารถถอดออกได้อย่างง่ายดายจากโครงหลักโดยใช้ตัวต่อสายเคเบิล ด้านหลังของแผงทำจากท่อร้อยสายไฟฟ้าขนาด 2.5x2.5 และยึดกับแผงด้วยเทปกาวสองหน้า จอแสดงผลยังยึดติดกับแผงด้วยเทป
ดังที่คุณเห็นในแผนผัง ฉันใช้ตัวต้านทานแบบดึงขึ้นภายนอกบางตัว สิ่งเหล่านี้ให้การดึงที่แข็งแกร่งกว่าของ Arduino
แผนผัง Fritzing สามารถพบได้ใน GitHub repo ของฉัน
ขั้นตอนที่ 5: รหัส
ข้อมูลจำเพาะของ Intel สำหรับพัดลม 4 พินแนะนำความถี่ PWM เป้าหมาย 25KHz และช่วงที่ยอมรับได้ 21 kHz ถึง 28 kHz ปัญหาคือความถี่เริ่มต้นของ Arduino คือ 488Hz หรือ 976Hz แต่ ATMega 32u4 นั้นสามารถส่งความถี่ที่สูงขึ้นได้อย่างสมบูรณ์แบบ ดังนั้นเราจึงต้องตั้งค่าให้ถูกต้องเท่านั้น ฉันอ้างถึงบทความนี้เกี่ยวกับ PWM ของ Leonardo เพื่อตั้งนาฬิกาตัวจับเวลาที่สี่เป็น 23437Hz ซึ่งใกล้เคียงที่สุดที่สามารถรับได้ที่ 25KHz
ฉันใช้ไลบรารีต่างๆ สำหรับการแสดงผล เซ็นเซอร์อุณหภูมิ และตรรกะ PID
รหัสที่อัปเดตแบบเต็มสามารถพบได้ใน repo GitHub ของฉัน
ขั้นตอนที่ 6: บทสรุป
นี่มันเลย! ฉันต้องรอจนถึงฤดูร้อนนี้จึงจะได้เห็นมันจริง แต่ฉันค่อนข้างมั่นใจว่ามันจะทำงานได้ดี
ฉันกำลังวางแผนที่จะสร้างโปรแกรมเพื่อดูอุณหภูมิจากพอร์ต USB ที่ฉันเชื่อมต่อกับ Raspberry Pi
ฉันหวังว่าทุกอย่างจะเข้าใจ ถ้าไม่แจ้งให้เราทราบและฉันจะอธิบายให้ดีขึ้น
ขอบคุณ!
แนะนำ:
ติดตาม: ศูนย์สื่อขั้นสูงพร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): 3 ขั้นตอน
ติดตาม: Advanced Media Center พร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): บทความนี้เป็นบทความต่อจากบทความก่อนหน้าของฉันที่ประสบความสำเร็จค่อนข้างมากเกี่ยวกับการสร้างศูนย์สื่ออเนกประสงค์ โดยอ้างอิงจาก Raspberry PI ที่ได้รับความนิยมมากในตอนแรก แต่ ในภายหลัง เนื่องจากไม่มีเอาต์พุตที่สอดคล้องกับ HEVC, H.265 และ HDMI 2.2 จึงมีสวิตช์
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
การควบคุมความสว่าง การควบคุม LED ตาม PWM โดยใช้ปุ่มกด Raspberry Pi และ Scratch: 8 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมความสว่าง การควบคุม LED แบบ PWM โดยใช้ปุ่มกด Raspberry Pi และ Scratch: ฉันพยายามหาวิธีที่จะอธิบายว่า PWM ทำงานอย่างไรกับนักเรียนของฉัน ดังนั้นฉันจึงตั้งค่าตัวเองให้พยายามควบคุมความสว่างของ LED โดยใช้ 2 ปุ่ม - ปุ่มหนึ่งเพิ่มความสว่างของ LED และอีกปุ่มหนึ่งหรี่ลง ในการโปรแกรม
RuuviTag และ PiZero W และ Blinkt! เทอร์โมมิเตอร์แบบ Bluetooth Beacon: 3 ขั้นตอน (พร้อมรูปภาพ)
RuuviTag และ PiZero W และ Blinkt! เครื่องวัดอุณหภูมิที่ใช้ Bluetooth Beacon: คำแนะนำนี้อธิบายวิธีการอ่านข้อมูลอุณหภูมิและความชื้นจาก RuuviTag โดยใช้ Bluetooth กับ Raspberry Pi Zero W และเพื่อแสดงค่าเป็นเลขฐานสองบน Pimoroni กะพริบตา! pHAT.หรือเรียกสั้นๆ ว่า จะสร้างสถานะอย่างไร
วิธีการสร้าง Quadcoptor (NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS 3DR Radio และ FlySky TH9X): 25 ขั้นตอน (พร้อมรูปภาพ)
วิธีการสร้าง Quadcoptor (NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS 3DR Radio และ FlySky TH9X): นี่คือบทแนะนำเกี่ยวกับวิธีการสร้าง Quadcopter โดยใช้มอเตอร์ NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS & วิทยุ 3DR ฉันพยายามอธิบายแต่ละขั้นตอนด้วยรูปภาพจำนวนหนึ่ง หากคุณมีคำถามหรือความคิดเห็นใด ๆ โปรดตอบกลับ