倍福Ads通讯在滤棒成型机人机界面系统中的应用

发表时间:2021/5/19   来源:《科学与技术》2021年第4期   作者:赵强
[导读] 滤棒成型机是许昌烟草烟草机械公司的主要产品

         赵强
         许昌烟草机械有限责任公司,河南 许昌 461000
         摘要:滤棒成型机是许昌烟草烟草机械公司的主要产品,是为卷烟企业提供滤棒生产的设备。人机界面系统是人机交互的窗口,操作人员可以很方便地操作机器,从而完成生产任务。其中,通讯是连接人机界面的载体——工控机和控制系统的桥梁,是整个人机界面的核心模块。许昌烟机的滤棒成型机的控制系统主要采用德国倍福公司的控制器,使用国际通用的Ethercat通讯规范,而ADS通讯是倍福公司提供的一种非常成熟的接口协议,可以实现工控机与控制系统之间快速、稳定、安全地进行数据传输。通讯模块程序基于计算机高级语言C++编写的动态链接库,可以作为DLL库文件在人机界面开发中使用。
关键词:滤棒成型机,人机界面,ADS,动态链接库
         许昌烟机的滤棒成型设备的主要技术是引进德国HAUNI,某些方面属于核心技术没有转让,为了突破技术壁垒,只有独立开发。通讯是上位机(工控机)与可编程控制器(PLC)之间数据交互的桥梁,是整个人机界面系统的最核心的模块[1]。因此,能否科学、合理设计开发通讯模块直接影响到滤棒成型机的整体性能。
1、ADS通讯协议
         ADS 通讯协议以 TCP/IP 协议为基础,处于网络通讯协议的应用层,是可以实现 PLC 之间、PLC 与第三方平台开发的应用程序之间进行数据传输的一种双方协议[1]。ADS协议的报文的结构由报文头(AMS Header)和数据段(ADS Data)两部分组成,报文头包括主站和从站的NetId和端口号、状态标识、错误码等信息;数据段包括地址信息及数据信息,地址信息是变量在PLC的地址,用于变量的寻址和读写操作,也由两部分组成:寄存器(GroupIndex)和偏移量(OffsetIndex),变量的这两个属性可以唯一标识变量的地址,然后根据变量的长度进而找到变量的值。
基于ADS协议的设备之间的通讯有多种方式[2]:
?异步方式(Asynchronous)
    ADS 客户端向ADS 服务器发送ADS 请求,同时客户端继续自己的工作。ADS 服务器处理请求后,把响应以Call-back 函数方式发给客户端。优点:不会造成系统堵塞,缺点:不能确保每次请求都有返回。
?通知方式(Notification)
    ADS 客户端向ADS 服务器发送ADS 请求,ADS 服务器以Call-back 函数[3]的方式不断向客户端发送响应,直到客户端取消该请求。优点:不会造成系统堵塞,缺点:不能确保每次请求都有返回。
?同步方式(Synchronous)
         ADS 客户端向ADS 服务器[4]发送ADS 请求,在通讯过程中客户端程序停止执行,直到获得ADS 服务器返回的响应。优点:能即时返回结果,缺点:如果通讯故障会造成系统堵塞。


         整个人机界面的系统数据分为即时数据和普通数据[5]。即时数据包括立即在界面展现的数据(如报警信息等)和具有高优先级、需要立即执行的指令等。普通数据包括为生产数据和配置数据,其中生产数据为品牌参数、生产指标、班次轮换等数据,配置数据是整个人机界面初始化时需要加载的数据信息如上位机需要访问的变量列表等。
2 通讯模块详细设计
         参与滤棒成型机人机界面和PLC程序通讯的变量有三种类型:参数、符号地址和消息。其中参数指的是机器参数和牌号参数,如滤棒速度、长度、直径等数据;符号地址是人机界面上显示的文本信息,这些信息是从控制程序中获取的,通常指的是各种开关的打开/关闭状态、版本信息等;消息主要指机器的停机原因、报警、警告等信息。
         上位机(人机界面)用到全部变量大约有2500个,数据交互必须在极短的时间内把变量信息从控制器读取到上位机或者从上位机写入到控制器。为了实现数据同步和快速响应,采用多线程的方式来读取数据,为每一类变量创建一个线程,三个线程共用系统资源同步执行,达到从PLC快速获取数据的目的。
         配置文件中变量信息(编号、名称、序号)、按名称分别从PLC中获取的变量信息(组、偏移量和大小)以及打包读内存缓冲区信息(缓冲区编号,地址偏移量,数据指针)构成地址映射结构体。通过这种结构,上位机能够快速通过变量编号来获取变量的数据信息。
         首先对三类数据分别创建若干个数据包,每个数据包包含若干个同类型的变量,利用ads协议的接口函数AdsSyncReadWriteReq一次性读取一个包的数据,然后再依次取出并存放到每个打包读字节缓冲区,由于,采用“打包读、单个写”的方式进行数据交互,采用按地址的方式对PLC程序的进行访问。
3 通讯模块的实现
         通讯程序以VC++作为开发平台,以ZL29滤棒成型机现有控制程序为基础,采用Ads通讯协议实现上位机与倍福控制器之间的数据交互。为了测试通讯程序,用VC++做了一个简单的界面,如图4所示:

         实验证明,通讯模块的设计合理、性能可靠,数据传输速度快、效率高,能够实现从人机界面和控制系统之间的数据交互。
4 结束语
         目前通讯模块已经用于公司自主研发的新型滤棒成型机上,机器的实际运行情况良好,可以实现快速、稳定、可靠的数据传输,达到实用效果。
参考文献:
[1]郑青春,王文格.超高速卷接机控制系统实验研究平台构建及上位机通讯.仪表技术与传感器,2012,12
[2]Beckhoff.TwinCAT 高级语言编程接口.德国倍福自动化有限公司. 2009.
[3]Beckhoff.嵌入式PC从入门到精通.德国倍福自动化有限公司. 2009.
[4]林经开.基于ADS通讯的地毯簇绒机上位机软件设计.东华大学[D].2017.
[5] 李建杰,易先清.基于TWinCAT 的卷烟生产统一监控系统设计与实现.工业控制计算机,2010,23(7)
投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: