创意智能垃圾分类机器人(舵机)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

可以看到方框内滚动显 示舵机转动的角度值
完成舵机测试后,再进行垃圾分类机器人舵机安装 时,建议1号、3号舵机安装在0度角的位置,2号舵 机安装在180度角的位置。
步骤一:将舵机与驱动板1号舵机相连,驱动板通过USB下
载线与电脑相连,下载下列程序。
#include <Servo.h> //调用舵机函数库 SeFra Baidu bibliotekvo myservo1; //创建一个舵机对象 void setup() { myservo1.attach(7); //指定myservo1与D7引脚相连接 //操作myservo1就等于操作与对应引脚相连接的舵机 } void loop() { myservo1.write(0); //设置舵机转到0度 }
此程序能将1号舵机的角度设置为0~180度 能看到舵机来回转动的效果
{ myservo1.attach(7); //指定myservo1与D7引脚相连接
Serial.begin(9600); //设置比特率,用于输出调试信息
}
void loop()
{ int j=180; for(int i=1;i<=j;i++)
#include <Servo.h> //调用舵机函数库 Servo myservo1; //创建舵机对象 void setup() { myservo1.attach(7); //指定myservo1与D7引脚相连接
Serial.begin(9600); //设置比特率,用于输出调试信息 } void loop() { int j=180;
for(int i=1;i<=j;i++) { //设置1号舵机转到180度
myservo1.write(i); Serial.println(i);delay(80);} for(int i=j;i>=1;i--) { //设置1号舵机转回到零度 myservo1.write(i); Serial.println(i);delay(80); } }
(1)把上述舵机的调试代码粘贴到 arduino ide 的程序区,然后点击上传,将程序写入arduino板。
(2)舵机程序上传成功后,用鼠标左键点击arduino ide的“工具----串口监视器”子菜单,即可实时看到 舵机的转动角度。
注意:在舵机调试过程中,请必须保证arduino板一 直与电脑相连,并处于正常工作状态。
步骤二:待舵机转到0度角后将舵机与arduino板上 的连接线拔下来,注意舵机连接线拔下来后不能用 手拨动舵机输出轴,否则需要重新调试,将调试到0 度角的舵机安装到智能垃圾分类收集机器人上。
1号舵机安 装实物图
D7引脚绑定一号舵 机位 不需要修改
修改此处数值调整 舵机旋转角度
2号舵机安装实物图
{ //设置1号舵机转到180度 myservo1.write(i);
注意:这里只是以1号舵机为例, 2号和3号舵机并不需要连线, 这两个舵机的测试方式也是一样的
Serial.println(i);delay(80);}
for(int i=j;i>=1;i--)
{ //设置1号舵机转回到零度
myservo1.write(i); Serial.println(i);delay(80); } }
3号舵机安装实物图
舵机的调试任务: 1.了解每个舵机需要完成什么动作 2.测试得出每个动作所对应的度数 3.测试catch和down函数
变量名
s11 s12 s13 s21 s22 s23 s31 s32
类型
int int int int int int int int
描述
初始状态 张开 夹取 初始状态 抬起 放下 初始状态 转动
1、打开调试文档; 2、将1.5.1的程序复制到Arduino的编程界面中,此程序用 来测试舵机将方块放到红色垃圾桶的效果;

void Catch(int n){ int a; int s11, s12, s13, s21, s22, s23, s31,
我们将机器人依赖舵机完成的动作组合分为两部分。
分别是:
记录完三个舵机的所有动作角度后,进行测试 catch函数和down函数
PS:catch和down需要用到之前记录的S11、S12、S13; S21、S22、S23;S31、S32。还有switch(n)函 数里面3号舵机分别转到红蓝绿垃圾桶对应的角度值。
舵机调试
舵机顾名思义,像船尾的舵那样,只能转动固定的 角度,一般的舵机最大转角约为180度,但也有舵机 能达到270度甚至300度,上课介绍的是180度舵机。
舵机1
舵机2 舵机3
在安装和调试舵机之前,要先检测它是否能正常工作。 检测步骤: (1)舵机与arduino相连,arduino通过数据线与电 脑相连; (2)编写、下载舵机测试程序; (3)观察舵机是否在0~180度来回转动。
1号舵机 2号舵机 3号舵机
1号舵机:
初始状态 s11
张开 s12
夹取 s13
2号舵机:
初始状态 s21
抬起 s22
放下 s23
3号舵机:
初始状态 s31
转动 s32
调试出转到垃圾桶所需的实际度数
红色垃圾桶
蓝色垃圾桶
绿色垃圾桶
#include <Servo.h> //调用舵机函数库 Servo myservo1; //创建舵机对象 void setup()
以调试1号舵机转到初始状态(s11)为例
当小车舵机旋转到指定位置时,记录 下串口监视器中显示的角度。
将图中的74记录 下来,即s11的 值为74
(注意:不一定所 有机器人的s11的 值都是74,不同的 机器会不一样)。
S11
舵机的动作变量修改
采用上述方法,分别测出s11、s12、s13、s21、s22、s23、s31、 s32、这8个状态所对应的舵机角度值和switch()函数里面转到 三个垃圾桶的角度值,并将这些数值记录下,为智能垃圾分类机 器人多个舵机调试时使用。
s11 = 70; s12 = 60; s13 = 88; s21 = 90; s22 = 110; s23 = 60; s31 = 142; s32 = 0; switch (n){ case 1:a = 123; //红 case 2:a = 142; //蓝 case 3:a = 180; //绿 }
相关文档
最新文档