This is an old revision of the document!


Maze-Runner: Robot Autonom Wall-Follower

Introducere

Acest proiect consta in realizarea unui robot mobil autonom capabil sa navigheze printr-un labirint, mentinand o traiectorie stabila prin urmarirea peretilor (Wall-Following).

  • Ce face: Utilizeaza trei senzori ultrasonici (HC-SR04) pentru a masura distanta fata de obstacole. Pe baza datelor, un algoritm PID ajusteaza viteza motoarelor via PWM pentru a mentine robotul la o distanta fixa de perete.
  • Scopul lui: Realizarea unui sistem de navigare autonoma bazat pe reactii rapide la mediu prin bucle de feedback negativ, fara o harta predefinita.
  • Ideea de la care am pornit: Explorarea roboticii mobile si implementarea unui algoritm de control clasic (PID) pentru a elimina mersul in “zig-zag”.
  • De ce este util: Pentru echipa, este un exercitiu esential de procesare a semnalelor prin intreruperi si implementare a controlului automat bare-metal. Pentru ceilalti, exemplifica generarea unui comportament autonom complex printr-o logica de control simpla.

Descriere generală

Fluxul de date planificat si interactiunea modulelor:

  1. Citire ADC: Sistemul citeste potentiometrul pentru a stabili distanta dorita fata de perete (referinta).
  2. Preluare Date Senzori: La intervale regulate (ex. 50ms), MCU declanseaza senzorii ultrasonici si calculeaza distantele (Fata, Stanga, Dreapta) folosind Timere/Intreruperi.
  3. Calcul Eroare: Se calculeaza diferenta dintre distanta laterala curenta si referinta dorita.
  4. Procesare PID: Modulul central aplica algoritmul de control pe baza erorii pentru a calcula corectia necesara.
  5. Generare Semnal: MCU genereaza semnalele PWM ajustate si pinii de directie.
  6. Actionare: Driverul L298N primeste comenzile si modifica asimetric turatia celor doua motoare DC pentru a corecta traiectoria.

Logica de navigare foloseste o ierarhie stricta: EVITARE COLIZIUNE FRONTALA > URMARIRE PERETE LATERAL. Daca senzorul frontal scade sub un prag critic, robotul suprascrie bucla PID si executa o rotatie de urgenta.

Hardware Design

Design-ul fizic este conceput pentru a asigura stabilitatea robotului in timpul navigarii prin labirint, utilizand un sasiu alungit 2WD care permite montarea strategica a senzorilor. Elementul central il reprezinta sistemul de detectie format din trei senzori ultrasonici, dispusi pentru a acoperi zonele frontala, stanga si dreapta, oferind robotului o “viziune” completa asupra mediului inconjurator.

Lista de piese:

  • 1 x Microcontroler ATmega324P (pe placa de dezvoltare)
  • 1 x Kit Sasiu Masina 2WD (include 2 motoare DC, roti, roata caster si suport baterii)
  • 1 x Modul Driver Motoare Dual L298N
  • 3 x Senzori Ultrasonici HC-SR04 (pentru detectia peretilor pe 3 directii)
  • 1 x Potentiometru 10 kΩ (pentru reglarea dinamica a parametrilor PID - Lab 4)
  • 1 x Baterie 9V + Conector (alimentare logica microcontroler)
  • 1 x Pachet 4 baterii AA (alimentare forta motoare)
  • 1 x Breadboard 830 puncte
  • Fire de conexiune Dupont (Tata-Tata pentru breadboard, Mama-Tata pentru senzori si driver)

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2026/florin.stancu/mihnea.popescu1811.1778181495.txt.gz · Last modified: 2026/05/07 22:18 by mihnea.popescu1811
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0