Mündəricat:

DIY Velosiped Takometri: 5 Addım (Şəkillərlə birlikdə)
DIY Velosiped Takometri: 5 Addım (Şəkillərlə birlikdə)

Video: DIY Velosiped Takometri: 5 Addım (Şəkillərlə birlikdə)

Video: DIY Velosiped Takometri: 5 Addım (Şəkillərlə birlikdə)
Video: 5 крутейших лайфхаков на любой случай 2024, Noyabr
Anonim
Image
Image
DIY Velosiped takometri
DIY Velosiped takometri

Velosiped sürətölçəninin necə qurulacağını sizə göstərəcəyəm. Sürətinizi, orta sürətinizi, temperaturunuzu, səyahət vaxtınızı və ümumi məsafənizi göstərir. Düyməni istifadə edərək dəyişdirə bilərsiniz. Əlavə olaraq, sürət takometrdə göstərilir. Yeni şeylər tikməyi xoşladığım üçün qurdum, internetdə belə bir şey tapmadım, buna görə də velosipedimdə istədiyim qədər sərin olmadığı üçün sizə yaxşı bir sürətölçən qurmağı göstərmək istəyirəm:). Beləliklə, başlayaq.

Addım 1: hissələr:

Parçalar
Parçalar

Bu sizə lazım olacaq hissələrin siyahısıdır. Mənə təxminən 40 dollara başa gəldi:

  • Arduino
  • Qamış açarı olan velosiped
  • LCD ekran 16x2
  • Servo
  • Çörək lövhəsi
  • Termometr DS18B20
  • Rezistor 1.2k 4., 4.7k Ω
  • Keçid edin
  • Düymə
  • Potensialiometr 10 kΩ
  • 9V batareya
  • Kabellər
  • Qutu
  • Alətlər (qazma, lehimləmə, bıçaq, lent)

Addım 2: Bağlantı

Bağlantı
Bağlantı
Bağlantı
Bağlantı
Bağlantı
Bağlantı
Bağlantı
Bağlantı

Fritzing -dən bir şəkil və onu necə bağlamağın şifahi təsvirini əlavə etdim. Şəkildə bütün qırmızı tellər 5V -ə, bütün mavi kabellər GND -ə qoşulub.

LCD ekran:

VSS GND Arduino

VDP 5V Arduino

VO çıxış potansiyometri (potensialiometr VCC -> 5V Arduino, potensialiometr GND -> Arduino GND).

RS pin 12 Arduino

RW GND Arduino

E pin 11 Arduino

D4 pin 5 Arduino

D5 pin 4 Arduino

D6 pin 3 Arduino

D7 pin 2 Arduino

5V Arduino

K GND Arduino

Servo:

VCC 5V Arduino

kütləvi GND Arduino

Məlumat pin 6 Arduino

Termometr:

VCC 5V Arduino

kütləvi GND Arduino

Məlumat pin 1 Arduino

məlumat və güc 4.7 kΩ müqavimət vasitəsi ilə bağlanır

Təkərdəki sensor:

bir ucu -> 5V Arduino

ikinci uc -> A0 Arduino və rezistor 1, 2 kΩ

Rezistorun digər ucu Arduinoda yerə düşür

Düymə:

bir ucu 5V Arduino

ikinci ucu A1 Arduino

Addım 3: Kodu Yükləyin:

Aşağıda kodu şərhlərə əlavə etdim, bir izahat var.

Yükləmə kitabxanalarına bağlantılar:

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

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

Fərqli təkər diametriniz varsa onu dəyişdirməlisiniz. Bu düsturla hesablaya bilərsiniz:

dövrə = π*d*2, 54 (d = təkərinizin diametri, nəticəni metrlə əldə etmək üçün 2.54 ilə vurdum).

/*

################################################### Müəlliflik hüququ Nikodem Bartnik iyun 2014 ################################################ ###### */// kitabxanalar #daxil edin #daxil edin #daxil edin #daxil edin #təsnif edin ONE_WIRE_BUS 1 OneWire oneWire (ONE_WIRE_BUS); DallasTemperatur sensorlar (& oneWire); // LCD displey pinləri LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // servo adı Servo myservo; // çoxdan əvvəlki dəyişkənlərin tərifi, triptime, zaman, impulslar; üzən sürətölçən, uzaq, asped; int servo; int ekran = 1; // Başqa təkər dövrəniz varsa onu dəyişdirməlisiniz float circuit = 2.0; ikiqat temperatur; void setup () {lcd.begin (16, 2);

pinMode (A0, GİRİŞ); pinMode (A1, GİRİŞ); // servo tərifi və takometrini 0 olaraq təyin etmək myservo.attach (6); myservo.write (180); lcd.print ("Velosiped takometri"); gecikmə (1000); lcd.setCursor (5, 1); lcd.print ("V 1.0"); gecikmə (4000); lcd.clear (); gecikmə (500); lcd.setCursor (0, 0); lcd.print ("Dist:"); } void loop () {// if təkər dönərsə (analogRead (A0)> = 300) {// dönüş sayı ++ impuls ++; // dönmə vaxtının sayılması = (milis ()-əvvəlki); // sayğac sürətölçən = (dövrə /vaxt)*3600.0; əvvəlki = milis (); Takometr (); gecikmə (100); } Lcd (); } // takometrdə göstərici sürəti boş Tachometer () {// sürət sürətini servo sürətölçəninə 0-180 = int (sürətölçən); servo = xəritə (sürətölçən, 0, 72, 180, 0); // servo myservo.write (servo) qurmaq; } (analogRead (A1)> = 1010) {lcd.clear (); düyməsinə tıklandıqda} void Lcd () {//; ekran ++; əgər (ekran == 5) {ekran = 1; }} if (ekran == 1) {// sürəti lcd.setCursor (0, 1) göstərir; lcd.print ("Sürət:"); lcd.setCursor (7, 1); lcd çap (sürətölçən); lcd.print ("km/saat"); } if (ekran == 2) {// temperatur temperaturunu göstərir = sensors.getTempCByIndex (0); sensorlar.requestTemperatures (); lcd.setCursor (0, 1); lcd.print ("Temp:"); lcd.setCursor (7, 1); lcd çap (temperatur); lcd.print ("C"); } if (screen == 3) {// averagr speed aspeed = dist/(millis ()/1000.0)*3600.0 göstərir; lcd.setCursor (0, 1); lcd.print ("A.sürət:"); lcd.setCursor (8, 1); lcd çap (aspired); lcd.print ("km/saat"); } if (ekran == 4) {// səfər vaxtı üç dəfə = millis ()/60000 göstərilir; lcd.setCursor (0, 1); lcd.print ("Zaman:"); lcd.setCursor (7, 1); lcd.print (üç dəfə); } lcd.setCursor (0, 0); lcd.print ("Dist:"); // məsafənin hesablanması dist = impulslar*dövrə/1000.00; // məsafə lcd.setCursor (6, 0); lcd çapı (dist); lcd.print ("km"); }

Addım 4: Paket

Paket
Paket
Paket
Paket
Paket
Paket

Bir örtük olaraq 1 dollara aldığım plastik bir qutudan istifadə etdim. Bıçaq və qazma ilə deşiklər kəsdim. Servo və LCD ekranı lentlə yapışdırdım, ucunu kartonla düzəltdim və boya ilə boyadım. Corel Draw X5 -də qalxan etdim və çap etdim,-p.webp

Addım 5: Çalışdırın

Çalıştır!
Çalıştır!
Çalıştır!
Çalıştır!
Çalıştır!
Çalıştır!
Çalıştır!
Çalıştır!

İndi hazırdır. Etməyiniz lazım olan tək şey onu işə salmaq və gəzməkdir. Sürətölçəninizlə əylənin. Bu layihəni bəyəndinizsə, mənə səs verin.

Tövsiyə: