INHOUDSOPGAWE:

Kan ek TinyLiDAR gebruik in Kras ?: 3 stappe
Kan ek TinyLiDAR gebruik in Kras ?: 3 stappe

Video: Kan ek TinyLiDAR gebruik in Kras ?: 3 stappe

Video: Kan ek TinyLiDAR gebruik in Kras ?: 3 stappe
Video: Как использовать 2 или более лазерных датчиков расстояния VL53L0X 2024, Julie
Anonim
Kan ek TinyLiDAR gebruik in … Scratch?
Kan ek TinyLiDAR gebruik in … Scratch?

Ons kry af en toe versoeke om te vra of tinyLiDAR op hul spesifieke rekenaarplatform sal werk. Alhoewel tinyLiDAR ontwerp is as 'n eenvoudige LiDAR -sensor vir die Arduino UNO, is daar niks wat dit weerhou om op ander platforms soos die Raspberry Pi gebruik te word nie (soos getoon in die vorige instruksies hier). Dit wil sê, as die platform 'n I2C -bus het en die funksie van die I2C -spesifikasie kan ondersteun. Dus - wat as u bord nie eens I2C ondersteun nie? - maak nie saak hoe die horlosie rek nie … Dit sou 'n uitdagende scenario wees, maar in werklikheid bestaan dit eintlik vir die ultra gewilde visuele programmeertaal genaamd "Scratch".

Google dit as u nog nooit daarvan gehoor het nie, maar in 'n neutedop is dit 'n uitstekende eerste taal vir almal om in die programmeringsgebied te dink. Scratch is geskep deur die MIT Media Lab en bestaan nou al meer as 16 jaar. Dit is die goeie taal om kinders oor die hele wêreld te leer kodeer. Almal kan dit gratis begin gebruik - aangesien dit gewoonlik op u lessenaar in 'n webblaaier loop. Kyk hier as u wil.

TL; DR weergawe

JA! Met 'n nuwe funksie genaamd 'Ultrasonic Emulation Mode' in tinyLiDAR f/w weergawe 1.3.9

Stap 1: krap wat?

Daar is nou baie geure van Scratch in die natuur. Robotika -entoesiaste is geneig om die GPIO -gefokusde weergawes soos ScratchGPIO of ander modded weergawes soos ScratchX te gebruik, wat gemaak kan word om enige 'eksperimentele hardeware' te ondersteun. Al hierdie is ideaal vir gevorderde gebruikers, maar die hoofstroom weergawes wat standaard op die pi geïnstalleer is, sal ons fokus op hierdie instruksies, aangesien dit taamlik beperkte hardeware -opsies het.

Die pi's Raspbian Stretch Desktop het twee weergawes van Scratch wat vooraf geïnstalleer is. Naamlik "Scratch" en "Scratch 2". Ons gebruik die eerste een, ook bekend as "Scratch 1.4 (NuScratch)", en gebruik dit "offline" sodat ons die GPIO -bedienerfunksie kan gebruik.

U kan die amptelike pi -lessenaarbeeld hier aflaai.

Om watter rede ook al, het die Scratch-skeppers besluit om slegs 'n paar van die algemeenste sensors van groot ondernemings soos Lego, ens. Te ondersteun, maar interessant dat hulle ook besluit het om ondersteuning vir die HC-SR04 by te voeg. Dit is natuurlik die alomteenwoordige ultrasoniese afstandsensor wat eenvoudig 'n enkele pulswydte lewer wat eweredig is aan die gemete afstand.

Die akkuraatheid van die meting kan 'n bietjie wissel, afhangende van lugtemperatuur, humiditeit en doelmateriaal, soos hier, hier en hier genoem. Maar oor die algemeen kan omtrent enige platform die pulswydte -uitset van hierdie toestel meet.

Stap 2: Nuwe funksie

Nuwe funksie
Nuwe funksie

Om akkurate mikrosekonde-skale uit te voer, is vir ons geen probleem op tinyLiDAR nie, aangesien ons ekstra hardeware-timers met 'n hoë resolusie in die ingeboude 32bit-mikro het. tinyLiDAR kalibreer ook altyd outomaties vir temperatuur, aangesien dit aanskakel, sodat geen verdere aanpassings nodig is vir die bedryfsomgewing nie.

Kom ons doen dit

Oké, ons kon net 'n nuwe funksie byvoeg by tinyLiDAR (vanaf firmware 1.3.9), die 'Ultrasonic Emulation Mode' genoem. U het toegang daartoe deur die opdrag "u" te gebruik vanaf die opgedateerde tinyLiDAR GUI -terminale.

As u dit gebruik, verander die instellings in die nie-vlugtige geheue, sodat kleinLiDAR net soos 'n generiese ultrasoniese sensor sal lyk, selfs nadat u dit uitgeskakel het. U kan dit terugkeer na die normale I2C -modus deur op die reset -knoppie te druk en die "az" -opdrag uit te voer. Verdere besonderhede is in die gebruikershandleiding.

Om die lewe nog eenvoudiger te maak, stel ons die tinyLiDAR -sensor beskikbaar vanaf hierdie webwerf vooraf ingestel op hierdie nuwe ultraklankemulasiemodus. Bestel net die "-u" weergawe.

Kyk Ma, geen soldering nie

Geen soldeer en ook geen broodbord is nodig nie, aangesien die meegeleverde "Grove to Female 4pin" kabels direk in die Raspberry pi -koppenne aansluit. Die snellerpen is die geel draad en die eggo -pen is die wit draad. Swart en rooi is natuurlik vir krag. Raadpleeg die hoofprent hierbo vir besonderhede.

Btw, ons het 'n stap verder gegaan en die geel pen gedra soos die PING))) sensor wat 'n enkele draad gebruik vir beide die sneller- en eggo -seine.

As gevolg hiervan kan u nou metings neem met tinyLiDAR met behulp van die standaard "PING" ultrasoniese skets wat saam met elke Arduino IDE gestuur word sonder enige kodeveranderings! U kan dit ook sonder vertraging probeer.

U kan natuurlik parameters soos hoë akkuraatheid, langafstand, ens van u LiDAR -metings instel voordat u die "u" -opdrag kies, en dit neem dan die metings elke keer as dit die snellerpen sien val, soos getoon in die diagram hierbo.

Gevaar, Will Robinson

Let daarop dat die SR04 -ultrasoniese sensor 'n paar weerstande benodig om te voorkom dat die +5v -toevoer u pi beskadig. Maar aangesien tinyLiDAR oorspronklik van +3.3v werk, hoef geen weerstande met die pi te koppel nie:)

Stap 3: Kodeer dit

Kodering daarvan
Kodering daarvan
Kodering daarvan
Kodering daarvan

Wat is dan presies die kode wat ons nodig het vir tinyLiDAR om in Scratch te werk?

Bly jy het gevra!

Dit is slegs 'n kwessie om 'n paar eenvoudige uitsendingsblokke te sleep, soos op die foto's hierbo getoon.

Om die GPIO -penne in staat te stel, kan ons die "broadcast gpioserveron" uitreik. Dan kan ons die "trigger config16out" stel om die snellerpen te konfigureer. Vervolgens kan ons die echo -pin konfigureer deur "broadcast config26in" en dan die metings te begin deur "broadcast ultrasonictrigger16echo26". Dit sal veroorsaak dat metings voortdurend gedoen word by 'n kadens van 140 ms. U kan die gemete data lees deur die sinblok "ultrasoniese afstandsensorwaarde" te gebruik.

Dit is nou eers, dankie dat u gelees het, en kyk gerus na die prettige klein Scratch -demo -program (hier gedeel) wat ons 'tinyLiDAR_catch_me' gemaak het en … Scratch On!;)

Aanbeveel: