这个子对话框 ⇘ “设备编辑器”名为'<devicetype> I/O 映射' (例如: 'PROFIBUS DP I/O 映射')。用于配置 PLC 上的 I/O 映射。这意味着工程变量,被应用程序使用,关联到输入,输出以及内存地址的 PLC 设备。
应用程序需要对 I/Os 进行处理,必须指定在 " ⇘ “PLC 设置”中。
如果设备支持,“在线配置模式”可以用于管理硬件的 I/Os 并且可以不用将实际的应用程序下载到设备。参阅 ⇘ “在线配置模式”。 |
参阅下文:
是否当前设备的所有 I/O 映射都可以被修改,取决于当前设备;可能对话框只用来显示隐藏创建的设备实例,参阅下文: IEC 对象。
基本上,需注意以下内容映射的I / O变量:
通道
如果设备支持以下入口可以获得:
“通道”:设备输入输出通道的符号名。
“地址”:通道的 ⇘ “地址”例如 '%IW0'。
你可以修改并且固定对话框中的输入和输出地址。这在关联地址到给予的硬件上是非常有用的,以便在模块发生改变时保持变量的地址值 (每个默认的地址值会自动适应硬件地址)。
注意基于设备描述文件的描述用户可以修改输入输出入口的地址,但是不能修改子元素的地址,例如。位通道。所以如果映射表格相关的输入或者输出具有子树,那么只有子树的最高区域可以进行编辑 (参阅下表:只有第一行地址可以进行修改)。
为了填充地址值,选择位于“地址”列中的入口并点击[ Space ] 键打开编辑区域。现在无论是修改变量或者不做修改离开或者通过[ Return ] 键关闭编辑区域。地址区域都将会被标记一个图标,表明当前变量已经被填充。如果变量被修改子地址(位于顶端填充地址之后) 将自动进行修改:
如果希望移除填充值,重新打开地址编辑区域,删除地址入口并且通过[ Enter ] 键关闭。地址以及连接的地址将会被设置为手动修改之前的值,并且 M 图标将会被移除。
“类型”:输入输出通道的 ⇘ 数据类型。例如 'BOOL'。如果数据类型不是标准类型,而是一个结构体或者在设备描述文件中的位区域,只有在是 IEC 标准的一部分时才会被列出并且在设备描述文件中作为隐藏的 IEC 类型。否则表格的入口将为空。
“单位”:参数值的单位,例如 'ms' 表示毫秒
“描述”:参数简单描述
“当前值”:参数当前值,在线模式下显示
I/O 映射配置
映射过程是通过将工程中的变量关联到输入或者输出通道“变量”列中实现的。
如果在映射对话框中需要关联一个UNION,那么取决于设备是否脚本元素可以被映射。 |
提示! 映射 "太大" 数据类型:如果使用的数据类型比比特数据类型大,而被映射到比特地址上,那么这个变量将会被削减为比特大小!这意味着以下在映射对话框中对变量值的监控可行:在地址的脚本元素中变量的值 - 当前工程中可获得 - 将会被显示。位于特殊位值的位元素将会被监控,这对于完成变量值可能不是必须的。 |
“重置映射”:使用这个按键将会重置映射设置为设备描述文件定义的默认名。
“总是更新参数”:如果这个选项被激活,所有变量将在每个 ⇘ 总线循环任务周期内进行更新 无论变量是否被使用或者映射到输入输出。
IEC 对象
只有在一个隐含的设备实例被创建的时候对话框的这个部分才可见,并且可以通过应用进行管理 (例如为了重启总线或者发布信息)。这个实例是否可获得以及怎样使用,取决于设备类型以及帮助页面中特定设备配置的描述。
总线循环选项
周期性的读之前或者输出之后这个选项配置可以从设备获得。用于设置设备特殊的 ⇘ 总线循环任务:
默认情况下 '父' 总线设置可见 (“使用父总线设置”),然后设备树将会用于查找下一个定义的总线循环任务。
要指定一个特定的总线周期任务,从选择列表中选择所需的。该列表提供了当前定义的应用程序中的任务配置任务。
如果一个结构体变量映射到地址的根元素(映射对话框中树的最上层的相关地址),然后在在线模式下将不会有值在此显示。然而,例如一个DWORD变量映射到该地址,那么在顶层以及位于相关变量中的位通道将会被监视。基本上顶行将会保持为空如果变量被多个子元素填充。
在在线模式下没有做映射的输入和输出将不会在程序代码中进行执行,所以变量值的显示可能是错误的。不相关的变量的“当前值”将会以灰色背景显示。
在设备或者机械试运行过程中可能需要强制 I/Os,例如使用 HMI 可视化时。针对这种情况特殊的 '强制变量' 可以针对每个 I/O 通道创建,并映射到设备编辑器中的 I/O 映射对话框中的变量。
默认环境配置“创建 IO 映射强制变量”必须在 ⇘ “PLC 设置”对话框中激活。然后在应用的每次编译运行时,对于每个映射的 IO 通道,将会根据以下语法规则创建两个变量,同时通道名中的空白区域将会被一个下划线替代:
这些变量将会出现在输入助手的类别 "Variables", "IoConfig_Globals_Force_Variables" 中。可以被用于编程系统中任何的编程对象,可视化,图标配置等。
强制变量的一个上升沿将激活相应 IO 的强制操作,操作值是通过 Value-Variable 中定义的。下降沿将取消强制。通过强制变量为 FALSE 的方式取消强制必须在一个新的变量强制之前进行操作!
注意以下限制:
示例
如果映射像按照图片“设备对话框, I/O 映射”(参阅上文)的方式完成映射,那么在应用程序编译过程中 ([ F11 ] ) 以下变量将会出现并可以通过输入助手获得:
- Digitax_ST_Control_word_QW0_Force : BOOL;
- Digitax_ST_Control_word_QW0_Value : UINT;
- Digitax_ST_Target_position_QD1_Force : BOOL;
- Digitax_ST_Target_position_QD1_Value : DINT;
- Digitax_ST_Status_word_IW0_Force : BOOL;
- Digitax_ST_Status_word_IW0_Value : UINT;
- Digitax_ST_Position_actual_value_ID1_Force : BOOL;
- Digitax_ST_Position_actual_value ID1_Value : DINT;
限制