EM32DX-E4【C#】

news2024/11/15 23:03:02

1外观:

ecat总线,分布式io

2电源:

靠近SW拨码:+24V

中间:0V

靠近面板:PE接地

3DI:

6000H   DI输入寄存器 16-bit (16位输入) 
        00H U8 子索引总数 
        01H Unsigned16 IN16bit(上传16位输入值)【读DI 15~0】
        02H Unsigned16 IN16bit(上传16位输入值)【读DI 31~16】
        03H Unsigned16 IN16bit(上传16位输入值)【读DI 47~32】
 
7000H   DO输出寄存器 16-bit 
        00H U8 子索引总数 
        01H Unsigned16 OUT16bit(设置16位输出值)【写DO 15~0】
        02H Unsigned16 OUT16bit(设置16位输出值)【写DO 31~16】
        03H Unsigned16 OUT16bit(设置16位输出值)【写DO 47~32】

4DO:

6000H   DI输入寄存器 16-bit (16位输入) 
        00H U8 子索引总数 
        01H Unsigned16 IN16bit(上传16位输入值)【读DI 15~0】
        02H Unsigned16 IN16bit(上传16位输入值)【读DI 31~16】
        03H Unsigned16 IN16bit(上传16位输入值)【读DI 47~32】
 
7000H   DO输出寄存器 16-bit 
        00H U8 子索引总数 
        01H Unsigned16 OUT16bit(设置16位输出值)【写DO 15~0】
        02H Unsigned16 OUT16bit(设置16位输出值)【写DO 31~16】
        03H Unsigned16 OUT16bit(设置16位输出值)【写DO 47~32】

5字典1000h:

1000H 00H Device type Unsigned32 ro Device type and profile(设备类型) 
初始值:0x0FFF0192 
1001H 00H Error register Unsigned8 ro Error register(错误寄存器) 
初始值:0x00 
1008H 00H Device name Vis String8 ro Manufacturer’s designation 
初始值:EM32DX-E4-V30 
1009H 00H Hardware  version Vis String8 ro Hardware version 
初始值:3.1 
100AH 00H Software 
version Vis String8 ro Software version 
初始值:3.2 
1018H Identity ro (设备信息) 
 00H Largest sub-index 
Unsigned8 ro Largest sub-index supported » 04h 
 01H Vendor ID Unsigned32 ro Vendor ID 
初始值:0x00004321 
 02H Product code Unsigned32 ro Product code 
初始值:0x01400023 
 03H Revision Unsigned32 ro Revision number 
初始值:0x18050210 
 04H Serial number Unsigned32 ro Serial number 
初始值:0x00000001 

6字典6000h:

6000H 00H IN 
 01H IN1 Unsigned16 ro 输入 0-15     //DI0~15输入状态

5.2.2 IN 计数参数设置 
6020H 00H IN0 计数 
 01H IN0_SetCountMode Signed32 r/w 初始值默认为 0 
设置 IN0 的计数方式:0 电平下降沿,1 电平上升沿, 2 电平任意沿 
 02H IN0_SetCountVal Unsigned32 r/w 设置 IN0 的计数值,初始值默认为 0 
 03H IN0_ReadCountVal Unsigned32 ro 读取 IN0 的计数值 
6021H 00H IN1 计数 
 01H IN1_SetCountMode Signed32 r/w 
 02H IN1_SetCountVal Unsigned32 r/w 设置 IN1 的计数值,初始值默认为 0 
 03H IN1_ReadCountVal Unsigned32 ro 读取 IN1 的计数值 
6022H 00H IN2 计数 
 01H IN2_SetCountMode Signed32 r/w 
 02H IN2_SetCountVal Unsigned32 r/w 设置 IN2 的计数值,初始值默认为 0 
 03H IN2_ReadCountVal Unsigned32 ro 读取 IN2 的计数值  
6023H 00H IN3 计数 
 01H IN3_SetCountMode Signed32 r/w 
 02H IN3_SetCountVal Unsigned32 r/w 设置 IN3 的计数值,初始值默认为 0 
 03H IN3_ReadCountVal Unsigned32 ro 读取 IN3 的计数值 
6024H 00H IN4 计数 
 01H IN4_SetCountMode Signed32 r/w 
 02H IN4_SetCountVal Unsigned32 r/w 设置 IN4 的计数值,初始值默认为 0 
 03H IN4_ReadCountVal Unsigned32 ro 读取 IN4 的计数值 
6025H 00H IN5 计数 
 01H IN5_SetCountMode Signed32 r/w 
 02H IN5_SetCountVal Unsigned32 r/w 设置 IN5 的计数值,初始值默认为 0 
 03H IN5_ReadCountVal Unsigned32 ro 读取 IN5 的计数值 
6026H 00H IN6 计数 
 01H IN6_SetCountMode Signed32 r/w 
 02H IN6_SetCountVal Unsigned32 r/w 设置 IN6 的计数值,初始值默认为 0 
 03H IN6_ReadCountVal Unsigned32 ro 读取 IN6 的计数值 
6027H 00H IN7 计数 
 01H IN7_SetCountMode Signed32 r/w 
 02H IN7_SetCountVal Unsigned32 r/w 设置 IN7 的计数值,初始值默认为 0 
 03H IN7_ReadCountVal Unsigned32 ro 读取 IN7 的计数值 
  
5.2.3 OUT 设置输出 
7000H 00H OUT 
 01H OUT Unsigned16 rw 输出 0-15     // DO0~15控制输出
 
7010H 00H OUT 状态保持 
 01H OUT_KeepStateOnReset 
Usinged8 r/w 设置复位时是否保持输出口状态: 
0 不保持 1 保持(设置信息会自动保存在 flash 中) 
 
7020H 00H OUT0 延时翻转设置 
 01H OUT0_SetMod Unsigned32 r/w 设置是否启用延时翻转: 
0 不启用;1 遇低翻转;2 遇高翻转 
 02H OUT0_DelayTime Unsigned32 r/w 设置输出端口延时翻转时间 
(范围:0-100000,单位 ms) 
7021H 00H OUT1 延时翻转设置 
 01H OUT1_SetMod Unsigned32 r/w 设置是否启用延时翻转: 
0 不启用;1 遇低翻转;2 遇高翻转 
 02H OUT1_DelayTime Unsigned32 r/w 设置输出端口延时翻转时间 
(范围:0-100000,单位 ms) 
7022H 00H OUT2 延时翻转设置 
 01H OUT2_SetMod Unsigned32 r/w 设置是否启用延时翻转: 
0 不启用;1 遇低翻转;2 遇高翻转 
 02H OUT2_DelayTime Unsigned32 r/w 设置输出端口延时翻转时间 
(范围:0-100000,单位 ms) 
7023H 00H OUT3 延时翻转设置 
 01H OUT3_SetMod Unsigned32 r/w 设置是否启用延时翻转: 
0 不启用;1 遇低翻转;2 遇高翻转 
 02H OUT3_DelayTime Unsigned32 r/w 设置输出端口延时翻转时间 
(范围:0-100000,单位 ms)

7RJ45灯: 

L/A 为网络连接/状态灯:
常亮 端口打开 必备 
快速闪烁 端口打开 必备 
常灭 端口关闭 必备 
两次翻转闪烁 端口关闭(模式需要手动打开) 可选 
单次闪烁 本地 PHY 自动协商错误 可选 
两次闪烁 远端 PHY 自动协商错误 可选 
三次闪烁 位置 PHY 自动协商错误 可选 

RUN 灯闪烁状态:
常灭 设备处在初始化状态 必备 
慢速闪烁 设备处在与操作状态 必备 
单次闪烁 设备处在安全操作状态 必备 
常亮 设备处在操作状态 必备 
快速闪烁 设备正在启动,还没进入到
初始化状态或者设备处在
bootstrap 状态,正在下载固件 

ERROR 灯闪烁状态:
常亮 典型通讯错误或者应用控制出错 可选 
多次闪烁 保留 必备 
三次闪烁 保留 必备 
两次闪烁 应用程序看门狗超时 必备 
单次闪烁 由于本地错误,从站设备自动改为 必备 
慢速闪烁 通用配置错误 必备 
快速闪烁 启动错误 可选 
常灭 正常通信 必备

8案例:

1添加主站 

 

2添加模块:

9设备描述文件:xml

<?xml version="1.0"?>
<EtherCATInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="EtherCATInfo.xsd" Version="1.0">
	<Vendor>
		<Id>#x00004321</Id>
		<Name>Leadshine Technology Co., Ltd.</Name>
		<ImageData16x14>424DF8010000000000003600000028000000100000000E0000000100100000000000C201000010170000101700000000000000000000FF7FFF7FFF7FFF7FFF7F7D6B9A3E3826F7215D637D67DE77FF7FFF7FFF7FFF7FFF7FFF7FFF7FDF7B5C5FFB4E1301540195057D637505B6113C5BFF7FFF7FFF7FFF7FFF7FFF7F382654019E6F1722340138261B535401540154013C5BFF7FFF7FFF7FFF7FDA4634015401382A7D67340179369A3E5401750154019509BE73FF7FFF7FFF7BF71D7505540134013C5B59325932993A5401750175013401BA42FF7FFF7F9D6F583279365932B611B6117D67582EDB463401750175015401F71DFF7FFF7F1B5334015401B61179361726BA3EFB4E3C5B1726540175015401B611FF7BFF7F1B535401750154015401382A582E3C5B1B537936540175015401B611FF7FFF7F7D67540175017501550195095C5FDB4A5C5F58325501750154011722FF7FFF7FFF7BD6155401750175017505950D5932FF7FFB4E540175013401DB4AFF7FFF7FFF7F1C57540175017501750154017505F719D61155015401D615DF7BFF7FFF7FFF7FFF7F9A3A34015401750175017501540154015401950D7D67FF7FFF7FFF7FFF7FFF7FFF7FFB4E960D5401540154013401540117269E6FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FDE773C5BBA42993EDB4A7D67FF7FFF7FFF7FFF7FFF7F0000
		</ImageData16x14>
	</Vendor>
	<Descriptions>
		<Groups>
			<Group SortOrder="0">
				<Type>Digit IO</Type>
				<Name LcId="1033">Digital I/O Module</Name>
				<ImageData16x14>424DE6000000000000007600000028000000100000000E000000010004000000000070000000000000000000000000000000000000000000000000008000008000000080800080000000800080008080000080808000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97000000770FFFFF977777777707FFFF970000000707FFFF97000000070777FF97000000070777FF970000000707FFFF977777777707FFFF97000000770FFFFFFF0000FFFFFFFFFFFF00007FFFFFFFFFFF00007FFFFFFFFFFFFFFFFFFFFFFFF
				</ImageData16x14>
			</Group>
		</Groups>
		<Devices>
			<Device Physics="YY">
				<Type ProductCode="#x01100073" RevisionNo="#x18050210">EM32DX-E4-V30</Type>
				<Name LcId="1033">EM32DX-E4-V30</Name>
				<Info>
					<StateMachine>
						<Timeout>
							<PreopTimeout>3000</PreopTimeout>
							<SafeopOpTimeout>1500</SafeopOpTimeout>
							<BackToInitTimeout>5000</BackToInitTimeout>
							<BackToSafeopTimeout>2000</BackToSafeopTimeout>
						</Timeout>
					</StateMachine>
					<Mailbox>
						<Timeout>
							<RequestTimeout>100</RequestTimeout>
							<ResponseTimeout>2000</ResponseTimeout>
						</Timeout>
					</Mailbox>
					<EtherCATController>
						<DpramSize>8192</DpramSize>
						<SmCount>8</SmCount>
						<FmmuCount>8</FmmuCount>
					</EtherCATController>
				</Info>
				<GroupType>Digit IO</GroupType>
				<Profile>
					<ChannelInfo>
						<ProfileNo>401</ProfileNo>
					</ChannelInfo>
					<Dictionary>
						<DataTypes>
							<DataType>
								<!--Std type (see ETG.2000)-->
								<Name>BIT2</Name>
								<BitSize>2</BitSize>
							</DataType>
							<DataType>
								<!--Std type (see ETG.2000)-->
								<Name>BOOL</Name>
								<BitSize>1</BitSize>
							</DataType>
							<DataType>
								<!--Std type (see ETG.2000)-->
								<Name>DINT</Name>
								<BitSize>32</BitSize>
							</DataType>
							<DataType>
								<!--Std type (see ETG.2000)-->
								<Name>INT</Name>
								<BitSize>16</BitSize>
							</DataType>
							<DataType>
								<!--Std type (see ETG.2000)-->
								<Name>UDINT</Name>
								<BitSize>32</BitSize>
							</DataType>
							<DataType>
								<!--Std type (see ETG.2000)-->
								<Name>UINT</Name>
								<BitSize>16</BitSize>
							</DataType>
							<DataType>
								<!--Std type (see ETG.2000)-->
								<Name>USINT</Name>
								<BitSize>8</BitSize>
							</DataType>
							<DataType>
								<!--Device Name (0x1008) type-->
								<Name>STRING(9)</Name>
								<BitSize>72</BitSize>
							</DataType>
							<DataType>
								<!--Hardware version string (0x1009)-->
								<Name>STRING(8)</Name>
								<BitSize>64</BitSize>
							</DataType>
							<DataType>
								<!--Software version string (0x100A)-->
								<Name>STRING(3)</Name>
								<BitSize>24</BitSize>
							</DataType>
							<DataType>
								<!--Ident object (0x10181018) type-->
								<Name>DT1018</Name>
								<BitSize>144</BitSize>
								<SubItem>
									<SubIdx>0</SubIdx>
									<Name>SubIndex 000</Name>
									<Type>USINT</Type>
									<BitSize>8</BitSize>
									<BitOffs>0</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>1</SubIdx>
									<Name>Vendor ID</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>16</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>2</SubIdx>
									<Name>Product code</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>48</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>3</SubIdx>
									<Name>Revision</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>80</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>4</SubIdx>
									<Name>Serial number</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>112</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
							</DataType>
							<DataType>
								<Name>DT1C00ARR</Name>
								<BaseType>USINT</BaseType>
								<BitSize>32</BitSize>
								<ArrayInfo>
									<LBound>1</LBound>
									<Elements>4</Elements>
								</ArrayInfo>
							</DataType>
							<DataType>
								<Name>DT1C00</Name>
								<BitSize>48</BitSize>
								<SubItem>
									<SubIdx>0</SubIdx>
									<Name>SubIndex 000</Name>
									<Type>USINT</Type>
									<BitSize>8</BitSize>
									<BitOffs>0</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<Name>Elements</Name>
									<Type>DT1C00ARR</Type>
									<BitSize>32</BitSize>
									<BitOffs>16</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
							</DataType>
							<DataType>
								<Name>DT1C32</Name>
								<BitSize>488</BitSize>
								<SubItem>
									<SubIdx>0</SubIdx>
									<Name>SubIndex 000</Name>
									<Type>USINT</Type>
									<BitSize>8</BitSize>
									<BitOffs>0</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>1</SubIdx>
									<Name>Sync mode</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>16</BitOffs>
									<Flags>
										<Access WriteRestrictions="PreOP">rw</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>2</SubIdx>
									<Name>Cycle time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>32</BitOffs>
									<Flags>
										<Access>rw</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<!-- <SubItem> -->
									<!-- <SubIdx>3</SubIdx> -->
									<!-- <Name>Shift time</Name> -->
									<!-- <Type>UDINT</Type> -->
									<!-- <BitSize>32</BitSize> -->
									<!-- <BitOffs>64</BitOffs> -->
									<!-- <Flags> -->
										<!-- <Access>ro</Access> -->
										<!-- <Category>o</Category> -->
									<!-- </Flags> -->
								<!-- </SubItem> -->
								<SubItem>
									<SubIdx>4</SubIdx>
									<Name>Sync modes supported</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>96</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>5</SubIdx>
									<Name>Minimum cycle time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>112</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>6</SubIdx>
									<Name>Calc and copy time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>144</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>8</SubIdx>
									<Name>Get cycle time</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>208</BitOffs>
									<Flags>
										<Access>rw</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>9</SubIdx>
									<Name>Delay time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>224</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>10</SubIdx>
									<Name>Sync0 time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>256</BitOffs>
									<Flags>
										<Access>rw</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>11</SubIdx>
									<Name>SM-Event missed counter</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>288</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>12</SubIdx>
									<Name>CycleTime too short counter</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>304</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
								<!-- <SubItem> -->
									<!-- <SubIdx>13</SubIdx> -->
									<!-- <Name>Shift too short counter</Name> -->
									<!-- <Type>UDINT</Type> -->
									<!-- <BitSize>32</BitSize> -->
									<!-- <BitOffs>352</BitOffs> -->
									<!-- <Flags> -->
										<!-- <Access>ro</Access> -->
										<!-- <Category>c</Category> -->
									<!-- </Flags> -->
								<!-- </SubItem> -->
								<SubItem>
									<SubIdx>32</SubIdx>
									<Name>Sync error</Name>
									<Type>BOOL</Type>
									<BitSize>1</BitSize>
									<BitOffs>480</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
							</DataType>
							
							<DataType>
								<Name>DT1C33</Name>
								<BitSize>488</BitSize>
								<SubItem>
									<SubIdx>0</SubIdx>
									<Name>SubIndex 000</Name>
									<Type>USINT</Type>
									<BitSize>8</BitSize>
									<BitOffs>0</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>1</SubIdx>
									<Name>Sync mode</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>16</BitOffs>
									<Flags>
										<Access WriteRestrictions="PreOP">rw</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>2</SubIdx>
									<Name>Cycle time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>32</BitOffs>
									<Flags>
										<Access>rw</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<!-- <SubItem> -->
									<!-- <SubIdx>3</SubIdx> -->
									<!-- <Name>Shift time</Name> -->
									<!-- <Type>UDINT</Type> -->
									<!-- <BitSize>32</BitSize> -->
									<!-- <BitOffs>64</BitOffs> -->
									<!-- <Flags> -->
										<!-- <Access>ro</Access> -->
										<!-- <Category>o</Category> -->
									<!-- </Flags> -->
								<!-- </SubItem> -->
								<SubItem>
									<SubIdx>4</SubIdx>
									<Name>Sync modes supported</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>96</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>5</SubIdx>
									<Name>Minimum cycle time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>112</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>6</SubIdx>
									<Name>Calc and copy time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>144</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>8</SubIdx>
									<Name>Get cycle time</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>208</BitOffs>
									<Flags>
										<Access>rw</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>9</SubIdx>
									<Name>Delay time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>224</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>10</SubIdx>
									<Name>Sync0 time</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>256</BitOffs>
									<Flags>
										<Access>rw</Access>
										<Category>o</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>11</SubIdx>
									<Name>SM-Event missed counter</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>288</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
								<SubItem>
									<SubIdx>12</SubIdx>
									<Name>CycleTime too short counter</Name>
									<Type>UINT</Type>
									<BitSize>16</BitSize>
									<BitOffs>304</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
								<!-- <SubItem> -->
									<!-- <SubIdx>13</SubIdx> -->
									<!-- <Name>Shift too short counter</Name> -->
									<!-- <Type>UDINT</Type> -->
									<!-- <BitSize>32</BitSize> -->
									<!-- <BitOffs>352</BitOffs> -->
									<!-- <Flags> -->
										<!-- <Access>ro</Access> -->
										<!-- <Category>c</Category> -->
									<!-- </Flags> -->
								<!-- </SubItem> -->
								<SubItem>
									<SubIdx>32</SubIdx>
									<Name>Sync error</Name>
									<Type>BOOL</Type>
									<BitSize>1</BitSize>
									<BitOffs>480</BitOffs>
									<Flags>
										<Access>ro</Access>
										<Category>c</Category>
									</Flags>
								</SubItem>
							</DataType>
							
							<!-- <DataType> -->
								<!-- <Name>DT7000</Name> -->
								<!-- <BitSize>32</BitSize> -->
								<!-- <SubItem> -->
								  <!-- <SubIdx>0</SubIdx> -->
								  <!-- <Name>Number of entries</Name> -->
								  <!-- <Type>USINT</Type> -->
								  <!-- <BitSize>8</BitSize> -->
								  <!-- <BitOffs>0</BitOffs> -->
								  <!-- <Flags> -->
									<!-- <Access>ro</Access> -->
								  <!-- </Flags> -->
								<!-- </SubItem> -->
								<!-- <SubItem> -->
							      <!-- <SubIdx>1</SubIdx> -->
								  <!-- <Name>OUT</Name> -->
								  <!-- <Type>UINT</Type> -->
								  <!-- <BitSize>16</BitSize> -->
								  <!-- <BitOffs>16</BitOffs> -->
								  <!-- <Flags> -->
									<!-- <Access>rw</Access> -->
									<!-- <Setting>1</Setting> -->
								  <!-- </Flags> -->
								<!-- </SubItem>     							 -->
							<!-- </DataType>	 -->

							<DataType>
								<Name>DT7010</Name>
								<BitSize>24</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
								  <Name>OUT_KeepStateOnReset 复位输出保持</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>      							
							</DataType>				
						
							<!-- <DataType> -->
								<!-- <Name>DT6000</Name> -->
								<!-- <BitSize>32</BitSize> -->
								<!-- <SubItem> -->
								  <!-- <SubIdx>0</SubIdx> -->
								  <!-- <Name>Number of entries</Name> -->
								  <!-- <Type>USINT</Type> -->
								  <!-- <BitSize>8</BitSize> -->
								  <!-- <BitOffs>0</BitOffs> -->
								  <!-- <Flags> -->
									<!-- <Access>ro</Access> -->
								  <!-- </Flags> -->
								<!-- </SubItem> -->
								<!-- <SubItem> -->
								  <!-- <SubIdx>1</SubIdx> -->
								  <!-- <Name>IN</Name> -->
								  <!-- <Type>UINT</Type> -->
								  <!-- <BitSize>16</BitSize> -->
								  <!-- <BitOffs>16</BitOffs> -->
								  <!-- <Flags> -->
									<!-- <Access>ro</Access> -->
									<!-- <Setting>1</Setting> -->
								  <!-- </Flags> -->
							    <!-- </SubItem>     							 -->
							<!-- </DataType>	 -->
																	
							<DataType>
								<Name>DT6020</Name>
								<BitSize>112</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
							  <Name>IN0_SetCountMode 设置IN0的计数方式</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   
								<SubItem>
									<SubIdx>2</SubIdx>
									<Name>IN0_SetCountVal 设置IN0的计数值</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>48</BitOffs>
									<Flags>
										<Access>rw</Access>
										<Setting>1</Setting>
									</Flags>
								</SubItem>   							
								<SubItem>
									<SubIdx>3</SubIdx>
									<Name>IN0_ReadCountVal 读取IN0的计数值</Name>
									<Type>UDINT</Type>
									<BitSize>32</BitSize>
									<BitOffs>80</BitOffs>
									<Flags>
										<Access>ro</Access>
										<!-- <Setting>1</Setting> -->
									</Flags>
								</SubItem>   							    
							</DataType>									
							

							<DataType>
								<Name>DT6021</Name>
								<BitSize>112</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
							  <Name>IN1_SetCountMode 设置IN1的计数方式</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   
								<SubItem>
								  <SubIdx>2</SubIdx>
							  <Name>IN1_SetCountVal 设置IN1的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>48</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   							
								<SubItem>
								  <SubIdx>3</SubIdx>
							  <Name>IN1_ReadCountVal 读取IN1的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>80</BitOffs>
								  <Flags>
									<Access>ro</Access>
									<!-- <Setting>1</Setting> -->
								  </Flags>
								</SubItem>   							    
							</DataType>	

							<DataType>
								<Name>DT6022</Name>
								<BitSize>112</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
							  <Name>IN2_SetCountMode 设置IN2的计数方式</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   
								<SubItem>
								  <SubIdx>2</SubIdx>
							  <Name>IN2_SetCountVal 设置IN2的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>48</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   							
								<SubItem>
								  <SubIdx>3</SubIdx>
							  <Name>IN2_ReadCountVal 读取IN2的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>80</BitOffs>
								  <Flags>
									<Access>ro</Access>
									<!-- <Setting>1</Setting> -->
								  </Flags>
								</SubItem>   							    
							</DataType>	
							
							<DataType>
								<Name>DT6023</Name>
								<BitSize>112</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
							  <Name>IN3_SetCountMode 设置IN3的计数方式</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   
								<SubItem>
								  <SubIdx>2</SubIdx>
							  <Name>IN3_SetCountVal 设置IN3的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>48</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   							
								<SubItem>
								  <SubIdx>3</SubIdx>
							  <Name>IN3_ReadCountVal 读取IN3的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>80</BitOffs>
								  <Flags>
									<Access>ro</Access>
									<!-- <Setting>1</Setting> -->
								  </Flags>
								</SubItem>   							    
							</DataType>	
						  
							<DataType>
								<Name>DT6024</Name>
								<BitSize>112</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
							  <Name>IN4_SetCountMode 设置IN4的计数方式</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   
								<SubItem>
								  <SubIdx>2</SubIdx>
							  <Name>IN4_SetCountVal 设置IN4的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>48</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   							
								<SubItem>
								  <SubIdx>3</SubIdx>
							  <Name>IN4_ReadCountVal 读取IN4的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>80</BitOffs>
								  <Flags>
									<Access>ro</Access>
									<!-- <Setting>1</Setting> -->
								  </Flags>
								</SubItem>   							    
							</DataType>								
							
							<DataType>
								<Name>DT6025</Name>
								<BitSize>112</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
							  <Name>IN5_SetCountMode 设置IN5的计数方式</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   
								<SubItem>
								  <SubIdx>2</SubIdx>
							  <Name>IN5_SetCountVal 设置IN5的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>48</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   							
								<SubItem>
								  <SubIdx>3</SubIdx>
							  <Name>IN5_ReadCountVal 读取IN5的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>80</BitOffs>
								  <Flags>
									<Access>ro</Access>
									<!-- <Setting>1</Setting> -->
								  </Flags>
								</SubItem>   							    
							</DataType>								
							
							<DataType>
								<Name>DT6026</Name>
								<BitSize>112</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
							  <Name>IN6_SetCountMode 设置IN6的计数方式</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   
								<SubItem>
								  <SubIdx>2</SubIdx>
							  <Name>IN6_SetCountVal 设置IN6的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>48</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   							
								<SubItem>
								  <SubIdx>3</SubIdx>
							  <Name>IN6_ReadCountVal 读取IN6的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>80</BitOffs>
								  <Flags>
									<Access>ro</Access>
									<!-- <Setting>1</Setting> -->
								  </Flags>
								</SubItem>   							    
							</DataType>								

							<DataType>
								<Name>DT6027</Name>
								<BitSize>112</BitSize>
								<SubItem>
								  <SubIdx>0</SubIdx>
								  <Name>Number of entries</Name>
								  <Type>USINT</Type>
								  <BitSize>8</BitSize>
								  <BitOffs>0</BitOffs>
								  <Flags>
									<Access>ro</Access>
								  </Flags>
								</SubItem>
								<SubItem>
								  <SubIdx>1</SubIdx>
							  <Name>IN7_SetCountMode 设置IN7的计数方式</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>16</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   
								<SubItem>
								  <SubIdx>2</SubIdx>
							  <Name>IN7_SetCountVal 设置IN7的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>48</BitOffs>
								  <Flags>
									<Access>rw</Access>
									<Setting>1</Setting>
								  </Flags>
								</SubItem>   							
								<SubItem>
								  <SubIdx>3</SubIdx>
							  <Name>IN7_ReadCountVal 读取IN7的计数值</Name>
							  <Type>UDINT</Type>
								  <BitSize>32</BitSize>
								  <BitOffs>80</BitOffs>
								  <Flags>
									<Access>ro</Access>
									<!-- <Setting>1</Setting> -->
								  </Flags>
								</SubItem>   							    
							</DataType>								
						  
						</DataTypes>
						
												
						<Objects>
							<Object>
								<Index>#x1000</Index>
								<Name>Device type</Name>
								<Type>UDINT</Type>
								<BitSize>32</BitSize>
								<Info>
									<DefaultData>0FFF0192</DefaultData>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>m</Category>
								</Flags>
							</Object>
							
							<Object>
								<Index>#x1001</Index>
								<Name>Error Register</Name>
								<Type>USINT</Type>
								<BitSize>8</BitSize>
								<Info>
									<DefaultData>00</DefaultData>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>o</Category>
								</Flags>
							</Object>
							
							<Object>
								<Index>#x1008</Index>
								<Name>Device name</Name>
								<Type>STRING(9)</Type>
								<BitSize>72</BitSize>
								<Info>
									<DefaultData>454d333244582d4534</DefaultData>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>o</Category>
								</Flags>
							</Object>
							
							<Object>
								<Index>#x1009</Index>
								<Name>Hardware version</Name>
								<Type>STRING(8)</Type>
								<BitSize>64</BitSize>
								<Info>
									<DefaultData>0301</DefaultData>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>o</Category>
								</Flags>
							</Object>
							
							<Object>
								<Index>#x100a</Index>
								<Name>Software version</Name>
								<Type>STRING(3)</Type>
								<BitSize>24</BitSize>
								<Info>
									<DefaultData>0301</DefaultData>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>o</Category>
								</Flags>
							</Object>
							
							<Object>
								<Index>#x1c00</Index>
								<Name>Sync manager type</Name>
								<Type>DT1C00</Type>
								<BitSize>48</BitSize>
								<Info>
									<SubItem>
										<Name>SubIndex 000</Name>
										<Info>
											<DefaultData>04</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>SubIndex 001</Name>
										<Info>
											<DefaultData>01</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>SubIndex 002</Name>
										<Info>
											<DefaultData>02</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>SubIndex 003</Name>
										<Info>
											<DefaultData>03</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>SubIndex 004</Name>
										<Info>
											<DefaultData>04</DefaultData>
										</Info>
									</SubItem>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>o</Category>
								</Flags>
							</Object>
							
							<Object>
								<Index>#x1018</Index>
								<Name>Identity</Name>
								<Type>DT1018</Type>
								<BitSize>144</BitSize>
								<Info>
									<SubItem>
										<Name>SubIndex 000</Name>
										<Info>
											<DefaultData>04</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Vendor ID</Name>
										<Info>
											<DefaultData>21430000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Product code</Name>
										<Info>  
											<DefaultData>73001001</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Revision</Name>
										<Info>
											<DefaultData>10020518</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Serial number</Name>
										<Info>
											<DefaultData>01000000</DefaultData>
										</Info>
									</SubItem>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>o</Category>
								</Flags>
							</Object>
							
							<Object>
								<Index>#x1c32</Index>
								<Name>SM output parameter</Name>
								<Type>DT1C32</Type>
								<BitSize>488</BitSize>
								<Info>
									<SubItem>
										<Name>SubIndex 000</Name>
										<Info>
											<DefaultData>32</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Sync mode</Name>
										<Info>
											<DefaultData>0100</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Cycle time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<!-- <SubItem> -->
										<!-- <Name>Shift time</Name> -->
										<!-- <Info> -->
											<!-- <DefaultData>00000000</DefaultData> -->
										<!-- </Info> -->
									<!-- </SubItem> -->
									<SubItem>
										<Name>Sync modes supported</Name>
										<Info>
											<DefaultData>0780</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Minimum cycle time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Calc and copy time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Get cycle time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Delay time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Sync0 time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>SM-Event missed counter</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>CycleTime too short counter</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<!-- <SubItem> -->
										<!-- <Name>Shift too short counter</Name> -->
										<!-- <Info> -->
											<!-- <DefaultData>00000000</DefaultData> -->
										<!-- </Info> -->
									<!-- </SubItem> -->
									<SubItem>
										<Name>Sync error</Name>
										<Info>
											<DefaultData>00</DefaultData>
										</Info>
									</SubItem>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>o</Category>
								</Flags>
							</Object>
							
							<Object>
								<Index>#x1c33</Index>
								<Name>SM input parameter</Name>
								<Type>DT1C33</Type>
								<BitSize>488</BitSize>
								<Info>
									<SubItem>
										<Name>SubIndex 000</Name>
										<Info>
											<DefaultData>32</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Sync mode</Name>
										<Info>
											<DefaultData>2200</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Cycle time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<!-- <SubItem> -->
										<!-- <Name>Shift time</Name> -->
										<!-- <Info> -->
											<!-- <DefaultData>00000000</DefaultData> -->
										<!-- </Info> -->
									<!-- </SubItem> -->
									<SubItem>
										<Name>Sync modes supported</Name>
										<Info>
											<DefaultData>0780</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Minimum cycle time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Calc and copy time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Get cycle time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Delay time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>Sync0 time</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>SM-Event missed counter</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<SubItem>
										<Name>CycleTime too short counter</Name>
										<Info>
											<DefaultData>0000</DefaultData>
										</Info>
									</SubItem>
									<!-- <SubItem> -->
										<!-- <Name>Shift too short counter</Name> -->
										<!-- <Info> -->
											<!-- <DefaultData>00000000</DefaultData> -->
										<!-- </Info> -->
									<!-- </SubItem> -->
									<SubItem>
										<Name>Sync error</Name>
										<Info>
											<DefaultData>00</DefaultData>
										</Info>
									</SubItem>
								</Info>
								<Flags>
									<Access>ro</Access>
									<Category>o</Category>
								</Flags>
							</Object>
 
							<!-- <Object> -->
								<!-- <Index>#x7000</Index> -->
								<!-- <Name>OUT输出</Name> -->
								<!-- <Type>DT7000</Type> -->
								<!-- <BitSize>32</BitSize> -->
								<!-- <Flags> -->
								  <!-- <Access>rw</Access> -->
								<!-- </Flags> -->
							<!-- </Object>  -->
							 
							<Object>
								<Index>#x7010</Index>
								<Name>输出状态保持设置</Name>
								<Type>DT7010</Type>
								<BitSize>24</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
							</Object>	 
							  
							<!-- <Object> -->
								<!-- <Index>#x6000</Index> -->
								<!-- <Name>IN输入</Name> -->
								<!-- <Type>DT6000</Type> -->
								<!-- <BitSize>32</BitSize> -->
								<!-- <Flags> -->
								  <!-- <Access>ro</Access> -->
								<!-- </Flags> -->
							<!-- </Object>						 -->
							  
							  
							<Object>
								<Index>#x6020</Index>
								<Name>IN0参数设置</Name>
								<Type>DT6020</Type>
								<BitSize>112</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
							</Object>	
							
							<Object>
								<Index>#x6021</Index>
								<Name>IN1参数设置</Name>
								<Type>DT6021</Type>
								<BitSize>112</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
							</Object>	
							
							<Object>
								<Index>#x6022</Index>
								<Name>IN2参数设置</Name>
								<Type>DT6022</Type>
								<BitSize>112</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
							</Object>	
							  
							<Object>
								<Index>#x6023</Index>
								<Name>IN3参数设置</Name>
								<Type>DT6023</Type>
								<BitSize>112</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
							</Object>									  
							  
							<Object>
								<Index>#x6024</Index>
								<Name>IN4参数设置</Name>
								<Type>DT6024</Type>
								<BitSize>112</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
						    </Object>									  
							  							  
							<Object>
								<Index>#x6025</Index>
								<Name>IN5参数设置</Name>
								<Type>DT6025</Type>
								<BitSize>112</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
							</Object>		
							  
							<Object>
								<Index>#x6026</Index>
								<Name>IN6参数设置</Name>
								<Type>DT6026</Type>
								<BitSize>112</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
							</Object>									  
							  
							<Object>
								<Index>#x6027</Index>
								<Name>IN7参数设置</Name>
								<Type>DT6027</Type>
								<BitSize>112</BitSize>
								<Flags>
								  <Access>rw</Access>
								</Flags>
							</Object>			
						</Objects>
						
					</Dictionary>
				</Profile>
				<Fmmu>Outputs</Fmmu>
				<Fmmu>Inputs</Fmmu>
				<Fmmu>MBoxState</Fmmu>
				
				<Sm MinSize="34" MaxSize="192" DefaultSize="128" StartAddress="#x1000" ControlByte="#x26" Enable="1">MBoxOut</Sm>
				<Sm MinSize="34" MaxSize="192" DefaultSize="128" StartAddress="#x1400" ControlByte="#x22" Enable="1">MBoxIn</Sm>
				<Sm StartAddress="#x1800" ControlByte="#x64" Enable="1">Outputs</Sm>
				<Sm StartAddress="#x1c00" ControlByte="#x20" Enable="1">Inputs</Sm>								
            				
				<RxPdo Mandatory="true" Fixed="true" Sm="2">
					<Index>#x1600</Index>
					<Name>RxPDO</Name>
					<Entry>
						<Index>#x7000</Index>
						<SubIndex>1</SubIndex>
						<BitLen>16</BitLen>
						<Name>OUT</Name>
						<DataType>UINT</DataType>
					</Entry>
				</RxPdo>
				
				<TxPdo Mandatory="true" Fixed="true" Sm="3">
					<Index>#x1A00</Index>
					<Name>TxPDO</Name>
					<Entry>
						<Index>#x6000</Index>
						<SubIndex>1</SubIndex>
						<BitLen>16</BitLen>
						<Name>IN</Name>
						<DataType>UINT</DataType>
					</Entry>					
				</TxPdo>
				
				
				<Mailbox DataLinkLayer="true">
					<CoE SdoInfo="true" SegmentedSdo="true" CompleteAccess="true" PdoAssign="false"/>
				</Mailbox>
				
				<Dc>
					<OpMode>
						<Name>Synchron</Name>
						<Desc>FreeRun/SM-Synchron</Desc>
						<AssignActivate>#x0</AssignActivate>
						<CycleTimeSync0 Factor="0">0</CycleTimeSync0>
						<ShiftTimeSync0>0</ShiftTimeSync0>
						<CycleTimeSync1 Factor="1">0</CycleTimeSync1>
						<ShiftTimeSync1>0</ShiftTimeSync1>
					</OpMode>
				</Dc>
				
				<Eeprom>
					<ByteSize>2048</ByteSize>
					<ConfigData>8000E000E8030000000000000000</ConfigData>
					<!-- <BootStrap>0010800000148000</BootStrap> -->
				</Eeprom>
				<ImageData16x14>424DE6000000000000007600000028000000100000000E000000010004000000000070000000000000000000000000000000000000000000000000008000008000000080800080000000800080008080000080808000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF00FFFFFF00FFFFFFFFFFFFF0F70FFFFFFFFFFFF07F0FFFFFFFFFFFFF00FFFFFFFFF7777F0FFFFFFFFFF7667F0FFFFFFFFFF766700FFFFFFFFFF7667FFFFFFFFFFFF7667FFFFFFFFFFFF7667FFFFFFFFFFFF7667FFFFFFFFFFFF7967FFFFFFFFFFFF7777FFFFFFFFFFFFFFFFFFFFFFFFFFF</ImageData16x14>
			</Device>
			
			<Device Physics="YY">
				<Type ProductCode="#x01400023" RevisionNo="#x20180906">EM32DX-E4</Type>
				<HideType RevisionNo="#x00000010" />
				<Name LcId="1033"><![CDATA[EM32DX-E4]]></Name>
				<Name LcId="1031"><![CDATA[EM32DX-E4]]></Name>
				<GroupType>Mode</GroupType>
				<Fmmu OpOnly="1">Outputs</Fmmu>
				<Fmmu>Inputs</Fmmu>
				<Sm StartAddress="#x0f00" ControlByte="#x44" OpOnly="1" Enable="1">Outputs</Sm>
				<Sm StartAddress="#x0f01" ControlByte="#x44" OpOnly="1" Enable="1">Outputs</Sm>
				<Sm StartAddress="#x1002" ControlByte="#x0" Enable="1">Inputs</Sm>
				<RxPdo Fixed="1" Sm="0">
					<Index>#x1600</Index>
					<Name>Dout 0</Name>
					<Entry>
						<Index>#x7000</Index>
						<SubIndex>1</SubIndex>
						<BitLen>8</BitLen>
						<Name>Output[0]</Name>
						<DataType>BYTE</DataType>
					</Entry>
				</RxPdo>
				<RxPdo Fixed="1" Sm="1">
					<Index>#x1601</Index>
					<Name>Dout 1</Name>
					<Entry>
						<Index>#x7010</Index>
						<SubIndex>1</SubIndex>
						<BitLen>8</BitLen>
						<Name>Output[1]</Name>
						<DataType>BYTE</DataType>
					</Entry>
				</RxPdo>
				<TxPdo Fixed="1" Sm="2">
					<Index>#x1a00</Index>
					<Name>Din 0</Name>
					<Entry>
						<Index>#x6000</Index>
						<SubIndex>1</SubIndex>
						<BitLen>16</BitLen>
						<Name>Input</Name>
						<DataType>UINT</DataType>
					</Entry>
				</TxPdo>
				<Dc>
					<OpMode>
						<Name>Synchron</Name>
						<Desc>FreeRun</Desc>
						<AssignActivate>#x0</AssignActivate>
						<CycleTimeSync0 Factor="0">0</CycleTimeSync0>
						<ShiftTimeSync0>0</ShiftTimeSync0>
						<CycleTimeSync1 Factor="1">0</CycleTimeSync1>
						<ShiftTimeSync1>0</ShiftTimeSync1>
					</OpMode>
					<OpMode>
						<Name>DcSync</Name>
						<Desc>DC for synchronization</Desc>
						<AssignActivate>#x0100</AssignActivate>
						<CycleTimeSync0 Factor="1">1</CycleTimeSync0>
						<ShiftTimeSync0>0</ShiftTimeSync0>
					</OpMode>						
				</Dc>				
				<Eeprom>
				  <ByteSize>2048</ByteSize>
				  <ConfigData>0407003B60EAFF00</ConfigData>
				</Eeprom>
			</Device>
			
			<Device Physics="YY">
				<Type ProductCode="#x01400023" RevisionNo="#x20160824">EM32DX-E4</Type>
				<HideType RevisionNo="#x00000010" />
				<Name LcId="1033"><![CDATA[EM32DX-E4]]></Name>
				<Name LcId="1031"><![CDATA[EM32DX-E4]]></Name>
				<GroupType>Mode</GroupType>
				<Fmmu OpOnly="1">Outputs</Fmmu>
				<Fmmu>Inputs</Fmmu>
				<Sm StartAddress="#x0f00" ControlByte="#x44" Enable="1" OpOnly="1">Outputs</Sm>
				<Sm StartAddress="#x1002" ControlByte="0" Enable="1">Inputs</Sm>
				<RxPdo Fixed="1" Sm="0">
				  <Index>#x1600</Index>
				  <Name>RxPDO</Name>
				  <Entry>
					<Index>#x0F00</Index>
					<SubIndex>1</SubIndex>
					<BitLen>16</BitLen>
					<Name>Output</Name>
					<DataType>UINT</DataType>
				  </Entry>
				</RxPdo>
				<TxPdo Fixed="1" Sm="1">
				  <Index>#x1A00</Index>
				  <Name>TxPDO</Name>
				  <Entry>
					<Index>#x1002</Index>
					<SubIndex>1</SubIndex>
					<BitLen>16</BitLen>
					<Name>Input</Name>
					<DataType>UINT</DataType>
				  </Entry>
				</TxPdo>
				<Dc>
				  <OpMode>
					<Name>DcSync</Name>
					<Desc>DC for synchronization</Desc>
					<AssignActivate>#x0100</AssignActivate>
					<CycleTimeSync0 Factor="1">1</CycleTimeSync0>
					<ShiftTimeSync0>0</ShiftTimeSync0>
				  </OpMode>
				</Dc>
				<Eeprom>
				  <ByteSize>2048</ByteSize>
				  <ConfigData>0407003B60EAFF00</ConfigData>
				</Eeprom>
			</Device>
		</Devices>
	</Descriptions>
</EtherCATInfo>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1284831.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

YoloV5改进策略:Swift Parameter-free Attention,无参注意力机制,超分模型的完美迁移

摘要 https://arxiv.org/pdf/2311.12770.pdf https://github.com/hongyuanyu/SPAN SPAN是一种超分网络模型。SPAN模型通过使用参数自由的注意力机制来提高SISR的性能。这种注意力机制能够增强重要信息并减少冗余,从而在图像超分辨率过程中提高图像质量。 具体来说,SPAN模…

【Filament】Filament环境搭建

1 前言 Filament 是一个实时物理渲染引擎&#xff0c;用于 Android、iOS、Linux、macOS、Windows 和 WebGL 平台。该引擎旨在提供高效、实时的图形渲染&#xff0c;并被设计为在 Android 平台上尽可能小而尽可能高效。Filament 支持基于物理的渲染&#xff08;PBR&#xff09;&…

CefSharp 获取POST(AJAX)、GET消息返回值(request)

CefSharp作为专门为爬虫工具开发的库比Selenium这种开发目的是页面测试工具然后用来做爬虫的工具要贴心得多。我们操作网页的时候发送或者做了某个动作提交表单之后需要知道我们的动作或者提交是否成功&#xff0c;因为有的页面会因为网络延迟问题提交失败&#xff0c;需要准确…

2022 China Collegiate Programming Contest (CCPC) Guilin Site

A.Lily Problem - A - Codeforces 题意 思路 数所有周围没L的格子 #include <bits/stdc.h>using i64 long long;constexpr int N 2e5 10; constexpr int mod 1e9 7; constexpr int Inf 0x3f3f3f3f; constexpr double eps 1e-10;std::string s;int n;void solv…

Android Edittext进阶版(Textfieids)

一、Text fieids 允许用户在 UI 中输入文本&#xff0c;TextInputLayout TextInputEditText。 在 Text fieids 没出来(我不知道)前&#xff0c;想实现这个功能就需要自己自定义控件来实现这个功能。 几年前做个上面这种样式(filled 填充型)。需要多个控件组合 动画才能实现&a…

数据的力量:Web3 游戏运营指南

在充满活力的 Web3 游戏行业中&#xff0c;市场的起伏不定为开发者带来了挑战和机遇。利用数据的能力对于游戏开发者来说至关重要&#xff0c;能够实时监控游戏内的经济状况并分析玩家行为。这些功能可以帮助项目方获得宝贵的智慧洞察&#xff0c;优化游戏设计&#xff0c;提高…

2022年全国大学生数据分析大赛医药电商销售数据分析求解全过程论文及程序

2022年全国大学生数据分析大赛 医药电商销售数据分析 原题再现&#xff1a; 问题背景   20 世纪 90 年代是电子数据交换时代&#xff0c;中国电子商务开始起步并初见雏形&#xff0c;随后 Web 技术爆炸式成长使电子商务处于蓬勃发展阶段&#xff0c;目前互联网信息碎片化以…

python爬虫非对称加密RSA案例:某观鸟网站

声明&#xff1a; 该文章为学习使用&#xff0c;严禁用于商业用途和非法用途&#xff0c;违者后果自负&#xff0c;由此产生的一切后果均与作者无关 一、找出需要加密的参数 js运行 atob(‘aHR0cDovL2JpcmRyZXBvcnQuY24vaG9tZS9hY3Rpdml0eS9wYWdlLmh0bWw’) 拿到网址&#xf…

Notepad++ 安装TextFx插件失败

据说TextFx插件是Notepad常用插件之一&#xff1b;有很多格式化代码的功能&#xff1b;下面安装一下&#xff1b; 插件管理里面看一下&#xff0c;没有这个TextFx&#xff1b; 根据资料&#xff0c;先安装NppExec&#xff1b; 然后下一个5.9老版本的Notepad&#xff0c;如下图…

iptalbes firewalld

一、IPtables介绍Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的完全自由的基于包过滤(对OSI模型的四层或者是四层以下进行过滤)的防火墙工具&#xff0c;它的功能十分强大&#xff0c;使用非常灵活&#xff0c;可以对流入和流出服务器的数据包进行很精细…

通讯录管理系统(基于C语言)

模块设计 本通讯录管理系统功能模块共包括9个部分&#xff1a;1.输入数据、2.显示数据、 3.插入数据、4.删除数据、5.查看数据、6.修改数据、7.保存数据、 8.返回主菜单、9.退出系统. 一&#xff0e;总体设计 通讯录的每一条信息包括&#xff1a;姓名、性别、住址、联系电话…

VirtualBox安装Centos7.9

目录 1、下载Centos7.9镜像 2、新建虚拟电脑 3、虚拟电脑配置 3.1、配置CPU 3.2、设置启动顺序(光驱放在第一个) 3.3、设置存储 3.4、设置网络(桥接网卡) 4、启动 启动 等待 选择安装过程中语言 安装位置 开始安装 设置root账号密码 重启 输入用户名和密码登录…

传统制造业企业如何实现数字化转型?

传统制造企业的数字化转型涉及利用数字技术来提高效率、生产力和整体业务流程。以下是实现制造业数字化转型的关键步骤和策略&#xff1a; 1.当前流程的评估&#xff1a; 确定可以从数字化转型中受益的领域。这可能包括生产流程、供应链管理、库存控制和客户关系。 评估技术集…

StarRocks上新,“One Data、All Analytics”还有多远?

K.K在《未来十二大趋势》中认为&#xff0c;我们正处于一个数据流动的时代。商业乃数据之商业。归根结底&#xff0c;你在处理的都是数据。 的确&#xff0c;当数据成为新的核心生产要素之际&#xff0c;数据分析就犹如最重要的生产工具之一&#xff0c;决定着企业在数字化时代…

Chrome清除特定网站的Cookie,从而让网址能正常运行(例如GPT)

Chrome在使用某些网址的时候&#xff0c;例如GPT的时候&#xff0c;可能会出现无法访问这个网址的情况&#xff0c;就是点不动啥的 只需要把你需要重置的网址删除就好了

【未解决】huggingface模型文件下载地址为什么会变?

问题描述 上次我们已经分析了huggingface加载模型时候的文件目录应该是怎么样的&#xff1f;&#xff08;感兴趣的可以主页搜索“【经验分享】huggingface模型加载过程下载到cache文件目录具体是怎么组织的&#xff1f;以及都会有什么文件目录&#xff0c;每个文件目录是什么&a…

智能优化算法应用:基于黑猩猩算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于黑猩猩算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于黑猩猩算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.黑猩猩算法4.实验参数设定5.算法结果6.参考文献7.…

分布式搜索引擎elasticsearch(一)

5.1 初始elasticsearch elasticsearch是一款非常强大的开源搜索引擎,可以帮助我们从海量数据中快速找到需要的内容。 elasticsearch是elastic stack的核心,负责存储、搜索、分析数据。 5.1.1正向索引 5.1.2elasticsearch采用倒排索引: 文档(document):每条数据就是一个…

hikvision SDK使用学习/实践

函数介绍 //1. 枚举设备int MV_CC_EnumDevices(unsigned int nTLayerType, MV_CC_DEVICE_INFO_LIST *pstDevList); //2. 创建设备句柄int MV_CC_CreateHandle(void **handle, const MV_CC_DEVIEC_INFO *pstDevInfo); //参数&#xff1a;handle  [out]  //设备句柄&#xf…

简单了解传输层协议之TCP和UDP

目录 一、什么是端口号? 二、TCP协议 2.1 TCP报文格式 2.2 三次握手 2.3 四次挥手 2.4 窗口流量控制 三、UDP协议 3.1 UDP报文格式 3.4 传输过程 一、什么是端口号? 我们自己的一台电脑上有时可能会同时运行多个进程软件来进行上网。那么当网络上的服务器响应我们电…