สารบัญ:

DIY Bike Tachometer: 5 ขั้นตอน (พร้อมรูปภาพ)
DIY Bike Tachometer: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: DIY Bike Tachometer: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: DIY Bike Tachometer: 5 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: make FUEL GAUGE from scratch - shows each level - LM3914 2024, พฤศจิกายน
Anonim
Image
Image
เครื่องวัดความเร็วรอบจักรยาน DIY
เครื่องวัดความเร็วรอบจักรยาน DIY

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

ขั้นตอนที่ 1: อะไหล่:

อะไหล่
อะไหล่

นี่คือรายการชิ้นส่วนที่คุณต้องการ พวกเขาเสียค่าใช้จ่ายประมาณ $ 40:

  • Arduino
  • จักรยานพร้อมสวิตช์กก
  • จอ LCD 16x2
  • เซอร์โว
  • เขียงหั่นขนม
  • เทอร์โมมิเตอร์ DS18B20
  • ตัวต้านทาน 1.2k Ω, 4.7k Ω
  • สวิตช์
  • ปุ่ม
  • โพเทนชิออมิเตอร์ 10 kΩ
  • แบตเตอรี่ 9V
  • สายเคเบิล
  • กล่อง
  • เครื่องมือ (เจาะ บัดกรี มีด เทป)

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

การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ
การเชื่อมต่อ

ฉันเพิ่มรูปภาพจาก Fritzing และคำอธิบายด้วยวาจาเกี่ยวกับวิธีการเชื่อมต่อ ในภาพ สายสีแดงทั้งหมดเชื่อมต่อกับ 5V สายสีน้ำเงินทั้งหมดเชื่อมต่อกับ GND

จอ LCD:

VSS GND Arduino

VDP 5V Arduino

โพเทนชิออมิเตอร์เอาต์พุต VO (โพเทนชิออมิเตอร์ VCC -> 5V Arduino, โพเทนชิออมิเตอร์ GND -> Arduino GND)

RS pin 12 Arduino

RW GND Arduino

อีพิน 11 Arduino

D4 พิน 5 Arduino

D5 พิน 4 Arduino

D6 พิน 3 Arduino

D7 พิน 2 Arduino

Arduino 5V

K GND Arduino

เซอร์โว:

VCC 5V Arduino

มวล GND Arduino

ดาต้าพิน 6 Arduino

เครื่องวัดอุณหภูมิ:

VCC 5V Arduino

มวล GND Arduino

ดาต้าพิน 1 Arduino

ข้อมูลและพลังงานเชื่อมต่อผ่านตัวต้านทาน 4.7 kΩ

เซนเซอร์บนล้อ:

ปลายด้านหนึ่ง -> 5V Arduino

ปลายที่สอง -> A0 Arduino และตัวต้านทาน 1, 2 kΩ

ปลายอีกด้านหนึ่งของตัวต้านทานต่อกราวด์ใน Arduino

ปุ่ม:

ปลายด้านหนึ่ง 5V Arduino

ปลายที่สอง A1 Arduino

ขั้นตอนที่ 3: อัปโหลดรหัส:

ด้านล่างฉันเพิ่มรหัสในความคิดเห็นที่มีคำอธิบาย

ลิงค์ไปยังไลบรารีดาวน์โหลด:

www.pjrc.com/teensy/arduino_libraries/OneWire.zip

github.com/milesburton/Arduino-Temperature-Control-Library

หากคุณมีเส้นผ่านศูนย์กลางล้อต่างกันคุณต้องเปลี่ยน คุณสามารถคำนวณได้ด้วยสูตรนี้:

วงจร = π*d*2, 54 (d=เส้นผ่านศูนย์กลางของวงล้อของคุณ ฉันคูณมันด้วย 2.54 เพื่อให้ได้ผลลัพธ์เป็นเมตร)

/*

####################################################### ลิขสิทธิ์โดย Nikodem Bartnik มิถุนายน 2014 ############################################## ###### */ //ไลบรารี #include #include #include #include #define ONE_WIRE_BUS 1 OneWire oneWire(ONE_WIRE_BUS); เซ็นเซอร์อุณหภูมิดัลลัส (& oneWire); // หมุดแสดงผล LCD LiquidCrystal LCD (12, 11, 5, 4, 3, 2); //ชื่อเซอร์โวเซอร์โว myservo; // คำจำกัดความของตัวแปรก่อนหน้า, เวลาเดินทาง, เวลา, แรงกระตุ้น; เครื่องวัดความเร็วลอย, dist, aspeed; เซอร์โวภายใน; หน้าจอ int=1; // หากคุณมีวงจรอื่นของล้อคุณต้องเปลี่ยนมัน float circuit=2.0; อุณหภูมิสองเท่า การตั้งค่าเป็นโมฆะ () { lcd.begin (16, 2);

โหมดพิน (A0, INPUT); โหมดพิน (A1, INPUT); // คำจำกัดความของเซอร์โวและการตั้งค่าเครื่องวัดวามเร็วเป็น 0 myservo.attach(6) myservo.write(180); lcd.print("มาตรรอบจักรยาน"); ล่าช้า (1000); lcd.setCursor(5, 1); lcd.print("V 1.0"); ล่าช้า(4000); lcd.clear(); ล่าช้า (500); lcd.setCursor(0, 0); lcd.print("Dist:"); } วงโมฆะ () { // ถ้าวงล้อหมุนถ้า (analogRead (A0)> = 300) { // จำนวนรอบ ++ แรงกระตุ้น ++; //นับเวลาเลี้ยว=(มิลลิวินาที()-ก่อนหน้า); //นับความเร็ว speedometer=(วงจร/เวลา)*3600.0; ก่อนหน้า=มิลลิวินาที(); เครื่องวัดวามเร็ว(); ล่าช้า (100); } จอแอลซีดี (); } //แสดงความเร็วบนเครื่องวัดวามเร็ว เครื่องวัดวามเร็ว () {// แผนที่ความเร็ว 0-180 ถึงเครื่องวัดความเร็วของเซอร์โว = int (มาตรวัดความเร็ว); เซอร์โว = แผนที่(มาตรวัดความเร็ว, 0, 72, 180, 0); //ตั้งค่าเซอร์โว myservo.write(เซอร์โว); } โมฆะ LCD(){ //เมื่อคลิกปุ่ม if(analogRead(A1)>=1010){ lcd.clear(); หน้าจอ++; ถ้า(หน้าจอ==5){ หน้าจอ=1; } } if(screen==1){ //แสดงความเร็ว lcd.setCursor(0, 1); lcd.print("ความเร็ว:"); lcd.setCursor(7, 1); lcd.print(มาตรวัดความเร็ว); lcd.print("กม./ชม."); } if(screen==2){ //แสดงอุณหภูมิของอุณหภูมิ=sensors.getTempCByIndex(0); เซ็นเซอร์ ขออุณหภูมิ (); lcd.setCursor(0, 1); lcd.print("อุณหภูมิ:"); lcd.setCursor(7, 1); lcd.print (อุณหภูมิ); lcd.print (" C"); } if(screen==3){ //แสดงความเร็วเฉลี่ย aspeed=dist/(มิลลิวินาที()/1000.0)*3600.0; lcd.setCursor(0, 1); lcd.print("ความเร็ว A:"); lcd.setCursor(8, 1); lcd.print (aspeed); lcd.print("กม./ชม."); } if(screen== 4){ //แสดงเวลาการเดินทาง triptime=millis()/60000; lcd.setCursor(0, 1); lcd.print("เวลา:"); lcd.setCursor(7, 1); lcd.print (เวลาเดินทาง); } lcd.setCursor(0, 0); lcd.print("Dist:"); //การคำนวณระยะทาง dist=impulses*circuit/1000.00; //แสดงระยะทาง lcd.setCursor(6, 0); lcd.print(dist); lcd.print("กม."); }

ขั้นตอนที่ 4: แพ็ค

หีบห่อ
หีบห่อ
หีบห่อ
หีบห่อ
หีบห่อ
หีบห่อ

ฉันใช้กล่องพลาสติกเพื่อปกปิด ฉันซื้อมาในราคา 1 ดอลลาร์ ฉันใช้มีดและสว่านเจาะรูเป็นรู เซอร์โวและจอแสดงผล LCD ฉันติดเทปกาว ทิปที่ฉันทำด้วยกล่องและทาสีด้วยสี ฉันสร้างเกราะป้องกันใน Corel Draw X5 แล้วพิมพ์ ฉันเพิ่มรูปภาพ-p.webp

ขั้นตอนที่ 5: เรียกใช้

เรียกใช้!
เรียกใช้!
เรียกใช้!
เรียกใช้!
เรียกใช้!
เรียกใช้!
เรียกใช้!
เรียกใช้!

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

แนะนำ: