2012_331AC_P7

Interfata - comunicatie seriala intre placa EV/Z3 si un linefollower [edit]

  [edit]

I. Project Description

 Proiectul se refera la integrarea unui robot linefollower, cu functii si capacitati multiple (mai mult decat linefollowing, dar structural asemanator cu un linefollower), la placa EV/Z3 printr-o comuncicatie seriala realizata cu un MAX 232.

Linefollower-ul este un robot 3pi (modificat) bazat pe ATMega328P. Rezultatul final presupune afisarea cu ajutorul EV/Z3 a unor informatii relevante despre robot - pozitia liniei, obstacole, parametrii de functionare etc.

NOTE: Intrucat Liana nu poate participa la laboratorul final de prezentare am modificat intr-o oarecare privinta proiectul, in sensul in care am definit clar un task pentru mine - realizarea comunicatiei seriale, atat hardware cat si software.

Pentru simularea unei comunicari intre robot si placa EV/Z3 am folosit un Arduino Diecimila, la care am conectat un led pe pinul 13 pentru a verifica clar capacitatea de comunicare dintre placa din laborator si presupusul robot. Este o inlocuire eficienta intrucat nu modifica cu mult datele problemei. Linefollowerul avea la baza un microcontroler ATMega, iar Arduinoul de fata de asemenea. Astfel, daca proiectul functioneaza corespunzator in aceasta implementare ar putea functiona la fel de bine si atunci cand placuta de comunicatie seriala este conectata la un Arduino montat pe robot.

II. Project Requirements

 Initial: Linefollower ( insert details...nu le cunosc). -> Apoi: inlocuit de un Arduino Diecimila pe post de reciver.

Placuta de comunicatie seriala.

Adaptor mufa DB9 female to male pentru comunicatie corespunzatoare.

Placa EV/Z3.

D.p.d.v. soft: cod Arduino de recive date si cel de Open Watcome de transmit data.

III. User Flow

Testarea functionalitatii placii de comunicatie seriala se realizeaza, asa cum am precizat cu ajutorul unui Arduino. Mai precis incarcam in microcontroler un program care citeste de pe seriala caractere. Daca primeste 'A' ledul va sta aprins, iar daca primeste 'S' va sta stins. In orice alta situate clipeste. Codul de pe placa EV/Z3 trimite aceste caractere pe seriala prin apasarea tastelor corespunzatoare.

IV. Required components

  • MAX 232
  • 4 condensatoare SMD (1uF)
  • 2 leduri verzi SMD - recive and transmit data.
  • 2 rezistente
  • conector DB9 - male + ce urmeaza pt a functiona cu seriala de la laborator
  • mufa pentru a crea un adaptor female din cel male
  • conectori pentru alimentare

V. Hardware Design

 

 

 Schema circuit, iar apoi schema de simulare, ambele realizate in Eagle.

VI. Software Design

Arduino code: Codul de pe microcontrolerul ATMega citeste ce vine de pe seriala. exista 3 cazuri:

1. primeste caracterul x => atunci ledul de pe pin 13 ramane aprins timp de 5 secunde.

2. primeste caracterul y => atunci ledul de pe pin 13 se stinge pentru 5 secunde.

3. daca nu primeste un alt caracter dupa ce cele 5 secunde se sfarsesc ledul ca clipii on/off cu

durata de 1sec/blink.

Open Watcome code(main.c): Codul EV/Z3 trimite pe seriala caractere. Mai precis trimite x sau y .

Trimite x pentru apasarea A si y pentru apasarea B.

VII. Results


VIII. Download

Am atasat coduri sursa, scheme, poze .

IX. Status

Din moment ce am aflat de twistul pe care l-au luat lucrurile doar de aprox. o saptamana pot face un status update la doua zile, dupa cum urmeaza

Day 1-2: Realizare schema circuit si realizare schema de simulare in Eagle.

Day 3-4: Corodare placuta .

Day 5-6: Lipirea componentelor de circuit, finalizare parte hardware.

Day 7-8: Realizare cod test Arduino si cod Open Watcom.

Day 9-10: Finalizare.

X. Personal Contribution

Marinescu Liana - robot linefollower (concurs EuroBot).

Ghiorghita Petru - comunicatie seriala linefollower cu EV/Z3 - cod si placuta.