Sisukord:

Measurino: mõõteratta kontseptsiooni tõestus: 9 sammu
Measurino: mõõteratta kontseptsiooni tõestus: 9 sammu

Video: Measurino: mõõteratta kontseptsiooni tõestus: 9 sammu

Video: Measurino: mõõteratta kontseptsiooni tõestus: 9 sammu
Video: КАКИМ БУДЕТ PORTAL 3 2024, November
Anonim
Measurino: mõõteratta kontseptsiooni tõestus
Measurino: mõõteratta kontseptsiooni tõestus

Measurino loeb lihtsalt ratta pöörete arvu ja läbitud vahemaa on otseselt võrdeline ratta enda raadiusega. See on läbisõidumõõdiku aluspõhimõte ja olen selle projektiga alustanud peamiselt selleks, et uurida, kuidas hoida vooluahelat (seda käsitseb Arduino mikrokontroller), ühilduvat mitme vahemaaga, millimeetritest kilomeetriteni, ning hinnata võimalikke probleeme või parandusi.

Samm: osad ja komponendid

  • Arduino Nano rev.3
  • 128 × 64 OLED -diplay (SSD1306)
  • Täiendav fotoelektriline pöörlev kodeerija (400P/R)
  • Kummiratas lennukimudelitele (diameeter 51 mm)
  • 2 nuppu
  • 9v aku

2. samm: kodeerija

Kodeerija
Kodeerija
Kodeerija
Kodeerija

Selle projekti jaoks olen katsetanud mitmeid odavaid pöörlevaid kodeerijaid, kuid lükkasin need täpsuse/tundlikkuse probleemide tõttu kohe ära. Niisiis läksin DFRoboti täiendava fotoelektrilise pöörleva kodeerija juurde - 400P/R SKU: SEN0230. See on tööstuslik täiendav fotoelektriline pöörlev kodeerija, millel on alumiiniummaterjal, metallkest ja roostevabast terasest võll. See genereerib AB kahefaasilise ortogonaalse impulssignaali võreketta ja optroni pöörlemise kaudu. 400 impulsi/ring iga faasi kohta ja 1600 impulssi/ring kahefaasilise 4-kordse väljundi korral. See pöörlev kodeerija toetab maksimaalset kiirust 5000 p/min. Ja seda saab kasutada kiiruse, nurga, nurkkiiruse ja muude andmete mõõtmiseks.

Fotoelektrilisel pöördkooderil on NPN avatud kollektoriväljund, seega peate kasutama tõmbetakistusi või lubama sisemise Arduino tõmbe. See kasutab 750L05 pingeregulaatori kiipi, millel on DC4.8V-24V laia toite sisend.

3. samm: tundlikkus

Tundlikkus
Tundlikkus

Sellel optoelektrilisel pöörleval kodeerijal on tõesti suur tundlikkus, mis muudab selle ideaalseks võlli juhtimiseks ja positsioneerimiseks. Aga minu jaoks oli see liiga mõistlik. 51 mm rattaga on selle kodeerija tundlikkus 0,4 mm, mis tähendab, et kui teie käes on värisemine minimaalne, siis need salvestatakse. Nii vähendasin tundlikkust, lisades katkestusrutiini hüsterees:

tühine katkestus ()

{char i; i = digitalRead (B_PHASE); kui (i == 1) loe += 1; muidu loe -= 1; kui (abs (loend)> = hüsterees) {lipp_A = lipp_A+arv; loendus = 0; }}

Sellest nipist piisas, et anda mõõdule hea stabiilsus.

4. samm: mõõtmine

Valige oma mõõtühik (kümnend- või keiserlik) ja seejärel asetage ratas oma kontaktpunktiga mõõtmise alguses, vajutage lähtestusnuppu ja hoidke seda lõpuni pöörlemas. Vasakult paremale mõõt suureneb ja võtab kokku, paremalt vasakule see väheneb ja lahutatakse. Saate mõõta ka kõveraid objekte (teie auto kuju, keerdtrepi käsipuud, käe pikkus õlast randmeni painutatud küünarnukiga jne).

Ratta täielik pöörlemine läbimõõduga = D mõõdab pikkust D*π. Minu puhul on 51 mm ratta puhul see 16,02 cm ja iga puugi mõõt on 0,4 mm (vt lõiku Tundlikkus).

5. samm: kokkupanek

PoC on vooluringi demonstreerimiseks valmistatud leivaplaadil. Kõik komponendid on plaadile kinnitatud ja pöördkooder on ühendatud 2x2 poolusega kruviklemmiplokiga. Aku on 9v standardaku ja vooluahela kogutarbimine on umbes 60mA.

6. samm: kood

Ekraani jaoks kasutasin U8g2lib, mis on seda tüüpi OLED -ekraanide jaoks väga paindlik ja võimas, võimaldades laia valikut fonte ja häid positsioneerimisfunktsioone. Ma ei raisanud liiga palju aega, täites ekraani teabega, kuna see oli lihtsalt Poc.

Koodri lugemiseks kasutan katkestusi, mis on genereeritud ühest kahest faasist: iga kord, kui kodeerimisvõll liigub, tekitab see katkestuse Arduinole, mis on seotud impulsi tõusuga.

attachInterrupt (digitalPinToInterrupt (A_PHASE), katkestada, RISING);

Ekraan lülitub automaatselt millimeetritelt meetritele, kilomeetritele ja (kui see on nupust valitud) tollidest, jardidest, miilidest, samal ajal kui RST -nupp nullib mõõtmise.

Samm: skeemid

Skeemid
Skeemid

8. samm: PoC -st tootmiseni

Miks on see kontseptsiooni tõestus? Kuna on palju parandusi, mida võiks/tuleks teha enne täielikult toimiva seadme ehitamist. Vaatame üksikasjalikult kõiki võimalikke täiustusi:

  • Ratas. Measurino tundlikkus/täpsus sõltub ratast. Väiksem ratas võib anda teile täpsuse väikeste pikkuste mõõtmisel (millimeetritest sentimeetriteni). Palju suurem ratas koos pikenduspoomiga võimaldab teel kõndida ja kilomeetreid mõõta. Väikeste rataste puhul tuleb arvestada materjaliga: täiskummist ratas võib veidi deformeeruda ja täpsust mõjutada, nii et sel juhul soovitan libisemise vältimiseks alumiiniumist/terasest ratast, millel on vaid õhuke lint. Triviaalse tarkvara redigeerimisega (valige lülitiga õige ratta läbimõõt) võite kaaluda omavahel ühendatavaid rattaid, et kohaneda mis tahes mõõtmetega, kasutades 4-kontaktilist pistikut (st USB-porti).
  • Tarkvara. Veel ühe nupu lisamisega saaks tarkvara hoolitseda ka ristkülikute või nurkade amplituudi mõõtmise eest. Samuti soovitan lisada mõõtmise külmutamiseks lõpus nupp "Hold", vältides ratta tahtmatut liigutamist enne väärtuse lugemist ekraanilt.
  • Asendage ratas rulliga. Lühiajaliste meetmete jaoks (mõne meetri raadiuses) võib ratta asendada keermega või niiti sisaldava rulliga. Sel viisil peate lihtsalt keerme välja tõmbama (pannes kodeerimisvõlli pöörlema), mõõtma ja ekraanil jälgima.
  • Lisage aku oleku kuva. 3.3 V Arduino võrdlusnõela (täpne 1%piires) saab kasutada ADC muunduri alusena. Niisiis, tehes analoog-digitaalmuundamise 3,3 V kontaktile (ühendades selle A1-ga) ja seejärel võrdledes seda näitu anduri näituga, saame ekstrapoleerida tõepärase näidu, olenemata sellest, milline on VIN-kood (kui see on üle 3,4 V). Töötava näite võib leida sellest teisest minu projektist.

9. samm: pildigalerii

Soovitan: