free web tracker SRF02 with 16F628 and ER400TS/ER400RTS

 

descripción técnica del "Midi-Stick"

 
- página modificada en agosto de 2007 - (English version)
Todos los "links" asociados con esta documento se encuentran abajo de la página. El proyecto entero, que incluye los esquemas de los circuitos electrónicos y los códigos HEX para los Microcontroladores 16F877A y 16F628A, los ficheros abiertos en ASM (MPLAB IDE) de ambos, así como el PDF del SRF02 (sensor ultrasónico) y ER400xxx se pueden descargar en formatoa ZIP desde abajo de esta página.

 

MIDI-STICK descripción del transmisor sin alámbrico
Midi-Stick: envia datos por aire de 0x08 a 0xff SRF02 cargador del "Midi_Stick" vista general del "Midi-Stick"

El SRF02 es un sensor de distancia por ultrasonidos que funciona mediante un solo transductor. Utlizar un único transductor para transmitir la ráfaga ultrasónica como para el eco de la misma disminuye el tamaño del modulo a una placa de solamente 20mm * 24mm que permite importrarla con fascilitad en un palo con un diámetro de 25mm.
Este medidor permite comunicaciones serie e 12c. (vea PDF SRF02). Con los niveles TTL se puede conectar directamente con el USART de un microcontrolador. El rango de medida es de 15cm a 600cm, asì los resultados recibidos del SRF02 son entre 0x08 hasta 0xFF.
Aprovechando la zona muerta (0x00 hasta 0x08) permite enviar comandos directamente al “HOST” que lleva un Pic 16F877A y transformarlos en mensajes Midi para cambiar programas (programm change messages) o bien cambiar la manera de interpretación de los datos recibidos por el Pic, asi aumentando la vesalitat de crear sonidos y timbres .
Con solamente 2 bytes se puede enviar un comando al SRF02. El primero es la dirección (entre 0 y 15) y el otro el comando propiamente dicho. Por ejemplo 0x00 (dirección 0) 0x55 (comando): iniciar una nueva medida – el resultado es transmitido automáticamente desde el SRF02 en microsegundos por TX.
Para el control del sensor y de los dos botones el circuito lleva un Pic 16F628A con un USART y posibilidad de programación incircuito bajo voltaje (ICLVP).
Mediante un transitor (T1) el VCC del ER400TS (Easy-Radio) y el VCC del circuito integrado 74HC4066 esta conmutado. Pulsando el pulador (S1) el 74HC4066 sirve para directionar los comandos enviados por el 16F628A directamente al TX del ER400TS.
El Pic esta programado para caer en el estado “sleep” después de 5 minutos sin detección de una nueva medida que explica la necesitad del transistor T1.
La programación del 16F628 esta solucionado con el 74HCT573. Para la programación del Pic se conecta el circuito al puerto paralelo. La habilidad programar el Pic “in circuito” facilita muchísimo el desarrollo del programa. (Vea programación “in circuito”)
Ya mencionado la transmisión/recepción por aire de los datos esta hecho utilizando el ER400TS (transmisor placa “Midi_Stick”) y el ER400TRS (transmisor/receptor placa “Host”), una solución estable y barata.
El SRF02 tiene un formato estándar de 9600 baudios. Por eso el transmisor y receptor ER400TS/ER400TRS respectivamente deben que estar configurados con el mismo formato de 9600 baudios. (vea PDF)
La alimentación del circuito esta solucionado con una pila recargable, una VARTA 4/80H de 4,8V 80mA/H. La pila se carga mediante un circuito integrado de MAXIM el MAX712. El circuito esta calculado para cargar la pila en aprox. 3 horas.

 
diagrama de bloque del
diagrama de bloque del

 

 

HOST con un PIc 16F877A, un ER400TRS-02 y un programador "in circuito".
HOST, receptor con un 16F877A, un ER400TRS-02 y un 74HCT573 para el ICSP

Incorporado en la blaca “Host” con un microcontrolador 16F877, que controla el receptor e envia los datos midi por el Puerto A4 hay un ER400RTS-02 para recibir los datos enviados por el transmisor ER400TS-02 del “Midi-Stick”. Ambos módulos son de la empresa LPRS (Low Power Radio Solutions). Los módulos son programables con un programa (Easy Radio Evaluation Software) que se puede bajar de la página Web de la misma empresa utilizando el puerto serial RS232. Conectando los módulos al RS232 es evidente poner un “level shifter” MAX232 para evitar la destrucción del mismo por distintas niveles de voltaje.
El ER400TRS-02 tiene un modo “fast ACK” disponible. En este modo, en lugar de responder con código de texto “ACK”, la respuesta es un solo byte de0x06, que es el ASCII valor de ACK. En este modo los cambios de la configuración del ER400TRS-02 aceleran notablemente. Como el SRF02 los módulos de Easy Radio tienen la transmisión ,respectivamente recepción fijadas por defecto a 9600 baudios.
Incorporado en la placa “Host” es un 74HCT573 que es el CI para el “ICSP LVP” programador que permite programar el 16F877A "in circuito". La misma placa se puede aprovechar como propósito general, tiene 5 LED’s y las PUERTA A, B, D accesibles con tres enchufes.

Placa con un ER400TRS-02 y un Pic 16F877A detailes con el 74HCT573 para prgoramar el PIC  "in  circuito" placa de proposito general detaile del "HOST"
fotos Holger Strauss
 
diagrama de bloque del
diagrama de bloque del

 

ICSP LVP descripción del programador
programador "in circuito"  con el CI 74HCT573
 

El ICSP LVP programador (Incircuit Serial Programmer, Low Voltage Programmer) – programador in circuito de bajo voltaje – es un diseño de Byron Jeff http://finitesite.com/d3jsys/. Para las necesidades de este proyecto el circuito es ligeramente modificado. Vea diagrama electrónico arriba. El programador funciona sin ningún problema con el programa WinPic para Windows http://www.qsl.net/dl4yhf/winpicpr.html. Para configurar el programa WinPic con el ICSP LVP programador hace falta copiar el fichero “LVP” en la subcarpeta “interfaces” del la carpeta del programa del WinPic. Se encuentra este fichero en el ZIP que se puede bajar desde esta página.
Importante es el AC terminador con C1, 100pF y R2, 100 ohm. La resistencia, R5 de 390 ohm en la entrada del PGN (pin36 16F877 o pin 4 16F628) estabiliza el Pic después de la programación.

 
 
LVP.INI fichero para el prg. WinPic (pegar el fichero en la carpeta "interfaces"

[Info]
Purpose=LVP.INI PIC programmer interface for ICSP LVP programmer de Byron Jeff.
Remarks=Prepared for WinPic by Martin Hug.


[ProgrammerControlLines]
DataIn=ack
OkButton=nc
VppOnOff=D2
VddOnOff=D3
Connect=nc
ClockOut=D1
DataOut=D0
DataOutWhileReading=1
PullMclrDown=nc
ClkEnable=nc
OutEnable=nc
RedLed=nc
GreenLed=nc

links relacionadas con esta página abriendo una segunda ventana.

 

 
Midi_Stick.zip incluye todos los diagramas del proyecto. Además los códigos en formato *.hex y *.asm, los ficheros para MPLAB y los "data sheet" de los componentes SRF02, ER400xxx-2 etc.
download Midi_Stick.zip

 

 

 

 

 

Open links in secondary window