prisme-flow
Version:
prisme platform flow engine
107 lines (96 loc) • 4.33 kB
HTML
<!--
Created by prisme.io on 09/06/2017.
@author <a href="mailto:hello@prisme.io">savane vamara</a> (prisme.io)
-->
<script type="text/javascript">
RED.nodes.registerType('modbus-getter', {
category: 'plc',
color: '#E9967A',
defaults: {
name: {value: ""},
showStatusActivities: {value: false},
showErrors: {value: false},
unitid: {value: ""},
dataType: {value: "", required: true},
adr: {value: "", required: true, validate: RED.validators.number()},
quantity: {value: "", required: true, validate: RED.validators.number()},
server: {type: "modbus-client", required:true}
},
inputs: 1,
outputs: 2,
icon: "modbus.png",
paletteLabel: "Modbus-Getter",
label: function () {
return this.name || "modbus getter"
}
})
</script>
<script type="text/x-red" data-template-name="modbus-getter">
<div class="form-row">
<label for="node-input-name"><i class="icon-tag"></i> <span>Name</span></label>
<input type="text" id="node-input-name" placeholder="Name">
</div>
<div class="form-row">
<label for="node-input-unitid"><i class="icon-bookmark"></i> <span>Unit-Id</span></label>
<input type="text" id="node-input-unitid">
</div>
<div class="form-row">
<label for="node-input-dataType"><i class="icon-list"></i> <span>FC</span></label>
<select id="node-input-dataType">
<option value="Coil">FC 1: Read Coil Status</option>
<option value="Input">FC 2: Read Input Status</option>
<option value="HoldingRegister">FC 3: Read Holding Registers</option>
<option value="InputRegister">FC 4: Read Input Registers</option>
</select>
</div>
<div class="form-row">
<label for="node-input-adr"><i class="icon-home"></i> <span>Address</span></label>
<input type="text" id="node-input-adr" placeholder="0:65535">
</div>
<div class="form-row">
<label for="node-input-quantity"><i class="icon-bookmark"></i> <span>Quantity</span></label>
<input type="text" id="node-input-quantity" placeholder="1-65535">
</div>
<div class="form-row">
<label for="node-input-server"><i class="icon-globe"></i> <span>Server</span></label>
<input type="text" id="node-input-server">
</div>
<hr>
<div class="form-row">
<label style="min-width:160px" for="node-input-showStatusActivities"><i class="fa fa-th"></i>
<span>Show Activities</span></label>
<input type="checkbox" id="node-input-showStatusActivities" style="max-width:30px">
</div>
<div class="form-row">
<label style="min-width:160px" for="node-input-showErrors"><i class="fa fa-th"></i>
<span>Show Errors</span></label>
<input type="checkbox" id="node-input-showErrors" style="max-width:30px">
</div>
</script>
<script type="text/x-red" data-help-name="modbus-getter">
<p><strong>
If you have more than 10 nodes on one communication configuration,
use the Modbus-Flex-Getter or think about multiple connections to your Modbus Device, please!
</strong></p>
<p>Modbus TCP/Serial node with triggered read function by input.</p>
<p>Connects to a Modbus TCP or serial to read coils/inputs/registers at the rate of the incoming msg.</p>
<p>
<h4>Function codes currently supported include:</h4>
<ul>
<li>FC 1: Read Coil Status</li>
<li>FC 2: Read Input Status</li>
<li>FC 3: Read Holding Registers</li>
<li>FC 4: Read Input Registers</li>
</ul>
</p>
<p>
Choose a function code (FC) from the dropdown menu,
select the coil/input/register start address (0:65535),
and the quantity of coils/inputs/registers to be read from the start address.
Choose or edit the Modbus connection configuration.
</p>
<p>Unit-Id (0..255 tcp | 1..247 serial) - leave empty, otherwise it overrides the default Unit-ID of client
config</p>
<p>Output 1: data Array (PDU), modbus response Buffer, input message</p>
<p>Output 2: modbus response Buffer, data Array (PDU), input message</p>
</script>