Förbättra ultraljud utbud Sensor noggrannhet (2 / 3 steg)

Steg 2: Koden!



För att förbättra sensorns utbud noggrannhet, kommer att koden beräkna vad ljudets hastighet är enligt den omgivande temperaturen. Formeln för som rusas av solitt genom luften vid en viss temperatur är: Vair = (331.3 + 0.606 * Tc) m/s där Vair är ljudets hastighet och Tc är temperaturen i Celsius enligt http://en.wikipedia.org/wiki/Speed_of_sound. När ljudets hastighet har beräknats, mäts avståndet på samma sätt som det är i andra ultraljud utbud sensor koder. Tiden är multiplicerad med hastigheten och sedan halveras lämnar dig med enheter av avståndet till objektet.

Om du planerar att använda detta i extrema temperaturer, var noga med att kontrollera den temperatursensor datablad som de kommer att ge ett rekommenderat temperaturområde. Temperaturgivare fungerar ibland alldeles utmärkt i ett stort utbud men du kan behöva ändra koden lite för att kompensera för variationer i temperatursensor utdata.

Slutligen, som med alla min kod, jag använder en enkel debug knep min vän lärde mig. Med hjälp av ett booleskt värde och om uttalanden, du kan enkelt slå seriell kommunikation på eller av genom att ändra debug till sant eller falskt.

Jag bifogade filen ursprungliga koden, annars koden kan kopieras direkt från här:

/*******************************************************************************************************
********************************************************************************************************

Förbättrad ultraljud utbud Sensing skapad av Calvin Kielas-Jensen

Genom att använda en Arduino UNO, Anslut en TMP36 temperatur sensor data stift till A0 och en 4-pin ultraljud utbud sensor med trig stift på digital stift 8 och echo stift på digital pin 9.

Detta skript ökar exaktheten i en Ultraljuds utbud sensor genom mätning av omgivningstemperaturen. Ljudet rör sig genom luften på hastighet beroende på den omgivande temperaturen enligt följande ekvation: Vair = (331.3 + 0.606 * Tc) m/s där Vair är ljudets hastighet och Tc är temperaturen i Celsius.

Alla är välkomna att använda och modifiera denna kod så länge jag får kredit. Tack för att respektera rörelsen för öppen källkod!

******************************************************************************************************** *******************************************************************************************************/

Majoriteten av denna kod tas och modifierad från ARDX temperatur sensor koden och PING

sensor kod.

int temperaturePin = A0; Ställa in temperaturen pin input float temperaturen; Inställda temperaturen variabel

booleska debug = sant; För seriell kommunikation set debug till true, för snabbare kod inställd på debug false

lång varaktighet, cm; Ställ in tid och cm för avstånd sensing

int trig = 10, echo = 9. Ställa in stift för trig och echo

void setup() {om (debug) {Serial.begin(9600);}}

void loop() {temperatur = (getVoltage(temperaturePin) - 0,5) * 100.

om (debug) {Serial.println(temperature);}

Ge en kort låg puls förhand för att säkerställa en ren hög puls: pinMode (trig, OUTPUT); digitalWrite (trig, låg); delayMicroseconds(2); digitalWrite (trig, hög); delayMicroseconds(5); digitalWrite (trig, låg); längd = pulseIn (echo, hög);

cm = microsecondsToCentimeters (längd, temperatur); om (debug) {Serial.println(cm); Serial.println("cm"); } }

flyta getVoltage (int pin) {return (analogRead(pin) *. 004882814), //Converting från 0 till 1024 till 0 till 5v}

långa microsecondsToCentimeters (lång mikrosekunder, länge temp) {return (mikrosekunder * (331.3 + 0.606 * temp)) / 2; //Multiplying som rusas av solitt genom en viss temperatur luft genom //length tid det tar för att nå objektet och tillbaka, dividerat med två}

Se Steg
Relaterade Ämnen

GoPro ultraljud Motion Sensor HC-SR04 kontrolleras av arduino

Gopro aktiveras av rörelse, ultraljud sensorn flytta servo när något visas nära sensorn, det kan vara programmerat att ta bilder eller video och även det kan vara programmerat att sluta ta bilder när det finns ingen rörelse i sensorn.Fördelar över no...

Bärbar ultraljud utbud mätaren

Denna enhet är en liten, bärbar ultraljud utbud mätare med en ATMega328 mikrokontroller, en Ultraljuds-modul och ett 4 x 20 LCD för allt avstånd i meter och inches.Steg 1: teoriI fysik, ljud är resultatet av den mekaniska vibrationen av material och...

En mystisk låda - ultraljud utbud Finder(Arduino)

Det finns två nyheter, som en du vill höra först? Okej. Låt mig berätta de goda nyheter-vårt Elecrow företag växer snabbt till stöd för maker partners och Arduino entusiaster, vi har lagt till en massa staffs, så vi behöver en större plats att ta emo...

Ultraljuds parkering Sensor

jag har mixtra med Arduino för ett par månader nu. Det är mycket roligt men en av utmaningarna är att hitta nyttiga projekt. Blinkande lysdioder är trevligt men jag skulle vilja göra något för att fylla ett behov eller göra något på ett nytt sätt. Vå...

Billiga sensorer: HC-SR04

Sensorer är en integrerad del av en robot, automationsprojekt eller vad som helst med mekatronik. Tyvärr är de normalt ganska dyra. Denna serie av instructables syftar till att ge information om billiga sensorer för oavsett projekt du. Jag kommer att...

Fickformat ultraljud linjal

Idag allt är digitaliserade. De flesta av oss om inte att slösa vår tid med hjälp av kartor, gå till skivaffären eller ens kommer att DVD-butik längre. Så... varför så många människor använder måttband och härskare? Ja, de är tillförlitliga, men de ä...

Styra enkel geometri i Rhino med hjälp av en Ultra Sonic Sensor

De tidiga stadierna av att förstå hur ultraljud sensorn används och hur den kan användas ledde mig till experimentera med skapandet av geometri (en sfär) och ändring av geometri (kon höjder). Detta Instructable kommer titta på båda dessa som tidigt i...

Periodiska systemet glödande radioaktiva ägg

höra om en som lade guldägg? Tja, detta är ett parti av organiska (inte kläckts minst) glödande radioaktiva ägg. Ett bra urval av radioaktiva grundämnen presenteras här. Titta, är där Polonium, gynnas av våra vänner på KGB. För frukost, lät dina barn...

Motion Following Robot

Hej Efter strul med en Arduino för ett par månader och glupskt läsande instructables, beslutade jag att jag äntligen skulle publicera mina egna. Jag ville skapa något som rör sig av sig själv. Jag ville också skapa ett system som reagerar på den yttr...

Automatiserad Halloween godis Dispenser

Godis är laddad till en lång PVC rör hängande utanför balkongen. När en trick-or-treater närmar sig huset de se en halloween korg och lagt instinktivt sin hand ned. Ett ultraljud sensorn känner sina händer och skjuter ut en godis från röret.Steg 1: G...

Blinka Snap kretsar LED med Kano dator

Jag ska visa hur du flash en Snap kretsar ledde med Kano datorn (min version av Kano har Raspberry Pi 2). Jag har tappat räkningen på hur många datorer har jag byggt genom åren, men jag tror det är säkert att säga att Kano datorn var den enklaste byg...

ATtiny Canbot

Denna korta Instructable visar dig hur du skapar en fjärrstyrd robot med hjälp av 3D-tryckta delar och en Attiny85.Steg 1: Skaffa komponenter Reservdelslista:1 x Atmel Attiny852 x HXT900 från Hobbyking eller någon samma storlek mikro servo1 x 3, 7V L...

Styra en Motor med avstånd ultraljudssensorer (HC-SR04)

Hej alla! I detta projekt kommer vi att kontrollera riktningen av en motor med två allt ultraljudssensorer.Om rätt sensorn utlöses, kommer att motorn snurra motsols.Om den vänstra sensorn utlöses, kommer motorn snurra medsols.Om båda sensorerna eller...

Flash en LED med repa på datorn som Kano

Jag har tappat räkningen på hur många datorer har jag byggt genom åren, men jag tror det är säkert att säga att Kano dator var den enklaste bygget någonsin. Så enkelt ett barn kunde göra det. Kano grundarna, Yonatan Raz-Fridman, Alex Klein och Saul K...

Ultrasonic hinder att undvika Robot

Detta är mitt försök att designa och bygga ett hinder att undvika robot! RekaBot (uppkallad efter en Fe (:) kan upptäcka hinder med en ultrasonic sensor som kan flytta runt med hjälp av ett servo. Baserat på mätningar tar hon, drivs spåren riktning m...

Ryggsäck stöldskydd larm

Om du är en student, som jag, har du hört alla stölder som sker på campus idag. Jag kan inte ens lämna min ryggsäck ensam i fem minuter utan att oroa om den blir stulen. Mitt sinne och hjälpa studiekamrater, har jag utformat en ryggsäck ant-stöld ala...

BaW-Bot del 3: Lägga till syn och Touch till Bot

detta är den tredje delen av vår BaW-Bot (klockor och visselpipor Bot) bygga-5 separata instructables som undersöka olika Arduino-relaterade tekniker, kombinera för att skapa en Bot med alla klockor-och-visselpipor.Del 1: Bygga en Arduino på ett bräd...

MCU-1: En budget-medvetna Intel Edison MCU baserat Rover leksaksbil. (Intel IoT)

Liten video visar hinder skatteundandragande och få knappen baserat kommandon via bluetooth.Steg 1: SammanfattningDetta projekt kommer att bygga en enkel rover bil som kan styras av en android smart app med röst eller knappen baserat kommandon distan...

Vakuum rengöring RC robot

Hej alla! I detta instructable, jag visar dig hur du DIY en dammsugare RC RobotSteg 1: IntroInte bara en avlägsen kontrollerade dammsugare, innehåller den också 3D CAD, programmering, algoritmer, mekanik, PCB CAD och scheman. Du kan definitivt redige...