Robot umidificare camera

Introducere

Proiectul consta intr-un robot care se deplaseaza autonom printr-o camera. Are un senzor ultrasonic de distanta care il ajuta sa evite obstacolele. Cand detecteaza o zona care nu corespunde standardului de umidificare setat, porneste un diffuser care imprastie apa in aer.

Descriere generală

Robotul se va deplasa pe 4 roti. Senzorul ultrasonic de distanta primeste in permanenta informatii si le analizeaza. Cand este suficient de aproape de un obstacol, se roteste. Astfel, parcurge diferite zone din camera in care se afla si masoara constant umiditatea. Daca nu se incadreaza in standardul setat, activeaza un water diffuser pentru a creste nivelul.

Hardware Design

Piese Hardware:

  • Arduino Uno
  • Sursa de alimentare
  • Senzor ultrasonic de distanta
  • Driver pentru motor
  • 4 x Motoare pentru roti
  • Servomotor
  • Roti
  • Senzor de umiditate
  • Releu
  • Diffuser
  • Fire conectoare
  • Breadboard

Software Design

Pentru dezvoltarea proiectului am folosit Arduino IDE.

Bibliotecile utilizate sunt:

  • NewPing.h - pentru senzorul ultrasonic de distanță
  • Servo.h - pentru micro servomotor
  • dht11.h - pentru senzorul de umiditate și temperatură

În funcție de metoda apelată, mașina poate executa următoarele acțiuni:

  • să citească distanța de la senzor - funcția readPing()
  • să se deplaseze în față - funcția moveForward()
  • să se deplaseze în spate - funcția moveBackward()
  • să frâneze - funcția stopMotors()
  • să se rotească la stânga - funcția turnLeft()
  • să se rotească la dreapta - funcția turnRight()
  • să evalueze și să decidă noua direcție de deplasare (dacă distanța față de obstacol e prea mică) - funcția findNewDirection()

În plus, am scris propriile funcții pentru mișcarea motoarelor (4 funcții) care primesc ca parametru un bool reprezentând direcția de deplasare (Clockwise sau Counterclockwise).

Întreruperea constă în verificarea umidității din cameră și pornirea diffuserului de apă când umiditatea este sub un anumit prag.

Rezultate Obţinute

 

Concluzii

Dupa ore de muncă, robotul își îndeplinește funcțiile de bază:

  • evitarea obstacolelor
  • umidificarea camerei

Ca experiență, mi s-a părut super interesant să fac propriul meu proiect (Hardware + Software), care să și funcționeze în final. Am avut și mici momente de “panică”, când nu mai mergea un motor (i-am deschis carcasa, dar aparent problema era la conectarea unui fir :-D) sau când nu funcționa senzorul de umiditate așa cum mă așteptasem.

Download

Bibliografie/Resurse

pm/prj2024/sseverin/ioan.sturzoiu.txt · Last modified: 2024/05/27 14:50 by ioan.sturzoiu
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