三自由度机械臂的三维设计

三自由度机械臂的三维设计三自由度机械臂的三维设计背景底座背景写本篇文章的时候只是模型设计完成以及部分零件进行了采购,最终是否能实现不能确定。继续之前的智能车制作,我的想法是一个多功能的智能小车它至少得有手有眼吧,所以继摄像头云台的制作结束后我又进行了机械臂的设计,最初对于机械臂的了解真的是非常的少,当时的想法是一个关节一个舵机呗,大概是这样:但是我觉得这样有点丑,而且这样的话用的舵机也不少,不是很物美价廉,所有我…

大家好,又见面了,我是你们的朋友全栈君。

背景

写本篇文章的时候只是模型设计完成以及部分零件进行了采购,最终是否能实现不能确定,某些图片过于辣眼,请多担待。
继续之前的智能车制作,我的想法是一个多功能的智能小车它至少得有手有眼吧,所以继摄像头云台的制作结束后我又进行了机械臂的设计,最初对于机械臂的了解真的是非常的少,当时的想法是一个关节一个舵机呗,大概是这样:在这里插入图片描述
但是我觉得这样有点丑,而且这样的话用的舵机也不少,不是很物美价廉,所有我又找到了这种结构:
在这里插入图片描述
这个看起来就很不错了,之后又查了些其他的机械臂,发现结构都是大同小异的,基本上就分成上边那两种,最后我选择了第二种。
机械臂的材料我准备用切割的2mm不锈钢板和一些标准件(我认为能在淘宝上直接买到的,并且有尺寸的就是标准件。)
最终设计出模型:
在这里插入图片描述

底座设计

首先是平面旋转的问题,从图片上根本看不出是个什么样的结构,所以只能是自己找,说到这里不得不说淘宝是一个好东西,最后我找到了这个:
在这里插入图片描述
真是踏破特写无觅处,得来全部费功夫,最后选择了一款尺寸差不多的,孔是通孔,可以用来放置螺栓,并且内外环都有孔,妥妥就是为平台设计的。
在这里插入图片描述
这样我们的底座问题就解决了,只需要固定一下,然后加上舵机就好了,模型并没有渲染或者上材质,看懂就好了,这里用了一个舵机,产生一个自由度。
在这里插入图片描述
在这里插入图片描述

机械臂设计

这里用到一些机械原理的知识,我画了一个结构简图帮助分析,在这里插入图片描述
其中紫色圆圈是与底座相连接的固定点,红色和黑色的线表示主动的杆,绿色线表示从动,我们先看绿色线,这里有两个三角形,三角形我们都知道形状是稳定的,同时还能看出有两个四边形,现在我把它单独画出来
在这里插入图片描述
角2角3都是三角形的角,所以固定不变,而角1的两条边也是固定在底座上的,所以角1也不变,再通过平行四边形定理,我们很容易的就能将三个角放到一起,最后通过我们的设计将这三个角的总和设为180°,这样设计有什么好处呢,好处就是角3的下边永远是与水平线保持180°,也就是永远平行于平面。当然,如果有特殊的需求,比如要与平面保持45°角,可以相加成135°或者225°,原理都是一样的。
看懂了从动部分,主动杆部分就很简单了,红色部分就是一个平行四边形,黑色部分就是一个杆,最后我们做出了成品,现在看这个图是不是就感觉很熟悉了,完全符合前边的结构简图。在这里插入图片描述

关节连接方式

说实话这里也把我难住了,本来我是想用卧式轴承座和法兰座进行连接的,事实证明可以是可以,不过会显得很臃肿,很累赘,而且会大大的增加机械臂的重量,查了查百度发现没有,最后只能寄托于淘宝了,看看别人怎么弄的
在这里插入图片描述
真就只用一个轴承呗,转是肯定能转的,但是怎么防止零件轴向移动我是一点也没看出来,能看出这是一个挡边轴承,自己也试验了一下,发现无论怎么安装,零件的另一端都是都是活动的,因为看不到细节,所以我也就放弃了,最后想到了一个老赖的方法,卡簧,这样灵魂就有了,请原谅我及其不严谨的画风,要问原因就是懒。
在这里插入图片描述
这样就能保证两个关节的灵活转动,而且没有轴向移动了。

底座与机械臂的连接方式

这里因为要承受竖直方向上的力,而且如果机械臂抓取东西后这里收到的力会更大,所以我没有选择让舵机直接承受所有的力,而是选择了一个立式轴承座+光轴法兰座的方式
在这里插入图片描述
大概就是这个样子,也没有什么原理可以讲的样子

效果

众所周知,solidworks做动画强的一匹,所以我并没有做动画,只进行了鼠标的拖拽
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134159.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ringbuffer 无锁队列_javabytebuffer使用

    ringbuffer 无锁队列_javabytebuffer使用一、简介1、循环缓冲区的实现原理环形缓冲区通常有一个读指针和一个写指针。读指针指向环形缓冲区中可读的数据,写指针指向环形缓冲区中可写的缓冲区。通过移动读指针和写指针就可以实现缓冲区的数据读取和写入。在通常情况下,环形缓冲区的读用户仅仅会影响读指针,而写用户仅仅会影响写指针。如果仅仅有一个读用户和一个写用户,那么不需要添加互斥保护机制就可以保证数据的正确性。如果有多个读写用户访问环形缓冲区,那么必须…

    2022年9月4日
  • android P系统访问http请求最简单解决方案

    在sdk28也就是P系统请求是http协议的话会报错:java.net.UnknownServiceException:CLEARTEXTcommunication**notpermittedby**是我的包名这是因为Google在sdk28做了限制加强了安全为保证用户数据和设备的安全,Google针对下一代Android系统(AndroidP)的应用程序…

    2022年4月8日
  • jquery删除添加输入文本框

    效果体验:http://hovertree.com/texiao/jquery/67/效果图:参考:http://hovertree.com/h/bjaf/traversing_each.htm代码如

    2021年12月24日
  • 时间复杂度 计算_一个算法的时间复杂度为

    时间复杂度 计算_一个算法的时间复杂度为时间复杂度分析、计算时间复杂度的速度

    2022年10月28日
  • PSPNet介绍-语义分割

    PSPNet-PyramidSceneParsingNetwork核心模块是金字塔池化模块(pyramidpoolingmodule),它能够聚合不同区域的上下文信息,从而提高获取全局信息的能力。实验表明这样的先验表示(即指代PSP这个结构)是有效的,在多个数据集上展现了优良的效果。1.pyramidpoolingmodule该模块融合了4种不同金字塔尺度的特征,第一行…

    2022年4月5日
  • DirectX修复工具使用技巧之二——手动修复C++创建失败的文件

    DirectX修复工具使用技巧之二——手动修复C++创建失败的文件最后更新:2021-2-25随着V4.0正式版的发布,近来有部分用户来咨询如何解决C++文件创建失败的问题。在此我将以解决最常见的C++2015-2019文件创建失败为例,向大家演示一下在线修复的方法,其他C++或文件的方法大同小异。此次操作以Windows7为例,其他系统相应参考即可。首先,如果希望程序能手动在线修复创建失败的失败,请首先确定您使用的V4.0.2版或更高版本,老版本不支持此功能。查看程序版本的方式可以把鼠标放在DirectXRepair.e…

    2022年6月8日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号