Hallo jongens, ben je een nieuweling in de wereld van robotica of elektronica? OF Bent u op zoek naar een eenvoudig maar krachtig project om uw vrienden en docenten onder de indruk te maken? Dan is dit de plek.
In dit project zullen we de kracht van Embedded Systems en Electronics gebruiken om onze eigen robot te maken die ons zou kunnen helpen om ons huis of werkplaats netjes en opgeruimd te houden. Deze robot is een eenvoudige stofzuiger met vier wielen die op een slimme manier obstakels kan vermijden en tegelijkertijd de vloer kan stofzuigen. Het idee is geïnspireerd op de beroemde stofzuiger Robot Roomba die in de onderstaande afbeelding wordt weergegeven.
Ons idee is om vanaf het begin een eenvoudige robot te maken die automatisch de obstakels kan vermijden tijdens het schoonmaken van de vloer. Geloof me mensen, het is leuk !!
Vereist materiaal en componenten:
Oké, dus nu hebben we het idee van onze automatische vloerreinigingsrobot in gedachten en we weten wat we van plan zijn. Laten we dus kijken waar we onze executie moeten beginnen. Om een robot van ons idee te bouwen, moeten we eerst het volgende beslissen:
- Microcontroller-type
- Sensoren vereist
- Motoren vereist
- Materiaal robotchassis
- Batterij capaciteit
Laten we nu beslissen over elk van de bovengenoemde punten. Op deze manier is het handig voor u om niet alleen deze robot voor het schoonmaken van het huis te bouwen, maar ook alle andere robots die tot uw verbeelding spreken.
Type microcontroller:
Het selecteren van de Microcontroller is een zeer belangrijke taak, aangezien deze controller zal fungeren als het brein van uw robot. De meeste doe-het-zelfprojecten zijn gemaakt rond Arduino en Raspberry Pi, maar hoeven niet hetzelfde te zijn. Er is geen specifieke microcontroller waar u aan kunt werken. Het hangt allemaal af van de vereiste en kosten.
Zoals een tablet kan niet worden ontworpen op 8 bit Microcontroller en het is niet de moeite waard om ARM cortex m4 te gebruiken om een elektronische rekenmachine te ontwerpen.
De selectie van de microcontroller hangt volledig af van de vereisten van het product:
1. Ten eerste worden technische vereisten geïdentificeerd zoals het aantal benodigde I / O-pinnen, de grootte van de flitser, het aantal / type communicatieprotocollen, eventuele speciale functies enz.
2. Vervolgens wordt een lijst met controllers geselecteerd volgens de technische vereisten. Deze lijst bevat controllers van verschillende fabrikanten. Er zijn veel toepassingsspecifieke controllers beschikbaar.
3. Vervolgens wordt een controller voltooid op basis van kosten, beschikbaarheid en ondersteuning van de fabrikant.
Als je niet veel zwaar werk wilt doen en gewoon de basis van microcontrollers wilt leren en er later diep in wilt gaan, dan kun je voor Arduino kiezen. In dit project zullen we een Arduino gebruiken. We hebben eerder veel soorten robots gemaakt met Arduino:
- DTMF-gestuurde robot met Arduino
- Line Follower Robot met Arduino
- Computergestuurde robot met Arduino
- WiFi-gestuurde robot met Arduino
- Op versnellingsmeter gebaseerde handgebaren bestuurde robot met Arduino
- Bluetooth-gestuurde speelgoedauto met Arduino
Sensoren vereist:
Er zijn veel sensoren op de markt die elk hun eigen gebruik hebben. Elke robot krijgt input via een sensor, deze fungeren als sensorische organen voor de robot. In ons geval moet onze robot obstakels kunnen detecteren en ontwijken.
Er zijn nog veel meer coole sensoren die we in onze toekomstige projecten zullen gebruiken, maar laten we ons nu concentreren op de IR-sensor en de VS (ultrasone sensor), aangezien deze twee jongens de visie voor onze robo-auto zullen geven. Bekijk hier de werking van de IR-sensor. Hieronder ziet u afbeeldingen van de IR-sensormodule en de ultrasone sensor:
Ultrasone sensor bestaat uit twee cirkelvormige ogen waarvan de ene wordt gebruikt om het US-signaal uit te zenden en de andere om de US-straling te ontvangen. De tijd die de stralen nodig hebben om te worden verzonden en terug ontvangen, wordt berekend door de microcontroller. Nu, aangezien de tijd en snelheid van het geluid bekend zijn, kunnen we de afstand berekenen met de volgende formules.
- Afstand = tijd x geluidssnelheid gedeeld door 2
De waarde wordt door twee gedeeld omdat de straal voorwaarts en achterwaarts beweegt over dezelfde afstand. Gedetailleerde uitleg over het gebruik van ultrasone sensor wordt hier gegeven.
Motoren vereist:
Er worden nogal wat motoren gebruikt op het gebied van robotica, de meest gebruikte zijn de stappenmotor en servomotor. Aangezien dit project geen ingewikkelde actuatoren of roterende encoder heeft, zullen we een normale PMDC-motor gebruiken. Maar onze batterij is een beetje omvangrijk en zwaar, daarom gebruiken we vier motoren om onze robot aan te drijven, alle vier zijn het dezelfde PMDC-motoren. Maar het is aan te raden om stappen- en servomotoren in te stellen als u eenmaal vertrouwd bent met PMDC-motoren.
Materiaal robotchassis:
Als student of hobbyist is het moeilijkste deel van het maken van een robot het voorbereiden van het chassis van onze robot. Het probleem zit hem in de beschikbaarheid van gereedschappen en materiaal. Het meest ideale materiaal voor dit project is acryl, maar er zijn boormachines en ander gereedschap voor nodig om ermee te werken. Vandaar dat er voor hout is gekozen dat iedereen er gemakkelijk aan kan werken.
Dit probleem is na de introductie van de 3D-printers volledig uit het veld verdwenen. Ik ben van plan om ooit onderdelen in 3D te printen en jullie bij te werken met hetzelfde. Laten we dus voorlopig houten platen gebruiken om onze robot te bouwen.
Batterij capaciteit:
Het selecteren van de batterijcapaciteit zou ons laatste deel van het werk moeten zijn, omdat het puur afhankelijk is van uw chassis en motoren. Hier zou onze batterij een stofzuiger moeten aandrijven die ongeveer 3-5A en vier PMDC-motoren trekt. Daarom hebben we een zware batterij nodig. Ik heb 12V 20Ah SLAB (verzegelde loodzuurbatterij) gekozen en het is behoorlijk omvangrijk waardoor onze robot vier PMDC-motoren krijgt om deze omvangrijke man te trekken.
Nu we al onze vereiste componenten hebben geselecteerd, kunnen we ze opsommen
- Houten platen voor chassis
- IR- en US-sensoren
- Stofzuiger die werkt op gelijkstroom
- Arduino Uno
- 12V 20Ah accu
- Motorbesturing IC (L293D)
- Werkgereedschap
- Draden aansluiten
- Enthousiaste energie om te leren en te werken.
De meeste van onze componenten komen aan bod in de bovenstaande beschrijving, ik zal de links-outs hieronder toelichten.
DC-stofzuiger:
Omdat onze robot op een 12V 20Ah DC-systeem werkt. Onze stofzuiger moet ook een 12V DC-stofzuiger zijn. Als je niet weet waar je er een kunt krijgen, kun je eBay of Amazon bezoeken voor stofzuigers voor het reinigen van auto's.
We zullen hetzelfde gebruiken als in bovenstaande afbeelding.
Motorbesturing (L293D):
Een motordriver is een tussenmodule tussen Arduino en de motor. Dit komt omdat de Arduino-microcontroller niet in staat zal zijn om de stroom te leveren die nodig is om de motor te laten werken en slechts 40 mA kan leveren, waardoor het trekken van meer stroom de controller permanent zal beschadigen. Dus we triggeren de motoraandrijving die op zijn beurt de motor aanstuurt.
We zullen L293D Motor Driver IC gebruiken die tot 1A kan leveren, vandaar dat deze driver de informatie van Arduino krijgt en de motor naar wens laat werken.
Dat is het!! Ik heb de meeste cruciale informatie gegeven, maar voordat we beginnen met het bouwen van de robot, is het aan te raden om de datasheet van L293D en Arduino door te nemen. Als u twijfels of problemen heeft, kunt u contact met ons opnemen via het commentaargedeelte.
De robot bouwen en testen:
De stofzuiger is het meest cruciale onderdeel bij het plaatsen van de robot. Het moet in een gekantelde hoek worden geplaatst, zoals weergegeven in de afbeelding, zodat het de juiste vacuümwerking kan bieden. De stofzuiger wordt niet aangestuurd door de Arduino. Zodra u de robot aanzet, wordt ook de stofzuiger ingeschakeld.
Een vermoeiend proces bij het bouwen van onze robot zijn de houten werken. We moeten ons hout hakken en wat gaten boren om de sensoren en stofzuiger te plaatsen.
Het wordt aanbevolen om een testrit met uw robot te maken met de volgende code nadat u de motor en motorbesturing heeft geregeld, voordat u de sensoren aansluit.
void setup () {Serial.begin (9600); pinMode (9, UITGANG); pinMode (10, UITGANG); pinMode (11, UITGANG); pinMode (12, UITGANG); } void loop () {delay (1000); Serial.print ("doorsturen"); digitalWrite (9, HIGH); digitalWrite (10, LOW); digitalWrite (11, HIGH); digitalWrite (12, LOW); vertraging (500); Serial.print ("achteruit"); digitalWrite (9, LOW); digitalWrite (10, HIGH); digitalWrite (11, LOW); digitalWrite (12, HIGH); }
Als alles goed werkt, kunt u de sensoren met Arduino verbinden zoals weergegeven in het schakelschema en de volledige code gebruiken die aan het einde wordt gegeven. Zoals je kunt zien heb ik aan de voorkant een Ultrasone sensor gemonteerd en aan de zijkant twee IR-sensoren. Het koellichaam is op de L293D gemonteerd voor het geval het IC snel opwarmt.
Je kunt ook een paar extra onderdelen toevoegen zoals deze
Dit is een veeginrichting die aan beide uiteinden van het voorste deel kan worden geplaatst, waardoor het stof langs de zijkanten in het aanzuiggebied wordt geduwd.
Verder heb je ook de mogelijkheid van het maken van een kleinere versie van dit stofzuigrobot als deze
Deze kleinere robot is gemaakt op karton en draait op een ATMega16 ontwikkelbord. Het stofzuigergedeelte werd gedaan met behulp van een BLDC-ventilator en ingesloten in een doos. U kunt dit toepassen als u uw budget laag wilt houden. Dit idee werkt ook, maar het is niet efficiënt.
Schakelschema:
De code voor deze stofzuigerrobot vindt u in het codegedeelte hieronder. Zodra de verbinding is gemaakt en het programma in Arduino is gedumpt, is uw robot klaar om in actie te komen. De werking van de code wordt uitgelegd aan de hand van de opmerkingen. Als je deze robot in actie wilt zien, bekijk dan onderstaande video.
Verder ben ik ook van plan om de onderdelen volledig in 3D te printen in de volgende versie. Ik ga ook een paar coole functies en complexe algoritmen toevoegen, zodat het het hele tapijtgebied beslaat en gemakkelijk te hanteren en compact is. Dus blijf op de hoogte voor toekomstige updates.