徐季旻 金 晔
(上海交通大学学生创新中心,上海 200240)
现场总线技术是大部分理工科院校电气、测控、仪器、自动化、机电、工业工程等院系都会涉及的专业内容。在自动控制领域,经历了从集中控制系统(CCS)到集散控制系统(DCS),再到现场总线控制系统(FCS)的发展历程[1]。伴随着计算机网络、通信技术的快速发展,与自动控制技术相结合所产生的现场总线技术是符合工业企业信息集成与管理控制一体化系统的发展趋势和需求的。近年来随着中国工业经济的转型发展,工业4.0模式的快速推进,设备互联变的越来越重要,熟悉和掌握工业现场总线技术人才的培育刻不容缓。现场总线技术知识点多,又十分强调实际应用,实践教学方案设计应该体现出简单性、可靠性、实时性和开放性。
传统控制系统的接线方式是一种并联接线方式,当元件数量增多时,系统复杂度成倍增加,安装维护不方便还容易出错。现场总线技术采用串行数据传输和连接方式代替传统并联方式。在实践教学的过程中学生通过接线比较,可以直观地感受到现场总线布线的简单性。工业现场存在着大量的电磁辐射、热电噪声、地电势差等大量干扰。实践教学现场不可能模拟整个工业环境,但可以通过长时间信号采集、数据通信等任务,并让总线线缆从变频电机等强辐射设备周围通过,让学生通过数据观察到现场总线通信的可靠性。实时性可以通过多轴运动控制系统,体现现场总线在保证数据可靠性和完整性的条件下具备较高的数据传输速率和传输效率,满足伺服驱动对网络通讯的实时性和同步性的严格要求。开放性一方面是应用的开放性,另一方面是通信规约的开放性。通过总线能与不同的控制系统相连接,实现应用层的互通;又能根据通信协议,开发新的接入设备和产品。
目前市场上具备一定占有率比较流行的现场总线国际标准不少于20种。长期以来,现场总线技术也争论不休,互连、互通与互操作问题很难解决。传统的现场总线的速率限制kb级至10Mb级,总线上节点数与寻址范围也很有限[2]。于是现场总线开始转向三十年来最成功的以太网网络技术。经过多年的努力,以太网技术已经被工业自动化系统广泛接受。德国倍福自动化有限公司于2003年提出了EtherCAT (Ethernet for Contrul Automation Tecnology)就很有代表性。EtherCAT基于标准的以太网技术,具备灵活的网络拓扑结构,最多可支持65535网络节点,具备系统配置简单、全双工、高速、有效数据率高等特性。EtherCAT于2007年进入IEC61158,成为开放的国际标准。在全球已有10余年的应用。2014年,中国国家标准化管理委员会宣布EtherCAT成为GB/T 31230中国推荐性国家标准[3]。截至2020年5月,EtherCAT技术协会(EtherCAT Technology Group,缩写为ETG)拥有67个国家和地区5825个会员单位。2019年10月推出的EtherCAT G技术,将通信速率推进到千兆和万兆级别[4]。
鉴于EtherCAT本身的技术优势、前沿性和开放性,以及在行业内的应用状况,作为现场总线的教学案例是非常合适的。但是实践教学不只是讲解总线电气规范、编码方式、传输技术、差错控制、协议格式等理论知识,还要和实际的工业生产应用结合起来,才能让学生学有所得、学有所用。教学也需要配和实验室建设,引入一些成熟的工业化产品和设备,使学生能够快速上手,看到实际的控制效果。上海交通大学与欧姆龙公司联合共建了“Sysmac工业自动化联合实验室”,利用欧姆龙丰富的接近传感器、光电传感器、光纤传感器、编码器、Sysmac平台NJ系列机器控制器、G5系列伺服系统、MX系列变频系统、GX系类远程IO模块、数模/模数转换模块等,在高校实验室构建类似于工业现场的实机测试环境。把这些设备和器件按循序渐进的原则,设计了基本输入输出、直流电机与传感控制、交流电机变频控制、步进电机控制、伺服控制等单项实践教学模块;还设计了自动分拣装置、小型立体仓库、三轴机械手等典型综合控制对象(见图1)共计20台件(套),可以让学生做好系统级的综合控制要求规划,体会到现场总线数据通信的实时性和便利性、完成复杂的控制程序编写与现场调试,真正帮助学生建立起对实际现场环境的认识,提高学生的动手能力。
图1 典型综合控制对象——三轴机械手Fig.1 Typical integrated control object—three-axis manipulator
联合实验室的以平台化方式为课程和课题提供支撑。面对单独开课和部分课程教学模块的需求,设立多个教学模块、制定不同的教学目标。各模块既可以聚合成一门独立课程,又可以根据相关课程的需要,选择性地融入教学内容中。
这个部分的教学要求让学生掌握现场总线的基础常识,了解不同现场总线技术的优势和区别。EtherCAT总线以以太网为基础,发送标准以太网数据帧,符合IEEE 802.3以太网协议。以太网在日常工作中比较普遍,学生应该不陌生。要特别强调的是常规以太网使用的是带有冲突检测的载波侦听多路访问(CSMA/CD)的方式,具有关键帧不确定性因素,不能满足工业以太网对实时性的要求。而EtherCAT采用修改过的以太网技术,通过修改其通信方式,提高通信实时性。EtherCAT主站发送的每一个数据帧经过所有节点,在数据帧下行传输的过程中,每个节点根据地址读取发送给该节点的数据,并将反馈数据写入数据帧。这种传输方式改善了带宽的利用率,使得一个数据帧在传输的过程中就可以完成各节点的数据交换。网络也不需要使用交换机或集线器、不需要复杂的路由设备。数据帧的传输延时只取决于硬件传输延时。当某一个网段或者分支上的最后一个节点检测到没有下一个从站时,利用以太网技术的全双工特性将报文返回主站。这种俗称“数据火车”的方式,设计非常巧妙,是理解EtherCAT总线的基础(见图2)。
图2 EtherCTA的数据传输Fig.2 EtherCTA data transmission
了解EtherCAT的通信方式后,还需明确EtherCAT的寻址方式。EtherCAT有两种寻址方式:设备寻址(device addressing)和逻辑寻址(logical addressing)。其中设备寻址又分为顺序寻址和设置寻址。EtherCAT报文中32位地址分为16位的从站设备地址和16位的设备内物理存储地址。
顺序寻址一般用在启动阶段,主站通过顺序寻址对从站做一些配置,是根据从站的连接顺序,即物理位置实现的。主站将报文的地址设为一个负数并且是个自增量,当数据帧经过时从站只处理自增量地址为零的子报文。在经过每个从站时,数据帧中所有自增量地址加一。以此类推主站将按照数据帧在整个网络中的移动顺序依次遍历整个网络。
启动阶段之后,一般采用设置寻址方式的方式。主站会给每个从站设置一个站点地址,此地址可与主站通信,设置后不能更改。站点地址也可以通过从站自己的非易失存储器获得。设置寻址优点是每个从站的地址与其在总线中的位置无关。在添加、删除从站,甚至是改变总线拓扑结构的时候都能对从站进行正确的访问。
逻辑寻址需要配合总线内存管理单元(FMMU),完成对从站物理地址与主站逻辑地址进行翻译并建立映射关系。这种寻址方式的优点是,在主站想对每个从站进行访问的时候,只需要对逻辑空间中的地址进行操作,而无须关心该地址对应的从站物理地址,减轻了主站的负担。
熟悉EtherCAT的寻址方式,学生就很容易理解和配置EtherCAT从站设备上的地址设置拨盘,保证从站设备的正常通信。
除了现场总线的基本原理,加上一些电气控制和运动控制的基础知识,然后通过动手实践,是最容易加深对理论的理解和加强对知识的掌握。在欧姆龙的实验平台上,可以完成从基础的输入输出控制到复杂的运动控制实验。由于强、弱电线缆通过安全插线的方式连接,通信线缆采用标准的以太网双绞线和RJ45接口,接线的工作并不繁重,可以把更多的精力集中在系统的配置和控制流程上。
通过Sysmac Studio一体化开发平台(见图3)和NJ系列机器控制器,可以快速可视化地完成主控制器与各外围模块、EtherCAT网络通信模块的配置。除了利用传统的梯形图编程,实现置位、复位、串并联、中间继电器、计数器、定时器等逻辑控制功能,还可以实现伺服系统的速度、位置闭环控制,驱动轴组的直线插补及圆弧插补,电子凸轮等复杂运动控制功能。可以实现三维建模运行仿真和实时数据的跟踪分析。遵循开放的IEC 61131-3国际标准,除了梯形图,可以使用结构化文本(Structured Text)高级编程语言,来提高控制程序编写的灵活度,充分发挥硬件设备的特性,封装成熟优质的程序功能块。
图3 Sysmac Studio一体化配置与开发环境Fig.3 Sysmac Studio integrated configuration and development environment
与传统控制器重复地从头到尾执行程序的单循环控制方式不同,本实验系统还支持多个优先级、不同循环周期的多周期任务工作方式(见图4)。实现了多任务的调度和公共数据变量的刷新与锁定保护。多任务调度在控制要求越来越复杂的情况下,可以有效保证运动控制功能的敏感性的同时,保证其它外围信号的交互与响应。这种方式不同于传统的编程习惯,利用好了可以有效提高控制程序效率,需要学生逐步适应。
图4 多周期任务的调度Fig.4 Multi-period task scheduling
实验平台设计了多个的实践教学内容,可以根据不同课程的需要,灵活选择(见表1)。
表1 基础实验内容Table 1 Basic experiment content
通过理论学习和基础实验教学内容,可以让学生们了解EtherCAT现场总线是什么、怎么用,具备了基本的控制系统集成能力的。但是现场总线的学习,不应只是作为技术的使用者,要利用EtherCAT总线的开放性,深入掌握现场总线的特性,具备现场总线的开发能力。EtherCAT采用主从式结构,相关的开发内容教学可以聚焦于主站的开发和从站的开发。当然这部分内容,要求学生具备一定的软硬件开发能力。由教师讲授一些基础的开发知识与工具,通过课程大作业或者实践课题的形式进行更合适。
EtherCAT主站采用标准的100Base-TX以太网卡,任何具备商用以太网控制器的Windows系统PC机或Linux、WinCE等系统的微处理器板卡,都可以作为开发设备。自主开发的主站一方面可以避免采购昂贵的专用控制器,拓展专用设备上无法实现的新功能,接入广大的EtherCAT从站设备,实现不同用户需求的按需定制。
主站功能主要依靠软件实现。系统的控制周期由主站发起,遵循IEEE802.3以太网协议,没有重新定义新的以太网帧结构,而是采用一种不同于其它以太网的帧类型0x88A4,使其可以并行地运行在其它以太网协议中。
EtherCAT的数据帧结构如图5所示,最大有效数据长度为1498字节。以太网数据包含EtherCAT头和EtherCAT数据。EtherCAT数据又包含了子报文。子报文包含子报文头、数据和工作计数器(WKC)。子报文头决定该子报文应传输到的对应从站,以及该从站对子报文进行的读写操作。在主站通信的过程中,16位工作计数器尤为重要。主站发起周期控制的时候,预先给工作计数器赋值。当数据帧遍历完所有从站设备,通过比对返回的工作计数器的值,就可以验证数据报文是否被EtherCAT从站节点正确处理。
图5 EtherCAT数据帧结构Fig.5 EtherCAT data frame structure
主站的开发可以使用多种高级语言来编写,利用现有的以太网头文件或者库文件,无需特别复杂的代码,就可以实现主站的功能。主站应用层数据的交互,以及对数据的处理策略以及功能实现,是学生能更多拓展的内容。
EtherCAT从站大多采用专用的ESC(EtherCAT Slave Controller)芯片。ET1100芯片是倍福公司推出的、使用比较广泛的ESC芯片。ET1100最多支持4个数据收发端口,每个端口都可以处于打开或者闭合状态。有8个现场总线管理单元、8个同步管理单元、4K控制寄存器、8K过程数据存储器和64位的分布时钟[5]。ET1100能够直接作为32位数字量输入输出站点,或者通过过程数据接口与微处理器连接,组成具有复杂功能的从站设备。
ET1100芯片提供3种接口规范:32位并行IO接口、8/16位微控制器并行接口和串行SPI接口。并行IO接口适合只有数字输入、输出的从站节点,无需额外从站控制芯片。但是通常从站是需要处理传感器信号、模拟量、编码器或者完成简单驱动功能的,所以一般会采用MCU(如STM32)通过串行SPI接口进行数据交换(如图6所示),比采用并行接口简单(并行接口适用于数据量较大的复杂设备)。
图6 从站处理器与ESC芯片的连接Fig.6 Connection between the slave processor and the ESC chip
市面上已有比较成熟的ET1100开发板,STM32的开发板更是种类繁多。从站初期开发可以利用两种开发板完成板间连接,开发测试完成相应功能。学有余力的学生,可以自主设计制作从站硬件PCB,实现独有的从站模块。
上海交通大学学生创新中心,依托欧姆龙实验室,开设了现场总线相关的基础实践课程教学单元,一般为8-16课时。主要是面对参加工程实践课程低年级学生,在完成基本的机加工训练和电工电子实习后,对现代控制技术有一个概括的了解并完成一些基础的验证性实验。开设过32课时的选修课程,面向高年级对现场总线技术感兴趣的学生,比较全面地介绍了EtherCAT总线技术,并完成了复杂运动控制系统的测试。与机动学院机电一体化课程合作,负责现场总线部分内容教学。以实验平台为依托,为学校本科生研究计划(PRP)提供支撑,完成了多个PRP项目。立项完成学校特色实验项目1项。面向全国兄弟高校完成多次师资培训,助推了EtherCAT现场总线教学的发展。后续还将继续优化EtherCAT现场总线主站、从站开发的教学内容,让学生也能够成为技术的推进力量,促进行业的良性发展。