ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:541.35KB ,
资源ID:5410923      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5410923.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于bangbang算法的倒立摆.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于bangbang算法的倒立摆.docx

1、基于bangbang算法的倒立摆Bang-bang起摆控制系统设计1、bang-bang控制原理 bang-bang控制最早由庞特里亚金提出。对调速范围宽、静态误差小和动态响应快的随动系统来说,单闭环控制是不能满足要求的,所以随动系统采用电流环、速度环和位置环来完成控制。在随动系统控制中,pid控制具有结构简单且在对象模型不确知的情况下也可达到有效控制的特点,但对模型参数变化及干扰的适应能力较差。bang-bang控制在系统偏差大,可加大系统的控制力度,提高系统的快速性,因此,bang-bang控制是随动系统中不可缺少的控制方式。2.基于Bang-Bang反馈的起摆算法 我们可将起摆分为以下四

2、个阶段(定义摆杆自然下垂位置,以逆时针方向为正,箭头代表摆杆运动方向)。图3-59 倒立摆能量起摆过程 在初始时刻,小车位于导轨中心,摆杆自然下垂。当进行起摆实验时,先向负方向给小车一个较大的力(小车有加速度),使摆杆运动,随后紧接着令小车停止,摆杆会在惯性的作用下,继续沿着与小车连接处的转轴向上运动(),达到最高点后,摆杆速度为零,在重力的作用下沿摆杆的轴心自动下落(),这时给小车施加一个相反的作用力,小车反向运动的同时通过连接轴给摆杆一个反向的力。当再次到达初始点()时,令小车制动,摆杆此时的速度不为零,在惯性的作用下继续运动,此时()。当时,即摆杆达到负方向的最高点,在重力的的作用下,摆

3、杆回落,继续给小车施加负方向的力,直到下车制动()。反复以上动作,摆杆在小车驱动力的作用下,抛起的高度会不断增加,直到进入稳摆区域,切换到稳摆控制算法。 对以上的四种情况进行分析,可转化成控制算法:(1),控制量,初始时刻(2) (3)3、系统工作原理便携式直线一级倒立摆工作原理图 便携式直线一级倒立摆的工作原理是:数据采集卡采集到旋转编码器数据和电机尾部编码器数据,旋转编码器与摆杆同轴,电机与小车通过皮带连接,所以通过计算就可以得到摆杆的角位移以及小车位移,角位移差分得角速度,位移差分可得速度,然后根据自动控制中的各种理论转化的算法计算出控制量。控制量由计算机通过USB数据线下发给伺服驱动器

4、,由驱动器实现对电机控制,电机尾部编码器连接到驱动器形成闭环,从而可以实现摆杆直立不倒以及自摆起。物理模型直线一级倒立摆模型4.系统设计倒立摆系统自摆起控制目标:通过控制小车运动,将摆杆从自由下垂状态摆到倒置平衡位置,并使系统能保持摆杆倒置状态,具有一定的抗干扰能力,同时还要控制小车回到初始零位附近,使整个系统处于动态平衡状态。该过程分为两个阶段:摆起控制与稳摆控制。两者模型的差异性决定了两个过程中控制方法的不同,要使倒立摆的整体性能好,两者之间的切换控制尤为重要。4.1、模块的搭建1、从中拉出两个S-Function模块,双击该模块,将S-function name分别改为Initpend和

5、MUL_timer。2、从中拉出一个Enabled Subsystem模块,并将MUL_timer模块与它连接。3、 双击Enabled Subsystem模块,进入之后搭建如下图所示的模块组成 4.2、参数设置按Ctrl+E出现如下图所示的对话框,进行参数设置。将Stop time 设置为inf,将Solver options中的Type选择为Fixed-step,右侧选项为ode1(Euler),将Fixed step size设置为0.01,Mode选择Single Tasking.,设置完成之后点击OK.说明: 实验模块所在的文件夹一定要包含该实验所用到的库函数模块所生成的动态链接库,

6、即(.dll)文件。例如在实验七模块所在的文件夹中必须要有Initpend.dll,MUL_timer.dll ,ReadTwoChannelPulse.dll,SetMotorAcc.dll, bangbangswingup.dll。5.Simulink仿真 直线一级倒立摆Bang-Bang自摆起仿真模型其中“Bang-Bang控制器”为封装(Mask)后的Bang-Bang起摆控制器,如下图: Bang-Bang起摆控制器“LQR Controller”为封装后的LQR控制器,双击该模块可以进行LQR参数设置: LQR稳摆控制器 设置好各项参数后,点击“”运行仿真,得到仿真结果: Bang

7、-Bang自摆起仿真结果 根据仿真结果我们可以看出,系统在2秒内起摆成功,2秒后由稳摆算法接管控制,系统可以很好的稳定,稳态误差较小。但在实物控制实验中系统是不可能在这么短的时间内起摆成功的,仿真只是在理想状态下进行的,比如仿真时并不考虑导轨的长度,实物控制实验时还必须考虑安全问题,摆杆摆起的速度必须加以限制,所以仿真实验只是为了让实验者熟悉起摆算法,在此仅供参考。5.1 Simulink实时控制实验鼠标双击主界面上的Select Experiment模块,在弹出的对话框中选择实验编号7,然后单击右侧对应的Enabled Subsystem模块后出现下图所示界面。 实验7 LQR控制(Bang-Bang自摆起)实验确定摆杆此时竖直向下。不用编译连接,直接单击“”按钮,倒立摆进行自摆起,当摆杆与竖直向上的方向夹角小于0.5弧度时(因为Bang_Bang控制要求导轨要长一些,而基于便携,我们设计的导轨要短,所以要在一个相对大的角度进度稳摆范围,来抵消掉对导轨长度的要求)进入稳摆范围,稳摆采用LQR控制算法。如果不能正常摆起,用户可根据实际情况修改小车加速度值直到正常摆起,可以观察到,摆杆直立不倒,小车会稳定在初始位置,一段时间后单击“”停止仿真。双击打开“示波器”模块,观察得到的曲线图(上面为小车位移,下面为摆杆角度),分析原因,得到相应结论。6、利用bang-bang控制的实物展示

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1