电子说
1. 运动功能说明
R204样机是一款拥有4个自由度的串联机械臂。本文示例实现4自由度串联机械臂抓取物品、放下的功能。
2. 结构说明
R204号样机由4个串联的 舵机关节模组 和1个 舵机夹爪模组 组成。
为了增加减轻腰关节的负担,在腰关节位置加装了4根拉簧。
3. 运动功能实现
3.1 电子硬件
在这个示例中,我们采用了以下硬件,请大家参考:
主控板 | Basra(兼容Arduino Uno) |
扩展板 | Bigfish2.1 |
电池 | 7.4V锂电池 |
3.2 编写程序
编程环境:Arduino 1.8.19
编写并烧录以下程序(grab_thing_anwser.ino),该程序将实现演示动图中的动作【详细例程源代码请参考 https://www.robotway.com/h-col-189.html】
/*------------------------------------------------------------------------------------ 版权说明: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 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);} }
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !