สารบัญ:

โอเพ่นซอร์ส Hot Tub Controller: 6 ขั้นตอน
โอเพ่นซอร์ส Hot Tub Controller: 6 ขั้นตอน

วีดีโอ: โอเพ่นซอร์ส Hot Tub Controller: 6 ขั้นตอน

วีดีโอ: โอเพ่นซอร์ส Hot Tub Controller: 6 ขั้นตอน
วีดีโอ: How To Series | How to use your control panel overview 2024, กรกฎาคม
Anonim
โอเพ่นซอร์ส Hot Tub Controller
โอเพ่นซอร์ส Hot Tub Controller

ฉันพบอ่างน้ำร้อนมือสองทางออนไลน์ ซึ่งมีอายุสองสามปีแล้ว และฉันตัดสินใจว่าจะทำโปรเจ็กต์เจ๋งๆ ออกมาได้ การควบคุมในตัวนั้นน่ารำคาญและใช้เวลานานอยู่แล้ว นั่นเป็นเหตุผลที่ทำให้ฉันต้องแก้ไขเพิ่มเติม เพื่อเป็นการประหยัดพลังงาน ฉันลดอุณหภูมิของสระเมื่อไม่ได้ใช้งาน แต่ถ้าฉันต้องการใช้อ่างน้ำร้อน ฉันต้องปรับอุณหภูมิให้สูงขึ้น 4 ชั่วโมงล่วงหน้า ตัวอย่างของสิ่งที่ฉันหมายถึงโดยพูดว่าน่ารำคาญ: เพื่อเป็นการประหยัดพลังงาน ฉันต้องลดอุณหภูมิของสระเมื่อไม่ได้ใช้งาน แต่ถ้าฉันต้องการใช้อ่างน้ำร้อน ฉันต้องเพิ่มอุณหภูมิล่วงหน้า 4 ชั่วโมง อีกสิ่งที่เกิดขึ้นคือปั๊มหมุนเวียนตัดสินใจที่จะเปิดแบบสุ่มในตอนกลางคืน - ที่อาจอยู่ภายใต้การควบคุมถ้าฉันอ่านคู่มือ แต่ในฐานะคนจรจัด ฉันชอบฉีกการควบคุมและใช้ Raspberry Pi แทน - นี่คือบทความของฉัน "ตัวควบคุมอ่างน้ำร้อนแบบโอเพ่นซอร์ส"

ขั้นตอนที่ 1: คำเตือนด้านความปลอดภัย

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

ขั้นตอนที่ 2: ส่วนประกอบ

ในโครงการนี้ ฉันใช้ UniPi 1.1 แต่ไม่จำเป็นต้องเป็นแบบเดียว คุณสามารถใช้ Raspberry GPIO กับบอร์ดรีเลย์ได้ UniPi มีประโยชน์ในการเชื่อมต่อแบบ 1-Wire เช่นกัน เทอร์มินัล รางยึด และช่องเก็บสายไฟที่ฉันใช้นั้นไม่จำเป็นแต่ทำให้ตู้ดูสะอาดตา ซึ่งสามารถลดความซับซ้อนได้โดยการเดินสายไฟโดยตรง UniPi ต้องการแหล่งจ่ายไฟ 5V ฉันใช้ราง DIN ที่ติดตั้งด้วยกระแสไฟขาออก 3A

ขั้นตอนที่ 3: จัดระเบียบตู้

จัดระเบียบคณะรัฐมนตรี
จัดระเบียบคณะรัฐมนตรี
จัดระเบียบคณะรัฐมนตรี
จัดระเบียบคณะรัฐมนตรี

ฉันไม่ได้นำอุปกรณ์อิเล็กทรอนิกส์คอนโทรลเลอร์ในตัวกลับมาใช้ใหม่ ดังนั้นฉันจึงนำออกทั้งหมด อ่างน้ำร้อนของฉันมีสายไฟดังต่อไปนี้:

  1. ปั๊มหมุนเวียน
  2. ปั๊มเจ็ตส์
  3. โบลเวอร์
  4. เครื่องทำความร้อน
  5. เครื่องผลิตโอโซน
  6. เซ็นเซอร์อุณหภูมิ
  7. เซ็นเซอร์การไหล
  8. จัดหา
  9. 2x สายเคเบิลแสดงผล

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

ขั้นตอนที่ 4: การติดตั้งและเดินสาย

การติดตั้งและเดินสายไฟ
การติดตั้งและเดินสายไฟ
การติดตั้งและเดินสายไฟ
การติดตั้งและเดินสายไฟ
การติดตั้งและเดินสายไฟ
การติดตั้งและเดินสายไฟ
การติดตั้งและเดินสายไฟ
การติดตั้งและเดินสายไฟ

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

เซ็นเซอร์อุณหภูมิในตัวเป็นตัวต้านทานที่ขึ้นกับอุณหภูมิ (PT100) แม้ว่า UniPi จะมีอินพุตแบบอะนาล็อกที่ฉันสามารถวัดความต้านทานได้ แต่ฉันคิดว่าจะทำให้ชีวิตของฉันง่ายขึ้นโดยใช้เซ็นเซอร์อุณหภูมิ 1-Wire แทน

อันดับแรก ฉันติดตั้งท่อร้อยสายไฟ ซ้าย ขวา ด้านบนและตรงกลางตู้

ต่อไป ฉันติดตั้งราง DIN สองราง รางหนึ่งอยู่ตรงกลางระหว่างท่อร้อยสายไฟ และอีกรางหนึ่งอยู่ใต้ท่อร้อยสายไฟตรงกลาง 75 มม. ฉันใช้สกรูยึดตัวเองเพื่อยึดส่วนประกอบทั้งหมด

บนราง DIN ด้านล่าง ฉันติดตั้งเทอร์มินัล รีเลย์ และแหล่งจ่ายไฟ 5V ฉันใช้เทอร์มินอลแบบติดตั้งบนรางที่มีสปริงตึงเพื่อใช้เป็นแคลมป์ ทางด้านซ้ายคือขั้วสำหรับสายจ่าย - 3x สีเทาสำหรับ 3 เฟส - 1x สีน้ำเงินสำหรับสายกลาง - 1x สีเหลือง / สีเขียวสำหรับพื้น

จากนั้นสำหรับสายเคเบิลอื่นๆ ฉันเพิ่มแคลมป์สีเทา น้ำเงิน และเหลือง/เขียว สายเคเบิลบางส่วนในอ่างน้ำร้อนค่อนข้างหนา ฉันอยู่ในยุโรป และที่นั่นเรามีมาตรฐานด้านความหนาของสายเคเบิลที่แตกต่างจากสหรัฐอเมริกา ขั้วต่อต้องสามารถรองรับได้ 6 มม.^2 สำหรับการเชื่อมต่อทั้งหมด

ทางด้านขวาของแคลมป์คือรีเลย์ รีเลย์ภายใน UniPi สามารถสลับได้เพียง 5A ดังนั้นจึงไม่สามารถใช้เพื่อสลับโหลดได้โดยตรง ฉันใช้รีเลย์ไฟฟ้าที่มีแรงดันไฟฟ้าควบคุมกระแสสลับ 230V และตอนนี้การติดตั้งสามารถรองรับกำลังไฟสูงสุด 4kVA

ที่ด้านซ้ายสุดของราง DIN ด้านบน ฉันติดตั้งตัวจ่ายไฟที่มีศักยภาพ 2 ตัว ตัวหนึ่งสำหรับ GND และอีกตัวสำหรับ 12V+ 12V+ มาจาก UniPi ถัดจากนั้น ฉันวาง UniPi 1.1 พร้อมแผ่นยึดสำหรับราง DIN

ฉันโชคดีกับขนาดของตู้ ทุกอย่างลงตัวพอดี ตอนนี้ความสนุกเริ่มต้นขึ้น - มาทำสายไฟกันเถอะ สีลวดไม่ได้มาตรฐาน ฉันใช้สีในลักษณะต่อไปนี้:

  • สีดำ: กำลังไฟ 230V
  • สีแดง: สวิตช์ 230V
  • สีน้ำเงิน: ตัวนำเป็นกลาง
  • สีน้ำเงินเข้ม: 5V หรือ 12V+
  • น้ำเงินเข้ม/ขาว: 5/12V GND
  • เขียว/เหลือง: Earth/Ground

ฉันใช้ปลอกโลหะสำหรับปลายสายทุกอัน ไม่จำเป็นสำหรับแคลมป์ชนิดนี้ แต่มันทำให้ดูสวย ฉันมี 3 เฟส ฟิวส์หลักคือ 16A Typ C ฮีตเตอร์มี 10A ปั๊มจะมีประมาณ 6A แต่ละตัว เลยแบ่งโหลดให้ครบทั้ง 3 เฟส ฉันใช้อันแรกในการจ่ายไฟให้กับหน่วยควบคุม โอโซนและเครื่องเป่าลม เฟสที่สองสำหรับฮีตเตอร์ และอันที่สามสำหรับปั๊ม 2 ตัว

เซ็นเซอร์แม่เหล็กและโฟลว์เป็นดิจิตอล ดังนั้นฉันจึงเชื่อมต่อปลายข้างหนึ่งกับ 12V และอีกข้างหนึ่งเข้ากับอินพุตดิจิตอลตัวใดตัวหนึ่ง เพื่อปรับปรุงการเชื่อมต่อ WiFi ฉันไม่ได้ใช้ฝาโลหะเดิมอีกต่อไป แต่แทนที่ด้วยฝาอะคริลิก

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

ขั้นตอนที่ 5: ระบบปฏิบัติการ

ฉันใช้ nymea เพื่อควบคุม UniPi และ BerryLan สำหรับการตั้งค่า WiFi มีอิมเมจ Raspberry Pi ที่รองรับ UniPi และรวมส่วนประกอบทั้งสองไว้ที่นี่:

ฉันแฟลชการ์ด SD โดยใช้ Etcher.io ใส่ลงใน UniPi แล้วเปิดอ่างน้ำร้อน ฉันต้องทำการเปลี่ยนแปลงเล็กน้อยในระบบปฏิบัติการ ดังนั้นฉันจึงต้องเชื่อมต่อ UniPi กับเครือข่าย WiFi ของฉัน นี่คือสิ่งที่ฉันทำ:

$ ssh nymea@YOUR-IP-ADDRESS-GIVEN-BY-BERRYLAN #password is nymea $ sudo su $ apt-get update $ apt-get install unzip nymea-plugin-unipi $ wget https://github.com/UniPiTechnology/ evok/archive/v… $ unzip v.2.0.7c.zip $ cd evok-v.2.0.7c $ bash install-evok.sh $ > พอร์ตเว็บไซต์ที่จะใช้: >1040 $ > พอร์ต API ที่ใช้: >8080 $ > โมเดลของคุณ: >3 $ > (ติดตั้ง WiFi?) [y/n] n $ sudo รีบูตทันที

โหมดเริ่มต้นสำหรับ BerryLan คือ "ออฟไลน์" ดังนั้นเซิร์ฟเวอร์ BT จะเริ่มทำงานเมื่อ Raspberry Pi ไม่ได้เชื่อมต่อกับเครือข่ายใดๆ

BTW.: ด้วย BerryLan ใครบางคนสามารถตั้งค่า Raspberry ให้อยู่ในโหมดจุดเข้าใช้งาน ดังนั้นไคลเอนต์สามารถเชื่อมต่อโดยตรงกับอ่างน้ำร้อนโดยไม่ต้องใช้เราเตอร์ เอาล่ะ ตอนนี้ระบบปฏิบัติการพร้อมแล้ว และเราสามารถดำเนินการตามขั้นตอนสุดท้ายต่อไปได้

ขั้นตอนที่ 6: ตั้งค่า

ติดตั้ง
ติดตั้ง
ติดตั้ง
ติดตั้ง

ฉันกำลังใช้แอปเดสก์ท็อปสำหรับ nymea:app คุณยังสามารถติดตั้งสำหรับอุปกรณ์ Android และ iOS และควบคุม UniPi ของคุณได้เช่นเดียวกัน

เพิ่มอุปกรณ์

ฉันเพิ่มเอาต์พุตรีเลย์ nymea ค้นพบจำนวน IO ที่พร้อมใช้งาน:เพิ่มอุปกรณ์ -> UniPi -> เอาต์พุตรีเลย์ -> เลือกรีเลย์หนึ่งตัวและตั้งชื่อว่า "ฮีตเตอร์" ฉันทำซ้ำขั้นตอนเหล่านั้นสำหรับรีเลย์ทั้งหมดและตั้งค่าการควบคุมดังนี้:

ไปที่ Add Device -> UniPi -> Relay Output -> เลือก `"Relay 1"` และตั้งชื่อว่า "Heater"

  • รีเลย์ 2: ปั๊มเจ็ตส์
  • รีเลย์ 3: ปั๊มหมุนเวียน
  • รีเลย์ 4: โบลเวอร์
  • รีเลย์ 5: Ozonator

จากนั้นฉันก็เพิ่มอินพุต: เพิ่มอุปกรณ์ -> UniPi -> อินพุตดิจิตอล -> เลือก "อินพุต 1" และตั้งชื่อว่า "โฟลว์เซนเซอร์" ฉันทำซ้ำขั้นตอนเหล่านั้นสำหรับอินพุตทั้งหมดที่ฉันมี:

  • อินพุต 1: เซนเซอร์ตรวจจับการไหล
  • อินพุต 2: เซนเซอร์ฝาครอบ

เซ็นเซอร์อุณหภูมิ 1-Wire: เพิ่มอุปกรณ์ -> UniPi -> เซ็นเซอร์อุณหภูมิ -> ชื่อไปยังอุณหภูมิ

สุดท้ายแต่ไม่ท้ายสุด ฉันได้เพิ่มปุ่มสลับ 2 ปุ่ม ไม่ใช่อุปกรณ์จริงๆ แต่ใกล้เคียงกับ "สถานะ" มากกว่า วิธีนี้ช่วยให้ฉันใช้ในภายหลังในรายการ "รายการโปรด" ได้ เพื่อให้สามารถเปิดหรือปิดทุกอย่างได้อย่างรวดเร็ว เพิ่มอุปกรณ์ -> guh GmbH -> สวิตช์สลับ -> ชื่อ: โหมดฤดูร้อน

"โหมดฤดูร้อน" คือการปิดใช้งานฮีตเตอร์อย่างสมบูรณ์ในช่วงฤดูร้อน เพิ่มอุปกรณ์ -> guh GmbH -> สวิตช์สลับ -> ชื่อ: โหมดพร้อม "โหมดพร้อมใช้งาน" คือการเปลี่ยนอุณหภูมิเป้าหมายระหว่าง 37°C (พร้อม) และ 29°C (ยังไม่พร้อม)

เพิ่มเวทย์มนตร์

เมจิกนั้นเป็นชุดกฎที่สั่งให้ nymea ทำสิ่งต่าง ๆ โดยอัตโนมัติ หากเปิด "โหมดพร้อมใช้งาน" และปิด "โหมดฤดูร้อน" และอุณหภูมิต่ำกว่า 37°C เครื่องทำความร้อนและปั๊มหมุนเวียนจะทำงาน มิฉะนั้นจะปิดการทำงาน หาก "โหมดพร้อมใช้งาน" ปิดอยู่ และปิด "โหมดฤดูร้อน" และ อุณหภูมิต่ำกว่า 29°C เครื่องทำความร้อนและปั๊มหมุนเวียนจะทำงาน มิฉะนั้นจะถูกปิดใช้งาน หากปั๊มหมุนเวียนเปิดอยู่และไม่ได้เปิดเซ็นเซอร์การไหล ให้ส่งการแจ้งเตือน หากอุณหภูมิของน้ำลดลงต่ำกว่า 3°C ให้ส่งการแจ้งเตือน หากอุณหภูมิของน้ำสูงถึง 37°C ให้ส่งการแจ้งเตือน "พร้อมสำหรับอ่างน้ำร้อน" หากเซ็นเซอร์แม่เหล็กปิดอยู่ ให้ส่งการแจ้งเตือน "ฝาครอบอ่างน้ำร้อนเปิดอยู่" ระหว่างเวลา 9.00 น. ถึง 10.00 น. เปิดปั๊มเจ็ตส์ ตั้งค่าการเชื่อมต่อระยะไกล ฉันทำไม่ได้ ไม่ใช้อ่างน้ำร้อนทุกวัน เลยไม่ได้ตั้งกฎ "เพิ่มความร้อน" บางครั้งเมื่อฉันกลับมาจากที่ทำงาน ฉันแค่อยากจะกระโดดเข้าไปให้เร็วที่สุด ดังนั้นฉันจึงใช้การเชื่อมต่อระยะไกลเพื่อเปิดใช้ฮีตเตอร์ล่วงหน้า อ่างน้ำร้อนของฉันร้อนขึ้นด้วยความเร็วประมาณ 2 องศาต่อชั่วโมง ฉันมักจะรักษาอุณหภูมิไว้ที่ 29° ในโหมดปกติ ดังนั้นฉันจึงต้องเปิดฮีตเตอร์ล่วงหน้า 4 ชั่วโมง PS.: บางคนคิดว่าการทำความร้อนในอ่างต้องใช้พลังงานมากกว่าการรักษาอุณหภูมิให้พร้อมตลอดเวลา แต่ฉันได้ตรวจสอบแล้ว และนี่ไม่ใช่กรณีของฉัน การตั้งค่าการเชื่อมต่อระยะไกลทำให้สามารถแจ้งเตือนแบบพุชได้เช่นกัน ดังนั้นคุณจึงสามารถรับการแจ้งเตือนที่ยอดเยี่ยมได้

ตอนนี้ฉันสามารถเปิด/ปิดปั๊มแต่ละอัน ตั้งค่าโหมดอ่างน้ำร้อน "พร้อม" หรือ "ฤดูร้อน" ตรวจสอบอุณหภูมิและเปลี่ยนพัดลม

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

แนะนำ: