Projet IOT

Ce flux est lié à un projet scolaire de consommation électrique intelligent

[{"id":"286f438331d20926","type":"tab","label":"Flux 3","disabled":false,"info":"","env":[]},{"id":"mqtt-in-1","type":"mqtt in","z":"286f438331d20926","name":"Lecture ESP32","topic":"iot/conso/mesure","qos":"0","datatype":"auto-detect","broker":"154d1953d8978cfe","nl":false,"rap":false,"inputs":0,"x":230,"y":220,"wires":[["json-parse-1"]]},{"id":"json-parse-1","type":"json","z":"286f438331d20926","name":"Parser JSON","property":"payload","action":"obj","pretty":false,"x":430,"y":220,"wires":[["sqlite-init-check","64b46a9ebe5090bf"]]},{"id":"sqlite-init-check","type":"function","z":"286f438331d20926","name":"Préparer INSERT","func":"msg.topic = `INSERT INTO consommation (timestamp, tension, puissance, energie_wh) VALUES (${msg.payload.timestamp}, ${msg.payload.tension}, ${msg.payload.puissance}, ${msg.payload.energie})`;\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":650,"y":120,"wires":[["sqlite-1"]]},{"id":"sqlite-1","type":"sqlite","z":"286f438331d20926","mydb":"70126f1ec822b656","sqlquery":"msg.topic","sql":"","name":"Sauvegarder","x":890,"y":120,"wires":[[]]},{"id":"64b46a9ebe5090bf","type":"function","z":"286f438331d20926","name":"function 2","func":"// Noeud Function Node-RED : extrait et route tension, puissance et energie\n// Configurer 3 sorties (Outputs = 3) \nvar data = msg.payload; \n// Objet JSON : {temp, pres, alt, rssi} \nvar msg1 = { payload: data.tension, topic: \"tension\" }; \nvar msg2 = { payload: data.puissance, topic: \"puissance\" }; \nvar msg3 = { payload: data.energie, topic: \"energie\" }; \n// Retourner un tableau : chaque element va vers une sortie \nreturn [msg1, msg2, msg3];","outputs":3,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":640,"y":280,"wires":[["557a6234897e34b1"],["d0fc402a6a8b8734"],["72bf9e441385bc61"]]},{"id":"557a6234897e34b1","type":"ui_chart","z":"286f438331d20926","name":"","group":"13a5f6d8860b131a","order":0,"width":0,"height":0,"label":"Tension","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot":false,"ymin":"","ymax":"","removeOlder":1,"removeOlderPoints":"","removeOlderUnit":"3600","cutout":0,"useOneColor":false,"useUTC":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"outputs":1,"useDifferentColor":false,"className":"","x":440,"y":380,"wires":[[]]},{"id":"d0fc402a6a8b8734","type":"ui_gauge","z":"286f438331d20926","name":"","group":"13a5f6d8860b131a","order":1,"width":0,"height":0,"gtype":"gage","title":"Puissance","label":"W","format":"{{value}}","min":0,"max":"0.25","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","diff":false,"className":"","x":630,"y":380,"wires":[]},{"id":"72bf9e441385bc61","type":"ui_text","z":"286f438331d20926","group":"90866ca1046489ad","order":0,"width":0,"height":0,"name":"","label":"Energie","format":"{{msg.payload}}","layout":"row-spread","className":"","style":false,"font":"","fontSize":16,"color":"#000000","x":820,"y":380,"wires":[]},{"id":"45914e9f8861df47","type":"inject","z":"286f438331d20926","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":210,"y":520,"wires":[["1968169ddd6ad164"]]},{"id":"78fa9251b844b57c","type":"sqlite","z":"286f438331d20926","mydb":"70126f1ec822b656","sqlquery":"msg.topic","sql":"","name":"CREATE TABLE","x":640,"y":520,"wires":[[]]},{"id":"1968169ddd6ad164","type":"function","z":"286f438331d20926","name":"SQL Create","func":"msg.topic = `\n  CREATE TABLE IF NOT EXISTS consommation (\n    id          INTEGER PRIMARY KEY AUTOINCREMENT,\n    timestamp   INTEGER,\n    tension     REAL,\n    puissance   REAL,\n    energie_wh  REAL,\n    created_at  DATETIME DEFAULT CURRENT_TIMESTAMP\n  )\n`;\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":430,"y":520,"wires":[["78fa9251b844b57c"]]},{"id":"154d1953d8978cfe","type":"mqtt-broker","name":"","broker":"broker.hivemq.com","port":1883,"clientid":"","autoConnect":true,"usetls":false,"protocolVersion":4,"keepalive":60,"cleansession":true,"autoUnsubscribe":true,"birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closeRetain":"false","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willRetain":"false","willPayload":"","willMsg":{},"userProps":"","sessionExpiry":""},{"id":"70126f1ec822b656","type":"sqlitedb","db":"conso_electrique.db","mode":"RWC"},{"id":"13a5f6d8860b131a","type":"ui_group","name":"Mesures","tab":"f3e1b96bceb95228","order":1,"disp":true,"width":6,"collapse":false,"className":""},{"id":"90866ca1046489ad","type":"ui_group","name":"Energie","tab":"f3e1b96bceb95228","order":2,"disp":true,"width":6,"collapse":false,"className":""},{"id":"f3e1b96bceb95228","type":"ui_tab","name":"Système de consommation électrique","icon":"dashboard","order":2,"disabled":false,"hidden":false},{"id":"db6805619ec5b45d","type":"global-config","env":[],"modules":{"node-red-node-sqlite":"2.0.1","node-red-dashboard":"3.6.6"}}]

Flow Info

Created 2 weeks, 3 days ago
Rating: not yet rated

Owner

Actions

Rate:

Node Types

Core
  • function (x3)
  • inject (x1)
  • json (x1)
  • mqtt in (x1)
  • mqtt-broker (x1)
Other
  • global-config (x1)
  • sqlite (x2)
  • sqlitedb (x1)
  • tab (x1)
  • ui_chart (x1)
  • ui_gauge (x1)
  • ui_group (x2)
  • ui_tab (x1)
  • ui_text (x1)

Tags

  • adelphe-flux-node-red
Copy this flow JSON to your clipboard and then import into Node-RED using the Import From > Clipboard (Ctrl-I) menu option