新闻中心

EEPW首页 > 消费电子 > 设计应用 > 基于Arduino DIY一个会打招呼的超萌机器人

基于Arduino DIY一个会打招呼的超萌机器人

作者: 时间:2018-08-15 来源:网络 收藏

本文引用地址:https://www.eepw.com.cn/article/201808/386898.htm

第四步:连线

之后再将带有扩展板的Arduino和电池等安装到基板上,将蓝牙模组、舵机和超声波对应连接在Arduino的相应位置上,最后连接电池。具体的连接方式如下图所示:

连接好了是这样:

第五步:运动模式设计

设计一款机器人,为其设计合适的运动模式当然是至关重要的。我的机器人是这样运动的:

当机器人向前运动时,它首先移动其右前足向前,同时机器人会将左前足向后推。这会将整个机器人的右部向前推动。然后机器人再向前移动其左后足,这时又会将其右后足向后推。这种运动会将机器人的左部推向前。接下来机器人会左前足向前、右前足后推;然后再右后足向前、左后腿后;如此往复。这种方式能让机器人以比较快的速度向前运动。如下图所示:

而当机器人倒退时,只需要反过来执行整个过程就行了。

如果机器人需要右转,则机器人移动右前足向前,同时又移动右后足向前,然后在左后足不动的情况下让右前足向后运动。接下来前移左前足,然后后移右后足,同时前移其左前足。右转即完成。

同理,当机器人需要左转时,可以让机器人线移动左前足向前,并移动左后足向前,然后在右后足保持不动的状态下让左前足向后运动。接下来,机器人继续移动右前足向前,然后移动左后足向后的同时后移其右前腿。左转即完成。

第六步:代码

代码分为两个部分:The_Social_Quadruped.ino和Quad_Functions.ino。

第一个包含了Servo.h库(Arduino IDE自带)和NewPing.h。我首先定义了触发引脚、相应引脚以及超声波的最大距离;之后我又定义了一个布尔变量,可以用来切换机器人的自动模式。之后又定义了舵机。在设置函数中,我初始化了串口检测器,让我可以将命令发送到Arduino上。在循环函数中,我设置超声波发送最近物体的距离给串口检测器,然后检查用户输入。如果用户输入字符为 f, b, r, l, w, s, u 或a,那么则将分别执行前进、后退、右转、左转、挥手、睡眠、站立或自动工作这几个不同的功能。这些功能函数是在Quad_Functions.ino中定义的,可以轻松地调用。另外,需要提及的是当用户按了a之后,机器人将进入自动模式;要取消自动模式则需要用户再点击一次a。

第二部分Quad_Functions.ino则包含了所有功能的函数定义。其中包括机器人的各种运动模式。前进、后退、右转、左转等函数都很好理解,挥手功能包含wave2 和wave两个函数,可以让机器人分别使用左前足和右前足挥手。waveAuto函数是机器人在自动模式下挥手,使用的是右前足。睡眠模式是指机器人将舵机的位置运动到让机器人平躺到地面的模式。readPing函数则用来读取超声波传感器传递的数据。

第七步:无线

首先当然要确保蓝牙模块是按以上描述正确安装的。

接下来,启动你电脑上的蓝牙并将其和Arduino上的蓝牙连接配对。配对完成之后,进入面板,在设备中找到HC-06。右键点击并选择“属性”,选择“服务”选项,将该接口的串口通信勾线上。

然后进入Arduino IDE,选择路径Tools -> Port,将上面“服务”选项中的接口设置上去。然后就大功告成了!

打开串口监视器,你可以查看超声波传感器的读数,并且可以将机器人通过USB连接到电脑上进行


上一页 1 2 下一页

关键词: 传感器 控制

评论


相关推荐

技术专区

关闭