探讨基于Profibus-DP的电动执行器通信模块设计与研发

发布时间:2011-03-30  点击数:2735
    国内外的新型智能变频调速装置除了具有标准的RS-485接口,还至少配有一种高速的现场总线接口,可与上级控制计算机或PLC进行通信,实现在线位置、速度等信号检测、采集与控制等,可以获得更多的诊断、维护和管理信息,而传输信息的线缆却大大减少了。
    Profibus是Siemens等公司组织开发的一种国际化的、开放的、不依赖于设备生产商的现场总线标准,是全球范围内惟一能够以标准方式广泛应用于加工制造、过程和楼宇自动化等几乎所有领域并贯穿整个过程链的现场总线。2006年11月,经中国国家标准化管理委员会审查通过,Pro-fibus转化为中华人民共和国国家标准GB/T20540-2006,至此,Profibus成为中国惟一批准的现场总线国家标准。
    不具有通用性,通信速率比较低,不适宜在运动控制器和变频调速装置中应用和推广,是目前国内开发的一些Profibus-DP从站接口的普遍缺点。为此,本文描述专为变频智能调速装置研制的具有高速Profibus-DP通信功能的通用模块,有利于我国自主研发具有Profibus通信功能的智能从站设备。
一、总体结构设计
    作为“国家863计划”重点项目“基于变频控制技术的智能电动执行器”的一部分,本文开发的高速智能通信模块使得以交流异步电动机为驱动电动机的智能电动执行器作为DP从站接入Profibus-DP通信网络,实现与PC机上主站的高速数据通信。
    电路总体硬件结构如图1所示,由功率模块、DSP控制模块、Profibus通信模块3部分组成。功率模块主回路为三菱公司的IPM智能功率模块PM15RSH120[4]。DSP控制模块以TMS320F2812微处理器为核心,还包括DSP外围电路、外部控制信号输入调理电路、测量信号调理电路、显示按键驱动电路。DSP与Profibus智能通信模块的CPU之间并行总线进行通信。
   
             图1 总体硬件结构图
二、通信模块硬件设计
    为电动驱动控制器所设计的Profibus-DP从站通信模块由高速CPU芯片、Profibus协议芯片SPC3及双口RAM等部分组成(见图2)。
    1、核心微处理器
    通信模块微处理器选用W78E516B240高性能单片机,全静态设计的CMOS8位微处理器最高达40MHz,带ISP功能的64KB Flash EPROM,这样就无需外扩EPROM,简化了外围电路,提高了系统的抗干扰能力。通过同步串行接口线外接一片串行E2PROM,用来保存用户所设置的参数、站地址、识别号、CFG报文、PRM报文、SSA报文、输入/输出数据长度等控制器的各种参数值,以避免掉电时数据丢失。电源监视芯片有硬件看门狗功能,主要完成上电复位、电源波动复位和程序出错复位等功能。

    图2 Profibus-DP高速通信模块硬件原理图

    微处理器的64KB数据存储空间通过地址锁存器、PLD器件实现的译码器分别用于:可读写静态存储器SRAM,32KB(0000H~7FFFH);SPC3控制器,1.5KB(8000H~85FFH);双口可读写存储器DPRAM,2KB(8600H~8EFFH);剩余的数据存储空间预留给从站设置拨码开关和工作状态指示灯,以增强人机交互功能。这样各芯片的寄存器就映射到数据空间中,在微处理的控制下协同工作。
    2、Profibus总线接口
    Profibus-DP协议处理芯片SPC3用于Profibus-DP从设备的智能通信,起到Profibus-DP协议处理器的作用,可独立完成全部Profibus-DP协议的通信功能,从而加速通信协议的执行,承担了部分微处理器负载,实现DP从站通信处理[3]。其内部集成有1.5KB的RAM,整个空间被分为192个段,每段长8Byte,包括方式寄存器、状态寄器存器、中断寄存器及各种缓冲器指针和缓冲区等。
    SPC3可通过配置2个输入引脚XINT/MOT和MODE与各种类型的处理器匹配。XINT/MOT表示Intel和Motorola芯片类别。通信模块CPU芯片选用了与Intel8051兼容的高性能单片机,故设置SPC3工作在Intel异步工作模式下。
    总线驱动器以及电器隔离部分的作用主要是为了减少外部Profibus总线信号对系统内部电路的干扰,在总线驱动器和SPC3控制器之间加有高速光电隔离,其最高速度可达12Mb/s,利用它可以在隔离的状态下保证系统高速可靠通信。与内部电路隔离的Profibus驱动器的供电由高效率的DC/DC变换器完成。
    3、双口RAM芯片
    通信模块和变频调速控制器之间采用1个2KB的双口RAM,实现2个微处理器之间的高速重复不需握手的数据交换[4]。双端口RAM具有2套独立的地址、数据及读写控制线,可同时分别与2个不同的CPU相连,在本模块中一套总线与通信模块的MCU相连(起始地址配置于0xA000),另一套总线通过标准并行接口与变频器DSP相连,1个2KB的RAM允许2个微处理器独立地对不同存储区寻址,只有在2个端口对同一个存储单元同时进行访问时才需要进行必要的协调控制,大多数双口RAM都提供了中断、信号量、Ready信号等手段来避免双方同时访问同一存储单元,这样可使系统传输速度和效率提高50%。
    采用该芯片,使电路设计简化,集成度高,数据交换更快速、可靠。需要指出的是,这种采用标准并行接口的设计增加了Profibus通信模块的通用性,可以通过简单扩展,将其作为RAM嵌入到大多智能仪表设备中,从而具有Profibus-DP通信的功能。这种模块化软硬件设计和扩展方式具有通用性,可以推广应用到其他总线,如DeviceNet、EtherNet等,使已开发的智能控制设备无需硬件改动和软件编程,只更换接口模块就可接入其他总线。
三、通信模块软件设计
    通信模块的主要部分及其之间的调用关系如图3所示,左侧虚线框为DPRAM软件模块,右侧虚线框为SPC3通信软件模块,中间是MCU的主循环模块,程序运行的驱动源是2个中断服务例程(ISR)。
    由于SPC3芯片集成了Profibus-DP协议,能处理Profibus-DP状态机,W78E516B240处理器只需对SPC3进行合理的配置、初始化及对各种报文的处理。其中,对SPC3的初始化非常重要,分配从站参数和从站地址设定中断事件的中断程序;根据组态数据计算输入/输出长度,辅助缓冲区分配,缓冲区初始化,设置I/O数据长度等。在从站中,除了诊断报文外,其他报文都在W78E516B240中断事件中进行处理。
  
          图3 数据交换状态下接口的程序流程图

    需对SPC3进行合理的配置、初始化及对各种报文的处理。其中,对SPC3的初始化非常重要,分配从站参数和从站地址设定中断事件的中断程序;根据组态数据计算输入/输出长度,辅助缓冲区分配,缓冲区初始化,设置I/O数据长度等。在从站中,除了诊断报文外,其他报文都在W78E516B240中断事件中进行处理。
    通信模块的初始化报文(发送、接收)固定长度49Byte;接口板与控制器之间数据交换报文(发送、接收)长度在初始化报文中设定,最大为256Byte;Profibus输入/输出数据量可自由设定,最大输入224Byte、输出224Byte。
    DPRAM驱动程序主要完成MCU和DSP之间的数据交换。为了使数据交换高效、顺利地进行,避免双方对DPRAM的读写冲突,对2KB的双端口RAM内存单元进行了合理的定义,并规定了它们的访问权限(见表1)。
    Send_Buf和Rev_Buf配合Send_H,Send_T,Rec_H,Rec_T组成了两个FIFO循环缓冲队列,其目的是缓解CPU速度的不匹配,提高数据传输效率。
    因为本系统对实时性要求严格,从响应速度和执行的效率考虑,本文采用中断方式进行输出数据和诊断数据处理。编写用户DSP程序,添加Profibus2DP接口驱动并实现对DPRAM的初始化和访问。

表1 DPRAM2KB存储空间分配表


四、Profibus-DP总线通信的实现
    通信模块制作完成后,笔者搭建了Profibus-DP单主网络环境并进行了测试。通过该模块,将变频控制器作为从站接入Profibus-DP总线,主站是安装有Profibus通信网卡CP5611的PC机,它通过屏蔽双绞线可以和多台装有此类模块的变频控制器相连。针对系统从站的配置,采用COM Profibus软件对系统进行组态,编辑相应的GSD文件,编译后下载到主站单元中。用上位机监控软件进行测试,结果表明PC机主站与从站的通信速率最高可达12Mb/s,响应时间由毫秒级缩短到微秒级。利用PC机采集到的交流异步电动机的速度信号,绘制了曲线图(见图4)。
     

    图4 上位机通过Profibus监控的电动机速度曲线
五、结论
    实验证明,本文针对交流异步电动机驱动控制器所设计的Profibus-DP从站通信模块具有很强的实用性和通用性。不仅提高了信号的传输精度、速度、可靠性和抗干扰性,而且降低了系统成本,方便安装、调试、维护及功能扩展,可广泛应用于工业控制各个领域。这将使得智能变频调速装置能快速接入西门子自动化工业网络中,实现与DP主站的高速数据通信。适应了工业控制系统向分散化、网络化和智能化发展的方向,推广了Profibus-DP应用,具有较大的实际工程意义。