基于嵌入式以太网通信的激光标刻系统的设计
2016-05-19孔庆芳
孔庆芳
(天津现代职业技术学院,天津 300350)
基于嵌入式以太网通信的激光标刻系统的设计
孔庆芳
(天津现代职业技术学院,天津300350)
摘要:ENC28J60作为以太网通信控制芯片,将uIP协议栈移植到以太网通信中,以实现对上位机传输的数据进行实时的接收和处理。同时采用多任务状态在系统调度下进行自动切换、不间断运行以满足在激光加工中的实时性和精确性的要求。通过对实际加工进行测试,结果表明,该系统的加工精度较高,传输的可靠性、实行性较强,能够满足激光标刻的各项技术指标,运行稳定良好。
关键词:激光标刻;嵌入式控制器;以太网;协议栈;实时操作系统
激光因具有良好的单色性、相干性、方向性和高亮度等优点,广泛应用于生产加工,特别是材料加工方面,有力地推动了汽车、电子电器、航空、冶金、机械制造等国民经济重要行业的快速发展,产生了巨大的经济效益,与此同时,激光标刻技术成为激光应用中最有发展前途的领域之一。激光标刻技术是上世纪90年代兴起的热门工业加工新技术,这种技术是把光能转变为热能,在材料表面上照射能量较高的激光束,在材料表面上迅速产生蒸汽或发生光化学反应,刻出所需要的文字和图形。
激光标刻技术在国际上发展比较成熟,已被市场接受而广泛应用于生产。现在,在国内涉及此技术的公司也有一些,主要的核心技术已经不是激光技术,而是转化为对此技术和操作系统的控制力方面。提高激光扫描速度和快速实现精确定位等问题已经成为提高市场占有率的关键。
本文设计了一种嵌入式控制器,选用了基于ARM Cortex-M4内核32位处理器的STM32系列芯片,运用uCOS-II嵌入式操作系统平台对多个实时任务进行任务调度,上位机和控制器之间的通讯采用基于uIP协议栈的以太网通讯模式,代替了传统的串口通信模式,从而使系统的实时响应和精确定位功能更加优越,同时,因其功耗控制度较好,因此,在激光标刻操控系统的改进及控制方面具有重要的实践意义。
一、总体结构设计
本系统的设计是在天津市激光技术研究所激光标刻机的基础上调试完成的,激光标刻器采用的是扫描振镜式结构,即将激光束入射到两反射镜(振镜)上,这两个振镜可分别沿 X-Y 轴扫描,同时通过控制反射镜的偏转角度,从而使激光能在被标刻的工件表面上打出数字、文字、图形等。系统总体结构如图1所示,整个系统主要由人机交互部分、核心控制部分、信号采集和处理部分3个单元组成。系统主控芯片选用法国意法半导体公司的基于ARM Cortex-M4架构的STM32F407VGT6,Cortex-M4是以数字信号混用为主导,在信号处理方面以及控制方面都具有明显优势,并且Cortex-M系列处理器具有成本低、功耗小的特点。因此,能够满足自动化生产线领域、汽车领域、电源管理领域等多方面的需求。Cortex-M4的核心部分集成了DSP组件,便于进行数字信号的高速处理,同时具有USB、 OTG、 HS/FS、Ethernet等接口,可以方便的对其进行与上位机的通信开发。
系统的工作原理:首先在人机交互界面利用相应的激光加工绘制软件进行标刻图形的绘制,然后通过网络服务终端将数据传输到主控制器中进行存储,主控器采用基于uCOS-II抢占式内核的实时嵌入式操作系统作为主控单元,其功能为负责标刻图形的以太网传输,并将其转换为数字信号以及负责其他控制信号的处理。其中信号处理单元主要包括激光功率控制信号、扫描振镜控制信号、工件检测信号、伺服电机驱动信号、生产线速度控制信号及工作区域原点、边界到位信号等。
二、以太网通信模块设计
(一)模块硬件设计
在工业通信领域中,以太网具有传播速率高、网络资源丰富、系统功能强、安装简单和使用维护方便等优点。100 Mb/s的快速以太网已开始广泛应用,目前,1Gb/s以太网也开始应用,相比速率最高只能达到12Mb/s的现场总线(如西门子Profibus-DP)在速度上可以达到工业要求。
图1 系统总体结构框图
本设计采用ENC28J60以太网控制器,网口终端采用HR911105A集成变压器的RJ45网络接口。符合IEEE802.3标准的ENC28J60芯片是带有行业标准串行外设接口的独立控制器。它为了实现对传入数据包的限制采取了多种包过滤机制;为了实现快速数据吞吐和硬件支持的IP校验和计算,还具备一个内部DMA(直接存储器访问);其与主控制器STM32F4系列的通信数据传输速率高达10Mbit/s,通过两个中断引脚和串行外围接口SPI实现。其典型应用电路(图2)中,主控制器和ENC28J60之间的通信靠SPI接口完成,ENC28J60双端口由控制寄存器来控制,数据包的接收和发送通过RAM缓冲器完成,而判优器则用于对RAM的控制,总线接口解析由SPI接收的数据和命令,MAC中间层模块可实现IEEE 802.3标准,PHY模块负责编译双绞线上的模拟数据。
图2 ENC28J60 典型应用电路
当具备ENC28J60、以太网隔离变压器等元件时,就可以通过单片机进行以太网通信。内部集成了稳压器的ENC28J60需要在VCAP引脚与地之间接上一个10uF电解电容才能够稳定工作,因为内部稳压器不能驱动外部负载,所以电源管脚要外接一个3.3v电源,同时在靠近GND的位置外加一个0.1uF的磁片电容。
在该设计的应用电路(图3)中,ENC28J60芯片采用25MHZ晶振,运用LED实现网络通信的指示功能,图中的NET_MISO通过主机输入、从机输出;NET_MOSI通过主机输出、从机输入;NET_SCK是时钟信号,由主控芯片产生;NET_CS 是从器件使能信号,由主控芯片控制;NET_RST指的是从机芯片复位信号,由主控制器发送,这五个管脚同主控制器相连。ENC28J60网络控制器与主控制器的通信采用SPI方式,为了实现外网与内部电路的电气隔离需要将网络控制器和隔离变压器 HR911105A连接,隔离变压器接在以太网接口RJ45上,从而实现网络导通。隔离变压器HR911105A和RJ45网口的外围电路电路如图4所示。
图3 ENC28J60以太网控制器外围电路
图4 RJ45网口外围电路
(二)模块通讯协议移植
由于资源和处理能力有限,单片机在嵌入式处理器中等级较低。第一,它的ROM和RAM都小于64K。第二,它的CPU频率不高,执行指令的速度不快,所以网络传输速度很低。由于这些问题的存在,大而全的TCP/IP协议栈就不能在单片机上运行,而是采用精简的嵌入式协议栈。
本设计采用的是uIP通讯协议栈,uIP协议栈是传统TCP/IP协议的精简版,只保留了不可缺少的网络通信协议,而去除了多余部分,使通信协议精简。为了使代码通用性和结构稳定性良好,注重IP/TCP/ICMP/UDP/ARP等网络层和传输层协议。它的源代码由C语言编写,并完全开源,本次移植的版本是uIP1.0最新版本。uIP代码库通过一系列的函数实现与底层硬件和高层应用程序的通信,对于整个系统来说它的内部是开源透明的,使协议的通用性增强。系统提供两个函数供系统底层调用。分别是uip_input和uip_periodic函数,通过uip_appcall函数与应用程序进行联系。其关系如图5所示。
uIP协议的移植过程:1)实现与应用程序接口函数uip_appcall的编写。需要根据自己的需要在函数中做各种处理并且指出这些处理的触发条件。2)调用初始化换网卡,配置网卡MAC地址,为uIP和网络通信做好准备。3)初始化uIP协议栈。在已经定义的代码库里直接调用。4)设置IP地址、网关以及掩码。这些设置在uip函数库中可以实现。5)设置上位机监听端口。当端口有数据输入时,对应的uip_appcall函数会做出相应的响应。6)处理uIP事件,uIP进行轮询监听处理,每隔一段时间由主函数调用一次,等待事件的发生。
图5 uip协议栈在系统结构的功能
三、uCOS-II内核的移植实现
(一)任务层的设计
uCOS-II 是专门为嵌入式系统设计的硬实时(Hard Real Time)多任务内核。它是一个完整的基于优先级抢占式实时多任务嵌入式操作系统,并且可以实现移植、固化、裁剪。它具有任务管理、时间管理、实时内核、任务同步通讯和内存管理等特点。经过行业企业的实践认证该系统的安全性和稳定性强。在软件设计中采取三层结构(图6),由外到内分别是硬件层、任务层、操作系统层,这样可以进一步提升系统的研发效率、可靠性和可移植性。
图6 软件架构图
任务层主要有通讯、激光器功率调节、扫描振镜定位、数据存储等四个任务。这是根据系统的主要功能和硬件结构来确定的,每个任务分为三部分:应用程序、任务堆栈和任务控制模块。任务堆栈是存储CPU寄存器内容的模块,任务由非运行状态转为运行状态,就把对应任务堆栈内容置入CPU寄存器,相反就把CPU寄存器内容压入对应的任务堆栈。任务的状态机用来记录实时任务的运行情况,有新任务要执行时,可根据状态机查询实时情况,来决定接下来的操作。操作系统也可以通过状态机来了解当前任务的执行情况。
这四个任务优先级不同,是按照系统自身的性质和对实时性要求决定的。
1.扫描振镜定位任务。扫描振镜定位任务需要实时地获取上位机传送过来的图形点阵数据,并根据CPU中的算法确定初始位置的坐标,某个方向运动持续的时间,运动转向的偏移角度等数据,然后根据这些数据对两个反射镜的角度进行调整。因为扫描振镜的内部是用一个精密步进电机控制,所以处理器进行相应的脉冲输出即可控制反射镜面的偏转角度。这个任务模块是整个控制系统的核心,需要保证与上位机的信息保持同步,因此具有最高的优先级。
2.通讯任务。通讯任务是接收人机交互软件对图形进行点阵处理后的数据信息,并且把信息存储到缓存器中,不断地进行数据的接收、存储、反馈等操作,因此也需要保证较高的优先级。
3.激光器功率调节任务。激光功率调节任务指的是在实际生产加工中,可能需要对激光器的功率进行变化。根据激光器半导体的发光特性,光输出功率随着驱动电流的增大而迅速增加并基本呈线性关系的特性,可以对控制器的输出电流进行调节改变驱动模块的输入电流。
4.数据存储任务。该任务的功能是记录加工元件的数目,存储每个加工元件的点阵信息,将缓存区的数据存储到FLASH芯片中。
(二)软件设计
运行系统需先进行系统初始化操作,包括对所有数据结构初始化,重新分配堆栈。然后,建立通信通道、建立任务、分配预先级。准备工作完成,系统开始按照优先级顺序执行任务。分为开始、通讯、激光器功率调节、扫描振镜定位、数据存储等。开始包括创建信号量、创建邮箱、初始化统计任务以及建立其他任务,之后处于挂起的状态,然后系统根据优先级的不同执行相应的任务。主流程图如图7所示。
通过修改和处理器相关的部分代码即可将uCOS-II系统移植到微处理器中,这些代码主要包含在三个文件中,因此需要完成以下工作:1)修改OS_CPU.H文件。2)修改OS_CPU_C.C文件。3)修改OS_CPU_A.S文件
图7 主流程图
四、应用实例与结论
在实际应用中,将本次设计的控制器安装在一台灯泵浦固体激光标刻机上。该型激光器波长较短(1.064μm),能够在金属材料上进行高清晰度标刻,最小线宽 0.02mm,重复精度±0.005mm,该型激光器各项具体技术参数如表1所示。
技术参数数值激光功率范围0-50W激光波长1064nm激光重复频率≤50KHZ标刻范围Φ70mm、Φ100mm、Φ150mm、Φ220mm(可选)标刻深度≤0.3mm(可选)打标线速≤7000mm/s最小线宽0.02mm最小字符0.3mm重复精度±0.05mm电力需求220V/50HZ/4.5KW
表1激光标刻机技术参数表
选用常见的金属铭片作为标刻材料,设置标刻速度为2000mm/s,激光的重复频率为5KHZ,其他各项机械参数和光学校正参数均调整到正常操作范围,启动激光标刻机。通过对上位机软件进行图形输入,最终可得到实际标刻效果(图8)。
将实验结果放在高倍数字显微镜下观察,可以看到标刻获得的痕迹平整、流畅、清晰而且分布情况比较均匀,没有出现烧点、坏点等情况,在起点、终点、拐角点等处均没有出现轮廓失真现象。
图8 激光标刻实际效果图
对于执行效率而言,正如上文预期所述,当用户发出标刻命令的时候,标刻机能够即刻开始工作,不需要等待数据转换全部完成之后才运行,这样能够保证数据转换和数据输出同步工作,缩短了标刻作业的时间,大大提高了实际生产的工作效率。
五、结语
采用STM32F407VGT6这种嵌入式芯片设计的控制器系统,将工业网络服务引入到激光标刻控制中,由板载操作系统uCOS-II来分配实时控制任务,在实时性和准确性等方面均优于传统PLC的顺序控制方式。同时因其制作成本低廉,具有灵活性与通用性,大大提高了激光标刻控制系统的性能,在实际生产中,具有一定的指导意义和广阔的应用前景。
参考文献:
[1]王进.激光弱化系统控制软件设计与实现[D].华中科技大学,2009.
[2]李成.用于动态在线激光加工的飞行打标系统的研究[D].天津大学,2007.
[3]张福炎编著.嵌入式系统开发技术[M].北京:高等教育出版社,2013.
[4]任哲编著.嵌入式实时操作系统uCOS-II原理与应用[M].北京:北京航空航天大学出版社,2009.
A Design of Laser Marking System based on Embedded Ethernet Communication
KONG Qing-fang
(TianjinModernVocationalTechnologyCollege,Tianjin300350)
Abstract:As a control ship of ethernet communication, ENC28J60 transplant uIP protocol stack into ethernet communication to realize the real-time reception and disposal of data transferred by upper computer. At the same time, the multi-task switch automatically and operate incessantly under the dispatch of system to meet the requirements of real-time and accuracy in laser processing. Through testing the actual processing, it turns out that the processing precision of the system is high and the reliability and implementation is strong. Thus, it can satisfy various technical indicators of laser marking and it runs stably and well.
Key words:Laser Marking; Embedded Controller; Ethernet; Protocol Stack; Real-time Operating System
中图分类号:TP309
文献标识码:A
文章编号:1673-582X(2016)03-0101-07
作者简介:孔庆芳(1983-),女,河北省张家口人,天津现代职业技术学院,讲师,研究生,主要从事通信与电子专业的教学与研究工作。
收稿日期:2015-12-15