当前位置:文档之家› 现场总线

现场总线

南京工程学院课程设计说明书(论文)题目Linux操作系统下的POWERLINK主站和从站通信课程名称现场总线技术及应用院(系、部、中心)自动化学院专业自动化班级学生姓名学号指导教师目录一课程设计的目的----------------------------------------------3二课程设计题目及要求----------------------------------------3 1题目----------------------------------------------3 2设计要求------------------------------------------3 三环境搭建-------------------------------------------------------3 四powerlink的原理--------------------------------------------4 五操作过程--------------------------------------------------------9 1 主从站之间的通信------------------------------------9 2openCONFIGURATOR应用------------------------------------------19六实习体会--------------------------------------------------------26Powerlink课程设计报告一、课程设计的目的课程设计的目的是使学生能够将《现场总线技术及应用》课程的学习内容有机的联系起来,形成系统的概念,培养学生综合应用知识的能力,掌握现场总线系统设计的基本思想和方法。

二、课程设计题目及要求1、题目Linux操作系统下的POWERLINK主站和从站通信2、设计要求使用开源的openConfigurator对主站和从站进行配置,对开源的openPOWERLINK代码在Linux系统下进行编译实现主站和从站的通信功能,利用网络诊断工具wireshark检查和验证通信功能。

三、环境搭建(1)硬件环境:一台PC机,安装两台虚拟机,一台作为主站,另一台作为从站(2)软件环境:a)安装虚拟机VMware player;b)安装Linux操作系统Ubuntu;c)安装程序文件产生器Doxygen;d)安装编译安装工具CMakee)安装网路数据包捕获函数库libpcap作为网卡驱动四、powerlink的原理1)Powerlink是ICE国际标准,通信描述– IEC 61784- - 2服务和协议– IEC 61158- - 300– IEC 61158- - 400– IEC 61158- - 500– IEC 61158- - 600设备描述– ISO 15745- -1 1目前中国唯一实时以太网的国家标准( GB/T- - 27960 )2)通信过程本次课程设计我们安装两个ubuntu操作系统,一个作为主站,一个作为从站。

其中,主站发送一个数据给从站,同时从从站接收一个数据。

如下图所示:POWERLINK 的主站和从站事先定义了一些对象,这些对象的声明在objdict.h中。

这些对象的作用就是用来存储通信数据的。

下图为通信模型。

节点i节点k通信过程为:3.主站把需要通信的object 的数据,组成发送数据桢,发送给从站。

从站接收到该数据桢,将数据桢中的数据解析,放到从站自身的object 中。

4.同样道理从站把需要通信的object 的数据,组成发送数据桢,以广播的方式发送的网络上。

主站或其他从站接收到该数据桢,将数据桢中的数据解析,放到从站自身的object 中。

5.因此,POWERLINK 的通信,实际上就是主站上的object 与从站上的object 之间相互通信。

需要注意的是,相互通信的两个object,在数据长度上最好相同,否则,容易产生错误。

例如主站上某一个object 的数据长度为16bits, 而某个从站上的object 为8bits,这两个object 要通信,可能会出现主站发来的16bits 的数据要被保存到从站的8bits 的object 上,这就造成了数据的丢失。

通信模型的要点:1.对象字典由通信模型可知,要通信,首先需要有object,所有object 的集合,就成为对象字典。

通信之前,首先要定义对象字典。

2.映射参数(mapping):描述object 与数据桢中数据段对应关系的参数叫做映射参数(mapping ).这个参数描述了object 如何组建成数据桢;以及如何将数据桢解析,将数据桢中的数据存放到object 中。

3.应用程序中对object 的访问通信的最终目的是为应用程序服务,将通信的数据交给应用程序使用。

Object 是通信协议与应用程序之间的接口,通信协议将数据保存至object 或者从object 把数据取走。

应用程序从另外一测与object 打交道。

3)主站发送参数的配置过程主站和从站的区别:每个循环周期,从站只需要发送一个TPDO 的数据帧。

而主站如果基于请求/应答模式,一个循环周期需要向网络中所有的节点都发送一次请求数据帧Preq,而且相应的也会收到从站的回复Pres,一个Preq 数据帧就是一个TPDO,而一个Pres 数据帧,就是一个RPDO。

这也就意味着主站在发送时,需要有多个发送TPDO的通道;在接收时,需要有多个接收RPDO 的通道。

举例来说,假如一个系统里,有1 个主节点和3 个从节点。

此时主站需要3 个发送通道和3 个接收通道。

4)从站接收配置之通信参数配置参数0x14XX 描述接收配置的通信参数,XX 的取值范围为0x00 至0xFF。

该参数描述了此节点需要接收来自哪个节点的数据。

从前面讲述的POWERLINK 基本原理可知,POWERLINK 支持交叉通信,因此每一个节点都可以接收来自另外一个或多个节点的数据。

所以一个节点可以有多个接收通道。

例如0x1400 是一个通道,接收来自主节点的数据,那么就把0x1400/0x01 的值设为0(默认值设为0,表示接收来自主站的请求数据);0x1401 是一个通道,接收来自3 号节点的数据,那么就把0x1401/0x01 的值设为3,这样该节点在同一个循环周期你既接收来自主站的数据,也接收来自 3 号节点的数据。

5)openCONFIGURATOR介绍如果使用手动配置网络,那么每次修改网络参数,都要重新编译程序,重新下载,显然在某些场合是不能接受的。

而且手动配置的过程过于复杂。

因此手动配置适合用于产品开发和调试阶段。

当产品开发完成,交付给客户时,就不适合使用手动配置的方式来配置网络。

为此我们提供了一个工具openCONFIGURATOR,使用此工具可以方便快速的组建一个网络轻松地配置各个节点的网络参数和映射参数。

openCONFIGURATOR 是一个POWERLINK 的组网工具或者组态工具。

该工具的输入为网络设备的XDD 文件,输出文件主要是后缀名.cdc的网络配置文件。

该cdc 文件是一个二进制文件,保存了整个网络的配置信息。

主站会根据这个cdc 文件来配置网络主站的参数,以及各个从站的网络参数和映射参数以及循环周期等参数,这个文件不是程序的一部分,他只是一个存储文件。

五、操作过程1、主从站之间的通信1.在vm虚拟机下安装Ubuntu操作系统按下图的步骤进行配置填写用户名密码并且配置完成后,系统会自动安装并打开,填写密码登陆后进入操作系统桌面,打开终端进行操作。

2.下载程序文件产生器doxygen3.下载编译安装工具cmake4.下载网路数据包捕获函数库libpcap作为网卡驱动5.下载wireshark工具6.将下载好的openCONFIGURATO文件以及openPOWERLINK源代码复制到虚拟机的磁盘中。

7.进入prj/openPOWERLINK-v2.0.2-2/doc/software-manual文件夹下运行doxygen文件产生指导书,过程及结果如下图8.生成底层配置文件并进行编译,过程及结果如下所示底层文件配置成功9.按照指导书上的过程生成可执行文件由上图可知主站的可执行文件已经生成,此时进入安装文件夹下,复制该虚拟机作为从站,然后进行如下配置生成可执行文件。

可知从站可执行文件已生成。

10.运行主站的可执行文件,进行主站和从站之间的通信。

A)配置主站通信选择eth0网卡通信成功,主站传输数据B)配置从站通信选择相应与主站相同的网卡eth0通信成功,从站接收到来自主站的数据。

11.打开wireshark,通过此工具观察主从站之间的通信过程A)打开wiresharkB)在界面中选择主从站配置时选择的网卡eth0,点击start开始通信C)如下图所示,可以观察到主从站之间通信的数据信息2、openCONFIGURATOR应用1.openCONFIGURATOR的安装进入openCONFIGURATOR-v1.3.1-linux-i386文件夹运行confiture可执行文件,系统就会自动下载安装所需文件编译成功可以在gui文件夹下看到可执行文件openCONFIGURATOR,运行此文件。

可打开openCONFIGURATOR如下图进行配置在此页面的“choose save option”下的三个选项中选择poompt选项,其作用是当用户修改了配置或退出时,openCONFIGURATOR会淡出一个窗口询问是否保存。

接下来如上图所示,导入主站的XDD文件,我们选择import XDD/XDC选项,是因为此选项用于用户自己开发的主站或者第三方提供的主站,来导入与主站相对应的XDD文件。

并在接下来弹出的窗口中选择“yes”选项,openCONFIGURATOR会自动计算并填写主站中如下参数的配置信息,完成了添加一个网络配置的工程,并在网络里添加了一个默认的主站的工作。

然后进行从站的添加工作,如下图进行配置在弹出的窗口中填好相应的从站名称,节点号以及与主站相似的选项。

观察从节点,单击某个从节点,显示如下界面,如下图进行配置“pollResponse Timout”选项是指主站接收该从站pollresponse数据帧的超时时间,也可看作主站为该从站发送数据所分配的时间片然后配置接收和发送的网络参数和映射参数首先配置从站的发送PDO的映射信息,发送PDO的映射信息,描述了如何将该节点对字典中的object打包成一个数据帧,单击cm中的PDO的TPDO,按下图进行配置。

然后配置从站接收的映射信息接收PDO的映射信息,描述该节点,如何解析收到的数据帧,设置同上图主站的一样,配置完成后大考TPDO的objectmapping(0x 01和ox02),可以看到配置结果如下图所示设置循环周期单击openPOWERLINK_MN(240),在右边的cycletime 里填写循环周期进行下面的操作对工程进行编译编译结果如下图所示,下图显示编译成功四、实习体会这次现场总线powerlink实习我们从安装Ubuntu到主站从站的通信以及openCONFIGURATOR 的使用,我们都受益匪浅。

相关主题