【LeArm】动手实践机械臂(一)

导语:由于工业机器人不开源,无法二次开发,不能让它按照我们想要的轨迹运动,于是索性直接买个小的开源机械臂,这样既能够对底层代码进行了解,也能动手实践一下,在此记录LeArm的学习历程。

LeArm智能机械臂简介

  LeArm是深圳幻尔科技Hiwonder旗下的一块产品,它是基于Scratch的6自由度可编程机械臂,采用图形化编程,配备十余种电子模块,兼容Arduino编程,支持二次开发。它拥有具有反馈功能的智能串行总线舵机,可以实现夹取、分拣等功能,支持3种编程方式和5种控制方式。这里我采用的是基于STM32单片机的编程方式

round 1 认识LeArm

机械臂本体:机身由6个数字舵机组成,具有6自由度,最后一个自由度为夹爪的夹取,主控板为开源三合一开发板,末端执行器为合金机械爪。
三合一开发板:主要包括舵机接口,总线接口,电源接口,控制板开关,usb接口,脱机按键(100号动作组)等。
芯片:STM32单片机芯片。
蓝牙4.0模块:用来接收手柄控制或手机控制的蓝牙信号。
PS2手柄和手柄接收器
  昨晚到的机械臂,因为我购买的是成品,所以很多零件不用自己组装,直接将电源接口与电源适配器连接接电即可。

【LeArm】动手实践机械臂(一)_第1张图片

round 2 遥控玩法

疑惑:昨晚试了一下手柄控制,发现手柄控制没有反应,手机控制尝试过可以进行控制。
解决方法:重新烧录初始程序到开发板中,此时手柄可以实现控制,问题解决。

手柄控制有两种控制方式,包括单舵机模式和动作组模式。
单舵机模式:手柄上的按键单独控制每个舵机的正反运转。
动作组模式:手柄只能执行动作组0-20号的动作,组合键执行。
注:机械臂动作组最多有230个,每个动作组最多只能有255个动作,超过255个只能在线运行不能下载。手柄上的组合按键只能实现0-20号动作组,超过20号的动作组只能通过上位机或手机APP来实现运行。

实践总结:手机app控制精度比手柄控制高,同时手机还可以执行20号以外的动作组编号。

round 3 机械臂动作编辑

3.1 上位机&动作组编辑
连接usb口和电脑接口,打开上位机软件,可以自己定义多个动作构成一个动作组,也可以打开已有的动作组文件,并将动作组下载到开发板中,新下载的动作组会覆盖原有的动作组。

3.2 串联动作文件
多个动作组作为一个动作组执行。

3.3 脱机运行
100号文件,100号动作组,按下脱机按键即可。

3.4 APP自定义控制
电脑下载动作组到开发板中,通过手机来定义动作组名称,编号与下载到开发板中编号一致。

round 4 开发环境搭建

一系列操作不再赘述,简而言之就是程序的编译与烧录。
烧录步骤:接上usb线,脱帽,开启机械臂电源开关,选择需要烧录的文件.hex后缀,开始烧录,提示一切正常后,断开ubs接线,插回跳帽,按下RST按键,切换为运行模式。

根据以上的知识点,我们可以给自己设计个题目来综合运用目前所学的知识。

习题1:自己编辑动作组来实现抓取和放置方块的动作,并通过手柄控制来实现动作

step1:将整个路径分解为多个路径点,再将每个路径点作为一个动作

【LeArm】动手实践机械臂(一)_第2张图片

如图所示,将这个路径规划为10个动作,并将整个动作组下载到手柄能够执行到的动作组编号中。(我这里下载到的是0号动作组)

step2:连接手柄蓝牙,一切正常显示后,通过手柄对应按键来执行动作组0号。如发生手柄不能控制机械臂情况,则需重新烧录程序实现初始化。

【LeArm】动手实践机械臂(一)_第3张图片

个人感想

  在实际操作之后,对LeArm机械臂有了一定的认识,对于精度方面,当然不能要求这样一款小型的物美价廉的机械臂和工业机械臂相比,同时发现这款机械臂底座有点轻,需要加重底座来实现更稳的控制,本次作业只应用到了机械臂的基础操作,后续将开始单片机底层编码的了解以及二次开发的应用,正好之前玩过树莓派,初步感觉可以用LeArm+树莓派实现二次开发。

你可能感兴趣的:(机械臂,LeArm)