1系统硬件设计
重量控制系统在整个卷接机组中具有重要作用,它从功能上主要分为三个部分:重量控制、紧头跟踪、剔除采样。重量控制系统的组成包括:核扫描器电源板、系统电源板、输入输出接口板、继电器板、DSP处理器板、SPC3总线通讯板。系统的内部组成结构框图如图1所示。重量控制单元在整个卷接机组中的结构如图2所示。由图1可以看出,该系统的接口比较简单,但是系统的运算量很大,涉及核扫描器模型、劈刀电机控制模型、紧头电机控制模型、烟丝分布模型等,同时又要进行大量生产数据的统计计算。因此系统设计时,采用了双处理器结构,一个处理器是数字信号处理器TMS320C32,主要完成烟支重量的计算、烟丝曲线的生成、紧头位置的计算、劈刀电机的控制、紧头电机的控制、故障烟支的判断和剔除,另一个处理器是AT89C52单片机,主要完成与上位机之间的数据接收和发送以及通讯协议的建立。数字信号处理器TMS320C32是美国德州仪器公司生产的第三代浮点数字信号处理器,TMS320C32在结构上包括可变宽度的存储器接口、更快速的指令周期时间、可设置优先级的双通道DMA处理器、灵活的引导程序装入方式、可重新定位的中断向量表以及可选的边缘或电平触发中断方式等。特别是其增强的外部存储器接口,使得对外部数据的操作更加方便,存储器接口电路的设计也更为灵活。TMS320C32数字信号最高时钟频率可达到60MHz,指令运行速度达到60mflops(百万次浮点运算每秒),完全能够满足烟支重量控制系统的需要,而且该处理器供货稳定,价格便宜,所以在本系统设计时,从性价比与实用角度选用该处理器作为重量控制系统的核心处理器。重量控制系统硬件电路的设计以DSP信号处理器TMS320C32、CPLDM4A5、单片机AT89C52和SPC3智能通讯芯片为核心。主要功能是完成高速烟支重量实时在线检测、控制。同时利用Profibus-DP总线通讯电路实现重量控制系统从站与人机界面主站之间的数据交换,一方面将重量控制系统所需参数发送到重量控制系统中,另一方面将现场生产的有关数据送入工控机人机界面进行显示,以便于车间操作人员随时掌握机器设备的运行状况,并及时发现和处理问题。
2系统软件设计
软件部分是本系统的设计核心,它是烟支重量控制系统设计成功的关键。根据系统软件开发的要求,软件部分整体上分为重量控制程序即TMS320C32处理器的编程和Profibus-DP从站通讯软件的编程两个部分;TMS320C32处理器的编程利用TI公司的集成开发环境CCSIDE进行设计,通讯从站AT89C52软件的编程利用KeilSofeware公司的51系列单片机C语言软件开发环境KeilC51。为提高程序的可读性,便于软件调试和编写,软件设计要求尽量模块化。TMS320C32处理器程序主要包括:主循环程序模块、中断服务子程序模块、各类不合格烟支检测程序模块和通讯模块。Profibus-DP从站通讯程序主要包括:与主站的通讯模块、与TMS320C32处理器的通讯模块。2.1主程序流程本系统为实时在线检测系统,在正常生产8000支/分的情况下,单支烟的检测时间(包括采样和计算)为7.5ms。中断信号为增量脉冲,周期内对单支烟采样128次,每次中断间隔58.6ns。系统对烟支重量信号的采样具有较高的实时性,因此烟支信号的采样采用中断方式,中断信号为各检测采样时钟的上升沿;由于烟支重量控制(包括计算、判断)程序在中断周期内无法正常完成,因此烟支重量控制模块在主程序中完成;故障烟支的移位、剔除要求能够精确的调整位置,保证能够准确的剔除各种故障烟支,因此放入中断子程序中完成。重量控制系统与上位机通讯的实时性要求不高,Profibus-DP主站大概1s左右与从站通讯一次,发送人机界面设定的各种控制参数,TMS320C32处理器与从站之间的数据交换通过双口RAMIDT7130完成,在需要时读数据到内部寄存器中,因此通讯部分的实现在主程序中完成。2.2重量控制程序设计重量控制程序采用模块化设计。主要包括重量控制程序模块、中断服务子程序模块和通讯模块等。1)主程序主要对系统进行初始化,完成烟支的重量计算和与从站的数据通讯。初始化内容包括处理器内部I/O口的分配;各种中断的设置;内部RAM变量的初始赋值;重量控制程序模块主要完成烟支重量的计算和故障烟支的判断等。通讯程序模块主要完成与从站的数据交换。主程序流程图如图3所示。2)重量控制程序模块为实现烟支重量计算控制单元的核心部分。烟支重量计算和故障烟支的判断方法如前重量控制原理所述,在人机界面上设有开关参数控制其运行状态,并有超重门限、偏轻门限等参数设置,以方便操作人员进行现场调试工作。重量控制计算程序流程如图4所示。在烟条采样周期内,重量控制系统在增量脉冲的上升沿对烟支重量信号进行采样,启动A/D变换,经计算处理后得到单支烟的内部计算重量,再根据人机界面设定的超重、偏轻门限,判断烟支是否合格,并输出重量故障烟支剔除信号。3)数据通讯模块主要功能是完成TMS320C32处理器与Profibus-DP从站之间数据交换,以便通过人机界面对现场生产进行监控。它是通过对双口RAMIDT7130实现资源共享的,TMS320C32处理器把现场采集的生产数据存储到双口RAM中,通过DP从站发送到主站,在人机界面上显示。程序计算、判断所需要的各种参数可以通过Profibus-DP从站写入双口RAM中,供TMS320C32处理器程序运行使用,从而实现双方的数据交换和传输。通讯程序流程图如图5所示。4)中断服务子程序模块采用硬件中断,中断信号在增量脉冲信号的上升沿触发,同时快速启动A/D转换读取单支烟的重量信号特征值,并存储到相应的寄存器单元。中断服务子程序还包括故障烟支移位、剔除程序,用软件实现这些功能比较简单、方便,移位步距的设置和剔除脉宽的调整均可通过人机界面来实现。这样做即可以充分利用微处理器的系统资源,又可以减少外围硬件电路设计,提高系统的可靠性。重量控制中断服务子程序流程图如图6所示。2.3Profibus-DP总线通讯程序设计重量控制系统包括一个DP从站。从站设计采用Profibus-DP智能通讯协议芯片SPC3,处理器采用单片机AT89C52。SPC3协议转换芯片集成了完整的Profibus-DP协议,能够处理Profibus-DP状态机,单片机AT89C52只需要对SPC3进行必要的初始化,就能够实现与主站通讯。单片机AT89C52不用参与处理Profibus-DP状态机,它的作用主要是实现智能终端与协议识别,对SPC3芯片内部RAM进行读写,同时完成对下位机双口RAMIDT7130的读写控制,保证数据发送的安全可靠,避免由于硬件冲突造成数据通讯错误。单片机AT89C52程序设计如图7所示。首先对单片机系统资源(包括双口RAMIDT7130和SPC3协议转换芯片)的初始化;主循环部分完成对双口RAM的读写,并与下位机进行数据交换,对SPC3协议转换芯片进行操作控制,接收和发送DP主站数据,实现DP总线通讯;两个中断服务程序模块则完成对SPC3协议转换芯片和双口RAMIDT7130的中断处理。总线通讯电路软件的主要模块及其相互间的调用关系如图7所示,左侧虚线框内是与双口RAM有关的程序模块,右侧虚线框是与SPC3有关的通讯程序模块,中间部分是单片机AT89C52的主循环程序模块。
3结束语
基于Profibus-DP总线技术的烟支重量控制系统,经过实验室模拟调试和现场实物开车调试后,各项控制功能工作正常。经验收测试,该系统各项指标符合设计初衷。现已装备全国很多烟厂,实践证明烟支重量控制系统工作稳定、可靠,烟支重量控制效果良好。
作者:张义波 单位:中航工业洛阳电光设备研究所