Beruflich Dokumente
Kultur Dokumente
LABORATORIO DE TELECOMUNICACIONES
Avance proyecto
Barco controlado mediante comunicacin bluetooth y una Tablet Samsung galaxy 2, utilizando un PIC16F887 como controlador
INDICE
Introduccin: ....................................................................................................................................... 3 Objetivos ............................................................................................................................................. 4 Breve descripcin terica .................................................................................................................... 4 1
Descripcin del proyecto con diagrama de bloques ......................................................................... 10 Simulacin ......................................................................................................................................... 15 Implementacin ................................................................................................................................ 15 Resultados reales y anlisis de los resultados................................................................................... 16 Lista de precios .................................................................................................................................. 17 Futuros trabajos ................................................................................................................................ 17 Conclusiones y recomendaciones ..................................................................................................... 17 Bibliografa ........................................................................................................................................ 17 Anexos ............................................................................................................................................... 17
Introduccin:
Debido a los continuos usos y facilidades que presenta la tecnologa inalmbrica hemos enfocado nuestro proyecto de en la implementacin de un transmisor-receptor half-duplex, aprovechando el avance en la tecnologa se integraron diseos tanto de hardware como de software creando un prototipo fcilmente aplicable en diseos de automatizacin, domtica e inmtica etc. Visto desde el punto de vista de ingeniera esta combinacin abre un sin numero de aplicaciones dejando por sentado el conocimiento bsico para seguir diseando posibles usos a este producto. La transmisiones inalmbricas en los ltimos tiempos han llegado a un punto en que no es necesario construir un dispositivo inalmbrico, lo que implica el uso de bobinas y su calibracin manual, ahora debemos aprovechar lo que nos proporcionan y concentrar el diseo en otros
3
dispositivos o programas que aprovechen las nuevas tecnologas. As la programacin cuenta un papel importante en el diseo de este proyecto, en este caso se program tanto en lenguaje C como en lenguaje G, programacin orientada a hardware. Adems las comunicaciones inalmbricas brindan el beneficio de una mayor movilidad, sin las molestias que representan un tendido de cables elctricos, lo que significa no tener que estar en un solo lugar para monitorear una actividad.
Objetivos
Realizar la comunicacin bluetooth entre un circuito electrnico y un dispositivo android, utilizando un pic 16f887 como controlador.
APP inventor Esta aplicacin Online nos permite desarrollar programas en ambiente Android, de una manera fcil ordenada y sencilla, con conocimientos bsicos, adems nos permite configurar puertos como reconocedores de voz, giroscopios,
instrucciones de teclas, conexiones inalmbricas. La aplicacin desarrollada como control de nuestro barco, consta de botones para salir, buscar dispositivos que me ayudara a emparejar el modulo bluetooth con la Tablet, flechas direccionales, para un manejo ms controlado de
Qu es un Compilador?
Un compilador es un programa informtico que traduce un programa escrito en un lenguaje de programacin a otro lenguaje de programacin, generando un programa equivalente que la mquina ser capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de mquina, pero tambin puede ser simplemente texto. Este proceso de traduccin se conoce como compilacin. Un compilador es un programa que permite traducir el cdigo fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (tpicamente lenguaje de mquina). De esta manera un programador puede disear un programa en un lenguaje mucho ms cercano a cmo piensa un ser humano, para luego compilarlo a un programa ms manejable por una computadora.
PROTEUS Proteus es una herramienta software que permite la simulacin de circuitos electrnicos con microcontroladores. Sus reconocidas prestaciones lo han convertido en el ms popular simulador software para microcontroladores. Esta herramienta permite simular circuitos electrnicos complejos integrando inclusive desarrollos realizados con microcontroladores de varios tipos, en una herramienta de alto desempeo con unas capacidades graficas impresionantes. Presenta una filosofa de trabajo semejante al SPICE, arrastrando componentes de una barra e incrustndolos en la aplicacin, es muy sencillo de manejar y presenta una interfaz grfica amigable para un mejor manejo de las herramientas proporcionadas por el Proteus.
BLUETOOTH HC-06 El futuro es inalmbrico y la tecnologa Bluetooth es una de las favoritas en el mundo de los aficionados a la electrnica, donde el enlace de datos sin vnculo fsico debe ser robusto, confiable y seguro. Luego de haber ensayado el mdulo Bluetooth RN41, Distribuido en todo el mundo por Wavesen, el mdulo Bluetooth HC-06 es un dispositivo muy fcil de obtener, econmico y sencillo de utilizar. Con dimensiones tan pequeas como un conector USB, el mdulo Bluetooth HC06 es una de las piezas de mercado ms econmicas que puedas encontrar dedicadas a este tipo de conectividad. Durante los ensayos realizados, el mdulo ha demostrado tener un solo punto dbil: la escasa (y confusa) informacin que existe sobre l en la web. Una de las ventajas principales ventajas del mdulo HC-06, adems de su pequeo tamao y sus buenas caractersticas de transmisin y recepcin que le brindan un alcance muy amplio (por tratarse de un sistema local Bluetooth), es el bajo consumo de corriente que posee tanto en funcionamiento, como en modo de espera, es decir, alimentado con energa, pero sin conexin o enlace a otro dispositivo, por ejemplo, un mvil con SO Android. Otra caracterstica interesante de este mdulo es que una vez que ha realizado un enlace con otro dispositivo es capaz de recordarlo en su memoria y no solicita validacin alguna ( 1234 por defecto). Otro detalle particular es que su tensin de alimentacin de 3,3Volts y su bajo consumo (8mA en transmisin/recepcin activa) lo transforman en un dispositivo ideal para trabajar con microcontroladores de la misma tensin de alimentacin, logrando de este modo equipos porttiles que pueden ser alimentados durante muchas horas por bateras recargables o alcalinas AA, demostrando caractersticas excepcionales en aplicaciones mdicas, o para actividades recreativas donde la fuente energtica debe ser liviana y porttil.
Caractersticas de la transmisin Bluetooth (IEEE 802,15) Bluetooth fue creado con la disposicin de dar conexin a redes de corto alcance, conocidas como Wireless Personal rea Network (WPAN). Est definido por el estndar IEEE 802,15, que denota una tecnologa inalmbrica que permite comunicar los equipos a una velocidad relativamente baja. Existen muchos aspectos importantes pero uno de los ms relevantes es cmo esta tecnologa se interconecta con el modelo OSI.
La tecnologa inalmbrica de Bluetooth utiliza un radio de corto alcance que ha optimizado para el ahorro de energa, operacin adecuada de la batera, tamao pequeo y para ser utilizada en aparatos personales de bajo peso. Una WPAN es capaz de soportar canales sincrnicos de comunicacin para telefona de voz y canales de comunicacin asincrnicas para comunicaciones de datos.
Dichas facilidades permiten que una amplia gama de aplicaciones y de aparatos trabaje en una WPAN. Ej: un telfono celular puede usar canales circuit-switched para transportar audio desde y para receptor en el encabezado mientras se encuentra utilizando un canal packet-switched para intercambiar datos con una computadora porttil.
Una WPAN opera en la banda de 2,4 Ghz. Se utiliza un transceptor de fast frequency hop (1600 hops/s) para evitar la interferencia y la cada de seales. Para reducir la complejidad del transceptor se utiliza la tcnica binaria FSK para transmitir smbolos con un rango de 1 Smbolos/s. Se utiliza un canal ranurado de 625 us, una trama de TDD se utiliza para permitir comunicaciones full dplex en capas superiores. Un paquete normalmente cubre una sola ranura, pero se puede extender de 3 a 4 ranuras. Para trfico de datos de manera unidireccional es posible transmitir un mximo de 723,2 Kbps entre 2 dispositivos. Un canal bi-direccional soporta un trfico de voz entre 2 equipos pueden llegar hasta 64 Kbps.
La modulacin es del tipo GFSK (Gaussian Frequency Shift Keying) con un tipo de ancho de banda BT = 0,5. El ndice de modulacin debe ser de entre 0,28 y 0,35.
En el proyecto se procedi a investigar y configurar adecuadamente los elementos principales encargados de envo y recepcin del mdulo bluetooth hc 06, que mediante la Tablet Samsung Galaxy 2, daremos las instrucciones necesarias para poder guiar nuestro barco, la respuesta del mismo es representada mediante unos rel que me dirn que motor estar encendido en ese momento, provocando movimiento en la direccin inducida, por dos mtodos, mediante teclas direccionales o giroscopio incluido en las aplicaciones con dispositivos del sistema OS Android.
10
Inicializar la pantalla
11
Botn deshabilitar
12
Botn salir
Controles de moviento
13
Control de giroscopio
14
Simulacin
Aqu podemos observar el giro del motor dado que obtenemos una salida de +5vcc del PIC 16F887, del circuito que observamos tenemos 4 para darle direccin al Barco.
Implementacin
VCC
R5 D1
10.0K
MOTOR1
DIR1 1 NDIR1 2
R1
330
U1
1 2 3 4 5 6 7 14 13 33 34 35 36 37 38 39 40 RE3/MCLR/VPP
TBLOCK-I2 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30 8 9 10
LED-GREEN
D3
RL1
LED-RED
R2
330 RL2
C1
22pF
X1
CRYSTAL
C2
GND 22pF
D4
LED-RED
R3
330 RL3
D2
LED-GREEN
R4
330
RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RA0/AN0/ULPWU/C12IN0RC2/P1A/CCP1 RA1/AN1/C12IN1RC3/SCK/SCL RA2/AN2/VREF-/CVREF/C2IN+ RC4/SDI/SDA RA3/AN3/VREF+/C1IN+ RC5/SDO RA4/T0CKI/C1OUT RC6/TX/CK RA5/AN4/SS/C2OUT RC7/RX/DT RA6/OSC2/CLKOUT RA7/OSC1/CLKIN RD0 RD1 RB0/AN12/INT RD2 RB1/AN10/C12IN3RD3 RB2/AN8 RD4 RB3/AN9/PGM/C12IN2RD5/P1B RB4/AN11 RD6/P1C RB5/AN13/T1G RD7/P1D RB6/ICSPCLK RB7/ICSPDAT RE0/AN5 RE1/AN6 RE2/AN7 PIC16F887 VDD=VCC VSS=GND
BLUETOOTH
1 2 3 4 RX TX GND VCC
GND VCC
MOTOR2
RL4 NDIR2 1 DIR2 2 TBLOCK-I2
15
D10
1N4007
+12V
D11 RL1
12V 1N4007
+12V
RL2
12V
Q10
RL1 BC337 RL2
Q11
BC337
D12
1N4007
+12V
D13 RL3
12V 1N4007
+12V
RL4
12V
Q12
RL3 BC337 RL4
Q13
BC337
16
'SYMBOL DIR1T= PORTC.3 'CONTROL DIRECCION MOTOR1 'SYMBOL NDIR1T=PORTC.0 'CONTROL DIRECCION MOTOR1 ' 'SYMBOL DIR2T= PORTC.4 'CONTROL DIRECCION MOTOR2 'SYMBOL NDIR2T=PORTC.5 'CONTROL DIRECCION MOTOR2 dim byte_recibido as byte
'Sub procedure Pulsout(dim byref Puerto as byte,dim Pin as byte,dim Pos as Byte) ' Setbit(Puerto,Pin) ' Delay_Cyc(Pos) ' Delay_Cyc(Pos) 'Repeticion ' Clearbit(Puerto,Pin) 'End sub SUB PROCEDURE SET_MOTOR(DIM MOTOR2,MOTOR1 AS INTEGER) '******************** MOTOR 1*************** IF(MOTOR1<0)THEN
17
MOTOR1=-MOTOR1 DIR1A=0 NDIR1A=1 ' DIR1T=0 ' NDIR1T=1 ELSE If(MOTOR1=0)THEN DIR1A=0 NDIR1A=0 'DIR1T=1 'NDIR1T=0 else DIR1A=1 NDIR1A=0 end if END IF '******************** MOTOR 2*************** IF(MOTOR2<0)THEN MOTOR2=-MOTOR2 DIR2A=0 NDIR2A=1 'DIR2T=0 'NDIR2T=1 ELSE If(MOTOR2=0)THEN DIR2A=0 NDIR2A=0 'DIR1T=1 'NDIR1T=0 else DIR2A=1 NDIR2A=0 end if END IF PWM1_Set_Duty(MOTOR1) PWM2_Set_Duty(MOTOR2) END SUB main: OSCCON = 0X75
18
TRISB =0 PORTB =0 TRISC=%10000000 PORTC = 0X00 ' Seleccin de registro analgico. 1 analgico, 0 digitales ANSEL = 0 ' AN<7:0> ANSELH =0 ' AN<13:8> UART1_Init(9600) Delay_ms(100) INTCON = 0xC0 PWM1_Init(1000)'FRECUENCIA (HZ) PWM2_Init(1000)'FRECUENCIA (HZ) PWM1_Start() PWM2_Start() PWM1_Set_Duty(0) ' VEL0CIDAD 255-> 100% MAXIMA PWM2_Set_Duty(0) ' VELOCIDAD 0->0% MINIMA
WHILE(1) IF(UART1_Data_Ready =1)THEN byte_recibido=UART1_Read() PORTB = byte_recibido select case PORTB case 0x01 SET_MOTOR(170,170) case 0x02 SET_MOTOR(-170,-170)
19
case 0x00 SET_MOTOR(0,0) case 0x03 SET_MOTOR(170,-170) case 0x04 SET_MOTOR(-170,170) end select
;libre.mbas,25 :: MOTOR2,MOTOR1 AS INTEGER) ;libre.mbas,27 :: MOVLW XORWF MOVWF MOVLW SUBWF BTFSS GOTO MOVLW SUBWF 128
IF(MOTOR1<0)THEN
;libre.mbas,29 :: BCF
PORTA+0, 0 NDIR1A=1
;libre.mbas,30 :: BSF GOTO ;libre.mbas,33 :: L_libre_SET_MOTOR2: ;libre.mbas,34 :: MOVLW XORWF BTFSS GOTO MOVLW XORWF 0
If(MOTOR1=0)THEN
PORTA+0, 0 NDIR1A=0
PORTA+0, 0 NDIR1A=0
;libre.mbas,41 :: BCF
PORTA+0, 2 end if
;libre.mbas,42 :: L_libre_SET_MOTOR6: ;libre.mbas,43 :: L_libre_SET_MOTOR3: ;libre.mbas,45 :: MOVLW XORWF MOVWF MOVLW SUBWF BTFSS GOTO MOVLW SUBWF 128
END IF
IF(MOTOR2<0)THEN
L_libre_SET_MOTOR41: BTFSC GOTO ;libre.mbas,46 :: MOVF SUBLW MOVWF MOVF BTFSS ADDLW CLRF SUBWF STATUS+0, 0 L_libre_SET_MOTOR8 MOTOR2=-MOTOR2
;libre.mbas,47 :: BCF
DIR2A=0
PORTB+0, 5 NDIR2A=1
;libre.mbas,48 :: BSF GOTO ;libre.mbas,51 :: L_libre_SET_MOTOR8: ;libre.mbas,52 :: MOVLW XORWF BTFSS GOTO MOVLW XORWF 0
If(MOTOR2=0)THEN
PORTB+0, 5 NDIR2A=0
DIR2A=1
PORTB+0, 5 NDIR2A=0
;libre.mbas,59 :: BCF
PORTB+0, 3 end if
END IF
23
; end of libre_SET_MOTOR
_main:
OSCCON+0 TRISA =0
PORTA =0
TRISD =0
PORTD =0
TRISB =0
PORTB =0
;libre.mbas,79 ::
TRISC=%10000000
24
;libre.mbas,84 :: CLRF
ANSELH+0 UART1_Init(9600) 51 SPBRG+0 TXSTA+0, 2 _UART1_Init+0 Delay_ms(100) 2 R11+0 4 R12+0 186 R13+0
;libre.mbas,87 :: MOVLW MOVWF MOVLW MOVWF MOVLW MOVWF L__main14: DECFSZ GOTO DECFSZ GOTO DECFSZ GOTO NOP ;libre.mbas,89 :: MOVLW MOVWF 192 R13+0, 1
INTCON = 0xC0
INTCON+0
25
PWM1_Init(1000)'FRECUENCIA (HZ)
;libre.mbas,93 :: CALL
_PWM1_Start+0 PWM2_Start()
;libre.mbas,94 :: CALL
IF(UART1_Data_Ready =1)THEN
_UART1_Data_Ready+0
26
;libre.mbas,103 :: CALL MOVF MOVWF ;libre.mbas,104 :: MOVF MOVWF ;libre.mbas,106 :: MOVF XORLW BTFSS GOTO R0+0, 0 PORTB+0
case 0x01
;libre.mbas,107 :: MOVLW MOVWF CLRF MOVLW MOVWF CLRF CALL GOTO L__main26: ;libre.mbas,108 :: MOVF XORLW BTFSS GOTO 170
case 0x02
;libre.mbas,109 :: MOVLW MOVWF MOVLW MOVWF MOVLW MOVWF MOVLW MOVWF CALL GOTO L__main29: ;libre.mbas,110 :: MOVF XORLW BTFSS GOTO 86
SET_MOTOR(-170,-170)
case 0x00
;libre.mbas,111 :: CLRF CLRF CLRF CLRF CALL GOTO L__main32: ;libre.mbas,112 :: MOVF XORLW BTFSS GOTO
case 0x03
;libre.mbas,113 ::
MOVLW MOVWF CLRF MOVLW MOVWF MOVLW MOVWF CALL GOTO L__main35:
case 0x04
;libre.mbas,116 :: MOVLW MOVWF MOVLW MOVWF MOVLW MOVWF CLRF CALL GOTO L__main38: L__main23: ;libre.mbas,118 :: L__main21: ;libre.mbas,122 :: GOTO L__main16 86
end select
WEND
29
$+0
hc
Caractersticas de transmisin
Esquemticos bsicos
31
Aqu podemos ver las conexiones fsicas entre el bluetooth y el pic, tambin las borneras en las cuales van a ir conectadas las entradas de nuestra etapa en la que controlamos a los motores de alta corriente.
32