Obsah:

Môžem použiť TinyLiDAR v Scratch ?: 3 kroky
Môžem použiť TinyLiDAR v Scratch ?: 3 kroky

Video: Môžem použiť TinyLiDAR v Scratch ?: 3 kroky

Video: Môžem použiť TinyLiDAR v Scratch ?: 3 kroky
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, November
Anonim
Môžem použiť TinyLiDAR v … Scratch?
Môžem použiť TinyLiDAR v … Scratch?

Každú chvíľu dostávame žiadosti, aby sme sa spýtali, či tinyLiDAR bude fungovať na ich konkrétnej počítačovej platforme. Aj keď bol tinyLiDAR navrhnutý ako ľahko použiteľný snímač LiDAR pre Arduino UNO, nič nebráni tomu, aby bol použitý na iných platformách, ako je Raspberry Pi (ako je uvedené v predchádzajúcom návode tu). To znamená, že ak má platforma zbernicu I2C a môže podporovať funkciu rozťahovania hodín špecifikácie I2C. Takže - čo keď vaša doska nepodporuje ani I2C? - nevadí hodiny naťahujúce veci … To by bol náročný scenár, ale v skutočnosti to skutočne existuje pre veľmi populárny vizuálny programovací jazyk s názvom „Scratch“.

Vygooglite si to, ak ste o tom ešte nepočuli, ale v skratke, je to skvelý prvý jazyk pre kohokoľvek, kto môže dostať svoju myseľ do oblasti programovania. Scratch bol vytvorený MIT Media Lab a existuje už viac ako 16 rokov. Toto je jazyk, ktorý učí deti kódovať po celom svete. Zadarmo ho môže začať používať ktokoľvek - ako to bežne beží na vašej pracovnej ploche vo webovom prehliadači. Ak sa vám páči, pozrite sa sem.

Verzia TL; DR

ÁNO! S novou funkciou s názvom „Ultrazvukový emulačný režim“v tinyLiDAR f/w verzia 1.3.9

Krok 1: Scratch Čo?

V súčasnej dobe existuje veľa príchutí Scratch. Nadšenci robotiky zvyčajne používajú verzie zamerané na GPIO ako ScratchGPIO alebo iné modifikované verzie ako ScratchX, ktoré je možné vyrobiť na podporu akéhokoľvek „experimentálneho hardvéru“. Všetky tieto sú skvelé pre pokročilých používateľov, ale v tomto návode sa zameriame na hlavné verzie, ktoré sú predvolene nainštalované na pi, pretože majú dosť obmedzené možnosti hardvéru.

Pi's Raspbian Stretch Desktop je dodávaný s dvoma predinštalovanými verziami Scratch. Menovite „Scratch“a „Scratch 2“. Budeme používať prvý aka „Scratch 1.4 (NuScratch)“a budeme ho používať „offline“, aby sme mohli používať funkciu servera GPIO.

Tu si môžete stiahnuť oficiálny obrázok pracovnej plochy pi.

Z akéhokoľvek dôvodu sa tvorcovia Scratch rozhodli podporiť iba niekoľko najbežnejšie dostupných senzorov od veľkých spoločností, ako je Lego atď. Je zaujímavé, že sa rozhodli pridať aj podporu pre HC-SR04. Toto je samozrejme všadeprítomný ultrazvukový snímač vzdialenosti, ktorý jednoducho vydáva jednu šírku impulzu, ktorá je úmerná meranej vzdialenosti.

Presnosť merania sa môže trochu líšiť v závislosti od teploty vzduchu, vlhkosti a cieľového materiálu, ako je uvedené tu, tu a tu. Ale vo všeobecnosti môže merať výkon šírky impulzu tohto zariadenia takmer každá platforma.

Krok 2: Nová funkcia

Nová funkcia
Nová funkcia

Vytváranie presných impulzov v mikrosekundách nie je pre nás na tinyLiDAR žiadny problém, pretože vo vnútri palubného 32bit mikro máme náhradné hardvérové časovače s vysokým rozlíšením. tinyLiDAR pri zapnutí vždy automaticky kalibruje teplotu, takže v operačnom prostredí nie sú potrebné žiadne ďalšie úpravy.

Poďme na to

Dobre - mohli sme, takže sme do tinyLiDAR (od firmvéru 1.3.9) jednoducho pridali novú funkciu s názvom „Ultrazvukový emulačný režim“. Prístup k nemu získate pomocou príkazu „u“z aktualizovaného terminálu GUI pre tinyLiDAR.

Jeho použitím sa zmenia nastavenia energeticky nezávislej pamäte, takže bude tinyLiDAR vyzerať rovnako ako generický ultrazvukový senzor, aj keď ho odpojíte. Môžete ho vrátiť späť do normálneho režimu I2C stlačením tlačidla reset a zadaním príkazu „az“. Ďalšie podrobnosti sú v používateľskej príručke.

Aby bol život ešte jednoduchší, sprístupňujeme na našej webovej stránke senzor smallLiDAR prednastavený na tento nový režim ultrazvukovej emulácie. Stačí si objednať verziu „-u“.

Pozrite sa, žiadne spájkovanie

Nie je potrebné žiadne spájkovanie ani nepájivá doska, pretože priložené káble „Grove to Female 4pin“sa zapoja priamo do kolíkových konektorov Raspberry pi. Spúšťací kolík je žltý vodič a ozvučný kolík je biely vodič. Čierna a červená sú samozrejme pre silu. Podrobnosti nájdete v hlavnom obrázku vyššie.

Btw, šli sme o krok ďalej a prinútili sme, aby sa žltý pin správal ako snímač PING))), ktorý používa jeden vodič na signály spúšťača a ozveny.

Z tohto dôvodu môžete teraz vykonávať merania s tinyLiDAR pomocou predvoleného ultrazvukového náčrtu „PING“, ktorý je dodávaný s každým IDE Arduino bez akýchkoľvek zmien kódu! Môžete to tiež vyskúšať bez zdržania.

Pred výberom príkazu „u“môžete samozrejme nastaviť parametre, ako je vysoká presnosť, dlhé vzdialenosti atď., A potom vykoná tieto merania vždy, keď uvidí pokles spúšťacieho kolíka, ako je znázornené na obrázku vyššie.

Nebezpečenstvo, Will Robinson

Ultrazvukový snímač SR04 potrebuje niekoľko odporov, aby napájanie +5 V nepoškodilo vaše pi. Ale pretože tinyLiDAR beží natívne od +3,3 V, nie sú potrebné žiadne rezistory na prepojenie s pi:)

Krok 3: Kódovanie

Kódovanie
Kódovanie
Kódovanie
Kódovanie

Aký je teda kód, ktorý potrebujeme na to, aby tinyLiDAR fungoval v programe Scratch?

Som rád, že ste sa pýtali!

Ide len o pretiahnutie niekoľkých jednoduchých vysielacích blokov, ako je to znázornené na obrázkoch vyššie.

Na aktiváciu pinov GPIO môžeme vydať „broadcast gpioserveron“. Potom na konfiguráciu spúšťacieho pinu vydáme „broadcast config16out“Ďalej môžeme nakonfigurovať pin ozveny pomocou „broadcast config26in“a potom začať merania „broadcast ultrasonictrigger16echo26“. To spôsobí, že merania sa budú vykonávať nepretržite s kadenciou približne 140 ms. Namerané údaje môžete prečítať pomocou snímacieho bloku „hodnota ultrazvukového senzora vzdialenosti“.

Tak to je zatiaľ všetko, vďaka za prečítanie a nezabudnite sa pozrieť na zábavný malý demo program Scratch (zdieľaný tu), ktorý sme nazvali „tinyLiDAR_catch_me“a … Scratch On!;)

Odporúča: