视频教程:手把手带你做开源六足机器人(3D图纸+硬件图纸+软件源码+制作说明书在视频下方自取!)_哔哩哔哩_bilibili
重要提示
1.电池一定要小心接,最好反复确认自己理解了电源部分是怎么接线的,然后再通电;否则不能随便通电,以免短路起火或发生爆炸。
2.对于新手来讲,一定要认真阅读理解本教程,不能一目十行不仔细阅读文字说明只看图片,这将会导致很多步骤理解不到。
3.在碰到不懂且说明书上没有的内容时,一定要善于用百度进行搜索且多多尝试。(也可以在群里问,推荐在群里提问!)
4.如果机器人运行不正常,首先要检查电源,或者将电池充电试试,初学者很容易买到新电池没电了也不知道,所以首先充电保证电量充足,很可能问题就解决了。
-
项目介绍
1.项目介绍
实际上这个机械结构是国外老哥做的一款arduino六足机器人。
这里我们把他改造成arduino版本的,提供更多丰富的功能。目前主要用arduino和ros两种软件平台来做,可以用于学习arduino或者ros编程,同时也可以将ros与arduino结合。
在这个六足机器人的制作中,我们摒弃传统的开发板+舵机驱动板的方式。开发板+舵机驱动板的方式一个方面是集成度不高,杜邦线接线麻烦且可靠性差。另一个方面,两块板子成本加起来也要将近200块,实在是浪费。所以我们自己做了两版舵机驱动板,用esp8266或者esp32做主控,更低的成本,更强大的性能,更丰富的功能且支持WiFi无线遥控,实在是香!他们分别是采用esp8266做主控的Baize_Servo8266和采用esp32做主控的Baize_Servo32,如下图1-1所示:
图1-1实物图
这两块儿舵机控制板都是开源的,开原链接如下:
Baize_Servo8266: https://github.com/Allen953/Baize_Servo8266
Baize_Servo32: GitHub - Allen953/Baize_Servo32
Baize_ServoDriver_esp8266或者Baize_ServoDriver_esp32
如图1-2(左)为Baize_ServoDriver_esp8266;图1-2(右)为Baize_ServoDriver_esp32
图1-2主控板实物图
建议arduino版六足用Baize_ServoDriver_esp8266而ROS版六足用Baize_ServoDriver_esp32。
我们这里是做arudino版,所以就默认为Baize_Servo8266。
板子接引脚信息如下图所示:
图1-3主控板引脚介绍
机器人组装完外观如图1-4所示:
图1-4机器人外观
2.制作地图
整个机器人制作流程如下,我们现在在第一步这里(下载所需资料):
3.资料下载
在开始制作该项目前,最好将所有的资料先下载到自己的电脑上,你需要按照以下步骤来下载该项目需要用到的全部资料:
首先访问项目网址:GitHub - Allen953/Baize_H1mini
为了方便访问和下载,我们把仓库同步到了gitee,下载速度更快。
这里是gitee仓库地址:https://gitee.com/li9535/baize_-h1mini
图1-5
接着,你的浏览器会开始下载资料,左下角会出现正在下载的资料压缩包并显示已下载数据大小:
图1-6
耐心等待下载完成并解压压缩包即可提取出完整的数据。
同时,本教程也更新到了CSDN博客上面,如果感觉看PDF不方便的小伙伴,也可以收藏一下这个博客,后续看这个博客也可以哈!
博客链接:https://blog.csdn.net/qqliuzhitong/article/details/118158599
不过这个pdf文档总是最新的,而博客可能会滞后一些。
4.视频教程
这里有哔哩哔哩视频教程哦!
手把手带你做开源六足机器人(3D图纸+硬件图纸+软件源码+制作说明书在视频下方自取!)_哔哩哔哩_bilibili
如果需要视频教程的小伙伴多,会花时间出更加详细的视频教程。
二.Baize_H1mini机器人零件制作准备
1.制作地图
2.1 solidworks2023安装
安装包百度网盘链接:百度网盘 请输入提取码
密码:1998
操作系统:Windows 10(64位)
处理器:多核64位Intel或AMD处理器
内存:建议4 GB或更高
显卡:支持OpenGL 4.0及以上版本的显卡,建议使用专用显卡
存储空间:至少20 GB的可用硬盘空间
分辨率:建议使用1920 x 1080分辨率或更高
安装教程
软件全版本下载地址(全版本):ps008.top
1.鼠标右击【SolidWorks 2023(64bit)】压缩包选择【解压到 SolidWorks 2023(64bit)】 (win11及以上系统需先点击“显示更多选项”)。
图2-1-1
2.打开解压后的文件夹,双击打开【Crack】文件夹。
图2-1-2
3.鼠标右击【SolidWorks_Flexnet_Server】文件夹选择【复制】 。
图2-1-3
4.打开电脑C盘,鼠标右击空白处选择【粘贴】 。
图2-1-4
5.双击打开粘贴后的【SolidWorks_Flexnet_Server】文件夹。
图2-1-5
6.鼠标右击【server_install】选择【以管理员身份运行】。(温馨提示:①运行【server_install】前:先关闭“所有杀毒软件(部分电脑自带的“迈克菲”也要关闭)、防火墙、Windows Defender”,否则可能会被杀毒软件误杀无法运行。若已经没有该文件,需重新解压安装包。)
图2-1-6
7.当黑色弹窗界面提示“服务已经启动成功”后点击右上角【X】退出。
图2-1-7
8.回到【SolidWorks_Flexnet_Server】文件夹,双击运行【LoaderEnabler】。
图2-1-8
9.点击【是】。
图2-1-9
10.点击【确定】。
图2-1-10
11.继续回到【SolidWorks_Flexnet_Server】文件夹,双击运行【Licensing】。
图2-1-11
12.点击【是】。
图2-1-12
13.点击【确定】。
图2-1-13
14.断开电脑网络(关闭WIFI及有线网,安装完成后可连接网络)。
图2-1-14
15.打开安装包解压后的【SolidWorks 2023(64bit)】文件夹,双击打开【Setup】文件夹。
图2-1-15
16.鼠标右击【setup】选择【以管理员身份运行】。
图2-1-16
17.点击【确定】。
图2-1-17
18.点击【下一步】。
图2-1-18
19.勾选需要安装的模块(产品模块众多,尽量只勾选自己需要的模块),点击【下一步】。
图2-1-19
20.点击【取消】。
图2-1-20
21.点击“安装位置”右侧的【更改】。
图2-1-21
22.修改路径地址中的首字符C可更改安装位置(如:将C改为E表示安装到E盘,记住修改的磁盘符),点击【返回到摘要】。
图2-1-22
23.点击“Toolbox/异形孔……”右侧的【更改】。
图2-1-23
24.修改路径地址中的首字符C可更改安装位置(如:将C改为E表示安装到E盘),点击【返回到摘要】。
图2-1-24
25.点击“Electrical 选项”右侧的【更改】。
图2-1-25
26.修改路径地址中的首字符C可更改安装位置(如:将C改为E表示安装到E盘),点击【返回到摘要】。
图2-1-26
27.勾选【我接受 SOLIDWORKS 条款】,点击【下一步】。
图2-1-27
28.点击【确定】。
图2-1-28
29.安装中……
图2-1-29
30.取消勾选【为我显示 SOLIDOWRKS 2023……】,选择【不,谢谢】,点击【完成】。
图2-1-30
31.点击【以后重新启动】。
图2-1-31
32.打开安装包解压后的【SolidWorks 2023(64bit)】 文件夹,双击打开【Crack】文件夹。
图2-1-32
33.鼠标右击【SOLIDWORKS Corp】文件夹选择【复制】。
图2-1-33
34.打开步骤22修改的磁盘(如:在步骤22中我将C改为了E,则打开E盘),双击打开【Program Files】文件夹。
图2-1-34
35.鼠标右击空白处选择【粘贴】。
图2-1-35
36.双击桌面【SOLIDWORKS 2023】图标启动软件。
图2-1-36
37.点击【接受】。
图2-1-37
38.安装成功!
图2-1-38
2.2 用solidworks查看模型并导出3D打印文件
启动solidworks软件之后,点击如下图所示箭头1打开模型:
图2-2-1
选择代码仓库里面名字叫”Baize_H1mini.STEP”的文件,如下图箭头所示:
图2-2-2
如下图,正在载入模型
图2-2-3
等待打开完成如下图所示:
图2-2-4
2.3机械结构零件打印制作
你现在在地图的红色字体位置(走到终点就制作完成了):
重要提示:自己使用打印机打印零件时,对于新手来说大概率会经历由于参数设置问题将零件打废的过程,因此要仔细配置参数确保参数正确。对于需要添加支撑的零件,一定要记得添加支撑。
首先要找到零件的图纸,打开我们刚刚下载的整个项目资料文件夹,找到如下路径1.3D model\Baize_HexapodRobot_Arduino_3DPrinter\STL Files,可以看到该文件夹下有很多可以打印的STL格式图纸,如下图红框中所示:
图2-3-5
接下来就可以开始打印了,我这里用的是拓竹P1P型号3D打印机,因此下面的打印教程也是用该款型号打印机制作的,如果你用的其他型号的3D打印机,则可以一次做参考并参照自己3D打印机的说明书进行打印。
下载Bambu Studio:http:bambulab.com/download
登录Bambu Stidio,新建或打开一个项目。
图2-3-6
添加一个模型进行模型切片。
完成模型切片后,选择打印机并发送打印。
打印板类型选择纹理PEI打印板
图2-3-7
打印材料是啥? PLA 3D打印材料一般有PLA和ABS两款材料
这里需要选择打印材料,打印机材料一定要选择正确,否则肯定打印失败。
图2-2-8
2.4主控板PCB制作及焊接
百度搜索立创eda
图2-4-1 图2-4-2
打开立创eda,点击文件-打开-嘉立创EDA然后选择我们那个json格式的文件就可以了。
图2-4-3
接着,选择代码仓库里面的两个json格式文件,如下图箭头1,2所示,箭头1所指向文件以SCH开头的是原理图,箭头2以PCB开头的是PCB布线文件。
图2-4-4
如果你打开文件之后出现报错信息,请检查立创eda版本,用标准版打开是正确的,用专业版打开文件会出现兼容性问题。
然后就可以在嘉立创打板,嘉立创是提供把我们的设计资料打样出来样板的服务的。
图2-4-5
如下图为嘉立创打板页面,这个1.0版本的是4层板,1.1版本的是2层板:
图2-4-6
图2-4-7
这些参数大部分都是默认选项,只需要注意几个需要自己选择的选项即可。
打完板子后,嘉立创会快递给你,如下图这个样子:
图2-4-8
最后根据原理图和电子元器件清单,把买到的电子元器件焊接到板子上即可。
如下为板子的元器件清单:
自制主控板(PCB板)电子元器件材料表
品名 | 淘宝链接 | 数量 |
PCA9685芯片 | 点此链接 | 2个 |
10kΩ电阻 | 点此链接 | 1块钱100个 |
ESP-12F模组 | 点此链接 | 1个 |
2.54_2x6排针 | 点此链接 | 1个 |
复位按钮 | 点此链接 | 2个 |
10uF电容 | 点此链接 | 1块钱100个 |
S8085三极管 | 点此链接 | 2个 |
AMS1117-3.3压降芯片 | 点此链接 | 1个 |
CH340C芯片 | 点此链接 | 1个 |
Micro usb口 | 点此链接 | 1个 |
2.54_1x3pin排针 | 点此链接 | 32个 |
0.1uF电容 | 点此链接 | 1块钱100个 |
电源端子 | 点此链接 | 1个 |
如下为板子原理图:
图2-3-8 图2-3-9 图2-3-10
C4和C5都是10uF
R8是10K电阻
2.5 标准件购买(包括螺丝和电器原件等)
你现在在地图的红色字体位置(走到终点就制作完成了):
2.6.1 舵机x18
舵机型号可以用如下两种型号,一种是如图2-5-1左边所示的型号为SG90的蓝色舵机,一种是右边的型号为MG90S的黑色舵机
图2-6-1(a) 舵机
如下图为舵机的性能指标
图2-6-1( b )
2.6.2 电池
18650电池通常用于各种设备,如手电筒、笔记本电脑电池、电动工具等。以下是一些关于18650电池的重要信息:
- 18650电池类型:这是一种标准的锂离子电池,通常具有圆柱形状,其名称"18650"代表了其尺寸,即直径为18毫米,长度为65毫米。
- 电压:每个18650电池的额定电压是3.7伏特(V),这个电压随着充电和放电过程会有一定的变化。当电池充满时,电压通常在4.2V左右,而当电池放电到较低状态时,电压会下降到3.7V甚至更低。为了延长电池寿命和避免损坏,通常建议在电池电压下降到一定程度时重新充电。
- 连接方式:将两节18650电池串联在一起,这意味着它们的电压将相加。因此,如果每个电池的额定电压为3.7V,当它们串联在一起时,总电压将为7.4V(3.7V + 3.7V)。
- 安全性:请确保在使用18650电池时遵循安全操作准则,包括使用合适的充电器、不过度充电或过度放电电池以及避免机械损坏。不正确使用锂电池可能会导致危险,包括发生火灾或爆炸。
总之,18650电池是一种常见的锂离子电池,具有可重复充电的特性,用于各种便携设备和电子产品。串联两节电池可以增加电压,但请确保使用时遵守安全规则以防止潜在的风险。
图2-6-2
2.6.3 螺丝等标准件
螺丝一共有以下几种:下面是螺丝型号及数量
M2*25——36个
M2.5*6——64个
圆柱销φ3*8——18个
2.6.4 XL4015压降模块
这个压降模块可以将2节18650电池的7.4~8.4V电压降至5V电压,由于我们的板子供电电压是5V,而且舵机供电电压也是5V,因此需要用到这个模块。
图2-6-4( a ) XL4015降压模块
图2-6-4( b )
2.7 元器件淘宝购买清单
机器人材料表
品名 | 淘宝链接 | 数量 |
电池 电池盒 | 点此链接 点此链接 | 2节 1个 |
主控板(可在立创自制) | 点此链接 | 1个 |
压降模块 | 点此链接 | 1个 |
线材20awg | 点此链接 | |
MG90S舵机 | 点此链接 | 18个 |
三.Baize_H1mini机器人组装
1.零件准备
下面是零件的实物照片
上面的零件组装完就如下图所示:
图3-1-1
3.2 组装教程
开始行动吧,我们的机器人组装过程如下图所示:
由于上面已经将零件准备齐全并且知道了每个零件的名字,下面可以直接开始组装,我们先进行第一步身体部分的组装。
3.2.1 身体组装
图3-2-1( a )
图3-2-1( b )
图3-2-1( c )
图3-2-1( d )
图3-2-1( e )
图3-2-1( f )
图3-2-1( g )
图3-2-1( h )
图3-2-1( i )
图3-2-1( j )
图3-2-1( k )
图3-2-1( l )
图3-2-1( m )
图3-2-1( n )
图3-2-1( o )
图3-2-1( p )
3.2.2 小腿组装
图3-2-2( a )(装好的身子)
上面的小腿零件,组装出来如下图有图所示,这个黄色零件是这两种不一样的成对使用的,每条腿两个
图3-2-2( b )
图3-2-2( c )
3.2.3 大腿组装
图3-2-3( a )
图3-2-3( b )
图3-2-3( c )
图3-2-3( d )
3.2.4 肩部关节组装
图3-2-4( a )
图3-2-4( b )
3.2.5 整条腿的组装
图3-2-5( a )
图3-2-5( b )
3.2.6 机器人整体组装
图3-2-6( a )
图3-2-6( b )
在安装过程中,舵机的白色摇臂先不安装,因为按照现在进行关节固定误差会很大,我们在4.4关节标定那里标定完关节变量之后再进行固定。
图3-2-6( c )
接下来把其余五条腿全部装上去,注意摇臂的朝向,摇臂都是朝着一个方向的。
图3-2-6( d )
3.3 电路焊接
首先,需要找一个18650电池的电池盒,由于电池盒上面直接引出来了两条线,这两条电源线是先输入到XL4015这个压降模块的,需要先降压到5V。由于直接把电池盒上面的两条电源线焊接在XL4015模块上那就进行了通电,而无法断电,因此需要一个开关。我们现在的做法是在电池的输出端和XL4015的输入端各焊一个插接口的电源线,这样可以通过插拔的方式给整个电路通电和断电,起到开关的作用。
电源线要稍微用粗的,普通杜邦线承受不了大电流,所以应该会发热,甚至烧断着火。
接着需要焊接XL4015的输入和输出线
XL4015压降模块的作用就是把电压降至5V,电流从电池里面出来的时候是7.4V,进入该模块的时候也是7.4V,从该模块出来的时候,电压就变成5V了,就可以输入到机器人板子上了。整个电源部分工作原理如下图所示, XL4015模块的IN+表示输入正极,IN-表示输入负极,也就是电池的电从这两个地方输入到模块;OUT+表示的是输出负极,OUT-表示的是输出正极,输出的5V电压从这里流出去。
电源线红色是正极,黑色是负极。
接下来,就可以直接把电池的输出接口插在XL4015的输入接口了,这个时候先别着急把XL4015模块的输出接口接到舵机控制板上面,如下图所示,红色打叉号的两条线先断开别接上。因为XL4015模块的输出电压我们还没调节,默认情况下XL4015模块的输出电压太高,我们如果直接将XL4015的输出线路接入舵机控制板,则会烧毁我们的舵机控制板,因此需要现行调节XL4015模块的输出电压。
如下图所示,首先需要将电压调至5V。接着再给机器人通电,如果通电测试正常,则可以将机器人电源板固定好。
上面的电源接线一定要小心,如果正负极接错的话,像下图一样就悲剧了(也没那么可怕,损失点钱而已!)。
固定电池盒:
固定压降模块:
固定主板:
3.4 舵机接线
接线的话,按照图3-4-1所示进行接线即可。就是右腿第一个舵机接到板子的第一个口上面,注意有的板子是从0开始有的板子是从1号开始,如果板子上面的舵机标号从0开始就从0开始接线,如果板子上面的舵机标号从1开始就从1开始接线。
图3-4-1
图3-4-2
3.5 组装错误案例
组装过程中,如果你的摇臂这样相对,那就错了,摇臂一定要是朝着一个方向的,顺时针的。
图3-4-2
四、Baize_H1mini机器人代码烧录调试
4.1 为你的电脑安装Arduino IDE
访问下面下载链接,然后点击软件下载:
链接:https://pan.baidu.com/s/1qwpNW6-PlzSQkgbYCBsoBg
提取码:d4xq
--来自百度网盘超级会员V1的分享
接着双击exe程序一路安装即可。
4.2 Arduino IDE配置ESP8266开发板
这一步主要是在arduino ide里面添加esp8266的硬件支持,我们默认安装完arduino ide之后,arduino ide里的开发板选项是没有esp8266的,因此需要添加硬件支持,让arduino ide可以支持esp8266开发板。首先打开Arduino IDE,点击文件——首选项.如下图所示
图4-2-1
接下来会跳出如图4-2-2所示窗口界面,点击箭头1所示的那个白色小方框,接着会跳出箭头2所示的小窗口,将该网址——
http://arduino.esp8266.com/stable/package_esp8266com_index.json,复制粘贴到小窗口里面,如图4-2-2所示,保证这个网址在里面就可以了,然后点击箭头4所示的“好”即可。
图4-2-2
接下来,如图4-2-3,点击Arduino IDE上方的工具——开发板——开发板管理器
图4-2-3
接着会跳出来如图4-1-4窗口,在箭头1所示的窗口中输入esp8266并敲下回车按钮进行开发板搜索,接着将会出现图中的esp8266选项,点击箭头2所示的版本选择最新的版本,根据箭头3点击安装即可开始安装,等待进度条完成安装即可。
图4-2-4
接着,我们在工具——开发板选项里面,就可以看到esp8266开发板了,我们选择如下图4-2-5所示的开发板即可。
图4-2-5
4.3 配置库文件
在配置了开发板之后,还需要配置我们项目需要用到的库文件,这样我们的程序代码才能正常编译烧录。
编译是程序变成机器代码的过程,计算机只能直接理解机器代码,我们编写的程序它是不能直接理解的,因此我们写的程序都需要进行编译计算机才能理解。
烧录是将编译后的程序从电脑上上传到机器人板子上面的芯片里面的过程,只有将程序上传到机器人的板子上面,程序才能正确执行并且控制机器人运行。
找到如下文件夹,如图4-3-1所示,将箭头1,2,3所示三个文件夹全选:
图4-3-1
将其复制粘贴到自己电脑的如下文件夹里面:
图4-3-2
如何检验库文件正确放好了呢?
进来自己的文档-Arduino-libraries文件夹,如下图箭头1所示,找到如下图箭头2的库文件夹Adafruit_PWM_Servo_Driver_Library点进来,进来如果能看到.h和.cpp格式的库程序文件,就说明库文件配置没问题。
图4-3-3
4.4 主控板测试代码
烧录如下代码
图4-4
这里有测试的视频,感兴趣的小伙伴可以看看:
arduino 32路舵机驱动板(开源)_哔哩哔哩_bilibili
4.5 配合上位机软件测试舵机
我们这里用一个上位机软件来测试接在机器人控制板上的舵机,控制板如下图所示,在通过Micro usb线连接机器人控制板和电脑之前,首先要给控制板通过电池供上电。上位机界面如下图所示:
在使用这个软件操作前,我们首先给控制板烧录下面这个程序:
接着打开上位机软件,软件位置如下图所示:
设置串口和波特率如下图种箭头1,2所示,波特率设置为115200即可:
然后点击箭头3所示的联机,接着拖动箭头4所示的拖动条就可以看到相应关节舵机旋转了。
4.6 烧录六足机器人代码
烧录代码前,首先根据如下步骤,一步一步通过文件路径找到我们需要的代码文件。
首先打开3.Software这个文件夹
图4-6-1
然后打开Arduino主程序这个文件夹
图4-6-2
接着再打开第一个Baize_HexapodRobot_Arduino文件夹
图4-6-3
然后找到Baize_HexapodRobot_Arduino.ino这个程序文件,找到之后可以双击直接打开。
图4-6-4
打开后的界面如下图4-6-5所示:
图4-6-5
接下来,我们选择开发板类型,然后通过软件的验证功能看程序代码是否有格式错误。
选择开发板类型如下:
图4-6-6
然后点击软件界面的验证按钮,可以看到如图,下面出现编译完成的提示,说明我们的代码没有问题,并且已经通过了编译。
图4-6-7
接下来,我们将开发板通过Micro USB线连接到电脑上。
注意:当通过Micro USB线连接开发板和电脑时,开发板上不能连接任何舵机,否则可能烧坏电脑主板。
接下来,点击上传按钮,即可把程序上传到开发板上面。
图4-6-8
如果你用的是Baize_Servo32板子,则使用下方的程序进行烧录。
图4-6-9
4.7 关节标定
什么是关节标定以及为什么需要关节标定呢?
我们希望当我们把关节装在机械零位的时候,舵机刚好也在他的机械零位。
例如,我们希望当舵机的转角在90度的时候,机器人的姿态如下图所示:
图4-7-1
当我们把所有关节垂直安装时,我们希望刚好舵机这个时候在90度(在程序中,我们把0-180度映射到-90到90度),而正常情况下会有误差,我们需要测定这个误差,每次运动的时候作为补偿,这样关节就能正常运动到零位了,这个过程就叫做标定。
正常情况下大部分机器都是需要标定的,尤其是精确控制,而如果你的运动精度不需要那么精确,其实不标定也可以。但是为了达到更好的运动效果,我们这里需要对机器人关节尽心标定。
那么我们首先进行关节摇臂的固定,然后进行关节标定。在烧录了我们的固件之后,正常情况下,机器人在上电的一瞬间,会驱动所有的舵机转到90度。因此首先给机器人上电,然后听到关节舵机转到90度的位置之后,就可以给机器人断电了,接下来这个时候,我们按照如下的姿态,就可以将机器人的关节舵机的摇臂安装上去了。
图4-7-2
而如下图所示,我们将摇臂按照上面的姿态卡上去之后,就可以活动关节了,这个时候即便关节活动了,也没事,因为只要摇臂的齿轮跟舵机的齿轮啮合在一起,下次上电舵机转到90度还是垂直的。
而我们可能无法刚好将摇臂完全按照如上图4-7-2所示的姿态固定,因为舵机的摇臂是齿轮啮合扣在一起的,可能固定上去的时候,跟上图的姿态会有一定的偏差,那么我们就需要在程序里面将这个偏差记录下来进行补偿,就是关节标定。
手动标定
在烧录完机器人程序的情况下,打开串口,然后对着串口发送X+关节号+空格+标定量即可。例如”x0 5”,就是0号舵机标定量为5度,也就是说以后你让舵机转到45度,他会多转5度,转到50度,你让他转到任意角度,他都会自动加5用来补偿初始安装时候的误差。这个标定量正常情况下可以是正负9以内,如果再大,那就是说明当初安装舵机摇臂的时候偏离太多了。
图4-7-3
标定时最好把这行代码注释掉,因为标定的时候所有舵机会归位,如果把这个注释掉,那么上电之后链接wifi后舵机就是标定状态,避免了所有舵机归位时大电流消耗,会避免由于你的电池不行而导致重启。
对了 上电是图4-7-4这个状态就对了。
图4-7-4
标定完成之后,就可以把舵机摇臂的螺丝拧上去了,如下图所示的M2.5的螺丝
五、Baize_H1mini机器人遥控配置
5.1 使用手机APP遥控
在测试前,首先需要给你的手机安装一个遥控软件并且进行相应的设置,我们这里安装的遥控软件名字是NeTorch,如果你的应用市场可以直接搜到的话,可以直接在应用市场进行安装。
如果应用市场搜索不到的话,可以将这个软件安装包发送到自己的安卓手机上,然后再进行安装。
软件安装包位置如下图5-1-1所示,首先找到4.Android app这个文件夹。
图5-1-1
如下图5-1-2所示的NeTorch.apk就是我们需要找到的手机遥控软件安装包,你可以通过QQ或者微信将安装包发送到手机上进行安装。
图5-1-2
安装之后打开如下图5-1-3所示:
图5-1-3
接下来,需要你用自己的手机开个热点。
热点名字(SSID)是:Baize
热点密码(PASS)是:baizerobot
接下来需要给机器人通电,机器人通电之后,可看到主板上有个蓝灯亮起来了。
如果蓝灯过几秒之后变为闪烁状态,则代表着机器人主板已经连接到了手机热点,网络连接正常。
接下来可以设置手机遥控APP进行遥控了。
首先需要你查看一下机器人的IP地址,点击个人热点之后,可以看到有一个设备连接了你的手机,这里可以看到如下图所示界面,我们可以看到这个IP地址为:192.168.43.227,这里需要你先记下这个IP地址。
图5-1-4
如果手机这里看不到IP地址(新安卓或小米可能出现打开热点的设备管理里,可以看见已连接到自己的开发板却不显示ip的情况(果显示ip地址可以跳过此步骤),那么可以用Micro usb线,将机器人连接电脑并打开串口(波特率调到115200),如下图所示。
图5-1-5
然后按一下机器人上面的reset按钮,机器人主板将会重启,同时在连上热点之后,会在串口打印自己的IP地址,如下图所示:
图5-1-6
然后打开Netorch软件界面,进行相应的设置:
图5-1-7
然后我们设置按钮:
首先点击按钮模式,接下来长按按钮就可以进行按钮的设置了。我们点开按钮把相应的前后左右设置好,按照如下图5-1-8,图5-1-9完成按钮的设置。
图5-1-7 图5-1-8
控制指令表如下表5-1-10所示:
控制指令表
指令 | 动作 | 指令 | 动作 |
a | 前进行走 | f | 向左横移 |
b | 后退行走 | g | 向右横移 |
c | 原地左转 | h | 步态切换 |
d | 原地右转 | i | 身高切换 |
e | 停止 |
图5-1-10
后续会更新更多动作指令!
图5-1-11 图5-1-12
接下来便可以进行遥控操作测试了,点击一下前进的按钮,是不是已经发现机器人开始前进了呢?
接下来可以愉快的玩耍了。
5.2 使用PS2游戏手柄遥控
PS2游戏手柄如下图所示,他有一个手柄和一个接收机,将手柄和接收机通电之后,他们会通过程序自动配对,用起来非常方便。
如果你想测试一下手柄通过接收机与主控板之间的通信的话,可以通过下方的图片接线。
在这之前,还是要先配置好库文件,如果在4.2节已经配置好了库文件(将PS2X_lib文件夹复制到了文档-Arduino-libraries路径下),这里就不用管。
然后修改代码测试:
接收机与我们的机器人主控板之间一共有六根线需要接,两根电源线,还有四根信号线,四根信号线接线如下:
接好线的实物如下图所示:
接着打开串口监视器,波特率调到115200,按下遥控手柄上的按键就可以看到效果了。
5.3 使用航模遥控器遥控
5.4 使用红外遥控器遥控
5.5 机器人频繁重启
这种一般就是电源问题,电源部分功率不够或者线材限制发挥不出来,首先检查电池,你要确保电池放电电流要能达到两三安以上,然后看电池出来的线,要能承受这么大电流,如果采用普通杜邦线或者很细的线,很显然过不了大电流,甚至过大电流的时候线材还会发热烧断,接着看压降模块输出功率,输出电压是5V,功率如果是20W,那电流就能达到4A,就没问题,如果功率太小,就不行。
总之就是顺着电池出来直到电流流入板子,这中间的过程每个东西都要排查。
下面有个案例:
图5-2-1
图5-2-2
图5-2-3
图5-2-4
图5-2-5
图5-2-6
5.6 故障自检
图5-6-1
我们在程序中设定了开机自检程序,主要检测PCA9685的工作状态,如上图5-6-1所示,如果通电之后箭头所示指示灯每秒短暂闪烁一次,则证明板子上面的PCA9685芯片没有正常工作,如果每秒闪烁两次,则说明板子下面的PCA9685芯片没有正常工作。如果不闪烁并且常亮,而且过一会儿之后一闪一闪,并且机器人做出前进准备动作,则说明板子已经连接到手机热点。
你也可以将主板通过USB连接串口查看板子运行信息(如果插了舵机就要连接电池),如果板子频繁重启,那95%以上是电源供电不足引起的
到这里Arduino版的六足机器人就算是做完了,太棒了!赶紧去遥控遥控玩玩吧!
六、六足机器人程序自调
注意事项
1.如果速度调的过快可能会过流,然后硬件就会保护并且重启,程序就无法正常运行,因此需要注意别把速度调的太快。
持续更新中!!!!!!!
七、购买途径
如果你对这个机器人很感兴趣但是又没有打印机等条件的话,可以在这里找到全套的零件散件哦!也可以加群找群友购买,因为好多群友有3D打印机。
全套散件:https://item.taobao.com/item.htm?ft=t&id=743489946290
主控板:https://h5.m.taobao.com/awp/core/detail.htm?ft=t&id=747115430069
八、其他好玩有趣的开源项目
四足蜘蛛机器人
不完整的制作资料如下:https://gitee.com/li9535/baize_spider
Opencat机器猫
不完整的制作资料如下:
https://blog.csdn.net/qqliuzhitong/article/details/118179622
画蛋机:
有其他好玩有趣的开源项目也可以推荐给我哦,我们一起把他做出来!
参考文献
1. https://github.com/SmallpTsai/hexapod-v2-7697