MATLAB-DSP在无传感器矢量控制中的应用在无传感器矢量控制中的应用
本文介绍了一种采用 MATLAB及 CCS对异步电机无速度传感器交流调速系统进行调试的方法。应用 MATLAB
语言强大的分析能力和绘图功能,与 DSP高速运算的优势相结合,在自行搭建的无传感器矢量控制系统平台进
行了调速实验
摘要
:
本文介绍了一种采用
1.引言引言
Matlab是一个强大的分析、计算和可视化工具,特别适用于控制系统的分析和模拟,但由于其依赖的平台是计算机及其
CPU,因而由于 CPU系统功耗的原因,使得 MATLAB程序的执行速度相对于高速信号的输入/输出显得很慢,远不能满足实时
信号处理的要求,而 DSP就其软件的编程能力而言,与单片机及计算机的 CPU的编程设计方法有类似之处,但 DSP比单片机
的运算速度快得多,又比 CPU 的功耗及设计复杂度低得多,但是其分析和可视化能力远不及 Matlab,开发过程比较复杂。不
过,目前有一种新的技术,可以将 DSP和 Matlab两者密切结合起来,充分利用两者的特长,有力的促进控制系统的实现。
伺服驱动装置是印刷机无轴传动[3]控制系统中重要的组成部分,国内大部分产品是采用带速度传感器的专用变频器调
速,控制精度不高 [4],而国外的产品价格又非常昂贵,由此,本文自行开发了一套基于 PI调节器的无速度传感器矢量控制系
统,并且在自行搭建的实验平台进行了调速实验,在实验过程中,运用了 Matlab与 DSP混合编程的调试方法,实验结果表
明,采用 Matlab调试及直接目标代码生成的方法能避免传统计算机模拟的复杂编程过程,减少了工作量,有助于提高系统的
综合效率 , 且能够保持系统良好的动静态调速控制性能,很好地满足了印刷机无轴传动控制系统的要求。
2.无速度传感器矢量控制系统介绍无速度传感器矢量控制系统介绍
由于采用高性能的矢量控制方法且缺省了速度传感器,那么如何准确的获取转速信息,且保持伺服系统较高的控制精度,
满足实时控制的要求,也就成为本课题研究的重要方向。在这里我们采用 PI自适应控制方法 ,利用在同步轴系中 q轴电流的
误差信号实现对电机速度的估算 ,整体结构如图 1所示。角速度给定值 ω*与推算角速度反馈值 ω的误差送入速度调节器,速
度调节器的输出即为电磁转矩的给定值 Te*,由 iq1 = LrTe/PmLmФd2可以计算出电流的 q轴分量给定值 iq1*,当 q轴电流没
达到设定值时,可由 Rs产生的 q轴电压和 ω1σLs产生的 d轴电压来调节。因此,iq1*与定子电流 q轴分量的实际值 iq1的误差
信号送入 PI调节器调节器的输出 uq1’为定子电流 q轴分量误差引起定子电压 q轴分量的调节量。
其中速度推算模块以不含有真实转速的转子磁链方程以及坐标变换方程作为参考模型,以含有待辨识转速的 PI自适应律
为可调模型,以定子电流转矩分量作为比较输出量,采用比例积分自适应律进行速度估计,经过 PI调节后,输出量就是待求
的电机转速。这种方法计算量小,结构简单,容易实现。
3. Matlab与与 DSP混合编程的调试方法混合编程的调试方法
在传统的开发过程中,总是先用 MATLAB进行仿真。当仿真结果满意时再把算法修改成 C/C++语言,再在硬件的 DSP目
标板上实现。发现偏差,需要再用 Matlab对算法进行修正,再在 DSP上编写修正的算法程序。如此过程反复进行,在 DSP的
开发工具、 Matlab工作空间之间来回多次切换,非常不便,当系统比较复杂时,还需要分步验证各个中间结果和最终结果。
如果能够把 Matlab和 DSP集成开发环境 CCS及目标 DSP连接起来,利用 Matlab的分析能力来调试 DSP代码,那么操作 TI
DSP的存储器或者寄存器就可以像操作 Matlab变量一样简单。工具包 Matlab Link for CCS Development Tools的使用,可以
使上述问题迎刃而解,利用此工具箱,在 Matlab环境下,就可以完成对 CCS的操作,即整个目标 DSP对于 Matlab像透明的
一样,所有操作只利用 Matlab命令和对象来实现,简单、方便、快捷。以下用调试上述无速度传感器矢量控制系统的例子来
说明 Matlab-DSP集成开发环境在控制系统中的应用。在 Matlab命令窗口中输入 Simulink,打开 Simulink模块窗,建立异步
电动机矢量控制变频调速系统的模型,如图 2所示,结构简单明了,全部实现模块化,容易扩展,可以根据实际需要,改变每
一模块的参数。