Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2022:alaura:masina_controlata_bluetooth [2022/05/27 18:36]
adrian.draghicescu [Rezultate Obţinute]
pm:prj2022:alaura:masina_controlata_bluetooth [2022/05/27 23:16] (current)
adrian.draghicescu
Line 1: Line 1:
-====== Masina contolata prin bluetooth ​- Draghicescu Adrian ​======+====== Masina contolata prin bluetooth ====== 
 +Draghicescu Adrian-Ioan 343C3
 ===== Introducere ===== ===== Introducere =====
  
-Masina controlata prin bluetooth de pe telefon, se poate controla directia, viteza ​si tipul de avansare (automat sau controlat) care poate merge si in mod automat ​evitand obstacolele folosind un sezor ultrasonic.+Masina controlata prin bluetooth de pe telefon, ​care poate exploara un spaciu in mod automat evitant coliziunea cu diversele obstacole care se afla in acel spatiu si care poate retine utlimele comenzi date de utilizator ​si de a merge inapoi urmand opusul acestor comenzi. 
 + 
 +Am pornit de la ideea de a avea o masina capabila de a explora o camera si de a o mapa in memorie similar cu ce faca aspiratoarele automate, dar limitarile de memorie de pe o placa arduino si lipsa unor sezori care sa abdateze pozitia si orientarea interna a masini a facut acest lucru foarte dificil. 
 + 
 +Utilitaile proiectului:​ 
 +  - In primul rand este foarte amuzat sa te joci o masinuta controlata remote, mai ales cand ai contruit o singur :) 
 +  - In al doilea rand este un inceput pentru proiecte mai avansate in care ai mai multe resurse atat hardware cat si software precum: 
 +    * aspiratore automate 
 +    * masini la scara intreaga care ies din parcare ​in mod automat 
 +    * masini la scara intreaga care navigeaza in mod automat in mod automat 
 +    * etc. 
 + 
 ===== Descriere generală ===== ===== Descriere generală =====
 +Utilizatorul interactioneaza cu masina prin aplicatia [[https://​play.google.com/​store/​apps/​detailsid=braulio.calle.bluetoothRCcontroller&​hl=en&​gl=US|Android Bluetooth RC Car]]. Acesta poate sa:
 +  * O controleze in mod direct prin a indica directia in care vrea sa mearga si prin a seta viteza.
 +  * O seteze ca mearga automat (sa exploreze incapera) fara a lovi peretii sau obectele din ea.
 +  * Sa mearga inapoi de unde a venit executand inversul comenzilor date de ultizator dintr o perioada de timp in mod automat.
  
 {{:​pm:​prj2022:​alaura:​block_diagram_car.png?​700|}} {{:​pm:​prj2022:​alaura:​block_diagram_car.png?​700|}}
Line 30: Line 47:
     * NewPing.h     * NewPing.h
     * Servo.h     * Servo.h
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi +  * [[https://​github.com/​adriandrag18/​ArduinoCar|cod]] 
-  * (etapa 3surse şi funcţii implementate+  * Design: 
 +    * Pentru controlul masini folosesc aplicatia de [[https://​play.google.com/​store/​apps/​detailsid=braulio.calle.bluetoothRCcontroller&​hl=en&​gl=US|Android Bluetooth RC Car]] 
 +    * Modulul de decodare a intructiunii trimise de aplicatie 
 +    * Modulul de control automat 
 +    * Modulul de citire a distantei 
 +    * Modulul de alegere a directie 
 +    * Modulurile de mers inainte si inapoi 
 +    * Modulurile de virat la stanga si la dreapta 
 +  * Structuri de date folosite: 
 +    * O stiva cirulara pentru a memora actiunile ​(directia si viteza motoarelela intervale de 50 ms timp de cateva secunde pentru a putea da inpoi facund opusul fiecarei actiuni.  
 +Aplicatie:
 {{:​pm:​prj2022:​alaura:​app_car.png?​300|}} {{:​pm:​prj2022:​alaura:​app_car.png?​300|}}
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
-Am obtinut o masinuta care poate fi controlata prin telefon.+Am obtinut o masinuta care poate fi controlata prin telefon ​ca viteza si directie, care poate sa mearga in mod automat sa exploreze o marea evitand obstacolele si care poate retine un numar de comenzi date de la utilizator si sa mearga inapoi facand opusul acelor comenzi. 
 + 
 +Funtionalitatea de evitare a obstacolelor este limitata, avand un singur senzor, exista situati in care un evental obstacol nu este exact in fata senzorului sau la un unghi care nu perimte detectia de senzourl ultrasonic. 
 + 
 +Functionalitatea de mers inapoi in pozitia initiala este deoarece masina nu este dotata cu giroscop sau accelerometru,​ cu cat numarul de instructiuni pe care trebuie sa le faca inapoi este mai mare cu ata marja de eroare este mai mare
  
 [[https://​drive.google.com/​drive/​folders/​1GlhlUfFA6yRoetB0f_5pWKZFR4wj5yFC?​usp=sharing|Demo]] [[https://​drive.google.com/​drive/​folders/​1GlhlUfFA6yRoetB0f_5pWKZFR4wj5yFC?​usp=sharing|Demo]]
Line 42: Line 73:
 {{:​pm:​prj2022:​alaura:​car2.png?​300|}} {{:​pm:​prj2022:​alaura:​car2.png?​300|}}
 ===== Concluzii ===== ===== Concluzii =====
 +Proiectul a fost o experienta educationala foarte reusita pe care eu il consider un succes. Desi nu am realizat ce mi as fi dorit initail, am desoperit limitarile diferitor componente hardware si software.
  
 +Am obeserat ca pentru a face o explorare mai exacta a unei incaperi masina trebuie doata cu niste senzori care sa verifice si sa updateze starea interna a masinii (pozitia si orientarea in spatiu) deoarece bazundu-ma doar pe un viteza cu care pornesc motoarele si durata cat sunt pornite pentru a actualiza starea in fiecare sencunda apare o usoara deviere intre starea actuala si cea interna iar dupa suficient de mult timp starea interna este cu totul fierita fata de cea reala.
 ===== Download ===== ===== Download =====
  
pm/prj2022/alaura/masina_controlata_bluetooth.1653665804.txt.gz · Last modified: 2022/05/27 18:36 by adrian.draghicescu
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