Otra cosa práctica en NodeRed es que también puede activar fácilmente comandos comunes de Linux a través del nodo NodeRed.
Por ejemplo, su RaspberryPi se puede apagar o reiniciar fácilmente. Puede encontrar ejemplos e información sobre esto en el siguiente artículo.
Requisitos
Artículos útiles:
Para que pueda instalar nuevos nodos, por supuesto, NodeRed ya debería estar instalado.
En los siguientes artículos se describe cómo preparar una RaspberryPi y luego instalar NodeRed en ella.
Los siguientes tres artículos describen lo que se debe hacer para preparar la RaspberryPi:
RaspberryPi: ¡configuración para nerdiys!
RaspberryPi – ¡La primera configuración!
RaspberryPi: controle el RaspberryPi a través de SSH
NodeRed: instalación de NodeRed en RaspberryPi
Herramienta requerida:
-No-
Material requerido:
En la siguiente lista encontrará todas las piezas que necesita para implementar este artículo.
Inicie sesión en la interfaz de configuración de NodeRed
Antes de que pueda editar su configuración de NodeRed, debe, si está activado, primero iniciar sesión en la interfaz de configuración de NodeRed.
Apagado simple con solo presionar un botón
Dos nodos simples son suficientes para simplemente apagar su RaspberryPi.
A la izquierda puedes ver la estructura de dos nodos, que ya son suficientes para apagar tu RaspberryPi desde el entorno NodeRed.
Puedes encontrar el código para esto aquí:
[ { "id": "7c9a271.bf32bd8", "type": "inject", "z": "9ccc4e725c3673aa", "name": "shutdown!", "repeat": "", "crontab": "" , "once": false, "topic": "", "payload": "", "x": 520, "y": 1760, "wires": [ [ "e58b5ea3.57e91" ] ] }, { " id": "e58b5ea3.57e91", "type": "exec", "z": "9ccc4e725c3673aa", "command": "sudo poweroff #", "append": "", "useSpawn": "", " nombre": "apagar Pi", "x": 694, "y": 1759, "cables": [ [], [], [] ] } ]
Apagado con pregunta de seguridad en el tablero
En el siguiente código se incluye un atajo un poco más lujoso. A veces te confundes. Y aunque todavía no has guardado todo y no quieres apagar la Raspberry Pi, a veces accidentalmente haces clic en el botón "Apagar".
Para evitar algo como esto, una simple pregunta es suficiente si está realmente seguro de que desea apagar la RaspberryPi.
A la izquierda puedes ver el flujo descrito. Sólo después de haber confirmado el comando de apagado se ejecutará.
Puedes encontrar el código para esto aquí:
[ { "id": "1702b798.ee9108", "type": "exec", "z": "9ccc4e725c3673aa", "command": "sudo shutdown -h now", "addpay": false, "append": "", "useSpawn": "", "timer": "", "name": "Shutdown", "x": 1020, "y": 2020, "wires": [ [], [], [] ] }, { "id": "7fcdbec0.5807", "type": "function", "z": "9ccc4e725c3673aa", "name": "", "func": "if (msg.payload=='Abbrechen'){msg.payload=false;} else if (msg.payload=='OK'){ msg.payload=true;return msg;}", "outputs": 1, "noerr": 0, "x": 890, "y": 2020, "wires": [ [ "1702b798.ee9108" ] ] }, { "id": "25c2c1c0.47385e", "type": "ui_toast", "z": "9ccc4e725c3673aa", "position": "dialog", "displayTime": "3", "highlight": "", "sendall": true, "outputs": 1, "ok": "OK", "cancel": "Cancel", "raw": false, "topic": "Really?", "name": "Really?", "x": 760, "y": 2020, "wires": [ [ "7fcdbec0.5807" ] ] }, { "id": "3ff7e395.fd757c", "type": "ui_button", "z": "9ccc4e725c3673aa", "name": "", "group": "c50fec45.1c008", "order": 4, "width": 0, "height": 0, "passthru": false, "label": "Server Powerdown", "tooltip": "", "color": "", "bgcolor": "red", "icon": "", "payload": "Sicher?", "payloadType": "str", "topic": "", "x": 590, "y": 2020, "wires": [ [ "25c2c1c0.47385e" ] ] } ]
Reiniciar Raspberry Pi
Lo que funciona al apagar también funciona al reiniciar. Así que aquí está el flujo para reiniciar su RaspberryPi desde el tablero o la interfaz de NodeRed.
A la izquierda puede ver el flujo con el que se puede reiniciar su RaspberryPi.
Puedes encontrar el código para esto aquí:
[ { "id": "df20eac13fdcba2e", "type": "exec", "z": "9ccc4e725c3673aa", "command": "sudo reboot", "addpay": false, "append": "", "useSpawn": "", "timer": "", "name": "Reboot", "x": 1140, "y": 2300, "wires": [ [], [], [] ] }, { "id": "02e02a3df0b16d3d", "type": "function", "z": "9ccc4e725c3673aa", "name": "", "func": "if (msg.payload=='Abbrechen'){ msg.payload=false;} else if (msg.payload=='OK'){msg.payload=true; return msg;}", "outputs": 1, "noerr": 0, "x": 990, "y": 2280, "wires": [ [ "df20eac13fdcba2e" ] ] }, { "id": "55940c40590b5819", "type": "inject", "z": "9ccc4e725c3673aa", "name": "", "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "", "payloadType": "date", "x": 720, "y": 2320, "wires": [ [ "df20eac13fdcba2e" ] ] }, { "id": "cd3f522e2a28e48a", "type": "ui_toast", "z": "9ccc4e725c3673aa", "position": "dialog", "displayTime": "3", "highlight": "", "sendall": true, "outputs": 1, "ok": "OK", "cancel": "Cancel", "raw": false, "topic": "Really?", "name": "Really", "x": 870, "y": 2280, "wires": [ [ "02e02a3df0b16d3d" ] ] }, { "id": "38d0494f17305068", "type": "ui_button", "z": "9ccc4e725c3673aa", "name": "", "group": "c50fec45.1c008", "order": 3, "width": 0, "height": 0, "passthru": false, "label": "Server Reboot", "tooltip": "", "color": "", "bgcolor": "", "icon": "", "payload": "Sicher?", "payloadType": "str", "topic": "", "x": 720, "y": 2280, "wires": [ [ "cd3f522e2a28e48a" ] ] } ]
Diviértete con el proyecto.
Espero que todo te haya funcionado como se describe. Si no es así, o si tiene alguna pregunta o sugerencia, hágamelo saber en los comentarios. Si es necesario, lo añadiré al artículo.
Las ideas para nuevos proyectos siempre son bienvenidas. 🙂
PS Muchos de estos proyectos, especialmente los proyectos de hardware, cuestan mucho tiempo y dinero. Por supuesto que hago esto porque lo disfruto, pero si crees que es genial que comparta la información contigo, me encantaría hacer una pequeña donación al fondo del café. 🙂
¿Tiene algún consejo sobre cómo apago un Raspi en mi red usando Node-Red. Así que no el que se ejecuta en Node-Red. ¡Gracias! gran blog gracias
hola johnny,
Entonces, ¿quieres apagar otra RaspberryPi desde una RaspberryPi que ejecuta NodeRed?
Si es así, eso es exactamente lo que describí aquí. 😀
https://nerdiy.de/nodered-remote-raspberrypi-neustarten-herunterfahren-und-starten/
Espero que ayude.
Atentamente
Fabian
SyntaxError: JSON.parse: esperado ',' o '}' después del valor de propiedad en el objeto en la línea 1, columna 290 de los datos JSON
Gracias por la pista. Creo que solucioné el problema. Inténtalo de nuevo. 🙂