EDN China > 设计实例 > 汽车电子 > 动力控制 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

柴油发电机组转速控制半物理仿真

中南民族大学 彭敏 常广辉?? 2010年02月08日 ?? 收藏0

  1 引言

  电子调速器是柴油机的关键部件之一,当实际柴油机及其负载性能发生变化且与调速器设计参数不匹配时,柴油发电机组就无法正常工作,这时需要修改调速器的控制参数。另外,电子调速器在出厂前和维修后都需要进行性能试验,以设定合适的控制参数满足其调节性能。在柴油机上直接进行电子调速器的参数整定、性能测试、维修后性能恢复既不安全、又不经济。进行半物理仿真是调速器进行实际配机试验之前不可缺少的环节,其工程思路是建立柴油机发电机组全工作范围动态仿真模型,通过输入输出接口电路与电子调速器相连构成一闭环控制系统,从而完成电子调速器的性能测试的相关试验。

  建立柴油发电机组的仿真模型是 Simulink的强项。由于半物理仿真系统需要连接特定的硬件设备,仿真程序需要定制人机界面实现参数设置等功能,这部分功能的实现对于 Simulink来讲则难以完成,而这恰恰是Visual C++(VC)的强项。VC可视化C++编程环境具有强大的硬件控制功能和灵活丰富的人机界面设计功能。但直接采用VC建立柴油发电机组的仿真模型则难度很大。

  针对这一问题本文提供一种从Simulink仿真模型平滑过渡到Visual C++集成开发环境的方法。具体实现是在Simulink中建立柴油发电机组的仿真模型,然后通过Matlab实时工作间(RTW)将Simulink仿真模型转化成可移植的嵌入式C++代码,最后和Visual C++的项目文件进行整合构成完全独立运行的实时半物理仿真系统。

  2 柴油发电机组模型的构建及半物理仿真系统结构

  柴油机的建模一般有2种途径,一种是数学机理建模,一种是试验辨识建模。数学机理建模主要从柴油机各部件的原始特性和结构参数入手,根据动力学和热力学关系方程建立机理模型其建模的工作量大,计算复杂而且为模型的求解带来一定的难度。试验辨识建模是根据柴油机试验台试验数据,采用不同的数学拟合方法建立柴油机的数学模型。对于研究电子调速器参数整定以及配机试验,这里关心柴油机外部性能参数的关系,可以不考虑柴油机内部的热力过程。只要柴油发电机组仿真模型能较真实地模拟柴油机及其负载特性,则测试结果就能较为真实地反映出电子调速器的实际配机性能。

  因此选用试验辨识建模法,应用BP神经网络建立柴油机发电机组模型。如图1所示。MTU396柴油发电机组转速控制半物理仿真系统的输人输出信号,主要有3种类型:

  (1)脉宽调制(PWM)信号,即执行机构齿条驱动信号;

  (2)频率信号,即模拟柴油转速脉冲信号;

  (3)开关量信号,即对电子调速器的各种控制信号,如启动、停止、增速减速控制等。

应用BP神经网络建立柴油机发电机组模型

  本系统选用研华的PCI-1780计数器卡,他提供8个16位计数器通道8路数字量输出和8路数字量输入,可以满足上述需要。如图2所示。

  3 半物理仿真系统的实现

  3.1 利用RTW生成可移植的C++模型代码

  RTW是Matlab图形建模和仿真环境Simulink的一个重要的补充功能模块,简而言之,他是一个基于Simulink的代码自动生成环境。他能直接从Simulink的模型中产生优化的,可移植的代码以加速仿真系统开发的过程和降低研发成本。

  RTW 能把Simulink模型中的某些参数或信号设置为全局变量,模型自动生成的可执行代码在目标系统中运行时,可以方便地与Simulink模型交互,实现在线参数调整和信号通讯。利用RTW这种功能,可把模型中需要调整、监测的参数或者信号设置为全局变量。这些变量构成后面所述VC仿真程序中模块间交互的桥梁。

  RTW支持多种目标,所以RTW自动生成C++模型代码有多种选择,对于VC而言有3种目标可以选择:通用实时(GRT)目标、通用实时Malloc(GRTM)目标、嵌入式目标。通用实时(GRT)目标采用实时代码格式,其内存的分配在编译时被静态声明。通用实时 Malloc(GRTM)目标采用实时Malloc代码格式,他与实时代码格式非常相似,主要的区别在于实时malloc代码格式对内存进行动态声明。嵌入式目标可按嵌入式代码格式生C++代码,在运行速度、内存使用量和简化等方面都进行了优化。嵌入式代码采用静态内存分配方式。本文选择嵌入式目标来自动生成嵌入式代码。

  RTW自动生成的代码分为2部分:一部分是模型代码;另一部分是代码运行界面(run-time interface)。这些代码被切分成很多源代码文件,为了管理这个庞大的项目,RTW还为其自动生成一个make文件。用VC打开make文件并编译,然后将此项目中引用的所有源文件从Matlab安装目录中复制出来,并和模型代码共同组成仿真模型代码。


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

柴油发电机组? 转速控制? Simulink?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈