uArm,一个你的第三只手臂
uArm,一个你的第三只手臂

前  言

首先自我介绍一下,笔者目前从事的工作与很多的机械设备打交道,而且这些设备都是依靠伺服、气缸等进行运动。但是,这些设备都是国外的,即便是有国内的设备表现的也是很不稳定,同时精度也不是很够,个人感觉还是国内自动化设备不够发达。这难免会想到基础教育,类似Arduino、机械臂、机器人、在国外中小学已经开始进行实践,但是国内可能在大城市才有机会接触到,像笔者等从农村出来的娃,直到现在才发现自己的兴趣在此,但是目前自己只能在业余的时候进行学习开发。现在只能寄希望于自己的孩子能够早早的接触类似产品,培养孩子的兴趣!

类似uArm机械臂产品还有7Bot、Dobot等,目前可能最流行的也就这几家了吧,据知乎上爆料7Bot的创始人是从uArm项目中出来创业的。所以这两者之间还是有一定的继承性。不管任何产品都是从模仿开始进行技术积累而后进行创新发展。据我查阅这三家的网站,可能资料、软件最完备,因为从目前介绍的资料Dobot可以实现书写字体,绘画,激光雕刻等动作其中最重要的一个参数是其重复精度可以达到0.01mm,但是目前uArm的精度只能达到±5mm,可想这里相差还是很大的。也许我们这里uArm的设计者想要其实现的功能目标不一样。

开  箱

本次是我收到最快体验产品最快的一次,这次爱搞机发的是顺丰快递,好久没有体验这么快的快递了从深圳到北京只用了仅仅两天。并且在收快递时发现产品并没有自己想象那么大和重,大小只有A4纸大小,重量也就1kg左右。在网上搜索了一下,目前关于uArm的文章比较少,因此在这里给大家做一下开箱:

uArm,一个你的第三只手臂

uArm的盒子比A4纸稍微大一点,感觉不是很占地方。外面套着一个白色外套可以保证盒子不会被无意中打开,同时黑白配以及白色外套上的电路设计表明这里是一个科技产品。

uArm,一个你的第三只手臂

从旁边可以抽拉出盒子。

uArm,一个你的第三只手臂

移除外套之后可以发现一个鼓鼓的黑色纸盒,看来里面放着不少的东西,下面开箱。

uArm,一个你的第三只手臂

打开盒子之后发现里面竟然还有个袋子,考虑的比较贴心,大小正好能够把盒子放到袋子里面。

uArm,一个你的第三只手臂

手臂用塑料袋子包裹通过盒子叠起来的框架进行支撑,由于主体框架已经被组装起来,因此可以快速上手使用。盒子右侧下方通过盒子分别放置电源、气泵、支架。全部产品展示如下:

uArm,一个你的第三只手臂

贴心的是还准备的有螺丝刀。

uArm,一个你的第三只手臂

我这里单纯列这八颗螺丝的目的是让大家看看这几颗螺丝质量很好,不是我们普通使用的的螺丝。

uArm,一个你的第三只手臂

USB数据线为面条线,手感不错,同时接头都为金属材质,不是我们常见的塑料材质。

uArm,一个你的第三只手臂

这是四个腿,拿在手中很轻,看来使用的是铝合金,并且头部使用由橡胶垫防滑。整体感觉就是做工精致。这也是uArm产品宣传采用CNC加工。

外  观

uArm,一个你的第三只手臂

手臂外观,手臂拿在手里不沉,结构都是使用的是CNC加工的铝合金,加工精密,螺丝都很考究,这是我对这台设备的第一感觉,但是使用的是舵机,可能在精度上不是很高。

uArm,一个你的第三只手臂

两侧黑色的是伺服电机。

uArm,一个你的第三只手臂

这是吸嘴细节,吸嘴上部还有一个电机可以控制吸嘴进行180°的旋转。

uArm,一个你的第三只手臂

这里是数据线接口以及电源接口。数据线接口以及电源接口这个设计位置由于机械臂在旋转有可能出现气泵挡住线导致电源线接触不良,同时,几天的体验发现这两根线接头都比较紧,可能故意设计,因为机械臂在不停的运动。防止接触不良。

uArm,一个你的第三只手臂

底座,这里的设计固定还是挺好的,如果害怕不稳的话还有吸盘底座,可以更稳定。就怕设备发疯的时候容易烧坏电机。

uArm,一个你的第三只手臂

当我看到这个舵机的时候,心情就凉了,可能这个机械臂只能做个动作了。高难度可能不能完成了。

uArm,一个你的第三只手臂

两侧是舵机,以及走线情况。

体  验

拿到这台机械臂,我的小朋友都想借来玩玩,看来我周边的极客还不少。对于这台机械臂试用,你不写点代码,你都不好意思试用。所以本人必须得写点东西。在写东西的时候发现问题就来了,这台设备的控制协议,完全不知道是什么,从官网上都找不到,最后是联系到官方的客服才拿到资料,但是请注意这里的资料全是英文资料,并且只有一个文档。后来还是在例子文档中查找到几个例子,通过学习例子才实现控制机械臂。就是这样的过程也是通过一个漫长的过程,其中和一起试用的“刚者为王”进行一起交流才使得试用顺利进行。

目前官方的问题就是缺少些说明文件,比如如何通过代码实现机械臂运动、抓取、警报等等。以及可以Teaching的软件或者是APP、因为有些极客就是为了实现一些动作,或者画图,其实后来发现我自己编写的代码就是想实现Teaching实现一些代码动作。

试用第一步:使用官方的Uarm_Client.exe程序进行动作控制,首先说的是这个程序使用Java编写的,所以使用的时候还得安装Java的运行环境。

uArm,一个你的第三只手臂

发现了吧,英文界面,但是还是会使用的。极客起码是大学毕业吧,当然,还有不是但是初中文化都是可以认识的。哈哈

使用第一步,首先在Setting中选择COM端口,然后选择Connect,这时Connect就会变黄,证明连接OK,你可以点击RESET测试机械臂是否归位,只要连接上你就可以控制设备进行各个位置的移动,以及吸嘴的吸附和放开的动作。但是这里只是实现控制,大家可能动上几次就觉得没有啥意思了,因为我们想要的是机械臂的自动完成动作,那样看上去才是高大上。如果你有Leap Motion的话你可以通过Leap Motion进行动作控制,笔者这里没有就没有尝试了,京东上有卖,有兴趣可以购买玩。


试用第二步:

拿到产品经过上面软件的简单的测试后,就想着怎么控制机械臂运动,但是苦于没有协议,只能通过串口助手抓取协议,抓取后就发现都是数字代码,没有说明完全看不懂,通过串口助手发送下面的命令可以实现一两个简单动作,但是这远远不够呀。

下面是抓到的命令:

气嘴:吸附 F0 AA 1D 00 F7

          松开 F0 AA 1D 01 F7

初始化

F0 AA 1E 01 00 00 00 01 00 00 00 F7

如果移动位置的话命令有一大段,完全摸不到头脑,怎么办,一时的试用陷入僵境,不知道该怎么用了。后来厂家发过来Github的链接,通过查找找到一些例子代码,通过理解代码,才让我能够控制机械臂运动。因为自己会Arduino,所以就对各种例子进行代码烧入,发现《Getting Started》这个代码可以轻松实现运动,因此我的第二步试用,使用这个代码学习到的命令实现了设备Teaching 动作,可以让设备进行一些动作。但是这些动作都是通过命令首先获取到当前机械臂的位置坐标,然后把需要运动的位置分别烧录到机械臂中。这只是控制的第一步。后来经过编写代码实现输入Teach命令可以实现进入Teach模式,进行动作记录。然后通过输入命令move命令实现设备动作。

实现设备teach的代码段

+++++++++++++++++++++++++++++实现设备teach的代码段++++++++++++++++++++++++++++++

    if (readSerial == 't')
    {
      uarm.alert(1, 300, 100);//长响一声表示开始teaching
      for (int i = 0; i < 11; i++)
      {

        uarm.get_current_xyz();

       Teach_x_pos[i] = uarm.get_current_x();
        Teach_y_pos[i] = uarm.get_current_y();
        Teach_z_pos[i] = uarm.get_current_z();
        delay(5000);
        uarm.alert(i, 100, 100);//记录第几次,响几声

        Serial.print("The current location is ");
        Serial.print(i);
        Serial.print(Teach_x_pos[i]);
        Serial.print(" , ");
        Serial.print(Teach_y_pos[i]);
        Serial.print(" , ");
        Serial.print(Teach_z_pos[i]);

        Serial.println();
      }
    }

    if (readSerial == 'm')
    {
      for (int i = 0; i < 11; i++)
      {
        uarm.move_to(Teach_x_pos[i], Teach_y_pos[i], Teach_z_pos[i]);
        uarm.alert(2, 10, 100);//记录第几次,响几声
        delay(100);

      }
    }

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

试用第三步

进行上述的试用后发现还有一些小的问题没有实现,就是增加一些动作,以及动作编辑。这就得需要上位机进行编写了。还好之前自学过C#,也拿着C#编写过上位机,所以还是有点经验的,要不然串口通讯还是会把人搞死的。这里就是想实现Teaching动作的编写以及记录,方向定好了之后,首先开始编写,编写其实挺顺利的。但是在动作与动作之前的间隔时间上调试了很长时间,因为无法判断上一动作是否完成因此,无法知道什么时候发送第二次命令,发送重叠导致设备动作不正确,在调试的过程中出现了各种设备“抽风”,不过个人感觉还是很正常的。调试嘛!不过在这里要感谢媳妇的不杀之恩,因为这两天都在调试程序,没有时间陪儿子玩。(儿子是暑假才来京,一般是很少时间在一起的。)

听一位大神说,程序员用20%的时间思考怎么编写代码,15%的时间写代码,65%的时间在调程序。发现也确实是,自己用很长的一段时间再写代码。不过现在功能已经实现并能运动。但是成功之后发现个问题就是,Teaching的坐标最后设备并没有到达位置感觉有一定的误差,不知道为什么?感觉像是Offset值,但是测试几个值之后,不是。好在现在动作完成了。

uArm,一个你的第三只手臂

上图是我编写的一个软件的界面,目前实现的功能可以对机械手臂进行动作的Teaching,操作的步骤:

第一步:点击马达断电,这时就可以对移动手臂。

第二步:移动手臂到你想要的目标位置,然后点击获取位置,然后会在接收信息框接收位置坐标。

第三步:点击增加位置把当前获得的坐标位置添加到运行Step中。

第四步:点击你想要的动作,如吸嘴旋转、吸嘴吸附等动作。

第五步:保存运行step到文件中。

第六步:点击马达加电。

第七步:点击运行,机械臂就开始运动了。

注意串口开关要点两次才能连接上。

然后大家可以按照自己的想法进行移动机械手臂了。

然后大家想要更改的话可以下载修改。

代码下载

测   试

uArm,一个你的第三只手臂

为了测试这款机械臂的能力,笔者按照几个点位的Teaching使得机械臂写了个A字,重复了几次机械臂的定位还是比较准确的,但是在走直线的时候朝着某一个方向会固定出现弯折现象。也能达到标称的5mm内。

同时,机械臂在做旋转动作的时候会出现抖动的现象。

总   结

到了该总结的时候了,关注这款机械臂是在网络上看到其应用的相关视频,同时经过了解这款产品主要是针对国外进行销售,有一些资料都是国外极客写的,目前厂家正在针对国内进行试用销售,但是首先得培养一批极客开发一些应用和说明才能扩大产品的应用。笔者算是刚入门的吧。为了尽快方便的使用这款机械臂,笔者开发了一个可以进行学习的软件。但是都得通过上位机完成。

下面该说一下这款机械臂的优缺点了,对于这款产品试用了大概20天了,这次算是比较时间长的一次试用了,对于这样一款开放程度比较高的产品试用时间不能等同于其它的产品,需要进行开发代码才能使用,同时这款产品如何开发时没有针对国内开发的说明和教程。因此很长的一段时间是在寻找教程和接口文件。

优点:

1、做工绝对精致,因为使用的是CNC加工,螺丝都不是普通的螺丝。

2、配件数据线精致。

3、产品就是优点。但是配套就是缺点了。

4、官方客服沟通积极,能够推动资料索取。

5、考虑周到,配有吸盘底座,可以方便把机械臂嫁接到其他物体如机械控制小车上面。

缺点:

1、针对国内的产品说明和教程可以说是没有。

2、由于极客调试可能代码有误,可能导致手臂异常,建议增加急停按钮,防止损坏手臂。

3、目前使用舵机的机械臂,旋转动作时候抖动比较厉害,可能由于算法问题无法达到设置的坐标值位置,不过这些可以通过升级得到改变,据悉厂商在升级当中。

分享:
爱搞机试用文章由网友完成,不代表本站观点。
anduony
普通
做一个公正的人。
分享微博 分享微信
爱搞机微信

爱搞机微信

搞机啦微信

搞机啦微信

推荐产品

抱歉,产品库没有您要找的产品

试用