【联合仿真】Adams六关节机械臂与Matlab/Simulink的联合仿真(下)

本文详细介绍了使用Adams和Matlab/Simulink进行六关节机械臂的联合仿真的步骤,包括Adams机械系统导出、Matlab与Adams关联建立、Adams_sub参数修改及Simulink仿真启动。

Adams六关节机械臂与Matlab/Simulink的联合仿真(下)

接上文,上文讲到了建立好变量与测量单元之间的关联了,下面完成matlab/simulink的对接接口以及模型搭建


第一步. adams机械系统导出
  • 1 adams中点击插件 - Adams Controls - 机械系统导出

注:文件前缀自己命名,输入信号选择六个关节力矩分量,输出信号选择六个关节角和六个关节角速度, 目标软件选择MATLAB, 非线性, 求解器选择FORTRAN。

如果前面没有问题的话,则会adams的工作目录下生成四个文件,如图所示,分别是.adm, .cmd, .m, .txt文件


第二步 建立Matlab与adams的关联

  打开matlab,在命令行窗口下输入你的.m文件,例如我这里是Controls_Plant_test.,输入之后会显示你的输入输出变量是哪些,同时在工作区也能生成一系列变量,后面都会用到,不要动工作区的变量。

接着再在命令行窗口输入adams_sys, 启动仿真后,会出现以下界面。

注:不要在上面出现的slx文件中仿真,会出现错误,这里我们需要新建一个新的空白model,把adams_sys复制到新的slx文件中,在新的slx文件中添加输入输出模块即可。


第三步 修改adams_sub参数

  点击新模型中的adams_sub,再点击ADAMS Plant,开始设置参数,求解类型Solver type选择Fortran,表示动画显示,如果选择c++,则仿真结果不会产生动画效果,Interprocess option选择PIPE(DDE), Animation mode选择interactive,表示启动simulink仿真的时候同时启动adams,Simulation mode选择离散discrete,其余参数默认即可。


第四步 启动simulink仿真

  adams参数设置好之后,可以开始搭建其余的仿真模块,以下是我的搭的仿真模块,之前用的是PID控制角度,但效果不理想,故放弃PID控制,这里先做开环的控制来验证模型的正确性。

模型搭建好之后,启动仿真,这里仿真时间设为5s,固定步长,求解器auto。

启动simulink仿真之后,等待几秒后,adams开始启动,可以看到adams下面的进度条开始加载。

  他这里报出警告说 Arial字符没有找到,是文字显示的格式没有找到,这里不用管他,无伤大雅,不影响仿真。实在看不惯的可以在网上下载Arial字符,将他放在C:\Windows\Fonts下即可,以后再联合仿真启动adams时即不会再报出此类警告。

启动仿真之后,切换仿真视图为阴影模式,同时点击适合视图

  • 下面多了个错误警告,说我们仿真终止时间少于或者等于开始时间,这是错误的报错,不用管他,有时候adams会莫名其妙的报错。仿真结束后,adams自动关闭,可以在simulink中查看关节角和关节角度的曲线了。

  • 下图为第一二关节角和一二关节角速度的运动曲线,由于机械臂本身具有自重,而我对3456关节并未施加力矩,所以3456关节会乱动,为了验证仿真的正确性,我们比较机械臂的第一二关节角度和一二关节角速度,

在adams中对一二关节施加与simulink仿真中相同的关节力矩值,在后处理结果中查看第一二关节角和一二关节角度,可以看到,simulink显示的结果和adams显示的结果一样,故得知联合仿真成功。


总结

  至此,六关节机械臂adams与simulink的联合仿真就告一段落了,上面的工作说明我们的开环仿真是没有问题的,在此之后我会根据这次的仿真继续再在adams中做一个轨迹规划。本人知识有限,在这个过程中如有问题,敬请大家提问。

上一篇:Adams六关节机械臂与Matlab/Simulink的联合仿真(上): https://blog.youkuaiyun.com/ndjasdn/article/details/107812771.

在本项目中,我们主要探讨的是机械的控制方案仿真,这是一项基于Simulink平台的技术应用。SimulinkMATLAB环境下的一个图形化建模工具,广泛用于系统级的动态系统仿真和设计。以下是这个项目涉及的一些关键知识点: 1. **机械**:机械通常由关节组成,每个关节对应一个自由度,能够实现空间中的三维定位和定向。这种机械在工业自动化、机器人技术等领域有着广泛应用,如装配、搬运、焊接等。 2. **Simulink动力学模型**:在Simulink中构建的机械动力学模型反映了机械关节的运动规律和物理特性,包括质量、惯量、摩擦力、关节驱动力以及重力等因素。通过该模型,我们可以对机械的动态行为进行仿真分析。 3. **轨迹跟踪控制**:这是控制系统设计的重要部分,目标是让机械末端执行器按照预定的轨迹移动。常见的轨迹跟踪控制方法有PID控制、滑模控制、自适应控制等。在本项目中,可能涉及到不同控制策略的比较和实施。 4. **PID控制**:比例-积分-微分控制器是最常见的控制算法,通过调整比例、积分和微分三个参数,可以实现对机械的精确控制,以减小跟踪误差。 5. **滑模控制**:滑模控制是一种非线性控制策略,它能确保系统在任何扰动下都能快速且无稳态误差地跟踪期望轨迹,适合处理不确定性和时变系统。 6. **自适应控制**:自适应控制允许控制器根据系统的实时性能调整其参数,以应对系统模型的未知或变化特性,提高控制效果。 7. **仿真流程**:项目通常会包括建立模型、设定初始条件、选择控制策略、运行仿真并观察结果。通过仿真,可以评估不同控制方案在跟踪精度、稳定性、响应速度等方面的性能。 8. **结果分析优化**:仿真后的结果分析是项目的关键环节,通过对比不同控制策略的仿真输出,可以选择最优方案或者进一步优化控制参数,以达到更好的控制效果。 9. **代码生成硬件在环仿真**:在Simulink中,可以将模型转换为可执行代码,部署到实际的机器人控制器上进行硬件在环仿真,验证理论研究成果在真实环境中的性能。 这个项目涵盖了机器人学、控制理论和仿真技术等多个领域,通过深入学习和实践,可以提升对机械控制的理解和应用能力。
评论 34
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值