domingo, 12 de enero de 2014
Esta placa la diseñe con el fin de facilitar mi trabajo diseñando circuitos de control Industrial, Seguridad Electrónica y Automatización.

El sistema de desarrollo PLCPIC16F877A proporciona un ambiente de desarrollo para experimentar con los dispositivos industriales. La conexión entre el sistema de desarrollo y estos dispositivos se establece por medio de los relés. Además, el PLCPIC16F877A dispone de los módulos adicionales que habilitan la conexión entre el microcontrolador y un dispositivo externo. El PLCPIC16F877A se puede utilizar como un controlador autónomo que se comunica con los dispositivos remotos por los módulos de comunicación. Los numerosos módulos proporcionados en la placa, tales como módulo de comunicación RS-232, reloj de tiempo real, Decodificador DTMF, Reseptor IR, etc. le permiten experimentar con facilidad con el microcontrolador incorporado.

PLCPIC16F877A

1. Fuente de Alimentación

La fuente de alimentación  produce +5 V mediante el regulador de voltaje LM7805 que nos sirve para alimentar la mayoría de circuitos integrados incluyendo el microcontrolador y módulos conectados externamente a la placa. La fuente externa de alimentación puede ser AC o DC. Mientras que la tensión de alimentación respete el rango de 8 - 16V. 
La placa cuenta con otro conector de voltaje que es exclusivamente para alimentar a los relés, ya que los mismos estan separados de la placa principal con optoacopladores para evitar corrientes parasitas (armonicos) y que provoquen un mal funcionamiento, el voltaje de alimentación no debe superar los 13V DC. 

2. Módulo de Comunicación RS-232

USART (Universal Synchronous/Asynchronous Receiver/Transmitter) transmisor/receptor síncrono/asíncrono universal es una de las formas más frecuentes de intercambiar los datos entre la PC y los periféricos. La comunicación serial RS-232 se realiza por medio del conector DB9F y el módulo USART del microcontrolador. El PLCPIC16F877A proporciona un puerto RS-232. Los pines del microcontrolador utilizados en esta comunicación están marcados de la siguiente manera: RX (receive data) - línea para recibir datos y TX (transmit data) - línea para transmitir datos. La velocidad de transmisión de datos es hasta 115 kbps. Para habilitar que el módulo USART del microcontrolador reciba las señales de entrada de acuerdo con el estándar RS-232 es necesario ajustar los niveles de voltaje por medio de un circuito IC tal como MAX202 (MAX232).

Los pines usados para este tipo de comunicación es RC6/RX,  RC7/TX este en combinación con la comunicación RS-485, se selecciona una de otra con la ayuda de los jumper J2 y J4 para seleccionar.


3. Módulo de Comunicación RS-485

La comunicación RS485 es un estándar de comunicación principalmente destinado a ser utilizado en aplicaciones de industria y automatización del hogar (Dómotica). Las características principales de este estándar de comunicación es la habilidad de intercambiar los datos entre los puntos remotos (a distancia hasta 1200m) y alta tolerancia a ruido acompañante. El sistema de desarrollo PLCPIC16F877A proporciona un conector utilizado para conectar dispositivos que utilizan la comunicación RS-485. El circuito 485 actúa como transmisor-receptor entre un dispositivo externo y el microcontrolador.
Los pines usados para este tipo de comunicación es RC6/RX,  RC7/TX  y  RC5 para control master/slave.

4. Reloj en tiempo real (RTC)

Gracias al circuito DS1307 incorporado el sistema de desarrollo PLCPIC16F877A es capaz de proporcionar informaciones acerca de tiempo real. Las prestaciones principales del reloj de tiempo real son:
  • proporciona información acerca de segundos, minutos, horas, días de la semana y fechas teniendo en cuenta las correcciones para los años bisiestos.
  • interfaz serial I2C.
  • detector automático del corte de suministro eléctrico.
  • consumo de electricidad menor de 500nA.

El reloj de tiempo real se utiliza ampliamente en los dispositivos de alarma, controladores industriales, productos de consumo etc. El reloj de tiempo real proporcionado en el sistema de desarrollo PLCPIC16F877A se utiliza para generar una interrupción en tiempo programado. 

Los pines usados para la comunicación con el reloj (RTC) son RC3/clock y RC4/data, el pin de señal que tiene el reloj digital esta con un conector J6 para el uso cuando se lo necesitara.


5. Decodificador DTMF
En telefonía, el sistema de marcación por tonos, también llamado sistema multifrecuencia o DTMF (Dual-Tone Multi-Frequency), consiste en lo siguiente:
Cuando el usuario pulsa en el teclado de su teléfono sea este convencional o celular la tecla correspondiente al dígito que quiere marcar, se envían dos tonos, de distinta frecuencia: una por columna y otra por fila, y el circuito integrado MT8870 decodifica esta señal y la pasa a una señal de 5 bits con esto el circuito decodificador se comunica con el PLCPIC16F877A.

En la siguiente tabla se puede observar el valor de la tecla y su respectivo valor decimal.


Donde Digit es la tecla presionada en teléfono convencional o celular.
Y ESt, Q1, Q2, Q3, Q4 es la transformación a 5 bits con la que se comunica digitalmente con el microcontrolador que posee el PLCPIC16F877A.

Los pines seleccionados para la comunicación con el decodificador son los siguientes:

Decodificador            Pin Microcontrolador
ESt                      =                 E0
Q4                      =                  E1
Q3                      =                  E2
Q2                      =                 C0
Q1                      =                 C1


6. Receptor IR 38.5Khz

El receptor infrarojo se encarga de captar la señal emitida por un control remoto (SONY), y enviarla hacia el microcontrolador para que este interprete el codigo SIRC y poder realizar tareas en función al a tecla presionada en el control remoto SONY.
El protocolo de comunicación que tienen los controles IR SONY es el SIRC y este trabaja a una frecuencia de 38.5 Khz.
En la siguiente tabla se puede ver los valores por cada tecla en el control del bit menos significativo al bit mas significativo y con esto crear el firmware para el microcontrolador.


El pin usado para la comunicación con el receptor IR es el RC2.

7. Reles

Los dispositivos industriales normalmente necesitan más corriente de lo que un microcontrolador puede proporcionar por sus pines de E/S. Para habilitar una conexión entre el microcontrolador y tales dispositivos, el sistema de desarrollo dispone de 6 relés por medio de los que es posible proporcionar un voltaje de alimentación de hasta 250V. Cada relé dispone de un contacto normalmente abierto (NO) y otro normalmente cerrado (NC). Los 6 relés son totalmente independientes osea cada relé tiene libre sus pines NO NC con lo cual se puede controlar: 
  • Focos.
  • Luminarias.
  • Ventiladores.
  • Contactores.
  • Equipos de Audio.
  • Alarmas, etc.
Los pines destinados al manejo de los relés son los siguientes:

RD2 = Salida a Relé RD2 / Salida Buzzer RD2 seleccionable entre relé y buzzer J23
RD3 = Salida a Relé RD3 
RD4 = Salida a Relé RD4
RD5 = Salida a Relé RD5
RD6 = Salida a Relé RD6
RD7 = Salida a Relé RD7


8. Buzzer (Audio)

El buzzer es un dispositivo que transforma una forma de energía a otro tipo de energía (transducción). Al aplicar voltaje entre sus terminales este emite un sonido con una frecuencia constante audible al oído humano. Este elemento se lo usa para emitir mensajes sonoros ya sea para alarmas, inicio o finalización de procesos, etc. 
 El pin del buzzer esta combinado con el relé 2, el pin de control es el RD2 del puerto D del microcontrolador.

9. Microcontrolador PIC 16F877A

El CPU a cargo de todo el sistema es el PIC 16F877A cuyas características principales se las mostrara a continuación:

  • Soporta modo de comunicación serial, posee dos pines para ello.
  • Amplia memoria para datos y programa.
  • Memoria reprogramable: La memoria en este PIC es la que se denomina FLASH; este tipo de memoria se puede borrar electrónicamente (esto corresponde a la "F" en el modelo).
  • Set de instrucciones reducido (tipo RISC), pero con las instrucciones necesarias para facilitar su manejo.

En siguiente tabla se pueden observar las características más relevantes del dispositivo:

CARACTERÍSTICAS
16F877
Frecuencia máxima
DX-20MHz
Memoria de programa flash palabra de 14 bits
8KB
Posiciones RAM de datos
368
Posiciones EEPROM de datos
256
Puertos E/S
A,B,C,D,E
Número de pines
40
Interrupciones
14
Timers
3
Módulos CCP
2
Comunicaciones Serie
MSSP, USART
Comunicaciones paralelo
PSP
Líneas de entrada de CAD de 10 bits
8
Juego de instrucciones
35 Instrucciones
Longitud de la instrucción
14 bits
Arquitectura
Harvard
CPU
Risc
Canales Pwm
2
Pila Harware
-
Ejecución En 1 Ciclo Máquina
-

Descripción de los puertos:

Puerto A:
  • Puerto de e/s de 6 pines
  • RA0 o RA0 y AN0
  • RA1 o RA1 y AN1
  • RA2 o RA2, AN2 y Vref-
  • RA3 o RA3, AN3 y Vref+
  • RA4 o RA4 (Salida en colector abierto) y T0CKI(Entrada de reloj del modulo Timer0)
  • RA5 o RA5, AN4 y SS (Selección esclavo para el puerto serie síncrono)

Puerto B:
  • Puerto e/s 8 pines
  • Resistencias pull-up programables
  • RB0 è Interrupción externa
  • RB4-7 èInterrupcion por cambio de flanco
  • RB5-RB7 y RB3 è programacion y debugger in circuit

Puerto C:
  • Puerto e/s de 8 pines
  • RC0 o RC0, T1OSO (Timer1 salida oscilador) y T1CKI (Entrada de reloj del modulo Timer1).
  • RC1-RC2 o PWM/COMP/CAPT
  • RC1 o T1OSI (entrada osc timer1)
  • RC3-4 o IIC
  • RC3-5 o SPI
  • RC6-7 o USART

Puerto D:
  • Puerto e/s de 8 pines
  • Bus de datos en PPS (Puerto paralelo esclavo)
  • Puerto E:
  • Puerto de e/s de 3 pines
  • RE0 y AN5 y Read de PPS
  • RE1 y AN6 y Write de PPS
  • RE2 y AN7 y CS de PPS

Dispositivos periféricos:
  • Timer0: Temporizador-contador de 8 bits con preescaler de 8 bits
  • Timer1: Temporizador-contador de 16 bits con preescaler que puede incrementarse en modo sleep de forma externa por un cristal/clock.
  • Timer2: Temporizador-contador de 8 bits con preescaler y postescaler.
  • Dos módulos de Captura, Comparación, PWM (Modulación de Anchura de Impulsos).
  • Conversor A/D de 1 0 bits.
  • Puerto Serie Síncrono Master (MSSP) con SPI e I2C (Master/Slave).
  • USART/SCI (Universal Syncheronus Asynchronous Receiver Transmitter) con 9 bit.
  • Puerta Paralela Esclava (PSP) solo en encapsulados con 40 pines

Leer más: http://www.monografias.com/trabajos18/descripcion-pic/descripcion-pic.shtml#ixzz2qCMLbUQU


10. Entradas Digitales

Este sistema de desarrollo también dispone de optoacopladores cuya función es de aislar galvánicamente las señales llevados a las entradas del microcontrolador desde los dispositivos industriales. El voltaje de entrada no debe superar el nivel de trabajo que en este caso es de 12v a 30 V DC en sus terminales de entrada. 

Los pines para las entradas digitales son las siguientes:

RA0 = Entrada Digital RA0 / Entrada Analogica RA0 seleccionable entre analogo y digital SW2
RA1 = Entrada Digital RA1 / Entrada Analogica RA1 seleccionable entre analogo y digital SW2
RA2 = Entrada Digital RA2
RA3 = Entrada Digital RA3
RA4 = Entrada Digital RA4
RA5 = Entrada Digital RA5

11. Entradas Analógicas

La conversión analógica digital, es la que nos permite transformar una señal analógica (un voltaje AC), en una representación digital (números binarios) del valor correspondiente a la tensión en el pin de entrada para poder trabajar con ella. Se utiliza en infinidad de aplicaciones lo mas común es usarla para leer señales provenientes de sensores (temperatura, viento, acelerómetros, etc.).
Este sistema usa la entrada RA0 y RA1 para la conversión análoga-digital.

RA0 = Entrada Digital RA0 / Entrada Analogica RA0 seleccionable entre analogo y digital SW2
RA1 = Entrada Digital RA1 / Entrada Analogica RA1 seleccionable entre analogo y digital SW2

12. Botón RESET

Este sistemas cuenta con un botón de reset a 0 lógico con lo cual si el sistema por alguna razón tiene un funcionamiento erróneo o que no concuerda con el programa principal dando una pulsación sobre el botón el microcontrolador retornara a su estado inicial de programación.


13. Microcontroladores Soportados

El sistema de desarrollo PLCPIC16F877A viene con el microcontrolador PIC16F877A en el encapsulado DIP40. En caso de que este microcontrolador no convenga a sus necesidades, es posible sustituirlo por otro. Al elegir la sustitución apropiada para el microcontrolador dado, lo más importante es prestar atención a su patillaje.










sábado, 11 de enero de 2014
Con la ayuda que nos da MIT, al facilitarnos la creación de aplicaciones para nuestros smartphones con sistema operativo basado en Android, e creado una aplicación que me permite mediante la voz controlar dispositivos eléctricos o electrónicos.

El funcionamiento es de la siguiente manera, al activar la aplicación en el dispositivo móvil necesariamente con sistema Android nos pedirá que demos una instrucción hablada el sistema decodificara la instrucción hablada y realizara una comparación, si la comparación es correcta enviara unos datos via bluetooth hacia la placa PLCPIC 16F877A y esta interpretara ese código y activara o desactivara en este caso sus salidas a Rele segun sea el caso.

La placa PLCPIC16F877A esta conectada con un modulo Bluetooth HC-06 el cual se encarga de recibir los datos procedientes del dispositivo con Android via serial bluetooth.

 Placa PLCPIC16F877A


Este es el telefono smartphone con Android 2.3.6 MB526 que utilice para este proyecto.
Sobre este dispositivo corre la aplicacion creada con APP Inventor.

Motorola Defy PLUS


Y este es el vídeo en el cual se puede apreciar a detalle el funcionamiento del proyecto en su totalidad.


Pronto subiré el código tanto para el teléfono como para el microcontrolador y su respectivo esquema.