玩转Matlab-Simscape(初级)-01-从一个简单模型开始学习之旅

**

玩转Matlab-Simscape(初级)- 01 - 从一个简单模型开始学习之旅

**


目录

    • 玩转Matlab-Simscape(初级)- 01 - 从一个简单模型开始学习之旅
  • 前言
  • 一、从模板开始建模
  • 二、建模一个简单的连杆
    • 2.1 建模
    • 2.2 生成子系统
  • 总结


前言

在产品开发中,多体动力学控制仿真是一种常见方法,本文从初学者的角度一点点解开应用Maltab simscape对多体进行仿真的面纱。写这篇博文是为后续做旋翼无人机的多体系统仿真打基础。欢迎各位小伙伴关注、赞赞、留言和收藏。


一、从模板开始建模

  1. 方法一:在matlab 命令行窗口中输入smnew新建一个simscape多体模型,如图所示。
    方法二:在命令行窗口中输入sm_lib打开simscape多体库,从里面选取所需的模块。
    方法三:在simulink窗口中搜索所需的模块。
    在这里插入图片描述

二、建模一个简单的连杆

2.1 建模

假设这个连杆是一个细长方体结构,两头有铰接点。按照下图连接各模块。
在这里插入图片描述

  1. **关于“Rigid Transform”:**定义了两个坐标系之间固定的三维刚体变换。变换的平移部分和旋转部分由两个独立的组件指定。可以自由组合不同的平移和旋转。端口B和F分别是表示基准坐标系和跟随坐标系的框架端口。该变换表示了在基准坐标系中跟随坐标系原点的位置以及轴的方向。
    双击该模块定义如下 在这里插入图片描述2. 关于“Brick Solid”:双击该模块,定义如下在这里插入图片描述3. 关于“Solver Configuration”:
    用于求解器的设置,必选模块
  2. 关于“World Frame”:
    提供对世界或地面坐标系的访问,这是一个在任何机械模型中预定义的唯一静止、正交、右手坐标系。世界坐标系是机械模型中所有框架网络的基础。一个模型可以包含多个“世界坐标系”块,但它们都代表同一个坐标系。端口W是一个标识为世界坐标系的框架端口。任何直接与W端口相连的框架端口也都被标识为世界坐标系。
  3. 关于“Mechanism Configuration”:
    设置应用于整个机器的机械和仿真参数,该机器是此块所连接的目标机器。在其“属性”部分中,可以为整个机构指定统一的重力加速度,并且还可以设置线性化变差。线性化变差指定了用于计算线性化数值偏导数的扰动值。端口C是一个框架节点,您可以通过机器任意框架节点的连线将其连接到目标机器上。

2.2 生成子系统

①选中“Brick Solid”和两个“Rigid Transform”,右键选择生成子系统,如下图所示:在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
②右键子系统,创建封装Mask,并定义变量参数,如下图所示
在这里插入图片描述
在这里插入图片描述
③双击子系统模块模块,对模块参数定义如下:在这里插入图片描述
④可视化视图:点击Run,如图所示
在这里插入图片描述
⑤保存为自定义块:
将该子模块新建为库,并保存在simulink库中,用于后续调用。


总结

以上就是今天分享的关于Matlab simscape 的基础内容,简单分享了Simscape搭建模型,创建子系统,修改定义参数等内容,为将来深入学习和使用simscape做铺垫。欢迎各位小伙伴关注、赞赞、留言和收藏。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/13034.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录算法训练营Day40 | 62.不同路径 63. 不同路径 II

代码随想录算法训练营Day40 | 62.不同路径 63. 不同路径 II LeetCode 62.不同路径 题目链接&#xff1a;LeetCode 62.不同路径 思路&#xff1a; 二维数组dp&#xff0c;简单 class Solution { public:int uniquePaths(int m, int n) {if( m1 || n1 ) return 1;vector<v…

2024年成都高新区支持企业申报国家、省级、市级大数据产业发展、新一代信息技术与制造业融合发展、工业互联网推广应用等试点示范项目申报对象条件和奖补

一、申报对象 &#xff08;一&#xff09;本政策支持注册地址、税收关系在成都高新区&#xff0c;具有独立法人资格的企业。 &#xff08;二&#xff09;管理规范&#xff0c;无不良信用记录&#xff0c;自觉遵守安全生产、环境保护等方面的法律法规&#xff0c;近三年未发生…

Git服务器(中心仓库(裸仓库))搭建

目录 前言&#xff1a;Git三大重要的区域 前言&#xff1a;SVN与Git的最主要的区别 搭建Git服务器 git init --bare初始化中心仓库(裸仓库) 前言&#xff1a;Git三大重要的区域 工作区&#xff1a;简单理解就是需要进行版本控制的某个文件夹(假设为test)这个文件夹有一些特…

元类结合__new__

__new__:用来生成骨架 __init__:骨架添加血肉 【一】类中的__new__ class MyClass(object):def __init__(self,name,age):print(f"给当前MyClass类的对象初始化属性的时候会触发__init__")self.name nameself.age age ​def __call__(self,*args,**kwargs):pri…

isinstance和issubclass的使用

isinstance() : 判断当前对象是否是某一个类的类型 issubclass() : 校验一个类是否属于另一个类的子类 class Person(object):... ​ ​ class Student:... ​ ​ stu Student() ​ person Person() ​ # 【一】isinstance() : 判断当前对象是否是某一个类的类型 print(is…

23.HashMap的put方法流程

一、put方法的流程图 二、put方法的执行步骤 首先&#xff0c;根据key值计算哈希值。然后判断table数组是否为空或者数组长度是否为0&#xff0c;是的话则要扩容&#xff0c;resize&#xff08;&#xff09;。接着&#xff0c;根据哈希值计算数组下标。如果这个下标位置为空&a…

第 397 场 LeetCode 周赛题解

A 两个字符串的排列差 模拟&#xff1a;遍历 s s s 记录各字符出现的位置&#xff0c;然后遍历 t t t 计算排列差 class Solution {public:int findPermutationDifference(string s, string t) {int n s.size();vector<int> loc(26);for (int i 0; i < n; i)loc[s…

合并K个升序链表

题目 解法一 优先级队列 思想 将每个链表中的一个节点存放到优先级队列中&#xff0c;本题采用小根堆&#xff0c;将小根堆中的根节点取出&#xff0c;插入到最终的链表中&#xff0c;并且将该节点在原链表中的下一个节点插入小根堆中&#xff08;需要向下调整&#xff09;&a…

【019】基于SSM+JSP实现的进销存管理系统

项目介绍 进销存管理系统是对企业生产经营中物料流、资金流进行条码全程跟踪管理&#xff0c;从接获订单合同开始&#xff0c;进入物料采购、入库、领用到产品完工入库、交货、回收货款、支付原材料款等&#xff0c;每一步都为您提供详尽准确的数据。有效辅助企业解决业务管理…

2024OD机试卷-找座位 (java\python\c++)

题目:找座位 题目描述 在一个大型体育场内举办了一场大型活动,由于疫情防控的需要,要求每位观众的必须间隔至少一个空位才允许落座。 现在给出一排观众座位 分布图 ,座位中存在已落座的观众,请计算出,在不移动现有观众座位的情况下,最多还能坐下多少名观众。 输入描述…

【机器学习】:基于决策树与随机森林对数据分类

机器学习实验报告&#xff1a;决策树与随机森林数据分类 实验背景与目的 在机器学习领域&#xff0c;决策树和随机森林是两种常用的分类算法。决策树以其直观的树形结构和易于理解的特点被广泛应用于分类问题。随机森林则是一种集成学习算法&#xff0c;通过构建多个决策树并…

kafka用java收发消息

用java客户端代码来对kafka收发消息 具体代码如下 package com.cool.interesting.kafka;import org.apache.kafka.clients.consumer.ConsumerConfig; import org.apache.kafka.clients.consumer.ConsumerRecord; import org.apache.kafka.clients.consumer.ConsumerRecords; i…

Microsoft 发布了 5 月份产品安全修复报告。

我们提请大家注意我们归类为趋势*的两个漏洞&#xff1a; CVE-2024-30051 和 CVE-2024-30040。 1. Windows 内核库 DWM 核心库中的 CVE-2024-30051漏洞 该漏洞与负责显示桌面窗口&#xff08;DWM&#xff09;的内核库中的权限升级有关。成功利用漏洞可讓攻擊者在沒有使用者互…

Python模块之Numpy(五)-- 排序

Sort排序 NumPy 的排序方式主要可以概括为直接排序和间接排序两种&#xff0c;直接排序是对数值直接进行排序&#xff0c;间接排序是指根据一个或者多个键对数据集进行排序&#xff0c;在 NumPy 中&#xff0c;直接排序经常使用 sort 函数&#xff0c;间接排序经常使用 argsort…

商品服务:SPUSKU规格参数销售属性

1.Object划分 1.PO&#xff08;Persistant Object&#xff09;持久对象 PO就是对应数据库中某个表中的一条记录&#xff0c;多个记录可以用PO的集合。PO中应该不报含任何对数据库的操作 2.DO(Domain Object) 领域对象 就是从现实世界中抽象出来的有形或无形的业务实体。 3…

mysql字段乱序 information_schema

select COLUMN_NAME from information_schema.columns where table_namecollect_column_info and table_schema nz; 返回ASCII排列 导致 sqoop import \ --connect "jdbc:mysql://your_host/collect" \ --username your_username \ --password your_password \ --t…

SPI通信(使用SPI读写W25Q64)

SPI通信协议 • SPI&#xff08;Serial Peripheral Interface&#xff09;是由Motorola公司开发的一种通用数据总线 • 四根通信线&#xff1a; SCLK:串行时钟线&#xff0c;用来提供时钟信号的。 MOSI:主机输出&#xff0c;从机输入 MISO:从机输出&#xff0c;主机输入 SS:…

faiss::gpu::runMatrixMult ... cublas failed (13)错误处理

我使用的是python3.8, torch1.11,cu113 解决方法是安装faiss-gpu1.7.3 我代码中出现这个错误尝试了使用pip安装faiss-gpu1.71&#xff0c;1.72。都没有用。 使用conda安装faiss-gpu的tar.bz2安装会存在找不到libfaiss.so的问题。 pypi官网还没有faiss-gpu1.7.3的版本&#xf…

Chrome查看User Agent的实战教程

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

Java中的数据类型与变量

引言&#xff1a; 哈喽&#xff0c;各位读者老爷们大家好呀,long time no see!这里是小堇Java小课堂&#xff0c;在本课堂中我们将继续分享Java中的数据类型与变量&#xff0c;标识符&#xff0c;关键字等知识&#xff0c;那我们启程咯&#xff01; 数据类型与变量 1.字面变量…