domingo, 29 de enero de 2017

Autómata sigue lineas (Parte 1)





En este proyecto vamos ha construir un interesante robot sigue lineas. Muchos de vosotros pensareis que existen una gran variedad de robots de este tipo por la red, verdad, pero este es diferente, me refiero ha que no utiliza ningún tipo de microcontrolador  y por supuesto no es programable. Esta pensado para el aprendizaje de la electrónica digital, ideal para los curiosos y autodidáctas,  Explicaré en todo detalle los pasos para el diseño del circuito, componentes y esquemas. No es un curso de electrónica digital, solo mostrare los pasos que he seguido para su construcción, espero que disfrutéis como yo he disfrutado haciéndolo.

La electrónica la he dividido en dos partes bien diferenciadas:

1 Lógica del autómata

Aquí diseñaremos el cerebro del autómata, la dividiremos en tres módulos, funciones de estado(módulo1), flip-flops, reloj(módulo 2) y funciones de salida(módulo3). Para la implementación de la lógica he utilizado las familias lógicas de la serie TTL 74LS. Construiremos tres PCB independientes y luego los conectaremos entre si para una mayor claridad.

2 Electrónica de potencia

Este es el circuito encargado de la interfaz entre la lógica y los motores. Veremos su diseño y su implementación.

La estructura del robot la dejo para vuestra imaginación, yo he utilizado aluminio.


Lógica del autómata (Diseño)

Partiremos de un par de sensores CNY70, estos nos sirviran para detectar la linea negra sobre fondo blanco, en este proyecto utilizaremos uno comercial, el MSE-S110.

En la imagen podemos observar el patillaje y función de cada terminal.




Incorpora dos sensores CNY70 montados sobre una PCB con sus componentes asociados para acondicionar la señal o señales de salida. Los terminales 1 y 2 són la alimentación, en este caso la tensión es de 5v. Entre los terminales 3 y 4 tenemos las señales discretas de los sensores. El funcionamiento es como sigue: cuando uno de los sensores se encuentra sobre una linea negra, la salida asociada al sensor se activa a nivel 1(lógico) y cuando esta esta sobre una linea blanca se activa a nivel 0(lógico), esta señal binaria se aplica a la lógica del autómata.


Vista interior del CNY70.




Esta formado por un LED infrarrojo y un fototransistor. La luz infrarroja del led cuando incide sobre una superficie blanca es reflejada y recogida por la base del fototransistor, esto hace que el transistor se sature y conduzca, al contrario, cuando es una superficie negra, la luz se dispersa y no es captada por la base del fototransistor y en consecuencia el transistor se encuentra en corte.




Diseño de la lógica del autómata

Aqui tenemos el diagrama a nivel de compuertas lógicas. En electrónica digital hay dos grandes grupos de circuitos, los combinacionales y los secuenciales, este es una combinación de ambos. Se trata de un autómata tipo Mealy. Dividiremos el circuito en tres módulos, las funciones de estado, estados, formado por los dos biestables del tipo D y funciones de salida. Las funciones de estado y de salida són del tipo combinacional, estos se tendrán que diseñar, en cambio los flip-flops no.













En el diagrama podemos observar las entradas Si (Sensor izquierdo) y Sd(Sensor derecho), estas señales de entrada provienen del sensor MSE-S110. El primer arreglo de compuertas generan las funciones de estado (Módulo 1), los dos cuadrados son los estados, formados por dos flip-flop del tipo D junto con la señal de reloj (Módulo 2) y por último las funciones de salida Módulo 3.

Vamos!!! al grano


Si,Sd -->variables de entrada
q1,q0 -->variables de estado
Mi,Md-->variables de salida

Codificación de estados (comportamiento del autómata)

      q1  q0

e0    0   0  --> este estado nos dice que sale por la derecha 
e1    0   1  --> este estado nos dice que sale por la izquierda
e2    1   0 --->este nos dice que los sensores están encima de la linea negra.
e3    1   1 --> no utilizado



Pinchar para ampliar

Para entender el comportamiento del autómata, nos vamos ayudar del diagrama de estados. Los círculos representan los estado, tenemos los estados E0,E1,E2, necesitamos dos flip flip del tipo D para representar los estados (q1,q0).  Las lineas que salen de los círculos son las transiciones de los estados, junto a cada linea señalamos las entradas(Si,Sd)/salidas (Mi, Md). Imaginemos que estamos en el estado E2-->(q1=1,q0=0), este estado nos dice que el robot va por buen camino y se mantendrá en este estado mientras las entradas Si=Sd=1 y las salidas Mi=Md=1 (motores activados). 

Si el bichito sale por la derecha, pasara del estado E2-->E0 cuando las entradas (Si=1 y Sd=0) y las salidas Mi=0 y Md=1 (motor Mi parado y Md funcionado para corregir), ahora bien, se mantendrá en el estado E0 si las entradas se encuentran igual que antes o si Si=Sd=0 fijaros en el diagrama. Solo pasara de nuevo al estado E2 cuando las entradas Si=Sd=1 y las salidas Mi=Md=1, el bichito sigue la linea. 

Volvemos al estado E2, si ahora sale por la izquierda pasara del estado E2-->E1 cuando las entradas Si=0 y Sd=1 y las salidas Mi=1 y Md=0 (motor izquierdo activado y derecho parado para corregir), en este momento estamos en el estado E1 y se mantendrá en este estado si las entradas se encuentran igual que antes o si Si=Sd=0. Y por último pasara del E1-->E2 cuando las entradas Si=Sd=1 y las salidas Mi=Md=1 (motores activados). Todo esto esta reflejado de forma gráfica en el diagrama de estados.

Montaje del módulo 1


El primer paso es montar el módulo 1, que consta de las funciones de estado. En el diagrama lógico podemos ver como se conectaran las compuertas del módulo 1. Tendréis que hacer la PCB vosotros mismos, hay multitud de programas por la red para la creación de placas, jo he utilizado el pcbwizard. Ojo muy importante, en el diseño del circuito necesitamos las entradas Si,Sd para los sensores cny70 más dos salidas Si,Sd que las necesitaremos para el módulo 3. También necesitaremos dos entradas q1,q0 que vendran del módulo 2, són las salidas de los flip flop tipo D y dos salidas más que excitaran las entradas del los flip flop. El módulo se alimenta a 6v, cuatro pilas AA.

Lista de componentes

1 Placa virgen PCB
1 74LS14 NOT
1 74LS11  AND 3input
1 74 LS08 AND 2 input
1 74LS32 OR 2 input
conectores y cables varios

En la próxima entrega armaremos el módulo 2. Para cualquier duda, que las habrá, no dudéis en comentarlas.



No hay comentarios: