1. 运动功能说明
本文示例实现4自由度串联机械臂抓取物品、放下的功能。

2. 结构说明
4自由度串联机械臂样机由4个串联的 舵机关节模组 和1个 舵机夹爪模组 组成。

为了增加减轻腰关节的负担,在腰关节位置加装了4根拉簧。
3. 运动功能实现
3.1 电子硬件
在这个示例中,我们采用了以下硬件,请大家参考:
| 主控板 | Basra(兼容Arduino Uno) |
| 扩展板 | Bigfish2.1 |
| 电池 | 7.4V锂电池 |
3.2 编写程序
编程环境:Arduino 1.8.19
编写并烧录以下程序(grab_thing_anwser.ino),该程序将实现演示视频中的动作。
/*------------------------------------------------------------------------------------
版权说明:Copyright 2023 Robottime(Beijing) Technology Co., Ltd. All Rights Reserved.
Distributed under MIT license.See file LICENSE for detail or copy at
https://opensource.org/licenses/MIT
by 机器谱 2023-02-02 https://www.robotway.com/
------------------------------
实验功能: 实现4自由度串联机械臂抓取物品、放下的功能
-----------------------------------------------------
实验接线:舵机接口依次D8、D3、D11、D7、D4
------------------------------------------------------------------------------------*/
int a=0,b=0,c=0,d=0,e=0,f=0;
#include <Servo.h>
Servo servo_pin_4;
Servo servo_pin_7;
Servo servo_pin_11;
Servo servo_pin_3;
Servo servo_pin_8;
void setup()
{
servo_pin_4.attach(4);
servo_pin_4.write( 76);
servo_pin_7.attach(7);
servo_pin_7.write( 110);
servo_pin_11.attach(11);
servo_pin_11.write(68);
servo_pin_3.attach(3);
servo_pin_3.write(157);
servo_pin_8.attach(8);
servo_pin_8.write(81);
delay(3000);//set up the initial posotion.Each servo is different,
// so u must use Software of Processing to monitor your initial positions of servo.
}
void loop()
{
int a=76;b=110;c=68;d=157;e=81;
servo_pin_4.write(a);
servo_pin_7.write(b);
servo_pin_11.write(c);
servo_pin_3.write(d);
servo_pin_8.write(e);
//Now begin to move,you can use Processing to record a serials of movements.
//Here's my records.Aiming to grab a thing and put it back.
for(e=80;e>=50;e-=1)
{servo_pin_8.write(e);delay(30);}
for(d=158;d>=62;d-=3)
{servo_pin_3.write(d);delay(30);}
for(b=110;b>=19;b-=3)
{servo_pin_7.write(b); delay(30);}
for(e=50;e<=80;e+=1)
{servo_pin_8.write(e);delay(30);}
for(b=19;b<=110;b+=3)
{servo_pin_7.write(b);delay(30);}
delay(3000);
for(b=110;b>=19;b-=3)
{servo_pin_7.write(b);delay(30);}
for(e=80;e>=50;e-=1)
{servo_pin_8.write(e);delay(30);}
for(b=19;b<=110;b+=3)
{servo_pin_7.write(b);delay(30);}
for(d=62;d<=158;d+=3)
{servo_pin_3.write(d);delay(30);}
for(e=50;e<=81;e+=1)
{servo_pin_8.write(e);delay(30);}
}
4. 资料内容
① 例程源代码
② 样机3D文件
资料内容详见4自由度串联机械臂
该文详细介绍了如何使用4个串联舵机关节模组和1个舵机夹爪模组组成的4自由度机械臂进行物品抓取和放置。通过采用特定的硬件如Basra主控板、Arduino编程及特定的舵机接口接线,实现了机械臂的动作控制。程序示例展示了从初始位置到抓取物品再到放下的一系列伺服电机角度变化。

5408


被折叠的 条评论
为什么被折叠?



