DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 122|回复: 0
打印 上一主题 下一主题

基于dSPACE的电机控制系统实验平台研究

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-16 19:04:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

                      电机的控制系统是一个高阶、非线性、强耦合的时变多变量系统,并且实际机械负载也往往具有死区、摩擦等强非线性特性,所以,在传统的纯数字离线仿真研究中,电机及负载模型都是在一定假设条件下的简化模型,与实际对象存在差异。另一方面,纯数字离线仿真无法考虑到包括实际处理器的运算能力、存储器的限制、中断及I/0接口电路电气特性等诸多因素。因此,采用这种方法设计得到的控制算法在实际应用中无法取得理想效果。而在采用单片机或DSP的数字运动控制系统开发过程中,不仅需要手工编写大量算法,而且需要开发相应的接口电路及驱动检测装置,开发周期长、重复性工作多。现代仿真技术的发展为上述问题的解决提供了很好的工具。dSPACE实时仿真系统实现了MAT-LAB/Simulink无缝链接,并支持代码的自动生成,实现了从基于MATLAB/Simulink的纯数字离线仿真到硬件在回路的半物理实时仿真的快速过渡。
  dSPACE是由德国dSPACE公司开发的一套基于Matlab/Simulink的控制系统开发及测试的设备,它实现了和Matlab/Simulink的完全无缝连接,可以很好地完成控制算法的设计、测试与实现,有效克服了传统控制系统开发存在的上述问题。它具有运算速度快、使用方便和界面友好等优点。dSPACE实时系统功能强大,它既可以和实际控制对象相连,又可以和实际控制器相连,这时它起到被控对象的作用。利用基于dSPACE的控制系统可以达到缩短开发周期以及降低开发费用。
  1 基于dSPACE的电机控制系统实验平台结构
  dSPACE在硬件结构形式上分为两大类:一类是把处理器和I/O集成到一块电路板上,形成一个完整的实时控制的单板系统(如DSll03控制器板);另一类是将处理器和用户接口完全分开(如DSl005PPC控制器板),以实现处理器和I/O能力的升级扩展,处理器和I/O之间通讯由PHS(Peripheral High-speed Bus)总线实现。
  本文以DSl005PPC控制器板为核心,配以DS2001AD采集板、DS2002/2003多路A/D采集板、CP4002多I/O板、DS2102DA输出板、DS3002增量式编码器接口板,构成了dSPACE的标准组件系统DSl005的硬件部分。基于dSPACE的电机控制系统实验平台结构框图如图1所示。



  针对控制过程中逆变器同一桥臂的上、下功率器件控制波形反相的特点,控制软件只需输出三路PWM控制信号而由硬件进行反相处理。本文采用由硬件电路来进行PWM控制信号的反相和产生死区时间,这样做的好处在于可以减少软件的运算时间和节省存储空间。三路PWM控制信号输入PWM信号反相和死区产生电路后,输出为具有几个微妙的死区时间的六路PWM电机控制信号,从而很方便地用于电机控制。图2显示了三路中的一路PWM信号反相和死区产生电路。该电路主要使用了反相器74HC04来对PWM信号实施反相,同时还利用了电容冲、放电过程及整形电路来产生死区时间,其中,死区时间的大小可以通过选择电容或电阻参数来设置。
  2 Matlab/Simulink实验模型及RTI接口模块
  在控制系统硬件平台结构搭建完成的基础上,基于dSPACE的控制系统的软件设计相比于采用DSP的常规的方法来说非常简单,可以节省大量的编程时间。由于控制系统的算法事先都在Matlab/Simulink中离线仿真得到实现,因此软件设计只需要将Matlab/Simulink中仿真时的所有输入/输出接口模块用dSPACE的RTI模块(如图3所示)代替并进行单位变换等简单运算,因为此时所有输入或输出信号均是针对实际物理量,因此软件中参与运算的这些输入或输出信号的单位应与实际物理量的单位一致。



  比如:在采集电机电流iA时,硬件上已经利用传感器和信号处理等电路将电流信号采集并转换成±10 V的电压信号输入到了DS2001AD采集板的ADC#1通道,此时在软件上将原来离线仿真模型中从电机仿真模型得到的电流反馈信号用DS2001_B1(见图3)的RTI接口模块替换,并进行简单的单位换算以保证最终参与运算的电流值与实际的电流值大小一致。离线仿真模型经过dSPACE的RTI模块替换之后,同时将仿真模型中的电机用实际电机代替就可以得到Matlab/Simulink实验模型。图3显示了建立Matlab/Simulink实验模型的常用的几种RTI接口模块:PWM接口RTI模块、编码器接口RTI模块、A/D接口RTI模块及D/A接口RTI模块等。
  3 基于DSPACE的电机控制系统实验开发步骤
  在硬件实验平台搭建完成后,基于dSPACE的电机控制系统实验开发步骤包括以下几点:
  (1)Matlab/Simulink模型建立及离线仿真。利用Matlab/Simillink建立仿真对象的数学模型,设计控制方案,并对系统进行离线仿真。
  (2)输入/输出接口(I/O)的接入生成实验模型。在Matlab/Simulink中保留需要下载到dSPACE中的模块,从RTI库中选择实时控制所需的I/O模块,用硬件接口关系替换原来的逻辑连接关系,并对I/O参数进行配置,在一些特殊情况下还需要设置软硬件中断优先级。
  (3)利用RTW和dSPACE提供的工具自动生成代码并下载。由于Matlab与dSPACE的无缝连接的特性,因此只需简单的操作即可完成目标系统的实时C代码的生成、编译、链接和下载,将模型下载为目标板DS1005PPC上可运行的程序。
  (4)dSPACE综合实验和调试。利用dSPACE提供的CONtrolDesk软件对实时运算数据进行获取、改变参数并进行实时控制等。图4显示了基于dSPACE的电机控制系统实验开发流程。



  5 结语
  本文介绍了以先进的快速算法验证实验设备dSPACE为控制核心,自行设计和扩展相关的外围硬件电路后搭建起基于dSPACE的电机控制系统实验平台和实验开发步骤的详细过程,并给出了利用上述平台的应用实例。利用此平台可以大大缩短实验开发周期,有利于对控制算法的研究和实际应用前的有效验证。
            
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-8-3 23:05 , 耗时 0.089654 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表