Talaan ng mga Nilalaman:

1.50m na Panukala ng Tape ng Sosyal na Distancing: 3 Hakbang (na may Mga Larawan)
1.50m na Panukala ng Tape ng Sosyal na Distancing: 3 Hakbang (na may Mga Larawan)

Video: 1.50m na Panukala ng Tape ng Sosyal na Distancing: 3 Hakbang (na may Mga Larawan)

Video: 1.50m na Panukala ng Tape ng Sosyal na Distancing: 3 Hakbang (na may Mga Larawan)
Video: Au coeur de la Légion étrangère 2024, Nobyembre
Anonim
Image
Image
Skematika
Skematika

Sa pagbuo na ito ay umaangkop ako ng isang regular na panukalang tape upang sukatin kapag ang isang distansya ay sakop ng 1.5 m. Sasabihin ko pagkatapos na "isa at kalahating metro". Ipapahiwatig din nito sa isang berde o pulang ilaw kung ikaw ay nasa itaas o nasa ilalim ng distansya na ito.

Ang proyektong ito ay nagawa dahil sa isang hamon na sinimulan ni Henk Rijckaert sa kanyang seryeng youtube na De Koterij at nais kong maiugnay ito sa kasalukuyang mga problema ng COVID19 at paglayo sa lipunan. Ang isang dutch na sinasalitang pelikulang youtube tungkol sa pagbuo na ito ay matatagpuan sa Youtube Weyn. (Idinagdag ang mga caption sa Ingles).

Mga ginamit na materyales:

  1. Isang panukalang tape
  2. Optical Encoder: e4p-100-079
  3. Audio: DFPlayer Mini + sd-card
  4. Lakas: PowerBoost 1000C
  5. MCU: Adafruit HUZZAH32 - ESP32 Feather (ang anumang iba pang arduino ay maaaring magamit din dahil hindi ko ginagamit ang mga tampok na BLE o Wi-Fi sa build na ito)
  6. Neopixel
  7. Tagapagsalita
  8. Baterya
  9. On / off Switch

Hakbang 1: Skematika

Skematika
Skematika

Ikonekta ang mga bahagi tulad ng ipinahiwatig sa eskematiko. Ang enclosure ay muling ginamit at inangkop mula sa ibang build ngunit maaari mong gamitin ang anumang hugis-parihaba na kahon na sapat na malaki upang magkasya ang mga bahagi. Kailangan mo ng isang buo para sa iyong speaker, ang panukalang tape at ang on / of button (at mainam para sa usb min na singilin ang baterya).

Ikabit ang metal plate na may mga tagapagpahiwatig sa umiikot na bahagi ng pagsukat ng tape, siguraduhin na isentro mo ito hangga't maaari.

Sa SD-Card para sa DFPlayer kailangan mong kopyahin ang mp3 na nais mong i-play kapag natatakpan ang distansya na itinakda mo.

Hakbang 2: Code

Code
Code

Ang lahat ng code ay matatagpuan sa github.

Ang ESP32 (anumang iba pang arduino ay maaaring magamit din) ay patuloy na i-poll ang A en B output ng encoder at tataas o babaan ang isang counter. Kapag lumagpas sa -2150, alam ko para sa aking panukalang tape na lumampas ito sa 1.5 metro. Kailangan mong i-calibrate ito para sa iyong metro. Nakasalalay sa halagang binago ang kulay na humantong at ang DFPlayer ay iniutos na patugtugin ang mp3 na nasa sd-card.

Hakbang 3: Ipinaliwanag ng Encoder

Ipinaliwanag ng Encoder
Ipinaliwanag ng Encoder

Paano namin masusukat kung hanggang saan natin nabubu ang metro?

Ang paliwanag na ito ay ang salin ng video:

Sa gayon, para sa iyon ay gumagamit ako ng isang optical encoder, lalo na isang incremental rotary encoder. Mayroon ka ring iba, halimbawa mga ganap na encoder. Ang mga ito ay napaka-angkop para sa pag-alam ng eksaktong posisyon sa loob ng 1 pag-ikot. Ngunit ang isang incremental, sa kabilang banda, ay nagbibigay ng mga nakapirming pulso sa panahon ng isang pag-aalis, upang masusukat mo ang pag-ikot ng iyong sarili, din sa isang hanay ng iba't ibang mga pag-ikot. Sa ganitong paraan masusukat mo mismo ang pag-ikot, kahit na sa iba't ibang mga pag-ikot. Gumagamit ako ng isang quadrature encoder, na nagbibigay ng dalawang signal upang ang direksyon ay maaari ring matukoy.

Paano ito gumagana nang eksakto?

Mayroong mga itim na marka sa bilog na disc. Ang disc na ito ay nakakabit sa panukalang tape at samakatuwid ay paikutin kasama nito. Ang sensor mismo ay binubuo ng isang LED at dalawang mga detektor ng larawan na sumusukat kung ang ilaw ay makikita. Kung ang LED ay nagniningning sa itim na linya, mas kaunti o walang ilaw ang masasalamin kaysa sa lumiwanag ito sa metal sa pagitan ng itim na marka. Ang signal na ito ay mai-convert sa isang square wave sa output. Ang output ng A at B ay inilalagay sa isang paraan na maaari mong makita mula sa aling kombinasyon ng 2 ang direksyon na inililipat.

Tingnan natin nang detalyado

Sa bawat pagbabago ng gilid ng A maaari mong baguhin ang halaga ng B kung saang direksyon tayo liliko. Sa ginamit kong encoder, magsisimula ang A pulse bago ang B pulse kung lumiliko kami sa direksyon. At kabaliktaran kung lumiliko tayo sa pakaliwa. Kaya makikilala natin ang 3 pulso na nagsasabi sa atin ng isang bagay tungkol sa kung magkano ang naging. Ang aking encoder ay may 100 cycle bawat rebolusyon (CPR). sa kasong ito ay nakabukas ito ng halos 10.8 degree. Kung titingnan mo ang mga datasheet, bigyang-pansin kung ano ang ibig sabihin ng CPR kung minsan ito ang bilang ng mga cycle bawat revolusyon, kung minsan ang bilang ng mga bilang bawat rebolusyon (o indibidwal na magkakaibang mga estado bawat pagliko). Ang bawat pulso ay naglalaman ng 4 na magkakaibang estado. Mataas o mababa sa A at B. Alin ang 4 na beses na higit pa kaysa sa Mga Pag-ikot bawat Rebolusyon. Ang PPR o pulso bawat rebolusyon ay karaniwang ginagamit upang sukatin ang bilang ng mga pulso bawat buong rebolusyon. Ngunit ang ilang mga sheet ng data dito ay nangangahulugang ang bilang ng iba't ibang mga estado ng pulso bawat rebolusyon. Gayundin dito, tingnan nang mabuti sa datasheet kung ano ang ibig sabihin. Nakikita natin dito na ang A pulse ay nauna bago ang B pulse.

Ang isang madaling paraan upang maproseso ito sa code ay kapag nagbago ang signal ng A upang makita kung ano ang halaga ng signal ng B. Kung ang signal ng B ay walang halaga ng signal ng A, lumiliko kami pakanan at maaari naming madagdagan o madagdagan ang isang counter sa bawat oras.

Nakakakuha kami ngayon ng 200 mga pagbabago sa gilid bawat buong pagliko dahil mayroon kaming 2 bawat pulso. Kaya, kung ang counter ay nasa 200, pinaikot namin ang isang buong turn. O paikutin 360 degree Ang iba pang paraan sa paligid kung lumiko kami sa kabaligtaran na direksyon pagkatapos ay makikita mo na ang signal ng A ay bubuo ng parehong 3 pulso.

Kaya, mayroon din kaming dito na ito ay naging 10.8 degree. Ngunit sa oras na ito ang signal ng B ay may parehong halaga sa signal ng A, kaya alam natin na ang signal ng B ay nauna na sa signal ng A. At dahil dito, lumiliko kami sa pakaliwa. Sa kasong ito maaari naming mabawasan ang counter. Ngayon alam namin kung gaano karaming beses na pinutol ang panukalang tape. Kung nais nating malaman ang isang nakapirming distansya, ito ay medyo simple.

Halimbawa, dito, para sa isa at kalahating metro, ang counter ay dapat na -2150. Sa madaling salita, 3870 degree na pakaliwa.

Kung palaging nais mong malaman kung magkano ang na-unroll kailangan mong isaalang-alang na ang diameter ay nagiging mas maliit sa ibang salita, magkakaroon ng mas mababa at mas kaunting distansya sa sukat ng tape bawat buong pag-ikot.

Inirerekumendang: