Mündəricat:
Video: PCBWay Arduino Velosiped Odometri: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Bir çox avtomobildə, gedilən məsafəni hesablayan və sürücüyə məlumat təqdim etmək üçün vacib olan cihazlar var.
Beləliklə, bu məlumatlar vasitəsi ilə, məsələn, nəqliyyat vasitəsinin odometrindən istifadə edərək, iki nöqtə arasındakı məsafəni izləmək mümkündür.
Təchizat
01 x PCBWay Xüsusi PCB
01 x Arduino UNO - UTSOURCE
01 x LCD 16x2 Ekran - UTSOURCE
01 x Breadboard - UTSOURCE
01 x Tel Atlayıcılar - UTSOURCE
01 x 10kR Rotary Potansiometr - UTSOURCE
01 x UTSOURCE Reed Switch - UTSOURCE
Buna görə də, bu məqalə vasitəsi ilə qamış keçid sensoru istifadə edərək məsafə hesablama cihazınızı necə yığmağı öyrədəcəyik.
Addım 1: Layihə
İdman salonunun velosipedi ilə gedilən məsafəni hesablamaq üçün aşağıdakı layihə hazırlanmışdır. Bundan əlavə, layihə üçün proqramlaşdırma yaratmağı öyrənəcəksiniz.
Bu layihənin üç funksiyası var:
- Velosipedlə gedən məsafəni hesablayın;
- Cihazın Başlanğıc Yarıçapı Konfiqurasiyası;
- İstənilən velosipedə uyğunlaşdırılır.
Bu funksiyalara daxil olmaq üçün istifadəçi sistemin üç düyməsindən istifadə edəcək. Hər düymənin funksionallığı var. Sistemdə aşağıdakı düymələr var:
Artım düyməsi: təkərlərin radiusunu konfiqurasiya etmək və radius dəyərini artırmaq üçün seçimə daxil olmaq üçün istifadə ediləcək;
Azaltma düyməsi: Təkərlərin radiusunu konfiqurasiya etmək üçün seçimin azaldılması üçün istifadə olunacaq;
Daxil Et Düyməsi: Sistemdəki radiusun dəyərini daxil etmək üçün istifadə olunacaq.
Əlavə olaraq Reed Switch Sensorumuz var. Təkərlərin tam döndüyünü təyin etmək məsuliyyət daşıyır. Bunu aşkar etmək üçün təkərlərə maqnit quraşdırmaq lazımdır.
Reed Switch, yuxarıdakı şəkildə göstərilmişdir.
Addım 2:
Beləliklə, maqnit sensora hər dəfə yaxınlaşanda Reed Switch sensorunu işə salacaq. Proses aşağıdakı tənlik ilə işləyir:
Səyahət məsafəsi = 2 * π * radius * TurnNumber
Bu tənlik vasitəsilə velosipedin hansı məsafəni qət etdiyini biləcəyik.
Tənlikdə radius istifadəçi tərəfindən daxil edilir və Dönüş Nömrəsi təkərin fırlanma sayı ilə hesablanır.
Təkərin dönüşlərini aşkar etmək üçün velosiped çarxına bir maqnit quraşdırmaq və Təkərin yaxınlığındakı Reed Switch Sensorunu quraşdırmaq lazımdır.
Prosesi asanlaşdırmaq üçün Reed Switch Sensorunu və üç düyməni birləşdirmək üçün çap edilmiş bir dövrə kartı yaradırıq. Çaplı Devre Kartı aşağıda göstərilən şəkildə təqdim olunur.
Addım 3:
PCB -də göstərildiyi kimi Arduino Nano'yu görmək mümkündür. Bütün sistemləri idarə etmək məsuliyyət daşıyır. Əlavə olaraq 5 JST bağlayıcımız var.
Üç düyməni və Reed Switch Sensorunu birləşdirmək üçün C4 -ə qədər C1 konnektorları istifadə olunur. İndi C5 Konnektoru 16x2 I2C LCD -ni bağlamaq üçün istifadə olunur.
Buna görə də bu sistem vasitəsi ilə layihəni velosipedinizə yükləyə və gedilən məsafə dəyərini əldə edə bilərsiniz.
Bunun üçün aşağıda təqdim olunan kodu istifadə edə bilərsiniz.
#daxil edin #daxil edin
/*
Sensor çubuq açarı 8 - Sensor Reed Switch 9 - Decremento 12 - Incremento 11 - Daxil edin */
#MEMORIA 120 müəyyən edin
#PosRaio 125 təyin edin
#ReedSwitch 8 -i təyin edin
#define BotaoEnterOk 11 #define BotaoIncremento 12 #define BotaoDecremento 9
const int rs = 2, en = 3, d4 = 4, d5 = 5, d6 = 6, d7 = 7;
LiquidCrystal lcd (rs, en, d4, d5, d6, d7);
bool sensoru = 0, estado_anterior = 0, Incremento = 0, Decremento = 0;
bool IncrementoAnterior = 0, DecrementoAnterior = 0, BotaoEnter = 0, EstadoAnteriorIncremento = 0;
bayt davamı = 0;
işarəsiz uzun int VoltaCompleta = 0;
işarəsiz uzun int tempo_atual = 0, ultimo_tempo = 0;
float DistKm = 0;
işarəsiz int raio = 0; üzən Distancia = 0;
boş quraşdırma ()
{Serial.begin (9600); pinMode (8, GİRİŞ); pinMode (9, GİRİŞ); pinMode (10, GİRİŞ); pinMode (12, GİRİŞ);
lcd.begin (16, 2);
// Başlanğıc və ya konfiqurasiya etmək üçün
əgər (EEPROM.read (MEMORIA)! = 73) {ConfiguraRaio (); EEPROM.write (MEMORIA, 73); }
lcd.setCursor (3, 0);
lcd.print ("Distancia"); lcd.setCursor (6, 1); lcd. çap (Distancia);
lcd.setCursor (14, 1);
lcd.print (“km”);
raio = EEPROM.read (PosRaio);
}
boşluq döngəsi ()
{
// Şəxsi məlumatların yoxlanılması üçün sensorlar
sensor = digitalRead (ReedSwitch); Decremento = digitalRead (BotaoDecremento); Artırma = digitalRead (BotaoIncremento);
// Regiao de codigo para acumular a distancia percorrida
əgər (sensor == 0 && estado_anterior == 1) {VoltaCompleta ++;
Məsafə = (üzmək) (2*3.14*raio*VoltaCompleta) /100000.0;
lcd.setCursor (0, 1);
lcd.print (““); lcd.setCursor (6, 1); lcd çap (Distancia);
lcd.setCursor (14, 1);
lcd.print (“km”);
estado_anterior = 0;
}
əgər (sensor == 1 && estado_anterior == 0)
{estado_anterior = 1; }
// Konfiqurasiya və ya Raio üçün Codigo
əgər (Incremento == 1 && EstadoAnteriorIncremento == 0) {EstadoAnteriorIncremento = 1; }
əgər (Incremento == 0 && EstadoAnteriorIncremento == 1)
{EstadoAnteriorIncremento = 0; lcd.clear (); ConfiguraRaio (); }}
etibarsız ConfiguraRaio ()
{
bayt RaioRoda = 0;
// Başlanğıc ölçüsü göstərin
lcd.setCursor (0, 0); lcd.print ("Inserir Raio (sm)");
etmək
{
lcd.setCursor (6, 1);
Artırma = digitalRead (BotaoIncremento);
Decremento = digitalRead (BotaoDecremento); BotaoEnter = digitalRead (BotaoEnterOk);
əgər (Incremento == 1 && IncrementoAnterior == 0)
{RaioRoda = RaioRoda + 1; IncrementoAnterior = 1; }
əgər (Incremento == 0 && IncrementoAnterior == 1)
{IncrementoAnterior = 0; }
əgər (Decremento == 1 && DecrementoAnterior == 0)
{RaioRoda = RaioRoda - 1; DecrementoAnterior = 1; }
əgər (Decremento == 0 && DecrementoAnterior == 1)
{DecrementoAnterior = 0; }
lcd.setCursor (6, 1);
lcd.print (RaioRoda);
} while (BotaoEnter == 0);
lcd.clear ();
EEPROM.write (PosRaio, RaioRoda);
qayıtmaq; }
Bu koddan Arduino ilə məsafənizi hesablaya bilər.
Addım 4: Nəticə
Buna görə də, PCB -ni özünüz istəsəniz, PCBWay.com saytında bu linkdən əldə edə bilərsiniz. Bunun üçün veb sayta daxil ola, hesabınızı yarada və öz PCB -lərinizi əldə edə bilərsiniz.
Silícios Lab, bu layihəni yaratmaq üçün elektron komponentləri təqdim etdiyi üçün UTSOURCE -a təşəkkür edir.
Tövsiyə:
Velosiped işığı: 7 addım
Velosiped İşıqlandırması: Bu layihədə sizə gecə vaxtı yolunuzu işıqlandıran, fasilə işığı da daxil olmaqla hansı yolla gedəcəyinizi göstərən öz velosiped işığınızı necə yaratacağınızı göstərəcəyəm
DIY Qapalı Velosiped Ağıllı Təlimçisi: 5 addım
DIY Qapalı Velosiped Ağıllı Təlimçisi: Giriş Bu layihə, müqavimət parametrləri üçün sadə vida və keçə yastıqları istifadə edən Schwinn IC Elite qapalı velosipedinin sadə bir dəyişikliyi olaraq başladı. Həll etmək istədiyim problem, vidanın meydançasının böyük olması idi, buna görə diapazon
CD4017 əsaslı çoxfunksiyalı velosiped arxa işığı: 15 addım
CD4017 əsaslı çoxfunksiyalı velosiped arxa işığı: Bu sxem, LED chaser adlanan çox geniş yayılmış CD4017 LED sxeminin tətbiqi ilə hazırlanır, lakin fərqli kabellər kimi idarəetmə kabellərini bağlayaraq müxtəlif LED yanıb-sönmə üsullarını dəstəkləyə bilər. Bəlkə də velosiped arxa işığı və ya vizual göstərici
PCBWAY ilə DIY Polis LED: 6 Addım (Şəkillərlə)
PCBWAY ilə DIY Polis LED: HiDelta hack bu gün çap elektron lövhəsinə əsaslanan sadə elektron komponentlərdən istifadə edərək bir polis flaşörünün necə yığılacağını göstərəcək. Əvvəlcə buradan yükləyə biləcəyiniz video induksiya sxemi və lövhə şablonunu görə bilərsiniz. Gedək
GPS istifadə edərək Arduino Velosiped Sürət Göstəricisi: 8 addım
GPS istifadə edərək Arduino Velosiped Sürət Göstəricisi: Bu təlimatda ST7735 ekranında GPS -dən cari Velosiped Sürətini göstərmək üçün Arduino və Visuinodan istifadə edəcəyik