1 引言
随着微电子技术、计算机技术、自动控制和精密测量技术的不断发展和迅速应用,在制造业中,数控技术和数控机床不断更新换代,正向着高速度、多功能、智能化、开放型以及高可靠性等方面迅速发展。数控机床的生产量和数控技术的应用已成为衡量一个国家工业化程度和技术水平的重要标志。
开放式、网络化数控系统已成为当前数控技术发展的主要趋势。CAN总线适用于数据交换简短而频繁的场合,是解决工业控制设备之间数据通信的有效方式,可以方便有效地构成分布式实时过程检测与控制系统。由于基于CAN总线的数据通信具有高可靠性、实时性和灵活性等特点,特别适合于工业现场自动化设备的互连,在汽车工业等领域得到了广泛的应用。CAN总线标准也是现场总线的国际标准之一(ISO11898)。
本文针对一个需要上位机与下位机进行现场通信的数字控制系统,根据数据量和通信速率的要求,采用基于CAN总线作为通信平台。整个系统能够在4ms的控制周期内,完成对7个伺服轴和一个主轴的位置和速度控制,系统性能达到了预期的目标。
2 数控机床的组成
数控机床一般由输入输出设备、CNC装置(或称CNC单元)、伺服单元、驱动装置(或称执行机构)、可编程控制器PLC及电气控制装置、辅助装置、机床本体及其测量装置组成。图1是数控机床组成框图,其中除机床本体之外的部分统称为计算机数控(CNC)系统。
开放式数控系统的关键技术是建立开放的数控体系结构,并确定开放式的标准。在结构上向趋于裁剪、扩展和升级的方向发展;形式上向可灵活组成不同档次、不同类型的方向进行迈进。
3 系统设计
3.1 硬件平台设计
根据开放式数控系统的可裁减要求,数控系统最大控制能力为七轴五联动。具体的控制量为:外接数字IO数量不少于340个,其中输入不少于200个,输出不少于140个,不少于80个继电器输出,并且有不少于40个继电器输出指示灯。
本系统要求能够控制七个伺服轴和一个主轴,设置控制周期为4ms,因此要在4ms的控制周期内完成对8个轴的控制,其中每个轴的控制字为4字节,再加上本系统设计时所使用的外接数字IO为360个,则控制字需要360/8=45个字节,因此通讯速度至少为(4*8+45)/0.004=19.25Kb/s。在通信距离不超过40m时,can总线数据传输速率可高达1Mb/s,我们系统设计所要求的最大传输距离为30m,因此完全可以满足要求。为了增强通讯的可靠性,使用双CAN通信,其中第2路can总线作为系统的冗余。
如果把上位机(PC104+CAN通信卡)和下位机(PC104+位控卡+IO卡)插在一起或叠在一起,会限制数控系统结构安装的灵活性。另外,如果上位机和下位机拥挤安置在操作盒内,不利于散热;而且运动控制板卡也安装在操作盒内,接口线缆密集,不利于拆装。在此,希望设计一种通讯结构能够使上位机和下位机分开安装,而且两者之间以较少的通讯线连接进行长距离通讯,所以此处考虑到采用CAN总线的串行通信方式。图2为CAN总线的开放式数控系统架构。
nextpage
图中,上位机系统为思泰基公司的SB610(PC104)主板,外加2路can总线(用SJA1000+82C250)构成,采取内存影射方式读写数据,经can总线将数据传送给下位机。上位机由于外接开关电源不便以及考虑干扰,电源需要从下位机引入24V电源,经24/5V电源模块输出供电。
上位机的机箱根据整个系统的需求,采用外壳为散热片的铝壳机箱,前面面板有LCD窗口,以及其他拨码开关等,控制面板镶嵌在前面板中。后面板有电源(24VDC)输入,usb输入口、CAN总线通讯口、键鼠接口、CRT接口(调试需求)和网络接口(考虑升级需求)、手摇脉冲接口等。
下位机系统是由母板、1块CPU板(PC104+2路CAN总线)、2块位控卡、3块IO卡构成。CPU板、位控卡、IO卡用双排96针欧式插座(针)成直角插接在母板(孔)上。本系统设计的输入点为216个,输出点为144个,满足系统I/O要求。
3.2 CAN通信链路设计
CAN数据帧的标准格式如下:
其中,我们只需要设置仲裁段、控制段和数据段。仲裁段用来设置不同类型帧的优先级;控制段由6个位构成,用来显示数据段使用的字节数;数据段可包含0~8个字节的数据。
CAN通过“无损的逐位仲裁”方法来使有最高优先权的报文优先发送。在CAN总线上发送的每一条报文都具有唯一的一个29位数字的ID。CAN总线状态取决于二进制0而不是1,所以ID号越小,则报文拥有越高的优先权。本通信系统共设置8个优先级,CNC系统与主轴之间交换的数据设置为最高优先级,即将其数据帧的仲裁段设置为全0。CNC系统与七个伺服轴之间交换的数据的优先级被分别依次设置为优先级1~7。
本通信系统所传送的每一帧数据段只用了8字节其中的3字节,后5字节保留未用,其中,第一字节表示当前数据帧的类型,接下来的2个字节是本数据帧需要传输的数据。具体设置如下:
(1)CNC系统要向伺服驱动器发送的信息主要包括控制信号和位置/速度增量。当数据类型为001时,对应的数据内容为对伺服驱动器的控制信号。该信号在下述3种情况下发送:开机(或重启动)初始化完成时;当CNC系统要改变对伺服驱动器的控制时;发生报警时。
当数据类型为002时,对应的数据内容为实时控制伺服运动的位置/速度增量值,2字节16位带符号数表示范围是±32767个增量单位。本数据帧CNC系统每个控制周期向伺服驱动器发送一次。
(2)伺服驱动器需要向CNC系统发送的数据信息主要包括状态信号和实际(编码器)的位置/速度增量以及其他伺服数据。
当数据类型为001时,对应的数据内容为伺服状态信号。该信号在以下几种情况下发送:当CNC系统请求获得伺服状态信号而此时又没有位置回复帧时;当伺服驱动器出现报警时;在CNC位置广播后的位置回复帧中。
当数据类型为002时,对应的数据内容为伺服驱动器反馈的实际位置/速度增量值,2字节16位带符号数表示范围是±32767个增量单位。本数据帧CNC系统每个控制周期向伺服驱动器发送一次。
4 基于CAN总线的数控系统的控制性能
通常,数控系统所工作的工业现场环境比较复杂,所以在实际应用中对CAN总线数据传输可靠性的要求比较高。在CAN总线的实际应用中,时钟同步机制在提高系统可靠性方面发挥着十分重要的作用。
表1总结了两种比较常用的有效的CAN总线时钟同步方法的主要特点。如下,
通过比较这两种同步方法的各项性能指标,本文采用的同步方法为OCS-CAN(orthogonalclocksubsystemforCAN)。特别的,该时钟同步方法在容错性方面有许多优点,容错性的提高将大大提高系统数据传输的可靠性。
该方法在容错性方面主要基于以下三点:首先,限制各节点的错误语义转化为突发错误语义。这点是可以做到的,例如,采用[3]中提到的重复比较方法。第二,采用主站冗余机制。OCS-CAN定义了大量的备用主站,可以随时替换出错的主站。
第三,进行模块检测[4]来正式核实容错机制的正确性。该正式核实考虑到大量的错误模型,包括可能出现的信息矛盾。试验证明,该方法不仅可以提高系统数据传输的精度和可靠性,而且可以将成本控制在一个合理的水平,是一种经济有效的CAN时钟同步方法。
5 结论
基于CAN总线的数控机床网络解决了局域网型数控机床的缺点,结构简单、实时性好、可靠性高、通信距离长、连接设备多。
本文的设计结果表明,对一个控制量多、实时性要求严格的数字控制系统,基于CAN总线的通信完全能够满足要求。本文作者创新点:利用CAN总线构成了一个全闭环的开放式数控系统,并且本数控系统的最大控制能力为能够控制七个伺服轴和一个主轴。