Innholdsfortegnelse:
Video: Kan jeg bruke TinyLiDAR i Scratch ?: 3 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
Vi får av og til forespørsler om å spørre om tinyLiDAR vil fungere på deres spesielle databehandlingsplattform. Selv om tinyLiDAR ble designet som en brukervennlig LiDAR -sensor for Arduino UNO, er det ingenting som hindrer den i å bli brukt på andre plattformer som Raspberry Pi (som vist i forrige instruerbare her). Det vil si at hvis plattformen har en I2C -buss og kan støtte klokkestrekningsfunksjonen til I2C -spesifikasjonen. Så - hva om brettet ditt ikke engang støtter I2C? - husk på at klokken strekker seg … Vel, det ville være et utfordrende scenario, men det eksisterer faktisk for det ultra populære visuelle programmeringsspråket kalt "Scratch".
Google det hvis du ikke har hørt om det før, men i et nøtteskall er det et flott førstespråk for alle å tenke på programmeringsområdet. Scratch ble opprettet av MIT Media Lab og har eksistert i over 16 år nå. Det er språket for å lære barn å kode rundt om i verden. Alle kan begynne å bruke det gratis - ettersom det normalt kjører på skrivebordet i en nettleser. Sjekk det ut her hvis du vil.
TL; DR versjon
JA! Med en ny funksjon kalt "Ultrasonic Emulation Mode" i tinyLiDAR f/w versjon 1.3.9
Trinn 1: Skrap hva?
Det er mange smaker av Scratch i naturen nå. Robotikkentusiaster har en tendens til å bruke GPIO -fokuserte versjoner som ScratchGPIO eller andre modded versjoner som ScratchX som kan gjøres for å støtte enhver "eksperimentell maskinvare". Alle disse er flotte for avanserte brukere, men de vanlige versjonene som er installert som standard på pi, vil være vårt fokus for denne instruerbare siden de har ganske begrensede maskinvarealternativer.
Pi's Raspbian Stretch Desktop leveres med to versjoner av Scratch forhåndsinstallert. Nemlig "Scratch" og "Scratch 2". Vi vil bruke den første aka "Scratch 1.4 (NuScratch)" og vil bruke den "offline" slik at vi kan bruke GPIO -serverfunksjonen.
Du kan laste ned det offisielle pi -skrivebordsbildet her.
Uansett grunn bestemte Scratch-skaperne å støtte bare noen få av de mest tilgjengelige sensorene fra store selskaper som Lego etc. Interessant nok bestemte de seg også for å legge til støtte for HC-SR04. Dette er selvfølgelig den allestedsnærværende ultralydavstandssensoren som ganske enkelt sender ut en enkelt pulsbredde som er proporsjonal med den målte avstanden.
Målenøyaktigheten kan variere litt avhengig av lufttemperatur, fuktighet og målmateriale som nevnt her, her og her. Men generelt kan omtrent hvilken som helst plattform måle pulsbreddeutgangen til denne enheten.
Trinn 2: Ny funksjon
Å sende ut nøyaktige pulser i mikrosekundskala er ikke et problem for oss på tinyLiDAR, ettersom vi har ekstra maskinvare-timere med høy oppløsning inne i den innebygde 32-biters mikroenheten. tinyLiDAR kalibrerer også alltid automatisk for temperaturen når den slås på, så det er ikke nødvendig med ytterligere justeringer for driftsmiljøet.
La oss gjøre det
Ok - vi kunne, så vi la bare til en ny funksjon i tinyLiDAR (fra fastvare 1.3.9) kalt "Ultrasonic Emulation Mode". Du får tilgang til den ved å bruke "u" -kommandoen fra den oppdaterte tinyLiDAR GUI -terminalen.
Hvis du bruker det, vil det endre innstillingene i ikke-flyktig minne, så det vil få tinyLiDAR til å se ut som en generisk ultralydsensor selv etter at du har slått den av. Du kan endre den tilbake til normal I2C -modus ved å trykke på tilbakestillingsknappen og sende kommandoen "az". Ytterligere detaljer er i brukerhåndboken.
For å gjøre livet enda enklere, gjør vi tinyLiDAR -sensoren tilgjengelig forhåndsinnstilt til denne nye ultralydemuleringsmodusen fra nettstedet vårt. Bare bestill "-u" -versjonen.
Se Ma, ingen lodding
Ingen lodding og heller ikke brødbrett er nødvendig, ettersom de medfølgende "Grove to Female 4pin" -kablene kobles direkte til Raspberry pi header pins. Utløserpinnen er den gule ledningen og ekkopinnen er den hvite ledningen. Svart og rødt er selvfølgelig for makt. Se hovedbildet ovenfor for detaljer.
Btw, vi gikk et skritt videre og fikk den gule pinnen til å oppføre seg som PING))) sensoren som bruker en enkelt ledning for både trigger- og ekkosignalene.
På grunn av dette kan du nå ta målinger med tinyLiDAR ved å bruke standard "PING" ultralydskisse som leveres med hver Arduino IDE uten noen kodeendringer! Du kan også prøve det uten forsinkelse.
Selvfølgelig kan du angi parametere som høy nøyaktighet, lang avstand osv. For LiDAR -målingene dine før du velger "u" -kommandoen, og den vil deretter ta disse målingene hver gang den ser utløserpinnen falle som vist i diagrammet ovenfor.
Fare, Will Robinson
Vær oppmerksom på at ultralydsensoren SR04 trenger noen motstander for å forhindre at +5v -forsyningen skader din pi. Men siden tinyLiDAR kjører innfødt fra +3.3v, er det ikke behov for noen motstander for å koble til pi:)
Trinn 3: Koder det
Så hva er egentlig koden vi trenger for tinyLiDAR for å fungere i Scratch?
Godt du spurte!
Det er bare å dra noen få enkle kringkastingsblokker som vist på bildene ovenfor.
For å aktivere GPIO -pinnene kan vi utstede "broadcast gpioserveron". For å konfigurere triggerpinnen utsteder vi "broadcast config16out". Neste kan vi konfigurere ekkopinnen med "broadcast config26in" og deretter starte målingene med "broadcast ultrasonictrigger16echo26". Dette vil føre til at målinger blir tatt kontinuerlig ved omtrent 140 ms kadence. Du kan lese de målte dataene ved å bruke senseblokken "ultrasonic distance sensor value".
Vel, det er det for nå, takk for at du leser, og sjekk ut det morsomme lille Scratch -demo -programmet (delt her) vi lagde kalt "tinyLiDAR_catch_me" og … Scratch On!;)
Anbefalt:
Guiden jeg skulle ønske jeg hadde om å bygge en Arduino -drone: 9 trinn
Guiden jeg skulle ønske jeg hadde om å bygge en Arduino Drone: Dette er dokumentet er en slags "How to guide" skråstrekningsdokumentasjon som går gjennom prosessen. Det tok meg å forstå konseptene for å nå målet mitt om å bygge et enkelt quadcopter som jeg kunne kontrollere fra mobiltelefonen min. For å gjøre dette prosjektet ønsket jeg
Hvordan bruke DS1307 Bruke Arduino: 7 trinn
Hvordan bruke DS1307 Bruke Arduino: DS1307 er en sanntidsklokke IC (RTC). Denne IC brukes til å gi tidsdata. Tildelt tid starter fra sekunder, minutt, timer, dager, dato, måned og år. Denne IC krever ytterligere eksterne komponenter som Crystal og 3,6V batterier. Krystall
Hvordan få musikk fra Nesten alle (Haha) nettsteder (så lenge du kan høre det, kan du få det Ok fint hvis det er innebygd i Flash du kanskje ikke kan) REDIGERT !!!!! Lagt til informasjon: 4 trinn
Hvordan få musikk fra Nesten alle (Haha) nettsteder (så lenge du kan høre det, kan du få det … Ok fint hvis det er innebygd i Flash du kanskje ikke kan) REDIGERT !!!!! Lagt til informasjon: hvis du noen gang går til et nettsted og den spiller en sang du liker og vil ha den, så er det instruerbart for meg, det er ikke min feil hvis du ødelegger noe (den eneste måten det vil skje er hvis du begynner å slette ting uten grunn ) Jeg har klart å få musikk til
Jeg kan ikke tro at dette er en annen USB -strømforsyning !: 6 trinn
Jeg kan ikke tro at dette er en annen USB -strømforsyning !: Dette var inspirert av noen (les: mange) opplæringsprogrammer om " Hvordan lade * på USB -strøm ", så jeg snudde logikken og jeg publiserer " Slik kobler du *laderen til USB -porter. "Som en" ekstra bonus "kan du enten bruke 2
Alle andre lager et bærbart stativ, så hvorfor kan jeg ikke det ?: 8 trinn (med bilder)
Alle andre lager et bærbart stativ, så hvorfor kan jeg ikke det ?: Eller hvordan jeg forvandlet et brett til et bærbart stativ. Vi har ikke TV, men vi liker å ligge på et teppe og se DVDer på den bærbare datamaskinen. Dette bærbare stativet vil sikre god stabilitet og luftstrøm