Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

El botón Trump

Componentes y suministros

Arduino MKR Fox 1200
× 1

Aplicaciones y servicios en línea

Sigfox
API de mensajería SMS Twilio

Acerca de este proyecto

Introducción

Todos hemos oído hablar del botón que usa Trump para pedir una Coca-Cola Light, ¿verdad? (http://time.com/4758059/donald-trump-coke-nuclear-button/)

Bueno, pensamos que podríamos construir una versión mejor usando la red Sigfox. Todo lo que necesita es un botón voluminoso, una placa Arduino MKRFox1200 y una cuenta Twilio para enviar el mensaje de texto.

¿Qué es Sigfox?

Sigfox proporciona una red global, simple y energéticamente eficiente para el Internet de las cosas. La red Sigfox está actualmente disponible o se está implementando en 32 países. La red complementa los sistemas existentes de gran ancho de banda al proporcionar una transmisión bidireccional, económica y de baja potencia de pequeñas cantidades de datos a largas distancias. La tecnología Sigfox es compatible con cientos de socios de soluciones y hardware.

1. Requisitos de hardware

  • Arduino MKRFox1200
  • Un botón grande
  • Batería LiPo o baterías 2xAA / AAA
  • Un interruptor de botón
  • etiqueta engomada de thethings.io
  • Y, por supuesto, una máscara de Trump

Estamos usando un interruptor de botón conectado a los pines 7 y GND del Arduino. En estado normal, el interruptor está cerrado. Al presionar el botón se abre el interruptor. El estado del interruptor se puede invertir fácilmente en el código Arduino.

2. Código Arduino

Puede recuperar el código Arduino en GitHub:https://github.com/aureleq/TrumpButton

Usamos la biblioteca de baja potencia para poner la placa en un sueño profundo. Se utiliza una interrupción para reactivar el tablero y enviar un mensaje Sigfox:

  // conecta el pin del interruptor y habilita la interrupción en el evento de aumento de voltaje pinMode (SWITCH_PIN, INPUT_PULLUP); LowPower.attachInterruptWakeup (SWITCH_PIN, buttonPressed, RISING); // el interruptor está cerrado por defecto, se abre al presionar el botón void loop () {// Dormir hasta que se reconozca un evento LowPower.sleep (); // si llegamos aquí significa que se recibió un evento Serial.println ("¡Botón pulsado!"); retraso (100); sendString (carga útil);}  

3. Twilio

  • Regístrese gratis aquí
  • Agregue un nuevo número en los "ID de llamada verificados" (número de teléfono para recibir la notificación)
  • Tome nota del Número de teléfono de Twilio generado , SID DE LA CUENTA y Auth TOKEN:

4. Configuración de devolución de llamada de Sigfox

  • Conéctese a su cuenta de backend de Sigfox. Si no ha registrado su placa Arduino, puede activarla aquí:https://backend.sigfox.com/activate/
  • Seleccione el Tipo de dispositivo de su dispositivo Arduino. Enlace al Tipo de dispositivo está disponible en la Información categoría.

Cree una nueva devolución de llamada personalizada con los siguientes parámetros:

  • Escriba: DATA UPLINK
  • Canal: URL
  • Patrón de URL: https:// [AccountSID]:[AuthToken]] @ api.twilio.com / 2010-04-01 / Accounts / [AccountSID] /Messages.json
  • Utilice el método HTTP: POST
  • Tipo de contenido: application / x-www-form-urlencoded
  • Cuerpo: From =[YourTwilioPhonenumber]] &To =[PhoneNumber] &Body = covfefe!

El mensaje de texto covfefe! se enviará cada vez que se presione el botón.

5. Validación

¡Aprieta firmemente el botón y espera a que el mayordomo te traiga una bebida!

Código

  • Código fuente de Arduino
Código fuente de Arduino Arduino
 / * * @aureleq * * Descripción:Envía un mensaje Sigfox al presionar un botón * El botón debe estar conectado entre GND y el pin 7 de forma predeterminada * Se están utilizando interrupciones para habilitar el modo de bajo consumo. * Como la placa estará en modo de suspensión la mayor parte del tiempo, se debe realizar un reinicio de la placa para cargar un nuevo boceto (toque dos veces en el botón de reinicio) * / # include  #include  const uint8_t SWITCH_PIN =7; const String payload ="¡COQUE AHORA!"; Const uint8_t debug =false; void setup () {if (debug ==true) {Serial.begin (9600); while (! Serial) {}; } if (! SigFox.begin ()) {Serial.println ("¡Error de escudo o no está presente!"); regreso; } // Habilite el led de depuración y deshabilite el sueño profundo automático // Comente esta línea cuando envíe su proyecto :) //SigFox.debug (); Serial.println ("Escudo Sigfox detectado"); ID de cadena =SigFox.ID (); Serial.println ("ID =" + ID); retraso (100); // Envía el módulo al sueño más profundo SigFox.end (); // adjuntar el pin del interruptor y habilitar la interrupción en el evento de aumento de voltaje pinMode (SWITCH_PIN, INPUT_PULLUP); LowPower.attachInterruptWakeup (SWITCH_PIN, buttonPressed, RISING); // el interruptor está cerrado por defecto, se abre al presionar el botón} void loop () {// Dormir hasta que se reconozca un evento LowPower.sleep (); // si llegamos aquí significa que se recibió un evento Serial.println ("¡Botón pulsado!"); retraso (100); sendString (payload);} void sendString (String str) {// Inicia el módulo SigFox.begin (); // Espere al menos 30 mS después de la primera configuración (100 mS antes) delay (100); // Borra todas las interrupciones pendientes SigFox.status (); retraso (1); SigFox.beginPacket (); SigFox.print (str); int ret =SigFox.endPacket (); // enviar búfer a la red SIGFOX if (ret> 0) {Serial.println ("Sin transmisión"); } else {Serial.println ("Transmisión correcta"); } Serial.println (SigFox.status (SIGFOX)); Serial.println (SigFox.status (ATMEL)); SigFox.end ();} botón vacío presionado () {} 
Github
https://github.com/aureleq/TrumpButton

Proceso de manufactura

  1. Botón
  2. La red de área privada se basa en la red pública de Sigfox
  3. Atenuación de luces con PWM usando el botón pulsador
  4. Capturando las gotas de agua con Arduino
  5. Giftduino - La caja de regalo perfecta para Arduino
  6. Cómo hacer un botón de teclado perforable personalizable
  7. Cómo medir la masa de la Tierra usando Arduino
  8. Uso del sensor de pulso portátil MAX30100 con Arduino
  9. Cree la aplicación Fridgeye con una pantalla Nextion
  10. Uso del sensor de humedad del suelo YL-39 + YL-69 con Arduino
  11. Health Band:un asistente inteligente para los ancianos