APP下载

基于RTDX的图形化电机控制系统研究

2011-07-10贾雯杰魏雨辰

制造业自动化 2011年15期
关键词:正弦波图形化直流电机

贾雯杰,汪 毅,魏雨辰

(中国矿业大学 信息与电气工程学院,徐州 221116)

0 引言

TMS320F2812是美国德州仪器 (Texas Instrument,TI)公司推出的面向交流电机调速、电力电子设备控制的新一代DSP控制器。通常对TI DSP开发是采用软件 CCS(Code Compose Studio)使用 C或者汇编语言,但是在使用复杂的控制策略时和控制算法时,编程的复杂程度较大,代码效率不高,使控制效果不理想。这就需要一种新的程序设计和调试方法。文中通过建立正弦波发生器的硬件仿真模型,在DSP F2812的仿真器中进行了实时的在线仿真,从而说明了RTDX在DSP图形化开发中的用法及功能,并在此基础建立了图形化的直流电机的闭环速度控制系统,有效的解决了上述问题。

1 基于DSP的电机控制系统硬件设计(硬件实验平台)

如图1所示,数字控制器采用DSP F2812芯片作为主控制器,硬件上由CPU、存储器、数字I/O、PWM模块和A/D模块组成。A/D模块对电枢绕组电流进行采样;PWM模块产生6路PWM信号;数字I/O口有6路信号输出,其中2路用作限幅多路切换器的不导通相选择,2路用作程控放大比较器的放大倍数选择,2路用作换相信号输出使能。数字I/O口还有2路信号输入,是程控放大比较器给数字控制器的换相信号。转速计算模块根据换相信号计算出电机的转速值;速度控制模块根据调速要求计算输出PWM的占空比;换相控制模块根据换相信号的电平跳变,进行相应的换相。

图1 电机控制系统结构及硬件图

2 MATLAB Link for CCS 及RTDX原理

MathWorks公司和TI公司联合开发了Matlab Link for CCS Development Tools(CCSLink)和Embedded Target for the TI DSP Platform,CCSLink提供了Matlab 和 CCS 的联接口,能把 Matlab 和CCS 及目标DSP硬件连接起来。利用CCSLink可以像操作Matlab变量一样来操作DSP 的存储器或寄存器。而CCSLink与ET TIC2000的配合使用,可直接通过Matlab中的Simulink模型生成DSP的可执行代码,可以在集成统一的Matlab环境下完成DSP的整个开发过程[3,4],如图2所示。

图2 Matlab、CCS硬件的联接

图3 RTDX的原理图

RTDX 在主机与目标系统数据交换时,利用的是DSP内部仿真逻辑和JTAG 接口,它不占用DSP 的I/O 资源,对DSP 系统资源影响很小,使数据传送可以在不停止应用程序的背景下运行。在目标系统上,应用程序的数据通过RTDX 的用户库接口和通讯接口,再经过JTAG接口发送到主机调试器,存入文件。由于主机调试器支持客户端,因此任何OLE Automation Client(VB、VC++等)都可以访问和显示文件内的数据。主机向目标系统发送数据时,数据首先从OLE Automation Client 发送到调试器,接收到数据后,调试器再对数据进行缓存,只有当接收到目标系统上应用程序发送的读数据请求时,数据才能通过JTAG 接口被发送到目标系统的通信接口,然后再发送到用户库接口,最后传给应用程序[5]。

3 基于RTDX的正弦波发生器图形化设计

3.1 建立基于RTDX的正弦波发生器Simulink模型

RTDX的模型不同于一般模型,要用到两个特殊的模块From RTDX 和 To RTDX ,分别放置在需要调节的参数的输入端和模型的输出端,用来建立RTDX通道实现数据传输,建立如图4所示的Simulink模型。

图4 RTDX正弦波发生器模型

3.2 直接代码生成

设置CCS Setup中仿真器型号,保持与模型窗口中F2812 ezdsp中的DSPBoardLabel型号相同。然后在Simulink窗口中选择Simulation下拉菜单中的Configuration Parameters选项,弹出对话框。保持默认设置不变,点击Generate Code,使Simulink模型自动生成CCS IDE的工程文件,并且自动调入CCS IDE中,则该工程文件就能在CCS IDE中编译下载运行[5,6]。

3.3 实时在线仿真

地址分配,在CCS中进行编译好,下载到硬件仿真器中。接着在MATLAB的模型中点击Build/Reload & Run 模型框,此时代码自动在硬件仿真器中运行,同时弹出GUI的波形显示窗口,显示出代码所描述的正弦波。可以在波形显示窗口中实时的在线更改频率(Frequency)及幅值(Amplitude),而不用终止运行中的程序。只需在波形窗口中更改频率或幅值,然后点击应用(Apply)即可完成实时在线更改数据。如图5所示。

3.4 结果

通过正弦波发生器的实时在线更改频率或幅值,可以很清晰的看到RTDX在DSP程序设计中的作用,让DSP的开发变得更方便,更快捷,同时也证实了RTDX技术的实时性。

图5 实时正弦曲线

4 直流电机的图形化闭环速度控制系统建立

利用上述建立RTDX正弦波发生器的方法,采用F2812硬件实验平台和MATLAB中的DMC库模块构建一个图形化直流电机的闭环速度控制系统,如图6所示。

1)调整模型中的电机轴角编码器分辨率参数,以符合硬件的要求;

图6 直流电机的图形化闭环速度控制系统

2)点击“Build/Reload & Run”,在CCS中生成加载和运行控制DSP的代码。该设置参数通过RTDX被送到运行在DSP上的控制器,该控制器不断的调整驱动电机的PWM波的占空比,以便达到预期的速度要求。电机负载的变化将会导致PWM波形占空比的变化,电机的速度和PWM波形的占空比值通过RTDX被送到主机上,通过MATLAB运行仿真。

5 结论

本文通过Matlab与CCS的图形化模式开发数字信号处理器,实现了RTDX在DSP中实时产生正弦波,并能够实时更改数据而不影响程序的运行;在此基础上建立了图形化直流电机的闭环速度控制系统。从而证实了RTDX是一种非常理想的实时数据传输技术,为软件的调试提供了一种新的方法,也为DSP 开发人员发现程序错误和监测系统运行状况提供了实时的、直观的表示形式。另外,RTDX技术不仅可以用在软件调试过程中,而且可用于医疗监测、工业控制等领域,基于图形化模式的RTDX技术在DSP开发电机控制系统中必将有着广泛的应用。

[1] How to Write an RTDX Host Application Using MATLAB[Z].Texas Instruments,2000.

[2] 段国强,陈月云.Matlab辅助DSP设计的研究与实现[J].微计算机信息,2007(20):130-132.

[3] 冷斌,李学勇,刘建华.一种基于Matlab的DSP调试及直接代码生成方法[J].现代电子技术,2008(20):68-75.

[4] Matlab Help Link for Code Composer Studio[Z].

[5] 李彬.基于DSP/BIOS的RTDX实时信号处理系统的实现[J].科技信息(学术研究),2008(36):227.

[6] 李真芳,苏涛,黄小宇.DSP 程序开发—Matlab调试及直接目标代码生成[M].西安:西安电子科技大学出版社,2003.

猜你喜欢

正弦波图形化直流电机
基于模糊PID的无刷直流电机速度控制系统的设计与仿真
基于模糊自适应ADRC的无刷直流电机控制技术
基于Arduino图形化编程的教学应用研究
单相正弦波变频电源设计与实现
采用BC5016S的纯正弦波逆变器设计及制作
LKJ自动化测试系统图形化技术研究
基于FPGA的双绕组无刷直流电机软件设计
基于STM32的风力摆控制系统的设计
直流电机电源设计研究
网络图形化界面在高速公路机电设施养护管理系统中的应用