Difference between revisions of "SHIP:Node:linkset"

From Serious Documentation
Jump to: navigation, search
(Properties)
Line 17: Line 17:
 
== Properties ==
 
== Properties ==
 
{| class="wikitable" style="margin: 1em auto 1em auto;"  
 
{| class="wikitable" style="margin: 1em auto 1em auto;"  
! scope="col" | Property Name
+
! scope="col" | Property
 +
! scope="col" | Data Type
 
! scope="col" | Description
 
! scope="col" | Description
 
|-
 
|-
| name|| A unique linkset name within the link
+
| {{Prop|name}}||{{DataType|name}}|| A unique linkset name
 
|-
 
|-
| id || Some [[SHIP:Protocols|protocols]] require the endpoint to have an ID number assigned
+
| {{Prop|id}}||{{DataType|Byte}} || Some [[SHIP:Protocols|protocols]] require the endpoint to have an ID number assigned
 
|-
 
|-
| channel || A port name (e.g. UART0)
+
| {{Prop|refresh}}*||{{DataType|Boolean}} || Set {{Reserved|true}} to start a polling cycle on master/slave [[SHIP:Protocols|protocols]]; goes false when poll complete
 
|-
 
|-
| style="background: #CCDDCC;"| refresh* || style="background: #CCDDCC;"|Set {{Reserved|true}} to start a polling cycle on master/slave [[SHIP:Protocols|protocols]]; goes false when poll complete
+
| {{Prop|enabled}}*||{{DataType|Boolean}} || Defaults to {{Reserved|false}}; must be set {{Reserved|true}} at runtime from a [[SHIP:Sail|Sail script]] to enable the link
|-
 
| style="background: #CCDDCC;"|enabled* || style="background: #CCDDCC;"|Defaults to {{Reserved|false}}; must be set {{Reserved|true}} at runtime* from a [[SHIP:Sail|Sail script]] to enable the linkset
 
 
|}
 
|}
 +
 +
 
{{SHIP:RuntimePropertyNote}}
 
{{SHIP:RuntimePropertyNote}}
  

Revision as of 05:13, 28 November 2012

Node Home

Within a given link, there may be one or more linkset nodes. Each linkset encompasses all the traffic between two endpoints in a link.

For slave link types of master/slave protocols (for example the MODBUS_SLAVE_RTU), the link may be representing one or more Modbus slaves within the SHIPEngine environment. Even though the protocol is running on a single physical communications channel (e.g. UART0), each linkset within the link can act as one of a number of independent virtual slaves.

For master link types of of master/slave protocols (for example MODBUS_MASTER_ASCII) you may want to address multiple slaves on the channel. Each slave would be identified by a linkset with the slave ID set appropriately.

Parent Nodes

The following nodes are permitted to hold this node:

Child Nodes

The following nodes are permitted to exist within this node:

Properties

Property Data Type Description
Must specify a property (e.g. visible)[[SHIP:Property:name:{{{2}}}|{{{2}}}]] name A unique linkset name
Must specify a property (e.g. visible)[[SHIP:Property:id:{{{2}}}|{{{2}}}]] Byte Some protocols require the endpoint to have an ID number assigned
Must specify a property (e.g. visible)[[SHIP:Property:refresh:{{{2}}}|{{{2}}}]]* Boolean Set true to start a polling cycle on master/slave protocols; goes false when poll complete
Must specify a property (e.g. visible)[[SHIP:Property:enabled:{{{2}}}|{{{2}}}]]* Boolean Defaults to false; must be set true at runtime from a Sail script to enable the link


*available at SHIPEngine run time only and cannot be set in SHIPTide. Use a Sail script at shiplaunch time if this property needs to be set when the GUI starts to run.

Examples

Adding two linksets to the example in link reference:

Example link with two linksets

In this example, our GUI is acting as a Modbus Slave attached to UART0, potentially one of many on the communications channel. This physical channel could be, for instance, a multi-drop RS485 network with many slaves of which our SIM is only one. Our GUI, because it has the two linksets at ID #1 and #13 created, will respond as if it were two of those slaves on the network.