酷文首页  
站内搜索:
网站地图 | RSS订阅 | 收藏本站
经济论文
证券金融
工商管理
会计审计
法学论文
医药论文
社会论文
教育论文
计算机论文
艺术论文
哲学论文
财政税收
财务管理
公共管理
理学论文
政治论文
文学论文
工学论文
文化论文
实用文档
应用文
自考成考
演讲稿
法律文书
子栏目导行↓
网站赞助商↓
本类热点↓
本类更新↓
热门标签↓
网摘收藏↓

回路硬件仿真技术在直升机控制系统中的应用

作者:Jim Ledin
来源:论文网
点击:
载入中...
加入时间:2007-05-17
字体大小:[  ]

复杂系统仿真需要用到许多高级的数学算法,但可以采用专门的软件工具来简化任务:Simulink是MATLAB的一个附件,它可以用来提供以框图为主的图形环境下的动态系统仿真。用Simulink进行仿真的方法是先把“调色板”上的模块拖到绘画区域,然后用代表信号流向的直线把这些模块连接起来。图4就是直升机项目中采用的位置编码模型的Simulink框图,该模型把以弧度表示的角度位置作为其输入信号,并产生Phase A和Phase B信号作为其输出。另外,它还输出指示信号,用来指示相应轴到达零位置的时刻。直升机位置编码器不会产生指示信号输出,因此不使用该Simulink模型的输出。 
Stateflow是Simulink的一个附件,用以实现有限状态机模型。在这个直升机项目中,Stateflow模型用来实现直升机模式选择逻辑。 
Real-Time Workshop根据Simulink框图产生C代码,其它工具需要使用这些代码来达成编译与执行目标。在本项目中,其它工具包括Real-Time Windows Target和xPC Target。 
Real-Time Windows Target允许仿真的编译与执行作为PC机Windows系统中的一个实时进程,能与Windows操作系统同时运行。在本项目中,Real-Time Windows Target执行的是HIL系统仿真,所用主机正是开发和控制直升机软件的计算机。align=RIGHT VSPACE=12 HSPACE=12 ALT="图5:直升机和控制器模型。"> 


xPC Target允许在PC机上执行仿真,此时PC机的功能如同专门的实时控制器。xPC Target还提供实时的多任务内核供只有有限硬件资源的嵌入式处理器使用。xPC Target在本项目中用来在一台独立PC上产生和执行直升机控制器用的实时代码,此时该PC机就用作“嵌入式”控制器。 
仿真开发 
控制器软件开发的第一步是实现对整个直升机控制器系统的仿真,图5给出了仿真的顶层框图。其中两个较大的方框分别表示直升机系统本身和数字控制器,两个较小的带有“操纵杆”和“模式命令”标签的方框向控制器提供用户输入信号。图5中的“直升机”框图包含有直升机动态行为的Simulink模型,如图6所示。从图6可以看到,该模型采用了转移函数、求和函数和积分器等多个Simulink模块。带“有限运动”标签的模块包含有一个受限于向下靠近桌面方向的上升轴运动模型。当被仿真的直升机碰到桌面时,所有3个运动轴的速度都被置为零,因此非常接近实际直升机的行为。从靠近右边的3个量化器可以看出位置编码器的量化效果。 
“有限运动”模块代表一个子系统。子系统模块允许在仿真开发期间通过分层图集(hierarchical sets of diagrams)来控制复杂性。子系统间可以进行任意多层的嵌套,类似于函数的嵌套调用。 

图5“控制器”子系统的详细内容见图7。对3个轴角度测量值的量化结果成为控制器的3个基本输入信号,控制器输出的是两个马达的驱动电压。图7中的主要模块有:驱动直升机到指定位置的“自动驾驶”模块,在不同操作模式下产生前进和上升位移命令的“命令发生器”模块,实现用于选择不同直升机操作模式的有限状态机的“模式控制”模块。
“模式控制”模块内所含的状态流程框图如图8所示。该框图包含了系统启动时对操纵杆进行校正的逻辑、用户控制下的模式改变、当违反位置限值时自动切换到空模式,以及系统关闭的控制。
图5所示的“控制器”模块内部提供了嵌入式软件的完整实现方法。常见的方法是将嵌入式软件开发当作一个独立过程,该过程将仿真作为可执行的软件要求描述来使用。然而,更有效的方法是将仿真中的控制器实现作为“源代码”,供嵌入式软件使用。
在本项目中,可以把图5的“控制器”模块挎贝到新的Simulink项目中,并向框图中添加相应的I/O器件模块。然后,再调用Real-Time Workshop创建C代码,经过编译后下载到"嵌入式”PC控制器。到此就完成了嵌入式软件的开发工作。


回路硬件
有了直升机和控制器的非实时性Simulink仿真基础后可以着手HIL仿真开发了。首先需要创建一个新的Simulink项目,再把图5中带“直升机”标签的模块挎贝进来。这种仿真建立了直升机动态模型,并包括了相应的I/O器件接口。Real-Time Windows Target支持多种I/O器件。HIL仿真所需的I/O要求包括两个ADC输入(用于接收控制器发出的马达命令电压)和6个TTL数字输出(为3个仿真位置编码器分别提供Phase A和Phase B信号)。
本项目中将运行Windows的台式PC作为主机系统,因此需要使用满足上述条件并且具有PCMCIA接口形式的I/O器件。National Instruments公司的DAQCard-1200能够满足这些要求,并提供一根带状电缆用于连接计算机内的接口卡和独立的连接器模块。
直升机仿真以固定的帧速率运行,其仿真Phase A和Phase B信号的TTL输出则一个仿真帧更新一次。由于位置编码器信号的脉冲速率正比于运动轴的角速度,因此仿真帧速率可以限制能准确再现的最大角速度。
如果采用这种方法对位置编码器信号进行建模,那么当Phase A和Phase B信号隔帧交替时就能产生最高的仿真角速度。这时根据等式1就能得出仿真更新间隔h(秒)条件下最大的角速度值wmax(度/秒):


等式1
从直升机行为的数字仿真结果可以明显看出,倾斜轴具有最大的峰值角速度,但很少出现超过100°/秒的情况。理想情况下h应不小于一定值,这样HIL仿真就不会占用计算机太大的计算资源。综合考虑这些要求,h的最佳值应是500us,此时更新速度是每秒2000帧,最大的仿真角速度是175.8°/秒,该速度已经远远超过最大的角速度期望值。
每秒2000帧的直升机仿真更新速度已经大大超出对直升机进行动态精确建模的速度要求,因此没有必要再用高阶积分算法来获取更精确的结果。相对简单的二阶积分算法可以获得较好的精度,此次仿真选用的就是Simulink“ode-2”梯形积分算法。与采用更加复杂的高阶积分算法相比,这种算法能使仿真具有更高的效率。
为了在目标PC上下载并运行嵌入式软件,需要用串行电缆连接主机与目标计算机,并从软盘启动目标系统内核。根据控制器的Simulink框图,接下来就可以下载运行嵌入式控制器用的软件。在将目标系统的I/O器件与DAQCard-1200的相应端子连接起来后,可以在主机的Real-Time Windows Target中运行直升机的Simulink仿真。最后根据Simulink框图将命令发送给嵌入式控制器,从而启动控制器工作,完成仿真直升机的“飞行”。 转贴于 酷文网-论文下载中心 http://www.coolwen.net


共3页: 上一页 [1] 2 [3] 下一页

网摘收藏:
免责声明 | 关于我们 | 广告联系 | 友情链接 | 网站地图 | 共同合作
免费论文 毕业论文 毕业论文范文 酷文网(www.coolwen.net) 版权所有 coolwen.net 2007,All Rights Reserved
E-mail:hui_love#tom.com(为防止垃圾邮件请把#换成@) 点击这里给我发消息 点击这里给我发消息
湘ICP备07003917号