A mi manera: cómo me negué a comprar una puerta de enlace de noolita y la reemplacé con mi bicicleta



Esta historia comenzó hace un año y medio, cuando las unidades de control de iluminación "noolita" cayeron en mis manos (bueno, como lo obtuve, lo compré yo mismo, tengo debilidad por todo tipo de hardware interesante). Luego a mi disposición había dos bloques de la serie SB y el adaptador MTRF-64. Los bloques de esta serie me atrajeron por el hecho de que pueden incrustarse en el cableado de la casa sin rehacerlo significativamente: saqué un interruptor e inserté un bloque en su lugar, y colgué el interruptor en los cables especialmente retirados del bloque. En esta configuración, la luz se puede controlar tanto desde un canal de radio como, según los clásicos, mediante un interruptor. Hay, por supuesto, una desventaja: los bloques de esta serie no admiten comentarios, pero me gustaría, porque en MTRF-64 lo es, pero bueno. Pero luego me negué a comprar una puerta de enlace a favor de un adaptador, su potencial es más amplio que el de una puerta de enlace.

Habiendo parpadeado mucho con el candelabro, había un deseo de llevarlo todo a un denominador común, pero, aparentemente, otras piezas interesantes de hierro eclipsaron este deseo, porque los bloques fueron enviados a una caja distante. Entonces habrían estado allí si, hasta hace poco, no les hubiera prestado atención más precisamente sobre la capa de polvo indecentemente gruesa .


Bloque de alimentación SB-1-150 y MTRF-64

Inmediatamente apareció una imagen en mi cabeza en la que apago la luz antes de acostarme sin levantarme de la cama, o uso el guión de "Me voy" con un clic de un botón, apagando todo lo que debería apagarse en mi ausencia.

Finalmente, se decidió actuar. ¿Por qué comencé a remachar mi bicicleta y no compré el sistema terminado de inmediato? Solo porque quería hacer algo con mis propias manos. Conoces este sentimiento cuando juntas algo, y funciona. Además, finalmente comienzo a aprender un lenguaje orientado a objetos usando un ejemplo de un proyecto real (elegí python 3).

Idea


Es simple: controle las luces y los electrodomésticos desde cualquier lugar de la casa. Como el dispositivo de control principal seleccionó Raspberry Pi modelo B + junto con el MTRF-64. Debido a la falta de experiencia en el desarrollo de tales aplicaciones, se decidió comenzar con algo simple. Entonces llegué a la implementación del bot Telegram.


Raspberry Pi B + y MTRF-64

Por mi parte, decidí que por primera vez las siguientes funciones de bot serían suficientes para mí:

  • Control de luz y electrodomésticos;
  • Soporte para dispositivos regulables (luz, campana, etc.);
  • La distribución de dispositivos por sala;
  • Soporte para scripts para administrar rápidamente un grupo de dispositivos;
  • Agregar usuarios y distribuirlos en grupos: propietarios (pueden controlar dispositivos en la casa, tener acceso a la configuración de la casa), invitados (pueden controlar dispositivos en la casa, no tienen acceso a la configuración de la casa), suscriptores (espere hasta que el propietario los invite a la casa) .

Instalación


Para comenzar, descargue el sistema operativo para nuestro pastel de frambuesa. Prefiero el oficial para este chal de Raspbian . Es conveniente cargar una imagen en un CD utilizando la utilidad Win32DiskImager.

Aquí estaba esperando una pequeña captura
El hecho es que estoy acostumbrado a trabajar con frambuesa de forma remota, pero debido al hecho de que en versiones recientes de Raspbian SSH el acceso está deshabilitado de forma predeterminada, tuve que acercarme al uso de este adaptador USB-UART



1. Conecte todo e inicie sesión:

login: pi password: raspberry 

2. Para comenzar, es recomendable asegurarse de utilizar las últimas versiones de los programas. Puede pensar: acabamos de descargar el kit de distribución, ¿dónde está nuevo? Pero no ...

 sudo apt-get update sudo apt-get -y dist-upgrade 

3. Instalamos el administrador de paquetes pip3 y git:

 sudo apt-get install -y python3-pip git 

4.Descargue las bibliotecas necesarias para que el bot funcione. Utilizo la biblioteca pyTelegramBotAPI, que se encarga de todos los matices de enviar y recibir solicitudes HTTP, lo que me permite concentrarme directamente en la lógica:

 sudo pip3 install pytelegrambotapi pyserial 

5. Descargue el bot:

 sudo git clone https://github.com/DZimasik/nooBot.git 

Antes de iniciar el bot, debe registrarlo, es decir obtener su identificación única (token). Otro bot especial nos ayudará a hacer esto: @BotFather . Simplemente envíelo a él / newbot y él solicita un nombre para nuestro nuevo bot, este nombre se mostrará en la lista de contactos de Telegram. Además, BotFather ofrece crear un nombre de usuario bot único. La única limitación es que el nombre de usuario debe terminar en "bot". El nombre de usuario también se usa para buscar un bot, entre muchos otros.

En principio, esto es suficiente para comenzar. Algunos perfeccionistas aquí pueden pedirle al bot un avatar o escribir un mensaje de bienvenida. Después de ingresar todo, BotFather devolverá el token:



6. Agregue el token al archivo config.py

 sudo nano /home/pi/nooBot/config.py 

 token = '_' # Insert your token from BotFather 

7. Finalmente, puedes iniciar el bot:

 sudo python3 /home/pi/nooBot/noobot.py 

Enviar a nuestro bot / inicio . Si el token se ingresa correctamente, aparecerá el teclado y veremos un mensaje:


Planifica para el futuro


En esta etapa, controlo la luz en el dormitorio y el pasillo, pero en el futuro planeo comprar más unidades de potencia (esta vez con retroalimentación) y cambiar toda mi iluminación al control remoto. También hay planes para agregar soporte de retroalimentación al bot para que sea posible averiguar el estado de los dispositivos y los parámetros de los sensores en la casa, estando fuera de él.

Eso es todo por ahora. Estaré encantado de escuchar tu opinión. Bueno para todos!

Enlaces utiles:

Source: https://habr.com/ru/post/es414829/


All Articles