» จากเว็บไซต์ » พิเศษ »ระบบควบคุมระดับน้ำ

ระบบตรวจสอบระดับน้ำ


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

คุณสมบัติที่สำคัญมีดังนี้:
ตรวจสอบระดับน้ำแบบเรียลไทม์
ปั๊มเปิด / ปิดอัตโนมัติ
การหยุดฉุกเฉินของปั๊ม

เครื่องมือและวัสดุ:
-Arduino โปรมินิ
- เซ็นเซอร์อัลตราโซนิค HC-SR04;
- โมดูล MAX485;
- โมดูล LCD i2c;
จอแอลซีดี 1602;
- ไมโครคอนโทรลเลอร์ ATTINY45 / 85;
- เครื่องปรับแรงดันไฟฟ้า LM7805;
ทรานซิสเตอร์ NPN (2n3904);
- ช่องทาง MOSFET IRFD024PBF
ไดโอด 1N4007;
ขั้วต่อ 5 ขา
คอนเนคเตอร์ 4 ขา
ตัวเชื่อมต่อ -2 พิน
- ขั้วต่อที่มี 2 หน้าสัมผัส (สีน้ำเงิน) - 2 ชิ้น;
- เทอร์มินัล 2 รายชื่อ (สีเขียว);
แจ็ค DC (- 2 ชิ้น)
- แจ็คเสียง (ชาย / หญิง) - 2 ชิ้น;
- ตัวต้านทาน 1 kOhm;
- ตัวต้านทาน 10 kOhm - 3 ชิ้น;
- ตัวเก็บประจุ 100 nF - 3 ชิ้น;
ตัวเก็บประจุ 100 uF
- ปุ่ม SMD, 6x3.5mm;
-DIP สวิตช์ (SPST 2) - 2 ชิ้น;
- ปุ่มเพาเวอร์;
-Tumbler;
-12V รีเลย์ DC;
- คอนแทครีเลย์
- แหล่งจ่ายไฟ DC 5 V (> 200 mA);
- แหล่งจ่ายไฟ DC 12V (> 500 mA);
- กล่องสำหรับขนาดที่เหมาะสม
-Krepezh;
- อุปกรณ์เสริมสำหรับทิ้ง;
- ไขควง
seeing-;




ระบบตรวจสอบระดับน้ำ







ขั้นตอนที่หนึ่ง: หน่วยเซ็นเซอร์
หน่วยนี้วัดระดับน้ำและส่งข้อมูลไปยังตัวควบคุมหลัก มีเซ็นเซอร์สองตัวสำหรับวัดระดับน้ำ หนึ่งคือเซ็นเซอร์ตรวจวัดระยะทางอัลตราโซนิก HC-SR04 สกรูยาวอีกสองตัวยื่นออกมาด้านนอกดังที่แสดงในภาพ

ในการติดตั้งเซ็นเซอร์คุณต้องทำตามขั้นตอนต่อไปนี้:
วาง transducer ล้ำเสียงคว่ำหน้าของฝาครอบใกล้ด้านบนและทำเครื่องหมายสองหลุมสำหรับเครื่องส่งสัญญาณและตัวรับสัญญาณอัลตราโซนิก

ตัดรูและติดตั้งเซ็นเซอร์ด้วยกาวร้อน





จากนั้นเจาะสองรูที่มีเส้นผ่านศูนย์กลาง 3 มม. มีช่องว่าง 2-3 ซม. ที่กึ่งกลางของฝาครอบ
ใส่สลักเกลียว M3 แบบยาวโดยที่ขั้วลวดจะถูกหนีบระหว่างตัวล้างสองตัวที่ด้านหลังของฝาปิดและขันน็อต M3 อีกด้านหนึ่งให้แน่น



หน่วยเซ็นเซอร์ใช้ ATTINY45 เป็นไมโครคอนโทรลเลอร์หลัก ตามที่กล่าวไว้ก่อนหน้านี้ HC-SR04 ใช้สำหรับวัดระดับน้ำ มันทำงานได้โดยการวัดระยะทางจากด้านบนของถัง

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

ก่อนอื่นนายต้องการส่งข้อมูลผ่านโมดูล RF-12 แต่ช่วงของโมดูลเหล่านี้ไม่ตรงกับข้อกำหนดตัวช่วยสร้างนั้นใช้ตัวแปลง MAX485 TTL เป็นตัวแปลง RS485 และทำไรเซอร์ขนาดเล็กเพื่อติดตั้งแทนโมดูล HC-12
สามารถดาวน์โหลดโครงการและลิงค์ไปยังบอร์ดได้ ตามที่อยู่นี้.
การติดตั้งมีดังนี้:
HC-SR04 ไปยังวงจรหลัก:
Vcc - 5V (CN1)
หนุน - trigPin (CN1)
echo - echoPin (CN1)
Gnd - GND (CN1)

M3 สลักเกลียวกับวงจรหลัก:
Bolt 1 - 5 V (CN1)
โบลต์ 2 - 100 (CN1)

โมดูล MAX485 (TX):
VCC - 5V (ตัวเชื่อมต่อ HC-12)
เอ - แจ็คเสียงขนาด 1/4 นิ้ว
B - แจ็คเสียงขนาด 1/4 นิ้ว
GND - GND (ตัวเชื่อมต่อ HC-12)
R0 - RX (ตัวเชื่อมต่อ HC-12)
RE - VCC (MAX485) หรือ 5V
DE - RE (ย่อมาจาก RE และ DE)
DI - TX (ตัวเชื่อมต่อ HC-12)

แจ็ค DC (ขั้วต่อ P1):
เคล็ดลับ - 5V
ปลอก - GND




















ขั้นตอนที่สอง: คอนโทรลเลอร์
การทำงานของคอนโทรลเลอร์นั้นง่าย Arduino ใช้เป็นตัวควบคุมหลัก รับข้อมูลเซ็นเซอร์ที่ส่งจากบอร์ดตัวส่งสัญญาณผ่านโมดูล max485 มีหน้าจอ LCD 1602 ที่แสดงระดับน้ำปัจจุบันและการทำงานของปั๊ม มันใช้รีเลย์ 12 V เป็นสวิตช์เพื่อเปิดคอนแทคเตอร์รีเลย์ มันมีสองสวิตช์หนึ่งสำหรับแบ็คไลท์ LCD และหนึ่งสำหรับการเปิด / ปิดเครื่องสูบน้ำฉุกเฉิน

ลิงค์ไปยังแผนภาพวงจรและการออกแบบแผงวงจรพิมพ์สำหรับเครื่องส่งสัญญาณและตัวรับสัญญาณอยู่ ที่นี่.

โมดูลจอแอลซีดี i2c เชื่อมโดยตรงกับจอแอลซีดี 1602 จัมเปอร์แบ็คไลท์บนโมดูล i2c เชื่อมต่อกับสวิตช์เปิด / ปิด ปุ่มฉุกเฉิน (ใหญ่) เชื่อมต่อกับวงจรหลักผ่านตัวเชื่อมต่อ P4
โมดูล I2c LCD ไปยังวงจรหลัก (CN4):
GND - CN4-1 (GND1)
VCC - CN4-2 (5V)
SCL - CN4-3 (A5)
SDA - CN4-4 (A4)

การเชื่อมต่อคอนแทคคอนแทค:
A1 - 230 VAC1 (ศูนย์)
A2 - NO (หน้าสัมผัสรีเลย์)
S1 - 230 VAC1 (ศูนย์)
S2 - 230 VAC2 (เฟส)
L1 - ลวดมอเตอร์ปั๊ม 1
L2 - สายมอเตอร์ปั๊ม 2
เชื่อมต่อหน้าสัมผัสรีเลย์ COM กับ 230 VAC2 (บรรทัด)










ขั้นตอนที่สาม: ซอฟต์แวร์และการเขียนโปรแกรม
ตอนนี้คุณต้องตั้งโปรแกรมคอนโทรลเลอร์บนอุปกรณ์ทั้งสอง

ในการดาวน์โหลดรหัสไปที่ ATTINY45 จะดาวน์โหลดไลบรารี SoftwareSerial.h
ในฟังก์ชั่นวนรอบ
> ตรวจสอบก่อนว่าถังเต็มหรือไม่
> หากเต็มแล้วจะส่ง "255"
> หากยังไม่เต็มจะตรวจสอบระดับน้ำด้วยเซ็นเซอร์เสียงอัลตราโซนิกและส่งข้อมูลผ่านการสื่อสารแบบอนุกรม
โปรแกรมนี้ใช้ฟังก์ชั่นย่อย getwtrLvl () เพื่อรับระดับน้ำปัจจุบัน อย่างแรกคือทำการวัดเวลาที่เซ็นเซอร์ใช้ในการรับและส่งคลื่นอัลตราโซนิก จากนั้นเวลาจะถูกแปลงเป็นระยะทางโดยใช้ความเร็วของเสียง
dist = pulseIn (echoPin, HIGH); // เวลาที่ใช้โดยคลื่นเสียง
dist = dist / 28/2; // แปลเวลาเป็นระยะทางเป็นเซนติเมตร
dist = dist * 1.25; // ที่นี่ 1.25 เป็นปัจจัยแก้ไขเพื่อแก้ไขข้อผิดพลาดในการวัด
กลับ dist // ส่งคืนระยะทางไปยังฟังก์ชันการโทร
ตอนนี้สำหรับ Arduino
ในฟังก์ชั่นวน:
> ขั้นแรกมีการตรวจสอบว่ากดปุ่มฉุกเฉินหรือไม่
> ตรวจสอบเซ็นเซอร์ ส่วนหนึ่งของโปรแกรมตรวจสอบข้อผิดพลาดของเซ็นเซอร์ เช่นหากข้อมูลที่ได้รับไม่ถูกต้อง (<= 1) 5 ครั้งจากนั้นหน้าจอจะแสดงข้อผิดพลาดของเซ็นเซอร์และปั๊มปิดตัวลง
> ส่วนถัดไปจะแสดงระดับน้ำในปัจจุบันและให้คำสั่งสำหรับปั๊ม 1 หากระดับน้ำมีขนาดเล็กหรือ 0 ถ้าเป็น 100% (เต็ม)
โปรแกรมนี้ใช้สองหน้าที่ย่อย updtMotor () และ getWaterLvl () ฟังก์ชั่น updtMotor () แสดงการทำงานของปั๊มบนจอ LCD และส่งสัญญาณไปยังรีเลย์
ฟังก์ชัน getWaterLvl ตรวจสอบก่อนว่ามีข้อผิดพลาดในการเชื่อมต่อหรือไม่ หากการเชื่อมต่อระหว่างตัวส่งและตัวรับไม่ได้ถูกสร้างขึ้นในช่วงเวลาที่รอ (3000 ms) มันแสดงให้เห็นข้อผิดพลาดเซ็นเซอร์และปิดปั๊ม
เมื่อการเชื่อมต่อถูกกู้คืนการดำเนินการจะดำเนินต่อ










ทุกอย่างพร้อมแล้วขอบคุณอาจารย์สำหรับสิ่งที่น่าสนใจ ทำที่บ้าน.
0
0
0

เพิ่มความคิดเห็น

    • รอยยิ้มรอยยิ้มxaxaตกลงdontknowyahooNea
      นายรอยขีดข่วนคนโง่ใช่ใช่ใช่ก้าวร้าวลับ
      ขอโทษเต้นdance2dance3ให้อภัยช่วยเหลือเครื่องดื่ม
      หยุดเพื่อนดีgoodgoodนกหวีดหน้ามืดตามัวลิ้น
      ควันการตบมือเครย์ประกาศเป็นขี้ปากดอน t_mentionดาวน์โหลด
      ความร้อนโมโหlaugh1ภาคตะวันออกเฉียงเหนือประชุมmoskingเชิงลบ
      not_iข้าวโพดคั่วลงโทษอ่านทำให้ตกใจกลัวค้นหา
      ยั่วยุthank_youนี้to_clueumnikรุนแรงเห็นด้วย
      ไม่ดีbeeeblack_eyeblum3หน้าแดงโม้ความเบื่อ
      เซ็นเซอร์การหยอกล้อsecret2ขู่ชัยชนะYusun_bespectacled
      shokrespektฮ่า ๆprevedยินดีต้อนรับkrutoyya_za
      ya_dobryiผู้ช่วยne_huliganne_othodiFLUDห้ามใกล้
15 คิดเห็น
Oleg Borodinov
การซื้อสวิตช์ระดับอิเล็กทรอนิกส์ประเภท Aries ง่ายขึ้นประมาณ 4 พันรูเบิลภายใต้การรับประกันปลอดภัย และนี่คือรายละเอียดของบางคนที่ไม่ทำงานหกพันใช่แล้วบวกกับงานเต้นรำและแทมบูรีนก็จะถูกดึงออกมาด้วยจำนวนที่เท่ากัน ถ้าคุณไม่สนใจเรื่องเงินแน่นอนว่าคุณสามารถทำให้สมองอักเสบ
Oleg Borodinov
ดังนั้นจึงจำเป็นต้องเปลี่ยนการลอยบ่อยขึ้นและแต่งตั้งผู้รับผิดชอบการบำรุงรักษาการติดตั้งนี้
ความยากง่ายเพียงใดในการปรับระดับน้ำ สำหรับเรื่องนี้อุตสาหกรรมผลิตพวงของอุปกรณ์ - ROS-301, BSU-3, ADU ฯลฯ และมีเพียงสองรีเลย์ก็เพียงพอแล้ว - หนึ่งตัวสำหรับการปรับตัว, ฉุกเฉินครั้งที่สอง
เห็นได้ชัดว่าผู้เขียนไม่รู้ว่ามีดโกนของ Occam คืออะไร
Lidselmash
ผู้เขียน
"Selmash"
-Rostselmash
เขาทำงานที่โรงงานเดียวกันโดยมีชื่อลงท้ายด้วย "selmash" บูธสเปรย์ภาชนะบรรจุขนาดเล็กสำหรับทาสีจากท่อเชื่อมขนาดเส้นผ่าศูนย์กลาง ประมาณ 200 ... 250 มม. สูง 1200 ... 1,500 พวกเขาทำการประชุมเชิงปฏิบัติการตามข้อเสนอที่มีเหตุผลของตัวเอง การเติมและการเลือกสีจากด้านล่างภายในโฟมลอยโดยมี“ ขั้ว” ขึ้นตรงกลางผ่านรู (ขออภัยหลุม) ในฝาปิดด้านบน ตัวบ่งชี้ระดับคือด้านบนของเสาเครื่องหมายถูกวาดโดยตรงบนผนัง ในระยะสั้นหลังจากสองสามเดือนเมื่อเติมน้ำมันทาสีสีที่ไหลผ่านรูนั้น - สีลอยอิ่มตัวด้วยสีจนไม่ยอมลอย รอยยิ้ม รอยยิ้ม
R555
เราได้รับอุปกรณ์ความน่าเชื่อถือสูงสุด
เมื่อเร็ว ๆ นี้เขากำลังซ่อมแซมระบบบำบัดน้ำของเพื่อนในสระ สวิทช์รีดในหลอดทดลอง, แหวนแม่เหล็กบนโฟมโพลีสไตรีนที่มีรูพรุนและไม่มี ARDUINs! นาย นาย
ผู้เขียน
Aftar คุณเป็น magar สำหรับความคิดของฉันให้เปลี่ยนสลักเกลียวด้วยหน้าสัมผัสของรีเลย์โซดา
- เขาจะใช้รีเลย์โซเวียตในสหรัฐฯที่ไหน -))))
ใช่ฉันไม่ได้ถูกมองเห็นผิด ใต้โต๊ะฉันมีบล็อกที่มีรีเลย์ 2 RKM-1 แผ่นโลหะผสมของหน้าสัมผัส PL-10 เข้าใจใช่ไหม
ฉันพบเตาด้วยตัวเองคุณไม่สามารถตั้งชื่อได้แตกต่างจาก duralumin และมี RES-22 หลายสิบตัว เท่าที่ฉันจำได้พวกเขายังมีการติดต่อที่ดีแม้ว่าจะสั้นกว่า RCM

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

และขณะนี้สามารถพบรีเลย์ดังกล่าวได้ที่ hucksters ยังไม่ได้ซื้อทุกอย่าง แต่ยังไม่สามารถซื้อได้

Aftar คุณเป็น magar สำหรับความคิดของฉันให้เปลี่ยนสลักเกลียวด้วยหน้าสัมผัสของรีเลย์โซดา xaxa เครื่องดื่ม
ฉันเห็นด้วยกับความจริงที่ว่าที่กระแสต่ำฟิล์มออกไซด์สามารถรบกวนการทำงานของอุปกรณ์ได้ เมื่อวันก่อนสองครั้ง! วิ่งเข้าไปในลักษณะพิเศษนี้ สวิตช์เครือข่ายที่เปลี่ยนแปลง หนึ่งในหลอดเก่าและอีกหลอดใน Radiotehnika U-101 และเมื่อเขาใส่คำว่า "ใหม่" ในแง่ของการไม่บัดกรี แต่ปล่อยออกมาเมื่อประมาณ 10 ปีที่แล้วเขาเรียกมัลติมิเตอร์ก่อนเปลี่ยน และอุปกรณ์ดังกล่าวพบว่ามีหน้าสัมผัสที่ปิดอยู่ที่ไหนสักแห่งประมาณ 50 ... 90 โอห์มสวิทช์ที่ดี แต่ฉันติดตั้งมันอย่างกล้าหาญโดยรู้เกี่ยวกับความแตกต่างนี้ แน่นอนว่าทุกอย่างทำงานได้โดยไม่มีปัญหา 220 ประกายออกไซด์ทั้งหมดในการติดต่อสู่นรก

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

หากคุณไม่จำเป็นต้องติดต่อในเซ็นเซอร์นี้ไม่ได้มาจากสแตนเลส แต่มาจาก PGM (โลหะกลุ่มแพลตตินัม) xaxa

ฟังนะ! และฉันก็มีความคิด มีอุปกรณ์บางส่วนวางอยู่ใต้โต๊ะของฉันและฉันเห็นรีเลย์ 2 ตัว RCM หรืออะไรก็ตาม และพวกมันมีรอยเปื้อนเป็นเวลานาน และฉันจำได้ว่ามีทั้งทองคำและแพลเลเดียม จากรีเลย์หนึ่งตัวหน้าสัมผัสจะหมุนไปที่เซ็นเซอร์ 2 หรือ 4 ตัว! คุณชอบความคิดนี้ยังไง? นาย
เทียบกับความต้านทานต่อน้ำจืด (หลายร้อยกิโลโอห์ม)
บางทีฉันผิด แต่:
ความต้านทานของน้ำจากแหล่งต่าง ๆ (บ่อบ่อ) อาจแตกต่างกันอย่างมีนัยสำคัญ น้ำของแหล่งหนึ่งในช่วงเวลาต่าง ๆ ของปีมักจะมีค่าความต้านทานที่แตกต่างกัน ช่วงของค่าความต้านทานเฉพาะของน้ำของแหล่งต่าง ๆ ตามข้อมูลที่เผยแพร่นั้นมีค่าตั้งแต่ 10 โอห์ม·เอ็มถึง 100 โอห์ม·เอ็ม
สำหรับฤดูกาลและพื้นที่ทางภูมิศาสตร์ที่แตกต่างกันความต้านทานไฟฟ้าของน้ำจะแตกต่างกันและอยู่ในช่วง 5 ถึง 300 โอห์ม * m
น้ำกลั่น - 5 · 10−4 S / m [2] (สอดคล้องกับความต้านทานไฟฟ้าเฉพาะของ 2 kOhm)
เมื่อเปรียบเทียบกับการกันน้ำจืด (หลายร้อยกิโลโอห์ม) แม้ความต้านทานเพิ่มเติมไม่กี่กิโลโอห์มก็ไม่ได้มีบทบาทอะไร กระแสไฟฟ้าผ่านอิเล็กโทรดจะมีค่าเท่ากับ 5 μAตามหลักการแล้วน่าจะเพียงพอสำหรับการสลายของออกไซด์ เพื่อลดผลการกัดกร่อนจากการระเหยของน้ำภายในกล่องจำเป็นต้องประทับตรารายการในกล่องเซ็นเซอร์
Ivan_Pohmelev
มันจะดีกว่าที่จะเปลี่ยนน็อตด้วยแท่งสแตนเลสหรือทำให้ส่วนที่มีความละเอียดอ่อนของมันในทางอื่น ๆ
กระแสมีน้อยมากดังนั้นฟิล์มออกไซด์น้อยที่สุดรวมถึงที่จุดเชื่อมต่อของสายสามารถนำไปสู่ความผิดปกติของระบบเตือนภัย
เห็นได้ชัดว่าสลักเกลียวนั้นออกแบบมาสำหรับการใช้งานฉุกเฉินในกรณีที่เซ็นเซอร์อัลตราโซนิคไม่ทำงาน มีการเชื่อมต่ออย่างไม่ถูกต้อง: ฐานของทรานซิสเตอร์ห้อยอยู่ในอากาศ ((
เพื่อลดผลกระทบของการระเหยของน้ำจำเป็นต้องมีตราประทับสำหรับสลักเกลียวและรูรอบ ๆ เซ็นเซอร์อัลตราโซนิค ใช่ดังกล่าวข้างต้นมันจะดีกว่าที่จะเปลี่ยนน็อตด้วยแท่งสแตนเลสหรือทำส่วนที่มีความละเอียดอ่อน (เคล็ดลับ) ของมันในทางอื่น ๆ
ใส่สลักเกลียว M3 แบบยาว
ดูเหมือนว่าสลักเกลียวการกัดกร่อนไม่ใช่วิธีที่ดีที่สุดสำหรับขั้วไฟฟ้าโดยเฉพาะ
ด้วยขั้วลวดคั่นกลางระหว่างสองแหวน
Nea

เราแนะนำให้คุณอ่าน:

มอบให้กับสมาร์ทโฟน ...