สารบัญ:

DIY Cycle Speedometer: 6 ขั้นตอน (พร้อมรูปภาพ)
DIY Cycle Speedometer: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: DIY Cycle Speedometer: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: DIY Cycle Speedometer: 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: DIY How to make a bicycle speedometer into a RPM cadence meter 2024, กรกฎาคม
Anonim
เครื่องวัดความเร็วรอบ DIY
เครื่องวัดความเร็วรอบ DIY
เครื่องวัดความเร็วรอบ DIY
เครื่องวัดความเร็วรอบ DIY
เครื่องวัดความเร็วรอบ DIY
เครื่องวัดความเร็วรอบ DIY

โปรเจ็กต์นี้เข้ามาในหัวฉันเมื่อทำโปรเจ็กต์ MEM (Mechanical Engineering Measurement) ซึ่งเป็นวิชาใน B.tech ของฉัน แนวคิดคือการวัดความเร็วเชิงมุมของล้อจักรยานของฉัน ดังนั้นเมื่อทราบเส้นผ่านศูนย์กลางและตำนานทางคณิตศาสตร์ตลอดเวลา pi(3.14) จึงสามารถคำนวณความเร็วได้ นอกจากนี้ยังทราบจำนวนครั้งที่ล้อหมุน ระยะทางที่เดินทางสามารถทราบได้ง่าย เพื่อเป็นโบนัสเพิ่มเติม ฉันตัดสินใจเพิ่มบีกเกอร์ไลท์ให้กับวงจรของฉัน ความท้าทายคือต้องเปิดไฟเบรกเมื่อใด คำตอบอยู่ด้านล่าง

ขั้นตอนที่ 1: โครงสร้าง

โครงสร้าง
โครงสร้าง
โครงสร้าง
โครงสร้าง
โครงสร้าง
โครงสร้าง

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

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

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

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

ขั้นตอนที่ 2: เซนเซอร์และแม่เหล็ก

เซนเซอร์และแม่เหล็ก
เซนเซอร์และแม่เหล็ก
เซนเซอร์และแม่เหล็ก
เซนเซอร์และแม่เหล็ก
เซนเซอร์และแม่เหล็ก
เซนเซอร์และแม่เหล็ก

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

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

นี่คือรูปภาพบางส่วนที่แสดงการวางแนวที่ถูกต้อง นอกจากนี้ เซ็นเซอร์เอฟเฟกต์ฮอลล์ยังต้องการตัวต้านทานแบบดึงขึ้น 10k สิ่งนี้ในโครงการของฉันถูกแทนที่ด้วยตัวต้านทานแบบดึงขึ้น 20k ใน Arduino

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

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

ขั้นตอนที่ 3: แสดง

แสดง
แสดง
แสดง
แสดง
แสดง
แสดง
แสดง
แสดง

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

รูปภาพที่โพสต์แสดงสามโหมดที่ Arduino สลับไปมาโดยอัตโนมัติ

1) อันที่มีจุดเริ่มต้นเล็ก ๆ ที่มุมล่างซ้ายคือเมื่อ Arduino เพิ่งเริ่มต้นและบูทได้สำเร็จ

2) ตัวที่มีกม./ชม. คือความเร็ว โหมดนี้จะแสดงเฉพาะเมื่อวัฏจักรเคลื่อนที่และดับลงโดยอัตโนมัติเมื่อรอบหยุด

3) อันสุดท้ายที่มีเมตร (Long live the metric system) เนื่องจากหน่วยคือระยะทางที่วงจรเดินทางอย่างชัดเจน เมื่อวงจรหยุด audino จะเปลี่ยนเพื่อแสดงระยะทางภายใน 3 วินาที

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

ขั้นตอนที่ 4: แหล่งพลังงาน

แหล่งพลังงาน
แหล่งพลังงาน
แหล่งพลังงาน
แหล่งพลังงาน

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

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

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

ขั้นตอนที่ 5: ไฟเบรก (อุปกรณ์เสริม)

ไฟเบรค (อุปกรณ์เสริม)
ไฟเบรค (อุปกรณ์เสริม)
ไฟเบรค (อุปกรณ์เสริม)
ไฟเบรค (อุปกรณ์เสริม)

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

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

ฉันจ่ายกระแสตรงจากพินดิจิทัล 2 ของ Arduino nano

ขั้นตอนที่ 6: โปรแกรม

เช่นเคยฉันเขียนโปรแกรมบน Arduino IDE ตอนแรกฉันมุ่งเป้าไปที่การบันทึกพารามิเตอร์ลงในการ์ด SD แต่น่าเสียดายที่ในกรณีนั้น ฉันจะต้องใช้ห้องสมุดสามแห่ง ได้แก่ SD.h, Wire.h และ SPI.h สิ่งเหล่านี้รวมกับคอร์ที่ถูกครอบครอง 84% ของหน่วยความจำที่มีอยู่และ IDE เตือนฉันถึงปัญหาด้านความเสถียร อย่างไรก็ตาม ไม่นานเกินไปที่นาโนที่น่าสงสารก็พังทุกครั้ง และทุกอย่างก็หยุดนิ่งหลังจากนั้นครู่หนึ่ง การรีบูตทำให้เกิดประวัติซ้ำ

ดังนั้นฉันจึงทิ้งส่วน SD และแสดงความคิดเห็นบรรทัดที่เกี่ยวข้องกับการ์ด SD หากใครสามารถเอาชนะปัญหานี้ได้ ฉันอยากเห็นการเปลี่ยนแปลง

นอกจากนี้ ฉันได้แนบเอกสาร pdf อีกฉบับในขั้นตอนนี้ ซึ่งฉันได้อธิบายโค้ดโดยละเอียดแล้ว

อย่าลังเลที่จะถามคำถามถ้ามี

มีความสุข DIYing;-)

แนะนำ: