UNPKG

prisme-flow

Version:

prisme platform flow engine

86 lines (77 loc) 3.52 kB
<!-- 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-server', { category: 'plc', color: '#E9967A', defaults: { name: {value: ""}, logEnabled: {value: false}, serverPort: {value: 10502, required: true, validate: RED.validators.number()}, responseDelay: {value: 100, required: true, validate: RED.validators.number()}, delayUnit: { value: "ms", required: true, validate: function (v) { return "ms" == v || "s" == v || "m" == v || "h" == v } }, coilsBufferSize: {value: 1024, validate: RED.validators.number()}, holdingBufferSize: {value: 1024, validate: RED.validators.number()}, inputBufferSize: {value: 1024, validate: RED.validators.number()} }, inputs: 1, outputs: 3, icon: "modbus.png", paletteLabel: "Modbus-Server", label: function () { return this.name || "modbus server" } }) </script> <script type="text/x-red" data-template-name="modbus-server"> <div class="form-row"> <label for="node-input-name"><i class="icon-tag"></i> Name</label> <input type="text" id="node-input-name" placeholder="Name"> </div> <div class="form-row"> <label for="node-input-serverPort"><i class="icon-tag"></i> Port</label> <input type="text" id="node-input-serverPort" placeholder="8888"> </div> <div class="form-row"> <label for="node-input-responseDelay"><i class="icon-tag"></i> Response Delay</label> <input type="text" id="node-input-responseDelay" placeholder="100" style="max-width:120px"> <select id="node-input-delayUnit" style="max-width:160px"> <option value="ms">millisecond(s)</option> <option value="s">second(s)</option> <option value="m">minute(s)</option> <option value="h">hour(s)</option> </select> </div> <div class="form-row"> <label for="node-input-coilsBufferSize"><i class="icon-tag"></i> Coils</label> <input type="text" id="node-input-coilsBufferSize" placeholder="1024"> </div> <div class="form-row"> <label for="node-input-holdingBufferSize"><i class="icon-tag"></i> Holding</label> <input type="text" id="node-input-holdingBufferSize" placeholder="1024"> </div> <div class="form-row"> <label for="node-input-inputBufferSize"><i class="icon-tag"></i> Input</label> <input type="text" id="node-input-inputBufferSize" placeholder="1024"> </div> <hr> <div class="form-row"> <label style="min-width:160px" for="node-input-logEnabled"><i class="fa fa-th"></i> Log active</label> <input type="checkbox" id="node-input-logEnabled" style="max-width:30px"> </div> </script> <script type="text/x-red" data-help-name="modbus-server"> <p>Node to provide a Modbus TCP server</p> <p>On injecting the server sends the Buffers to the separate outputs</p> <p>You can use the Modbus write nodes (FC) to write data to the server buffers.</p> <p>You can use the Modbus read nodes (FC) to read data from the server buffers.</p> <p>Output 1: holding Buffer, type, msg</p> <p>Output 2: coils Buffer, type, msg</p> <p>Output 3: input Buffer, type, msg</p> </script>