Hi3861 OpenHarmony 机械臂 (四)

        3轴舵机控制机械臂,成品的样子,用个夹子给夹在桌子边,就成了一个伴随工作的辅助工具。

        最初的目标是做个5轴驱动的机械臂,是这个样子的:

        但是我买的的舵机是20KG的,头太重,举起来很抖,很不稳定,然后就退而求其次,改为3舵机结构。

        在这里分享个经验,玩金属多轴机械臂,50块钱以下的舵机就不要买了,真是一分钱一分货,可以买个30多块钱的做为机械夹的控制部分。

        刚装好6轴结构,真的很酷,很重很有机械感,像头金属兽。但是驱动起来需要很大的动力,一个稍微好点的40KG舵机很贵,我一直想用最低成本做个耐用好用的机械臂,我尝试了多款舵机,低性能的舵机不仅控制精度不行,而且很容易坏,炸一次坏一个。

舵机尸体

        所以就别浪费钱了,我最开始买的松甲舵机一直随我用到最后,炸过好几次,虽然轴已经歪了,但是还能用,不是做广告,良心推荐。

        安装过程,耐心、细致点,然后一些必要的工具,尖嘴钳,镊子,螺丝刀。

        

        前面已经写了必要的代码,方便调试,在这个基础上,继续添加所需的功能,自己写代码就是好,可以随便改。

        再写代码之前先复习一下高中的数学知识,勾股定理:

        正弦函数    sin    a/c    ∠A的对边比斜边
        余弦函数    cos    b/c    ∠A的邻边比斜边
        正切函数    tan    a/b    ∠A的对边比邻边
        余切函数    cot    b/a    ∠A的邻边比对边
        正割函数    sec    c/b    ∠A的斜边比邻边
        余割函数    csc    c/a    ∠A的斜边比对边

        三角函数最重要的作用是能通过角度算出边长,通过边长算出角度。

        两条机械臂构成一个三角形,我们已知2条机械臂的长度,a = 后段机械臂的长度,b = 前段机械臂的长度,我们要到达的D点,设定D点相对于舵机的坐标dx,dy。

        通过D点的坐标求出c边的长度,然后知道了c的长度和a、b的长度就能求出,A、B、C的角度。

        我在这里列出一些公式算法:

        // 已知直角三角形abc中 C=90度,斜边c、a, 求 A 角度
        public int Solve_RT_AC_Angel(int al, int cl)
        {
            double l1 = al;
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值