miércoles, 15 de febrero de 2012

Componentes del proyecto

Introducción y descripción de componentes importantes del proyectose utilizara el Rover DFRobotShop (un móvil kit Arduino), VRbot reconocimiento de voz módulo Veear, dos módulos XBee,  un Arduino, XBee dos escudos y algunos otros  componentes

Rover DFRobotShop

El Rover DFRobotShop - es un tanque versátil robot móvil basado en el popular microcontrolador Arduino Uno. El Rover utiliza el popular Tamiya caja de cambios de doble motor y la pista de Tamiya y juego de ruedas. El PCB DFRobotShop Rover incorpora una norma Arduino UNO (montaje en superficie ATMega328), L293B controlador de motor (conectado a los pines de 5 a 8), regulador de voltaje y el área de prototipos al tiempo que contribuye a la estructura mecánica del robot. El regulador de tensión de a bordo permite que toda la junta para ser alimentado con tan poco como 3,7 a ~ 9V *.

Modulo Easy VR

EasyVR es un módulo de voz multi-propósito el reconocimiento, concebida para agregar discurso eficaz versátil, robusto y económico y las capacidades de reconocimiento de voz para prácticamente cualquier aplicación. EasyVR es la versión de segunda generación del módulo VRbot éxito y se basa en las características y funcionalidades de su predecesor.

El módulo EasyVR se puede utilizar con cualquier host con una interfaz UART accionado a 3,3 V - 5V, tales como el CFP y placas Arduino. It is ideal for applications such as home automation (voice controller light switches, locks, beds) or adding hearing to most popular robots on the market. Es ideal para aplicaciones como la automatización del hogar (de voz interruptores de la luz del controlador, cerraduras, camas) o la adición de audiencia a los robots más populares en el mercado.

Xbee

Los módulos Xbee proveen 2 formas amigables de comunicación: Transmisión serial transparente (modo AT)  y el modo API que provee muchas ventajas.Los módulos Xbee pueden ser configurados desde el PC utilizando el programa X-CTU o bien desde tu microcontrolador. Los Xbee pueden comunicarse en arquitecturas punto a punto, punto a multi punto o en una red mesh. La elección del módulo XBee correcto pasa por escoger el tipo de antena (chip, alambre o conector SMA) y la potencia de transmisión (2mW para 300 pies o 60mW para hasta 1 milla) 

ArduinoUno

El Uno Arduino es una placa electronica basada en el ATmega328 ( ficha técnica ). It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. Cuenta con 14 entradas / salidas digitales pines (de los cuales 6 pueden ser utilizados como salidas PWM), 6 entradas analógicas, un oscilador de cristal de 16 MHz, una conexión USB, un conector de alimentación, una cabecera de ICSP, y un botón de reinicio. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started. Contiene todo lo necesario para apoyar a la micro, sólo tiene que conectarlo a un ordenador con un cable USB o el poder con un adaptador AC-DC o la batería para empezar.


Escudos
Comunicación del robot oruga hacia con el modulo de reconocimiento de voz

La forma en que se comunicaran sera por el protocolo de comunicación Zigbee y sera comandado por reconocimiento de voz humana como proyecto a futuro se le controlara por la mente pero por el momento solo por voz .

Microcontroladores VS Microprocesador

Diferencia entre Microprocesador y Microcontrolador
Ciertamente la gran mayoría de nosotros hemos escuchado hablar acerca de microprocesadores y microcontroladores y tal vez no sepamos cual es la diferencia entre uno y otro, o peor aún, nos podemos confundir al emplear cualquiera de las dos palabras.
Existe mucha información en internet acerca de microprocesadores y microcontroladores. Pero a veces la información es muy extensa y no muy fácil de comprender. 


El Procesador
n microprocesador o procesador como un elemento de hardware que se encarga como su nombre mismo lo dice procesar datos a partir de ciertas instrucciones de entrada arrojando cierto resultado, todo esto en base a su set de instrucciones que incorpora.
procesador_01_small
Un microprocesador por si solo seria prácticamente inservible,  para que funcione necesita estar conectado mediante diferentes buses a otros elementos como la memoria RAM, y dispositivos de entrada y salida (E/S) y otro tipo de memoria especial llamada EEPROM que almacena los datos de forma permanente aun sin energía eléctrica.
La mayora de los procesadores de las PCs personales  suelen utilizar la arquitectura Von Neuman. En esta arquitectura el procesador comparte la memoria RAM para almacenar las instrucciones del programa y los datos.
Debemos comprender que en una PC, cuando se carga un programa en memoria, a éste se le asigna un espacio de direcciones de la memoria que se divide en segmentos, de los cuales típicamente tenderemos los siguientes: código (programa), datos y pila. Es por ello que podemos hablar de la memoria como un todo, aunque existan distintos dispositivos físicos en el sistema (HDD, RAM, CD, FLASH).
Utilizar la arquitectura tiene ventajas y desventajas, una de ellas es que al utilizar la misma memoria para almacenar los datos de programa y las instrucciones, solo se utilizan tres buses (de control, de datos y de direcciones) de estar separadas utilizaríamos otros tres buses mas, que con respecto al diseño seria más costosa.
Como desventaja principal de esta arquitectura encontramos que el procesador no puede acceder a los datos de programa y a las instrucciones al mismo tiempo, sino que debe almacenar una de ellos en los registros del procesador y volver a consultar las instrucciones para ejecutar, esto se traduce en pérdida de tiempo ya que el procesador tendrá que acceder dos veces a la memoria para poder ejecutar una sola instrucción.
También existe otro tipo de arquitectura llamada Harvard que es utilizada comúnmente por supercomputadoras o Mainframes. Esta define que la memoria de datos de programa y las instrucciones deben estar separadas. Con esto se tienen que crear otros tres buses a la otra memoria que incorporamos. Pero vale la pena ya que podemos procesar la información mas rápido, pues se puede acceder a la memoria de datos y a las instrucciones al mismo tiempo.

Set de instrucciones del procesador
Define las operaciones básicas que puede realizar el procesador, que conjugadas y organizadas forman lo que conocemos como software. El conjunto de instrucciones vienen siendo como las letras del alfabeto, el elemento básico del lenguaje, que organizadas adecuadamente permiten escribir palabras, oraciones y cuanto programa se le ocurra. 
Existen dos tipos de set de instrucciones: CISC y RISC
Las instrucciones CISC (Complex Instruction Set Computer, Computadora de Conjunto de Instrucciones Complejo) se caracterizan por tener un repertorio amplio de instrucciones, que pueden hacer cálculos muy complejos. Pero también se complica su uso.
El tipo RISC (Reduced Instruction Set Computer, Computadora con Conjunto de Instrucciones Reducido) se distingue por sus pocas instrucciones, y tamaño un tamaño fijo por instrucción además permite el paralelismo en la ejecución.

El Microcontrolador
Fue necesario definir algunas de las características principales de un procesador porque conociendo lo anterior definiremos al Microcontrolador.
Un Microcontrolador en realidad no es otra cosa más que una mini computadora  embebida dentro de un solo encapsulado del tamaño de un chip. Este cuenta con procesador, memoria RAM, Memoria ROM y periféricos de entrada y  salida.
microMicrocontrolador_diam
Técnicamente un Microcontrolador lleva dentro un Microprocesador.  Este a su vez cuenta con buses de datos, control y dirección hacia la memoria y hacia los periféricos o puertos.
La arquitectura de estos dispositivos es la Harvard quiere decir que poseen 2 memorias una memoria RAM que almacena los datos y otra de tipo EPROM o EEPROM que almacena el programa. Al usar esta arquitectura tiene la ventaja de poder usar simultáneamente los dos tipos de memoria y en lugar de ser una desventaja como lo era con una PC normal puesto que todo se encuentra en un solo encapsulado puede implementarse fácilmente.
 El set de instrucciones es del tipo RISC las cuales ya vimos anteriormente. El lenguaje nativo de estos dispositivos es el lenguaje ensamblador. Aunque en la actualidad hay muchas empresas que se dedican a desarrollar compiladores que funcionan con la sintaxis de C o Basic que después traducirán a lenguaje máquina para  programar el Microcontrolador.

Existen muchos fabricantes como Intel, Motorola, Texas Instruments, etc. Pero los más conocidos son los PICs de Microchip y los AVR de Atmel.
Actualmente a los microcontroladores se les puede hallar en muchísimos electrodomésticos como lavadoras, hornos de micro ondas, DVDs etc. Por su bajo precio, fácil programación y la extensa información que circula en internet estos se han vuelto muy utilizados en la electrónica y ramas afines.