ESPECIALIDAD DE INGENIERA MECATRNICA TTULO: DISEO E IMPLEMENTACIN DE UNA RED MAESTRO ESCLAVO ENTRE ARDUINO Y DOS PIC PARA LA MEDIDA DE UNA DISTANCIA
GRUPO DE TRABAJO:
CRUZ SILVA DANNY JOEL GAZZANI GUZMN GIAN-MARKO SANTOS MONSALVE SEGUNDO
DOCENTE: ING. LUIS A. CALDERON PINEDO.
PIURA-PERU 2014
OBJETIVOS
GENERALES
Implementar una red inalmbrica entre 2 pics y un mdulo arduino mega 2560 ESPECIFICOS Implementar la comunicacin entre Arduino y 2 microcontroladores para la trasmisin y recepcin de datos. Implementar un pic esclavo para controlar un sensor ultrasnico Implementar un pic esclavo para controlar un motor DC Intercambiar informacin entre el mdulo arduino y los dos pics esclavos
INTRODUCCION
Para el presente proyecto de redes industriales, se realizara comunicacin entre un mdulo arduino y un microcontrolador, a travs de una red inalmbrica que no es ms que una conexin de nodos sin necesidad de una conexin fsica, esta se da por medio de ondas electromagnticas. La trasmisin y recepcin se realiza a travs de puertos. El sentido de la comunicacin ser half-duplex, que permitir trasmitir y recibir informacin de manera alternada. Esta es una tarea relativamente desconocida para nosotros que trataremos de desarrollarla a lo largo del curso, para eso utilizaremos las herramientas adecuadas, tales como crear la interface correcta, un buen compilador de microcontroladores, y un mejor algoritmo para el trfico de la informacin. Se establecer una red inalmbrica entre arduino, para intercambiar informacin, en donde se realizara la medicin de una distancia mediante sensores ultrasnico.
MARCO TEORICO
Arduino mega El Arduino Mega es una placa microcontrolador basada ATmeg1280 (datasheet). Tiene 54 entradas/salidas digitales (de las cuales 14 proporcionan salida PWM), 16 entradas digitales, 4 UARTS (puertos serie por hardware), un cristal oscilador de 16MHz, conexin USB, entrada de corriente, conector ICSP y botn de reset. Contiene todo lo necesario para hacer funcionar el microcontrolador; simplemente conctalo al ordenador con el cable USB o alimntalo con un trasformador o batera para empezar.
PIC16F877A Los PIC son una familia de microcontroladores desarrollados y fabricados por la empresa Microchip Technologies Inc., los cuales cuentan con una tecnologa tipo RISC (Reduced Instruction Set Computer) y poseen en su arquitectura interna caractersticas especiales que varan segn el modelo de PIC que deseamos utilizar.
Podramos decir que estos dispositivos se asemejan a una computadora pero de tamao muy reducido, ya que cuentan con casi los mismos recursos que stas, es decir, poseen memoria de programa, memoria RAM, memoria de datos, puertos de entrada o salida, temporizadores y en algunos casos cuentan con recursos adicionales como convertidores A/D, comparadores, USART (Universal Synchronous/Asynchronous Receiver/Transmitter), comunicacin serie I2C, entre otros. El PIC16F87X, incluyen un gran nmero de mejoras en comparacin con el PIC16F84, debido principalmente a que cuentan con un numero de pines I/O superior a ste, adems de otras caractersticas relevantes. Por ejemplo, con esta serie de microcontroladores contamos con una mayor capacidad en cuanto a memoria de programa y memoria de datos.
nRF24L01p Los transceptores NRF24L01 son una serie de mdulos de radio de 2,4 GHz que se basan en el chip de Nordic Semiconductor nRF24L01. El Nordic nRF24L01 integra un completo transceptor RF de 2,4 GHz, un sintetizador de RF y toda la lgica de banda base incluyendo un acelerador de protocolo por hardware Enhanced ShockBurst con una interfaz SPI de alta velocidad para el controlador de la aplicacin. El mdulo Transceptor de baja potencia y corto alcance (200 metros ms o menos)
Caractersticas: Rango de radiofrecuencia en la cual trabaja (2.4 2.5 GHz), antena integrada en la placa. Comunicacin SPI. (Max. Velocidad 8Mhz). 128 canales de transmisin seleccionables por el bus SPI. Implementacin capas OSI por hardware. Tensin de alimentacin (1.9 a 3.6 V). Mxima velocidad de transferencia en radiofrecuencia 2Mbps. Pines de entrada con tolerancia a 5V
Aplicaciones: Perifricos inalmbricos de PC Mouse, teclados y mandos a distancia Controles remoto Control de juegos Relojes y sensores deportivos Mandos a distancia RF para la electrnica de consumo Automatizacin comercial y del hogar Sistemas de seguimiento de activos
METODO Realizaremos comunicacin maestro-esclavo, donde el maestro es Arduino mega 2560 que coordina toda la informacin, usualmente tambin es el encargado de mantener el reloj si el protocolo lo exige, usualmente un maestro manda una orden por el bus y espera hasta que el esclavo le responda, pero en algunas ocasiones algunos esclavos estn autorizados a enviar informacin sin esperar la orden, El esclavo es el que obedece al maestro, normalmente ejecuta su proceso individual y mantiene los resultados hasta que el maestro se los solicite La clave fundamental de este proyecto est en el medio de transmisin que se utilice. Se pueden utilizar diferentes interfaces ya sea el caso de I2C, RS-485, RS- 232 que permiten la conexin multipunto, por donde se realizara la trasmisin y recepcin, donde tendremos en cuenta el costo y la complejidad que se tenga para crear la interface.
FUNCIONAMIENTO DEL PROYECTO
Este proyecto consiste en la comunicacin de una placa Arduino - maestro y dos PIC-esclavos, para comprobar el correcto funcionamiento se implementara en un esclavo un sensor ultrasnico que mediante una orden del maestro se activara y comenzara a censar distancias entre el sensor y el objeto ms cercado cuando y al mismo tiempo se activara el esclavo 2 un motor DC que comenzara a funcionar hasta que el esclavo 1 detecte que hay un objeto a 30cm de su ubicacin y entonces enviara una seal al maestro indicndole que est en el lmite permitido y entonces el maestro enviara una seal al esclavo 2 haciendo que este se detenga el motor DC en los esclavos y como una aplicacin Para lograr esta comunicacin se utilizara los mdulos de comunicacin inalmbrica nRF24L01p. Imagina que quieres enviar informacin de un PIC a otro y por necesidades del proyecto hay varios metros de distancia. Hacer comunicaciones por cables muchas veces se convierte en un problema porque con la distancia se "desdibuja" las seales originales, atenundose y sumando ruido, adems del costo econmico del propio cable y el engorro que supone su utilizacin. Existe una solucin sencilla y muy barata hacindolo por radio frecuencia del tipo micro-ondas. Por lo menos para distancias cortas y podrs comunicar como mnimo con 128 dispositivos diferentes sin ninguna dificultad. El transceptor nRF24L01 tiene dos velocidades de comunicacin: 1Mbps o 2Mbps. Son mega bits por segundos pero vamos a traducirlo a bytes, ya que es lo que realmente vamos a usar. Slo hemos de dividir por 8 porque cada unidad de transferencia lo haremos en bytes. Se traduce en 125.000 bytes por segundo (1Mbps) 250.000 bytes por segundo (2Mbps). Sea 1 2Mbps, es mucho mejor que el RS-232 estndar (9.600 bits por segundo) y que el USB en clase CDC y HID que slo envan a 64.000 bytes por segundo usando todo el buffer I/O. Con el nRF24L01 puede hacer comunicaciones bidireccionales tipo half-duplex. La distancia a alcanzar depender de la velocidad de transmisin. En el peor de los casos podremos comunicarnos hasta 8 metros de distancia al aire libre (configurando a 2Mbps), y en el mejor de los casos hasta 40 metros (configurando a 1Mbps) con el nRF24L01 ms barato (existen varios tipos y potencias). Hay de tener presente que las micro-ondas (las mismas que usa los wifis, es decir unos 2.4GHz) si encuentra una pared, un muro o un pasillo, la seal se debilita notablemente.
Conectaremos los pines del mdulo a las entradas digitales del Arduino de la siguiente forma:
Mdulo nRF24L01 Arduino Mega VCC 3,3V o 5V GND GND MISO 50 MOSI 51 SCK 52 CE 8 CSN 7
CE : Habilitacin en chip activa RX o el modo TX CSN : Selector del chip MISO : Transporta los datos del esclavo hacia el maestro MOSI: Transporta los datos del maestro hacia el esclavo SCK : La seal sobre la lnea de reloj (SCK) es generada por el maestro y sincroniza la transferencia de datos. IRQ : Pin de interrupcin
ESPECIFICACIONES DEL BUS La seal sobre la lnea de reloj (SCLK) es generada por el maestro y sincroniza la transferencia de datos.
La lnea MOSI (Master Out Slave In) transporta los datos del maestro hacia el esclavo. La lnea MISO (Master In Slave Out) transporta los datos del esclavo hacia el maestro
ESQUEMTICO DEL PROYECTO En la siguiente figura se puede apreciar el esquematico del esclavo 1 para el funcionamiento de el sensor ultrasonico HC-SRF04 y la base para el modulo nRF24L01p que ser el que comunicara nuestro placa esclavo con la placa maestro
En la siguiente figura se aprecia el esquemtico de nuestro segundo esclavo q contara con a base para el mdulo de comunicacin nRF24L01p y con un motor de corriente continua esta placa tambin ser comandada por la placa mestro.
En el siguiente esquemtico podemos notar las conexiones del mdulo arduino y el transceptor nRF24L01p
CONCLUCIONES Se puede controlar la informacin que se trasmite de un dispositivo a otro a travs de una red de comunicacin
A travs de una red de comunicacin podemos ejecutar operaciones a largas distancias, sin necesidad de estar presente en el lugar de los hechos.
El transceptor Nrf24l01p es un integrado que se puede usar tanto como emisor o receptor por lo tanto supone una gran ventaja a la hora de enviar y recibir informacin.