(RB-13K032)4WD越野移动小车平台

来自ALSROBOT WiKi
2015年6月23日 (二) 16:3826wd讨论 | 贡献的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索
RB-13K032.jpg

目录

产品概述

2014年最新推出的AS-4WD铝合金超大越野轮式移动机器人平台是哈尔滨奥松机器人科技有限公司汲取多款移动机器人平台优点于一体,并结合中国机器人大赛暨Robocup公开赛规则以及Arduino互动教学课程要求,自主研发的全铝合金4轮驱动移动机器人平台。此款平台可搭载多款控制器、驱动器、传感器和无线射频模块等,平台上支撑板设有51单片机控制器、Arduino mega168控制器、Arduino mega328控制器、Arduino MEGA1280控制器、32路舵机控制器固定孔,二自由度舵机云台固定槽、碰撞开关安装孔,除此之外,前端板可安装红外避障传感器、红外测距传感器、光线传感器、超声波传感器、超亮发光灯等。平台主体采用硬质铝合金材料,此种材料具有重量轻、强度高、不变形等特点。再加上独特的外形设计与色彩搭配,给人以炫酷的感觉。

由于近年来机器人比赛多为竞技对抗类,所以多款颜色选择,可让您按颜色分队,场地上方悬挂摄像头,可以进行图像识别与图像追踪应用。平台动力输出类型为四轮驱动,特设常用多款直流减速电机固定孔,可依据个人喜好更换电机与轮胎,使机器人轻松完成越障、爬坡等高性能测试。平台轮胎采用超大越野弹性橡胶,具有减震、耐磨、抓地力强等优点,能适应光滑路面和崎岖路面。这款平台非常适合Arduino爱好者、各大中小学开展机器人普及教育使用,更适合学生用其参加全国大学生电子大赛、智能车竞赛、足球机器人等比赛。让你轻松感受机器人DIY无限乐趣!

配件清单

RB-13K0321.jpg

规格参数

  1. 车轮直径:120mm
  2. 车轮宽度:60mm
  3. 平台长度:195mm(车身长度:270mm)
  4. 平台宽度:142mm(车身宽度:280mm)
  5. 平台高度:120mm
  6. 平台重量:1280g
  7. 底盘距地面距离:26mm
  8. 电机额定电压:12VDC
  9. 电机空载转速:120转/分
  10. 电机额定转速:108转/分
  11. 电机齿轮箱长度:19mm
  12. 电机额定电流:0.37A
  13. 电机额定转矩:26.8mN.m
  14. 电机最大转矩:55.3mN.m


应用例程

主要设备

  1. Arduino 控制器×1
  2. Arduino 传感器扩展板V5.0×1
  3. RB-421 舵机×1
  4. 超声波模块×1
  5. 超声波支架×1
  6. 双H 桥驱动板×1
  7. 锂电池×1
  8. 4WD越野移动小车平台×1 套

接线说明

  1. 数字口2→接超声波
  2. 数字口10→接RB-421 舵机
  3. 数字口5→接双H 桥驱动板的EB
  4. 数字口6→接双H 桥驱动板的I4
  5. 数字口7→接双H 桥驱动板的I3
  6. 数字口8→接双H 桥驱动板的I1
  7. 数字口9→接双H 桥驱动板的I2
  8. 数字口11→接双H 桥驱动板的EA

接线图

RB-13K0063.jpg

示例程序

#include <Servo.h>
Servo myservo;
int duration; //定义变量duration 用来存储脉冲
int distance; //定义变量distance 用来存储距离值
int srfPin = 2; //定义srfPin 为数字口2
int z; //定义变量Z
int val; //定义变量val
int val1; //定义变量val1
int val2; //定义变量val2
void setup()
{
myservo.attach(10); //10 号引脚输出舵机控制信号
Serial.begin(9600); //仅能使用9、10 号引脚
pinMode(8,OUTPUT); //定义I3 接口
pinMode(9,OUTPUT); //定义I4 接口
pinMode(11,OUTPUT); //定义EB(PWM 调速)接口
pinMode(5,OUTPUT); //定义EA(PWM 调速)接口
pinMode(6,OUTPUT); //定义I2 接口
pinMode(7,OUTPUT); //定义I1 接口
pinMode(srfPin,OUTPUT); //定义srfPin 为输出接口
myservo.write(90); //使舵机转到90 度
}
void loop()
{
delay(20); //延时20 毫秒
Goahead(); //调用前进子程序
val=Ultrasonic(z); //将超声波读取的距离值赋值给val
if(val<25) //判断如果val 小于25 则继续执行
{
Stop(); //调用停止子程序
myservo.write(7); //让舵机转0 度
delay(1000); //延时1 秒等待舵机到达指定位置
val1=Ultrasonic(z); //将超声波读取的距离值赋值给val1
delay(1000); //延时1 秒等待舵机到达指定位置
myservo.write(174); //让舵机转180 度
delay(1000); //延时1 秒等待舵机到达指定位置
val2=Ultrasonic(z); //将超声波读取的距离值赋值给val2
delay(1000); //延时1 秒等待舵机到达指定位置
myservo.write(90); //让舵机转90 度
delay(1000); //延时1 秒
if(val1<val2)
{
Turn_left(); //调用左转子程序
delay(200); //延时200 毫秒
}
else
{
Turn_right(); //调用右转子程序
delay(200); //延时200 毫秒
}
delay(500); //延时500 毫秒
}
}
int Ultrasonic(int distance)
{
digitalWrite(srfPin, LOW); //高电平触发前发送2 微秒的低电平
delayMicroseconds(2);
digitalWrite(srfPin, HIGH); //发送10 微秒的高电平开始检测
delayMicroseconds(10);
digitalWrite(srfPin, LOW); //等待脉冲返回前发送一个低电平
pinMode(srfPin, INPUT);
duration = pulseIn(srfPin, HIGH); //从URF02 读取脉冲
distance = duration/58; //除以58 得到距离值
return distance;
}
void Goahead()//前进
{
analogWrite(5,145); //输入模拟值进行设定速度
digitalWrite(6,HIGH); //使直流电机(左)顺时针转
digitalWrite(7,LOW);
analogWrite(11,160); //输入模拟值进行设定速度
digitalWrite(8,HIGH); //使直流电机(右)逆时针转
digitalWrite(9,LOW);
}
void Stop()//停止
{
digitalWrite(6,HIGH); //使直流电机(左)制动
digitalWrite(7,HIGH);
digitalWrite(8,HIGH); //使直流电机(右)制动
digitalWrite(9,HIGH);
}
void Turn_right()//右转
{
analogWrite(5,165); //输入模拟值进行设定速度
digitalWrite(6,LOW); //使直流电机(左)逆时针转
digitalWrite(7,HIGH);
analogWrite(11,140); //输入模拟值进行设定速度
digitalWrite(8,HIGH); //使直流电机(右)逆时针转
digitalWrite(9,LOW);
}
void Turn_left()//左转
{
analogWrite(5,165); //输入模拟值进行设定速度
digitalWrite(6,HIGH); //使直流电机(左)逆时针转
digitalWrite(7,LOW);
analogWrite(11,160); //输入模拟值进行设定速度
digitalWrite(8,LOW); //使直流电机(右)顺时针转
digitalWrite(9,HIGH);
}


产品相关推荐

购买地址:4WD越野移动小车平台