Inhoudsopgave:

DIY muur volgende robot - Ajarnpa
DIY muur volgende robot - Ajarnpa

Video: DIY muur volgende robot - Ajarnpa

Video: DIY muur volgende robot - Ajarnpa
Video: Первый самодельный робот во Вьетнаме часть 1: железные ноги | Автомобильная техника 2024, Juli-
Anonim
DIY muur volgende robot
DIY muur volgende robot

In deze Instructable zullen we uitleggen hoe we een obstakeldetectie- en -vermijdingssysteem kunnen ontwerpen met behulp van een GreenPAK™ samen met een paar externe ultrasone en infrarood (IR) sensoren. Dit ontwerp introduceert enkele onderwerpen die nodig zijn voor autonome en kunstmatig intelligente robotsystemen.

Hieronder hebben we de stappen beschreven die nodig zijn om te begrijpen hoe de oplossing is geprogrammeerd om een muurvolgende robot te creëren. Als u echter alleen het resultaat van het programmeren wilt hebben, download dan GreenPAK-software om het reeds voltooide GreenPAK-ontwerpbestand te bekijken. Sluit de GreenPAK Development Kit aan op uw computer en druk op programma om de muurvolgende robot te maken.

Stap 1: Probleemstelling

De laatste tijd is er hernieuwde belangstelling voor kunstmatige intelligentie, en veel van die belangstelling gaat uit naar volledig autonome en intelligente machines. Dergelijke robots kunnen menselijke aansprakelijkheid minimaliseren en automatisering uitbreiden naar gebieden zoals civiele diensten en defensie. AI-onderzoekers proberen diensten zoals brandbestrijding, medische zorg, rampenbeheer en levensreddende taken te automatiseren door middel van autonome robotvoertuigen. Een uitdaging die deze voertuigen moeten overwinnen, is hoe ze obstakels zoals puin, vuur, valkuilen, enz. met succes kunnen detecteren en vermijden.

Stap 2: Implementatiedetails

Implementatiedetails
Implementatiedetails

In deze Instructable zullen we een ultrasone sensor, een paar IR-obstakeldetectiesensoren, een motorstuurcircuit (L298N), vier gelijkstroommotoren, wielen, een skelet van een auto met vierwielaandrijving en een GreenPAK SLG46620V-chip gebruiken.

Een digitale uitgangspin van de GreenPAK-controller wordt gebruikt om de ultrasone sensor (ook bekend als sonar) te triggeren en een digitale ingangspin wordt gebruikt om de resulterende echo van de obstakels voor analyse te verzamelen. De output van de IR obstakeldetectiesensor wordt ook geobserveerd. Na het toepassen van een aantal voorwaarden, als een obstakel te dichtbij is, worden de motoren (verbonden met elk van de 4 wielen) afgesteld om een botsing te voorkomen.

Stap 3: Uitleg

De autonome obstakelvermijdende robot moet in staat zijn om zowel obstakels te detecteren als botsingen te vermijden. Het ontwerp van zo'n robot vereist de integratie van verschillende sensoren, zoals stootsensoren, infraroodsensoren, ultrasone sensoren, enz. Door deze sensoren op de robot te monteren, kan hij informatie krijgen over de omgeving. Een ultrasone sensor is geschikt voor obstakeldetectie voor een langzaam bewegende autonome robot, omdat deze een lage kostprijs en een relatief groot bereik heeft.

Een ultrasone sensor detecteert objecten door een korte ultrasone burst uit te zenden en vervolgens te luisteren naar de echo. Onder besturing van een host-microcontroller zendt de sensor een korte puls van 40 kHz uit. Deze puls reist door de lucht totdat hij een object raakt en wordt vervolgens teruggekaatst naar de sensor. De sensor levert een uitgangssignaal aan de host dat stopt wanneer de echo wordt gedetecteerd. Op deze manier wordt de breedte van de geretourneerde puls gebruikt om de afstand tot het object te berekenen.

Dit robotvoertuig om obstakels te vermijden gebruikt een ultrasone sensor om objecten op zijn pad te detecteren. De motoren zijn via een motor driver IC verbonden met de GreenPAK. De ultrasone sensor is aan de voorkant van de robot bevestigd en de twee IR-sensoren voor het detecteren van obstakels zijn aan de linker- en rechterkant van de robot bevestigd om zijobstakels te detecteren.

Terwijl de robot op het gewenste pad beweegt, zendt de ultrasone sensor continu ultrasone golven uit. Telkens wanneer zich een obstakel voor de robot bevindt, worden de ultrasone golven door het obstakel teruggekaatst en wordt die informatie doorgegeven aan de GreenPAK. Tegelijkertijd zenden en ontvangen de IR-sensoren IR-golven. Na het interpreteren van de invoer van de ultrasone en IR-sensoren, bestuurt de GreenPAK de motoren voor elk van de vier wielen.

Stap 4: Beschrijving van het algoritme

Algoritme Beschrijving
Algoritme Beschrijving

Bij het opstarten worden de vier motoren tegelijkertijd ingeschakeld, waardoor de robot vooruit gaat. Vervolgens zendt de ultrasone sensor met regelmatige tussenpozen pulsen uit vanaf de voorkant van de robot. Als er een obstakel aanwezig is, worden de geluidspulsen gereflecteerd en gedetecteerd door de sensor. De reflectie van pulsen hangt af van de fysieke staat van het obstakel: als het een onregelmatige vorm heeft, zullen de gereflecteerde pulsen minder zijn; als het uniform is, zullen de meeste uitgezonden pulsen worden gereflecteerd. De reflectie hangt ook af van de richting van het obstakel. Als het licht gekanteld is of parallel aan de sensor wordt geplaatst, zullen de meeste geluidsgolven ongereflecteerd passeren.

Wanneer een obstakel voor de robot wordt gedetecteerd, worden de zij-uitgangen van de IR-sensoren waargenomen. Als er aan de rechterkant een obstakel wordt gedetecteerd, worden de banden aan de linkerkant van de robot uitgeschakeld, waardoor deze naar links draait en vice versa. Als er geen obstakel wordt gedetecteerd, wordt het algoritme herhaald. Het stroomschema is weergegeven in figuur 2.

Stap 5: Ultrasone sensor HC-SR04

Ultrasone sensor HC-SR04
Ultrasone sensor HC-SR04
Ultrasone sensor HC-SR04
Ultrasone sensor HC-SR04
Ultrasone sensor HC-SR04
Ultrasone sensor HC-SR04
Ultrasone sensor HC-SR04
Ultrasone sensor HC-SR04

Een ultrasone sensor is een apparaat dat de afstand tot een object kan meten met behulp van geluidsgolven. Het meet afstand door een geluidsgolf op een specifieke frequentie uit te zenden en te luisteren of die geluidsgolf terugkaatst. Door de verstreken tijd tussen de gegenereerde geluidsgolf en de terugkaatsende geluidsgolf te registreren, is het mogelijk om de afstand tussen de sonarsensor en het object te berekenen. Geluid reist door de lucht met een snelheid van ongeveer 344 m/s (1129 ft/s), dus je kunt de afstand tot het object berekenen met formule 1.

De HC-SR04 ultrasone sensor bestaat uit vier pinnen: Vdd, GND, Trigger en Echo. Telkens wanneer een puls van de controller wordt toegepast op de triggerpin, zendt de sensor een ultrasone golf uit van een "luidspreker". Gereflecteerde golven worden gedetecteerd door de "ontvanger" en worden via de Echo-pin teruggestuurd naar de controller. Hoe langer de afstand tussen de sensor en een obstakel, hoe langer de puls op de Echo-pin zal zijn. De puls blijft aan gedurende de tijd die de sonarpuls nodig heeft om van de sensor af te reizen en terug te keren, gedeeld door twee. Wanneer de sonar wordt geactiveerd, start een interne timer die doorgaat totdat de gereflecteerde golf wordt gedetecteerd. Deze tijd wordt vervolgens door twee gedeeld omdat de werkelijke tijd die de geluidsgolf nodig had om het obstakel te bereiken, de helft was van de tijd dat de timer was ingeschakeld.

De werking van de ultrasone sensor wordt geïllustreerd in figuur 4.

Om de ultrasone puls te genereren, moet u de trigger gedurende 10μs op een HIGH-status zetten. Dat zal een 8-cyclus sonische burst uitzenden, die zal weerkaatsen op elk obstakel voor het apparaat en door de sensor zal worden ontvangen. De Echo-pin geeft de tijd (in microseconden) weer die de geluidsgolf heeft afgelegd.

Stap 6: Sensormodule infrarood obstakeldetectie

Sensormodule voor infraroodobstakeldetectie
Sensormodule voor infraroodobstakeldetectie

Net als de ultrasone sensor is het basisconcept van infrarood (IR) obstakeldetectie het verzenden van een IR-signaal (in de vorm van straling) en het observeren van de reflectie ervan. De IR-sensormodule wordt getoond in Afbeelding 6.

Functies

  • Er is een obstakel-indicatielampje op de printplaat;
  • Digitaal uitgangssignaal:
  • Detectieafstand: 2 ~ 30 cm
  • Detectiehoek: 35 °
  • Vergelijkingschip: LM393
  • Instelbaar detectiebereik via potentiometer:

○ Met de klok mee: detectieafstand vergroten

○ Tegen de klok in: detectieafstand verkleinen

Specificaties:

  • Werkspanning: 3 – 5 V DC
  • Uitgangstype: Digitale schakeluitgang (0 en 1)
  • 3 mm schroefgaten voor eenvoudige montage
  • Afmeting bord: 3,2 x 1,4 cm

Controle-indicator Beschrijving beschreven in Tabel 1.

Stap 7: Motorbesturingscircuit L298N

Motorbesturingscircuit L298N
Motorbesturingscircuit L298N
Motorbesturingscircuit L298N
Motorbesturingscircuit L298N
Motorbesturingscircuit L298N
Motorbesturingscircuit L298N

Het motorstuurcircuit, of H-Bridge, wordt gebruikt om de snelheid en richting van de gelijkstroommotoren te regelen. Het heeft twee ingangen die moeten worden aangesloten op een afzonderlijke gelijkstroombron (motoren trekken veel stroom en kunnen niet rechtstreeks door de controller worden gevoed), twee sets uitgangen voor elke motor (positief en negatief), twee activeringspinnen voor elk set uitgangen en twee sets pinnen voor de richtingsregeling van elke motoruitgang (twee pinnen voor elke motor). Als de twee meest linkse pinnen logische niveaus HOOG krijgen voor de ene pin en LAAG voor de andere, zal de motor die is aangesloten op de linkeruitgang in één richting draaien en als de volgorde van de logica wordt omgekeerd (LAAG en HOOG), zullen de motoren draaien in tegengestelde richting. Hetzelfde geldt voor de meest rechtse pinnen en de rechter uitlaatmotor. Als beide pinnen in het paar logische niveaus HOOG of LAAG krijgen, zullen de motoren stoppen.

Deze dubbele bidirectionele motordriver is gebaseerd op de zeer populaire L298 Dual H-Bridge Motor Driver IC. Met deze module kunt u eenvoudig en onafhankelijk twee motoren in beide richtingen aansturen. Het gebruikt de standaard logische signalen voor besturing en het kan tweefasige stappenmotoren, vierfasige stappenmotoren en tweefasige gelijkstroommotoren aandrijven. Het heeft een filtercondensator en een vrijloopdiode die apparaten in het circuit beschermt tegen beschadiging door de tegenstroom van een inductieve belasting, wat de betrouwbaarheid verbetert. De L298 heeft een driverspanning van 5-35 V en een logisch niveau van 5 V.

De functie van de motordriver wordt beschreven in Tabel 2.

Het blokschema met de verbindingen tussen de ultrasone sensor, de motordriver en de GPAK-chip wordt getoond in figuur 8.

Stap 8: GreenPAK-ontwerp

GreenPAK-ontwerp
GreenPAK-ontwerp
GreenPAK-ontwerp
GreenPAK-ontwerp

In Matrix 0 werd de triggerinvoer voor de sensor gegenereerd met behulp van CNT0/DLY0, CNT5/DLY5, INV0 en de oscillator. De invoer van de Echo-pin van de ultrasone sensor wordt gelezen met behulp van Pin3. Drie ingangen worden toegepast op 3-bit LUT0: een van Echo, een andere van de trigger en een derde is de trigger-ingang die met 30 ons is vertraagd. De uitvoer van deze opzoektabel wordt gebruikt in Matrix 1. De uitvoer van de IR-sensoren wordt ook genomen in Matrix 0.

In Matrix 1 zijn poorten P1 en P6 samen OR'd en verbonden met Pin17, die is aangesloten op Pin1 van de motordriver. Pin18 is altijd logisch LAAG en is verbonden met Pin2 van de motordriver. Evenzo zijn de poorten P2 en P7 samen OR'd en verbonden met de GreenPAK's Pin20, die is aangesloten op P3 van het motorstuurcircuit. Pin19 is verbonden met Pin4 van de motordriver en staat altijd op logisch LAAG.

Wanneer de Echo-pin HOOG is, betekent dit dat er een object voor de robot staat. De robot controleert vervolgens op obstakels links en rechts van de IR-sensoren. Als er ook een obstakel aanwezig is aan de rechterkant van de robot, dan draait deze naar links, en als er een obstakel is aan de linkerkant, dan draait hij naar rechts. Op deze manier vermijdt de robot obstakels en beweegt hij zonder botsing.

Conclusie

In deze Instructable hebben we een eenvoudig automatisch voertuig voor het detecteren en ontwijken van obstakels gemaakt met de GreenPAK SLG46620V als het belangrijkste besturingselement. Met wat extra circuits kan dit ontwerp worden verbeterd om andere taken uit te voeren, zoals het vinden van een pad naar een specifiek punt, een doolhofoplossend algoritme, een lijnvolgend algoritme, enz.

Stap 9: Hardware-afbeeldingen

Aanbevolen: