APP下载

BLDCM伺服系统的RS-485通信控制与监测

2014-01-21马瑞卿张庆超

电子设计工程 2014年21期
关键词:线电压上位串口

王 伟,马瑞卿,张庆超,张 震

(西北工业大学 自动化学院,陕西 西安 710129)

无刷直流电机(BLDCM)利用电子换相代替机械换相,既有直流电动机的调速性能,又有交流电机结构简单、运行可靠、维护方便等优点,而且体积小、重量轻、效率高[1-2]。因此其在国民经济各个领域的应用日益普及,特别是在高性能交流伺服驱动领域具有广阔的应用前景[3]。适于实时控制系统的工业单片机和高速数字信号处理器(DSP)的出现使得全数字伺服控制技术不但可以简化系统结构,提高系统性能,还可为进一步采用神经网络等智能控制策略及高速网络通讯接口,实现开放式运动控制打下基础[4-5]。随着监控计算机被大量应用到工业现场,RS-485串行通信方式以其结构简单、传输距离远、抗干扰能力强、支持多主机通信、对系统硬件要求低等诸多优点,已成为广泛应用于下位控制器与上位监控计算机间的通讯方式[6]。

本文以无刷直流电动机伺服系统为对象,设计了一套基于DSP和CPLD的全数字、高精度控制器及其配套的上位机软件,控制器与上位机软件之间通过RS-485方式通信。被控对象按照上位机给定位置作动,具有良好伺服性,同时系统运行参数可上报上位机,以便实时监控和分析。

1 串口通信原理

上位机(PC机)软件采用LabVIEW编写,其通信接口采用USB2.0接口,下位机(控制器)通信接口采用RS-485总线接口,两者之间通过USB/RS-485转换器进行电平转换。RS-485数据信号采用差分传输方式,也称平衡传输,传输介质为一对双绞线。

串口通信数据内容以字符串格式进行传输,为保证数据传输的正确性,一帧数据由帧头、帧内容、帧校验、帧尾组成。帧头、帧尾是一帧数据开始和结束的标识,在自然状态下EB和90、55和AA连续出现的概率几乎为0,故一般采用EB90或55AA作为帧头或帧尾;帧校验是指对传输数据按规定算法在上下位机各进行一次校验运算,若两者运算结果一致即可保证数据传输正确;帧内容代表被传输信号的值,通信协议需对实际信号的分辨率进行定义,如不能满足分辨率要求时需扩展该信号所占字长,在上下位机接收到帧内容后,可能还需根据实际信号对帧内容所代表的数值进行适当缩放。

2 硬件电路设计

2.1 控制电路设计

2.1.1 系统供电设计

控制器的输入电源电压是270 V,需要通过DC/DC变换器将其变换为28 V电源后再变换产生±15 V、5 V、15 V等控制电。其中,±15 V用于给运算放大器、电压/电流传感器等供电,15 V用于给电机的霍尔位置传感器及驱动电路等供电;对于主控芯片所需的3.3 V、1.9 V可通过5 V变换得到,同时还设计了DSP要求的先上1.9 V再上3.3 V的上电顺序电路。

2.1.2 数字信号处理电路

数字信号处理电路由DSP和CPLD组成。DSP选用TI公司的浮点型数字信号处理器TMS320F28335,该器件精度高、成本低、功耗小、外设集成度高、数据以及程序存储量大、A/D转换更精确快速、处理速度快。用于实现闭环控制算法,发挥了DSP计算能力强的优点。CPLD采用MAX II系列新一代CPLD芯片EPM1270,该芯片集成度高、功耗小、成本低、可以同时处理多路逻辑综合和时序组合、采用硬件描述语言VHDL实现灵活设计、可靠性高。CPLD用于采集ADC输出的各参量的数据,通过数据、地址总线、内部寄存器与DSP实现高速数据传输,减轻DSP中断开销。

2.2 驱动和保护电路设计

BLDCM功率驱动电路是工作在两相导通120?三相六状态模式的桥式逆变器,拓扑结构如图1所示。T1-T6为构成三相全桥逆变器的6个功率管,用于实现无刷直流电机的换相控制,每个桥臂控制一相绕组。D1-D6为功率管的续流二极管,用于给绕组续流提供续流回路。T7是刹车开关管,R是刹车电阻、D7是刹车续流二极管,当母线电压升高时,开关管T7导通,多余能量经R释放,母线电压降低。为避免充电电流过大,上电时电流先经过R1给电容充电,电容充电后让T8导通从而旁路R1,减小回路压降。为减少系统的体积,增强系统的可靠性,方案拟采用智能功率模块IPM作为BLDCM的驱动电路,型号为PM150RL1A060。IPM兼有GTR高电流、低饱和电压和高耐压的优点,以及MOSFET(场效应晶体管)高输入阻抗、高开关频率和低驱动功率的优点,且内部集成了逻辑、控制、检测和保护电路等功能。

图1 功率电路拓扑结构图Fig.1 The power circuit topology

保护电路主要包括母线过、欠压保护、过流保护、过温保护、霍尔信号紊乱保护。当母线电压超过压保护阈值时,过压信号变为有效,刹车功率管开通,泄放多余能量,降低母线电压,过压信号无效时,刹车功率管关断,不影响母线电压;当母线电压低于欠压保护阈值时,欠压信号变为有效,系统停机保护;对母线电流和电机三相电流进行监控,当母线电流和任一相电流幅值超过保护阈值时,进行过流保护,系统停机;监测控制器和电机温度,当温度超过温度保护阈值时停机保护时监控电机的三路霍尔位置信号,当霍尔信号出现“全0”或“全1”故障时,实施停机保护。故障发生后系统及时保护并设置故障信号指示灯报警。

2.3 通信接口电路设计

通讯用收发器选择MAXIUM公司的RS-485通信低功耗收发器MAX483模块。该芯片的电磁辐射EMI极低,减小了因电缆不良匹配所造成的反射,在高达250kbps的数据速率下可进行无差错数据传输。DSP与MAX483的接口采用串行通信接口SCI,其外部引脚有三个,发送引脚SCITXD、接收引脚SCIRXD、控制端GPIO口,分别对应RS-485收发器的发送输入端DI、接收输出端RO和发送使能端DE。SCI的接收和发送均为双缓冲,且有独立的使能中断位,数据的发送和接收过程通过中断方式或查询方式实现。

3 软件程序设计

3.1 控制器程序设计

3.1.1 DSP程序设计

DSP控制程序采用C语言编写,开发环境采用TI公司DSP系列芯片专用集成开发环境CCS3.3。DSP控制程序由主程序及中断服务子程序组成,中断程序包括主中断程序和串口中断程序。主程序执行DSP初始化程序和系统自检,并等待接收上位机的给定指令。主中断程序主要用于完成双闭环控制算法,速度环采用PI算法、电流环采用P算法。串口中断程序的主要作用是接收上位机的给定指令,下位机控制电机按照给定指令作动并向上位机以5ms的定时反馈系统运行参数。

图2 接收和发送一帧数据流程图Fig.2 Flow diagram of receiving and sending a frame

下位机串口通信由主控芯片TMS320F28335的SCI模块实现,该模块具有以下特点:1~8位数据全双工方式;偶数、奇数或无奇偶校验选择;一或两个停止位;16字深先进先出FIFO (First-In-First-Out) 发送数据缓冲器和接收数据缓冲器;独立的发送和接收中断。图2所示为接收和发送一帧数据的流程图。判断数据接收程序数据帧错误须符合以下原则:数据帧格式不正确;有一个字节奇偶校验错误;数据帧校验码不正确。

3.1.2 CPLD程序设计

CPLD的开发设计采用硬件描述语言VHDL,开发环境采用Altera公司的Quartus II 9.2。CPLD将PWM信号、电机霍尔位置传感器信号、正/反转信号、故障状态信号通过组合逻辑产生驱动逆变功率管开通关断的6路斩波换相信号;通过I/O读取保护电路输出,进行故障保护,故障保护信号都经过延时、滤波,滤除高频毛刺干扰,确保识别真实的故障保护信号,消除误动作;CPLD与DSP之间设计并行通信接口,CPLD通过地址线和数据线作为DSP的外设被访问,用以快速提取读入CPLD的位移、电流等反馈信号数据。

3.2 上位机软件程序设计

上位机软件在 LabVIEW (Laboratory Virtual instrument Engineering Workbench)2010开发环境进行设计,LabVIEW是一种图形化的编程语言,它集成了满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能,被视为一个标准的数据采集和仪器控制软件。

3.2.1 串口配置程序

利用LabVIEW自带的VISA函数模块,实现串口通讯硬件接口与软件的连接,这就要求VISA的配置必须与下位机SCI的配置完全一致,主要包括串口选择、数据长度、奇偶检验选择、停止位长度、波特率等。

3.2.2 数据打包和发送程序

数据发送程序比较简单,只需采用VISA写函数输入要发送的ASCII字符串即可。因此,对于给定指令为位移等数字量时需要对其按照通信协议进行数据打包转换为字符串数据包。

图3 给定位移数据打包程序Fig.3 Data package program of given displacement

如图3所示的是按照通信协议对给定位移数据打包程序,对给定位移处理为字符串后增加帧头、帧尾、检验和后形成一个字符串数据帧。

3.2.3 数据接收和解包程序

上位机通过VISA读函数接收反馈数据。为获得传输信号的值,需对接收的字符串数据帧进行解包,如图4所示的反馈数据的解包程序。

图4 反馈数据解包程序Fig.4 Feedback data deconstructed program

由图可知,只有接收的数据帧的数据长度、帧头、帧尾、检验和与协议中定义的完全相同时才表示正确接收到一帧数据,再对该帧数据按照协议依次解码为位移、电流、故障信号等内容从而实时显示和监控系统运行参数。

3.2.4 数据存储和制表程序

为方便分析和查看测试数据,上位机具有存储实验数据并将其制成XLS文件的功能。本软件选择了高速数据流文件TDMS来存储数据,其读写文件速度快、接口属性定义简单,只需要对数据名称、存储路径等属性进行设置。

数据制表功能即将本测试周期的给定指令和反馈数据保存至Excel文件,并将其置于指定存储路径下,制表结束后有指示灯提示制表完成,可将TDMS文件中存储的数据按照编辑好的Excel模板依次放置以形成实验报表。

4 实验结果

打开上位机软件,输入正确的用户名和密码后使能软件,选择串口和数据存储路径后,按下“系统自检”按钮,对系统进行自检测。设置并确定给定阶梯波位移指令后按下“电机调零”和“设定初始位置”按钮,以校正电机初始位置。按下“发送给定位移”按钮并开始伺服系统实验。上位机通过串口将给定位移及其对应时刻的指令打包后发送至下位机,下位机通过闭环控制程序控制电机作动到给定位移处,在作动过程中一旦控制系统发生故障,控制电路进行硬件保护,并将故障信号反馈至上位机报警并调用报警声音,从而达到实时监控系统的目的。

下位机控制器将采集到的位移、母线电流和三相电流、母线电压等运行参数反馈至上位机实现监控、分析伺服性能和其他运行性能。图5所示的是上位机反馈参数显示界面,图中较平滑的曲线为给定位移指令曲线,另一条为BLDCM的实际位移曲线,图6所示的是控制系统运行后示波器观测所得的部分位移曲线。

图6 观测的部分位移曲线Fig.6 Part of displacement curve

经实验验证,电机的实际作动位置按照上位机的给定位移变化,系统实现了对上位机给定指令良好的跟随性;同时,电机在作动过程中位移具有较小的超调量,如图7所示的是电机的正向作动和反向作动的位移曲线,这是由于控制器进行了较好的PID参数整定并严格的进行了电流限幅保证了电机的平滑作动。

实验结束后将实验数据进行制表并形成的测试报告,如图8所示。由结果可以看出该方法可准确的对电机作动位置进行远程控制,并可对电机温度、实际位移等系统参数进行了采集和显示,同时对系统实时监控,一旦发生故障及时保护并报警,保证系统安全可靠的运行。

图7 电机正向作动和反向作动位移曲线Fig.7 Displacement curve of forward and reverse actuation

图8 数据制表后形成的报告Fig.8 Report after data tabulate

5 结束语

文中设计和实现了一套BLDCM全数字伺服控制器及其上位机控制软件,并采用RS-485串口通信方式实现了总线控制与监控。系统的响应速度快、控制精度高、保护功能全,伺服性能好,并具有较好的实时可监控性。系统已成功运用于某型电力作动系统中,经实验验证可以稳定、可靠的运行,应用效果良好。

[1]汤蕴璮,史乃.电机学[M].2版.北京:机械工业出版社,2005:344-353.

[2]李钟明,刘卫国.稀土永磁电机[M].北京:国防工业出版社,1999:40-48.

[3]李凡.基于FPGA的全数字无刷直流电机控制系统研究[D].重庆:重庆大学,2010.

[4]郭鹏.基于DSP的全数字无刷直流电机控制器的设计与研究[D].西安:西北工业大学,2004.

[5]张东亮,常宏敏,田新诚,等.无刷直流伺服电机的DSP全数字控制系统研究[J].山东大学学报:工学版,2002,32(5):485-489.ZHANG Dong-liang,CHANG Hong-min,TIAN Xin-cheng,et al.Research on vrushless DC motor digital control system based on DSP[D].Journal of Shandong University:Engineering and Technology Edition,2002,32(10):485-489.

[6]朱耀春,白焰.RS485总线通信双机监控程序的设计及应用[J].工业控制计算机,2006,19(8):14-16.ZHU Yao-chun,BAI Yan.Design and Application of RS485 bus communication and monitor program between machines[J].The Industrial Control Computer,2006,19(8):14-1.

猜你喜欢

线电压上位串口
浅谈AB PLC串口跟RFID传感器的通讯应用
某110 kV变电站装设低压电抗器的可行性研究
关于《三相交流电源》章节的教学探析
基于开关表的直流微电网控制及其仿真
特斯拉 风云之老阿姨上位
风电汇集站无功控制策略研究
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索