Forum 2005-2010 (read only) > Español

Seguridad Casera

(1/1)

comodin2002:
Hola a tod@s:

Me gustaría montar mi propia seguridad en mi casa basandome en Arduino.
He estado leyendo mucho y creo que lo básico que necesitaría para controlar 2 sensores de movimiento (uno junto al arduino y otro wireless en la entrada de la puerta) sería:

(disculpad que ponga enlaces a tiendas pero quiero estar seguro.
- Arduino + un modulo de comunicaciones entre la puerta de entrada y la placa arduino http://www.libelium.com/tienda/catalog/product_info.php?products_id=40{7}9
- 2 PIR sensor http://www.libelium.com/tienda/catalog/product_info.php?cPath=24&products_id=53

Necesitaría algún hardware más .. entendiendo que el ordenata al que se conectará el arduino tiene puerto serie

Muchas gracias

jcgalvezv:
Hola.

Yo creo que le saldría mas barato y sería más flexible si usa productos X10. Un par de sensores de movimiento comprados en ebay y el daughter board del TM751 conectado a Arduino sería una buena solución.

Busque en google "TM751 daughter board" y "X10 wireless protocol".

Actualmente el sistema de seguridad de mi casa esta basado en una solución similar, pero en lugar de Arduino uso un router Netgear WGT634U con OpenWrt (Linux) instalado y en el unos programas en lenguaje C desarrollados por mi que me envía mensajes al celular vía correo electrónico indicandome la zona de la casa en la que se ha detectado movimiento.

Cordialmente,

Juan Carlos.

comodin2002:
Muchas gracias Juan Carlos por tu respuesta. Me has dado un buen norte ... apenas había escuchado hablar del X10 y desde que leí tu respuesta no hago otra cosa ;-))

Me encantaría que me dieras más información sobre lo que has montado pues es precisamente lo que estoy buscando .. que mi casa me mande mensajes a mi móvil, incluso fotos.

Por otro lado no comprendo como con el router Netgear que me comentas puedes conectarte con X.10 .. que tipo de pasarela usas?

siento ser tan novato en esto .. espero aprender pronto .. a ver ...
Los sensores de movimientos a qué se debería de conectar? Me imagino que a un modulo TM751 para que desde el otro TM751 que está enganchado al Arduino se entere y luego sea la programación del Arduino el que le indique al ordenador al que está enganchado que envie un e-mail, no?

Por otro lado veo que usas un Firecraker para enviar comandos  , según te leo en http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1217562002/4
quiere esto decir .. que puedo eliminar del esquema anterior el arduino y un TM751?

Ojú que lio ;-( espero que me puedas echar una mano o un croquis ;-)

jcgalvezv:
Los sensores X10 son inalámbricos. Transmiten señales de radiofrecuencia sobre una portadora de 310-315 Mhz Para norte-américa y de ~433 Mhz para europa. El TM751 recibe las señales de radiofrecuencia, las decodifica y las transmite, vía el cableado eléctrico, a los demás dispositivos X10 conectados (a dicho cableado eléctrico). Sin embargo, no toda la funcionalidad del dispositivo TM751 se necesita. Lo que hay que hacer es abrir la caja del TM751 y extractar de este la tarjeta hija (daugther board). Esta tarjeta hija es la que recibe la señal enviada por los sensores, la amplifica y la entrega vía una salida serial. Esta salida deberá ser ingresada a Arduino e interpretada para determinar cual sensor transmitió.

El protocolo esta documentado. Yo le recomiendo leer a Ido Bartana. Ahí encontrara mucha información acerca de X10 incluyendo la descripción del protocolo descrita por Eduard Cheung y por Dave Houston. Voy a explicar muy brevemente como funciona:

Normalmente el la salida esta en 0 (0 voltios). Cuando se va a iniciar la entrega de datos, la señal sube a 1 (~5 voltios) por ~9 milisegundos, luego baja a 0 por 4 milisegundos. Esta etapa es llamada preámbulo. Después del preámbulo viene los datos que corresponden a 32 bits. Deberá contar la duración del pulso bajo, al cual le antecede un pulso alto de 0.4 milisegundos. Si la duración del pulso bajo es menor a ~0.8 milisegundos el dato es un 0 binario, si es mayor entonces es un 1 binario. Use la funcion Pulsein de Arduino para contar la duración del pulso bajo. Arme con esos 32 bits 4 bytes. Los bits son recibidos desde el menos significativo (el primero recibido) hasta el mas significativo (el último). Con los 8 primeros bits conforme un byte /lamemoslo el cuarto byte), con los siguientes 8 el tercero, los siguientes el segundo y los siguientes el primero. El byte 1 es el complemento del 2 y 3l byte 3 es el complemento del 4. Aunque solo va a usar los bytes 2 y 4, debe verificar que el uno sea complemento del 2 y el 3 del 4, así garantiza que los datos fueron decodificados correctamente. Bueno, creo que esta es la parte dificir del asunto, la decodificación de los bytes 2 y 4 para determianr cual sensor fue el que transmitió esta descrita en los documentos mencionados anteriormente. En mi explicación no pretendo sustituri dichos documento que deberá leer una y otra vez hasta lograr entenderlos plenamente.


--- Code: ---
  ---------------            --------          ---------                    -
  |                  |            |         |          |          |                    |
---                   ----------         ---------           --------+-------
  |      9msec    | 4msec  |0.4ms|0.7ms| 0.4ms |   1.1 msec     |

--- End code ---


El programa escrito por Tom Laureanno para Parallax le será de muchísima utilidad y Este diagrama esquemático de su solución le mostrara las conexiones a la tarjeta hija del TM751.

Con respecto a la conexión del TM751 al router, la data entregada por la tarjeta hija del TM751 es recibida por un microcontrolador Microchip PIC12F629, decodificada y entregada vía puerto serial al router.

El Firecracker es útil para simular un control remoto inalámbrico X10 y no creo que le sea de mucha utilidad en su proyecto actual. Sin embargo, si va a comprar cosas X10 aproveche y compre uno.

Saludos,

Juan Carlos.

comodin2002:
De nuevo te doy las gracias Juan Carlos ...

Desde que leí tu post, estoy intentando asimilar los enlaces  ;)

Una cosa es cierta, por a tirar por X.10

Navigation

[0] Message Index

Go to full version