Sur nerdiy.fr, tout tourne autour de l'électronique, du bricolage, de l'impression 3D, de la maison intelligente et de nombreux autres sujets techniques.
HowTo : Node Red - Créer une interface utilisateur avec des nœuds de tableau de bord
Je ne sais pas si les tableaux de bord sont LE (seul) outil pour faire battre le cœur d'un nerd plus vite, mais ils sont définitivement un outil pour faire battre le cœur d'un nerd plus vite. Pour ceux qui ont grandi avec StarTrek and Co., les aperçus de type tableau de bord sous forme de diagrammes et de graphiques sont la quintessence de la technologie. Vous pouvez maintenant préparer vous-même ce sentiment avec NodeRed grâce à certains nœuds.
Parce qu'une fois que votre SmartHome a atteint le point où il collecte toutes sortes de données sur vos quatre murs, vous avez naturellement envie de les présenter. Mais comment? Après tout, vous ne pouvez pas simplement coller ces données dans un album photo comme les dernières photos de vacances.
Une manière simple et à la fois informative et décorative est de présenter les données existantes via le nœud du tableau de bord pour NodeRed. En plus de divers éléments d'affichage, cela offre également la possibilité d'interagir avec votre système SmartHome. Vous pouvez définir des valeurs, basculer des commutateurs virtuels, déclencher des actions et surveiller leur état en même temps.
Un aperçu des différentes fonctions du nœud du tableau de bord peut être trouvé dans l'article suivant
Conditions préalables
Articles utiles : Pour que vous puissiez installer de nouveaux nœuds, NodeRed doit bien sûr déjà être installé. Comment préparer un RaspberryPi puis installer NodeRed dessus est décrit dans les articles suivants.
Vue d'ensemble des nœuds d'entrée et de sortie disponibles
En installant les nœuds du tableau de bord, vous obtenez un ensemble complet de nœuds supplémentaires adaptés à l'affichage et à la saisie de différentes valeurs. Comme d'habitude, ceux-ci sont affichés dans la palette de nœuds à gauche du menu de configuration. Les détails sur les nœuds individuels sont répertoriés ci-dessous.
Nœud bouton et positionnement des éléments dans le tableau de bord
Le premier nœud et le plus simple est le "nœud bouton". Vous pouvez l'utiliser pour positionner un bouton sur votre tableau de bord. Cela fonctionne alors comme un bouton dans le monde réel. S'il est cliqué, il envoie une valeur ajustable et un sujet ajustable au nœud lié.
Les nœuds de bouton, par exemple, peuvent très bien être utilisés pour déclencher des actions. Par exemple, vous pouvez allumer et éteindre les lampes.
Avant de pouvoir utiliser le nœud du bouton, il doit d'abord être positionné sur la grille de mise en page du tableau de bord.
Parce qu'en plus des fonctions des nœuds réels, le positionnement sur la mise en page du tableau de bord ultérieur peut également être configuré pour chacun. Le tableau de bord est donc un site Web distinct qui peut être géré de manière centralisée via la configuration du tableau de bord.
En installant les nœuds du tableau de bord, un nouvel onglet a été ajouté à la zone de configuration de gauche. Vous pouvez le reconnaître par l'icône basée sur un graphique à barres. Cliquez dessus pour ouvrir la configuration de base du tableau de bord.
Ici, vous pouvez voir les différents onglets "Mise en page", "Thème" et "Site" dans la zone supérieure. À droite de celle-ci se trouve une flèche pointant vers le haut et vers la droite. Si vous cliquez dessus, vous serez redirigé vers le site Web du tableau de bord.
Alternativement, vous pouvez également sélectionner directement la page du tableau de bord. Il vous suffit d'ajouter "/ui/" à l'adresse de votre page de configuration NodeRed. Par exemple, est l'adresse de votre page de configuration NodeRed https://192.168.172.5:1880 alors l'adresse est à votre tableau de bord https:// 192.168.172.5:1880/ui/
La première chose à faire est de diviser la mise en page. Avec l'aide de laquelle vous pouvez positionner les éléments d'entrée et de sortie respectifs (nœuds du tableau de bord) presque librement sur le tableau de bord. Le tableau de bord offre la possibilité de combiner des nœuds de tableau de bord individuels en groupes. L'ordre d'affichage de ces nœuds peut ensuite être défini sur le tableau de bord. De plus, ces nœuds groupés peuvent ou doivent être affectés à un "onglet" spécifique.
En plus de l'onglet "Accueil", d'autres onglets peuvent être créés. Ceci est utile, par exemple, pour séparer virtuellement les éléments de différentes pièces les uns des autres dans un système de maison intelligente. Vous pouvez également résumer tous les capteurs et actionneurs du salon dans un onglet appelé "Salon". Cela simplifie la vue d'ensemble et structure le nombre de nœuds qui augmente souvent rapidement.
C'est également ce que vous pouvez voir et paramétrer dans l'onglet "Mise en page" de la configuration du tableau de bord. Tous les onglets et les groupes associés y sont affichés. Dans la capture d'écran ci-dessous
Un autre exemple:
Le noeud bouton
Le nœud de bouton est l'un des nœuds très simples. Vous pouvez l'utiliser pour créer des clés virtuelles. Pour ce faire, faites glisser le nœud de bouton de la palette de nœuds vers la zone de configuration NodeRed. Si vous double-cliquez maintenant sur le nœud, les options suivantes peuvent être configurées.
nœud déroulant
Le nœud déroulant est un nœud que vous pouvez utiliser pour créer une liste de sélection sur le tableau de bord. Par exemple, vous pouvez créer une liste des températures disponibles pour un radiateur. Cependant, toutes sortes d'autres entrées avec les noms les plus divers et les valeurs associées peuvent également être définies.
Pour ce faire, faites glisser un nœud déroulant de la palette de nœuds vers l'interface de configuration du nœud rouge et double-cliquez dessus.
nœud de commutation
En principe, le nœud de commutation correspond à un commutateur virtuel. Celui-ci peut être utilisé pour envoyer des signaux de commutation ou pour afficher des états de commutation.
Pour ce faire, faites glisser le nœud de commutation de la palette de nœuds vers l'interface de configuration du nœud rouge et double-cliquez dessus.
nœud de curseur
Le nœud du curseur est idéal pour définir des nombres dans une certaine plage. Un bon cas d'utilisation, par exemple, consiste à l'utiliser comme gradateur pour une lampe.
Pour pouvoir utiliser le nœud du curseur, vous devez d'abord le faire glisser de la palette de nœuds vers l'interface de configuration du nœud rouge et double-cliquer pour ouvrir son menu de paramètres.
nœud numérique
Le nœud numérique est un autre moyen de transmettre des valeurs numériques à Node-Red pour le traitement.
Pour configurer cela, vous faites glisser un nœud numérique de la palette de nœuds vers l'interface de configuration Node Red.
Nœud de saisie de texte
Le nœud de saisie de texte est - comme son nom l'indique - un nœud permettant la saisie de texte.
Nœud de sélection de date
En principe, le nœud de sélection de date fait exactement ce que son nom suggère : vous pouvez l'utiliser pour sélectionner une certaine date et ainsi la transférer à NodeRed pour un traitement ultérieur.
Nœud de sélecteur de couleurs
Le nœud de sélecteur de couleurs est idéal pour définir la couleur d'une lampe RVB connectée. Bien sûr, vous pouvez également l'utiliser pour transférer des couleurs vers Node-Red pour un traitement ultérieur dans tous les autres cas.
nœud de formulaire
Avec le nœud de formulaire, vous avez la possibilité de configurer un formulaire type. Cela vous permet de combiner différentes options d'entrée. C'est parfait pour configurer un formulaire pour entrer une adresse ou similaire, par exemple.
Nœud de sortie de texte
Le nœud de sortie de texte est idéal pour afficher uniquement du texte. Par exemple, vous pouvez afficher les lectures des capteurs. L'utilisateur n'a pas la possibilité de modifier le texte affiché.
nœud de jauge
Le nœud de jauge est parfait pour afficher les valeurs mesurées sous une forme visualisée. De cette façon, les valeurs mesurées peuvent être classées visuellement directement. De plus, des intervalles de nombres peuvent également être définis dans lesquels la couleur de l'échelle affichée change. Par exemple, vous pouvez utiliser une couleur rouge pour représenter les températures élevées/dangereuses. Les températures dans la plage normale, en revanche, sont représentées par une échelle verte. Cela permet de se faire une idée en un coup d'œil si les valeurs mesurées affichées sont correctes ou non. En dehors de cela, il a aussi l'air plutôt cool (/ Star Trek-ish). 🙂
noeud de graphique
Le nœud de graphique est adapté pour afficher des progressions de valeur. Cela vous permet, par exemple, d'enregistrer et d'afficher l'évolution d'une température sur une période de temps spécifiée. Malheureusement, les valeurs ne sont actuellement enregistrées que temporairement. Cela signifie que si votre serveur NodeRed tombe en panne ou est redémarré d'une autre manière, toutes les valeurs précédemment affichées seront perdues.
nœud de sortie audio
Le nœud de sortie audio est à nouveau l'un de ces nœuds qui fait exactement ce que son nom l'indique. Il produit du texte en tant que langue parlée.
nœud de notification
Le nœud de notification vous permet d'afficher des notifications sur le tableau de bord ouvert. Cela peut être affiché sous forme d'informations sur le bord ou centré au milieu de l'écran, y compris un bouton de confirmation.
Nœud de contrôle de l'interface utilisateur
Avec le nœud de contrôle de l'interface utilisateur, vous pouvez contrôler l'apparence et le comportement de la vue du tableau de bord. Cela peut être utilisé, par exemple, pour changer l'onglet affiché, les groupes "rentrer et sortir". Vous pouvez également utiliser ce nœud pour réagir si un utilisateur a ouvert ou fermé le tableau de bord.
nœud de modèle
Le nœud de modèle est un nœud très polyvalent. Vous pouvez intégrer votre propre code HTML sur le tableau de bord. Celui-ci peut alors réagir individuellement aux messages reçus des nœuds connectés et également renvoyer lui-même des messages.
thztjz
Autres exemples
Vous trouverez ci-dessous une petite liste des articles dans lesquels j'utilise également les nœuds du tableau de bord. Peut-être qu'il y a quelque chose pour vous aussi. 🙂
J'espère que tout a fonctionné comme décrit. Si ce n'est pas le cas ou si vous avez des questions ou des suggestions, faites-le moi savoir dans les commentaires. Je les ajouterai à l'article si nécessaire. Les idées de nouveaux projets sont toujours les bienvenues. 🙂
PS Beaucoup de ces projets - en particulier les projets matériels - coûtent beaucoup de temps et d'argent. Bien sûr, je le fais parce que j'aime ça, mais si vous pensez que c'est cool que je partage l'information avec vous, je serais heureux d'un petit don au fonds du café. 🙂
Bonjour, super article. Une question : Comment parvenez-vous à disposer les éléments les uns à côté des autres au sein d'un groupe, comme le bouton marche/arrêt de votre groupe de bandes LED ?
Salut Andreas,
merci 🙂
Cela devrait en fait se produire automatiquement dès que les deux éléments s'emboîtent l'un à côté de l'autre dans le groupe. Pour cela, il faut régler la largeur des éléments (les boutons dans le cas du LED Stripe) à 3 par exemple, pour qu'ils rentrent dans le groupe (ici "LED Stripe") avec une largeur de 6 ensuite l'un à l'autre. 🙂
S'il vous plaît laissez-moi savoir si cela a fonctionné. 🙂
Cordialement
Fab
super article, m'a beaucoup aidé. J'ai encore une question générale sur un tableau de bord Node-Red.
J'en ai construit un et j'ai lu les données d'un capteur de température via Node-Red. Je l'ai connecté au RPi. (Node-red fonctionne sur mon RPi).
Ce tableau de bord est également facilement accessible via le navigateur que j'utilise. Mais seulement si je suis dans le même réseau que le raspberry Pi lui-même.
Je n'ai pas accès au tableau de bord depuis le réseau internet de mon smartphone.
Connaissez-vous un moyen d'accéder au tableau de bord depuis le réseau "public" ou depuis d'autres connexions Internet que mon WiFi à la maison ?
Bonjour Lenard,
Merci. 🙂
L'option sécurisée (seulement raisonnable) consiste à se connecter à votre réseau domestique via un VPN et ainsi accéder au RaspberryPi dans votre réseau.
En attendant, de nombreux routeurs (par exemple la Fritzbox) peuvent être configurés en tant que serveurs VPN.
Malheureusement, je n'ai pas de tutoriel prêt pour cela, mais probablement. trouvez-vous quelque chose à ce sujet? 🙂
Cordialement
Fabien
Bonjour,
Je travaille avec le Node-Red sur le Raspy-400 depuis quelques jours. Un convertisseur AD (ADS1115) me donne également des résultats nets. Je souhaite modifier la taille de la police des nœuds du tableau de bord. Est-ce possible? Certains codes sont publiés sur d'autres sites, mais ils ne fonctionnent pas. Avez-vous un exemple pour moi (par exemple pour la jauge) comment faire cela?
Je voudrais vous remercier d'avance, juste à cause de l'article du tableau de bord.
Bien à vous
H.Harle
Salut Horst,
Malheureusement, je n'ai pas d'exemple pour cela, mais probablement. un "coup de pouce" dans la bonne direction. La description du nœud du nœud de jauge contient la note suivante :
Si une classe est spécifiée, elle sera ajoutée à la carte mère. De cette façon, vous pouvez styliser la carte et les éléments qu'elle contient avec un CSS personnalisé. La classe peut être définie au moment de l'exécution en définissant une propriété de chaîne msg.className.
Cela signifie que vous devriez pouvoir modifier l'apparence des composants individuels du nœud de jauge avec du code CSS.
J'espère que cela vous aidera davantage. 🙂
Cordialement
Fab
Bonjour, super article. Une question : Comment parvenez-vous à disposer les éléments les uns à côté des autres au sein d'un groupe, comme le bouton marche/arrêt de votre groupe de bandes LED ?
Cordialement
André
Salut Andreas,
merci 🙂
Cela devrait en fait se produire automatiquement dès que les deux éléments s'emboîtent l'un à côté de l'autre dans le groupe. Pour cela, il faut régler la largeur des éléments (les boutons dans le cas du LED Stripe) à 3 par exemple, pour qu'ils rentrent dans le groupe (ici "LED Stripe") avec une largeur de 6 ensuite l'un à l'autre. 🙂
S'il vous plaît laissez-moi savoir si cela a fonctionné. 🙂
Cordialement
Fab
Merci 🙂
Bonjour,
super article, m'a beaucoup aidé. J'ai encore une question générale sur un tableau de bord Node-Red.
J'en ai construit un et j'ai lu les données d'un capteur de température via Node-Red. Je l'ai connecté au RPi. (Node-red fonctionne sur mon RPi).
Ce tableau de bord est également facilement accessible via le navigateur que j'utilise. Mais seulement si je suis dans le même réseau que le raspberry Pi lui-même.
Je n'ai pas accès au tableau de bord depuis le réseau internet de mon smartphone.
Connaissez-vous un moyen d'accéder au tableau de bord depuis le réseau "public" ou depuis d'autres connexions Internet que mon WiFi à la maison ?
Merci et meilleures salutations, Lennard
Bonjour Lenard,
Merci. 🙂
L'option sécurisée (seulement raisonnable) consiste à se connecter à votre réseau domestique via un VPN et ainsi accéder au RaspberryPi dans votre réseau.
En attendant, de nombreux routeurs (par exemple la Fritzbox) peuvent être configurés en tant que serveurs VPN.
Malheureusement, je n'ai pas de tutoriel prêt pour cela, mais probablement. trouvez-vous quelque chose à ce sujet? 🙂
Cordialement
Fabien
Bonjour,
Je travaille avec le Node-Red sur le Raspy-400 depuis quelques jours. Un convertisseur AD (ADS1115) me donne également des résultats nets. Je souhaite modifier la taille de la police des nœuds du tableau de bord. Est-ce possible? Certains codes sont publiés sur d'autres sites, mais ils ne fonctionnent pas. Avez-vous un exemple pour moi (par exemple pour la jauge) comment faire cela?
Je voudrais vous remercier d'avance, juste à cause de l'article du tableau de bord.
Bien à vous
H.Harle
Salut Horst,
Malheureusement, je n'ai pas d'exemple pour cela, mais probablement. un "coup de pouce" dans la bonne direction. La description du nœud du nœud de jauge contient la note suivante :
Cela signifie que vous devriez pouvoir modifier l'apparence des composants individuels du nœud de jauge avec du code CSS.
J'espère que cela vous aidera davantage. 🙂
Cordialement
Fab