_PONENCIAMICRSOUCV2013

82

Transcript of _PONENCIAMICRSOUCV2013

programable

MICROPROCESADOR Vs MICROCONTROLADOR

GAMA BAJA

GAMA MEDIA

GAMA ALTA

Temporizadores o "Timers". Perro guardián o "Watchdog". Protección ante fallo de alimentación o "Brownout". Estado de reposo o de bajo consumo. Conversor A/D. Conversor D/A. Comparador analógico. Modulador de anchura de impulsos o PWM. Puertos de comunicación. (UART, USART, Puerto paralelo esclavo, USB, Bus I2C, Interface SPI, CAN, TCP/IP). Puertos de entrada o salida EEPROM RAM (Memoria de Programa)

Microchip. Atmel. Freescale. Renesas. ST. SiLabs. Maxim. Infineon. Fujitsu. National Semiconductor.

Texas Instruments. Nec. NXP. Toshiba. OKI. Zilog. Sanyo. Analog Devices. Cyan. Rabbit. Jennic.

1. Número de entradas y salidas necesarias. 2. El Ancho de palabra (8, 16 ó 32 bits) 3. Temporizadores necesarios. 4. CAD o CDA. 5. Puertos de comunicaciones (I2C, RS232, USB, bus CAN, SPI u otros). 6. Salidas PWM. 7. Interfaces específicas como la de control LCD. 8. Cantidad de memoria y velocidad 9. Experiencia previa y Documentación existente 10. Herramientas de desarrollo disponibles y su precio 11. Precio del microcontrolador 12. Velocidad y consumo 13. Memoria: 14. Disponibilidad 15. Diseño del circuito y de la PCB

APLICACIONES EN LA INDUSTRIA

En la industria del automóvil: Control de motor, alarmas, regulador del servofreno, dosificador, etc. En la industria de los electrodomésticos: control de calefacciones, lavadoras, cocinas eléctricas, etc. En informática: como controlador de periféricos. Por ejemplo para controlar impresoras, plotters, cámaras, scanners terminales, unidades de disco, teclados, comunicaciones (modems), etc. En la industria de imagen y sonido: tratamiento de la imagen y sonido, control de los motores de arrastre del giradiscos, magnetófono, video, etc.

Sistemas de comunicación: en grandes automatismos como centrales y en teléfonos fijos, móviles, fax, etc.

Electrodomésticos: lavadoras, hornos, frigoríficos, lavavajillas, batidoras, televisores, vídeos, reproductores DVD, equipos de música, mandos a distancia, consolas, etc.

Industria informática: Se encuentran en casi todos los periféricos; ratones, teclados, impresoras, escáner, etc.

Automoción: climatización, seguridad, ABS, etc.

Industria: Autómatas, control de procesos, etc.

El "microprocesador de genes": realiza pruebas para saber cómo reaccionan las personas a los fármacos. Incluye el perfil genético de una persona para determinar cómo reaccionará y si se beneficiará o no de un determinado tratamiento farmacológico. Un microprocesador de genes es una especie de placa de vidrio del tamaño de la uña del dedo pulgar que contiene secuencias de ADN que se pueden usar para revisar miles de fragmentos individuales de ADN de ciertos genes.

Termostato digital

Pasos para estructurar un programa

Activar y configurar el convertidor A/D incorporado; Medir el valor analógico; Calcular temperatura; y Enviar los datos en el formato apropiado al LCD;

Visualizador LCD gráfico

Memoria Flash: Memoria no volátil que funciona como almacén para los sketchs que se cargan al Arduino. Cuenta con 16k bytes de los cuales 2k son utilizados por el bootloader.

SRAM: Memoria Estática de Acceso Aleatorio es donde se manipulan los sketchs y manipulan variables, dispone de 1024 bytes.

EEPROM: Memoria que puede ser utilizada para almacenar información de largo plazo, es del tipo no volátil cuenta con 512 bytes.

Algunos aspectos a tomar en cuenta: No hay mucha SRAM disponible Si se acaba la SRAM el programa fallara

PanStamp

Es un módulo inalámbrico de baja potencia programable desde

el entorno de programación Arduino. Cada módulo contiene un

microcontroldor Atmega328p y un interfaz RF CC1101de

Texas Instruments, de modo que tanto computación como

comunicaciones están cubiertos por un sólo módulo compacto

con formato DIP-24. Con todo esto, los módulos panStamp

pueden formar redes inalámbricas de baja potencia, efectuar

medidas sobre sensores externos y también controlar cargas

mediante los correspondientes circuitos de adaptación.

La programación de panStamps es bastante sencilla. De este

modo, el desarrollador puede concentrarse en aquello que

realmente importa de su proyecto: la aplicación.

Especificaciones hardware

panStamp pin mapping

•Tamaño: 0.7 x 1.2 in (17.7 x 30.5 mm)

•MCU: Atmega328P de Atmel a 8MHz

•Flash: 32 KB

•RAM: 2 KB

•EEPROM: 1 KB

•Interfaz RF: CC1101 de Texas Instruments

•Bandas de frecuencia: 868/915 MHz

•Voltaje de operación: de 2.5 VDC a 3.6 VDC

•Consumo de corriente: 1-5 uA en modo

durmiente. 2.5 mA durante las transmisiones.

El diseño actual dispone de seis entradas para transformadores de corriente de tipo pinza y de tres entradas para señales de impulsos. Con todas estas entradas, es posible medir hasta seis circuitos eléctricos distintos en una vivienda y al mismo tiempo mantener lecturas reales de contadores de electricidad, de agua o de gas por medio de impulsos.

Los números de parte de los Tx. y Rx. (abreviatura para transmisor y receptor, respectivamnete) de PARALLAX son: Tx. 27980 y Rx. 27981. Los módulos ya vienen listos con pines de tipo macho para insertarse en una tablilla de pruebas (mejor conocida como protoboard) y antena. El corazón de estos módulos son los CI’s (Circuitos Integrados) de LINX, que como su eslogan lo dice: “hacen la comunicación inalámbrica simple”(Wireless Made Simple), ya que estos CI, solo requieren recibir del microcontrolador los datos por comunicación serial del tipo UART, que la mayoría de los microcontroladores de gama media contienen y que junto con compiladores de lenguajes de alto nivel como son ’C’ o PASCAL que cuentan con librerías para el manejo del puerto UART, hacen muy sencillo el envío y recepción de datos.

kit de desarrollo: rfPIC Development Kit 1 (#parte DV164102), son PIC’s que vienen con un transmisor de RF en el mismo encapsulado.

el transreceptor RFM12 de HOPERF, el cual se comunica por SPI (del inglés Serial Peripheral Interface), de este puerto también existen librerías en los lenguajes de alto nivel. Estos CI’s estoy en espera de recibirlos, ya que también estoy interesado en probarlos.

//Target PIC: PIC16F877A sbit LCD_RS at RB4_bit; sbit LCD_EN at RB5_bit; sbit LCD_D4 at RB0_bit; sbit LCD_D5 at RB1_bit; sbit LCD_D6 at RB2_bit; sbit LCD_D7 at RB3_bit; sbit LCD_RS_Direction at TRISB4_bit; sbit LCD_EN_Direction at TRISB5_bit; sbit LCD_D4_Direction at TRISB0_bit; sbit LCD_D5_Direction at TRISB1_bit; sbit LCD_D6_Direction at TRISB2_bit; sbit LCD_D7_Direction at TRISB3_bit; unsigned long ADRead; unsigned int vDisp[3]; unsigned char Display[7];

void main() { PORTA = 0; TRISA = 0X01; PORTB = 0; TRISB = 0; LCD_Init(); LCD_Cmd(_LCD_CURSOR_OFF); LCD_Cmd(_LCD_CLEAR); LCD_Out(1, 1, "Temp:"); //Display = "+125 'C"; Display[4] = 39; //' Display[5]= 'C'; ADCON1 = 0x0E; ADC_Init();

while (1){ ADRead = (ADC_Get_Sample(0) * 500) >> 10; vDisp[0] = ADRead / 100; vDisp[1] = (ADRead / 10) % 10; vDisp[2] = ADRead % 10; Display[1] = vDisp[0] + 48; Display[2] = vDisp[1] + 48; Display[3] = vDisp[2] + 48; LCD_Chr(1, 8, Display[0]); LCD_Chr(1, 9, Display[1]); LCD_Chr(1, 10, Display[2]); LCD_Chr(1, 11, Display[3]); LCD_Chr(1, 12, Display[4]); LCD_Chr(1, 13, Display[5]); //LCD_Out(1, 8, ); // 'Show temperature delay_ms(200); //200ms delay for waiting } }