Construcciondeun pl cconpic

14
PROYECTO: AUTMATA PROGRAMABLE CON PIC E n el nmero anterior de Saber Electr- nica comenzamos a publicar un Cur- so de Autmatas Programables, indi- cando que ibamos a dar varios circuitos prcticos con componentes conocidos. Luego de estudiar diferentes opciones, nos comunicamos con el autor de este pro- yecto para solicitarle la posibilidad de compartir con todos los lectores su dise- o. De esta manera comenzamos con la descripcin de un Autmata de 8 entradas y 8 salidas (ampliable) construido a partir de nuestro ya conocido PIC 16F84. En esta primera parte damos una descripcin del proyecto, reproducimos los esquemas cir- cuitales y mostramos algunas fotos del PLC. Pretendemos con esta nota acercarle informacin disponible en la web y difun- dir los excelentes trabajos de profesiona- les, como el autor de esta nota. Autor: Juan Manuel Rodrguez e-mail: [email protected] En la Web: http//inicia.es/de/juanmar od/portada.htm HISTORIA DEL PROYECTO. Después de varios años traba- jando con autómatas comercia- les de diferentes fabricantes co- mo 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: - Debía tener un lenguaje de programación compatible con el estándard y poder soportar todo tipo de instrucciones, contadores y temporizadores. - La memoria del PLC ten- dría que ser no volátil para no perder el programa por un corte de tensión. - Tenía que contemplar la posibilidad del volcado de los programas desde un PC con un entorno windows - Los componentes del hard- ware debían ser baratos y fáciles de localizar. - El número de entradas y salidas, en un principio, debía ser 8 (8 E/S) ampliable en el fu- turo. - Alimentación de 220V ac ó 12V DC de una batería.

Transcript of Construcciondeun pl cconpic

Page 1: Construcciondeun pl cconpic

PROYECTO:

AUTîMATA

PROGRAMABLE

CON PIC

En el n�mero anterior de Saber Electr�-nica comenzamos a publicar un Cur-so de Aut�matas Programables, indi-

cando que ibamos a dar varios circuitospr�cticos con Òcomponentes conocidosÓ.Luego de estudiar diferentes opciones, noscomunicamos con el autor de este pro-yecto para solicitarle la posibilidad decompartir con todos los lectores su dise-�o. De esta manera comenzamos con ladescripci�n de un Aut�mata de 8 entradasy 8 salidas (ampliable) construido a partirde nuestro ya conocido PIC 16F84. En estaprimera parte damos una descripci�n del

proyecto, reproducimos los esquemas cir-cuitales y mostramos algunas fotos delPLC. Pretendemos con esta nota acercarleinformaci�n disponible en la web y difun-dir los excelentes trabajos de profesiona-les, como el autor de esta nota.

Autor: Juan Manuel Rodr�gueze-mail: [email protected]

En la Web:http//inicia.es/de/juanmarod/portada.htm

HISTORIA DEL PROYECTO.

Después de varios años traba-jando con autómatas comercia-les de diferentes fabricantes co-mo OMRON, SIEMENS,EBERLY y BOSCH decidí enmi tiempo libre diseñar un autó-mata hecho a medida.

La idea original tendría quecumplir las siguientes premisas:

- Debía tener un lenguaje deprogramación compatible con elestándard y poder soportar todotipo de instrucciones, contadoresy temporizadores.

- La memoria del PLC ten-dría que ser no volátil para noperder el programa por un cortede tensión.

- Tenía que contemplar laposibilidad del volcado de los

programas desde un PC con unentorno windows

- Los componentes del hard-ware debían ser baratos y fácilesde localizar.

- El número de entradas ysalidas, en un principio, debíaser 8 (8 E/S) ampliable en el fu-turo.

- Alimentación de 220V ac ó12V DC de una batería.

Page 2: Construcciondeun pl cconpic

El primer paso fue diseñar elsistema operativo, el lenguaje deprogramación tenía que ser sen-cillo y programar directamenteen ensamblador no era una solu-ción. Después de algunas prue-bas usando un procesador80C535 y trabajando en ensam-blador, vi la posibilidad de usarlas funciones que ofrecen loscompiladores para incluir etique-tas y macros en el código de má-quina del procesador.

La solución fue usar "MA-CROS" para convertir las ins-trucciones en ensamblador eninstrucciones estándar usadas porlos autómatas comerciales.

De esta manera la lectura porejemplo de una entrada del autó-mata se haría con la instrucciónIN A,B donde "IN" sería elcódigo de la instrucción, elcampo " A " la dirección dela tarjeta de entradas y encampo "B" el número de laentrada física de la tarjeta"A" que deseamos leer.

Activar una salida tendrála siguiente sintaxis: OUTA,B

Un temporizador: TIMA,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., siguenla misma línea.

La ventaja del uso de las ma-cros es que nos permite llamar ala instrucción con el nombre quemás nos guste. El uso deetiquetas nos permite haceraún más claros los progra-mas del autómata al podersustituir las direcciones hexade-cimales de las entradas/salidaspor un texto más descriptivo :

LD Tarjeta_E0,Pulsador_Marcha OUT Tarjeta_S0,Marcha_motor

Una vez depurado el sistemaoperativo, probé diferentes fór-mulas para almacenar los progra-mas en memoria. El uso deEPROM no era viable ya quehabría que borrarla previamentecada vez que se hiciese una mo-dificación.

El uso de RAM estática novolátil no resultó estable ya quecon los cortes de tensión se co-rrompían los datos. La opción fi-nal fue buscar un microprocesa-dor que incluyese memoria EE-PROM para el sistema operativoy programa PLC y RAM paralos datos temporales. Los proce-sadores que mejor se adaptan a

estas exigencias son la familia deATMEL 89C1024 y los PIC16F84 de MICROCHIP.

Las diferencias entre los pro-cesadores son las siguientes:

La familia ATMEL ofreceprocesadores con 4K de memo-ria EEPROM y 128 bits deRAM con dos puertos E/S, loscódigos de máquina son compa-tibles con Intel y muy cómodospara direccionar bits. Sin embar-go requiere un hardware de pro-gramación complicado.

El microprocesadorPIC16F84 sólo ofrece 1K de

EEPROM y 64 bits de RAM, elcódigo

De máquina es un poco me-nos cómodo, pero el hardwarede programación es muy sencilloy existe mucha documentación ymuchos programas gratuitos enInternet.

La opción final fue la eleccióndel PIC ya que permite integrarel programador dentro del autó-mata usando un hardware muysencillo, descargar los programasusando el puerto paralelo de laPC y realizar modificaciones encuestión de segundos, aún a pe-sar de su escasa capacidad dememoria.

Una vez elegido el procesa-dor, sólo quedó buscar el hard-ware más adecuado para el resto

del sistema: Relés de 5V paralas salidas, optoacopladorespara aislar las entradas, lafuente de alimentación y loschips TTL auxiliares. Antes de avanzar en la expli-cación del sistema operativo,vamos a dar en esta entregalos esquemas que constituyennuestro PLC; así en la figura1 tenemos el diagrama de laUnidad de Proceso Central

(CPU) de nuestro autómata, enla figura 2 se da la implementa-ción de las entradas, en la figura3 las salidas y en la figura 4 eldiagramna circuital de la fuentede alimentación.

Todo el autómata se constru-yó en dos placas de circuito im-preso cuyos diagramas puedenverse en las figuras 5, 6 y 7. Enla figura 5 se muestra la disposi-ción de los componenentes, en lafigura 6 el lado del cobre (inver-so a los componentes) y en la fi-gura 7 como se verían ambos la-dos si la placa fuese transparente.

Page 3: Construcciondeun pl cconpic

Figura 1

Figura 2

Page 4: Construcciondeun pl cconpic

Figura 3

Figura 4

Page 5: Construcciondeun pl cconpic

Ambas placas de circuito im-preso son de “doble cara” y dadoque el primer prototipo fue rea-lizado a mano, dibujando las pis-ta una a una, algunas de ellas es-

tán cableadas usando hilo de co-bre.

Como se aprecia en las fotosde la figura 8, las dos placas delautómata son montadas una so-

bre otra usando separadores.Todo el cableado externo se unecon conectores enchufables.

En la tarjeta inferior están in-tegradas la fuente de alimenta-

Fig. 5

Page 6: Construcciondeun pl cconpic

ción, la CPU y el puerto de co-municaciones. La fuente de ali-mentación genera tres tensiones:+5V con una capacidad de co-rriente de 1A para la lógica digi-tal, 14V con una capacidad de100mA para el circuito de pro-

gramación del procesador y+24V con una capacidad de 0,5Apara las entradas optoacopladas.

En la placa superior se en-cuentra el driver que activa losrelés de salida (que precisa 1contacto normalmente abierto y

libre de potencial) y los optoaco-pladores que aíslan eléctricamen-te las entradas analógicas de lacircuiteria digital.

El estado de las entradas sevisualizan con diodos led verdesy las salidas con diodos led rojos.

Figura 6

Page 7: Construcciondeun pl cconpic

Las tarjetas están conectadasa través de un cable plano de 26pines, el puerto de comunicacio-nes es de 9 pines y se han imple-mentado en el panel frontal tres

leds de diagnóstico, un pulsadorde RESET y un interruptor dedos posiciones, con funciones asaber:

• El led verde indica que el

PLC está en modo “RUN” eje-cutando el programa contenidoen memoria y parpadea con unasecuencia de 0,5 segundos, es-tando bajo el control del sistema

Figura 7

Page 8: Construcciondeun pl cconpic

operativo. Si el PLC se cuelga ola memoria EEPROM está bo-rrada, este led deja de parpadearasí como cuando el interruptorestá en modo STOP/PRO-GRAM.

• El led rojo nos informa queel procesador está en estado deRESET, se activa unos segundosal aplicar tensión al autómata,cuando presionamos el pulsadorde RESET que se encuentrajunto al led verde y cuando pasa-mos el interruptor de dos posi-ciones del modo RUN al modode programación STOP/PRO-GRAM para volcar programas ala memoria del PIC.

• El led amarillo sirve dediagnóstico en los procesos decomunicación con la PC; se acti-va al leer, borrar, verificar y gra-bar la memoria EEPROM delprocesador PIC16F84.

PROGRAMAS CON

AMBIENTE WINDOWS

El software elegido para laprogramación del autómata seejecuta bajo windows 95/98, esde libre distribución para uso nocomercial y está disponible en lared. Se utilizó un “viejo conoci-do de los lectores de Saber Elec-trónica”; el potente entorno deprogramación MPLAB de MI-CROCHIP, fabricante del mi-croprocesador PIC, usado paraeditar y compilar los programasPLC y generar el fichero.hexque volcaremos en el PIC.

A parte de editar y compilareste software (programa), elMPLAB incluye muchas otrasopciones como la simulación pa-so a paso de programas en en-samblador con la que depure en

su momento el sistema operativodel autómata. Este programa sepuede descargar desde:

http://www.microchip.com/

Su tamaño es de unos 9MB. Para la grabación de la me-

moria EEPROM del PIC y des-pués de mucho buscar por la redelegí el programa WPicProg16diseñado por Nigel Goodwin alque debemos agradecer su aporteasí como a Don Mckenzie queofrece mucha información sobreprogramadores PIC en su páginaaustraliana y a través de la cuallocalice el programa. El softwarede programación del procesadorPIC16F84 se puede descargar de

la página personal de NigelGoodwin. El hardware del PLCestá optimizado para la versión1.21 de 16 bits ejecutable bajoWindows 95/98 y se puede bajarde:

http://www.lpilsley.freeserve.co.uk/software.htm

En la próxima edición habla-remos del Sistema Operativo deeste PLC y qué funciones puederealizar. Si Ud. no desea esperarhasta el mes próximo, puedeconsultar la página personal delautor en:

http//inicia.es/de/juanmarod/portada.htm

Figura 8

Page 9: Construcciondeun pl cconpic

SISTEMA OPERATIVO OS

El sistema operativo del autó-mata que he proyectado y cuyoslineamientos expusimos en la edi-ción anterior en realidad es muysencillo, tan sólo incluye las ins-trucciones que inicializan los re-gistros del procesador, el puertoA, el puerto B, el temporizadorTMR0, los vectores de interrup-ción, la rutina que gestiona las en-tradas/salidas y la rutina de ges-tión de pilas; el resto son macrosque se utilizan como instruccionesdel PLC.

Una de las muchas ventajas delas MACROS del ensamblador, es

que sólo se compilan e incluyendentro del código del programa sison usadas en el programa PLC, sino usamos los contadores, porejemplo, éstos aunque formen par-te del sistema operativo no seránincluidos en la compilación delprograma del autómata, reducien-do así, el uso de la memoria.

Esto posibilita el diseño de unsistema operativo muy compacto,dado que la capacidad de memoriaEEPROM del procesadorPIC16F84 está limitada a 1024bytes. El sistema operativo debeocupar el menor espacio posible.El sistema operativo utiliza un15% de la memoria del procesa-

dor, concretamente 155 bytes que-dando disponible el resto para lasinstrucciones del programa PLC(un total de 869 bytes libres). Paracomprender el principio de opera-ción del sistema operativo, vea losdiagramas de flujo de la figura 1.

El sistema operativo está dis-ponible en la web en formato tex-to con la extensión “.asm” para sereditado con el programa MPLABde Microchip, sin embargo, en lapróxima edición comenzaremos apublicar el listado del programaen estas páginas. He procurado in-cluir todos los comentarios posi-bles para facilitar su comprensión,de todas formas es imprescindible

Arme un PLC y cárguele el sistema operativo con éxito

Sistema Operativo de un PLC de 8 entradas y 8 salidas

Con PIC 16F84En la edición anterior comenzamos a explicar el proyecto de unAutómata Programable de 8 entradas y 8 salidas, cuyo funcio-namiento está basado en la inclusión de un microcontrolador16F84. Este proyecto, publicado en Internet, es un excelenteejemplo de aplicación de los PICs de Microchip y posee un sis-tema operativo fácil de comprender. En la edición anterior brin-damos los circuitos eléctricos y los diagramas de circuito impre-so. En esta edición hablaremos del sistema operativo. Tenga encuenta que si Ud. desea toda la información de este proyecto,puede dirigirse a la página que el autor tiene en Internet, a lacual puede acceder desde un link que tenemos en la web: w w w-.webelectronica.com.ar

Autor: Juan Manuel Rodr�guez - e-mail: [email protected] la Web: http//inicia.es/de/juanmarod/portada.htm

Page 10: Construcciondeun pl cconpic

conocer los códigosensambladores delmicrocontroladorPIC16F84. A la hora de realizarun programa PLCcon el softwareMPLAB se utilizandos ficheros, unocon el S.O. (sistemaoperativo) y otrocon las instruccionesPLC. En este últimose debe realizar unallamada al ficheroque contiene el S.O.de forma que secompilen juntos.Si Ud. desea experi-mentar con este au-tómata, debe bajarde la web los archi-vos mostrados en latabla 1, ya que en lapróxima edición tra-bajaremos con ellos.El programaMPLAB de Micro-chip es un software

muy completo y fácil de usar cuyaexplicación fue dada en SaberElectrónica Nº 139. La forma máscómoda de trabajar consiste encrear un PROYECTO para cadaprograma PLC que creemos.

Es útil usar una plantilla dondetengamos ya creadas las variablesiniciales del programa PLC.

Ejecutamos el programaMPLAB y desde el menú FILEabrimos el fichero plantilla "ba-se.asm", desde el mismo menú loguardamos "Save as.." con elnombre que más describa las fun-ciones del programa (PLC porejemplo). Picamos (hacemos unclick) en el menú "Proyect" ycreamos un nuevo proyecto "Newproyect" (figura 2), tecleamos elmismo nombre con el que llama-mos al fichero del programa PLCanterior y nos aparece una ventanacon el nombre del “fichero.hex”que será el que posteriormentegrabaremos en el PIC (en nuestrocaso es: plc.hex, figura 3).

En la misma ventana "ProjectFiles" picamos sobre el ficheroque aparece y a continuación so-bre el icono "Node propierties".Se despliega otra ventana con di-ferentes parámetros (figura 4),pulsamos OK y volvemos al menú

Figura 1

Tabla 1Descargar el sistema operativo OS_PLC8.asm Descargar plantilla de programa PLC PLANTILLA.asm Descargar ejemplo de programa PLC EJEMPLO.asm

Figura 2

Figura 3

Figura 4

Page 11: Construcciondeun pl cconpic

anterior. En este punto se activa elicono "Add node" (figura 5), lo pi-camos y añadimos al proyecto el“fichero.asm” del programa PLC.

De esta manera yatenemos creado elproyecto con los dosficheros necesarios,picamos OK y secierran todas las ven-tanas. Podemos a continua-ción escribir el pro-grama PLC y com-pilarlo junto con elS.O. con los íconosmostrados en la figu-ra 6.Tenga en cuenta queUd. puede “bajar” el

programa ya escrito (que denomi-namos plc1.asm) de la web, no ha-ce falta que lo escribamos paraluego compilarlo.

Para compilar el programa yasí tener el archivo plc1.hex, pica-mos en FILE, luego OPEN (figu-ra 7) y buscamos el archivo pl-c1.asm (no-sotros lobajamos dela web y sa-bemosdónde lohemos alo-jado) talcomo su-giere la fi-gura 8.Apareceráel listadodel progra-ma (figura

9) y lo ensamblamos picando enPROYECT y luego BUILD ALL(figura 10).

Para ver el número de bytes dememoria EEPROM que ocupa elprograma compilado, desde elmenú "Window" opción "Pro-gram Memory" abrimos una ven-tana donde veremos las direccio-nes EEPRON usadas y así podercalcular el espacio que aún nosqueda libre.

Una vez compilado el progra-ma y libre de errores podemos pa-sar a grabarlo en el PLC, para elloconectamos el cable de comunica-ciones entre el puerto paralelo denuestro P.C. y el autómata, ejecu-tamos el programa WPicProg16 ypasamos el interruptor del PLCde la posición RUN a STOP-/PROGRAM, se apaga el led ver-de intermitente y se activa el ledrojo. La primera vez que ejecute-

Figura 6

Fig. 5

Figura 7

Figura 8 Figura 10

Fig. 9

Page 12: Construcciondeun pl cconpic

mos este programa, comprobare-mos los ajustes del puerto parale-lo, (figura 11) picamos en el icono"Options >>> Hardware" dondeveremos los bits del puerto usadospara cada señal de programación.

Desde el menú "Options" ele-gimos "Find Port", con esto elprograma entra en comunicacióncon el autómata y detecta la direc-ción Hexa del puerto al que estáconectado (esquina inferior iz-quierda). Desde el menú "File"abrimos el fichero.hex (en nuestrocaso: plc1.hex, figura 12) que que-dará visualizado en la ventana Buf-fer, seleccionamos el tipo de pro-cesador en nuestro caso elPIC16F84 (figura 13) y borramosel contenido de la memoria del

PIC con el icono"Erase". Ajustamoslas casillas "Fuses" y"Oscillator" activan-do WDT (wathdog), PUT y HS.Picando sobre elicono Write PICvolcamos el “fiche-ro.hex” a la memoriaEEPROM del PIC,activándose en elproceso el led amari-llo del frontal del

autómata. Si no ocurre ningúnerror, en el recuadro inferior dere-cho aparece el tiempo total de vol-cado (unos 4 segundos).

En cualquier momento pode-mos comparar el contenido de lamemoria del PIC con el “fichero-.hex” picando sobre el icono Ve-rify.

Sólo resta pasar el interruptorde STOP/PROGRAM a RUN (seapaga el led rojo y se activa el ver-de en forma intermitente) y com-probamos que el programa cum-ple las especificaciones activandolas entradas en la secuencia co-rrecta.

Cuando creamos un programaPLC, es posible que cometamosalgún error de sintaxis. Estos erro-res aparecerán reflejados al compi-lar el programa en una ventana

Figura 11Fig. 12

Fig. 13

Fig. 14

Page 13: Construcciondeun pl cconpic

que mostrara las líneas indicadasen la figura 14.

En primer lugar nos informa sies un error grave o un aviso (War-ning) seguido de un código que sepuede consultar desde la ayuda delMPLAB.

En segundo lugar nos dice enqué fichero se ha encontrado elerror, la línea de programa en quese encuentra y la información delo que el compilador no reconoceo no encuentra.

Haciendo doble clik con elmouse sobre el texto de error nosdirigimos directamente a la líneadel programa que contiene dichoerror.

Como vemos en el ejemplo su-perior, se nos informa que contie-nen errores tanto el fichero delsistema operativo (OS_PLC:ASM)como el fichero del programa plc(PLC1.ASM). Esto no es del todoreal y puede crear al principio bas-tante confusión.

Como ya hemos visto, el siste-ma operativo está compuesto de"MACROS" y el programa PLCse compone de llamadas a estasmacros, por lo tanto, si comete-mos un error de sintaxis en unallamada a una macro del S.O. des-de el programa PLC al enlazar ycompilar juntos los dos ficheros, elcompilador intentará pasar los pa-rámetros de la llamada a la macro(instrucción PLC) usada en el fi-chero PLC a la macro que en rea-lidad se encuentra en el ficherodel S.O. produciéndose el error enla MACRO del fichero del S.O.cuando en realidad el error se en-cuentra en los parámetros del fi-chero del programa PLC.

Veamos en realidad donde sehan cometido los errores de sinta-xis, para lo cual debemos dirigir-nos a la figura 14.

Warning[202] D:\MPLAB\PI-C\EJEMPLOS\OS_PLC8.ASM435 : Argument out of range.Least significant bits used.

Warning[202] D:\MPLAB\PI-C\EJEMPLOS\OS_PLC8.ASM437 : Argument out of range.Least significant bits used.

El mensaje es que tenemos ar-gumentos fuera de rango en las lí-neas 435 y 437. Haciendo dobleclic en cualquiera de estas líneassaltamos a la macro del S.O dondese producen.

432 OUT MACRO DATA1,DATA2 433 MOVWF S 434 BTFSS S,0 435 BCF DATA1,DATA2 436 BTFSC S,0 437 BSF DATA1,DATA2 438 ENDM

Lo que podemos deducir esque el error se encuentra en algu-na línea del fichero PLC dondeaparezca la instrucción OUT. Re-visando este fichero encontramosla línea 93 donde se intenta direc-cionar el bit Nº 8 del registro desalidas S0. Dado que los registrosdel plc son de 8 bits el rango dedireccionamiento sólo puede en-contrarse ente cero y siete.

93 OUT S0,8

Corregimos este inconvenienteseleccionando el bit adecuado, conlo cual el error desaparecerá alvolver a compilar el programa.Como vemos los errores se encon-traban en realidad en el ficheroPLC.

Los mensajes de error marca-dos como “Error[113]” en el men-saje de la figura 14 nos mandan ala línea 427 del fichero OS_PL-

C:ASM

424 RESET MACRO DATA1,DATA2 425 MOVWF S 426 BTFSC S,0 427 BCF DATA1,DATA2 428 ENDM

El error se encuentra dentrodel la macro RESET del sistemaoperativo, pero no informa en quelínea del fichero PLC se encuen-tra este error por lo que tendre-mos que revisar el fichero y com-probar la sintaxis de todas las lla-madas a la instrucción RESET.

Es muy útil en estos casos usarlas funciones de búsqueda queofrece MPLAB, activando la ven-tana que contenga el fichero delprograma PLC y pulsando F3 seabre la ventana de búsqueda don-de escribiremos la palabra a buscary así revisar todas las concurren-cias que aparezcan.

104 RESET S0.4

En la línea 104 del ficheroPLC tenemos una llamada a lainstrucción RESET con un errorde sintaxis en los parámetros, enesta línea realizamos un reset de lasalida Nº4 de la tarjeta de salidasS0 pero en lugar de una coma ","hemos tecleado un punto "." paraseparar los parámetros, este pro-blema ha generado dos errores enla línea 427 del S.O que desapare-cerán al sustituir el punto por lacoma y compilar de nuevo el pro-yecto.

Error[128] D:\MPLAB\PI-C\EJEMPLOS\PLC1.ASM 104 :Missing argument(s)

Este error sí nos dice en qué lí-nea del fichero PLC se encuentra,concretamente en la 104 y al hacer

Page 14: Construcciondeun pl cconpic

doble clic en él nos manda al fi-chero PC donde confirmamos elerror de sintaxis del punto y la co-ma explicado anteriormente. Elerror se produce al faltarle un ar-gumento a la instrucción RESETya que S0.4 es considerado un sóloargumento.

Warning[207] D:\MPLAB\PI-C\EJEMPLOS\PLC1.ASM 79 :Found label after column 1.(AMD)

Error[122] D:\MPLAB\PI-C\EJEMPLOS\PLC1.ASM 79 :

Illegal opcode (E0) Estos errores sí nos mandan di-

rectamente al fichero de programaPLC.

Picando sobre cualquiera deellos saltamos a la línea 79 del fi-chero PLC donde vemos rápida-mente que nos hemos confundidoal escribir la instrucción AND co-mo AMD:

79 AMD E0,0

Lo dado hasta aquí pretendeser una guía para la comprensión

del sistema operativo del autómataque estamos describiendo, si-guiendo paso a paso las instruccio-nes, no tendrá iconvenientes parahacer funcionar el autómata.

En la próxima edición veremoscuáles son las instrucciones del PLCy daremos algunos ejemplos de pro-gramación. Tenga en cuenta que elpresente proyecto es tomado de lapágina del autor desde Internet yque para obtener la versión comple-ta debe dirigirse a la dirección dadaal comienzo de la nota. J