สารบัญ:

ทุกลิตรมีค่า! Arduino Water Doser "Shield": 7 ขั้นตอน (พร้อมรูปภาพ)
ทุกลิตรมีค่า! Arduino Water Doser "Shield": 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: ทุกลิตรมีค่า! Arduino Water Doser "Shield": 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: ทุกลิตรมีค่า! Arduino Water Doser
วีดีโอ: สอน วิธี ใช้งาน Ethernet Shield W5100 สำหรับ Arduino พร้อมโคดตัวอย่าง ใช้ได้ใน 3 นาที 2024, พฤศจิกายน
Anonim
Image
Image
วัสดุ
วัสดุ

สวัสดี! ด้วยคำแนะนำนี้ คุณสามารถให้ปริมาณน้ำที่ต้องการได้ ระบบสามารถทำงานได้ในมล. และลิตร เราจะใช้ Arduino UNO เครื่องวัดการไหลเพื่อนับปริมาณน้ำ จอ LCD เพื่อแสดงสถานะ ปุ่มกดเพื่อเปลี่ยนการตั้งค่า และรีเลย์เพื่อเปิดใช้งานโซลินอยด์วาล์ว

ระบบสามารถใช้งานได้หลากหลาย: รดน้ำสวน ผสมน้ำกับส่วนผสมบางอย่าง เติมถัง ควบคุมปริมาณการใช้น้ำ ฯลฯ

ในความพยายามครั้งแรกฉันพยายามสร้างมันบนเขียงหั่นขนม แต่เนื่องจากปุ่มกด 8 ปุ่ม (สายไฟจำนวนมาก) การตัดการเชื่อมต่อ มาตรการที่ไม่ถูกต้อง และความจำเป็นในการทดสอบภายนอกหรือใกล้แหล่งน้ำ ฉันจึงตัดสินใจทำ "เกราะป้องกัน" ".

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

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

ดูวิดีโอ!

ขั้นตอนที่ 1: วัสดุ

PCB

- แผ่นทองแดงด้านเดียว ขั้นต่ำ 13x10 ซม. (แนะนำให้ใช้ใยแก้ว)

-เฟอร์ริกคลอไรด์

-ภาชนะพลาสติก

-ถุงมือพลาสติก

- กระดาษถ่ายโอนความร้อน (สีเหลือง)

- เตารีด (สำหรับการถ่ายเทความร้อน)

- หัวแร้ง, ลวดบัดกรี, แผ่นขัด

- ดอกสว่าน ดอกสว่าน 1 มม.

อิเล็กทรอนิกส์

-Arduino UNO

-LCD 16x2

- เครื่องวัดการไหลของน้ำ (ฉันกำลังใช้ YF-S201)

ตัวต้านทาน -10K x 8

-1K ตัวต้านทาน

-10K ทริมพอท

- ปุ่มกด x 8

- หัวเข็มหมุดตัวผู้แถวเดียว x 21-pin

- ส่วนหัวของพินโค้งแถวเดี่ยว x 6-pin

- หัวต่อพินตัวเมีย 2 x 6-pin

โมดูลรีเลย์ -5V

-โซลินอยด์วาล์ว (แนะนำ 12, 24 VDC)

-คอนเนคเตอร์ สายไฟ

และการวางท่อตามความต้องการของคุณ

ขั้นตอนที่ 2: การเตรียม PCB

การเตรียม PCB
การเตรียม PCB
การเตรียม PCB
การเตรียม PCB
การเตรียม PCB
การเตรียม PCB
การเตรียม PCB
การเตรียม PCB

บางทีนี่อาจเป็นขั้นตอนที่ยากกว่า หากคุณไม่เคยทำ PCB คุณจะต้องปฏิบัติตามคำแนะนำเท่านั้น

มีหลายวิธีในการสร้าง PCB วิธีนี้ใช้ได้กับฉัน:

1.- เตรียมบอร์ดโดยการขัดพื้นผิวทองแดง คุณต้องมีพื้นผิวที่เรียบและเงางาม แล้วล้างด้วยน้ำยาล้างจาน เมื่อคุณทำเช่นนั้นแล้ว อย่าสัมผัสพื้นผิวอีก (ลายนิ้วมือ) ปล่อยให้แห้ง

2.- พิมพ์ไฟล์ (PDF) บนกระดาษถ่ายโอนความร้อน ในกรณีของฉัน ฉันมีกระดาษสำหรับโทนเนอร์ (ไม่ใช่หมึก) ดังนั้นคุณต้องมีเครื่องพิมพ์ที่ถูกต้องสำหรับกระดาษของคุณ พิมพ์บนพื้นผิวที่เรียบ/สว่างของกระดาษ

หมายเหตุ: ไฟล์พร้อมโอน ห้ามใช้มิเรอร์ในการพิมพ์ หากต้องการให้พิมพ์บนกระดาษธรรมดาก่อนเพื่อให้แน่ใจว่าตัวอักษรจะกลับด้าน แต่ก็โอเค

3.-วางกระดาษโดยให้พื้นผิวที่พิมพ์อยู่ด้านล่าง และพอดีกับบอร์ด (พื้นผิวทองแดง) ติดเทปกาวซ่อม

4.- ตอนนี้ใช้เตารีดร้อนเพื่อถ่ายโอนแทร็กไปยังพื้นผิวทองแดง ทำได้โดยขยับเตารีด แล้วกด เกี่ยวกับ

2-3 นาที

5.- ปล่อยให้เย็นแล้วนำกระดาษออกทั้งหมด คุณสามารถล้างมันอย่างระมัดระวังเพื่อเอากระดาษที่เหลือออก อย่าทำลายแทร็ก!.

6.-เตรียมสารละลายในภาชนะพลาสติก ใช้ถุงมือพลาสติก!. ฉันใช้เฟอริกคลอไรด์ในสัดส่วนหนึ่งต่อน้ำอุ่นสองส่วน (40 องศาเซลเซียส) ฉันต้องการ 300 มล. เพื่อทำ PCB (เฟอร์ริกคลอไรด์ 100 มล. และน้ำอุ่น 200 มล.) แต่ขึ้นอยู่กับขนาดของภาชนะของคุณ

7.- นำบอร์ดไปใส่ในสารละลาย ย้ายภาชนะ จากนั้น "ทำคลื่น" เพื่อเอาทองแดงออก ปกติจะใช้เวลาประมาณ 20-30 นาที ตรวจสอบบอร์ดอย่างสม่ำเสมอ

8.-เมื่อทองแดงทั้งหมดถูกถอดออกแล้ว ให้ปลดออกและล้างกระดาน (ใช้ถุงมือพลาสติกในการจัดการ) ขัดอีกครั้งเพื่อเอาหมึกออกและเห็นรางทองแดง

9.- คุณสามารถตัดส่วนที่เหลือของกระดานได้หากต้องการ

10.- ตอนนี้คุณต้องเจาะรู ใช้ดอกสว่านขนาด 1 มม. หลุมถูกทำเครื่องหมายไว้ตรงกลางวงกลมโดยไม่มีทองแดง

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

ทำซ้ำขั้นตอนที่ 3-5

และ PCB ก็พร้อม!

ขั้นตอนที่ 3: การสร้าง "โล่"

การทำ
การทำ
การทำ
การทำ
การทำ
การทำ

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

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

คำเตือน: คุณต้องใส่เทปบางส่วนในโซน "ฝาครอบ" เพื่อหลีกเลี่ยงไม่ให้สัมผัสกับซ็อกเก็ต USB ที่เป็นโลหะ

ติดตั้ง LCD และ Arduino "0" และ "A5" แสดงวิธีการติดตั้งที่ถูกต้อง

หมายเหตุ: โล่สุดท้ายของคุณอาจแตกต่างจากของฉันเพราะฉันได้แก้ไขปัญหาบางอย่างแล้ว (ขั้วต่อรีเลย์, โซน "ปก", แสตมป์ความคมชัด)

ขั้นตอนที่ 4: ไปป์ไลน์

ไปป์ไลน์
ไปป์ไลน์
ไปป์ไลน์
ไปป์ไลน์
ไปป์ไลน์
ไปป์ไลน์
ไปป์ไลน์
ไปป์ไลน์

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

คำเตือน: เครื่องวัดการไหลมีลูกศร ระบุทิศทางการไหล

ขั้นตอนที่ 5: การปรับเทียบ

การสอบเทียบ
การสอบเทียบ
การสอบเทียบ
การสอบเทียบ
การสอบเทียบ
การสอบเทียบ
การสอบเทียบ
การสอบเทียบ

ด้วย "เกราะป้องกัน" และท่อส่งพร้อม ให้ทดสอบมาตรวัดการไหลของน้ำของคุณ

คุณต้องการแหล่งน้ำ ฉันทดสอบเซ็นเซอร์ใกล้กับเครื่องซักผ้า โดยใช้ขั้วต่อการจ่ายน้ำบนโซลินอยด์วาล์วของฉัน (ประเภทเดียวกัน) Arduino ไม่สามารถขับโซลินอยด์วาล์วได้ นั่นคือเหตุผลที่ฉันใช้รีเลย์ ดังนั้นคุณต้องมีแหล่งพลังงานภายนอกตาม แรงดันไฟฟ้าของโซลินอยด์วาล์วของคุณ ดูแผนผัง ใช้ "COM" และ "NO" เพื่อขัดจังหวะหนึ่งบรรทัด ฉันใช้โซลินอยด์วาล์ว 220V จากเครื่องซักผ้าเก่า หากคุณต้องการซื้อโซลินอยด์วาล์ว ฉันขอแนะนำวาล์วแรงดันต่ำ (12 หรือ 24 โวลต์) อย่าลืมเลือกอันที่คุณสามารถจัดหาได้

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

ตัวอย่างเช่น เอาต์พุตมิเตอร์วัดการไหลของฉันคือ 450 พัลส์xลิตร แต่ในการทดสอบฉันได้เพียง 400 ปัจจัยอื่นๆ ฉันไม่สามารถทำงานกับวาล์วจ่ายที่เปิดจนสุดได้ เนื่องจากการอ่านไม่เสถียร ดังนั้นคุณต้องสอบเทียบวาล์วจ่ายน้ำด้วย.

หมายเหตุ: อย่าลืมทำงานในพารามิเตอร์ของเซ็นเซอร์ ในกรณีของฉัน 1-30 ลิตร/นาที และ 1.75 Mpa

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

เชื่อมต่อเซ็นเซอร์กับโล่ ด้านบนพิมพ์ขั้วต่อตามลำดับ

+ = 5V (สายสีแดง)

- = GND (สายสีดำ)

S = สัญญาณหรือพัลส์ (สายสีเหลือง)

โมดูลรีเลย์มีเครื่องหมายเหมือนกัน

ฉันเตรียมรหัสเพื่อนับพัลส์ คุณสามารถใช้ START/STOP และ RST CNT ใช้ขวดขนาด 1 ลิตร ถังหรือบีกเกอร์ แล้วกดปุ่มสตาร์ท หยุดเมื่อถึง 1 ลิตร ทำซ้ำสองสามครั้งเพื่อให้ได้รูปแบบ กดปุ่ม RST CNT เพื่อรีเซ็ตตัวนับและเริ่มต้นใหม่อีกครั้ง

ตอนนี้ คุณทราบพัลส์ x ลิตรของเซ็นเซอร์แล้ว

ดูวิดีโอ.

ขั้นตอนที่ 6: เครื่องจ่ายน้ำ

เครื่องจ่ายน้ำ
เครื่องจ่ายน้ำ

คุณสมบัติฮาร์ดแวร์:

LCD: แสดงสถานะ "SP" คือค่าที่ตั้งไว้หรือปริมาณน้ำที่ต้องการ และ "CNT" เป็นตัวนับ ฉันแนะนำรหัสที่ทำให้ lcd ทำงานเหมือนสองหน้าจอ ฟังก์ชัน ml และฟังก์ชัน L เป็นอิสระจากกันโดยสิ้นเชิง

START/STOP: เป็นฟังก์ชัน "สลับ" เพื่อให้รีเลย์และระบบทำงานเมื่อคุณปล่อยปุ่ม หากคุณกดอีกครั้ง ระบบจะหยุดทำงานและรีเลย์จะ "ปิด" ปุ่มทั้งหมดจะไม่ทำงานหากระบบเปิดอยู่

UNIT:เปลี่ยนระหว่าง ml และ L โดยคงการตั้งค่าและค่าของหน้าจอก่อนหน้า ยังเป็นฟังก์ชัน "สลับ" ถ้าต่ำแสดงว่าอยู่หน้าจอ ml แต่ถ้าสูงแสดงว่าอยู่หน้าจอ L

RST SP: รีเซ็ตจุดตั้งค่าบนหน้าจอปัจจุบัน เพื่อป้อนค่าใหม่

RST CNT: รีเซ็ตตัวนับบนหน้าจอปัจจุบันเพื่อเริ่มการนับใหม่ หากตัวนับสูงกว่าหรือเท่ากับจุดที่ตั้งไว้ ระบบจะไม่เริ่มทำงาน

ปุ่ม Adders: คุณมีปุ่มกด 4 ปุ่มเพื่อเปลี่ยนการตั้งค่า +1, +10, +100, +1000 นี่เป็นวิธีง่ายๆ ในการเปลี่ยนการตั้งค่า ปุ่มแอดเดอร์ไม่ทำงานในขณะที่ระบบกำลังทำงาน คุณไม่สามารถเพิ่ม +1 ในฟังก์ชัน ml

คุณสมบัติของซอฟต์แวร์:

ฉันใช้เซ็นเซอร์เป็นปุ่มกด (กดเร็วมาก!) มันใช้ฟังก์ชัน "ดีบัก" แบบเดียวกันของทุกปุ่ม เซ็นเซอร์จะส่ง "สูง" เมื่อครบหนึ่งรอบ (ทุกๆ 2, 5 มล. โดยประมาณ) เวลาที่เหลือคือ "ต่ำ" ซึ่งจะมีผลเช่นเดียวกันเมื่อคุณกดปุ่ม

คุณเพียงแค่ต้องแนะนำพัลส์ x ลิตรและมล. x พัลส์ดังนี้:

ในขั้นตอนก่อนหน้านี้ คุณทดสอบเซ็นเซอร์และรับพัลส์เอาต์พุต ลองปัดเศษตัวเลข

ลอย cal_1=2.5; //ปรับเทียบ ml x ชีพจร

โดยที่ cal_1 = 1,000/พัลส์ต่อลิตร (กรณีของฉัน; 1000/400 = 2.5 มล. x พัลส์

int cal_2= 400; //ปรับเทียบพัลส์ x ลิตร

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

ตัวแปรคือ "int" ดังนั้นหากคุณต้องการตัวเลขที่มากกว่า ให้เปลี่ยนเป็น "long" หรือ "unsigned long"

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

ขั้นตอนที่ 7: รีเซ็ตอัตโนมัติ

แก้ไขเมื่อ 10-23-2018, การทดสอบ

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

แนะนำ: