Difference between revisions of "Wiring Editor"

From Open Source Controls Wiki
Jump to navigation Jump to search
Line 65: Line 65:
</pre>
</pre>


<pre class="wikidiagram" id="heating_only_hiu" style="display:none">
<pre class="wikidiagram" id="Heating_only_HIU" style="display:none">
{ "class": "GraphLinksModel",
{ "class": "GraphLinksModel",
   "copiesArrays": true,
   "copiesArrays": true,
Line 126: Line 126:
{"name":"Pressure + Temp Sensor","range":"6 bar","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right1","portColor":"#ffc900"},{"portId":"right2","portColor":"#000000"},{"portId":"right3","portColor":"#8827e7","signalTypes":["#ffff00"]},{"portId":"right0","portColor":"#8827e7","signalTypes":["#ffff00"]}],"topArray":[],"bottomArray":[],"key":"RPS","size":"88 55","loc":"-587.6875 -17.41328125000001"},
{"name":"Pressure + Temp Sensor","range":"6 bar","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right1","portColor":"#ffc900"},{"portId":"right2","portColor":"#000000"},{"portId":"right3","portColor":"#8827e7","signalTypes":["#ffff00"]},{"portId":"right0","portColor":"#8827e7","signalTypes":["#ffff00"]}],"topArray":[],"bottomArray":[],"key":"RPS","size":"88 55","loc":"-587.6875 -17.41328125000001"},
{"name":"Heat Meter","fill":"#dbf6cb","leftArray":[{"portId":"left0","portColor":"#ddddba"},{"portId":"left1","portColor":"#ddddbb"}],"rightArray":[],"topArray":[],"bottomArray":[],"key":"meter","size":"67 54","loc":"367.15625 -16.875"},
{"name":"Heat Meter","fill":"#dbf6cb","leftArray":[{"portId":"left0","portColor":"#ddddba"},{"portId":"left1","portColor":"#ddddbb"}],"rightArray":[],"topArray":[],"bottomArray":[],"key":"meter","size":"67 54","loc":"367.15625 -16.875"},
{"name":"Single Plate HIU\nfor Central Heating","fill":"#ffffff00","background":"/images/thumb/3/3f/Sticky.png/597px-Sticky.png","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"note","size":"184 117","loc":"-835.84375 -222.375"},
{"name":"Twin Plate HIU\nfor DHW and\nCentral Heating","fill":"#ffffff00","background":"/images/thumb/3/3f/Sticky.png/597px-Sticky.png","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"note","size":"150 136","loc":"-851.84375 -224.875"},
{"name":"NTC10K","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"ntc4","size":"58 40","loc":"-605.84375 -85.875"},
{"name":"NTC10K","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"ntc4","size":"58 40","loc":"-605.84375 -85.875"},
{"name":"NTC10K","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"ntc5","size":"58 40","loc":"-600.84375 49.125"},
{"name":"NTC10K","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"ntc5","size":"58 40","loc":"-600.84375 49.125"},
{"name":"Pulsed Flow Sensor","fill":"#dbf6cb","pulsesPerLitre":"520","leftArray":[],"rightArray":[{"portId":"right1","portColor":"#ffc900"},{"portId":"right2","portColor":"#000000"},{"portId":"right0","portColor":"#00ffff","signalTypes":["#00ffff","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"FS","size":"82.107421875 53","loc":"-582.84375 165.125"},
{"name":"Pulsed Flow Sensor","fill":"#dbf6cb","pulsesPerLitre":"520","leftArray":[],"rightArray":[{"portId":"right1","portColor":"#ffc900"},{"portId":"right2","portColor":"#000000"},{"portId":"right0","portColor":"#00ffff","signalTypes":["#00ffff","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"FS","size":"82.107421875 53","loc":"-582.84375 165.125"},
{"name":"Control Valve (PWM)","fill":"#cfe4f7","leftArray":[],"rightArray":[],"topArray":[{"portId":"top2","portColor":"#000000"},{"portId":"top1","portColor":"#0000ff","signalTypes":["#40aceb"]},{"portId":"top0","portColor":"#40aceb","signalTypes":["#0000ff"]}],"bottomArray":[],"key":"valve4","size":"90 52","loc":"197.8125 257.75"},
{"name":"Control Valve (PWM)","fill":"#cfe4f7","leftArray":[],"rightArray":[],"topArray":[{"portId":"top2","portColor":"#000000"},{"portId":"top1","portColor":"#0000ff","signalTypes":["#40aceb"]},{"portId":"top0","portColor":"#40aceb","signalTypes":["#0000ff"]},{"portId":"top3","portColor":"#ff0000"}],"bottomArray":[],"key":"valve4","size":"90 52","loc":"197.8125 257.75"},
{"name":"Control Valve (PWM)","fill":"#cfe4f7","leftArray":[],"rightArray":[],"topArray":[{"portId":"top2","portColor":"#000000"},{"portId":"top1","portColor":"#0000ff","signalTypes":["#40aceb"]},{"portId":"top0","portColor":"#40aceb","signalTypes":["#0000ff"]}],"bottomArray":[],"key":"valve42","size":"90 52","loc":"323.15625 239.125"},
{"name":"Control Valve (PWM)","fill":"#cfe4f7","leftArray":[],"rightArray":[],"topArray":[{"portId":"top2","portColor":"#000000"},{"portId":"top1","portColor":"#0000ff","signalTypes":["#40aceb"]},{"portId":"top0","portColor":"#40aceb","signalTypes":["#0000ff"]},{"portId":"top3","portColor":"#ff0000"}],"bottomArray":[],"key":"valve42","size":"90 52","loc":"323.15625 239.125"},
{"name":"Pump (PWM)","fill":"#cfe4f7","leftArray":[],"rightArray":[],"topArray":[{"portId":"top2","portColor":"#000000"},{"portId":"top1","portColor":"#0000ff","signalTypes":["#40aceb"]},{"portId":"top0","portColor":"#40aceb","signalTypes":["#0000ff"]}],"bottomArray":[],"key":"pump","size":"57.3212890625 52","loc":"60.15625 289.125"},
{"name":"Pump (PWM)","fill":"#cfe4f7","leftArray":[],"rightArray":[],"topArray":[{"portId":"top2","portColor":"#000000"},{"portId":"top1","portColor":"#0000ff","signalTypes":["#40aceb"]},{"portId":"top0","portColor":"#40aceb","signalTypes":["#0000ff"]}],"bottomArray":[],"key":"pump","size":"57.3212890625 52","loc":"60.15625 289.125"},
{"name":"Timeclock","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ffff","signalTypes":["#00ffff","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"timer","size":"78.78515625 47","loc":"-339.84375 235.125"},
{"name":"Timeclock","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ffff","signalTypes":["#00ffff","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"timer","size":"78.78515625 47","loc":"-339.84375 235.125"},
{"name":"Modbus Room Thermostats","fill":"#dbf6cb","leftArray":[{"portId":"left0","portColor":"#888891"},{"portId":"left1","portColor":"#888890"}],"rightArray":[],"topArray":[],"bottomArray":[],"key":"modbus1","size":"105 52","loc":"387.5625 -122"},
{"name":"Modbus Room Thermostats","fill":"#dbf6cb","leftArray":[{"portId":"left0","portColor":"#888891"},{"portId":"left1","portColor":"#888890"}],"rightArray":[],"topArray":[],"bottomArray":[],"key":"modbus1","size":"105 52","loc":"387.5625 -122"},
{"name":"NTC10K","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"ntc6","size":"58 40","loc":"-597.4375 106"},
{"name":"NTC10K","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ff00","signalTypes":["#00ff00","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"ntc6","size":"58 40","loc":"-597.4375 106"},
{"name":"Modbus Master","fill":"#dbf6cb","leftArray":[{"portId":"left0","portColor":"#888891"},{"portId":"left1","portColor":"#888890"}],"rightArray":[],"topArray":[],"bottomArray":[],"key":"modbus12","size":"67 54","loc":"369.15625 -188.875"}
{"name":"Modbus Master","fill":"#dbf6cb","leftArray":[{"portId":"left0","portColor":"#888891"},{"portId":"left1","portColor":"#888890"}],"rightArray":[],"topArray":[],"bottomArray":[],"key":"modbus12","size":"67 54","loc":"369.15625 -188.875"},
{"name":"The system deploys two \nModbus lines.\n\nOne for the local room \nthermostat circuit with \nmultiple zones to control.\n\nThe other is for a Modbus\nuplink to a remote HIU \nsupervisor or BMS system","fill":"#ffffff00","background":"/images/thumb/3/3f/Sticky.png/597px-Sticky.png","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"note2","size":"214 226","loc":"-826.734375 -30"},
{"name":"Prepay Isolation","fill":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ffff","signalTypes":["#00ffff","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"prepay","size":"78.78515625 47","loc":"-243.84375 312.125"},
{"name":"Control valves are powered\nfrom the board with \nbattery backup.\n\nValves will be closed on loss\nof mains power, or on loss of\nsignal from pre-pay system","fill":"#ffffff00","background":"/images/thumb/3/3f/Sticky.png/597px-Sticky.png","leftArray":[],"rightArray":[],"topArray":[],"bottomArray":[],"key":"note3","size":"233 183","loc":"-820.34375 193.625"}
],
],
   "linkDataArray": [
   "linkDataArray": [
Line 159: Line 162:
{"from":"FS","to":"node","fromPort":"right0","toPort":"bottom1","points":[-533.0400390625,175.125,-503.0400390625,175.125,-102.6875,175.125,-102.6875,144.6875,-102.6875,114.25,-102.6875,92.25]},
{"from":"FS","to":"node","fromPort":"right0","toPort":"bottom1","points":[-533.0400390625,175.125,-503.0400390625,175.125,-102.6875,175.125,-102.6875,144.6875,-102.6875,114.25,-102.6875,92.25]},
{"from":"FS","to":"node","fromPort":"right2","toPort":"bottom0","points":[-533.0400390625,165.125,-511.0400390625,165.125,-112.6875,165.125,-112.6875,135.6875,-112.6875,106.25,-112.6875,92.25]},
{"from":"FS","to":"node","fromPort":"right2","toPort":"bottom0","points":[-533.0400390625,165.125,-511.0400390625,165.125,-112.6875,165.125,-112.6875,135.6875,-112.6875,106.25,-112.6875,92.25]},
{"from":"valve4","to":"node","fromPort":"top0","toPort":"right22","points":[207.8125,223,207.8125,193,207.8125,69.25,168.0625,69.25,128.3125,69.25,110.3125,69.25]},
{"from":"valve4","to":"node","fromPort":"top0","toPort":"right22","points":[202.8125,223,202.8125,193,202.8125,69.25,165.5625,69.25,128.3125,69.25,110.3125,69.25]},
{"from":"valve4","to":"node","fromPort":"top1","toPort":"bottom9","points":[197.8125,223,197.8125,201,197.8125,201,-22.6875,201,-22.6875,198.25,-22.6875,92.25]},
{"from":"valve4","to":"node","fromPort":"top1","toPort":"bottom9","points":[192.8125,223,192.8125,201,192.8125,201,-22.6875,201,-22.6875,198.25,-22.6875,92.25]},
{"from":"valve4","to":"node","fromPort":"top2","toPort":"bottom8","points":[187.8125,223,187.8125,209,187.8125,209,-32.6875,209,-32.6875,206.25,-32.6875,92.25]},
{"from":"valve4","to":"node","fromPort":"top2","toPort":"bottom8","points":[182.8125,223,182.8125,209,182.8125,209,-32.6875,209,-32.6875,206.25,-32.6875,92.25]},
{"from":"valve42","to":"node","fromPort":"top0","toPort":"right20","points":[333.15625,204.375,333.15625,174.375,333.15625,49.25,238.734375,49.25,144.3125,49.25,110.3125,49.25]},
{"from":"valve42","to":"node","fromPort":"top0","toPort":"right20","points":[328.15625,204.375,328.15625,174.375,328.15625,49.25,236.234375,49.25,144.3125,49.25,110.3125,49.25]},
{"from":"valve42","to":"node","fromPort":"top1","toPort":"bottom11","points":[323.15625,204.375,323.15625,182.375,323.15625,180,-2.6875,180,-2.6875,182.25,-2.6875,92.25]},
{"from":"valve42","to":"node","fromPort":"top1","toPort":"bottom11","points":[318.15625,204.375,318.15625,182.375,318.15625,180,-2.6875,180,-2.6875,182.25,-2.6875,92.25]},
{"from":"valve42","to":"node","fromPort":"top2","toPort":"bottom10","points":[313.15625,204.375,313.15625,190.375,313.15625,188,-12.6875,188,-12.6875,190.25,-12.6875,92.25]},
{"from":"valve42","to":"node","fromPort":"top2","toPort":"bottom10","points":[308.15625,204.375,308.15625,190.375,308.15625,188,-12.6875,188,-12.6875,190.25,-12.6875,92.25]},
{"from":"pump","to":"node","fromPort":"top0","toPort":"right18","points":[70.15625,254.375,70.15625,244.375,70.15625,127.125,160.3125,127.125,160.3125,29.25,110.3125,29.25]},
{"from":"pump","to":"node","fromPort":"top0","toPort":"right18","points":[70.15625,254.375,70.15625,244.375,70.15625,127.125,160.3125,127.125,160.3125,29.25,110.3125,29.25]},
{"from":"node","to":"pump","fromPort":"bottom12","toPort":"top2","points":[7.3125,92.25,7.3125,174.25,7.3125,143.125,50.15625,143.125,50.15625,240.375,50.15625,254.375]},
{"from":"node","to":"pump","fromPort":"bottom12","toPort":"top2","points":[7.3125,92.25,7.3125,174.25,7.3125,143.125,50.15625,143.125,50.15625,240.375,50.15625,254.375]},
Line 176: Line 179:
{"from":"node","to":"modbus1","fromPort":"right5","toPort":"left1","points":[110.3125,-100.75,164.3125,-100.75,256.3125,-100.75,256.3125,-117,316.3125,-117,326.3125,-117]},
{"from":"node","to":"modbus1","fromPort":"right5","toPort":"left1","points":[110.3125,-100.75,164.3125,-100.75,256.3125,-100.75,256.3125,-117,316.3125,-117,326.3125,-117]},
{"from":"modbus12","to":"node","fromPort":"left0","toPort":"right1","points":[326.90625,-193.875,308.90625,-193.875,208.15625,-193.875,208.15625,-140.75,132.3125,-140.75,110.3125,-140.75]},
{"from":"modbus12","to":"node","fromPort":"left0","toPort":"right1","points":[326.90625,-193.875,308.90625,-193.875,208.15625,-193.875,208.15625,-140.75,132.3125,-140.75,110.3125,-140.75]},
{"from":"modbus12","to":"node","fromPort":"left1","toPort":"right2","points":[326.90625,-183.875,316.90625,-183.875,218.609375,-183.875,218.609375,-130.75,140.3125,-130.75,110.3125,-130.75]}
{"from":"modbus12","to":"node","fromPort":"left1","toPort":"right2","points":[326.90625,-183.875,316.90625,-183.875,218.609375,-183.875,218.609375,-130.75,140.3125,-130.75,110.3125,-130.75]},
{"from":"prepay","to":"node","fromPort":"right1","toPort":"bottom5","points":[-195.701171875,317.125,-173.701171875,317.125,-62.6875,317.125,-62.6875,231.6875,-62.6875,146.25,-62.6875,92.25]},
{"from":"prepay","to":"node","fromPort":"right0","toPort":"bottom4","points":[-195.701171875,307.125,-181.701171875,307.125,-72.6875,307.125,-72.6875,222.6875,-72.6875,138.25,-72.6875,92.25]},
{"from":"valve4","to":"node","fromPort":"top3","toPort":"right23","points":[212.8125,223,212.8125,185,212.8125,79.25,166.5625,79.25,120.3125,79.25,110.3125,79.25]},
{"from":"valve42","to":"node","fromPort":"top3","toPort":"right21","points":[338.15625,204.375,338.15625,166.375,338.15625,59.25,237.234375,59.25,136.3125,59.25,110.3125,59.25]}
]}
]}
</pre>
</pre>

Revision as of 14:52, 23 June 2022

Concons1.png

Data

Contains invisible JSON data driving this page.


See Also

Ports and Colours

Diagrams are based around nodes (devices) with ports for making connections.

To enable automatic wiring, port types are required as well as rules about how they can be connected.

Colours tend to be the most commonly used identifier for types of connections, with in computer language is a hex value representing red, green and blue. #000000 is black, #ff0000 is red, #00ff00 is green, #ffffff is white, and so on.

However we require another level of distinction as we may desire to wire to a particular GND for example, or to give communications a plus and minus. This is achieved by using the last digit of the colour as a variation, providing 1,048,576 colours (or signal levels), each with 16 variations.

Taking GND (black) for example. #000000 is the default black and used for ground connections. We may however use #00000f for a power supply ground, or #000001 for a less popular ground that can be used if needed in preference to a popular ground.

Compareblk.png

One can take this to an extreme and give every signal level a unique colour value. This may well feature in future live wiring systems.

By default, ports connect to ports of the same colour. However, a 0-10V OUT cannot connect to another 0-10V OUT so we specify compatible ports with a list of compatible colours called signalTypes, in order of preference. If a preferred port type is free it will be used, if not then the next in the list will be tried, and so on. You can see this in use in the following data for a room thermostat, where it is used to allow connection to both a dry contact #00ffffff and a universal input #ffff00.

{"name":"Room Thermostat","color":"#dbf6cb","leftArray":[],"rightArray":[{"portId":"right0","portColor":"#000000"},{"portId":"right1","portColor":"#00ffff","signalTypes":["#00ffff","#ffff00"]}],"topArray":[],"bottomArray":[],"key":"roomstat","size":"78.78515625 47"}

Rststwire.png Rststwire2.png

How to Use in Articles

The following two elements have been given an id (view in the source) that can then be passed to a diagram using an iframe tag.

The second element has also been hidden from view.

This way it is possible to create a design on this page and then include it into articles using pure JSON.

Versions

Version
wiring8
  • Context menus for links
  • Context menus for changing node and link line type, colour, and thickness
  • Grouping on nodes using Ctrl+G with group context menus
wiring7
  • Port labels shown on hover
wiring6
  • Palette reduced in width
  • Download PNG
wiringFrame basic view with download SVG button

Improvements

  • Number terminals
  • Fix widths with top/bottom terminals
  • Hover text over terminals
  • Change colour of blocks
  • Position terminals (drag along sides)
  • Menu to change line thickness, type, colour, arrows.
  • Optional wire labels = controller number + terminal number (e.g. 101)