1微纳科技cSPACE快速控制原型开发系统(基于MATLAB的DSP快速控制原型开发系统)一.产品简介......................................................................................................1二.系统组成......................................................................................................2三.硬件资源......................................................................................................4四.应用案例......................................................................................................64.1.直线电机驱动的二级倒立摆的控制................................................64.2.磁悬浮球系统的控制........................................................................84.3.三容水箱过程控制实验系统的控制................................................94.4.采用磁流变液阻尼器的1/4车辆振动实验系统的控制..............10一.产品简介快速控制原型(RapidControllerPrototyping,RCP)和硬件在回路实时仿真(Hardware-in-Loop,HIL)是目前国际上控制系统设计的常用方法,它把计算机仿真(纯软件)和实时控制(硬件在回路)有机结合起来,用户可把仿真结果直接用于实时控制,极大提高控制系统的设计效率。目前,这一系统或设计方法已经在高校和实验室得到普遍采用,最典型的例子为德国的dSPACE快速控制系统原型设计系统。dSPACE卡是一个基于MATLAB/Simulink开发环境的自动代码生成工具,拥有快速控制原型开发和硬件在环仿真功能。应用这种方法,可使电控单元系统及机械控制系统的开发和测试简捷和高效。因此,dSPACE已经成为运动控制和过程控制开发的好工具,受到了全球用户的欢迎。本公司研制的cSPACE快速控制原型和硬件在回路开发系统(以下简称cSPACE系统)基于TMS320F2812DSP开发,与dSPACE公司的DS1104卡相当,拥有AD、DA、IO、Encoder和快速控制原型开发、硬件在环仿真功能,通过Matlab/Simulink设计好控制算法,将输入、输出接口替换为公司的cSPACE模块,编译整个模块就能自动生成DSP代码,在控制卡上运行后就能生成相应2的控制信号,从而方便地实现对被控对象的控制。运行过程中通过cSPACE提供的MATLAB接口模块,可实时修改控制参数,并以图形方式实时显示控制结果;而且DSP采集的数据可以保存到磁盘,研究人员可利用MATLAB对这些数据进行离线处理,下图为利用cSPACE工具的开发流程图。图1cSPACE开发流程图二.系统组成微纳科技cSPACE快速控制原型和硬件在回路开发系统根据国际上控制系统设计常用的快速控制原型和硬件在回路原理进行开发,硬件功能与德国dSPACE公司的DS1104卡相当,拥有dSPACE-DS1104所具备的大部分接口功能和快速控制原型开发、硬件在回路仿真技术,具体包括以下三大部分:一、cSPACE系统的控制卡采用高性能的TMS320F2812DSP开发,并且外扩高性能的AD、DA和正交编码信号处理模块,具有丰富的硬件接口,可以3同时控制多台电机。图2cSPACE的DSP控制卡二、cSPACE系统的开发环境是基于广大科研人员所熟悉的MATLAB/Simulink进行开发,方便用户使用,同时能充分利用MATLAB强大的科学计算、信号分析处理、图形处理功能。图3cSPACE的MATLAB开发环境三、cSPACE系统的控制界面采用MATLAB/Simulink进行开发,能在线修改10个变量和实时显示4个变量,自动存储数据,结构简单,方便用户使用。4图4cSPACE的监控界面三.硬件资源cSPACE的硬件资源如下所示:主处理器为TMS320F2812DSP,处理能力为150MIPS16通道的12bitAD,转换时间为250ns,输入范围为(0,3V)6通道的16bitAD,转换时间为3.1us,输入范围为(-10,10V)或(-5,5V)4通道16bit的DA,建立时间为10us,输出范围为(-10,+10V)3通道独立的PWM信号,分辨率为16位,1通道有两路输出,共6路输出,这6路输出也可以作为输出的IO引脚使用2路输入IO引脚4通道QEP单元正交编码信号处理模块1路RS232串口1路增强型CAN接口128k×16bit的片内flash和18k×16bit的SARAM三个32bit的系统定时器,4个16bit通用定时器用户额外可扩充的功能:5通道PWM信号,分辨率为16位51路RS232串口多达20个可单独编程的复用口,亦可用作通用I/O口三个外部中断口,并有外围中断扩展模块,可支持多达45个外围中断我公司cSPACE控制系统与国外同类系统主要性能对比表1cSPACE与国外同类产品对比表格硬件模块cSPACEdSPACE主处理器采用TMS320F2812DSP开发,时钟频率为150M,指令周期为6.67ns采用TMS320F2407DSP开发,时钟周期为40MAD6路高性能的16bitAD模块8路高性能的16bitAD模块DA4路高性能的16bitDA模块8路高性能的16bitDA模块正交编码信号处理模块4路2路RS232接口1路2路PWM信号输出模块8路8路IO接口8路IO接口16路6软件功能cSPACEdSPACE变量在线修改模块10个多达数十个变量实时显示模块4个多达数十个使用变量在线修改模块和实时显示模块的个数限制可以在10个变量在线修改模块和4个变量实时显示模块之间由用户任意组合由用户任意组合数据保存自动保存自动保存变量显示方式图形化显示图形化显示cSPACE系统硬件成本底,控制系统设计好后,可以把生成的目标代码烧写进控制卡,从而构成脱离计算机而独立运行的嵌入式控制系统,控制被控对象,整个过程用户不需进行硬件和C语言或汇编语言的开发,极大减小用户构建控制系统时间和降低成本。四.应用案例4.1.直线电机驱动的二级倒立摆的控制倒立摆是一个典型的快速、多变量、非线性、强耦合、自然不稳定系统,必须采取有效的控制算法才能使之稳定。倒立摆在控制过程中,能有效反映诸如镇定性、鲁棒性、随动性以及跟踪等许多关键问题。因此人们常常利用倒立摆检验各种控制算法对不稳定性、非线性和快速系统的控制能力,以及各种控制算法的有效性。倒立摆的控制研究具有理论意义,多级摆控制是控制领域研究的难点。其中二级倒立摆的实物图如下图所示:7图5直线电机驱动的二级倒立摆二级摆包括直线电机、上摆杆和下摆杆以及测试摆杆角度的编码器、测试电机直线位移的光栅。cSPACE快速控制原型系统接收来自光电编码器的摆杆角度信号和光栅输出的直线电机的工作台位移信号,并对信号进行处理得到1212,,,,,xx六个状态变量,然后根据最优控制算法计算得到精确的控制量,经过DA转换后输出模拟控制信号,再经伺服驱动器放大后驱动直线电机输出相应的力来控制摆杆倒立平衡。下图为硬件组成的原理框图。直线电机角度编码器倒立摆伺服驱动器直线传感器DSP控制卡监控计算机角度编码器上摆杆摆角下摆杆摆角图6二级倒立摆控制系统硬件框图对于二级倒立摆的控制,采用最优控制算法控制二级倒立摆,下图为最优控制算法的cSPACE框图编码器二下摆杆编码器一光栅上摆杆8图7二级倒立摆最优控制算法图中encoder1、encoder4、encoder3分别是DSP控制卡采集电机位置、下摆杆角度和下摆杆角度的正交编码信号处理的模块,WM-DAC1是cSPACE系统的DA转换模块。编译模块后生成针对控制卡的目标代码,运行程序后控制卡就能采集传感器的信号,处理这些信号经过得到控制量,控制量经过DA转换后得到模拟控制信号,驱动器对模拟控制信号进行放大后驱动直线电机使二级摆能保持稳定。4.2.磁悬浮球系统的控制图8磁悬浮实验系统磁悬浮实验装置由被控对象钢球、电磁铁、LED平行光源、硅光电池传感器、cSPACE控制卡以及驱动系统组成,它的原理是采用LED平行光源和光电传感器测量被控对象钢球与电磁铁之间的距离变化,控制系统采集变化的信号并9进行PID、超前校正等控制器的运算,得到控制信号,通过放大器控制电磁铁绕组中的电流,使之产生与钢球的重力相平衡的电磁力,这样钢球就可以悬浮在空中而处于平衡状态。微纳科技的磁悬浮球实验系统采用cSPACE快速控制原型系统开发,具有MATLAB/Simulink图形化开发、自动生成可行性代码、参数在线调节、变量在线观测和自动存储的功能,使磁悬浮球电控单元的开发和控制算法的实现变得更加简捷和高效。系统控制效果直观,富有趣味性,能够很好地培养学生的学习兴趣,是自动控制、计算机控制技术、机电一体化等课程很好的实验装置,也是控制理论研究的很好的实验平台。以下为磁悬浮球系统的PID控制算法框图:图9磁悬浮球实验系统PID控制算法4.3.三容水箱过程控制实验系统的控制微纳科技三容水箱过程控制实验系统是学习和研究过程控制原理的实验系统,由三容水箱和微纳科技cSPACE控制系统组成,用户可以在MATLAB/Simulink环境下采用PID算法对三容水箱的液位、压力、流量进行控制,实验系统还附带有温度控制实验。10图10过程控制实验系统4.4.采用磁流变液阻尼器的1/4车辆振动实验系统的控制磁流变液阻尼器是利用磁流变液的流变效应而制作的结构简单、功耗小、可控性强、阻尼力可实时调节的智能型阻尼器。此类阻尼器在机械、汽车以及土木工程等领域的振动控制方面具有广阔的应用前景。为研究磁流变阻尼器和半主动控制算法的有效性,采用一套完整的模拟车辆系统试验平台,包括模拟车辆系统、数据采集系统、控制系统和程控电流源等,采用cSPACE系统,分别实现on-off控制、连续控制和模糊控制三种控制策略,对磁流变减振器进行半主动控制实验。11图11磁流变液阻尼器振动实验平台采用模糊控制的cSPACE控制算法框图如下图所示:12图12磁流变液阻尼器模糊控制算法图中ADC模块为cSPACE的AD模块,用于采集上质量块(车体)和下质量块(转向架)的速度信号;“A1”和“A3”模块用于对采集的速度信号进行变换,得到实际的速度信号,用车体的速度信号减去转向架的速度信号得到相对速度信号;“WM-Read1ab”模块用于在计算机上观测车体的速度和车体和转向架之间的相对速度信号;“ifsystem1”和“ifsystem”模块用于对速度信号设置阈值,当速度大于一定的值才施加控制,防止在速度为0附近行程振荡;“WM-DAC1”模块把“On-off控制”算法的输出转变为实际的电压信号,“Fuzzy”模块实现模糊控制方法。对模块编译自动生成代码并且下载到DSP控制卡,运行后就能在DSP控制卡相应的接口实现相应的功能,从而对磁流变液阻尼器进行控制。当调试好程序,可以把程序烧写进DSP,这样能使控制系统脱离计算机运行,构成嵌入式的控制系统。