Difference between revisions of "The Barbican"

From Open Source Controls Wiki
Jump to navigation Jump to search
 
(63 intermediate revisions by the same user not shown)
Line 2: Line 2:
https://www.barbican.org.uk/
https://www.barbican.org.uk/


==Designs==


<iframe key="wiki" align="right" width="100%" height="1150" level="" path="/gojs/samples/wiring22.html?id=Discussion&height=800px" />
<iframe key="wiki" align="right" width="100%" height="1150" level="" path="/gojs/samples/wiring24.html?cid=barbican_discussion.json&height=800px" />


<pre class="wikidiagrams">
barbican_discussion.json Monitoring Architecture
barbican_meter_locations.json Heat Meter and Sensor Locations
meter_installation.json Principles of calculating flow rates from temperatures
barbican_wiring_1.json Wiring 1
</pre>
==Drawings==
{{#l:CHW_Art_Gallery_-_Temporary_Heat_Meter_Locations.pdf}}
[[File:Barbicanschem1.png|frameless|713x713px]]
== Temperature Data ==
==Heat Meters==
{{#l:U1000MKII_WM_Issue_1.1.pdf}}
See [[Micronics Heat Meters]] for information on how to connect Micronics Heat Meters.
<gallery heights="250" widths="400">
File:Micronics2.png|A Node-RED flow has been created to read Micronics meters via Modbus (or any other Modbus device). This has been pasted into the controllers, containing all the registers and descriptions, and deployed.
File:MicronicsBarbi1.PNG|The first Micronics heat meter provided data immediately as expected, matching values on the screen.  This can be viewed in the Node-RED software in the debug window, where one can inspect the data telegrams being sent and received. [1, 3 ...] represents device 1, function code 3 (read register). The response should also start with [1, 3 ...]
File:MicronicsBarbi2.PNG|However, the second meter provided incorrectly formed responses and will require further investigation.  FIXED: The GND for the RS485 was into the wrong terminal. When corrected, the data matched heat meter display.
</gallery>
== Data Storage Locally and to Dropbox ==
Data subscribed to is stored on the server locally into csv files.
A file browser utility is included on this wiki with a user account setup to provide simple access to stored CSV files.


<pre class="wikidiagram" id="Discussion" style="display:none">
[[File:Csvfiles1.PNG|frameless|570x570px|border]] [[File:Csvfiles2.PNG|frameless|863x863px]]
{ "class": "GraphLinksModel",
 
  "copiesArrays": true,
Every day these files are sent to Dropbox, and then can optionally be purged from the server.
  "copiesArrayObjects": true,
 
  "linkFromPortIdProperty": "fromPort",
We are currently storing all '''/dat/''' incoming MQTT data, fed from field trials. This will ensure we retain long-term records of all operational data, from all field trials, down to 1 second resolution. It will be a lot of data, but Dropbox has more than enough room.
  "linkToPortIdProperty": "toPort",
 
  "modelData": {"layout":"landscape","title":"barbican discussion"},
[[File:Savetodropbox.png]]
  "nodeDataArray": [
 
{"name":"Temperature","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[{"portId":"gnd","signalType":"GND","portColor":"#000000","figure":"Input"},{"portId":"temperature","signalType":"NTC10K","name":"Temperature","map":[[97.006,-20],[72.911,-15],[72.911,-10],[42.317,-5],[32.651,0],[25.395,5],[19.903,10],[15.714,15],[12.493,20],[10,25],[8.056,30],[6.53,35],[5.325,40],[4.367,45],[3.601,50],[2.985,55],[2.467,60],[2.082,65],[1.752,70],[1.256,80],[0.916,90],[0.678,100],[0.51,110],[0.388,120]],"mapUnits":["k\u03a9","\u00b0C"],"portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"],"figure":"Output"}],"topArray":[],"bottomArray":[],"key":"ntcr","size":"131 106","loc":"-402.84375 224","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"120 80","attributes":{"make":"Regin","model":""}},
== Time Series Data Visualisation Using InfluxDB and Grafana ==
{"key":"node","name":"BEMS Hat","href":"https://hwwiki.ddns.net/","fill":"palegreen","image":"/images/1/11/Pcbbg1.png","signalTypes":[{"id":"GND","name":"Ground"},{"id":"NTC","name":"NTC 10K Thermistor"},{"id":"NTC1K","name":"NTC 1K Thermistor"},{"id":"NTC10K","name":"NTC 10K Thermistor"},{"id":"10K","name":"0-10K Resistance"},{"id":"1K","name":"0-1K Resistance"}],"leftArray":[{"portId":"TH8GND","block":"TH8","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"TH8 Ground"},{"portId":"TH8","block":"TH8","portColor":"#00ff00","figure":"Input","signalTypes":["NTC10K","10K"],"name":"TH8 Signal","channel":"8"},{"portId":"TH7GND","block":"TH7","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"TH7 Ground"},{"portId":"TH7","block":"TH7","portColor":"#00ff00","figure":"Input","signalTypes":["NTC10K","10K"],"name":"TH7 Signal","channel":"7"},{"portId":"TH6GND","block":"TH6","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"TH6 Ground"},{"portId":"TH6","block":"TH6","portColor":"#00ff00","figure":"Input","signalTypes":["NTC10K","10K"],"name":"TH6 Signal","channel":"6"},{"portId":"TH5GND","block":"TH5","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"TH5 Ground"},{"portId":"TH5","block":"TH5","portColor":"#00ff00","figure":"Input","signalTypes":["NTC10K","10K"],"name":"TH5 Signal","channel":"5"},{"portId":"IN4GND","block":"IN4","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"IN4 Ground"},{"portId":"IN4","block":"IN4","portColor":"#fffffe","figure":"Input","signalTypes":["NTC10K","NTC1K","0-10V","PULSE","DRY"],"name":"IN4 Signal","channel":"4"},{"portId":"IN3GND","block":"IN3","portColor":"#000000","figure":"Output"},{"portId":"IN3","block":"IN3","portColor":"#fffffe","figure":"Input","signalTypes":["NTC10K","NTC1K","0-10V","PULSE","DRY"],"name":"IN3 Signal","channel":"3"},{"portId":"IN2GND","block":"IN2","portColor":"#000000","figure":"Output"},{"portId":"IN2","block":"IN2","portColor":"#fffffe","figure":"Input","signalTypes":["NTC10K","NTC1K","0-10V","PULSE","DRY"],"name":"IN2 Signal","channel":"2"},{"portId":"IN1GND","block":"IN1","portColor":"#000000","figure":"Output"},{"portId":"IN1","block":"IN1","portColor":"#fffffe","figure":"Input","signalTypes":["NTC10K","NTC1K","0-10V","PULSE","DRY"],"name":"IN1 Signal","channel":"1"},{"portId":"TH4GND","block":"TH4","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"TH4 Ground"},{"portId":"TH4","block":"TH4","portColor":"#00ff00","figure":"Input","signalTypes":["NTC10K","10K"],"name":"TH1 Signal","channel":"4"},{"portId":"TH3GND","block":"TH3","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"TH3 Ground"},{"portId":"TH3","block":"TH3","portColor":"#00ff00","figure":"Input","signalTypes":["NTC10K","10K"],"name":"TH3 Signal","channel":"3"},{"portId":"TH2GND","block":"TH2","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"TH2 Ground"},{"portId":"TH2","block":"TH2","portColor":"#00ff00","figure":"Input","signalTypes":["NTC10K","10K"],"name":"TH2 Signal","channel":"2"},{"portId":"TH1GND","block":"TH1","portColor":"#000000","figure":"Output","signalTypes":["GND"],"name":"TH1 Ground"},{"portId":"TH1","block":"TH1","portColor":"#00ff00","figure":"Input","signalTypes":["NTC10K","10K"],"name":"TH1 Signal","channel":"1"}],"topArray":[{"portColor":"#ffc900","portId":"top01","figure":"Output"},{"portColor":"#ffc900","portId":"top02","figure":"Output"},{"portColor":"#ffc900","portId":"top03","figure":"Output"},{"portId":"top1","portColor":"#000000","figure":"Output"},{"portId":"top2","portColor":"#e88600","figure":"Input"},{"portId":"top3","portColor":"#000002","figure":"Input"},{"portColor":"#ffffff","portId":"top4"},{"portColor":"#ffffff","portId":"top5"}],"bottomArray":[{"portColor":"#000000","portId":"pin25","figure":"Output"},{"portId":"D1","portColor":"#00ffff","figure":"Input","signalTypes":["PULSE","DRY"],"name":"Digital Input D1","channel":"1"},{"portId":"pin27","portColor":"#000000","figure":"Output"},{"portId":"D2","portColor":"#00ffff","figure":"Input","signalTypes":["PULSE","DRY"],"name":"Digital Input D2","channel":"2"},{"portId":"pin29","portColor":"#000000","figure":"Output"},{"portId":"D3","portColor":"#00ffff","figure":"Input","signalTypes":["PULSE","DRY"],"name":"Digital Input D3","channel":"3"},{"portId":"pin31","portColor":"#000000","figure":"Output"},{"portId":"D4","portColor":"#00ffff","figure":"Input","signalTypes":["PULSE","DRY"],"name":"Digital Input D4","channel":"4"},{"portId":"pin33","portColor":"#000000","figure":"Output"},{"portId":"P1","portColor":"#40aceb","figure":"Input","signalTypes":["PWM","PWMGND"],"name":"PWM Input P1","channel":"1"},{"portId":"pin35","portColor":"#000000","figure":"Output"},{"portId":"P2","portColor":"#40aceb","figure":"Input","signalTypes":["PWM","PWMGND"],"name":"PWM Input P2","channel":"2"},{"portId":"pin37","portColor":"#000000","figure":"Output"},{"portId":"P3","portColor":"#40aceb","figure":"Input","signalTypes":["PWM","PWMGND"],"name":"PWM Input P3","channel":"3"},{"portId":"pin39","portColor":"#000000","figure":"Output"},{"portId":"P4","portColor":"#40aceb","figure":"Input","signalTypes":["PWM","PWMGND"],"name":"PWM Input P4","channel":"4"},{"portId":"R1NO","portColor":"#ff8abd","figure":"Output","signalTypes":["SW_NO"],"name":"Relay 1 N/O","channel":"1"},{"portId":"R1COM","portColor":"#bf6ae3","figure":"Input","signalTypes":["SW_COM","SW_C"],"name":"Relay 1 Common","channel":"1"},{"portId":"R1NC","portColor":"#ffa3a3","figure":"Output","signalTypes":["SW_NC"],"name":"Relay 1 N/C","channel":"1"},{"portId":"R2NO","portColor":"#ff8abd","figure":"Output","signalTypes":["SW_NO"],"name":"Relay 2 N/O","channel":"2"},{"portId":"R2COM","portColor":"#bf6ae3","figure":"Input","signalTypes":["SW_COM","SW_C"],"name":"Relay 2 Common","channel":"2"},{"portId":"R2NC","portColor":"#ffa3a3","figure":"Output","signalTypes":["SW_NC"],"name":"Relay 2 N/C","channel":"2"}],"rightArray":[{"portColor":"#000000","portId":"pin47","figure":"Circle"},{"portColor":"#888891","figure":"Circle","portId":"RS485A1","signalTypes":["RS485A","RS485+","MODBUS+"],"name":"RS485 Positive 1","channel":"1"},{"portId":"RS485B1","portColor":"#888890","figure":"Circle","signalTypes":["RS485B","RS485-","MODBUS-"],"name":"RS485 Negative 1","channel":"1"},{"portId":"right3","portColor":"#000000","figure":"Circle"},{"portColor":"#888889","figure":"Circle","portId":"RS485A2","signalTypes":["RS485A","RS485+","MODBUS+"],"name":"RS485 Positive 2","channel":"2"},{"portId":"RS485B2","portColor":"#888888","figure":"Circle","signalTypes":["RS485B","RS485-","MODBUS-"],"name":"RS485 Negative 2","channel":"2"},{"portId":"right6","portColor":"#ddddba","figure":"Circle","signalTypes":["MBUS","MBUS+"],"name":"M-Bus","channel":"1"},{"portId":"right7","portColor":"#ddddbb","figure":"Circle","signalTypes":["MBUS","MBUS-"],"name":"M-Bus","channel":"1"},{"portId":"OUT4","portColor":"#ffff00","figure":"Output","signalTypes":["0-10V"],"name":"0-10V Output OUT4","channel":"4"},{"portId":"right9","block":"OUT4","portColor":"#000000","figure":"Output"},{"portId":"OUT3","portColor":"#ffff00","figure":"Output","signalTypes":["0-10V"],"name":"0-10V Output OUT3","channel":"3"},{"portId":"right11","block":"OUT3","portColor":"#000000","figure":"Output"},{"portId":"OUT2","portColor":"#ffff00","figure":"Output","signalTypes":["0-10V"],"name":"0-10V Output OUT2","channel":"2"},{"portId":"right13","block":"OUT2","portColor":"#000000","figure":"Output"},{"portId":"OUT1","portColor":"#ffff00","figure":"Output","signalTypes":["0-10V"],"name":"0-10V Output OUT1","channel":"1"},{"portId":"right15","block":"OUT1","portColor":"#000000","figure":"Output"},{"portId":"OD4","portColor":"#40aceb","figure":"Output","signalTypes":["0-10V"],"name":"PWM Output OD4","channel":"4"},{"portId":"right17","block":"OD4","portColor":"#ff0000","figure":"Output"},{"portId":"OD3","portColor":"#40aceb","figure":"Output","signalTypes":["0-10V"],"name":"PWM Output OUT3","channel":"3"},{"portId":"right19","block":"OD3","portColor":"#ff0000","figure":"Output"},{"portId":"OD2","block":"OD2","portColor":"#40aceb","figure":"Output","signalTypes":["0-10V"],"name":"PWM Output OD2","channel":"2"},{"portId":"right21","block":"OD2","portColor":"#ff0000","figure":"Output"},{"portId":"OD1","block":"OD1","portColor":"#40aceb","figure":"Output","signalTypes":["0-10V"],"name":"PWM Output OD1","channel":"1"},{"portId":"right23","block":"OD1","portColor":"#ff0000","figure":"Output"}],"loc":"46.15625 -32.65625","size":"231 250.5","thickness":2,"color":"palegreen","attributes":{}},
 
{"name":"Heat Meter","fill":"#dbf6cb","leftArray":[{"portId":"left0","portColor":"#888888","figure":"Circle","signalType":"RS485"},{"portId":"left1","portColor":"#888888","figure":"Circle","signalType":"RS485"},{"portId":"left2","portColor":"#000000","figure":"Input","signalType":"GND"},{"portId":"left3","portColor":"#ff0000","signalType":"24V","figure":"Input"}],"rightArray":[],"topArray":[],"bottomArray":[],"key":"meter1","size":"67 54","loc":"434.15625 160.34375","attributes":{},"color":"black","figure":"RoundedRectangle","thickness":1},
<gallery heights="250" widths="400">
{"name":"Temperature","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[{"portId":"gnd","signalType":"GND","portColor":"#000000","figure":"Input"},{"portId":"temperature","signalType":"NTC10K","name":"Temperature","map":[[97.006,-20],[72.911,-15],[72.911,-10],[42.317,-5],[32.651,0],[25.395,5],[19.903,10],[15.714,15],[12.493,20],[10,25],[8.056,30],[6.53,35],[5.325,40],[4.367,45],[3.601,50],[2.985,55],[2.467,60],[2.082,65],[1.752,70],[1.256,80],[0.916,90],[0.678,100],[0.51,110],[0.388,120]],"mapUnits":["k\u03a9","\u00b0C"],"portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"],"figure":"Output"}],"topArray":[],"bottomArray":[],"key":"ntcr2","size":"131 106","loc":"-510.84375 117","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"120 80","attributes":{"make":"Regin","model":""}},
File:Barbigraf2.PNG|Data is fetched from an InfluxDB database using the FLEX query language.
{"name":"Temperature","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[{"portId":"gnd","signalType":"GND","portColor":"#000000","figure":"Input"},{"portId":"temperature","signalType":"NTC10K","name":"Temperature","map":[[97.006,-20],[72.911,-15],[72.911,-10],[42.317,-5],[32.651,0],[25.395,5],[19.903,10],[15.714,15],[12.493,20],[10,25],[8.056,30],[6.53,35],[5.325,40],[4.367,45],[3.601,50],[2.985,55],[2.467,60],[2.082,65],[1.752,70],[1.256,80],[0.916,90],[0.678,100],[0.51,110],[0.388,120]],"mapUnits":["k\u03a9","\u00b0C"],"portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"],"figure":"Output"}],"topArray":[],"bottomArray":[],"key":"ntcr22","size":"131 106","loc":"-517.84375 -11","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"120 80","attributes":{"make":"Regin","model":""}},
File:Barbigraf3.PNG|Data is then post-processed, renaming fields.
{"name":"Temperature","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[{"portId":"gnd","signalType":"GND","portColor":"#000000","figure":"Input"},{"portId":"temperature","signalType":"NTC10K","name":"Temperature","map":[[97.006,-20],[72.911,-15],[72.911,-10],[42.317,-5],[32.651,0],[25.395,5],[19.903,10],[15.714,15],[12.493,20],[10,25],[8.056,30],[6.53,35],[5.325,40],[4.367,45],[3.601,50],[2.985,55],[2.467,60],[2.082,65],[1.752,70],[1.256,80],[0.916,90],[0.678,100],[0.51,110],[0.388,120]],"mapUnits":["k\u03a9","\u00b0C"],"portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"],"figure":"Output"}],"topArray":[],"bottomArray":[],"key":"ntcr222","size":"131 106","loc":"-331.84375 -35","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"120 80","attributes":{"make":"Regin","model":""}},
File:Barbigraf4.PNG|Data is further processed based on type to apply colours and units
{"name":"Temperature","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[{"portId":"gnd","signalType":"GND","portColor":"#000000","figure":"Input"},{"portId":"temperature","signalType":"NTC10K","name":"Temperature","map":[[97.006,-20],[72.911,-15],[72.911,-10],[42.317,-5],[32.651,0],[25.395,5],[19.903,10],[15.714,15],[12.493,20],[10,25],[8.056,30],[6.53,35],[5.325,40],[4.367,45],[3.601,50],[2.985,55],[2.467,60],[2.082,65],[1.752,70],[1.256,80],[0.916,90],[0.678,100],[0.51,110],[0.388,120]],"mapUnits":["k\u03a9","\u00b0C"],"portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"],"figure":"Output"}],"topArray":[],"bottomArray":[],"key":"ntcr2222","size":"131 106","loc":"-521.84375 -137","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"120 80","attributes":{"make":"Regin","model":""}},
</gallery>
{"name":"Temperature","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[{"portId":"gnd","signalType":"GND","portColor":"#000000","figure":"Input"},{"portId":"temperature","signalType":"NTC10K","name":"Temperature","map":[[97.006,-20],[72.911,-15],[72.911,-10],[42.317,-5],[32.651,0],[25.395,5],[19.903,10],[15.714,15],[12.493,20],[10,25],[8.056,30],[6.53,35],[5.325,40],[4.367,45],[3.601,50],[2.985,55],[2.467,60],[2.082,65],[1.752,70],[1.256,80],[0.916,90],[0.678,100],[0.51,110],[0.388,120]],"mapUnits":["k\u03a9","\u00b0C"],"portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"],"figure":"Output"}],"topArray":[],"bottomArray":[],"key":"ntcr22222","size":"131 106","loc":"-344.84375 -209","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"120 80","attributes":{"make":"Regin","model":""}},
 
{"name":"Temperature","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[{"portId":"gnd","signalType":"GND","portColor":"#000000","figure":"Input"},{"portId":"temperature","signalType":"NTC10K","name":"Temperature","map":[[97.006,-20],[72.911,-15],[72.911,-10],[42.317,-5],[32.651,0],[25.395,5],[19.903,10],[15.714,15],[12.493,20],[10,25],[8.056,30],[6.53,35],[5.325,40],[4.367,45],[3.601,50],[2.985,55],[2.467,60],[2.082,65],[1.752,70],[1.256,80],[0.916,90],[0.678,100],[0.51,110],[0.388,120]],"mapUnits":["k\u03a9","\u00b0C"],"portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"],"figure":"Output"}],"topArray":[],"bottomArray":[],"key":"ntcr222222","size":"131 106","loc":"-512.84375 -279","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"120 80","attributes":{"make":"Regin","model":""}},
=== Client Dashboard ===
{"name":"Temperature","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[{"portId":"gnd","signalType":"GND","portColor":"#000000","figure":"Input"},{"portId":"temperature","signalType":"NTC10K","name":"Temperature","map":[[97.006,-20],[72.911,-15],[72.911,-10],[42.317,-5],[32.651,0],[25.395,5],[19.903,10],[15.714,15],[12.493,20],[10,25],[8.056,30],[6.53,35],[5.325,40],[4.367,45],[3.601,50],[2.985,55],[2.467,60],[2.082,65],[1.752,70],[1.256,80],[0.916,90],[0.678,100],[0.51,110],[0.388,120]],"mapUnits":["k\u03a9","\u00b0C"],"portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"],"figure":"Output"}],"topArray":[],"bottomArray":[],"key":"ntcr2222222","size":"131 106","loc":"-336.84375 -358","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"120 80","attributes":{"make":"Regin","model":""}},
 
{"name":"Heat Meter","fill":"#dbf6cb","leftArray":[{"portId":"left0","portColor":"#888888","figure":"Circle","signalType":"RS485"},{"portId":"left1","portColor":"#888888","figure":"Circle","signalType":"RS485"},{"portId":"left2","portColor":"#000000","figure":"Input","signalType":"GND"},{"portId":"left3","portColor":"#ff0000","signalType":"24V","figure":"Input"}],"rightArray":[],"topArray":[],"bottomArray":[],"key":"meter12","size":"67 54","loc":"342.15625 248.34375","attributes":{},"color":"black","figure":"RoundedRectangle","thickness":1},
 
{"name":"Wireless Temperature & Humidity","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"TH","size":"131 175","loc":"347.15625 -324.5","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/6/69/Lorawanth.png","iconSize":"120 130","attributes":{}},
Grafana includes organisation, role and user management, making it straightforward to setup a dedicated client portal with dashboards customised to best show the data and allow analysis. A light theme has been used.
{"name":"Wireless Temperature & Humidity","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"TH2","size":"131 175","loc":"516.15625 -331.5","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/6/69/Lorawanth.png","iconSize":"120 130","attributes":{}},
{"name":"Wireless Temperature & Humidity","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"TH22","size":"131 175","loc":"684.15625 -335.5","color":"#000000","thickness":0,"showKey":false,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/6/69/Lorawanth.png","iconSize":"120 130","attributes":{}}
],
  "linkDataArray": [
{"from":"ntcr","to":"node","fromPort":"temperature","toPort":"TH1","points":[-328.84375,229.25,-306.84375,229.25,-181.84375,229.25,-181.84375,88.09375,-88.84375,88.09375,-78.84375,88.09375]},
{"from":"ntcr","to":"node","fromPort":"gnd","toPort":"TH1GND","points":[-328.84375,218.75,-314.84375,218.75,-189.84375,218.75,-189.84375,77.59375,-96.84375,77.59375,-78.84375,77.59375]},
{"from":"node","to":"meter1","fromPort":"RS485A2","toPort":"left0","points":[171.15625,-111.40625,333.15625,-111.40625,371.40625,-111.40625,371.40625,144.59375,377.65625,144.59375,391.65625,144.59375]},
{"from":"node","to":"meter1","fromPort":"RS485B2","toPort":"left1","points":[171.15625,-100.90625,325.15625,-100.90625,363.40625,-100.90625,363.40625,155.09375,369.65625,155.09375,391.65625,155.09375]},
{"from":"ntcr2","to":"node","fromPort":"temperature","toPort":"TH2","points":[-436.84375,122.25,-414.84375,122.25,-243.84375,122.25,-243.84375,67.09375,-104.84375,67.09375,-78.84375,67.09375]},
{"from":"ntcr2","to":"node","fromPort":"gnd","toPort":"TH2GND","points":[-436.84375,111.75,-422.84375,111.75,-251.84375,111.75,-251.84375,56.59375,-112.84375,56.59375,-78.84375,56.59375]},
{"from":"ntcr22","to":"node","fromPort":"temperature","toPort":"TH3","points":[-443.84375,-5.75,-433.84375,-5.75,-433.84375,-5.75,-433.84375,46.09375,-244.84375,46.09375,-78.84375,46.09375]},
{"from":"ntcr22","to":"node","fromPort":"gnd","toPort":"TH3GND","points":[-443.84375,-16.25,-425.84375,-16.25,-425.84375,-16.25,-425.84375,35.59375,-236.84375,35.59375,-78.84375,35.59375]},
{"from":"ntcr222","to":"node","fromPort":"temperature","toPort":"TH4","points":[-257.84375,-29.75,-247.84375,-29.75,-222.34375,-29.75,-222.34375,25.09375,-228.84375,25.09375,-78.84375,25.09375]},
{"from":"ntcr222","to":"node","fromPort":"gnd","toPort":"TH4GND","points":[-257.84375,-40.25,-239.84375,-40.25,-214.34375,-40.25,-214.34375,14.59375,-220.84375,14.59375,-78.84375,14.59375]},
{"from":"ntcr2222","to":"node","fromPort":"temperature","toPort":"TH5","points":[-447.84375,-131.75,-437.84375,-131.75,-436,-131.75,-436,-131.75,-244,-131.75,-244,-79.90625,-148.84375,-79.90625,-78.84375,-79.90625]},
{"from":"ntcr2222","to":"node","fromPort":"gnd","toPort":"TH5GND","points":[-447.84375,-142.25,-429.84375,-142.25,-428,-142.25,-428,-142.25,-233.84375,-142.25,-233.84375,-90.40625,-140.84375,-90.40625,-78.84375,-90.40625]},
{"from":"ntcr22222","to":"node","fromPort":"temperature","toPort":"TH6","points":[-270.84375,-203.75,-260.84375,-203.75,-180.84375,-203.75,-180.84375,-100.90625,-132.84375,-100.90625,-78.84375,-100.90625]},
{"from":"ntcr22222","to":"node","fromPort":"gnd","toPort":"TH6GND","points":[-270.84375,-214.25,-252.84375,-214.25,-172.84375,-214.25,-172.84375,-111.40625,-124.84375,-111.40625,-78.84375,-111.40625]},
{"from":"ntcr222222","to":"node","fromPort":"temperature","toPort":"TH7","points":[-438.84375,-273.75,-428.84375,-273.75,-143.84375,-273.75,-143.84375,-121.90625,-116.84375,-121.90625,-78.84375,-121.90625]},
{"from":"ntcr2222222","to":"node","fromPort":"temperature","toPort":"TH8","points":[-262.84375,-352.75,-252.84375,-352.75,-113.84375,-352.75,-113.84375,-142.90625,-100.84375,-142.90625,-78.84375,-142.90625]},
{"from":"ntcr2222222","to":"node","fromPort":"gnd","toPort":"TH8GND","points":[-262.84375,-363.25,-244.84375,-363.25,-103.84375,-363.25,-103.84375,-153.40625,-92.84375,-153.40625,-78.84375,-153.40625]},
{"from":"ntcr222222","to":"node","fromPort":"gnd","toPort":"TH7GND","points":[-438.84375,-284.25,-420.84375,-284.25,-134.84375,-284.25,-134.84375,-132.40625,-108.84375,-132.40625,-78.84375,-132.40625]},
{"from":"node","to":"meter1","fromPort":"right13","toPort":"left2","points":[171.15625,-16.90625,261.15625,-16.90625,349,-16.90625,349,165.59375,361.65625,165.59375,391.65625,165.59375]},
{"from":"node","to":"meter1","fromPort":"right17","toPort":"left3","points":[171.15625,25.09375,229.15625,25.09375,340,25.09375,340,176.09375,353.65625,176.09375,391.65625,176.09375]},
{"from":"meter1","to":"meter12","fromPort":"left3","toPort":"left3","points":[391.65625,176.09375,381.65625,176.09375,261.65625,176.09375,261.65625,220.09375,261.65625,264.09375,299.65625,264.09375]},
{"from":"meter1","to":"meter12","fromPort":"left2","toPort":"left2","points":[391.65625,165.59375,373.65625,165.59375,269.65625,165.59375,269.65625,209.59375,269.65625,253.59375,299.65625,253.59375]},
{"from":"meter1","to":"meter12","fromPort":"left1","toPort":"left1","points":[391.65625,155.09375,365.65625,155.09375,277.65625,155.09375,277.65625,199.09375,277.65625,243.09375,299.65625,243.09375]},
{"from":"meter1","to":"meter12","fromPort":"left0","toPort":"left0","points":[391.65625,144.59375,357.65625,144.59375,285.65625,144.59375,285.65625,188.59375,285.65625,232.59375,299.65625,232.59375]}
]}
</pre>




<pre class="wikidiagram" id="Meters" style="display:none">
Sections in Heating and Cooling can be expanded.
{ "class": "GraphLinksModel",
  "copiesArrays": true,
  "copiesArrayObjects": true,
  "linkFromPortIdProperty": "fromPort",
  "linkToPortIdProperty": "toPort",
  "modelData": {"layout":"landscape","title":"meter installation"},
  "nodeDataArray": [
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"p12","loc":"-34.5 92.042236328125","attributes":"[object Object]","size":"59 278","figure":"Cylinder1","fill":"lightblue","color":"#000000","showKey":false,"notes":"","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":""},
{"name":"Heat Meter","fill":"#dbf6cb","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"meter12","size":"105 73","loc":"-30.84375 157.84375","attributes":{},"color":"black","figure":"RoundedRectangle","thickness":1},
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"p122","loc":"-147.5 37.542236328125","attributes":"[object Object]","size":"59 445","figure":"Cylinder1","fill":"pink","color":"#000000","showKey":false,"notes":"","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":""},
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"2","loc":"28.5 46.042236328125","attributes":"[object Object]","size":"48 303","figure":"Cylinder1","fill":"pink","color":"#000000","angle":90,"showKey":false,"notes":"","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":""},
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"T1","loc":"-34.81494140625 100.507080078125","attributes":{},"showKey":true,"notes":"","fill":"#dbf6cb","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":"","size":"29 30","color":"black","figure":"RoundedRectangle"},
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"T2","loc":"-146.81494140625 138.507080078125","attributes":"[object Object]","showKey":true,"notes":"","fill":"#dbf6cb","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":"","size":"29 30","color":"#000000","figure":"RoundedRectangle"},
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"p123","loc":"-34.5 -174.957763671875","attributes":"[object Object]","size":"59 278","figure":"Cylinder1","fill":"#b9ecfd","color":"#000000","showKey":false,"notes":"","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":""},
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"","loc":"108.5 -40.957763671875","attributes":"[object Object]","size":"48 241","figure":"Cylinder1","fill":"#c3e3ee","color":"#000000","angle":90,"showKey":false,"notes":"","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":""},
{"name":"","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"T3","size":"131 106","loc":"112.15625 -74","color":"#000000","thickness":0,"showKey":true,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"60 40","attributes":{}},
{"name":"","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"T5","size":"131 106","loc":"0.15625 -201","color":"#000000","thickness":0,"showKey":true,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"60 40","attributes":"[object Object]","angle":90},
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"4","loc":"339.5 -40.957763671875","attributes":"[object Object]","size":"48 241","figure":"Cylinder1","fill":"#91d7ee","color":"#000000","angle":90,"showKey":false,"notes":"","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":""},
{"name":"","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"T4","size":"131 106","loc":"349.15625 -76","color":"#000000","thickness":0,"showKey":true,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"60 40","attributes":{}},
{"name":"","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"32","loc":"221 -168.457763671875","attributes":"[object Object]","size":"20 219","figure":"Cylinder1","fill":"aliceblue","color":"#000000","angle":0,"showKey":false,"notes":"","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":""},
{"name":"","make":"Regin","model":"","fill":"#ffffff","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"T6","size":"131 106","loc":"249.15625 -193","color":"#000000","thickness":0,"showKey":true,"notes":"","textColor":"#484848","avoidable":true,"topicDevice":"","topicKey":"","image":"","icon":"/images/1/10/Ntc5a.png","iconSize":"60 40","attributes":"[object Object]","angle":90},
{"name":"Providing there is a significant temperature difference between pipes, and temperatures are relatively stable, then flow rates can be calculated in all branches from a known flow in one branch.","fill":"#ffffff","background":"/images/thumb/3/3f/Sticky.png/597px-Sticky.png","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"note","size":"209 177","loc":"403.65625 -207.5","attributes":{},"showKey":false,"notes":"","textColor":"#484848","image":"","icon":"","iconSize":"80 80","avoidable":true,"topicDevice":"","topicKey":""}
],
  "linkDataArray": []}
</pre>

Latest revision as of 19:42, 3 February 2023

https://www.barbican.org.uk/

Designs

barbican_discussion.json Monitoring Architecture
barbican_meter_locations.json Heat Meter and Sensor Locations
meter_installation.json Principles of calculating flow rates from temperatures
barbican_wiring_1.json Wiring 1

Drawings

CHW_Art_Gallery_-_Temporary_Heat_Meter_Locations

Barbicanschem1.png

Temperature Data

Heat Meters

U1000MKII_WM_Issue_1.1


See Micronics Heat Meters for information on how to connect Micronics Heat Meters.


Data Storage Locally and to Dropbox

Data subscribed to is stored on the server locally into csv files.

A file browser utility is included on this wiki with a user account setup to provide simple access to stored CSV files.

Csvfiles1.PNG Csvfiles2.PNG

Every day these files are sent to Dropbox, and then can optionally be purged from the server.

We are currently storing all /dat/ incoming MQTT data, fed from field trials. This will ensure we retain long-term records of all operational data, from all field trials, down to 1 second resolution. It will be a lot of data, but Dropbox has more than enough room.

Savetodropbox.png

Time Series Data Visualisation Using InfluxDB and Grafana

Client Dashboard

Grafana includes organisation, role and user management, making it straightforward to setup a dedicated client portal with dashboards customised to best show the data and allow analysis. A light theme has been used.


Sections in Heating and Cooling can be expanded.