Documentació

Característiques

Aquest és un robot que es controla mitjançant un circuit de control programable, que presenta un diagrama de blocs com el de la figura:


Funcionament general

Un circuit d’alimentació proporciona la tensió de 5 V necessària pel circuit de control. Aquest circuit de control està basat en el microcontrolador PICAXE 28X1. Uns sensors fotoelèctrics de reflexió associats al circuit de control, informen de l’existència o no de línia. També existeixen uns sensors de distància digitals, destinats a lliurar al circuit de control la informació necessària per tal de saber si existeixen o no objectes al voltant del robot. Finalment, el microcontrolador dóna els senyals necessaris a un driver de potència de motors, per tal que aquests girin en un o altre sentit.


CIRCUIT D’ALIMENTACIÓ

El circuit es pot alimentar directament amb un pack de piles de 6 volts ( 4X1,5V) o bé amb una tensió superior (7,5-12V) si incorporem un regulador de voltatge LM7805.

Desprès del pack de bateries, hem instal·lat l’ interruptor SW2 per tal de poder aturar i posar en marxa el robot.

A continuació de l’interruptor hem inserit el díode D2 destinat a que en cas d’inversió accidental de la polaritat de les piles, el circuit quedi protegit, ja que aquest díode només condueix si el positiu de les bateries està situat al seu ànode.


També disposa dels habituals condensadors de filtre situats tant a l’entrada ( C3) com a la sortida del regulador ( C1 i C2).

La tensió del regulador alimenta la part de control ( microcontrolador i circuits auxiliars). 

El circuit de potència que alimenta els motors agafa la tensió a l’entrada del regulador (VCC), és a dir, que els motors s’alimenten a la mateixa tensió que apliquem a l’entrada de la placa. Al  regulador se li pot lliurar una entrada entre 8 V( mínima ) i 35V ( màxima). Tot i això, alimentar el circuit amb més de 15 Volts pot provocar la destrucció dels motors de tracció. 

SENSORS

 DETECTORS DE BANDA BLANCA

Pel que respecta a aquests  sensors, s’ha utilitzat el sensor de tipus reflexiu CNY70.

Aquest disposa d’un led emissor de llum i d’un fototransistor que condueix quan rep la llum del LED reflexada en algun objecte clar.

S’utilitzen 2 sensors d’aquest tipus disposats en la part frontal del robot, de tal forma que podem discriminar diverses posicions de la línia durant el seu funcionament. També en disposa d’un altre ubicat a la part posterior del robot,

Cadascun dels 3 sensors disposa d’una resistència de 220 ohms de limitació de la intensitat del led il·luminador per tal que aquesta no superi els 20 mA.

També es disposa d’una resistència de polarització, de 100K ohms, connectada entre cada col·lector i positiu. Gràcies a aquesta resistència, les entrades del PICAXE rebran un nivell lògic alt ( 5V) sempre que no es detecti la línia blanca. En el moment de la detecció de línia, el sensor lliurarà un nivell lògic 0.


DETECTORS DIGITALS DE PRESÈNCIA

S’han utilitzat el sensor de presència Sharp GP2Y0D340K. Aquest és un sensor de distàncies per infrarojos que  lliura  una sortida digital 0 o 5V en funció de la no detecció o la detecció d’un objecte situat a una distància inferior a 40 CM.

El rang de distàncies de detecció del sensor es pot modificar de forma senzilla per tal de situar-lo entre 10 i 60 cm, amb el canvi dels valors dels components associats (consultar documentació del fabricant).




El robot construït, disposa de dos sensors d’aquest tipus situats a la part frontal i dos més als laterals. Aquests quatre sensors permeten detectar al contrari, i actuar en conseqüència.

Cal fer l’observació de que aquests sensors digitals es llegiran a través de les entrades analògiques del microcontrolador tal i com mostra l’esquema anterior.


CIRCUIT D’ALIMENTACIÓ DELS MOTORS

 

La sortida del PICAXE-28X1 no alimenta directament els motors, ja que el consum d’aquest seria excessiu per a la poca corrent que aquesta sortida podria lliurar. Per tant utilitzarem un driver de motors, concretament el L293D.

El driver  consta de dos blocs. El primer  bloc ( A) , disposa de dues   entrades de control  selectores del sentit de gir  IN1, IN2 i una entrada d’habilitació EN1 . Les Sortides OUT1 i OUT2 es connecten directament al motor A, subministrant-li la tensió necessària.

En  funció de les combinacions de les entrades i les sortides s’obté una tensió d’una polaritat o altra a aquestes sortides.

Cada bloc del Driver controla els 4 transistors del pont H, de  manera que per a conduir en un sentit cal activar els transistors Q1 i Q4 respectivament, per fer-lo funcionar en  sentit contrari cal que els transistors Q2 i Q3 condueixin.            




Per a controlar el motor A s’utilitzen els PINS : ENA, IN2, IN1.
Per a controlar el motor B s’utilitzen els PINS : ENB, IN4, IN3.


Com a novetat en aquest model de robot s’han connectat les dues entrades d’habilitació (EN1 i EN2) a les dues sortides PWM del microcontrolador. Aquest fet permet la possibilitat de controlar els motors per modulació de polsos en segon pla. Així, es podrà variar fàcilment la velocitat dels motors.  

Quan una entrada d’habilitació rep un nivell alt, el driver  queda habilitat i el motor corresponent funciona segons la combinació de les entrades de control pertinents. I si rep un nivell baix, el driver queda deshabilitat i no obeeix les ordres que se li envien.


A continuació es mostra una taula que reflexa el valor que ha de tenir cada sortida en funció de l’estat de funcionament del motor que desitgem.

 PICAXE-28X1

IN/O1

OUT7

OUT6

IN/O2

OUT5

OUT4

 ORDRE BASIC

 L293B

EN1

IN4

IN3

EN2

IN2

IN1

 

DAVANT A

X

X

X

1

0

1

FORWARD A

ENDARRERA A

X

X

X

1

1

0

BACKWARD A

DAVANT B

1

0

1

X

X

X

FORWARD B

ENDARRERA B

1

1

0

X

X

X

BACKWARD B

ATURAR A

X

X

X

1

0

0

HALT A

ATURAR B

1

0

0

X

X

X

HALT B      

A la columna “ORDRE BASIC” es mostra l’ordre en llenguatge BASIC que s’ha d’utilitzar dins del programa per tal de controlar els motors.


CIRCUIT DE COMUNICACIÓ

La comunicació del microcontrolador amb l’ordinador, es realitza mitjançant els pins 6 i 7 del PICAXE-28X1.


  

PICAXE-28X1.  



Aquest rep de l’ordinador el programa que farà funcionar el circuit.

 

La recepció del programa es fa per l’entrada Serial_in (RXD entrada de comunicació sèrie). Les resistències de 22K ohm i 10 K ohm serveixen per ajustar el voltatge que lliura l’ordinador al que necessita el microcontrolador.

 

També es possible enviar dades des del PICAXE-28X1 cap a l’ordinador. En aquest cas, el xip envia les dades directament des de la sortida Sout ( TXD sortida de comunicació sèrie).


CIRCUIT DE CONTROL

El control del sistema el realitza el PICAXE-28X1. Com es pot observar, aquest s’alimenta amb la tensió de +5 volts provinent del regulador de tensió.


Es pot observar que hi ha algunes de les sortides del microcontrolador s’han connectat a uns terminals anomenats “servo1, servo2 i servo3”. Aquests serveixen per si es desitgés instal·lar  “servomotors” dels utilitzats en radiocontrol, amb la finalitat de dotar al robot d’un sistema de pala mòbil o de “banderoles” per confondre l’adversari.

 

Cal dir que el placa admet la substitució del PICAXE-28X1 per un PIC i la seva programació des de la pròpia placa. Si el PIC disposa del programa de comunicació sèrie al seu interior, es pot programar via USB a través del connector J2, i si és totalment verge, es pot programar amb un programador connectat al connector J1.


EL SISTEMA PICAXE

EL MICROPROCESSADORS
El microprocessadors son uns xips capaços d’executar un programa escrit amb zeros i uns emmagatzemat a la memòria principal.

Aquests xips, que es van inventar al 1971, han suposat un gran avenç en molts de camps de la tècnica, de tal forma que avui en dia s’inclouen en gran quantitat d’aparells, de vegades fent funcions insospitades.

Un televisor, una rentadora o  un reproductor mp3 podrien ser l’exemple d’alguns aparells que incorporen aquests dispositius.

L’ordinador potser és el dispositiu més conegut on s’aplica el microprocessador.  Aquest xip, representa el cervell d’aquestes màquines, tot i que per a funcionar, necessita de tota una sèrie d’elements auxiliars associats sense els quals no podria realitzar cap funció.

Els principals elements auxiliars són les memòries on resideixen els programes que s’ha d’executar i les dades que s’han de tractar.

 

MEMÒRIA DE PROGRAMA (ROM). Habitualment és una memòria de només lectura on resideix el programa. El microprocessador només pot llegir el programa d’aquesta memòria però es impossible modificar-ne el seu contingut. L’avantatge d’aquest tipus de memòria és que conserva les dades encara que traiem l’alimentació elèctrica.

 

MEMORIA DE DADES (RAM). És una memòria sobre la que el microprocessador pot llegir o escriure a voluntat, les vegades que es vulgui. Aquesta memòria és  utilitzada pel sistema amb l’objecte de desar càlculs i dades durant l’execució del programa. Una característica d’aquest tipus de memòria és que en interrompre el subministre elèctric,  es perden les dades emmagatzemades.

ELS MICROCONTROLADORS

Una de les aplicacions molt habituals dels sistemes amb microprocessador són les d’utilització com a elements de control electrònic.

Per tal de fer aquests sistemes el més senzills possibles, han anat apareguent tota una sèrie de xips que a més del propi microprocessador, porten ja incorporats la majoria d’elements auxiliars necessaris per al seu funcionament com són: la MEMORIA DE DADES, MEMORIA DE PROGRAMA, elements de comunicació, etc.

Els circuits integrats que incorporen aquets components bàsics per al control se’ls anomena MICROCONTROLADORS.


Existeixen diverses famílies de microcontroladors com son els de la família 8051 d’INTEL, els de la família PIC de MICROCHIP, els MOTOROLA, etc.

Una característica comuna a tots ells, és que tenen molt pocs elements auxiliars, permeten llegir senyals externes que provenen de sensors externs i activar directament alguns elements de baix consum: LEDs, relés , altaveus, etc.

Quan és necessita més potència de sortida, com és el cas del control de motors, cal afegir components que amplifiquin el senyal que aquests microcontroladors lliuren a la seva sortida.

Aquests amplificadors poden ser molt simples, com és el cas dels transistors, o més especialitats com son els xips especialitzats en tasques de control de motors.

Una altra característica d’aquests components és el seu baix cost.








Es poden trobar des de microcontroladors molt simples que realitzen les tasques senzilles i d’un cost econòmic molt reduït, com d’altres molt més sofisticats amb capacitat de realitzar gran quantitat de funcions, i evidentment més cars.

Un element bàsic intern dels microcontroladors és el rellotge. Aquest, és el que determina la velocitat de funcionament del xip.

En moltes ocasions és necessari incorporar un component extern per tal de determinar aquesta velocitat anomenat cristall, oscil·lador o ressonador.

Es possible augmentar o disminuir la velocitat del rellotge variant el valor del component instal·lat. Si s’utilitza un PICAXE28X1el rellotge haurà de ser de 4, 8 o 16MHz i si utilitzem un PIC pot ser de fins a 20MHz.

 

Cal dir que el PICAXE-28X1 també porta un ressonador intern que funciona a 4MHz que serveix per a la majoria d’aplicacions i així no cal posar-lo extern.

ELS MICROCONTROLADORS PICAXE

El “PICAXE” és un sistema de microcontroladors fàcils de programar que explota les característiques úniques de la nova generació de microcontroladors de baix cost amb memòria FLASH.



Aquests microcontroladors es poden reprogramar moltes vegades. El poder del sistema PICAXE radica en la seva senzillesa. No necessita de cap programador, esborrador o complex sistema electrònic. El microcontrolador és programa (amb un simple programa en BASIC o un diagrama de flux) mitjançant una connexió de tres fils connectada al port sèrie o USB de l’ordinador.

El circuit  PICAXE utilitza únicament tres components i pot ser ensamblat fàcilment en un tauler experimental per a components electrònics, en una placa pseudoimpresa o en una placa PCB.

La facilitat de programació del sistema picaxe s’aconsegueix gràcies a que el fabricant, subministra els microcontroladors preprogramats amb un petit programa intern ( firmware ), que és capaç d’interpretar el llenguatge BASIC, l’esquema efectuat amb portes lògiques o el diagrama de flux d’un programa.

Existeix tota una gama de xips PICAXE que van des del picaxe-08M ( 8 pins ) fins  al PICAXE 40X ( 40 pins)


EL MICROCONTROLADORS PICAXE-28X1

Es tracta d’un dels models de gama més alta  de la familia. La utilització d’aquest component és extraordinàriament simple.

Amb molt pocs components tenim tot un sistema de microcontrolador amb gran quantitat de possibilitats  preparat per a programar.

Fins i tot, tots els elements del circuit de rellotge estan incorporats dins del propi circuit, per la qual cosa i ha la possibilitat d’ometre el ressonador ceràmic.

Aquest, té 28 pins, dos dels quals corresponen a l’alimentació del xip que cal connectar a una bateria o font d’alimentació contínua d’un valor comprés entre 3 i 5,5 volts. Tot i això, per tal que la programació es pugui realitzar des de qualsevol ordinador, és aconsellable utilitzar com a mínim una pila de 4,5 Volts.

Els pins es poden configurar de forma molt flexible, es poden utilitzar ( en funció del pin ) com a entrada digital, sortida digital, entrada analògica, sortida analógica ( PWM) , control de servo, etc.













L’esquema mostra la configuració mínima del sistema. En aquesta configuració, el serial in ( connectat a 2 resistències ) serveix per a introduir el programa des de el port sèrie de l’ordinador i el pin serial out  per a enviar informació des del xip a l’ordinador.

El sistema més simple de  comunicar el xip amb l’ordinador, és adquirir un fil de comunicacions que el propi distribuïdor ens proporciona i que te un baix cost econòmic.

Aquest fil, incorpora d’una banda un jack stereo de 3,5 mm (dels utilitzats als reproductors de musica) que es connecta a la placa mitjançant una base adequada, i a l’altra banda un connector DB9, dels utilitzats als connectors COM de l’ordinador.

Una altra possibilitat és la de fabricar aquest cable, pel que caldrà tenir una mica més d’habilitat.











Núm.

PIN

NOM PICAXE

ENTRADA

SORTIDA

E.ANALÒGICA

ALTRES

 

1

Reset

 

 

 

Reset

Reset

2

porta pin0

porta input0

 

ADC0

 

 

3

porta pin1

porta input1

 

ADC1

 

 

4

porta pin2

porta input2

 

ADC2

 

 

5

porta pin3

porta input3

 

ADC3

 

0V-

6

Serial In

 

 

 

Serial In

Comunicació

7

Serial Out

 

 

 

Serial Out

Comunicació

8

0V

 

 

 

0V

 

9

Resonator

 

 

 

 

Resonador

10

Resonator

 

 

 

 

Resonador

11

pin0

Input/Out0

portc0

 

infrain

Comand. IR

12

pin1

Input/Out1

portc1

 

 

 

13

pin2

Input/Out2

portc2

 

 

 

14

pin3

Input/Out3

portc3

 

 

 

15

pin4

Input/Out4

portc4

 

 

 

16

pin5

Input/Out5

portc5

 

 

 

17

pin6

Input/Out6

portc6

 

Keyboard clock

 

18

pin7

Input/Out7

portc7

 

Keyboard data

 

19

0V

 

 

 

0V

 

20

Vcc+

 

 

 

V+

Vcc+

21

0

 

Output0

Servo0

 

 

22

1

 

Output1

Servo1

 

 

23

2

 

Output2

Servo2

 

 

24

3

 

Output3

Servo3

 

 

25

4

 

Output4

Servo4

 

 

26

5

 

Output5

Servo5

 

 

27

6

 

Output6

Servo6

 

 

28

7

 

Output7

Servo7

 

 


ANNEX1: CIRCUIT IMPRÈS


Comments