Parpadea con LED antiguos o cuando advertimos de "incendios" en el proyecto


La rutina es un campo enorme para la automatizaci√≥n. Si una tarea requiere mucha energ√≠a, requiere perseverancia y se repite de vez en cuando, esta es una se√Īal segura de que se deben tomar un par de pasos para reducir este dolor recurrente. Y puede convertir la implementaci√≥n en un buen technofanchik.


Hoy hablaré sobre la automatización del sistema de alerta, monitoreo y alertas. Debajo del corte, una luz intermitente polaca en 1984 y ni un solo disparo fallido. El código y las instrucciones de montaje están incluidos.


Recientemente cumpl√≠ 8 a√Īos. 8 a√Īos desde que trabajo en 2GIS. En esta ocasi√≥n, un amigo pregunt√≥: ‚Äú¬ŅC√≥mo aguantas tanto tiempo? ¬ŅNo hab√≠a deseo de probar algo nuevo?


Surgi√≥. Y a√ļn surge. Y todav√≠a lo intentas. Me pruebo en nuevos roles, equipos, tecnolog√≠as. Por que no Despu√©s de todo, el trabajo no es solo y no se trata tanto de "venir a las 9:00, abrir un administrador de tareas y asumir otra tarea, ir a casa a las 18:00" y ni siquiera "¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬°¬° Nuevamente somos DDoS'yat, vamos a presionar request_limit aqu√≠ mismo, y aqu√≠ vamos a sacudir las IP, y aqu√≠ ... Oh, ¬Ņc√≥mo es que ya son las 3 de la ma√Īana? " Todo esto est√° mal. El trabajo se trata del equipo, las relaciones, las reuniones nocturnas en la cocina. Sobre tareas interesantes y un ambiente de vida confortable, despu√©s de todo. Todo mata la indiferencia y la rutina. No s√© c√≥mo trabajar con el primero, no me di cuenta por m√≠ mismo, pero les contar√© sobre el segundo.


Hoy nos saldremos de los caminos trillados: un semáforo en la oficina , y uno más ; y automatizar alertas, monitoreo y alertas. Pero para hacer el próximo semáforo para el servidor de compilación, se fue. Tenemos muchas construcciones, sucursales y pruebas, pero no queremos robar el depósito de la policía de tránsito por una docena de semáforos. ¡Visualizaremos los "fuegos"!


Sistema de monitoreo est√°ndar



Aquí hay una pantalla típica que cuelga en nuestra oficina. El 95% del tiempo, muestra cuán animado es nuestro proyecto y qué le sucede. Paralelamente, hay un canal en Slack con notificaciones de lanzamientos y errores.


Para no distraer a todo el equipo, se nombra a un oficial de servicio durante una semana, que act√ļa como maestro de liberaci√≥n y se dispara a s√≠ mismo si sucede algo terrible. Su tarea es descubrir lo que sucedi√≥, y arreglarlo usted mismo, o encontrar a alguien que lo arregle.


También utilizamos este monitor para las reuniones diarias: abrimos el tablero de Kanban en Jira y nos vamos.


Que esta mal


El estado de servicio no cancela las tareas de trabajo. Si la persona responsable de los incendios vagó demasiado lejos en los pasillos de su mente, el resultado puede ser menos operativo de lo requerido. Esto llevó a la idea de que para una felicidad completa necesitamos una advertencia más significativa que las notificaciones interminables de Slack.


¡Automatízalo!


La idea se hizo más fuerte cuando se descubrió en el Avito un excelente flasher polaco vintage de 1984. Si hay un incendio en alguna parte, ¡entonces encienda esto! La cosa fue prometida incluso en condiciones casi de trabajo. 500 rublos y ella está en mi mochila. Así que agreguemos un poco de IoT hype y bocetos arduino.



Plan de acción


¡El plan era simple y brillante! Tomamos una fuente de alimentación de 12 voltios, agregamos un Sonoff SV - esp8266 con un relé y todos los flejes y la alimentación necesarios de 12 voltios. Estamos parpadeando algo como http://wifi-iot.ru/ , atrapamos una luz intermitente: ¡lucro! Tenemos un dispositivo conectado a través de Wi-Fi con una API REST y otras 1000 funciones.


Sobre gastos



Cable de alimentación con un enchufe plano de la radio de una abuela o del mercado de productos de radio más cercano: 60 rublos
Fuente de alimentación 12v 10w con Aliexpress o todos los mismos productos de radio - 260 rublos
Sonoff SV - $ 4.85 + envío
Flasher vintage - no tiene precio (500 rublos)


Opinión corporativa de Wi-Fi


Para acciones tan audaces, el Wi-Fi corporativo con certificados EAP-PEAP y otras palabras aterradoras dijeron "¬°No pasar√°s!".



Puede arremangarse, google https://github.com/esp8266/Arduino/issues/1032 , tome un SDK nuevo y escriba todo usted mismo rápidamente. Pero entonces el tecnofanch se convierte en una larga excavación y debate. Pospondré esta opción hasta el lanzamiento de la versión 2.0, mejorada y reparada.


Productos blandos


Tome el amado olartamonov Arduino, una dispersi√≥n de lo que ha estado desempolvando en cajones durante N a√Īos, y recoja un monstruo de Frankenstein. Un almac√©n de piezas para el hogar ser√° suficiente para verificar la viabilidad del MVP y desecharlo despu√©s de depurar la hermosa y brillante versi√≥n 2.0.



La solución es torpe: Arduino se conecta a la red a través de Ethernet, recibe IP a través de DHCP, escucha las solicitudes HTTP y parpadea el "LED". Cualquiera en la noche puede armar una solución de este tipo de ejemplos de IDE Arduino (pero nunca, ¡escuchen, nunca la usen! Esto es un infierno).


¬ŅQu√© usar?

Para aquellos que todav√≠a est√°n llorando, pinchando, pero a√ļn comiendo un cactus, sugiero que se transfieran al menos a PlatformIO (instalado en Atom o VSCode), pero es mejor no usarlo en absoluto, sino leer un curso de conferencias sobre STM32 o algo m√°s √ļtil. Y yo, tan mordido como un ni√Īo por arduinistas, terminar√© mi acto sucio :)


El código está publicado en github , no hay autorización, API ramificada y hermosas páginas html. ¡Solo MVP, solo hardcore! Use bajo su propio riesgo, advertí.


Productos sólidos


Cuando se escribe el software, es hora de iniciar una luz intermitente. A continuación se muestra un diagrama que debería ayudar a comprender el dispositivo.


En espera:



Realidad:



Entonces reemplace Sonoff SV con:
Arduino UNO + wiznet w5100 + Relé


Conexión por pines:
DIGITAL 10 - SS
DIGITAL 11 - MOSI
DIGITAL 12 - MISO
DIGITAL 13 - SCK
GND - GND
5V - 5V


Conectamos el rel√© a√ļn m√°s f√°cilmente: el pin de se√Īal en DIGITAL 4, el cable de alimentaci√≥n al intermitente lo conectamos en el espacio en C (com√ļn) y NC (normalmente cerrado).


Achtung!
Consulte la documentaci√≥n de sus dispositivos. ¬°No es un hecho que conectando una placa Ethernet a 5 voltios no obtendr√° un humo extra√Īo cuando realice las pruebas! En mi caso, todo es normal y el m√≥dulo est√° dise√Īado para una potencia de 5 voltios.


Productos plasticos


Un anuncio en Avito dijo que la luz intermitente estaba casi operativa. Con los a√Īos, solo un detalle ha muerto en √©l: el engranaje girando el reflector.



Exhalamos, tomamos Fusion360 en nuestras manos, simulamos uno nuevo e imprimimos en una impresora 3D de oficina.


Proceso de modelado de engranajes

Verificamos los radios y otras características del engranaje, luchamos con los parámetros de subextrusión y rebanadora


Seguimos modelando


Imprimimos, probamos


Personaliza un poco más e imprime de nuevo. Los remaches originales fueron taladrados y reemplazados con una combinación de tornillos M3 convencionales y tuercas autoblocantes. No te olvides de agregar asientos para ellos.



Lubrique los engranajes, reemplace los cables, vuelva a armar, ¬°funciona!


Ser√≠a bueno imprimir el engranaje de nylon, pero la primera letra peque√Īa fall√≥ y la segunda sonda de Bestfilament ya no fue suficiente para la segunda.


Para qué estamos, ¡pase lo que pase!



¬ŅC√≥mo hacer que se encienda la luz intermitente cuando sucede algo fuera de lo com√ļn?


Elemental! Utilizamos Grafana en el trabajo, por lo que acabamos de comenzar un nuevo canal de notificaci√≥n con el tipo WebHook, que env√≠a una solicitud para encender la luz de emergencia de acuerdo con ciertos criterios. Se apaga despu√©s de unos segundos, para no escalar la atm√≥sfera a√ļn m√°s.


¬ŅCu√°nto tiempo tom√≥ todo este desastre? Un par de noches, si no distra√≠do. Adem√°s, medio d√≠a de tiempo de trabajo para configurar la integraci√≥n con otros sistemas internos.


El technofanchik fue exitoso, el equipo trajo beneficios, finalmente se presentan fotos del proceso de ensamblaje.


Aquí está frente a nosotros, una luz intermitente con cables






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


All Articles