Taula de continguts:

Puc utilitzar TinyLiDAR a Scratch ?: 3 passos
Puc utilitzar TinyLiDAR a Scratch ?: 3 passos

Vídeo: Puc utilitzar TinyLiDAR a Scratch ?: 3 passos

Vídeo: Puc utilitzar TinyLiDAR a Scratch ?: 3 passos
Vídeo: Scratch 2024, De novembre
Anonim
Puc utilitzar TinyLiDAR a … Scratch?
Puc utilitzar TinyLiDAR a … Scratch?

De tant en tant rebem sol·licituds per preguntar-nos si tinyLiDAR funcionarà a la seva plataforma informàtica particular. Tot i que tinyLiDAR es va dissenyar com un senzill sensor d’ús LiDAR per a l’Arduino UNO, no hi ha res que impedeixi que s’utilitzi en altres plataformes com el Raspberry Pi (com es mostra a la instrucció anterior aquí). És a dir, si la plataforma té un bus I2C i pot suportar la funció d’estirament del rellotge de l’especificació I2C. Llavors, i si el vostre consell ni tan sols admet I2C? - No importa el rellotge que estira coses … Bé, seria un escenari difícil, però en realitat existeix per al llenguatge de programació visual ultra popular anomenat "Scratch".

Google si encara no n’heu sentit a parlar abans, però en poques paraules, és un primer llenguatge fantàstic per a qualsevol persona que tingui la seva ment en l’àmbit de la programació. Scratch va ser creat pel MIT Media Lab i existeix des de fa més de 16 anys. És el llenguatge goto per ensenyar als nens a codificar arreu del món. Tothom pot començar a utilitzar-lo gratuïtament, ja que normalment funciona al vostre escriptori des d’un navegador web. Consulteu-ho aquí si voleu.

TL; versió DR

SÍ! Amb una nova característica anomenada "Mode d'emulació per ultrasons" a la versió 1.3.9 de tinyLiDAR f / n

Pas 1: què es ratlla?

Ara hi ha molts sabors d’Scratch en llibertat. Els entusiastes de la robòtica tendeixen a utilitzar les versions centrades en GPIO com ScratchGPIO o altres versions modificades com ScratchX que es poden fer per donar suport a qualsevol "maquinari experimental". Tots aquests són ideals per a usuaris avançats, però les versions principals que s’instal·len per defecte al pi seran el nostre focus per a aquesta instrucció, ja que tenen opcions de maquinari bastant limitades.

El Raspbian Stretch Desktop de pi inclou dues versions de Scratch preinstal·lades. És a dir, "Scratch" i "Scratch 2". Utilitzarem el primer també conegut com "Scratch 1.4 (NuScratch)" i l'utilitzarem "fora de línia" perquè puguem utilitzar la funció del servidor GPIO.

Podeu descarregar la imatge oficial de l'escriptori pi aquí.

Per qualsevol motiu, els creadors de Scratch van decidir donar suport només a alguns dels sensors més habituals de grans empreses com Lego, etc. Curiosament, també van decidir afegir suport per a l'HC-SR04. Aquest és, per descomptat, l’omnipresent sensor de distància ultrasònic que simplement genera una amplada de pols única proporcional a la distància mesurada.

La precisió de la mesura pot variar una mica segons la temperatura de l’aire, la humitat i el material objectiu, tal com s’esmenta aquí, aquí i aquí. Però, en general, gairebé qualsevol plataforma pot mesurar l'amplada de pols de sortida d'aquest dispositiu.

Pas 2: nova funció

Nova funció
Nova funció

La publicació d’impulsos precisos a escala de microsegons no és un problema per a nosaltres amb tinyLiDAR, ja que tenim temporitzadors de maquinari d’alta resolució de recanvi dins del micro de 32 bits incorporat. tinyLiDAR també sempre es calibra automàticament per a la temperatura, ja que s’encén, de manera que no calen més ajustos per a l’entorn operatiu.

Fem-ho

D’acord, podríem fer, tan sols vam afegir una nova característica a tinyLiDAR (a partir del firmware 1.3.9) anomenada “Mode d’emulació per ultrasons”. Podeu accedir-hi fent servir l'ordre "u" des del terminal GUI tinyLiDAR actualitzat.

Si l’utilitzeu canviarà la configuració de la memòria no volàtil, de manera que farà que tinyLiDAR sembli un sensor d’ultrasons genèric fins i tot després de desconnectar-lo. Podeu canviar-lo al mode I2C normal prement el botó de reinici i emetent l'ordre "az". Trobareu més detalls al manual de l'usuari.

Per fer la vida encara més senzilla, estem fent que el sensor tinyLiDAR estigui disponible per a aquest nou mode d’emulació per ultrasons des del nostre lloc web. Només cal que demaneu la versió "-u".

Mira Ma, sense soldar

No es necessita soldadura ni tampoc taulers, ja que els cables inclosos "Grove a Female 4pin" es connecten directament als pins de capçalera Raspberry pi. El pas de disparador és el fil groc i el pas de ressò és el fil blanc. El negre i el vermell són per poder, per descomptat. Consulteu la imatge principal anterior per obtenir més informació.

Per cert, vam fer un pas més i vam fer que el pin groc es comportés com el sensor PING))) que utilitza un sol cable tant per al senyal d’activació com per al de ressò.

Per això, ara podeu prendre mesures amb tinyLiDAR mitjançant l'esbós per ultrasons "PING" predeterminat que s'inclou amb tots els IDE Arduino sense cap canvi de codi. Podeu provar-ho també sense demora.

Per descomptat, podeu establir paràmetres com ara alta precisió, llarga distància, etc. de les vostres mesures LiDAR abans de seleccionar l'ordre "u" i, a continuació, prendrà aquestes mesures cada vegada que vegi caure el pin de disparador tal com es mostra al diagrama anterior.

Perill, serà Robinson

Tingueu en compte que el sensor d'ultrasons SR04 necessita algunes resistències per evitar que el subministrament de + 5v danyi el pi. Però com que tinyLiDAR funciona de forma nativa a partir de + 3.3v, no cal que hi hagi cap resistència que interfaci amb el pi:)

Pas 3: codificar-lo

Codificant-ho
Codificant-ho
Codificant-ho
Codificant-ho

Llavors, quin és exactament el codi que necessitem perquè tinyLiDAR funcioni a Scratch?

M'alegro de preguntar!

Només es tracta d’arrossegar uns quants blocs d’emissió simples com es mostra a les imatges anteriors.

Per habilitar els pins GPIO podem emetre el "broadcast gpioserveron". A continuació, per configurar el pin de desencadenament emetem el "broadcast config16out". A continuació, podem configurar el pin de ressò per "broadcast config26in" i, a continuació, començar les mesures per "broadcast ultrasonictrigger16echo26". Això farà que es prenguin mesures contínuament a una cadència aproximada de 140 ms. Podeu llegir les dades mesurades mitjançant el bloc de sentit "valor del sensor de distància ultrasònic".

Doncs això és tot per ara, gràcies per llegir i assegureu-vos de veure el divertit petit programa de demostració Scratch (compartit aquí) que vam fer anomenat "tinyLiDAR_catch_me" i … Scratch On!;)

Recomanat: