用于微型四轮驱动的 6T 小齿轮原型和使用 MATLAB 的 FEM 结构分析

   2023-03-08 学习力0
核心提示:介绍我使用迷你 4WD 套件使用 Raspberry Pi 制作机器人汽车。定制零件丰富且方便,因为它们在附近的商店很容易买到。但是,由于Mini 4WD的速度非常快,因此在低速时很难控制速度。因此,我使用 3D 打印机制作了自己的 6T 小齿轮,并尝试改变齿轮比。 成型小齿

介绍

我使用迷你 4WD 套件使用 Raspberry Pi 制作机器人汽车。
定制零件丰富且方便,因为它们在附近的商店很容易买到。
但是,由于Mini 4WD的速度非常快,因此在低速时很难控制速度。
因此,我使用 3D 打印机制作了自己的 6T 小齿轮,并尝试改变齿轮比。 ミニ四駆用6Tピニオンギアの試作とMATLAB を使ったFEM構造解析
成型小齿轮的强度也存在问题,因此我们改进了形状。
在这里,我们将尝试使用 MATLAB 进行 FEM 结构分析。

使用 3D 打印机制作的 6T 小齿轮原型

迷你四驱传动比

通过组合反转齿轮和正齿轮可以改变传动比。

传动比 反向齿轮 正齿轮
3.5:1 浅蓝 黄色
3.7:1 绿 黄色
4:1 黑色的 乌苏卡
4.2:1 红色的 乌苏卡
5:1 蓝色的 苍黄

如果你使用标准的Mini 4WD 8T小齿轮,最慢的齿轮比是5:1,但如果你使用6T小齿轮,它会是5*(8/6):1 ≒ 6.7:1。

3D模型

在左侧的形状中,旋转过程中的负载有时会在凹槽之间破裂。

立体光刻 3D 打印

材质 可水洗树脂
ミニ四駆用6Tピニオンギアの試作とMATLAB を使ったFEM構造解析

原型小齿轮的旋转运动

ミニ四駆用6Tピニオンギアの試作とMATLAB を使ったFEM構造解析

使用 MATLAB 进行 6T 小齿轮结构分析

使用的工具

演示文件

查看我创建的实时脚本演示GitHub发布到

定义解析表

%Analysis Table
tmp = {
        'Title'  'StlFile'  'YoungsModulus'   'PoissonsRatio'   'FixedFaceNo' 'LoadFaceNo'  'Preassure'  ;   
         'Type1 Teeth'  'pinion_gear_6t_1.stl'   1e9 0.3 [70 69] [41 41]  1.5e7 ;
         'Type2 Teeth'  'pinion_gear_6t_2.stl'   1e9 0.3 [105 77]  [41 41] 1.5e7    ;
         'Type1 Hole'  'pinion_gear_6t_1.stl'   1e9 0.3 [54] [53]  1e7 ;
         'Type2 Hole'  'pinion_gear_6t_2.stl'   1e9 0.3 [54]  [55] 1e7   ;
       };
AnalysisTable = cell2table(tmp(2:end,:));
AnalysisTable.Properties.VariableNames = tmp(1,:);

AnalysisNo = [1:4]; %Analysis No
N=length(AnalysisNo);
Tbl = AnalysisTable(AnalysisNo,:) 

分析模型创建

for i=1:N 
    model(i) = createpde('structural','static-solid');
    importGeometry(model(i),Tbl.StlFile{i});
    generateMesh(model(i));
end

在 3D 模型上显示人脸标签

[s,tbl_i]=unique(Tbl.StlFile);
for i=[tbl_i]'
    figure;
    pdegplot(model(i),'FaceLabels','on','FaceAlpha',0.5);
    title(Tbl.Title(i));
    view(30,30);
end

ミニ四駆用6Tピニオンギアの試作とMATLAB を使ったFEM構造解析

ミニ四駆用6Tピニオンギアの試作とMATLAB を使ったFEM構造解析

材料结构属性和载荷设置

for i=1:N
    structuralProperties(model(i),'YoungsModulus',Tbl.YoungsModulus(i), ...
                           'PoissonsRatio',Tbl.PoissonsRatio(i));
    structuralBC(model(i),'Face',Tbl.FixedFaceNo{i},'Constraint','fixed');

    structuralBoundaryLoad (model(i),'Face',Tbl.LoadFaceNo{i},'Pressure',Tbl.Preassure(i));
end

运行分析

for i=1:N
    result(i) = solve(model(i));
end

绘制组件位移

figure;
PlotCol=2;
for i=1:N
    subplot(ceil(N/PlotCol),PlotCol,i);
    pdeplot3D(model(i),'ColorMapData',result(i).Displacement.ux);
    title([Tbl.Title(i) " X-displacement"]);
    colormap('jet');
    caxis([0 1e-4]);
end

ミニ四駆用6Tピニオンギアの試作とMATLAB を使ったFEM構造解析

绘制组件应力

figure;
for i=1:N
    subplot(ceil(N/PlotCol),PlotCol,i);
    pdeplot3D(model(i),'ColorMapData',result(i).VonMisesStress);
    title([Tbl.Title(i) " Stress"]);
    colormap('jet');
    caxis([0 5e7]);
end

ミニ四駆用6Tピニオンギアの試作とMATLAB を使ったFEM構造解析

参考信息

最后

AutoDesk Fusion360等可用于业余目的的CAD也具有CAE分析功能。 MATLAB 脚本似乎具有可以同时分析各种模式的优势。


原创声明:本文系作者授权爱码网发表,未经许可,不得转载;

原文地址:https://www.likecs.com/show-308626084.html

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 如何在Abaqus的python中调用Matlab程序
    目录1. 确定版本信息2. 备份python3. 设置环境变量4. 安装程序5. 调试运行参考资料Abaqus2018操作系统Win10 64位Python版本2.7(路径C:\SIMULIA\CAE\2018\win_b64\tools\SMApy\python2.7)2. 备份python将上述的“python2.7”文件夹复制出来,避免因操作错误
    03-16
  • 如何将极坐标数据转换为笛卡尔坐标系并绘制[MATLAB]
    如何将极坐标数据转换为笛卡尔坐标系并绘制[MAT
    你想做的事考虑根据与原点的距离 $r$ 和 $xy$ 平面上的角度 $heta$ 绘制数据 $P(r, heta)$。例如,雷达获取的信号包含有关目标范围 $r$ 和方位角 $heta$ 的信息。就是下图。在本文中,$heta$ 是从 $x$ 轴测量的角度。显示示例考虑创建依赖于 $r, heta$ 的虚拟
    03-16
  • 【MATLAB与机械设计】一维优化进退法确定初始区间
    【MATLAB与机械设计】一维优化进退法确定初始区
    在讨论一维搜索时,首先保证搜索区间函数具有单峰性,也就是在区间[a,b]中函数是凸函数,对于求极小值问题,函数值具有高—低—高的特性,在区间[a,b]上有唯一的最小值。1,方法的建立2.进退法确定搜索区间的程序框图3,根据上述的程序框图,编写的MATLAB程序
    03-08
  • ROS与Matlab系列:一个简单的运动控制 基于matl
    转自:http://blog.exbot.net/archives/2594Matlab拥有强大的数据处理、可视化绘图能力以及众多成熟的算法函数,非常适合算法开发;在控制系统设计中,Simulink也是普遍使用的设计和仿真工具。而ROS系统,则是一种新的标准化机器人系统软件框架。通过ROS,你
    02-10
  • matlab 遍历结构体struc的成员
    MATLAB中专门用于对结构数组的操作的函数并不多,通过 help datatypes获取数据类型列表,可以看到其中的结构数据类型的有关的函数,主要如表4.3.1所示。表4.3.1 结构数组的操作函数函数名             功能描述 deal                 把输入处
    02-09
  • 02-09
  • schroeder reverb matlab实现
    schroeder reverb matlab实现
    原理参考:Natural sounding artificial reverberation combFilter.m:function output = combFilter(delay, gain, input)fs = 48000;delaySample = int32(delayTime * fs / 1000);B = [1 zeros(1, delaySample - 1)];A=[1 zeros(1, delaySample - 2) -gain];
    02-09
  • C/C++中调用matlab引擎计算 matlab转c
    原帖地址:http://blog.sina.com.cn/s/blog_6adcb3530101cvot.html一,在linux环境使用matlab引擎必须先进行一些必要的配置1,matlab引擎依赖/bin/csh启动,所以不管你使用何种shell,都必须安装csh。**2,matlab引擎依赖的动态库文件目录必须在系统当前的
    02-09
  • MATLAB 图像放大/缩小,双线性插值
    MATLAB 图像放大/缩小,双线性插值
    半年前写过matlab最邻近插值的图像缩放,没怎么考虑边界问题。更早之前用Opencv写过双线性插值图像放大,不过写的比较混乱。所以这里用matlab重新再清楚的写一遍。 1 close all; 2 clear all; 3 clc; 45 m=1.8;%放大或缩小的高度 6 n=2.3;%放大或缩小的宽度 7
    02-09
  • 数据分析处理之PCA OLSR PCR PLSR(NIPALS)及其Matlab代码实现
    数据分析处理之PCA OLSR PCR PLSR(NIPALS)及其M
    传统的OLS(普通最小二乘)方法无法解决样本数据的共线性(multicollinearity)问题,如果你的数据样本中每个特征变量具有共线性,那么使用基于PCA的PCR和PLSR方法对数据样本进行回归建立模型将会是一个不错的选择。PCA是一种数据降维方式,但同时保持了原始数据
    02-09
点击排行