PROYECTO DE AUTOMATA PROGRAMABLE
DE 8 E/S
BASADO EN EL PROCESADOR PIC 16F84
Autor: Juan Manuel Rodríguez
|
|
Circuitos impresos | Fotos del PLC montado | Software |
| Sistema Operativo | Instrucciones PLC | Ejemplos | Links |
Después de varios años trabajando con autómatas
comerciales de diferentes fabricantes
como OMRON, SIEMENS, EBERLY y BOSCH. Decidí en mi tiempo libre
diseñar un
autómata hecho a medida. La idea original tendría que
cumplir las siguientes premisas:
La solución fue usar "MACROS" para convertir las instrucciones
en ensamblador en
instrucciones estándar usadas por los autómatas comerciales.
De esta manera la lectura por ejemplo de una entrada del autómata
se haría con la
instrucción IN A,B donde " IN " seria el código de la
instrucción, el campo " A "
la dirección de la tarjeta de entradas y en campo " B " el numero
de la entrada física
de la tarjeta " A " que deseamos leer. Activar una salida tendrá
la siguiente sintaxis: OUT A,B
Un temporizador : TIM A,B
Un contador : CNT A,B
Y el resto de las instrucciones como: AND , AND_NOT, OR, OR_NOT, LD,
LD_NOT,
MOV, SET, RESET etc., siguen la misma línea.
La ventaja del uso de las macros es que nos permite llamar a la instrucción
con el nombre
que mas nos guste. El uso de etiquetas nos permite hacer aun mas claros
los programas del
autómata al poder sustituir las direcciones hexadecimales de
las entradas/salidas por un texto
mas descriptivo :
LD Tarjeta_E0,Pulsador_Marcha
OUT Tarjeta_S0,Marcha_motor
Una vez depurado el sistema operativo, probé diferentes formulas
para almacenar
los programas en memoria. El uso de EPROM no era viable ya que habría
que borrarla
previamente cada vez que se hiciese una modificación.
El uso de RAM estática no volátil no resulto estable ya
que con los cortes de tensión se
corrompían los datos. La opción final fue buscar un microprocesador
que incluyese
memoria EEPROM para el sistema operativo y programa PLC y RAM para
los datos
temporales. Los procesadore que mejor se ajustan a etos requerimientos son:
ATMEL 89C4024 y los PIC 16F84 de MICROCHIP .
Las diferencias entre los procesadores son las siguientes:
La familia ATMEL ofrece procesadores con 4K de memoria EEPROM y 128
bits de RAM
con dos puertos E/S, los códigos maquina son compatibles con
intel y muy cómodos para
direccionar bits. Sin embargo requiere un hardware de programación
complicado.
El microprocesador PIC16F84 solo ofrece 1K de EEPROM y 64 bits de RAM,
el código
maquina es un poco menos cómodo, pero el hardware de programación
es muy sencillo y
existe mucha documentación y muchos programas gratuitos en Internet.
La opción final fue el PIC ya que permite integrar el programador
dentro del autómata
usando un hardware muy sencillo, descargar los programas usando el
puerto paralelo
del PC y realizar modificaciones en cuestión de segundos, aun
a pesar de su escasa
capacidad de memoria.
Una vez elegido el procesador, solo quedo buscar el hardware mas adecuados
para el resto
del sistema: Relés de 5V para las salidas, optoacopladores para
aislar las entradas, la fuente
de alimentación y los chips TTL auxiliares.
Los esquemas están realizados con el programa EDWinNC de Visionics
CPU.jpg |
ENTRADAS.jpg 74.88 Kb |
FUENTE.jpg 48.64 Kb |
SALIDAS.jpg 64.71 Kb |
layer1.jpg 107.82 Kb |
layer2.jpg 108.63 Kb |
layer3.jpg 82.68 Kb |
layer4.jpg 83.43 Kb |
layer5.jpg 52.58 Kb |
Ambas placas de circuito impreso son de doble cara y dado que el primer
prototipo fue
realizado mano dibujando las pistas una a una, algunas de ellas están
cableadas usando
hilo de cobre.
MVC013F.JPG 48.40 Kb |
MVC014F.JPG 53.81 Kb |
MVC015F.JPG 54.68 Kb |
MVC016F.JPG 71.45 Kb |
MVC017F.JPG 61.33 Kb |
MVC018F.JPG 64.84 Kb |
MVC019F.JPG 58.70 Kb |
MVC020F.JPG 58.23 Kb |
MVC021F.JPG 64.91 Kb |
MVC022F.JPG 59.83 Kb |
MVC023F.JPG 68.00 Kb |
MVC025F.JPG 50.79 Kb |
Ir al principioComo se aprecia en las fotos, el autómata consta de dos placas de circuito impreso
Ir al principioEl software elegido para la programación del autómata se ejecuta bajo Windows 95/98
Para la grabación
de la memoria EEPROM del PIC y después de mucho buscar
por la red elegí
el programa WPicProg16 diseñado por Nigel Goodwin al que debemos
agradecer su aportación
así como a Don Mckenzie que ofrece mucha información sobre
programadores PIC
en su pagina web Australiana y a través de la cual localice el programa.
MPLAB.jpg 99.51 Kb |
WPic16.jpg 76.13 Kb |
Ir al principio
El software de programación del procesador PIC16F84 se puede descargar
de la pagina personal de Nigel Goodwin. El hardware del PLC esta optimizado
para la versión 1.21 de 16 bits ejecutable bajo Windows 95/98
Información bibliográfica.
Microcontroladores PIC La solución en un CHIP. Editorial PARANINFO.
Links de PLC´S y Procesadores PIC.
.http://www.microchip.com/ Pagina del fabricante de los procesadores PIC
http://www.dontronics.com/ Pagina Australiana sobre programadores PIC y ATMEL
http://www.bahnhof.se/~visionic/body.htm Pagina de Visionic, EDWinNC software de diseño de circuitos impresos
http://www.lpilsley.freeserve.co.uk/ Nigel Goodwin home page
http://eya.swin.net/micros/pic16f8x/pic16f8x.htm Arquitectura del PIC 16F84
http://www.lokekieras.es/personales/mgsanz/programa.htm Programador PIC´s gratis
http://www.electronicas.com/tools.html Kits de programadores PIC y ATMEL
http://www.ordenatas.es/automata/ Kit de automata PLC
Si
tiene problemas o preguntas relacionadas con este Web,
póngase
en contacto con [Correo Electrónico Proyecto PLC].
Copyright © 1999. Reservados todos
los derechos.
La información contenida en
este documento está sujeta a modificaciones sin previo aviso.
El
proyecto no esta diseñado para usar en maquinas donde pueda correr
peligro
la
integridad física de personas. Se declina cualquier responsabilidad
sobre
el
uso incorrecto de este sistema
Este documento solo pretende aportar
información sobre microprocesadores,
no estando autorizado su uso para
aplicaciones comerciales sin la autorización
expresa del autor.
Otros productos u organizaciones mencionadas
aquí son marcas comerciales o marcas
registradas propiedad de sus respectivas
organizaciones o propietarios.