» elektronika » Arduino »Kerék távolságmérőt (görbemérőt) az Arduino-n csináld magad

Csináld magad "kerék-távolságmérő (görbemérő) Arduinón

Helló mindenkinek! Most megpróbálok részletesen beszélni arról, hogyan lehet elkészíteni a legegyszerűbb és legolcsóbb görbimétert.

De először derítsük ki, mi ez és miért van szüksége erre. Valójában a neve megmondja szándékát. A curvus latin szóból származik, amely görbe vagy hullámos jelentést jelent. Vagyis egy görbületmérő kerék vagy görgős távolságmérő. Kétféle görbemérőt különböztetünk meg: kicsi (térképészeti), amelyeket általában a térképen történő mérésekhez használnak, és nagy (út), amelyeket általában a már autópályák ívelt szakaszának hosszának mérésére használnak. Használhatók bárhol, ahol kényelmetlen vagy lehetetlen mérni a szokásos ruletttel, ezért a projekt érdekesnek ígérkezik.

A görbemérő felépítésekor elsőként vigyázzon egy kerékre vagy hengerre. Elég kicsinek kell lennie, hogy a műszer pontossága magas legyen, ugyanakkor elég nagynak is, hogy a mért felület érdességét ne befolyásolja nagymértékben a leolvasás értéke. Az én esetemben a kerék átmérője 14 centiméter.

Most meg kell határoznia a szerkezet anyagát és méretét. Használtam egy fát.

A rúdon megjelöltem és elvégeztem a szükséges vágásokat és lyukakat.

Aztán kis öncsavarokkal csavaroztam a megmunkált alkatrészeket.
Most nézzünk egy kicsit maga a görbemérőtől, és gondolkodjunk azon, hogyan lehet ez a dolog meghatározni a távolságot? Minden nagyon egyszerű. Csak ki kell számolnunk a kerék fordulatának számát, és szoroznunk kell annak külső kerületének hosszával, és még könnyebb a hosszérték hozzáadása minden egyes alkalommal, amikor a kerék újabb fordulatot hajt végre.

Az egyes fordulatok legegyszerűbb számításához használhatja a „csúszó érintkezőt”. Nem javaslom azonban ilyen referencia-mechanizmus alkalmazását. Sokkal jobb nádkapcsolót vagy Hall-érzékelőt használni.

Ideje kipróbálni a kormányon. Rögzítem egy hosszú csavarral. Megtalálunk egy helyet a kereten, ahol a kerékperem a lehető legközelebb van, és ütésekkel jelöljük meg. Ezen a területen körül kell telepíteni a nádkapcsolót.

A kerékre telepíteni kell egy kis mágnest.Ügyeljen arra, hogy az ereje elegendő legyen a nádkapcsoló érintkezőinek zárásához.
Most részt veszünk a rendszer "agyában". Saját esetemben ez díj Arduino UNO. Kiolvassa a nádkapcsoló állapotát, és Bluetooth-kapcsolaton keresztül továbbítja az adatokat a HC-05 modul segítségével a telefonra. Mellesleg, a nádkapcsoló normál gombként van csatlakoztatva a táblához. Úgy gondolom, hogy a Bluetooth modul csatlakoztatásával nem lehet gond.

Ami a kódot illeti, ez nagyon egyszerű. És megpróbáltam megjegyzést fűzni ahhoz, hogy minden a lehető legtisztább legyen.

int gercon = 12; // a nádkapcsolót 12 tűsre csatlakoztatta
kettős távolság = 0; // kettős változót hozott létre a távolság tárolására
érvénytelen beállítás () {
   Serial.begin (9600); // soros kapcsolatot csatlakoztatott
 }
  void loop () {
/ * A következő az if hurok. Ha a nádkapcsoló zárva van, akkor a következő távolságszámítást kell elvégezni. Az 0.46472 érték már a kerék egy fordulatának kiszámított hossza. Az "extra" adatok elkerülése érdekében adjon hozzá 200 milliszekundum késleltetést, és jelenítse meg a leolvasott értékeket
* /
   if (digitalRead (gercon) == HIGH)
   {
 távolság = távolság + 0,46472;
 késleltetés (200);
 Serial.println (távolság);
}
  } 


Itt van a görbemérőnk és készen állunk!

Készítsünk egy pár tesztversenyt. Minden remekül működik!


Megnézhet egy videót az eszköz összeszereléséről, talán talál valami érdekeset.
[media = https: //youtu.be/kx_7ztPsLws]

Jó ismétlést a projektben!
5
5
7

Adj hozzá egy megjegyzést

    • smilemosolyogxaxarendbendontknowjehunea
      főnökkarcolásbolondigenigen-igenagresszívtitok
      Bocsánattáncdance2dance3megbocsátássegítségitalok
      megállásbarátokjógoodgoodsípájulásnyelv
      füsttapsolóCrayállapítsagúnyosdon-t_mentionletöltés
      hőségingerültlaugh1MDAtalálkozómoskingnegatív
      not_ipopcornbüntetolvasmegijesztijesztkeresés
      gúnyolódásthank_youeztto_clueumnikakutegyetért
      rosszbeeeblack_eyeblum3pírdicsekvésunalom
      cenzúrázottvidámságsecret2fenyegetgyőzelemyusun_bespectacled
      ShokRespektlolprevedfogadtatáskrutoyya_za
      ya_dobryisegítőne_huliganne_othodiFLUDtilalomközel
1 megjegyzés
Vendég, Szergej
Miért UNO, ha az attiny13 elég a szem számára ...
Ami a kódot illeti, legalább hozzá kell adnia egy ellenőrzést, hogy a mágnes elhagyta-e a nádkapcsolót, mert ebben a megvalósításban egy bizonyos sebességgel, és még inkább, ha a kerék megáll, többször is feldolgozható, vagy egyáltalán nem dolgozható fel. Ehhez csak adjunk hozzá egy globális változót, és ellenőrizzük annak állapotát, mielőtt kiszámolnánk a hosszúságot, például:
int gercon = 12; // a nádkapcsolót 12 tűsre csatlakoztatta
int i = igaz;
kettős távolság = 0; // kettős változót hozott létre a távolság tárolására
érvénytelen beállítás () {
Serial.begin (9600); // soros kapcsolatot csatlakoztatott
}
void loop () {
/ * A következő az if hurok. Ha a nádkapcsoló zárva van, akkor a következő távolságszámítást kell elvégezni. Az 0.46472 érték már a kerék egy fordulatának kiszámított hossza. Az "extra" adatok elkerülése érdekében adjon hozzá 200 milliszekundum késleltetést, és jelenítse meg a leolvasott értékeket
*/
if (digitalRead (gercon) == HIGH)
{
ha (i <1)
{
távolság = távolság + 0,46472;
i = 1;
// késleltetés (200);
Serial.println (távolság);
}
}
ha (i> 0)
{
i ++;
késleltetés (1);
}
if (digitalRead (gercon) == LOW)
{
if (i> 30) // elkerüli a hamis pozitív eredményeket az érintkező ugrálódás miatt
{
i = 0;
}
}
}

Még jobb, ha két nádkapcsolót tesz fel, ez lehetővé teszi a forgás irányának meghatározását (nem mentem oda mérni - visszamentem, és nem az elejétől indultam, másrészt ráztam előre, hátra és egy szomszéddal beszélgetve stb.). Hozzáadhat mágneseket a felbontás megváltoztatásához.
ZY Nem ellenőriztem a kód változásait, lehetnek hibák.

Azt javasoljuk, hogy olvassa el:

Adja át az okostelefon számára ...