INHOUDSOPGAWE:

Ontdek hindernisse asynchroon met ultraklank: 4 stappe
Ontdek hindernisse asynchroon met ultraklank: 4 stappe

Video: Ontdek hindernisse asynchroon met ultraklank: 4 stappe

Video: Ontdek hindernisse asynchroon met ultraklank: 4 stappe
Video: 馃憠馃摎 效孝袨 袧袝 袟袧袗挟孝 袨 袦袗小孝袝袪-袣袥袗小小袝 效袠小孝袣袗 袚袨袥袨袙袨袣 袩袪袠袧孝袝袪袨袙 袠 协袥袝袣孝袪袨袧袠袣袠 2024, Julie
Anonim
Ontdek hindernisse asynchroon met ultraklank
Ontdek hindernisse asynchroon met ultraklank

Ek bou vir die plesier 'n robot wat ek outonoom in 'n huis wil skuif.

Dit is 'n lang werk en ek doen dit stap vir stap.

Hierdie instruksionele fokus op die opsporing van hindernisse met Arduino Mega

Ultrasoniese sensors HC-SR04 vs HY-SRF05 is goedkoop en eenvoudig om te gebruik, maar dit kan moeilik wees om in die mikrobeheerderlus in 'n komplekse robot te integreer. Ek wou hindernisopsporing op 'n asynchrone manier uitvoer.

_

Ek het reeds 3 instruksies oor die kenmerke van hierdie robot gepubliseer:

  • Maak u wielkodeerder
  • Maak u WIFI -gateway
  • Gebruik traagheidsmodule -eenheid

En 'n dokumentasie oor die kombinasie van kunsmatige intelligensie en ultraklank om die robot te lokaliseer.

Stap 1: Wat is presies die probleem met ultrasoniese sensors en mikrobeheerders?

Wat is presies die probleem met ultrasoniese sensors en mikrobeheerders?
Wat is presies die probleem met ultrasoniese sensors en mikrobeheerders?
Wat is presies die probleem met ultrasoniese sensors en mikrobeheerders?
Wat is presies die probleem met ultrasoniese sensors en mikrobeheerders?

Synchrone wag en Arduino beperkings

Die kode vir mikrobeheerders loop in 'n lus en ondersteun nie multi-threads nie. Ultrasoniese sensors is gebaseer op seinduur. Hierdie duur duur tot 30 m s, wat baie lank is om in die lus te wag as die mikrobeheerders met veelvuldige motors en sensors te doen het (byvoorbeeld servo- en GS -motors met wielkoders).

Ek wou dus 'n voorwerp ontwikkel wat asynchroon loop.

Stap 2: Hoe werk dit?

Hoe werk dit ?
Hoe werk dit ?

Dit is ontwerp vir Atmega vir die opsporing van hindernisse. Dit ondersteun tot 4 ultrasoniese sensors.

Danksy periodieke tydsonderbreking kan die stelsel tot 4 ultrasoniese sensors monitor. Die hoofkode hoef slegs te bepaal watter sensor met toestand en drempel moet geaktiveer word.

Die belangrikste funksies is:

  • Waarskuwing is die basiese hindernisopsporing en bied onderbrekings as ten minste 1 van die 4 sensors 'n afstand onder sy drempel opspoor
  • Monitor is 'n uitgebreide funksie wat onderbrekings bied op 'n kombinasie van afstandstoestand van tot 4 sensors. Die moontlike toestande is verby, onder, gelyk of nie gelyk aan drempels nie.

Stap 3: Tegniese besonderhede

Gebruik timer4 sodat pen 6 7 8 nie as PWM gebruik kan word nie.

Vir elke sensor benodig die voorwerp 'n sneller -PIN en 'n onderbrekings -PIN.

Bo -op die sensors onderbreek PIN's, het die voorwerp 'n ander PIN nodig om sagteware te gebruik.

Stap 4: Hoe om dit te implementeer?

Hoe om te implementeer?
Hoe om te implementeer?

Koppel die sensors soos hierbo

Laai af vanaf hierdie GitHub -bewaarplek

  • EchoObstacleDetection.cpp,
  • EchoObstacleDetection.h
  • VoorbeeldEchoObstacleDetection.ino

Skep die gids EchoObstacleDetection in u IDE -biblioteek en skuif die.cpp en.h

Toets dit

Maak voorbeeldEchoObstacleDetection.ino oop.

Dit is 'n eenvoudige voorbeeld van die opsporing van struikelblokke met 2 ultrasoniese sensors.

Die uitset word op die seri毛le monitor gerig. Eerstens druk dit die afstande wat deur die twee sensors opgespoor word, af en druk dan waarskuwings na gelang van afstande onder drempels.

Aanbeveel: