设备,设备树

设备窗口(“设备树”)你可以将硬件运行状态映射应用程序上。

每个设备对象表示了一个特殊的(目标)硬件对象。例如:控制器,总线节点,总线耦合器,驱动器,I/O模块以及显示器。

每个设备都是由设备描述定义的并且必须被 安装到本地系统中,以便于可以 添加到设备树中(参见下文)。设备描述文件中定义的属性可以进行配置,可编辑并且可以连接到其他的设备进行使用。

然而不止是设备对象是在设备树中进行管理,所有运行在 “应用”设备上的(控制器,PLC)都在这里进行管理;相应的“应用”对象以及“任务配置”和“任务”也是在设备树中进行管理。对于不是在POU视图中进行管理的POUs编程对象,全局变量列表以及函数库管理都是在设备树中进行管理,包含他们的应用以及“子应用”程序。

可以将当前的应用程序运行在“仿真设备”上,这是系统每次默认的编程系统(目前仅适用于CoDeSys Control Win V3系统。所以当选择 So no real target device is needed to test the online behaviour of an application. When you switch to 仿真模式的时候不一定要用实时系统去进行应用程序的在线测试,如果CoDeSys Control Win V3在设备树中显示为一个倾斜的字体,那么就可以进行应用程序的下载。

有可能在“在线配置模式下”连接到设备(参阅 “在线配置模式”)而不需要先加载一个真正的程序。通常被用于进行启动时的 I/O 系统初始化,可以在真正载入一个应用程序到系统中之前对PLC配置中的 I/O 进行测试。

参照下文 “综述”设备树和信息 “在本地系统中安装设备” 和对象 安排

当打开工程时不同形式的转换信息,请参阅 “打开工程... ”

综述
  • 对于树的根节点是用图标 <工程名>来表示的。
  • 对于树形结构的“PLC 配置”和“任务配置”,在CoDeSys V2.3版本中被分到不同的窗口中,但是在现在版本中被整合到一起。PLC配置中定义设备的拓扑结构。包含特殊设备通道。通过相应的编辑器进行任务参数的设置。参阅帮助文档: “任务配置 ” “PLC 配置”
    因此,更具相应的设备对象的安排,系统的硬件结构将会映射到设备树中,允许设置一个复杂的系统结构,包含多个控制网络结构和现场总线。
  • 请参照以下设备树中插入对象的规则。
1 编程系统(包含应用)
2 带图标的设备名称
3 设备描述文件中的设备名
4 参数化的设备
插图 32: 设备树示例
  • 设备树中的每个条目都有一个符号,代表图标名称(可编辑)和设备类型(=设备描述文件中的设备名称)
  • 一个设备是一个编程系统或者是参数化设置。该设备的类型决定了它在设备树中所处的位置,当然也可以移动到资源树下或者插入到设备下。可编程设备有一个额外的图标 “Plc 逻辑”节点自动插入到设备下。在这个节点下方是设备运行需要的对象(应用,文本列表等),也包含一些功能对象像参数管理等。纯参数化设备不能被分配为这样的编程对象,然而设备的参数可以在设备对话框中进行编辑。要注意可编程只是设备的一个属性,并且可以通过(设备描述)进行改变而不需要重新插入新的设备。
  • 对于一个 “工程”或者多个编程设备-无论是哪个制造商或者设备-都可以(通过“多资源”,“多设备”,网络)进行配置。.
  • 设备的 配置包含通讯,参数以及 I/O 映射等,所有这些都是通过设备对话框(设备编辑器)进行配置的,可以在设备上双击打开(参阅 “设备编辑器”中详细描述)。
  • 在线模式下设备会有一个图标表示其状态:
    • :设备正在运行
    • :设备正在运行 / 设备没有配置 / 设备有错误/ 设备在 仿真模式
    • :设备正在运行,包含动态诊断信息
    • :设备在配置模式没有运行
    • :PLC在‘停止’或者‘停止状态下更新IO’从而没有被设置

    提供更多的诊断信息在 设备对话框中的属性“状态”。
在本地系统中安装设备
  • 安装 和卸载设备可以通过 “设备管理库... ” 对话框进行。安装设备基于XML格式的设备描述文。一个有效的设备描述文件的扩展名是 *.devdesc.xml。但是也有些特殊的描述文件像 *.gsd-files (Profibus设备),*.eds-files (CANbus设备, ASi设备)等。 可以通过设备库对话框。具体的在CoDeSys V3配置文件中*.cfg 可以使用适当的附件信息文件 *.info.cfg,用于提供描述各组的配置文件。
关于如何在设备树中进行编排和对象配置的规则:
  • 为了添加对象使用命令 “添加对象”;为了添加设备使用命令 添加设备。可以插入的设备类型取决于当前设备树中选择的对象。例如:DP现场总线从站模块不能在没有合适的总线端子模块之前被插入;但是没有应用可以插入到非编程设备中。进一步只有当前设备可以 插入到本地系统并且只有在适当的位置才能被插入。
  • 对象的重新定位是可以的,通过属性命令 剪切(剪切,复制,粘贴,删除)或者通过鼠标键(按住[ ctrl ] 的同时)进行选择对象的绘制。命令 “粘贴”:如果要对程序进行粘贴,可以粘贴到当前选择的上方或者下方,通过选择粘贴位置对话框指定插入的位置。当通过“粘贴和复制”功能添加设备时,新添加的设备名在原来名称的基础上自动递加一个数字进行区别。
  • 一个已经存在于设备树中的设备,可以被另一个版本中相同设备类型或者不同类型的设备 替换设备替换)。在替换的同时,一个替换设备相应的设备树将会重新进行构建。
  • 脚本节点 <工程名>下,只有“设备”对象可以被放置在适当的位置。如果通过“添加对象”对话框中选择了一个其他对象类型,例如“文本列表”,将会添加到POUs窗口中!如果当前没有选中对象,在设备窗口中的空白位置点击鼠标,这等同于选择脚本节点操作。
  • 设备将插入到设备树中的节点,如果在设备描述文件中,子节点将会自动添加。子节点必须是一个可编程的设备。
  • 在设备对象下可以插入更深及的设备,如果这些设备可以 插入到本地系统,那么设备在‘添加对象’产生的对话框中是可见的。其中设备对象的排列顺序是从上到下:一个标准的树形结构首先是编程设备(PLC逻辑),然后是其他的设备,买个设备按照字母顺序进行排列。
  • 一个 “应用”对象只可以被插入到“Plc 逻辑”节点(编程设备的象征节点)下。如果在应用树中包含多个应,应用的名字在设备中必须是唯一的。在每个应用下,可以添加更深层次的编程对象,比如 DUT, GVL 或者可视化对象。一个任务配置必须添加到每个应用下。在这个任务下必须进行程序调用的配置(POU实例或者POU窗口中的应用程序)。如果一个设备下插入过个应用,那么这些应用必须被定义在设备中的 “I/O 映射”这些应用程序进行实际处理。
  • 应用的分层排列:
    一个应用可以被插入到另一个程序下:我们命名这种结构为“父应用”和“子应用”。子应用可以使用父应用的对象,反之亦然!原因:子应用可以被移动或者更换,但是这不涉及到父应用。参照下面的表格:‘应用’是应用‘App1’的父节点,同时又是应用'App2'的父节点:
1 无法访问 App1, App2 以及他们的POUs,全局变量和库
2 可以访问他们的应用和 GVLs, POUs以及库
3 可以访问应用和 App1 以及他们的 GVLs, POUs 和库
4 可以被所有的应用程序实例化
插图 33: “父与子节点”

提示!

注意一个“子节点”可以从一个PLC中移除当在“父应用”完成在线模式配置之后。

  • 当前网络的硬件扫描
    作为在设备树中进行PLC配置的一个助手,在标准的设备编辑器中提供硬件的自动扫描。当前的硬件结构可以直接被扫描到对话框中,允许用户直接选择项目中需要的模块,并添加到设备树中,参阅命令 “扫描设备 ”