机器人制作开源方案 | 双轮提升搬运小车

1. 功能描述

双轮提升搬运小车是一种用于搬运和移动物体的机械设备,它通常采用双轮驱动和提升装置。一般具备以下特点:

① 双轮驱动:该小车配备两个驱动轮,通过电动机或其它动力源驱动,提供足够的动力和扭矩,使其能够在平坦的地面上自由行驶。

② 提升装置:小车上设有提升装置,可用于搬运物体的升降操作。通过控制提升装置的操作,可以使小车上的货物升高或降低,以适应不同高度的搬运需求。

本文示例将实现R055b样机双轮提升搬运小车在行进过程中实现夹取的功能。

2. 电子硬件

在这个示例中,我们采用了以下硬件,请大家参考:

|-----|-----------------------------------------------------------------------------------------------|
| 主控板 | Basra主控板(兼容Arduino Uno)‍ |
| 扩展板 | Bigfish2.1扩展板‍ |
| 电池 | 7.4V锂电池 |

3. 功能实现

**编程环境:**Arduino 1.8.19

下面提供一个双轮提升搬运小车在行进过程中实现夹取功能的参考程序(sketch_sep14a.ino):

java 复制代码
/*------------------------------------------------------------------------------------

  版权说明: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-09-15 https://www.robotway.com/

  ------------------------------*/

#include <Servo.h>

Servo armServo;   // 机械臂舵机

Servo clawServo; // 夹子舵机

int armAngle = 90;   // 机械臂初始角度

int clawAngle = 90; // 夹子初始角度

int leftMotorPin1 = 9;   // 左电机引脚1

int leftMotorPin2 = 10;   // 左电机引脚2

int rightMotorPin1 = 5;   // 右电机引脚1

int rightMotorPin2 = 6;   // 右电机引脚2

void setup() {

  armServo.attach(4);   // 机械臂舵机连接到引脚4

  clawServo.attach(7); // 夹子舵机连接到引脚7

 

  pinMode(leftMotorPin1, OUTPUT);

  pinMode(leftMotorPin2, OUTPUT);

  pinMode(rightMotorPin1, OUTPUT);

  pinMode(rightMotorPin2, OUTPUT);

}

void loop() {

  // 小车前进

  forward();

  delay(1000);

 

  // 机械臂下落

  moveArm(130);

  delay(1000);

 

  // 夹爪闭合

  closeClaw();

  delay(1000);

 

  // 机械臂抬起

  moveArm(90);

  delay(1000);

 

  // 小车后退

  backward();

  delay(1000);

 

  // 夹爪张开

  openClaw();

  delay(1000);

}

// 控制机械臂运动到指定角度

void moveArm(int angle) {

  armServo.write(angle);

  armAngle = angle;

}

// 控制夹爪闭合

void closeClaw() {

  clawServo.write(160); // 根据实际情况调整角度

  clawAngle = 160;

}

// 控制夹爪张开

void openClaw() {

  clawServo.write(60); // 根据实际情况调整角度

  clawAngle = 60;

}

// 小车前进

void forward() {

  digitalWrite(leftMotorPin1, HIGH);

  digitalWrite(leftMotorPin2, LOW);

  digitalWrite(rightMotorPin1, HIGH);

  digitalWrite(rightMotorPin2, LOW);

}

// 小车后退

void backward() {

  digitalWrite(leftMotorPin1, LOW);

  digitalWrite(leftMotorPin2, HIGH);

  digitalWrite(rightMotorPin1, LOW);

  digitalWrite(rightMotorPin2, HIGH);

}

4. 扩展样机

本样机有一些简单的扩展案例,如下图所示将驱动轮模块上的直流电机更换为舵机,或者在小车尾部安装一个牛眼万向轮:

程序源代码及样机3D文件等资料详见 双轮提升搬运小车

相关推荐
layneyao7 小时前
AI在医疗领域的10大应用:从疾病预测到手术机器人
人工智能·机器人
遨博学院10 小时前
机器人结构认知与安装
机器人
小柒的博客10 小时前
联合体union的特殊之处
c语言·机器人
Robot25111 小时前
「地平线」创始人余凯:自动驾驶尚未成熟,人形机器人更无从谈起
人工智能·科技·机器学习·机器人·自动驾驶
跳跳糖炒酸奶13 小时前
第二章、Isaaclab强化学习包装器(1)
人工智能·python·算法·ubuntu·机器人
Code_流苏15 小时前
马克·雷伯特:用算法让机器人飞奔的人
机器人·马克·雷伯特·动态平衡控制·波士顿动力·机器人算法
Mr.Winter`16 小时前
无人船 | 图解基于LQR控制的路径跟踪算法(以全驱动无人艇WAMV为例)
人工智能·算法·机器人·ros·ros2·运动规划·无人船
OpenLoong 开源社区16 小时前
技术视界 | 数据的金字塔:从仿真到现实,机器人学习的破局之道
人工智能·学习·机器人·开源社区·人形机器人·openloong
寻丶幽风18 小时前
论文阅读笔记——ZeroGrasp: Zero-Shot Shape Reconstruction Enabled Robotic Grasping
论文阅读·笔记·深度学习·机器人·机械臂·具身智能
PNP机器人1 天前
视觉“解锁”触觉操控:Franka机器人如何玩转刚柔物体?
机器人