Gw XML setup: Difference between revisions

From Phobos Wiki
Jump to navigation Jump to search
Line 30: Line 30:
  <CommunicationDelay unit="millisecond">0</CommunicationDelay>
  <CommunicationDelay unit="millisecond">0</CommunicationDelay>
  <PollingTimeout unit="millisecond">500</PollingTimeout>
  <PollingTimeout unit="millisecond">500</PollingTimeout>
  <TimeSync enabled="false"/>
  <TimeSync />
  <RemoveCount>5</RemoveCount>
  <RemoveCount>5</RemoveCount>
  <RemoveTime unit="second">20</RemoveTime>
  <RemoveTime unit="second">20</RemoveTime>
Line 55: Line 55:
Can be empty if only one device on channel.
Can be empty if only one device on channel.
  <Address>addr123</Address>
  <Address>addr123</Address>
=== Element: TimeSync ===
Timesync interval and correction setup
<TimeSync isEnabled="true">
<Interval unit="second">30</Interval>
<Correction />
</TimeSync>
==== Element: Correction ====
Possible timesync correction types:
*Absolute
**Timesync message shall always modified by this amount.
*ConnectionSpeed
**Baudrate based(only when using serial port)
<Correction>
<Absolute enabled="true" unit="millisecond">0</Absolute>
<ConnectionSpeed enabled="true"/>
</Correction>
== Element: Port ==
== Element: Port ==
=== Serial port ===
=== Serial port ===

Revision as of 09:37, 17 May 2011

Element: Setup

The XML setup starts with the tag Setup. The entire setup is contained in this element.

<Setup />

This element contains:

  • Element: Device
    • At least one element of this type.
  • Attribute: device
    • If more than one Device element available. This attribute specifies the id of the Device to use as current setup.

Element: Device

This element contains setup for a specific device. This might be Gw itself or some substation device or SCADA device.

This element contains:

Element: Channel

This element contains:

Element: Protocol

<Protocol comment="protocol8" id="prot_8_0">
	<Address />
	<CommunicationDelay unit="millisecond">0</CommunicationDelay>
	<PollingTimeout unit="millisecond">500</PollingTimeout>
	<TimeSync />
	<RemoveCount>5</RemoveCount>
	<RemoveTime unit="second">20</RemoveTime>
	<ReplaceTime>false</ReplaceTime>
	<Type SubVersion="0" isMaster="false">IEC101UnBalanced</Type>
</Protocol>

Element: Address

This elements contents depend on the protocol selected

Iec-10x

<Address>
	<LinkAddress>1</LinkAddress>
	<LinkAddressLength>1</LinkAddressLength>
	<AsduAddress>1</AsduAddress>
	<AsduAddressLength>2</AsduAddressLength>
	<ObjectAddressLength>2</ObjectAddressLength>
</Address>

MODBUS

Value: integer

<Address>2</Address>

IEC62056-21

Value: string

Can be empty if only one device on channel.

<Address>addr123</Address>

Element: TimeSync

Timesync interval and correction setup

<TimeSync isEnabled="true">
	<Interval unit="second">30</Interval>
	<Correction />
</TimeSync>

Element: Correction

Possible timesync correction types:

  • Absolute
    • Timesync message shall always modified by this amount.
  • ConnectionSpeed
    • Baudrate based(only when using serial port)
<Correction>
	<Absolute enabled="true" unit="millisecond">0</Absolute>
	<ConnectionSpeed enabled="true"/>
</Correction>

Element: Port

Serial port

<Port class="SerialPortSetup">
	<BaudRate>9600</BaudRate>
	<DataBits>8</DataBits>
	<StopBits>1</StopBits>
	<Parity>none</Parity>
	<FlowControl>none</FlowControl>
</Port>

TCP/IP server

<Port class="TcpIpServerSetup">
	<PortNumber>80</PortNumber>
	<ClientIpMask>0.0.0.0</ClientIpMask>
	<Interface>eth0</Interface>
</Port>

TCP/IP client

<Port class="TcpIpClientSetup" name="16">
	<PortNumber>502</PortNumber>
	<IpAddress>10.0.0.89</IpAddress>
	<Interface>eth0</Interface>
</Port>

Virtual port

They are ports 3-5 on GW6.

<Port class="VirtualPortSetup">
	<Port class="SerialPortSetup">
	      <BaudRate>9600</BaudRate>
	      <DataBits>8</DataBits>
	      <StopBits>1</StopBits>
	      <Parity>none</Parity>
	      <FlowControl>none</FlowControl>
	</Port>
</Port>

Element: Objects

Element: Status

Master protocol has (connection)status DI object.

Has child Object element.

Element: Object

Depending on protocol the object belongs to (master/slave), has different child elements.

Possible child elements:

  • Address
  • Buffer
  • Filter

Attribute: type

Defines object type.

Possible values:

  • DI
  • AI
  • CN
  • DO
  • AO


Element: MxValue

Defines the object for current/latest value.

Child elements define default value, flags and time tag.

<MxValue id="DI_6_value">
	<Value>0</Value>
	<BitMask>
		<Bit>Invalid</Bit>
		<Bit>NotTopical</Bit>
	</BitMask>
</MxValue>


Element: Filter

Defines what is going to happen to the incoming measured value.

Element: Buffer

Defines a buffer object, with depth.

<Buffer id="DI_8_0_buf">
	<Depth>10</Depth>
</Buffer>

Element: Interfaces

Network setup

Has at least one Interface element.

<Interface name="eth0">
	<IpAddress>192.168.0.111</IpAddress>
	<Netmask>255.255.255.0</Netmask>
	<Gateway>192.168.0.1</Gateway>
</Interface>

VLAN

Other child elements required for Interface when using VLAN

<VlanId>10</VlanId>
<VlanIngressQos>4</VlanIngressQos>
<VlanEgressQos>4</VlanEgressQos>
<IpIngressQos>0</IpIngressQos>
<IpEgressQos>0</IpEgressQos>