站内搜索
发作品签到
智能控制机器狗PCB
专业版

智能控制机器狗PCB

简介

1. 功能丰富 :集成了语音交互、动作控制、网络通信等多种功能。2. 技术先进 :采用了最新的语音处理技术、实时控制系统和网络通信协议。3. 易于扩展 :系统设计模块化,支持多种硬件平台和功能扩展。

简介:1. 功能丰富 :集成了语音交互、动作控制、网络通信等多种功能。2. 技术先进 :采用了最新的语音处理技术、实时控制系统和网络通信协议。3. 易于扩展 :系统设计模块化,支持多种硬件平台和功能扩展。
复刻成本:150

开源协议

OpenAtom OHL 1.0

创建时间:2026-04-12 22:35:09更新时间:2026-04-27 11:18:07

描述

题目要求

基于移动互联的控制机器狗的设计与实现

题目分析

本项目通过融合ESP32-S3、语音处理、动作控制和网络通信等技术,成功实现了一款功能丰富、性能稳定的智能控制机器狗。

总体设计方案框图
列:
jgt.png

原理图设计说明

原理图:

SCH_V1原理图_1-SCH_2026-04-19.png

SCH_V4原理图_1-P1_2026-04-18.png

PCB设计说明

PCB 采用信号-电源-地-信号的六层堆叠结构:顶层与底层专用于高速信号走线,内层分别设置完整的电源平面和接地平面,从而有效抑制电磁干扰并提升信号完整性。关键电源引脚附近布置 0.1μF 与 10μF 组合去耦电容,以最大限度降低电源噪声;26MHz 高精度温补晶振紧邻芯片时钟输入端,确保系统时序稳定性;复位电路由 RC 延时与施密特触发器构成,保证上电及异常状态下的可靠重启。

软件说明

核心代码如下:
代码块:

// 任务创建和优先级配置代码
void createSystemTasks() {
    xTaskCreatePinnedToCore(voiceRecognitionTask, "VoiceTask"8192NULL5, &voiceTaskHandle, 0);
    xTaskCreatePinnedToCore(motionControlTask, "MotionTask"4096NULL4, &motionTaskHandle, 1);
    xTaskCreatePinnedToCore(sensorMonitorTask, "SensorTask"2048NULL3, &sensorTaskHandle, 0);
    xTaskCreatePinnedToCore(displayUpdateTask, "DisplayTask"2048NULL2, &displayTaskHandle, 1);
    xTaskCreatePinnedToCore(communicationTask, "CommTask"4096NULL3, &commTaskHandle, 0);
    xTaskCreatePinnedToCore(systemMonitorTask, "MonitorTask"1024NULL1, &monitorTaskHandle, 1);
}
include "esp_afe_sr_models.h"
include "esp_wn_iface.h"
include "esp_wn_models.h"
static const esp_wn_iface_t *wakenet = &ESP_WN_MULTINET5_QUANTIZED;
static model_iface_data_t *model_data_wn;
void wakeup_init() {
    model_data_wn = wakenet->create("wn9_hilexin", DET_MODE_90);
    wakenet->set_det_threshold(model_data_wn, 0.851);
}
void wakeup_task(void *arg) {
    int16_t *audio_buffer = (int16_t *)malloc(320 * sizeof(int16_t));
    while(1) {
        // 读取音频数据
        i2s_read(I2S_NUM_1, audio_buffer, 640, &bytes_read, portMAX_DELAY);
        
        // 唤醒词检测
        int wake_result = wakenet->detect(model_data_wn, audio_buffer);
        if(wake_result > 0) {
            gpio_set_level(LED_PIN, 1);  // 点亮LED提示
            xEventGroupSetBits(voice_event_group, WAKE_UP_BIT);
        }
        vTaskDelay(10 / portTICK_PERIOD_MS);
    }
}
include "esp_mn_iface.h"
include "esp_mn_models.h"
static const esp_mn_iface_t *multinet = &ESP_MN_MULTINET6_QUANTIZED;
static model_iface_data_t *model_data_mn;
void command_recognition_init() {
    // 初始化命令词识别模型
    model_data_mn = multinet->create("mn6_cn"6000);
    
    // 添加命令词
    multinet->add_command(model_data_mn, 1"xiang qian zou");    // 向前走
    multinet->add_command(model_data_mn, 2"xiang hou tui");    // 向后退  
    multinet->add_command(model_data_mn, 3"zuo zhuan");        // 左转
    multinet->add_command(model_data_mn, 4"you zhuan");        // 右转
    multinet->add_command(model_data_mn, 5"zuo xia");          // 坐下
    multinet->add_command(model_data_mn, 6"pa xia");           // 趴下
}
void command_task(void *arg) {
    int16_t *audio_buffer = (int16_t *)malloc(480 * sizeof(int16_t));
    while(1) {
        EventBits_t bits = xEventGroupWaitBits(voice_event_group, WAKE_UP_BIT, 
                                               pdTRUE, pdFALSE, portMAX_DELAY);
        if(bits & WAKE_UP_BIT) {
            // 开始命令识别,设置5秒超时
            TickType_t start_time = xTaskGetTickCount();
            while((xTaskGetTickCount() - start_time) < pdMS_TO_TICKS(5000)) {
                i2s_read(I2S_NUM_1, audio_buffer, 960, &bytes_read, portMAX_DELAY);
                int command_id = multinet->detect(model_data_mn, audio_buffer);
                if(command_id > 0) {
                    execute_voice_command(command_id);
                    break;
                }
            }
        }
    }
}

实物展示说明

image.png

注意事项

PCB板分为两种,贴片版本焊接要求较高,一定要注意不要虚焊

演示视频

https://www.douyin.com/user/self?modal_id=7508959368307772708

其它附件上传

分享文件:毕业设计项目-午安
链接:https://pan.xunlei.com/s/VOq571HHU2cJAyvjP1if2I9hA1?pwd=e67q#

特别感谢:
各位开源大佬!

注意:
本项目仅限个人和非商业用途使用。禁止任何形式的商业使用。

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
1
3D外壳模型.zip
29

附件

序号文件名称下载次数
1
小智后台配置.txt
18
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航