Hur man gör en golvrengöringsrobot med ultraljudssensor?
En automatisk golvrengöringsrobot är inget nytt koncept. Men dessa robotar har ett stort problem. De är väldigt dyra. Vad händer om vi kan göra en billig golvrengöringsrobot som är lika effektiv som roboten som finns på marknaden. Denna robot kommer att använda en ultraljudssensor och kommer att undvika alla hinder i vägen. Genom att göra det kommer det att städa hela rummet.
Hur man använder ultraljudssensor för att skapa en automatisk golvrengöringsrobot?
Som vi nu vet abstrakt av vårt projekt. Låt oss samla in mer information för att börja arbeta.
Steg 1: Samla in komponenterna
Det bästa sättet att starta ett projekt är att göra en lista över kompletta komponenter i början och genomgå en kort studie av varje komponent. Detta hjälper oss att undvika besvären mitt i projektet. En fullständig lista över alla komponenter som används i detta projekt ges nedan.
Steg 2: Studera komponenterna
Nu när vi har en komplett lista över alla komponenter, låt oss gå ett steg framåt och studera hur varje komponent fungerar.
Arduino nano är ett mikrokontrollerkort som används för att styra eller utföra olika uppgifter i en krets. Vi bränner en C-kod på Arduino Nano för att berätta för mikrokontrollerkortet hur och vilka operationer som ska utföras. Arduino Nano har exakt samma funktionalitet som Arduino Uno men i ganska liten storlek. Mikrokontrollern på Arduino Nano-kortet är ATmega328p.
L298N är en integrerad krets med hög ström och hög spänning. Det är en dubbel fullbro som är utformad för att acceptera standard TTL-logik. Den har två aktiveringsingångar som gör att enheten kan fungera självständigt. Två motorer kan anslutas och drivas samtidigt. Motorns hastighet varieras genom PWM-stiften.
HC-SR04-kortet är en ultraljudssensor som används för att bestämma avståndet mellan två objekt. Den består av en sändare och en mottagare. Sändaren omvandlar den elektriska signalen till en ultraljudssignal och mottagaren konverterar ultraljudssignalen tillbaka till den elektriska signalen. När sändaren skickar en ultraljudsvåg reflekteras den efter kollision med ett visst föremål. Avståndet beräknas med hjälp av den tid det tar för ultraljudssignalen att gå från sändaren och komma tillbaka till mottagaren.
Steg 3: Montering av komponenterna
Eftersom vi nu vet hur alla komponenter fungerar, låt oss montera alla komponenter och börja skapa en robot.
Ta ett bilhjulchassi och montera en showborste framför chassierna. Montera Scotch Brite under roboten. Se till att den är precis bakom skoborsten. Fäst nu ett litet brödbräda på ovansidan av chasserna och fäst motordrivrutinen bakom det. Anslut motorerna ordentligt till motordrivrutinen och anslut försiktigt stiften f motordrivrutinen till Arduino. Montera ett batteri bakom chassit. Batteriet startar motorföraren som driver motorerna. Arduino tar också ström från motorföraren. Vcc-stift och ultraljudssensorns jord ansluts till Arduino 5V och jord.
Steg 4: Komma igång med Arduino
Om du inte redan är bekant med Arduino IDE, oroa dig inte eftersom en steg för steg-procedur för att ställa in och använda Arduino IDE med ett mikrokontrollkort förklaras nedan.
- Ladda ner den senaste versionen av Arduino IDE från Arduino.
- Anslut ditt Arduino Nano-kort till din bärbara dator och öppna kontrollpanelen. klicka på på kontrollpanelenHårdvara och ljud. Klicka nu påEnheter och skrivare.Här hittar du porten som ditt mikrokontrollkort är anslutet till. I mitt fall är det COM14men det är annorlunda på olika datorer.
- Klicka på Verktyg-menyn och ställ in tavlan till Arduino Nano.
- I samma verktygsmeny ställer du in porten till det portnummer som du observerade tidigare i Enheter och skrivare.
- I samma verktygsmeny ställer du in processorn på ATmega328P (Old Bootloader).
- Ladda ner koden som bifogas nedan och klistra in den i din Arduino IDE. Klicka på ladda upp -knappen för att bränna koden på ditt mikrokontrollerkort.
Klicka här för att ladda ner koden.
Steg 5: Förstå koden
Koden är ganska bra kommenterad och självförklarande. Men ändå förklaras det kort nedan.
1. I början initialiseras alla stift av Arduino som vi ska använda.
int aktivera1pin = 8; // Pins för första Motor int motor1pin1 = 2; int motor1pin2 = 3; int aktivera2pin = 9; // Pins för andra Motor int motor2pin1 = 4; int motor2pin2 = 5; const int trigPin = 11; // Pins för ultraljudssensor const int echoPin = 10; const int buzzPin = 6; lång varaktighet // Variabler för ultraljudssensor flytavstånd;
2. ogiltig installation ()är en funktion där vi ställer in alla stift som ska användas som INGÅNG eller UTGÅNG. Baud Rate ställs också in i denna funktion. Baudhastighet är den hastighet med vilken mikrokontrollkortet kommunicerar med de anslutna sensorerna.
ogiltig installation () {Serial.begin (9600); pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); pinMode (buzzPin, OUTPUT); pinMode (enable1pin, OUTPUT); pinMode (enable2pin, OUTPUT); pinMode (motor1pin1, OUTPUT); pinMode (motor1pin2, OUTPUT); pinMode (motor2pin1, OUTPUT); pinMode (motor2pin2, OUTPUT); }
3. ogiltig slinga ()är en funktion som löper kontinuerligt i en slinga. I den här slingan har vi sagt till mikrokontrollern när man ska gå framåt om inget hinder hittas i 50 cm. Roboten tar en skarp högervarv när ett hinder hittas.
void loop () {digitalWrite (trigPin, LOW); delayMicroseconds (2); digitalWrite (trigPin, HIGH); delayMicroseconds (10); digitalWrite (trigPin, LOW); varaktighet = pulseIn (echoPin, HIGH); avstånd = 0,034 * (varaktighet / 2); if (avstånd> 50) // Gå framåt om inget hinder hittades {digitalWrite (enable1pin, HIGH); digitalWrite (enable2pin, HIGH); digitalWrite (motor1pin1, HIGH); digitalWrite (motor1pin2, LOW); digitalWrite (motor2pin1, HIGH); digitalWrite (motor2pin2, LOW); } else if (avstånd <50) // Sharp Right Turn om ett hinder hittades {digitalWrite (enable1pin, HIGH); digitalWrite (enable2pin, HIGH); digitalWrite (motor1pin1, HIGH); digitalWrite (motor1pin2, LOW); digitalWrite (motor2pin1, LOW); digitalWrite (motor2pin2, LOW); } fördröjning (300); // fördröjning}
Nu, när vi har diskuterat allt du behöver för att göra en automatisk golvrengöringsrobot, kan du njuta av att skapa din egen billiga och effektiva golvrengöringsrobot.