# 瓦力机器人接入小智AI **Repository Path**: sifunit/wallexiaozhi ## Basic Information - **Project Name**: 瓦力机器人接入小智AI - **Description**: 分享瓦力机器人接入小智AI的过程,瓦力如何搭建请参考上篇 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: https://gitee.com/roboen/wallexiaozhi - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2026-03-25 - **Last Updated**: 2026-03-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 瓦力机器人接入小智AI 其他更详细的内容请移步开源机器人论坛:https://www.openrobo.com.cn/ 前言 本篇瓦力机器人制作属个人爱好,不涉及商用。瓦力机器人的完整制作请参考上篇[瓦力机器人制作](http://https://gitee.com/roboen/wally-robot-manufacturing),本篇在原来瓦力的基础上接入小智AI,关于小智AI的原始编码来自b站大佬虾哥在网上开源的,硬件以及接入的一些方法也是在网上参考学习的,如有遗漏欢迎补充。 ### 关于硬件 上篇中我们用了树莓派给瓦力设计了一些动作,此次接入瓦力不需要用到树莓派,此处用到的硬件是ESP32 S3小智AI开发板,选择的是带 麦克风和喇叭一体化的版本,安装起来更方便,也更适合做语音交互。 注:使用ESP32开发板接入小智的,上篇中的树莓派以及喇叭功放都不用再使用。 也就是上篇说到的以下这些都不用购买,上篇教程:(https://gitee.com/roboen/turbojet-model-crafting#%E5%9B%9B%E6%9D%90%E6%96%99%E6%B8%85%E5%8D%95%E5%92%8C%E5%87%86%E5%A4%87) 树莓派4代B型*1个,规格:4代B型,单主板内存RAM:8GB ASR-PRO语音智能语音识别控制模块*1个,规格:ASR-PRO喇叭 ASR-PRO语音智能语音识别控制模块*1个,规格:STC-LINK官方下载器(核心板专用)不带壳+4P杜邦线 ASR-PRO语音智能语音识别控制模块*1个,规格:ASR-PRO核心板4M(排针未焊) ASR-PRO语音智能语音识别控制模块*1个,规格:高灵敏度麦克风 带咪套(核心板专用) #### 硬件变更: 将原本的树莓派移除,并将供电修改到esp32模块上,将原本的USB连接arduino修改为使用杜邦线将ESP32开发板与arduino相连。 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%871.png) ### 实现思路 整体的实现思路是这样的: 由ESP32开发板控制 Arduino,然后 Arduino 再去控制舵机和电机。 其实我们一开始尝试过让小智直接驱动舵机和电机,但调试下来效果不太稳定。所以这次我们选择了一个更保守但可靠的方案,用 Arduino 做中间层来分担控制任务。 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/1.png) #### 接线示意 Esp32与arduino接线 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%879.png) ### 在ESP32中刷写小智固件: 因ESP32固件源码整体文件过大无法上传,我已打包上传网盘,以下是ESP32固件源码文件,请自行下载解压使用。 ESP32固件源码文件:https://pan.quark.cn/s/2f8f1f93f56e #### 1.选择烧录我编译好的固件 **请注意刷小智固件前记得在小智后台关闭OTA升级** ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/10.png) **目前预编动作:** 手臂动作:左手抬高放下,右手抬高放下 头部动作:摇头,点头,头左斜,头右斜,头回到中间 履带动作:前进,后退,左转,右转 组合动作:正常模式,敬礼,跳舞,开心表情 如果你不需要添加或修改其他动作,可以直接下载我们提供的编译好的文件(前文提供的[esp32固件源码.zip](https://pan.quark.cn/s/2f8f1f93f56e)) 下载打开后其中.bin文件就是预编译好的固件可以直接刷。 引脚定义:UART_TX_PIN 18 // ESP32 → Arduino RX UART_RX_PIN19 // ESP32 → Arduino TX ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%872.png) 之后根据小智的刷固件教程一步步刷入,就能运行了。 这个是小智官方教程地址,有需要可以参考: https://ai.feishu.cn/wiki/Zpz4wXBtdimBrLk25WdcXzxcnNS #### 2.自行编译 使用源代码编译刷写的好处是可以添加自己的动作定义及一些功能。 如果想使用源代码自行编译,可以参考这个方法。 同样下载好文件(前文提供的[esp32固件源码.zip](https://pan.quark.cn/s/ae8a2c653c31)) 打开文件夹walle-xiaozhi为源代码。 动作编辑主要文件路径:\esp32固件源码\walle-xiaozhi\main中walle.h和walle.cc文件。 之后再根据代码中的注释来添加自己想要的动作。 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%873.png) 添加完成之后对文件进行保存,并编译和刷写。 **注:该方式需要安装IDF编译环境,才能刷写固件,** 具体方法点击参考官方文档:[Windows搭建 ESP IDF 5.5.1开发环境以及编译小智](https://icnynnzcwou8.feishu.cn/wiki/JEYDwTTALi5s2zkGlFGcDiRknXf) ### Arduino控制操作: **如果之前舵机有校准过的,则直接将esp的18 19引脚连接到arduino的RX TX引脚即可。** **1.舵机校准** 保持之前的硬件连接,先将arduino刷舵机校准程序。 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%874.png) 刷入后,打开串口监视器,根据提示进行操作,通过A和D按键调整角度。 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%875.png) 按照提示校准完成会生成每个关节的偏移量。 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%876.png) **2.刷入主程序** 将前面校准的这些偏移量修改到主程序中,然后刷写主程序到arduino。刷写完成后连接通讯引脚即可。 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%877.png) 主程序中偏移量修改 ![输入图片说明](%E6%96%87%E4%B8%AD%E9%99%84%E5%9B%BE/%E5%9B%BE%E7%89%878.png)