Se tomó un mando inalámbrico de apertura de puerta de garage y se usó un dispositivo RTL-SDR de bajo costo para analizar su comportamiento.
Este fue el SDR usado:
Se realizó el siguiente
procedimiento:
1-
Verificación de
la frecuencia de operación. Se realizó el diseño en simunlik colocando el
receptor RTL-SDR sintonizadolo hasta obtener la frecuencia central de recepción
en la mitad de la gráfica de espectro. Se fijó la frecuencia en 433.86MHz.
En las sigueintes
gráficas se peude ver en diseño de simulink, el analizador de espectro con la
señal recibida y la serie de tiempo.
En el análisis de espectro se observa que hay una única frecuencia que no cambia, correspondiendo al comportamiento de la modulación ASK
En la serie de tiempo se puede verificar que efectivamente se trata de una modulación ASK. La serie de tiempo muestra los canales I/Q
2. Adición de bloque de valor absoluto. Este bloque toma el
valor absoluto del mayor valor en su entrada, lo que permite tener una sola
curva en la serie de tiempo.
Diseño simulinK:
Serie de tiempo de la salida original y luego del paso por
el bloque de valor absoluto.
3. Uso del bloque de integración y vaciado “integrate and
dump”.
Luego de la salida del bloque de valor absoluto se usa un
bloque que se encarga de hace una suma acumulativa de las muestras obtenidas cada
cierta cantidad N de muestras (number obf samples) para graficar un valor único
representativo de ese rango de muestras, con lo cual se obtiene el
suavizamiento de la serie de tiempo.
Para su configuración se tiene en cuenta la cantidad de
muestras que hace el bloque RTL-SDR, en este caso se configuró para hacer
muestras a 1MHz:
Con una frecuencia de muestreo de 1 MHz se tendrán 1 millon
de muestras por segundo. Se analiza el tiempo de duración de cada uno de los
pulsos de ASK:
Con ayuda de los marcadores de la serie de tiempo se haya
que un pulso dura aproximadamente 420uS. Quiere decir que en 1 segundo pueden
existir hasta
Nask= 1S/420uS = 2380
Dodne Nask es la cantidad de pulsos posibles. 2380 pulsos en
1 segundo, aproximadamente.
Dado a que, como se mencionó, se toman 1 millon de muestras
por segundo, cada pulso tiene aproximadamente 1000000muestras/2380muestras =
420 muestras, aproximadamente.
Quiere decir que si se aplica un factor mayor a 420 en el
bloque de “integrate and dump” se perderá información. Por otro lado el bloque
“integrate and dump” solo permite multiplos de 1024, por lo cual se decide usar
un factor de 128, lo cual hace el mayor suvizado de los datos, sin perder
información.
En la siguiente gráfica se pueden observar las 2 series de tiempo anteriores, y en la última posición la salida del bloque de Integrate and dump, logrando el suavizado de la serie y logrando identificar los bits de la transmisión
4. Análisis de datos.
Se ralizaron varias pruebas en donde se identificaron cosas
como:
Dentro de la codificación usada por el control remoto existe
un estándar asociado al inicio de la transmisión. En todas las pruebas se vió
que el transmisor envía 22 pulsos alternados 1,0 de ASK y luego hace una pausa
(tiempo de guarda) del equivalente a 16 pulsos:
La duración de pulsos puede variar al cambiar entre
combinaciones, lo cual puede indicar el uso de un código de línea:
Entre transmisiones continuas hay un tiempo de guarda de 16
mS:
Al transcribir a 1’s y 0’s se observa que existe algún tipo
de codificación (como lo indica la hoja de datos del fabricante) que hace que
el código enviado no sea siempre el mismo. Sin embargo los bits de inicio y
parada son siempre los mismos. A continuación, algunas tramas trascritas: