双足机器人基于ADAMS与Matlab的联合仿真
- 格式:pdf
- 大小:460.55 KB
- 文档页数:3
基于Matlab和Adams的自平衡机器人联合仿真徐建柱;刁燕;罗华;高山【摘要】为检验自平衡机器人控制系统的准确性及其动静态性能,采用Matlab/Simulink和Adams建立虚拟样机系统的方法.通过建立机器人的状态空间方程并利用LQR方法配置系统极点,设计出状态反馈控制器.分别在Simulink和Adams中建立机器人的控制系统和机械仿真模型,利用二者实现对机器人的联合仿真.仿真结果表明,所设计的控制方法能实现机器人平衡,并具有良好的动静态性能.%In order to test the accuracy and the static-dynamic characteristics of the control system of self-balance robots, a virtual prototype system was created based on Matlab/Simulink and Adams. The full state feedback controller was designed by building state spacial formula and configuring the system extremity with LQR method. The control system and the mechanical simulation model of the robot were built in Simulink and Adams. The co-simulation based on Simulink and Adams for the robot was realized. The simulation result shows that the control method can keep the robot's balance successfully and the whole system has a good static-dynamic characteristic.【期刊名称】《现代电子技术》【年(卷),期】2012(035)006【总页数】3页(P90-92)【关键词】自平衡机器人;Matlab/Simulink;Adams;动力学仿真【作者】徐建柱;刁燕;罗华;高山【作者单位】四川大学制造学院,四川成都610065;四川大学制造学院,四川成都610065;四川大学制造学院,四川成都610065;四川大学制造学院,四川成都610065【正文语种】中文【中图分类】TP242-34两轮自平衡机器人的研究是近几年众多国内外学者关注的一个热点,如瑞士联邦大学工业大学Felix Grasser等人研制的JOE,美国Southern Methodist大学研制的nBot,以及为所熟知的由Dean Kamen所发明的两轮电动代步车Segway等。
基于ADAMS和Matlab的协同仿真及分析摘要: 应用多体动力学仿真软件ADAMS/Control和强大的控制系统仿真软件Matlab/Simulink进行机械系统和控制系统的协同仿真研究。
以雷达天线为实例,Matlab中输出的控制力矩为机械模型的输入参数,机械模型的天线仰角和电机转速为输出,形成一个闭环系统。
结果表明,利用ADAMS和Matlab进行机械系统和控制系统协同仿真,可以为机电产品的系统动态仿真分析提供有效手段。
关键词: ADAMS; Matlab; 协同仿真复杂产品的开发设计过程通常分为液压、机械、电子、控制等不同子系统,各子系统采用各自领域内的商用仿真软件进行单点仿真[1]。
但单点仿真并不能真实地反映整个系统之间的相互影响,而且当某个系统的参数有变动时,各子系统都要重新设计。
而虚拟样机技术的发展为复杂产品进行精确仿真提供了有效的支持。
虚拟样机技术是一种基于计算机仿真的产品数字化设计方法,涉及到多体运动学与动力学等技术,是在CAX(如CAD、CAE、CAM 等)/DFX(如DFA、DFM等)技术基础上的发展,进一步融合了信息技术、先进制造技术和先进仿真技术,并将这些技术应用于复杂产品的全生命周期[2]。
利用虚拟样机代替物理样机对产品进行创新设计、测试和评估,可缩短开发周期,降低成本。
雷达天线是一种典型的机电一体化产品,利用虚拟样机技术对机械系统和控制系统协同仿真,在可视化的环境下观察控制系统和机械系统的相互影响,输出多种仿真结果。
本文基于ADAMS的强大的动力学仿真建模功能和Matlab/Simulink强大的控制仿真功能,利用ADAMS建立了雷达天线机械模型,并在Matlab/Simulink中设计了控制器,结合在ADAMS中建立雷达天线机械模型,最终建立了基于ADAMS和Matlab的协同仿真模型,通过协同仿真可保证雷达天线达到预定仰角位置,稳定系统。
1 机械系统的虚拟建模本文利用ADAMS/View对雷达天线进行建模。
一、ADAMS /Controls模块ADAMS /Controls是ADAMS其他模块如ADAMS/View,ADAMS/Car,ADAMS/solver等的插件模块,为建立的模型添加控制系统。
通过ADAMS/Controls 模块,可以将机械系统仿真分析工具同控制设计仿真软件MATLAB,EASY5,MATRIX等有机地连接起来,实现以下功能。
(1)将复杂的控制系统添加到机械系统模型中,然后对机电一体化进行联合分析。
(2)直接利用ADAMS程序创建控制系统分析中的机械系统仿真模型,而不需要使用数学公式建模。
(3)在ADAMS环境或控制应用程序环境获得机电联合仿真结果。
ADAMS /Controls控制系统可以有两种使用方式:●交互式:在ADAMS/Car, ADAMS /Chassis,ADAMS/Rail, ADAMS/View等模块中添加ADAMS /Controls,通过运动仿真查看控制系统和模型结构变化的效果。
●批处理式:为了获得更快的仿真结果,直接利用ADAMS /Solver这个强有力的分析工具运行ADAMS /Controls。
设计ADAMS/Controls控制系统主要分为4个步骤:1.建模:机械系统模型既可以在ADAMS /Controls下直接建立,也可以外部输入已经建好的模型。
模型要完整包括所需的所有几何条件、约束、力以及测量等。
2.确定输入输出:确定ADAMS 输入输出变量,可以在ADAMS和控制软件之间形成闭环回路。
3.建立控制模型:通过一些控制软件如Matlab、Easy5或者Matrix等建立控制系统模型,并将其与ADAMS机械系统连接起来。
4.仿真模型:使用交互式或批处理式进行仿真机械系统与控制系统连接在一起的模型。
二、MA TLAB/Simulink工具箱MA TLAB是MathWorks公司开发的软件,具有很多工具箱,其中Simulink工具箱,可以应用于对动态系统进行仿真和分析,他可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。
双足机器人基于ADAMS与Matlab的联合仿真
史耀强;厉明勇;顿向明;刘琦
【期刊名称】《机械与电子》
【年(卷),期】2008(000)001
【摘要】为提高双足机器人设计的效率与可靠性,建立基于虚拟样机技术的仿真系统.在ADAMS中建立双足机器人的机械动力学模型,利用Matlab中的Simulink 工具箱建立控制系统,通过ADAMS与Matlab的接口ADAMS/Controls模块,实现双足机器人基于ADAMS与Matlab的联合步行仿真.虚拟样机联合仿真方法面向多领域,可避免复杂的人工建模和求解过程,仿真逼真且接近实际系统,为双足机器人物理样机的研制提供依据.
【总页数】3页(P45-47)
【作者】史耀强;厉明勇;顿向明;刘琦
【作者单位】上海交通大学机器人研究所,上海,200240;温州科技馆,浙江,温
州,325000;上海交通大学机器人研究所,上海,200240;上海交通大学机器人研究所,上海,200240
【正文语种】中文
【中图分类】TP391.9
【相关文献】
1.基于Adams和Matlab联合仿真的双足机器人越障研究 [J], 于薇
薇;C.Sabourin;K.Madani;闰杰
2.基于ADAMS与MATLAB的药仓推药链联合仿真 [J], 管佳伟;李志刚
3.基于MATLAB和ADAMS的炮控系统联合仿真 [J], 冷华杰;马晓军;王科淯
4.基于Adams和Matlab的轮毂电机建模与联合仿真 [J], 张瑞军
5.基于Adams和Matlab的轮毂电机建模与联合仿真 [J], 张瑞军
因版权原因,仅展示原文概要,查看原文内容请购买。
以电动助力转向的联合仿真实现为例,看看怎么联合起来的4.3 ADAMS-MATLAB联合仿真实现ADAMS提供了两种实现机电一体化联合仿真的方法。
一种方法是利用ADAMS 提供的控制工具箱(Control Toolkit)来实现控制等电气系统与机械系统的联合仿真。
控制工具箱提供简单的线性控制模块和滤波模块,可以方便地实现前置滤波、PID控制和其他连续时间单元的模拟仿真。
对于较为简单的控制问题,可以直接在样机模型中添加控制模块,搭建控制系统,完成机电一体化联合仿真。
另一种方法是使用ADAMS/Control模块来实现,利用ADAMS/Control模块可以实现将在ADAMS中建立的样机机械模型与MATLAB、EASY5、MATRIX等软件中建立的电气模型联合起来,实现机电一体化联合仿真。
由于在MATLAB/Simulink中进行电气控制系统建模非常方便,很适合建立比较复杂的控制系统模型,所以本文使用ADAMS/Control模块来将在ADAMS/Car中建立的整车模型与在MATLAB/Simulink中建立的电动助力转向系统模型联合起来,完成整个机电一体化联合仿真。
仿真的过程中,会在ADAMS/Car和MATLAB/Simulink中形成回路[31],如图4-10所示:图 4-10 ADAMS/Car和MATLAB/Simulink联合仿真回路图中,Control Application即在MATLAB/Simulink中建立的电动助力转向系统。
ADAMS/Car中的整车模型输出车速及方向盘扭矩,作为MATLAB/Simulink中建立的电动助力转向系统的输入,电动助力转向系统输出齿条助力,作为整车模型的输入,在仿真的过程中的每个采样时刻信号在两个软件之间进行交换一次。
本文实现联合仿真的过程如下[32][33][34]:1. 要定义好整车模型的输入输出:(1)建立输入,在建立转向系统模板时提到要在Template Builder模式下建立状态变量rack_ assist_ force,使用VARVAL函数,使VFORCE取状态变量rack_ assist_ force的值,即VFORCE的函数值设为VARVAL(._rack_pinion_steering.rack_assist_force),再建立一个名为“control”的Plant_ Input,使用状态变量rack_ assist_ force。
经过反复查阅资料和无数次尝试,终于初步实现了adams和matlab的联合仿真,放在这里,一为备忘,二为纪念。
*:\MSC.Software\MSC.ADAMS\2005\controls\examples中的ball_beam为例,以下为详细步骤:1、将ball_beam文件夹拷贝到任一位置,在adams/aview中以"importa file"打开"ball_beam.cmd"。
2、假定已经完成adams的建模、约束和力的添加。
3、创建输入状态变量:my_torquebuild ->state elements ->state varilable ->new:在name栏内填写“my_torque”。
ok退出。
在主界面中需要连接输入状态变量的力矩标示上右点选择"Torque:*** ->modify",在function栏后点击"function builder"按钮,填写函数VARVAL(.ball_beam.my_torque),然后ok退出。
至此,完成了“从 my_torque 中获取力矩值”的关键一步,控制软件matlab到adams的输入通道构建完毕。
4、检验定义的状态变量:build ->state elements ->state varilable ->modify中选取my_torque,在F(time..)栏任意填写一给定,在主界面右点然后使用“measure"进行某参数值的量测,进行仿真判断输出变量设置,完成后改回零值。
5、创建输出状态变量:my_angle, my_positionbuild ->state elements ->state varilable ->new:在name栏内填写“my_angle”。
在F(time..)栏后点击按钮,创建函数AZ(.ball_beam.beam.cm),ok退出。
图1 两轮机器人(1997—),女,四川什邡人,硕士研究生。
研究方向:机器人。
图2 简化的两轮机器人 运动学模型、v y 、v z 是平面内机器人在各个坐标轴上的分量,车体重心与底盘轴的距离,m 为机器人的总重量,θ为机器人的倾斜角度,θ·l 为左轮的角速度,θ·r 为右轮的角速度,为机器人左右轮速度不一致导致的航偏角,R 为车轮半径。
左右轮的前进速度分别为:lR θ −= rR θ −= 机器人的前进速度为:2rl v v +=()() +−−+++r l z r l z 2mR +m R m f J R mR m R m f J R 2mR +m l R 2+J 4444444222222l 2图3 模糊PID控制原理框图图4 模糊PID子模块图5是在MATLAB中设置的模糊规则。
模糊规则以模糊语言的形式描述人们的知识和经验,以规定的形式反映专家的经验和知识集。
一般情况下,模糊规则以“If条件then 结果”的形式,将模糊输入语言变量转化为模糊输入语言变量。
该形式化表示的模糊规则在很大程度上符合人们通过自然语言对知识进行描述的习惯[13]。
模糊规则一般会影响模糊PID的最终控制效果,所以模糊规则的选择十分重要。
引入模糊PID控制的目的是根据制定的模糊规则得到3个参数的修正值,这样PID控制器就能根据系统响应主动调整参数,可提高系统的动态响应性能和鲁棒性。
图5 模糊规则4 联合仿真和系统分析不同的模糊规则会影响模糊PID的控制效果,所以笔者在仿真实验中选用3种不同的模糊规则进行比较。
实验的大致步骤:利用ADAMS和MATLAB/SIMULINK联合仿真,从ADAMS中导出两轮机器人的机械系统,然后用MATLAB/ SIMULINK将其打开,在SIMULINK中搭建仿真环境。
4.1 联合仿真系统设计ADAMS和Matlab的联合仿真过程如下:在ADAMS/ View中建立两轮机器人简化模型,包括机体、车轮和路面,因为建模时将机器人的电机、驱动等部件略去,所以会在左右轮上施加一定的力矩来驱动机器人运动。
基于ADAMS与MATLAB的倒立摆联合仿真实验5篇第一篇:基于ADAMS与MATLAB的倒立摆联合仿真实验基于ADAMS与MATLAB的倒立摆联合仿真实验一、实验目的在传统的机电一体化研究设计过程中,机械工程师和控制工程师虽然在共同设计开发一个系统,但是他们各自都需要建立自己的模型,然后分别采用不同的分析软件,对机械系统和控制系统进行独立的设计、调试和试验,最后进行机械系统和控制系统各自的物理样机联合调试,如果发现问题又要回到各自的模型中分别修改,然后再联合调试,显然这种方式费时费力。
基于多领域的建模与联合仿真技术很好的解决了这个问题,为机械和控制系统进行联合分析提供了一种全新的设计方法。
机械工程师和控制工程师就可以享有同一个样机模型,进行设计、调试和试验,可以利用虚拟样机对机械系统和控制系统进行反复联合调试,直到获得满意的设计效果,然后进行物理样机的建造和调试。
ADAMS与MATLAB是机械系统仿真和控制系统仿真领域应用较为广泛的软件,其中ADAMS为用户提供了强大的建模、仿真环境,使用户能够对各种机械系统进行建模、仿真和分析,具有十分强大的运动学和动力学分析功能;而MATLAB具有强大的计算功能、极高的编程效率及模块化的建模方式,因此,把ADAMS与MATLAB联合起来仿真,可以充分将两者的优势相结合,将机械系统仿真分析同控制系统设计有机结合起来,实现机电一体化的联合分析。
本实验以倒立摆为例,进行ADAMS与MATLAB的联合仿真,对倒立摆的运动性能和运动规律进行分析。
二、实验方法软件环境:MD ADAMS R3,MATLAB R2009b 2.1 建立倒立摆的动力学模型启动ADAMS/View模块弹出如图1所示对话框,建立小车及摆杆模型。
首先选择“Create a new model”选项,创建一个新的模型,将该文件保存在相应的文件夹下,本实验将结果保存在E:daolibai_adams文件夹下,将文件名取为“daolibai_adams”,其余选项保持默认。