文章目录
- 1.1 MATLAB简单介绍
- 1.2 机器人的简单介绍
- 1.3 机器人组成
- 1.3.1 机械部分
- 1.3.2 控制和传感部分
- 1.4 建模与仿真
- 1.4.1 简单的电路系统建模与仿真
- 1.4.2 子系统及自制模块
1.1 MATLAB简单介绍 MATLAB 是集科学及计算、图像处理、窗口可视化开发、建模仿真等功能于一身的强大开发平台,是每个工科必须掌握的技能之一。
MATLAB 软件默认窗口有:Command Window(命令窗口)、Command History(命令历史窗口)、Current Folder(当前文件夹窗口)、Workspace(工作空间窗口)
- 强大的工具箱,功能丰富,使得 MATLAB 的应用领域扩展极为广泛。
- 绘图功能与计算结果的可视化
- 基本语法和规则,网上随便搜索下“MATLAB 入门”,多看几篇文章或者书籍就可以,这里不再赘述,想看原书的可以直接购买《用 MATLAB 玩转机器人》–化学工业出版社。
- 使用过程中对函数等不明白,可以使用"help function-name" 或者“doc 函数名"来获取帮助,或者直接上网搜索
eg 1.1 绘制饼状图
eg 1.2 绘制方程组x = [10 20 30 40]; % 分别占比为 10% 20% 30% 40%
explode = [0 1 0 0]; % 突出显示第二个元素
pie(x,explode) % 按各元素所占比例绘制饼状图
{ x = s i n ( t ) y = c o s ( t ) z = t \begin{cases} x = sin(t) \\ y = cos(t) \\ z = t \end{cases} ??????x=sin(t)y=cos(t)z=t?
eg 1.3 simulink 建模绘图并仿真t = 0: pi/100 : 6*pi; % 设定时间范围和步长
x = sin(t);
y = cos(t);
z = t;
plot3(x,y,z,’-b’,‘LineWidth’,4) % 绘制曲线
grid on % 曲线加网格
axis square % 坐标显示样式
文章图片
simulink的模型建立参考simulink入门2–机器人控制系统仿真
这里提一句,
plot(x,y)
当 x, y 是同维矩阵时,则以 x, y 对应的列元素为横、纵坐标分别绘制曲线。曲线的条数等于矩阵的列数。1.2 机器人的简单介绍 【Matlab|用MATLAB玩转机器人-第1章 认识MATLAB】机器人发展分为三个阶段:
第一代机器人,只有记忆、存储能力的“示教再现”型机器人。按照既定的程序进行重复工作,对周围环境没有感知和反馈能力。
第二代机器人,可以实时处理通过视觉、力觉、触觉获知的外界信息。
第三代机器人即现在的“智能机器人”,具有自己的逻辑思维、判断、决策的能力,能够自主的采集、判断和处理信息,自主地进行工作。
按照功能分类,主要分为工业机器人和非工业机器人两大类。
1.3 机器人组成 1.3.1 机械部分 机械部分主要分为机械结构和驱动系统。
- 机器人的自由度:指控制和确定机器人的各部位在空间的位置和姿态时所需要的独立运动参数的数目。
- 机器人的坐标系:
① 全局参考坐标系,通常意义上的世界坐标系,不随着机器人位姿的变化而变化,客观世界的坐标系。用来定义机器人相对于外部其他物体的运动轨迹。
② 关节参考坐标系,建立在关节上的坐标系,用来描述机器人的每一个独立运动的关节。
③ 工具参考坐标系,建立在机器人末端工具上的坐标系,描述机器人的手部末端相对于固定末端执行器上的腕部关节的运动。 - 机器人的驱动系统,主要有液压驱动、气压驱动和电气驱动,通常要求驱动系统具有功率大、体积小、质量轻、稳定性好等特点。
- 机器人的控制部分
控制系统是机器人的主要模块,决定这机器人的功能和性能,主要完成工作如下:
① 记忆功能
② 示教功能
③ 位置伺服控制
④ 故障诊断与安全保护功能 - 机器人的传感部分
分为感受系统和机器人与环境交互系统。感受系统由机器人的内部传感器和外部传感器模块组成,分别获取机器人身体内部和外部环境的各种信息;机器人与环境交互系统是是实现机器人与其他机器人或者外部设备相互联系和协调的系统。
正是因为传感器,机器人的功能才能越来越强大,具备许多的能力。
eg3.1 简单的建模与仿真
文章图片
根据电路的基本理论,建立途中的关系式如下:
(3-1) U r ( t ) = U R ( t ) + U L ( t ) + U C ( t ) U_r(t)=U_R(t)+U_L(t)+U_C(t) \tag{3-1} Ur?(t)=UR?(t)+UL?(t)+UC?(t)(3-1)
(3-2) { U L ( t ) = L × d i ( t ) d t U R ( t ) = i ( t ) × R i ( t ) = C × d U c ( t ) d t \begin{cases} U_L(t)= L ×\frac{\mathrm{d} i(t)}{\mathrm{d} t} \\ U_R(t)= i(t) × R \\ i(t) = C × \frac{\mathrm{d} U_c(t)}{\mathrm{d} t} \end{cases} \tag{3-2} ??????UL?(t)=L×dtdi(t)?UR?(t)=i(t)×Ri(t)=C×dtdUc?(t)??(3-2)
联合两式,整理后得
(3-3) L C d 2 U c ( t ) d t 2 + R C d U c ( t ) d t + U c ( t ) = U r ( t ) LC\frac{\mathrm{d^2} U_c(t)}{\mathrm{d} t^2} + RC \frac{\mathrm{d} U_c(t)}{\mathrm{d} t} + U_c(t) = U_r(t)\tag{3-3} LCdt2d2Uc?(t)?+RCdtdUc?(t)?+Uc?(t)=Ur?(t)(3-3)
继续变形得到
(3-4) U ¨ c ( t ) = 1 L C [ U r ( t ) ? R C × U ˙ c ( t ) ? U c ( t ) ] \ddot U_c(t) = \frac{1}{LC}[U_r(t) - RC×\dot U_c(t)-U_c(t)]\tag{3-4} U¨c?(t)=LC1?[Ur?(t)?RC×U˙c?(t)?Uc?(t)](3-4)
在simulink中绘制模型如下:
文章图片
点击仿真按钮后,获得如下仿真结果(双击示波器看曲线)
文章图片
1.4.2 子系统及自制模块 查看文章Matlab的Simulink系统中如何创建或封装子系统
推荐阅读
- 最优化问题|改进交叉算子的自适应人工蜂群黏菌算法
- matlab|嵌入均衡池的黏菌优化算法
- 最优化问题|加入领导者的黏菌优化算法
- MATLAB图形界面|基于Matlab的汽车出入库计时计费系统
- Matlab旅程|MATLAB的结构化程序设计
- matlab 内存管理 清理内存
- matlab中使用colormap没有效果