Përmbajtje:

Measurino: një dëshmi e rrotës matëse e konceptit: 9 hapa
Measurino: një dëshmi e rrotës matëse e konceptit: 9 hapa

Video: Measurino: një dëshmi e rrotës matëse e konceptit: 9 hapa

Video: Measurino: një dëshmi e rrotës matëse e konceptit: 9 hapa
Video: MEASURING FITNESS INFLUENCERS PT. 2 2024, Dhjetor
Anonim
Measurino: një dëshmi e konceptit të rrotës matëse
Measurino: një dëshmi e konceptit të rrotës matëse

Measurino thjesht numëron numrin e rrotullimeve të një rrote dhe distanca e përshkuar është drejtpërdrejt proporcionale me rrezen e vetë rrotës. Ky është parimi themelor i një Odometri dhe unë e kam filluar këtë projekt kryesisht për të studiuar se si të mbajë qarkun (i kontrolluar nga një mikrokontrollues Arduino), i pajtueshëm me disa distanca, nga milimetra në kilometra, dhe për të vlerësuar problemet ose përmirësimet e mundshme.

Hapi 1: Pjesët dhe Përbërësit

  • Arduino Nano rev.3
  • Diplomë 128 × 64 OLED (SSD1306)
  • Kodifikues rrotullues fotoelektrik shtesë (400P/R)
  • Rrota gome për modelin e avionëve (51 mm dia)
  • 2 butona shtytës
  • Bateri 9v

Hapi 2: Kodifikuesi

Kodifikuesi
Kodifikuesi
Kodifikuesi
Kodifikuesi

Për këtë projekt unë kam testuar disa kodues të lirë rrotullues, por i hodha menjëherë për shkak të çështjeve të saktësisë/ndjeshmërisë. Kështu shkova te Kodifikuesi Rritës Rritës Fotoelektrik DFRobot - 400P/R SKU: SEN0230. Ky është një kodues rrotullues fotoelektrik shtesë industrial me material alumini, guaskë metalike dhe bosht çeliku inox. Ajo gjeneron sinjal pulsi ortogonal AB dyfazor përmes rrotullimit të diskut të grilës dhe optokouplerit. 400 pulse/raund për secilën fazë, dhe 1600 impulse/raund për dalje 4fazore 4 herë. Ky kodifikues rrotullues mbështet shpejtësinë maksimale 5000 r/min. Dhe mund të përdoret për shpejtësinë, këndin, shpejtësinë këndore dhe matjen e të dhënave të tjera.

Kodifikuesi rrotullues fotoelektrik ka një dalje kolektori të hapur NPN, kështu që ju duhet të përdorni rezistorë tërheqës ose të aktivizoni tërheqjen e brendshme të Arduino. Po përdor çipin rregullator të tensionit 750L05, i cili ka një hyrje të fuqisë me rreze të gjerë DC4.8V-24V.

Hapi 3: Ndjeshmëria

Ndjeshmëri
Ndjeshmëri

Ky kodifikues rrotullues optoelektrik ka vërtet një ndjeshmëri të madhe, gjë që e bën atë të përsosur për kontrollin e boshtit dhe aplikimet e pozicionimit. Por për qëllimin tim ishte shumë e arsyeshme. Me një rrotë 51 mm, ky kodues ka një ndjeshmëri prej 0.4 mm, që do të thotë se nëse dora juaj ka dridhje minimale, ato do të regjistrohen. Kështu që unë ul ndjeshmërinë duke shtuar një histerezë në rutinën e ndërprerjes:

void interrupt ()

{char i; i = digitalRead (B_PHASE); nëse (i == 1) numëroni += 1; tjetër numëroni -= 1; nëse (abs (numërimi)> = histerezë) {flamuri_A = flamuri_A+numërimi; numërimi = 0; }}

Ky truk ishte i mjaftueshëm për t'i dhënë një stabilitet të mirë masës.

Hapi 4: Matja

Zgjidhni Njësinë tuaj të Masës (Dhjetore ose Perandorake) dhe më pas vetëm poziciononi timonin me pikën e tij të kontaktit në fillim të masës tuaj, shtypni butonin Reset dhe mbajeni atë të rrotullohet deri në fund. Nga e majta në të djathtë masa rritet dhe përmbledh, për nga e majta zvogëlohet dhe zbritet. Ju gjithashtu mund të matni objektet e kurbës (forma e makinës suaj, parmaku i një shkalle spirale, gjatësia e krahut tuaj nga shpatulla në dore me bërryl të përkulur, etj.).

Një rrotullim i plotë i një rrote me diametër = D do të masë një gjatësi prej D*π. Në rastin tim, me një rrotë 51mm, kjo është 16.02cm dhe çdo rriqër mat 0.4mm (shih paragrafin Ndjeshmëria).

Hapi 5: Montimi

PoC është bërë në një tabelë për të demonstruar qarkun. Çdo komponent është bashkangjitur në tabelë dhe kodifikuesi rrotullues është i lidhur me një bllok terminali të vidhave me pol 2x2. Bateria është një bateri standarde 9v dhe konsumi i përgjithshëm i energjisë i qarkut është rreth 60mA.

Hapi 6: Kodi

Për ekranin, kam përdorur U8g2lib i cili është shumë fleksibël dhe i fuqishëm për këtë lloj ekrani OLED, duke lejuar një zgjedhje të gjerë të shkronjave dhe funksione të mira pozicionimi. Unë nuk humba shumë kohë në mbushjen e ekranit me informacione, pasi kjo ishte vetëm një Poc.

Për të lexuar koduesin, unë jam duke përdorur ndërprerjet e krijuara nga njëra prej 2 fazave: sa herë që boshti i koduesit lëviz, ai gjeneron një ndërprerje në Arduino të lidhur me ngritjen e impulsit.

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

Ekrani kalon automatikisht nga milimetra, në metra, në kilometra dhe (nëse zgjidhet nga butoni i shtypjes) nga inç, në oborre, në milje, ndërsa butoni RST e rivendos masën në zero.

Hapi 7: Skemat

Skematike
Skematike

Hapi 8: Nga PoC në Prodhim

Pse është kjo një dëshmi e konceptit? Për shkak të shumë përmirësimeve që mund/duheshin bërë para ndërtimit të një pajisjeje me funksionim të plotë. Le të shohim të gjitha përmirësimet e mundshme në detaje:

  • Rrota Ndjeshmëria/saktësia e Measurino varet nga rrota. Një rrotë më e vogël mund t'ju japë saktësi më të mirë në matjen e gjatësisë së vogël (në rendin e milimetrave në centimetra). Një rrotë shumë më e madhe me një bum shtrirjeje do t'ju lejojë të ecni në rrugë dhe të matni kilometra. Për rrotat e vogla, materiali duhet të merret parasysh: një rrotë me gome të plotë mund të deformojë pak dhe të ndikojë në saktësinë, kështu që në atë rast unë do të sugjeroj një rrotë alumini/çeliku me vetëm një shirit të hollë për të shmangur rrëshqitjet. Me një modifikim të parëndësishëm të softuerit (zgjidhni diametrin e duhur të rrotave me një ndërprerës), ju mund të konsideroni që rrotat e ndërrueshme të përshtaten në çdo masë, duke përdorur një lidhës 4-pin (dmth.: porta usb).
  • Softuer. Duke shtuar një buton tjetër, softueri gjithashtu mund të kujdeset për matjen e zonave të amplitudës së drejtkëndëshave ose këndeve. Unë gjithashtu këshilloj të shtoni një buton "Hold" për të ngrirë masën në fund, duke shmangur lëvizjen pa dashje të timonit para se të lexoni vlerën në ekran.
  • Zëvendësoni timonin me një bobinë. Për masa të shkurtra (brenda pak metrash) rrota mund të zëvendësohet me një bobinë me sustë që përmban fije ose shirit. Në këtë mënyrë ju vetëm duhet të tërhiqni fijen (duke e bërë boshtin e koduesit të rrotullohet), të merrni masën tuaj dhe të shikoni në ekran.
  • Shtoni ekranin e gjendjes së baterisë. Pina referuese 3.3v Arduino (e saktë brenda 1%) mund të përdoret si bazë për konvertuesin ADC. Pra, duke bërë një konvertim analog në dixhital në kunjin 3.3V (duke e lidhur atë me A1) dhe pastaj duke e krahasuar këtë lexim me leximin nga sensori, ne mund të ekstrapolojmë një lexim të vërtetë, pavarësisht se çfarë është VIN (përderisa është mbi 3.4V). Një shembull pune mund të gjendet në këtë projekt tjetër timin.

Hapi 9: Galeria e Imazheve

Recommended: