Talaan ng mga Nilalaman:

Maaari Ko Bang Gumamit ng TinyLiDAR Sa Scratch ?: 3 Hakbang
Maaari Ko Bang Gumamit ng TinyLiDAR Sa Scratch ?: 3 Hakbang

Video: Maaari Ko Bang Gumamit ng TinyLiDAR Sa Scratch ?: 3 Hakbang

Video: Maaari Ko Bang Gumamit ng TinyLiDAR Sa Scratch ?: 3 Hakbang
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Nobyembre
Anonim
Maaari ko Bang Gumamit ng TinyLiDAR Sa… Scratch?
Maaari ko Bang Gumamit ng TinyLiDAR Sa… Scratch?

Nakakakuha kami ng mga kahilingan bawat ngayon at pagkatapos upang tanungin kung gagana ang tinyLiDAR sa kanilang partikular na platform ng computing. Bagaman ang tinyLiDAR ay dinisenyo bilang isang simpleng upang magamit ang sensor ng LiDAR para sa Arduino UNO, walang tigil na gamitin ito sa iba pang mga platform tulad ng Raspberry Pi (tulad ng ipinakita sa nakaraang itinuro dito). Iyon ay, kung ang platform ay may isang I2C bus at maaaring suportahan ang tampok na lumalawak sa orasan ng I2C spec. Kaya - paano kung hindi suportado ng iyong board ang I2C? - Hindi bale ang mga lumalawak na orasan … Kaya't iyon ay magiging isang hamon na senaryo ngunit sa totoo lang talaga ito ay umiiral para sa ultra tanyag na wikang pang-visual na programa na tinatawag na "Scratch".

Google ito kung hindi mo pa naririnig ito dati ngunit sa madaling sabi, ito ay isang mahusay na unang wika para sa sinuman na maiisip ang kanilang kalagayan sa larangan ng pagprograma. Ang simula ay nilikha ng MIT Media Lab at nasa paligid ng higit sa 16 na taon ngayon. Ito ang wikang goto para sa pagtuturo sa mga bata na mag-code sa buong mundo. Sinuman ay maaaring magsimulang gamitin ito nang libre - tulad ng karaniwang tumatakbo sa iyong desktop sa isang web browser. Suriin ito dito kung gusto mo.

Bersyon ng TL; DR

Oo! Gamit ang isang bagong tampok na tinatawag na "Ultrasonic Emulation Mode" sa tinyLiDAR f / w bersyon 1.3.9

Hakbang 1: Scratch Ano?

Maraming lasa ng Scratch sa ligaw ngayon. Ang mga mahilig sa Robotics ay may posibilidad na gamitin ang mga naka-focus na bersyon ng GPIO tulad ng ScratchGPIO o iba pang mga naka-mod na bersyon tulad ng ScratchX na maaaring gawin upang suportahan ang anumang 'pang-eksperimentong hardware'. Ang lahat ng ito ay mahusay para sa mga advanced na gumagamit ngunit ang mga pangunahing bersyon na naka-install bilang default sa pi ay ang aming pokus para sa itinuturo na ito sa halip na may limitadong mga pagpipilian sa hardware.

Ang pi's Raspbian Stretch Desktop ay may kasamang dalawang bersyon ng Scratch na paunang naka-install. Namely, "Scratch" at "Scratch 2". Gagamitin namin ang una aka "Scratch 1.4 (NuScratch)" at gagamitin namin itong "offline" upang magamit namin ang tampok na GPIO server.

Maaari mong i-download ang opisyal na imaheng pi desktop dito.

Sa anumang kadahilanan, nagpasya ang mga tagalikha ng Scratch na suportahan lamang ang ilan sa mga pinaka-karaniwang magagamit na mga sensor mula sa malalaking kumpanya tulad ng Lego atbp. Nakakatuwa kahit na, nagpasya din silang magdagdag ng suporta para sa HC-SR04. Ito ay, syempre, ang nasa lahat ng pook ultratunog distansya sensor na simpleng output ng isang solong lapad ng pulso na proporsyonal sa sinusukat distansya.

Ang katumpakan ng pagsukat ay maaaring mag-iba nang kaunti depende sa temperatura ng hangin, kahalumigmigan at target na materyal tulad ng nabanggit dito, dito at dito. Ngunit sa pangkalahatan, halos anumang platform ay maaaring masukat ang output ng lapad ng pulso ng aparatong ito.

Hakbang 2: Bagong Tampok

Bagong Tampok
Bagong Tampok

Ang paglabas ng tumpak na microsecond-scale pulses ay hindi isang problema para sa amin sa tinyLiDAR dahil mayroon kaming ekstrang mga timer ng mataas na resolusyon ng hardware sa loob ng on-board 32bit micro. Ang tinyLiDAR ay palaging nag-auto calibrate para sa temperatura dahil nagpapagana ito kaya walang karagdagang pagsasaayos ang kinakailangan para sa operating environment.

Gawin natin

Okay - kaya namin kaya nagdagdag lang kami ng isang bagong tampok sa tinyLiDAR (tulad ng firmware 1.3.9) na tinawag na "Ultrasonic Emulation Mode". Maaari mong ma-access ito sa pamamagitan ng paggamit ng "u" na utos mula sa na-update na tinyLiDAR GUI Terminal.

Ang paggamit nito ay magbabago ng mga setting sa di-pabagu-bago na memorya kaya't gagawing maliit ang hitsura ng isang maliit naLiDAR tulad ng isang generic na ultrasonikong sensor kahit na hindi mo ito tinutulak. Maaari mong baguhin ito pabalik sa normal na mode ng I2C sa pamamagitan ng pagpindot sa pindutan ng pag-reset at pag-isyu ng "az" na utos. Ang mga karagdagang detalye ay nasa manwal ng gumagamit.

Upang gawing mas simple ang buhay, ginagawa naming magagamit ang tinyLiDAR sensor na preset sa bagong Ultrason Emulation Mode na ito mula sa aming website. Mag-order lamang ng bersyon na "-u".

Look Ma, Walang Soldering

Walang paghihinang at walang tinapay na kinakailangan din bilang ang kasamang "Grove to Female 4pin" na mga cable ay direktang mai-plug sa mga Raspberry pi header pin. Ang trigger pin ay ang Yellow wire at ang echo pin ay ang White wire. Ang Itim at Pula ay para sa kapangyarihan syempre. Sumangguni sa pangunahing larawan sa itaas para sa mga detalye.

Btw, nagpunta kami sa isang hakbang pa at ginawa ang Yellow pin na kumilos tulad ng PING))) sensor na gumagamit ng isang solong kawad para sa parehong mga signal ng gatilyo at echo.

Dahil dito, maaari ka na ngayong gumawa ng mga sukat gamit ang tinyLiDAR gamit ang default na "PING" ultrasonic sketch na nagpapadala sa bawat Arduino IDE nang walang anumang mga pagbabago sa code! Maaari mo itong subukan nang walang pagkaantala rin.

Siyempre, maaari mong itakda ang mga parameter tulad ng mataas na kawastuhan, malayong distansya atbp ng iyong mga pagsukat sa LiDAR bago piliin ang utos na "u" at kukunin nito ang mga sukat sa tuwing nakikita nito ang dropper ng pin na pinakita tulad ng ipinakita sa diagram sa itaas.

Panganib, Will Robinson

Tandaan ang SR04 ultrasonic sensor ay nangangailangan ng ilang mga resistors upang maiwasan ang supply ng + 5v mula sa pinsala sa iyong pi. Ngunit dahil ang tinyLiDAR ay tumatakbo nang katutubong mula sa + 3.3v, hindi na kailangan para sa anumang mga resistors upang makipag-ugnay sa pi:)

Hakbang 3: Ang Coding Ito

Coding Ito
Coding Ito
Coding Ito
Coding Ito

Kaya kung gayon, ano talaga ang code na kailangan namin para gumana ang tinyLiDAR sa Scratch?

Natuwa tinanong mo!

Isang bagay lamang sa pag-drag ng ilang simpleng mga bloke ng pag-broadcast tulad ng ipinakita sa mga larawan sa itaas.

Upang paganahin ang mga pin ng GPIO maaari naming ipalabas ang "broadcast gpioserveron" Pagkatapos upang mai-configure ang trigger pin ay inilalabas namin ang "broadcast config16out" Susunod maaari naming mai-configure ang echo pin ng "broadcast config26in" at pagkatapos ay simulan ang mga sukat sa pamamagitan ng "broadcast ultrasonictrigger16echo26". Magdudulot ito ng mga pagsukat na tuloy-tuloy na dadalhin sa halos isang 140ms cadence. Maaari mong basahin ang sinusukat na data sa pamamagitan ng paggamit ng kahulugan ng halagang "halaga ng sensor ng distansya ng ultrasonic".

Kaya't ito lang ngayon, salamat sa pagbabasa at tiyaking suriin ang nakakatuwang maliit na demo na programa ng Scratch (na ibinahagi dito) na tinawag naming "tinyLiDAR_catch_me" at … Scratch On!;)

Inirerekumendang: