MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(1) SolidWorks模型的导入

  • MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(1) Solidworks模型的导入
    • 1 SolidWorks模型
    • 2 SolidWorks模型导入
      • 2.1 安装SimMechanics Link
      • 2.2 SolidWorks导出模型
      • 2.3 Matlab导入模型
    • 3 后记

MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(1) Solidworks模型的导入

以前做四旋翼无人机仿真的时候动力学模型会直接用人家推好的公式,然后设计控制器也是基于这样的公式模型,和实际有非常大的差别,这样的仿真对于算法可行性和逻辑验证还能使用,因此希望得到更接近于真实的仿真,刚好最近学习到了MATLAB Simulink里面的多刚体仿真,在高版本的MATLB的Simulink里面放到了Simscape里面,还自带可视化。
在仿真学习和使用的时候出现了很多困难,因此将准备写一系列博客记录自己的学习过程,将从SolidWorks的CAD模型开始到Simulink控制仿真。
MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(2) Simulink模型调节.
MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(3) 无人机控制器设计.
MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(4) 串级姿态控制.

1 SolidWorks模型

首先需要用Solidworks搭建一个简单的四旋翼无人机模型,也可以去网上下载,但是不建议,笔者曾经使用过DJI M100无人机的官方模型,但是导入到MATLAB里面后发现零件数量太多,而且很多连接关系有问题,需要在导入到MATLAB后自己调节,很不适合初学者学习,因此推荐自己简单制作一个,最简单的无人机模型可以只使用9个零件组件装配体(1个身体+4个机臂+4个桨叶),桨叶可以直接用方形木块代替,因为仿真里面的空气动力是需要自己添加的。
在自己制作模型装配的时候需要注意好除了机翼可以绕一个轴旋转外,其他的连接都是不能旋转的,也就是至少需要3个约束才能固定,这些零件连接关系很重要,因为这些连接关系奖后影响导入到MATLAB后各个部分的连接结构,很多网上的模型就是因为外形虽然没错,但是连接关系有问题所以不能直接用。
笔者简单用18个零件搭建了一个装配体模型,注意z轴朝下,坐标系如下图所示,机身中心(或者机身零件)需要在原点,这些需要在SolidWorks中调节好,因为导入到MATLAB里面后坐标系将不好调节,这里使用的是X型布局,X型和十字型布局将影响仿真的动力分配,最好按照和笔者相同的方法配置,材质需要在SolidWorks中指定,否则仿真时会因为没有质量报错。建议材料选取碳纤维,机臂,机身最好中空,否则质量会过大,和实际无人机差别较大。

2 SolidWorks模型导入

笔者使用的是SolidWorks2018,MATLAB 2016a,理论上版本不是太老都可以,使用MATLAB的SimMechanics Link可以将SolidWorks模型转化为可以导入Simulink的文件,推荐以下博客:
https://blog.csdn.net/qq_29159273/article/details/80553726.

2.1 安装SimMechanics Link

根据MATLAB版本和SolidWorks版本下载对应的SimMechanics Link
www.mathworks.com/products/simmechanics/download_smlink.html

下载好了用管理员打开MATLAB,转到下载目录(不需要解压),依次使用以下命令
install_addon(‘smlink.r2016a.win64.zip’)
smlink_linksw
regmatlabserver
就安装好了

2.2 SolidWorks导出模型

首先要设置启动SimMechanics Link插件


然后导出,记得选择第二个(高版本SolidWorks和低版本SolidWorks这个插件的选项的位置不一样,多找一找,笔者当时找的快崩溃了)

这样一来就得到了xml文件,假设叫quadrotor.xml

2.3 Matlab导入模型

新建一个文件夹放下刚才SolidWorks导出的所有文件,然后MATLAB转到相同路径,输入
smimport(‘quadrotor.xml’);

这样导入的模型还不能直接使用,需要很多微调,将在后面的博客写出。
目前还在仿真调试,没有大的问题会将xml公开

3 后记

本来一直调不好,已经准备放弃,没想到最好发现是转动惯量参数写错了,不得不说SimScape还是非常强大的,下面这篇博客也很好,学习了不少
https://blog.csdn.net/ReadAir/article/details/104755710.
模型详见:
https://github.com/mkb9559/Simscape-Quadrotor
Demo视频.
最近更新了第二代模型,可以参考:
MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(5) F250旋翼仿真搭建.

MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(1) SolidWorks模型的导入相关推荐

  1. MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(3)无人机控制器设计

    MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(3) 无人机控制器设计 MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(3) 无人机控制器设 ...

  2. MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(2) Simulink模型调节

    MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(2) Simulink模型调节 MATLAB Simmechanics/Simscape四旋翼无人机控制仿真(2) Sim ...

  3. 【飞行器】基于matlab四旋翼无人机控制仿真【含Matlab源码 2238期】

    ⛄一.四旋翼飞行器简介 0 引 言 四旋翼飞行器由于具有可垂直起降.机动性强.操作方便等诸多优点,在军事和民用场合得到广泛应用,从而成为众多学者的研究热点.四旋翼飞行器是具有四输入.六输出的欠驱动.非 ...

  4. 【无人机】基于Matlab的四旋翼无人机控制仿真

    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信.

  5. 四旋翼无人机仿真之hector_quadrotor无人机(ROS + Gazebo)(三)传感器数据读取与复现(IMU、GPS)

    系列文章目录 文章1:四旋翼无人机仿真之hector_quadrotor无人机(ROS + Gazebo) 文章2:四旋翼无人机仿真之hector_quadrotor(二)键盘teleop_twist ...

  6. 四旋翼无人机仿真之hector_quadrotor无人机(ROS + Gazebo)(一)

    这里写自定义目录标题 应用环境 hector_quadrotor 功能包结构简介 hector_quadrotor 功能包安装 1. 安装所需依赖库 2. 下载.安装hector_quadrotor ...

  7. matlab自带四旋翼算例asbQuadcopter使用心得

    程序启动 在指令行输入asbQuadcopterStart 打开工程文件,三个打开文件分别为asbQuadcopter simulink模型,仪表盘和实时动画 模型组成 主要应用模块是指令模块.传感器 ...

  8. 基于串级 PID 控制算法的四旋翼无人机控制系统设计与实现

    1.内容简介 略 489-可以交流.咨询.答疑 2.内容说明   无人机,英文名称UAV C Unmanned Aerial Vehicle,是一种特殊的飞行器, 可以按照预先设定的轨迹进行各种运动, ...

  9. 基于PID控制的四旋翼飞行器仿真(Matlab代码实现)

  10. Simulink四旋翼飞行器仿真建模

    1.函数 2.仿真模型

最新文章

  1. 面了一个大佬,一看就背了很多面试题
  2. 八皇后算法python_Python学习二(生成器和八皇后算法)
  3. LYNC2013部署系列PART10:后端高可用部署
  4. class 命名规范
  5. 9-[记录操作]--数据的增删改,权限管理
  6. 实现背景透明的方法,兼容ie6/7/8等浏览器
  7. MYSQL统计行数时到底应该怎么COUNT
  8. java面试 谈谈jvm内存结构
  9. Android开发指南(41) —— Searchable Configuration
  10. python3+ selenium3开发环境搭建-手把手教你安装python(详细)
  11. 关于在自己的程序中使用其它窗口的菜单
  12. vue-router 中router-view不能渲染
  13. Rhythmk 一步一步学 JAVA(9) JAVA 基础笔记[枚举,...]
  14. python简单代码-Python中几个非常神奇的代码的简洁,方便,高效!
  15. Drools规则引擎之动态规则
  16. java 经纬度的距离计算工具包
  17. 电信物联网平台对接教程
  18. 6-2 折半查找的实现 (10 分)
  19. NBA篮球运动员大数据分析决策支持系统
  20. 全产业链落实循环减碳实践 宝马在华持续推进绿色转型

热门文章

  1. iOS经典讲解之Apple Pay开发
  2. links.php是病毒吗,发现了第一只php病毒PHP.Pirus
  3. ATK-SIM900A入门
  4. 在计算机领域黑箱,探究黑箱的认知革命
  5. HCIP-Cloud Service Solutions Architect
  6. zabbix开启网页报警声音方法:网页也可以有报警声音(46)
  7. oracle卸载步骤图解,oracle卸载步骤
  8. 恒力弹簧设计及寿命预测
  9. linux windows凤凰,凤凰系统率先升级内核到Linux4.9,支持更多新硬件
  10. python实现钉钉群自动警报