DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

基于dSPACE的电机控制系统实验平台设计

[复制链接]
跳转到指定楼层
楼主
发表于 2011-4-24 15:13:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
0 引言
  在通常以微控制器如DSP为控制核心进行电机控制系统的实验开发过程中,由于要编写大量的程序代码而需要大量的编程时间,而且如果控制系统算法需要更改或增加则又需较多时间来更改软件,因此实验开发周期长,不利于控制算法的研究和实际应用。
  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所示。
  


  从图1可以看出,基于dSPACE的电机控制系统实验平台以dSPACE为控制核心,在外围还需要扩展一些相关电路,如隔离电路、信号处理电路、驱动和功率桥电路、保护电路等,从而构成了一个完整的电机控制系统实验平台。
  1.1 dSPACE本身硬件部分
  dSPACE本身已经集成好的硬件部分包括DSl005PPC控制板、DS4002多I/O板、DS2001AD采集板和DS3002旋转编码器接口板等。通过CP4002多I/O板,可以输出6路PWM电机控制信号以控制功率器件的开通和关断;通过DS2001AD采集板可以采集电机的电压和电流等模拟量,尤其是当需要同时采集更多路数的模拟量时,可以使用具有32路A/D采集的板卡DS2002/2003;另外通过DS3002旋转编码器接口板,可以直接将电机后部带的编码器信号输入至DSl005PPC,从而用于速度检测;此外还有DS2102DA输出板,可以利用它来输出一些信号以方便调试。
  1.2 外围扩展电路部分
  外围扩展电路部分主要包括PWM信号反相和死区产生电路、模拟和数字隔离电路、电压和电流采集及信号处理电路、驱动和功率桥电路和保护电路等。
  由于篇幅所限,此处只给出PWM信号反相和死区产生电路,如图2所示。
  


  针对控制过程中逆变器同一桥臂的上、下功率器件控制波形反相的特点,控制软件只需输出三路PWM控制信号而由硬件进行反相处理,此外,由于控制电机时的PWM脉宽调制均采用180°PWM导通方式,为避免逆变桥上、下桥臂功率器件同时导通而烧毁功率器件,所以还需在上、下桥臂的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模块(DS4002PWM3 OUT)、编码器接口RTI模块(DS3002HW INDEX B1 C1/DS3002POS_B1_C1)、A/D接口RTI模块(DS2001_B1/DS2002_B1/DS2003_B1)和D/A接口RTI模块(DS2102_B1)等。
  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的电机控制系统实验开发流程。
  


  4 应用实例
  图5(a)显示了三相功率器件的一路PWM控制信号波形,图5(b)为PWM控制信号经过PWM信号反相和死区产生的硬件电路处理后得到的同一相的上、下功率器件的PWM开关信号,可以明显地看出在同一相的上、下功率器件的两路PWM开关信号之间加入了防止直流母线直通的约4μs的死区时间。图6给出了当母线电压Udc为30 V时,常用的空间矢量脉宽调制SVPWM波形及其经过高频信号滤波后的线电压波形图。
  


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

本版积分规则

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

GMT+8, 2025-8-12 22:54 , 耗时 0.081038 秒, 18 个查询请求 , Gzip 开启.

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

桂公网安备 45031202000115号

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

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

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

QQ:28000622;Email:libyoufer@sina.com

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

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