[r93]: / trunk / IoDrvMonarco / IoDrvMonarco v2.0.1.3.devdesc.xml  Maximize  Restore  History

Download this file

332 lines (322 with data), 14.2 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
<?xml version="1.0" encoding="utf-8"?>
<!--created with CoDeSys 3.0 (http://www.3s-software.com) by DeviceDescriptionBuilder (3S-Smart Software Solutions GmbH)-->
<DeviceDescription xmlns="http://www.3s-software.com/schemas/DeviceDescription-1.0.xsd" xmlns:ts="http://www.3s-software.com/schemas/TargetSettings-0.1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Types namespace="local">
  
  
    <BitfieldType basetype="std:BYTE" name="TBitStringByte">
      <Component identifier="Bit0" type="std:BOOL">
        <Default />
        <VisibleName name="local:TBitStringByte.Bit0">Bit0</VisibleName>
      </Component>
      <Component identifier="Bit1" type="std:BOOL">
        <Default />
        <VisibleName name="local:TBitStringByte.Bit1">Bit1</VisibleName>
      </Component>
      <Component identifier="Bit2" type="std:BOOL">
        <Default />
        <VisibleName name="local:TBitStringByte.Bit2">Bit2</VisibleName>
      </Component>
      <Component identifier="Bit3" type="std:BOOL">
        <Default />
        <VisibleName name="local:TBitStringByte.Bit3">Bit3</VisibleName>
      </Component>
    </BitfieldType>
	<BitfieldType basetype="std:BYTE" name="TLEDStringByte">
	  <Component identifier="Led0" type="std:BOOL">
        <Default />
        <VisibleName name="local:TLEDStringByte.Bit0">Led0</VisibleName>
		<Description>FALSE => IO Channel Value, TRUE => User Value</Description>
      </Component>
      <Component identifier="Led1" type="std:BOOL">
        <Default />
        <VisibleName name="local:TLEDStringByte.Bit1">Led1</VisibleName>
		<Description>FALSE => IO Channel Value, TRUE => User Value</Description>
      </Component>
      <Component identifier="Led2" type="std:BOOL">
        <Default />
        <VisibleName name="local:TLEDStringByte.Bit2">Led2</VisibleName>
		<Description>FALSE => IO Channel Value, TRUE => User Value</Description>
      </Component>
      <Component identifier="Led3" type="std:BOOL">
        <Default />
        <VisibleName name="local:TLEDStringByte.Bit3">Led3</VisibleName>
		<Description>FALSE => IO Channel Value, TRUE => User Value</Description>
      </Component>
	  <Component identifier="Led4" type="std:BOOL">
        <Default />
        <VisibleName name="local:TLEDStringByte.Bit0">Led4</VisibleName>
		<Description>FALSE => IO Channel Value, TRUE => User Value</Description>
      </Component>
      <Component identifier="Led5" type="std:BOOL">
        <Default />
        <VisibleName name="local:TLEDStringByte.Bit1">Led5</VisibleName>
		<Description>FALSE => IO Channel Value, TRUE => User Value</Description>
      </Component>
      <Component identifier="Led6" type="std:BOOL">
        <Default />
        <VisibleName name="local:TLEDStringByte.Bit2">Led6</VisibleName>
		<Description>FALSE => IO Channel Value, TRUE => User Value</Description>
      </Component>
      <Component identifier="Led7" type="std:BOOL">
        <Default />
        <VisibleName name="local:TLEDStringByte.Bit3">Led7</VisibleName>
		<Description>FALSE => IO Channel Value, TRUE => User Value</Description>
      </Component>
	</BitfieldType>
	<BitfieldType basetype="std:BYTE" name="TCtrlStringByte">
	  <Component identifier="Status LED CTRL" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>Status LED CTRL</VisibleName>
		<Description>Status LED indication => TRUE: User controlled, FALSE: System Status Indication</Description>
	  </Component>
	  <Component identifier="StatusLEDValue" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>Status LED Value</VisibleName>
		<Description>Only applicable if Status LED CTRL is enabled => TRUE: LED on, FALSE: LED off</Description>
	  </Component>
	  <Component identifier="OneWireShutdown" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>1-Wire power shutdown</VisibleName>
		<Description>Useful for bus reset in case of freeze => TRUE: 1-Wire bus power down, FALSE: normal operation</Description>
	  </Component>
	  <Component identifier="RESERVED" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>[RESERVED]</VisibleName>
		<Description>RESERVED: Always FALSE</Description>
	  </Component>
	  <Component identifier="Counter1Reset" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>Counter 1 Reset</VisibleName>
		<Description>TRUE: COUNTER1 Value reset request, FALSE: normal operation</Description>
	  </Component>
	  <Component identifier="Counter2Reset" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>Counter 2 Reset</VisibleName>
		<Description>TRUE: COUNTER2 Value reset request, FALSE: normal operation</Description>
	  </Component>
	  <Component identifier="SignOfLife0" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>[FUTURE]</VisibleName>
		<Description>FUTURE: Sign of Life 0/1 - should be incremented with each data transfer as 2bit number low/high bit, used by firmware as health check of SPI Master</Description>
	  </Component>
	  <Component identifier="SignOfLife1" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>[FUTURE]</VisibleName>
		<Description>FUTURE: Sign of Life 0/1 - should be incremented with each data transfer as 2bit number low/high bit, used by firmware as health check of SPI Master</Description>
	  </Component>
	</BitfieldType>
	<BitfieldType basetype="std:BYTE" name="THWConfigStringByte">
	  <Component identifier="AIN1Shunt" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>AIN1 Shunt</VisibleName>
		<Description>AIN1 current loop shunt resistor enable (TRUE / FALSE)</Description>
	  </Component>
	  <Component identifier="AIN2Shunt" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>AIN2 Shunt</VisibleName>
		<Description>AIN2 current loop shunt resistor enable (TRUE / FALSE)</Description>
	  </Component>
	  <Component identifier="RS-485 Termination resistor" type="std:BOOL">
		<Default>FALSE</Default>
		<VisibleName>RS-485 Termination resistor</VisibleName>
		<Description>RS-485 termination resistor enable (TRUE / FALSE)</Description>
	  </Component>
	</BitfieldType>
 </Types>
 
 
 <!--
  	<HostParameterSet>
		<ParameterSection>
   	        <Name name="local:GeneralParameters">Digital In</Name>
				<Parameter ParameterId="1000" type="local:TBitStringByte">
					<Attributes channel="input"/>
					<Name name="local:digin">Digital Inputs</Name>
				</Parameter>
		</ParameterSection>
		<ParameterSection>
		    <Name name="local:GeneralParameters">Analog In </Name>
				<Parameter ParameterId="1100" type="std:WORD">
					<Attributes channel="input"/>
					<Name name="AI0">AI0</Name>
				</Parameter>
				<Parameter ParameterId="1101" type="std:WORD">
					<Attributes channel="input"/>
					<Name name="AI1">AI1</Name>
				</Parameter>
		</ParameterSection>
		<ParameterSection>
   	        <Name name="local:GeneralParameters">Digital Out</Name>
				<Parameter ParameterId="2000" type="local:TBitStringByte">
					<Attributes channel="output"/>
					<Name name="local:digout">Digital Outputs</Name>
				</Parameter>
		</ParameterSection>
		<ParameterSection>
		    <Name name="local:GeneralParameters">Analog Out </Name>
				<Parameter ParameterId="2100" type="std:WORD">
					<Attributes channel="output"/>
					<Name name="AO0">AO0</Name>
				</Parameter>
				<Parameter ParameterId="2101" type="std:WORD">
					<Attributes channel="output"/>
					<Name name="AO1">AO1</Name>
				</Parameter>
		</ParameterSection>
		<ParameterSection>
   	        <Name name="local:GeneralParameters">Control Byte</Name>
				<Parameter ParameterId="2200" type="local:TCtrlStringByte">
					<Attributes channel="output"/>
					<Name name="local:UserLeds">Control Byte</Name>
				</Parameter>
		</ParameterSection>
		<ParameterSection>
   	        <Name name="local:GeneralParameters">HW Config</Name>
				<Parameter ParameterId="2300" type="local:THWConfigStringByte">
					<Attributes channel="output"/>
					<Name name="local:UserLeds">HW Config Byte</Name>
				</Parameter>
		</ParameterSection>
		<ParameterSection>
   	        <Name name="local:GeneralParameters">User Leds</Name>
				<Parameter ParameterId="2400" type="local:TLEDStringByte">
					<Attributes channel="output"/>
					<Name name="local:UserLeds">User Leds Byte</Name>
				</Parameter>
		</ParameterSection>
		</HostParameterSet>
-->


	<StructType name="IoDrvInput">
	  <Component identifier="adcVoltages" type="local:Ch8REAL">
        <Default />
        <VisibleName name="adcVoltages">adcVoltages</VisibleName>
      </Component>
	  <Component identifier="adcRaw" type="local:Ch8UINT">
        <Default />
        <VisibleName name="adcRaw">adcRaw</VisibleName>
      </Component>
	  <Component identifier="optoIn" type="local:Channel8BOOL">
        <Default />
        <VisibleName name="local:optoIn">optoIn</VisibleName>
      </Component>
	  <Component identifier="gpioIn" type="local:Ch5BOOL">
        <Default />
        <VisibleName name="local:gpioIn">gpioIn</VisibleName>
      </Component>
    </StructType>
    <StructType name="IoDrvOutput">
	  <Component identifier="dacVoltage" type="std:REAL">
        <Default />
        <VisibleName name="local:dacVoltageInput">dacVoltage Input</VisibleName>
      </Component>
	  <Component identifier="relayState" type="local:Channel8BOOL">
        <Default />
        <VisibleName name="local:relayState">relayState</VisibleName>
      </Component>
	  <Component identifier="openDrainState" type="local:OpenDrainState">
        <Default />
        <VisibleName name="openDrain State">OpenDrain State</VisibleName>
      </Component>
	  <Component identifier="gpioOut" type="local:Ch5BOOL">
        <Default />
        <VisibleName name="gpioOut">gpioOut</VisibleName>
      </Component>
	  <Component identifier="gpioDir" type="local:Ch5BOOL">
        <Default />
        <VisibleName name="gpioDir">GPIO Direction</VisibleName>
      </Component>
    </StructType>
	<StructType name="IoDrvConfig">
	  <!--
      <Component identifier="StackLevel" type="std:USINT">
        <Default>16#1</Default>
		<VisibleName name="local:StackLevel">StackLevel</VisibleName>
        <Description name="local:StackLevel.Desc">Stack level of MegaIO boards</Description>
      </Component>
	  -->
	  <Component identifier="ControlByte="local:TCtrlStringByte">
		<VisibleName name="local:ControlByte">Control Byte</VisibleName>
		<Description name="local:ControlByte.Desc">Control Byte </Description>	
      </Component>
	  <Component identifier="HWConfig="local:THWConfigStringByte">
		<VisibleName name="local:HWConfig">HW Config </VisibleName>
		<Description name="local:HWConfig.Desc">HW Config Byte</Description>	
      </Component>		
		<ParameterSection>
   	        <Name name="local:GeneralParameters">HW Config</Name>
				<Parameter ParameterId="2300" type="local:THWConfigStringByte">
					<Attributes channel="output"/>
					<Name name="local:UserLeds">HW Config Byte</Name>
				</Parameter>
		</ParameterSection>
	</StructType>
 
 
   <Strings namespace="local">
   <Language lang="en"></Language>
  </Strings>
  <Files namespace="local">
    <Language lang="en">
	  <File fileref="local" identifier="ImageFile">
        <LocalFile>device.png</LocalFile>
      </File>
      <File fileref="local" identifier="Icon">
        <LocalFile>device.ico</LocalFile>
      </File>
    </Language>
  </Files>
  <Device hideInCatalogue="false" showParamsInDevDescOrder="true">
    <DeviceIdentification>
      <Type>501</Type>
      <Id>0004 0005</Id>
      <Version>2.0.1.3</Version>
    </DeviceIdentification>
    <DeviceInfo>
      <Name name="local:ModelName">Monarco HAT</Name>
      <Description name="local:DeviceDescription">An I/O driver for Monarco HAT written by Aliazzz</Description>
      <Vendor name="local:VendorName">Open Source</Vendor>
      <OrderNumber>-</OrderNumber>
	  <Image name="local:ImageFile">device.png</Image>
	  <Icon name="local:Icon">device.ico</Icon>
	</DeviceInfo>
    <Connector moduleType="500" interface="Raspberry.SPI" role="child" explicit="false" connectorId="1" hostpath="-1" alwaysmapping="true">
      <InterfaceName name="local:PCI">SPI devices</InterfaceName>
      <Slot count="1" allowEmpty="false">
      </Slot> 
      <DriverInfo needsBusCycle="true"> 
        <RequiredLib libname="Monarco HAT library for CODESYS" vendor="Open Source" version="2.0.1.3" identifier="DeviceLib">
          <FBInstance basename="$(DeviceName)" fbname="IoDrvMonarco">
            <Initialize methodName="Initialize" />
          </FBInstance>
        </RequiredLib>
      </DriverInfo>	
		
      <HostParameterSet>
		<ParameterSection>
   	      <Name name="local:GeneralParameters">Input Channels</Name>
          <Parameter ParameterId="1000" type="local:IoDrvInput">
		 	<Attributes channel="Input" />
            <Name name="local:Input">Input Channels</Name>
           </Parameter>
        </ParameterSection>
		<ParameterSection>
   	      <Name name="local:GeneralParameters">Output Channels</Name>		
          <Parameter ParameterId="2000" type="local:IoDrvOutput">
            <Attributes channel="Output" />
            <Name name="local:Output">Output Channels</Name>
          </Parameter>
		</ParameterSection>
		<ParameterSection>
   	      <Name name="local:GeneralParameters">Configuration</Name>
	  	  <Parameter ParameterId="3000" type="local:IoDrvConfig">
            <Attributes channel="none" />
            <Name name="local:Config">Configuration</Name>
          </Parameter>
		</ParameterSection>
	  </HostParameterSet>
		
    </Connector>
	<ExtendedSettings>
      <ts:TargetSettings>
        <ts:section name="deviceconfiguration">
          <ts:setting name="createBitChannels" type="boolean" access="visible">
            <ts:value>1</ts:value>
          </ts:setting>
        </ts:section>
      </ts:TargetSettings>
    </ExtendedSettings>
  </Device>
</DeviceDescription>