- Aparatinės įrangos reikalavimai:
- Programavimo reikalavimai:
- Greičio matavimas naudojant „Hall Sensor“ ir „Arduino“:
- Schemos ir aparatinės įrangos dalis:
- „Arduino“ programavimas:
- „Android“ mobilioji programa spidometrui:
- Spidometro rinkinio pritvirtinimas prie transporto priemonės:
- Darbinis paaiškinimas:
Šiame projekte mes gaminame „Cool Speedometer“ dviračiams ar bet kokiems automobiliams, naudodami „Arduino“, kuris greitį transliuoja per „Bluetooth“ į „Android“ programą, kurią sukūrėme naudodami „Processing“. Visą projektą maitina 18650 ličio elementas, todėl jis yra labai nešiojamas kartu su jūsų transporto priemone. Norėdami šiek tiek pagardinti, pridėjau galimybę įkrauti mobilųjį telefoną, nes jis rodo jūsų greitį. Taip, jūs taip pat galite tai naudoti kaip energijos banką savo mobiliesiems kelyje, nes 18650 turi didelį įkrovimo tankį ir gali būti lengvai įkraunamas ir iškraunamas.
Aš jus visiškai vesiu nuo nulio iki pabaigos, ar spidometras gali prijungti mūsų transporto priemonę ir išbandyti. Puiki savybė yra ta, kad galite pritaikyti savo „Android“ programą savo individualizavimui ir pridėti daugiau funkcijų pagal savo kūrybiškumą. Bet jei nenorite patys kurti programos ir tiesiog kurti „Arduino“ dalį, tada nesijaudinkite, tiesiog atsisiųskite APK failą (skaitykite toliau) ir įdiekite į „Android“ mobilųjį telefoną. Taip pat patikrinkite visą vaizdo įrašą pabaigoje.
Taigi pažiūrėkime, kokių medžiagų mums reikės šiam projektui sukurti, ir suplanuokime savo biudžetą. Visi šie komponentai yra lengvai prieinami; jei kyla problemų perkant bet kurį iš šių, praneškite man komentarų skiltyje.
Aparatinės įrangos reikalavimai:
- „Arduino Pro Mini“ (5V 16MHz)
- FTDI plokštė (mini programavimui taip pat galite naudoti UNO)
- 3–5 V DC-DC Boost keitiklis su USB išvesties įkrovikliu
- TP4056 ličio baterijos modulis
- „Bluetooth“ modulis (HC-05 / HC-06)
- „Hall“ efekto jutiklis (US1881 / 04E)
- 18650 ličio elementas
- Mažas magnetukų gabalėlis
- Perf Board
- „Berg“ lazdelių jungtys (vyriškos ir moteriškos)
- Litavimo rinkinys
- Mažos gaubto dėžutės rinkiniui montuoti.
Programavimo reikalavimai:
- „Arduino IDE“
- IDE apdorojimas naudojant „Android ADK“ (tik tuo atveju, jei norite koduoti savo programą.)
- „Windows“ / „Mac“ kompiuteris
- „Android“ mobilusis telefonas.
Tai gali atrodyti kaip sauja komponentų ir medžiagų, tačiau patikėkite manimi, kai baigsite šį projektą, pajusite, kad jiems verta skirti tam laiko.
Greičio matavimas naudojant „Hall Sensor“ ir „Arduino“:
Prieš pradėdami naudotis aparatine įranga, praneškite mums, kaip iš tikrųjų išmatuosime greitį naudodami „Arduino“. Naudojant „Arduino“ yra daugybė būdų išmatuoti transporto priemonės greitį, tačiau salės jutiklio naudojimas yra ekonomiškiausias ir lengviausias būdas tai padaryti. „ Hall Sensor“ yra komponentas, kuris nustato magneto poliškumą. Pavyzdžiui, kai prie jutiklio priartinamas vienas konkretus magneto polius, jutiklis pakeis savo būseną. Yra daugybė salės jutiklių, kuriuos galite naudoti bet kurį iš šio projekto, tačiau įsitikinkite, kad tai yra skaitmeninis salės jutiklis.
Norėdami išmatuoti greitį, ant transporto priemonės rato turime užklijuoti nedidelį magneto gabalėlį, kiekvieną kartą, kai magnetas kerta salės jutiklį, jis jį aptiks ir išsiųs informaciją „Arduino“.
Kiekvieną kartą aptikus magnetą, „Arduino“ gaus pertrauką. Mes atliekame nepertraukiamą laikmatį naudodami funkciją milis () ir apskaičiuojame laiką, per kurį ratas turi atlikti du apsisukimus (kad sumažintumėte klaidą), naudodamiesi šiomis formulėmis:
Timetaken = milis () - pevtime;
Kai žinome, kiek laiko užtrukome, galime apskaičiuoti apsisukimų skaičių per šias formules:
aps./min = (1000 / timetaken) * 60;
Kur (1000 / timetaken) duoda apsisukimų skaičių (apsisukimus per sekundę) ir jis padauginamas iš 60, kad apsisukimai apsisuktų į aps / min (apsisukimai per minutę).
Apskaičiavę apsisukimus, galime apskaičiuoti transporto priemonės greitį naudodami toliau pateiktas formules, jei žinome rato spindulį.
v = rato spindulys * aps / min * 0,37699;
Apskaičiavęs greitį, „Arduino“ jį transliuos naudodamas „Bluetooth“ modulį. Visas kodas pateiktas toliau skyriuje Kodas. Čia taip pat patikrinkite kitus mūsų projektus, susijusius su „Bluetooth“ moduliu HC-05.
Schemos ir aparatinės įrangos dalis:
Visa projekto schema pateikta žemiau:
Aparatinės įrangos dalis yra padalinta į dvi dalis, viena yra pagrindinė plokštė, kurioje yra visi pagrindiniai failai. Kita plokštė susideda iš salės jutiklio ir rezistoriaus, kuris bus sumontuotas šalia rato. Pradėkime kurti pagrindinę lentą.
Užmezgę ryšį, išbandykime sąranką naudodami mūsų 18650 ličio bateriją. Ličio baterija yra labai sprogi, todėl su ja reikia elgtis labai atsargiai. Dėl šios priežasties mes naudojame TP4056 ličio baterijų įkrovimo modulį. Šis modulis turi apsaugą nuo perkrovimo / iškrovimo ir apsaugą nuo atvirkštinio poliškumo. Taigi akumuliatorių galima lengvai įkrauti naudojant įprastą „micro USB“ įkroviklį ir jį galima saugiai iškrauti, kol jis pasiekia ribines įtampos ribas. Toliau pateiktoje lentelėje pateikiama keletas svarbių TP4056 įkrovimo modulio detalių.
Parametrai: |
Langelio vertė: |
Pagal įtampos atjungimą |
2.4V |
Viršįtampio nutraukimas |
4.2V |
Įkrovimo srovė |
1A |
Apsauga |
Apsauga nuo viršįtampio ir atvirkštinio poliškumo |
IC yra |
TP4056 (įkroviklio IC) ir DW01 apsaugos IC |
Indikaciniai šviesos diodai |
Raudona - įkrovimas vyksta Žalia - įkrovimas baigtas |
Pradėkime nuo „ Hall Sensor Board“. Šioje plokštėje yra tik du komponentai, vienas iš jų yra 10K rezistorius, o kitas - salės jutiklis. Jungtis galima atlikti taip, kaip parodyta aukščiau pateiktose schemose. Kai plokštė bus paruošta, prijunkite jas per trumpiklius, kaip nurodyta schemose. Kai tai bus padaryta, ji turėtų atrodyti maždaug taip.
Kitas svarbus projekto žingsnis yra 18650 baterijos prijungimas prie TP4056 modulio B + ir B- gnybtų, naudojant laidą. Kadangi Li + elementai yra sprogūs, labai nerekomenduojama ant šių elementų naudoti lituoklio. Nors žmonės tai padarė, tai yra labai rizikinga ir gali lengvai baigtis didele netvarka. Taigi lengviausias būdas tai padaryti yra naudoti magnetus, kaip parodyta žemiau
Paprasčiausiai prilituokite laidą prie mažo magneto gabalo ir prispauskite magnetus prie akumuliatoriaus gnybtų (juos labai traukia gnybtai), kaip parodyta aukščiau. Norėdami dar labiau pritvirtinti magneto padėtį, galite naudoti šiek tiek ančių čiaupo.
„Arduino“ programavimas:
Šio projekto programa yra labai paprasta. Mes tiesiog turime apskaičiuoti besisukančio rato greitį, naudodamiesi „Hall“ jutiklio pertraukimo įėjimais, ir apskaičiuotą greitį transliuoti eteryje per „Bluetooth“ modulį. Visa programa pateikiama žemiau esančiame Kodo skyriuje ir paaiškinama komentarų eilutėse.
Kiekvieną kartą, kai salės jutiklis aptinka magnetą, jis sukelia pertrauką. Ši pertraukimo funkcija vadinama magnet_detect () funkcija . Čia apskaičiuojamas transporto priemonės apsisukimų dažnis.
Apskaičiavus apsisukimų skaičių, ciklo () funkcijoje apskaičiuojamas rato greitis. Kai kodas bus paruoštas, jis galės jį išmesti į „Arduino pro mini“ ir išbandyti jo veikimą, kaip parodyta pabaigoje pateiktame vaizdo įraše.
„Android“ mobilioji programa spidometrui:
Šio projekto „Android“ programa sukurta naudojant programinę įrangą, vadinamą „Processing“. Jei nesate suinteresuotas kurti savo „Android“ programos ir norite tiesiog įdiegti čia naudojamą, galite atsisiųsti APK failą ir įdiegti jį tiesiai į savo išmanųjį telefoną atlikdami toliau nurodytus veiksmus.
1. Galite tiesiogiai atsisiųsti APK failą iš toliau pateiktos nuorodos. Šis APK failas skirtas 4.4.2 ir naujesnės versijos „Android“ (naujesnė „Kitkat“). Ištraukite APK failą iš ZIP failo.
„Android“ programa spidometrui
2. Perkelkite.Apk failą iš savo kompiuterio į mobilųjį telefoną.
3. „Android“ nustatymuose įgalinkite programos diegimą iš nežinomų šaltinių.
4. Įdiekite programą.
Sėkmingai įdiegę, telefone rasite programą, pavadintą „ Processing_code “, kaip parodyta žemiau:
Sukurkite savo programą naudodami apdorojimą:
Arba galite naudoti aukščiau pateiktą.APK failą, arba galite sukurti savo programą naudodami apdorojimą, kaip paaiškinta čia. Čia galite atsisiųsti visą „Android“ apdorojančios programos kodą. Programa yra savaime paaiškinama naudojant komentarų eilutes. Bet jei turite kokių nors problemų ar norite šiek tiek pakeisti savo programą, naudokite komentarų skyrių ir aš jums padėsiu.
„Android“ programa užmezga ryšį su mūsų „Bluetooth“ moduliu paleidžiant programą ir gauna automobilio greitį, kurį apskaičiavo ir transliavo „Arduino Pro mini“. Sukūriau mažą grafiką, kad galėčiau parodyti greitį naudodamas „Analog spidometrą“, kad jis atrodytų šiek tiek patrauklus. Galite sugalvoti savo idėjų ir patobulinti kodą, kad pritaikytumėte jį savo poreikiams. Taip pat patikrinkite kitus mūsų apdorojimo projektus, kad sužinotumėte daugiau apie tai:
- „Ping Pong“ žaidimas naudojant „Arduino“
- Išmaniojo telefono valdomas FM radijas, naudojant apdorojimą.
- „Arduino“ radarų sistema naudojant apdorojimo ir ultragarso jutiklį
Įdiegę programą į savo mobilųjį telefoną, laikas išbandyti mūsų projektą. Bet mes dar nepritaikėme savo rinkinio prie transporto priemonės. Padarykime tai.
Spidometro rinkinio pritvirtinimas prie transporto priemonės:
Šį rinkinį montuojau ir išbandžiau, ir jis veikia kaip žavesys. Komplekto montavimas paliekamas jūsų kūrybiškumui, galite nusipirkti savo mažą dėžutę iš parduotuvės ir išgręžti skylutes laidams bei jungtims ir pritvirtinti ją prie savo transporto priemonės. Vienas svarbus dalykas, į kurį reikia atkreipti dėmesį, yra tai, kad magnetas turi būti prilipęs prie rato krašto, o salės jutiklis turėtų būti pritvirtintas kuo arčiau magneto, kad kaskart, kai magnetas kerta salės jutiklį, jis galėtų jį aptikti., išdėstymas parodytas žemiau.
Kadangi su savimi turiu 3D spausdintuvą, sukūriau savo korpusus, kad jie atrodytų gerai ir būtų lengvai montuojami ir atjungti nuo mūsų dviračio, kad būtų galima įkrauti akumuliatorių. Taigi, jei turite 3D spausdintuvą arba galite gauti prieigą prie jo, kad atspausdintumėte keletą medžiagų, toliau skaitykite, kitaip praleiskite šią dalį ir naudokitės savo kūrybiškumu, kad pritvirtintumėte šiuos dalykus. Sužinokite vartotojui 3D spausdintuvą čia.
Jei nusprendėte naudoti mano dizaino failus ir atsispausdinti savo priedus, įsitikinkite, kad jūsų pagrindinė plokštė yra artima žemiau nurodytiems matmenims
Išsamius 3D spausdinimo dizaino ir STL failus galite atsisiųsti iš čia. Jei plokštė yra panaši į tai, kas buvo padaryta čia, galite tiesiogiai 3D spausdinti savo korpusus naudodami nurodytus STL failus, arba galite naudoti dizaino failus ir modifikuoti juos pagal savo plokštę.
Pradėkime nuo 3D atspausdinto mažo korpuso, kuris bus naudojamas salės jutiklio moduliui. Atspausdinkite gaubtą, įdėkite į jį grandinę ir pritvirtinkite laidus per numatytą skylę, tada pritvirtinkite prie automobilio, kad salės jutiklis būtų šalia magneto, kaip parodyta žemiau.
Prieš projektuojant korpusą, rekomenduojama sumodeliuoti pagrindinę plokštę, kad galėtume įsitikinti, jog ji tinkamai tinka, nes patikėkite manimi, jei košmaras būtų, kai spausdinsite korpusą 6 ilgas valandas, ir galų gale jis netiks į savo tobulą lentą. Mano pagrindinės lentos modelio lenta parodyta žemiau.
Dabar bus lengva suprojektuoti pagrindinę gaubto dėžę. Suprojektavau pagrindinę dėžę iš dviejų failų, kad viena dėžutės dalis laikytų elektroniką, o kita būtų visam laikui pritvirtinta prie ciklo naudojant spaustukus ir varžtus. Šias dvi dalis galima lengvai pritvirtinti, kad būtų galima sukomplektuoti, kad būtų visas korpusas, ir tada jas atskirti, kai reikia įkrauti ličio bateriją ar dirbti su elektronika.
Kai bus sukurta ir atspausdinta pirmoji gaubto dalis, visi komponentai bus patalpinti viduje, kaip parodyta žemiau, ir jis turėtų atrodyti maždaug taip.
Kaip matote, priešais dėžutę yra dvi angos, viena naudojama USB, per kurią galime įkrauti mobilųjį telefoną. Kitas yra skirtas „micro USB“, kuriuo galime įkrauti ličio bateriją.
Dabar atspausdinkime antrąją pagrindinio korpuso dalį ir patikrinkime, ar ji tinka pirmajai daliai, kaip tikėtasi.
Kai būsime patenkinti dalimis, antrąją gaubto dalį galime sumontuoti naudodami C spaustuką ir kai kurias veržles bei varžtus, kaip parodyta žemiau:
Dabar prijunkime akumuliatorių prie pagrindinės grandinės naudodami magnetus ir juostas, kaip aptarta aukščiau, ir laikykite ją nuolat saugioje mūsų gaubte.
Tai yra tai, kad mūsų aparatinė įranga yra paruošta galutiniam montavimui. Paprasčiausiai prijunkite salės jutiklio modulį su pagrindine plokšte ir stumkite kilnojamąjį gaubtą į fiksuotą korpusą, ir jis bus paruoštas veikti.
Darbinis paaiškinimas:
Įsitikinę, kad ličio baterija įkrauta, tiesiog įjunkite rinkinį naudodami perjungimo jungiklį ir atidarykite „Android“ programą. Jei viskas gerai, turėtumėte gauti žemiau pateiktą ekraną ir jame turėtų būti rodoma, kad jūsų programa prisijungė prie „Bluetooth“ modulio HC-05, kaip parodyta žemiau. Prieš atidarydami programą nepamirškite susieti „Bluetooth“ modulio su telefonu.
Dabar tiesiog važiuokite savo transporto priemone ir turėtumėte pastebėti spidometrą, rodantį dabartinį jūsų transporto priemonės greitį. Taip pat galite įkrauti mobilųjį telefoną važiuodami naudodami įprastą įkroviklio laidą. Baigę važiuoti, galite nuslysti nuo ciklo dėžutės ir įkrauti iš kintamosios srovės tinklo naudodami bet kokį išmaniojo telefono mobilųjį įkroviklį.
Taigi, kaip jūs galite tuo pačiu metu išmatuoti savo transporto priemonės greitį, bet ir įkrauti „Mobile“. Tikiuosi, jums patiko projektas. Šiam projektui galite pridėti daug daugiau funkcijų, tik pakoreguodami kodus. Galite apskaičiuoti savo važiavimo įveiktą atstumą, didžiausią ir vidutinį važiavimo greitį ir kt. Praneškite man, jei turite kokių nors klausimų, naudodamiesi komentarais, ir aš mielai jums padėsiu.
Kaip įprasta, visas projekto darbas bus parodytas žemiau esančiame vaizdo įraše.