APP下载

采用网络控制的电脑横机CAN总线调度仿真

2016-07-12张成俊左小艳吴晓光

纺织学报 2016年8期
关键词:横机网络化消息

张成俊, 左小艳, 张 弛, 吴晓光

(武汉纺织大学 机械工程与自动化学院, 湖北 武汉 430073)

采用网络控制的电脑横机CAN总线调度仿真

张成俊, 左小艳, 张 弛, 吴晓光

(武汉纺织大学 机械工程与自动化学院, 湖北 武汉 430073)

为满足电脑横机控制器网络化发展方向的要求,在分析传统电脑横机单机控制器的基础上,提出了基于双电脑横机控制器的CAN总线的调度仿真方法,并设计了1台电脑控制器同时控制2台电脑横机的“PC+节点”的网络控制结构。通过将电脑横机控制系统中的电动机、电磁控制器和传感器等部件等效为网络控制系统中的网络节点,并利用MatLab数学软件中的Truetime工具箱,按照双电脑控制器的网络结构,建立基于CAN总线的网络化电脑横机的仿真模型。并对CAN总线的动态调度算法和混合调度算法性能进行仿真对比,得出混合调度算法可满足网络化电脑横机控制系统要求的结论,验证了利用CAN总线构成的网络化电脑横机控制器的可行性。

电脑横机; 网络控制系统; CAN总线; 调度算法

电脑横机利用主伺服电动机带动机头在针板上往复移动,完成对织针上升高度的控制,实现毛衫编织。由于传统的电脑横机主控制器与机头位置分离,二者之间的连线需要尽可能的少,文献[1-2]通过研究对比工业标准体系结构总线 (industrial standard architecture, ISA)、外设部件互连标准总线 (peripheral component interconnect, PCI)、串行RS232、RS485和控制器局域网络总线(controller area network, CAN),选择了通信速度高达1 Mbps的CAN总线作为电脑横机主控制与机头控制器之间的通信总线,并根据毛衫编织花型的特点,对CAN总线的通信数据进行了管理[3]。

由于横机机头的传感和执行元件包含CAN总线通信模块、机头零位传感器检测模块、电动机驱动模块、电磁铁驱动模块、选针器驱动模块和IO扩展模块等。电脑横机的控制系统数据准备[3]由电脑利用花型处理软件生成多个控制数据文件,然后利用U盘将数据拷贝至电脑横机的主控制器。在电脑横机运行的过程中,横机的编织动作需要根据机头的位置,主控制器利用CAN总线向机头控制器发送控制命令和控制数据,驱动机头上各执行元件。为实现电脑横机高速编织,大多数的电脑横机主控制器采用高级精简指令处理器 (advanced RISC machines, ARM)[4-5]实现,有的主控制系统为追求高速性和高效性,其控制器采用ARM、数字信号处理器 (digital signal processing, DSP)和现场可编程门阵列(field programmable gate array, FPGA)组合的架构方式[6-7],从而增加其控制系统的计算能力、通信能力和数据采集与控制能力,但该电脑横机控

制器也增加了设备的制造成本。

随电子计算机制造水平的日益进步和发展,电子计算机的数据处理和数据通信能力均高于市场上主流的DSP和ARM芯片的处理和通信能力,因此,本文提出利用电子计算机做电脑横机上位机,并利用PCI-CAN的数据通信接口直接与1台或者多台电脑横机机头控制器相连,形成“PC+节点”的网络横机控制系统。与传统单机系统相比,采用“PC+节点”网络横机控制系统可增强上位机数据的处理和通信能力,省掉主控制器的系统电路板,降低电脑横机后期的维护成本。

1 网络控制电脑横机结构

1.1 传统电脑横机控制系统结构

传统的电脑横机采用主控制器、机头控制器和人机界面的三模块结构,其结构如图1所示[1]。

主控制器主要担负电脑横机主伺服电动机、摇床伺服电动机、力矩电动机和罗拉电动机的驱动任务,管理与人机界面的485通信和与机头控制器的CAN总线通信任务,并完成横机工作状态的指示与传感器的采集任务。由于主控制器的任务繁重,处理速度快,一般都采用DSP器件或者ARM器件作为其核心处理器。人机界面主要完成花型数据的存取工作和与主控制器的交互任务。机头控制器利用FPGA完成多个元件的驱动工作,由于FPGA编程灵活,可扩展性强,适用于不同机型的驱动工作,简化了横机控制器的设计和开发工作量。

1.2 基于网络控制的电脑横机系统结构

由于CAN总线的近距传输速度快,最多支持110个节点,传输介质可为双绞线或者光纤,适合于工业自动化、工业设备、医疗设备等领域。本文研究在传统电脑横机CAN总线通信的基础上,提出利用CAN总线构成“PC+节点”的网络控制横机系统的思想。

利用CAN总线构成的“PC+节点”网络控制横机系统结构如图2所示。每台电脑横机的传感和执行元件均为网络化横机控制器的1个节点,每个结点均通过CAN总线与PC内部的PCI-CAN控制板卡直接相连,实现1台PC主机同时控制多台横机进行编织操作。

图2 网络化电脑横机控制系统结构Fig.2 Computerized flat knitter network control system

将图2所示网络控制的2台电脑横机系统等效为7个节点,节点的类型及驱动方式如表1所示。节点1和节点5分别为2台横机的电动控制器,负责接收电脑控制器发送的电动机的控制数据,并通过内部端口送出直接控制伺服电动机,使得电脑控制器通过网络对伺服电动机进行控制和调节;只要接收控制器发送的电动机控制数据,电动机便开始动作,故此节点采用事件驱动方式。节点2和节点6分别为2台横机的电磁铁和选针器控制器,电磁铁和选针器控制器只负责接收控制器的电磁铁和选针器控制数据,并利用内部的电磁铁驱动器件对各类电磁铁元件的动作驱动,采用事件驱动方式。节点3和节点7分别为2台横机的传感器节点,为保证传感器实时地采集到当前横机机头的位置信息,需要周期性地从编码器采集数据,并将数据计算、处理后发送给电脑控制器,采用周期时钟驱动方式,另外传感器节点还需要负责对突发信息进行处理,如机头极限位置和断纱警告,此时传感器节点在实时内向控制器传输警告信息,此时采用非周期事件驱动方式。节点4为电脑控制器,负责接收节点3和节点7的传感器数据信息,一旦接收到传感器数据,控制器便立即进行运算,并以最快的速度向节点1、节点2、节点5和节点6发送控制信息,为提高系统的处理速度,采用事件驱动方式。

利用CAN总线构成的“PC+节点”的横机系统具有抗干扰能力强、实时性强、节点数众多和维护方便等优点,但整个系统中信息源较多,其传输过程会占用网络通信线路的带宽,造成信息传输过程中不可避免地出现丢包、延时等现象。为解决此现象,需要对网络系统进行调度研究,分析调度算法对网络控制系统的影响,从而使分布式网络控制系统取得较为理想的控制效果。

2 调度算法

2.1 固定优先级调度算法

固定优先级调度算法是一种静态调度算法,在程序设计时按照消息的周期和截止期给每个消息安排优先级,在数据传输过程中,优先级高的消息会抢占总线,从而保证其最先传输。

固定优先级调度算法包括了比例单调算法和截止期单调算法2类,比例单调算法是按消息的周期进行设定优先级,消息周期越小,其优先级越高;截止期单调算法是按消息截止期进行设定优先级,截止期越短,优先级越高[8]。

2.2 动态优先级算法

动态优先级算法是一种随时间推移动态调整各站点优先级的算法,每个节点访问总线的权力相同,可避免高优先级的消息始终占用通信总线,保证各类消息传输的实时性。其思想为:初始化为每个节点拥有不同的优先级,若消息传输过程中没有发生冲突,则按原有的优先级进行消息传输;若传输过程发生冲突,优先级高的节点在总线竞争中会获得优先传输的权力,并把总线竞争失败的节点的优先级提高一个等级,以提高冲突发生时的数据传输的概率。若下次该节点的总线竞争仍然失败,则其传输的优先级进一步提高,从而进一步提高数据传输的概率,以动态保证低优先级节点数据传输的概率,保证数据传输的实时性[9]。

2.3 混合调度算法

电脑横机网络化控制系统的消息有周期性非实时消息、周期性实时消息、非周期实时消息和非周期非实时消息。对于电脑横机控制器而言,伺服电动机驱动消息为周期性实时消息;极限位、断纱和断针的警告消息为非周期实时消息;其他控制消息为非实时消息。对于采用网络控制的横机控制系统,CAN总线上传输的数据信息很多,采用固定优先级算法,会使得优先级低的消息经常处理等待状态,无法保证数据的传输;采用动态优先级算法,可减少低优先级消息的等待状态,提高总线的利用率,但在消息传输的优先级修改的过程中,会加重系统的资源消耗。混合调度算法是一种集固定优先级算法和动态优先级算法优点的混合算法,既可保证低优先级消息的正常传输,也可提高网络控制系统带宽的利用率[10]。混合调度算法的流程图如图3所示。

图3 混合调度算法流程图Fig.3 Hybrid scheduling algorithm flow chart

将网络消息的最高两位用于消息类型标识,最高位标识为1,说明该消息为非周期非实时消息,其优先级最高,但多台横机同时有多个同样高优先级的消息到达时,确保其最快的时间内获得消息的发送权,故此消息的调度采用动态优先级实现。网络消息的次高位为1时表示消息为周期实时消息,否则为非实时消息,对于周期性的实时消息,按照消息的固定优先级进行固定优先级调试;对于非实时消息,可根据数据消息的性质,采用固定或者动态优先级的消息调度。采用上述的混合调度算法可保证消息有实时传输和处理,避免了固定优先级和动态优先级调度方法存在的不足。

3 基于Truetime工具箱的调度仿真

为验证电脑横机数据信息调度策略的合理性,利用基于MatLab的Truetime工具箱[11]对上述的电脑横机网络化控制系统进行仿真验证。

3.1 网络化横机模型

利用Truetime工具箱的7个内核模块分别模拟2个电动机模块、2个传感器模块、2个电磁驱动器模块和1个控制器模块,1个Network模块的CSMA/AMP来模拟CAN总线网络,基于1台电脑控制器的网络化电脑横机模型如图4所示。

图4 电脑横机网络化仿真模型Fig.4 Simulation model for computerized flat knitter network

图4中CAN总线网络类型为CSMA/AMP,网络节点数为7,数据传输速率为25×104bits/s,数据大小为40字节,数据丢包率为0。电动机驱动模块负责伺服电动机控制信息的接收和电动机的驱动,接收端接收控制器模块送至的消息,伺服电动机的位置信息采集由传感器模块完成,因此在电动机驱动模块中并示向控制器的输入接口回送消息。电磁驱动器模块采用开环控制,只接收控制器的控制消息和驱动电磁阀的动作,并示向控制器回送消息。控制器输入端接收传感器送入的消息,同时对控制数据进行运算,同时还需要通过输出端接口向电动机和电磁控制器送出控制消息,任务较为繁重。为保证横机控制器消息不发生冲突,CAN总线网络需要对其各类消息进行调度,从而保证消息及时的到达,减少消息之间的冲突。

3.2 传感器的采样周期计算

假设电脑横机的最快移动速度为Vmax,电脑横机的针距为E。为保证电脑横机的正常运行和控制,即传感器需要准确地识别机头移动1枚织针的距离,根据采样定理可确定在机头移动1枚织针距离的时候,传感器需要对其进行2次采样和网络数据的传输,因此传感器的采样周期Tsample的计算式为

(1)

利用上式,对于机头最高移动速度Vmax=2 m/s,织针间距E=4.72 针/cm的电脑横机,可计算出其传感器的采样周期Tsample=0.002 1 s。

3.3 调度算法仿真与比较

由于1台控制器同时控制2台电脑横机,控制器与电脑横机的位置可能会有一定的距离,为保证CAN总线数据传输的准确性,采用250 kbps的通信波特率,分别用动态优先级调度算法和混合优先级调度算法对于图4所示的网络化电脑横机模型进行仿真,其调度算法的仿真结果如图5所示。图中当水平线条处于较高的位置,说明此节点正在向网络传输消息;当水平线条处于较低的位置,说明此节点处理空闲状态;当水平线条处于中间位置,说明此时节点发送的消息被网络上其他的消息阻隔,处于等待调度状态。

图5 采用网络控制电脑横机调度算法仿真Fig.5 Scheduling algorithm simulation for computerized flat knitter network. (a) Dynamic priority scheduling algorithm (b) Hybrid scheduling algorithm

由图5可看出,无论哪种调度算法,电动机节点(节点1和节点5)和电磁控制节点(节点2和节点6)只接收控制器的控制信号,并不向整个网络回送消息,故无消息的调度。利用动态优先级调度算法的网络系统,传感器节点(节点3和节点7)和电脑控制器节点(节点4)的信号发送需要等待较长的时间,甚至出现了信号无法送出的情况,产生了信号的死锁现象。而在混合调度算法中,整个电脑横机网络化控制系统中的各节点信号传输正常,任何节点的信号均可顺利送出,消除了网络节点信号的死锁现象,增强了系统的稳定性。

4 结束语

本文在分析传统电脑横机单机控制的基础上,提出了网络化电脑横机控制器的控制方法,即利用一台电脑控制器同时控制两台及以上的电脑横机编织动作。为验证网络化电脑横机的可行性,利用Truetime工具箱对网络化电脑横机调度方法进行建模和仿真,通过对网络化电脑横机的调度算法进行仿真对比,得出了混合调度算法可满足电脑横机控制器网络化要求的结论。

相比于传统的电脑横机控制器,基于CAN总线的网络化电脑横机具有上位机处理能力和通信能力强的特点。网络化控制器的研究为我国电脑横机控制器的研究提出新的研究方向,为电脑横机控制器向着互联网络控制方向的发展提供了切实可行的解决方案。

FZXB

[ 1] 张成俊, 张弛, 左小艳, 等. CAN总线在电脑横机上的实现 [J]. 针织工业, 2013(9): 24-27. ZHANG Chengjun, ZHANG Chi, ZUO Xiaoyan, et al. CAN bus realized on flat knitting machine [J]. Knitting Industries, 2013(9): 24-27.

[ 2] 张弛, 张成俊,吴晓光. 基于CAN总线的电脑横机机头控制器的开发 [J]. 针织工业, 2012(11): 18-21,70. ZHANG Chi, ZHANG Chengjun, WU Xiaoguang. Development of carriage controller of computer-based flat knitting machine based on CAN bus [J]. Knitting Industries, 2012(11): 18-21, 70.

[ 3] 张弛, 张成俊,吴晓光. 电脑横机控制系统数据准备 [J]. 纺织学报, 2012, 33(8): 124-129. ZHANG Chi, ZHANG Chengjun, WU Xiaoguang. Control system data of computer flat knitting machine [J]. Journal of Textile Research, 2012, 33(8): 124-129.

[ 4] 李鹏飞,贺青. 基于嵌入式系统的电脑横机上位机的设计 [J]. 针织工业, 2013(2): 20-23. LI Pengfei, HE Qing. Embedded system based on computerized flat knitting machine used upper-computer design [J]. Knitting Industries, 2013(2): 20-23.

[ 5] 莫易敏,陈彪,金昌. 基于ARM的嵌入式电脑横机控制器设计 [J]. 武汉理工大学学报, 2006(10): 121-124.

MO Yimin, CHEN Biao, JIN Chang. Design of embedded control system in computerized flat knitter based on ARM [J]. Journal of Wuhan University of Technology, 2006(10): 121-124.

[ 6] 白洪金,胡旭东. 电脑横机三级递阶控制系统结构设计 [J]. 针织工业, 2013(9): 28-30. BAI Hongjin, HU Xudong. Structure design of three-level hierarchical control system of computerized flat knitting machine [J]. Knitting Industries, 2013(9): 28-30.

[ 7] 项贤军,韩强. 基于ARM 9电脑横机数据处理的CAN通讯设计 [J]. 针织工业, 2013(7): 61-64. XIANG Xianjun, HAN Qiang. CAN communication design of data processing system of computerized flat knitting machine based on ARM9 [J]. Knitting Industries, 2013(7):61-64.

[ 8] 刘鲁源, 王晓欣,吕伟杰. CAN总线固定优先级可调度分析与设计方法及其在纯电动汽车中的应用 [J]. 制造业自动化, 2005(4): 56-59. LIU Luyuan, WANG Xiaoxin, LÜ Weijie. A schedulable analysis and design and design method for fixed priority based on can and application in electric vehicle [J]. Manufacturing Automation, 2005(4): 56-59.

[ 9] 袁远,李红信. CAN网络实时性分析及改进 [J]. 电子设计工程, 2010,18(6): 110-112. YUAN yuan, LI Hongxin. Analysis and improvement of real time in can net [J]. Electronic Design Engineering, 2010, 18(6): 110-112.

[10] 尹安东, 朱云骁, 江昊, 等. CAN总线混合调度算法在HEV控制系统中的应用 [J]. 电子测量与仪器学报, 2012, 26(1): 31-36. YIN Andong, ZHU Yunxiao, JIANG Hao, et al. Application of can bus hybrid scheduling algorithm in HEV control system [J]. Journal of Electronic Measurement and Instrument, 2012, 26(1): 31-36.

[11] CERVIN A D, HENRIKSSON D, LINCOLN B, et al. How does control timing affect performance analysis and simulation of timing using jitterbug and truetime [J]. Control Systems, IEEE, 2003, 23(3): 16 - 30.

CAN bus scheduling simulation for computerized flat knitting machine based on network control

ZHANG Chengjun, ZUO Xiaoyan, ZHANG Chi, WU Xiaoguang

(SchoolofMechanicalEngineeringandAutomation,WuhanTextileUniversity,Wuhan,Hubei430073,China)

In order to meet the development requirements of the network control of computerized flat knitting machine, a high-speed CAN bus network control system for the computerized flat knitter is proposed based on the conventional stand-alone controller, and a network control structure of the “PC+ nodes” is designed to use in the computer controller, which can control two flat knitting machines at the same time. The components of flat knitting machine, including motors, electromagnetic controllers and sensors are equivalent to the network nodes. According to the network structure of two machine's controllers, the simulation model of the network computer flat knitting machine based on CAN bus is established by TrueTime toolbox in Matlab software. Based on the model, by simulating and comparing the dynamic priority scheduling algorithm and hybrid scheduling algorithm, it concludes that the hybrid scheduling algorithm fits the computerized flat knitter network control system, which verifies the feasibility of the network controller of the computerized flat knitting machine based on CAN bus.

computerized flat knitting machine; network control system; CAN bus; scheduling algorithm

10.13475/j.fzxb.20150100606

2015-01-05

2016-04-28

国家自然科学基金项目(51175384,51305309);湖北省自然科学基金重点项目(2014CFA099)

张成俊(1979—),男,副教授,博士。主要研究方向为针织装备设计与控制。E-mail:zchengj_wuse@163.com。

TP 311; TS 132

A

猜你喜欢

横机网络化消息
一张图看5G消息
全成型织可穿电脑横机 开启智能针织装备新方向
《电脑针织横机电子选针器》行业标准通过审查
当代新闻学的网络化发展
嵌入式静电消除系统在电脑横机中的应用
南通天元:填补国内空白
基于OPC的网络化群梯管理系统开发
消息
消息
消息