eagler8 发表于 2024-1-21 15:48:11

【花雕动手做】ASRPRO语音识别(48)---用N20电机的苗条小车

装修屋子,找了一段墙面布线槽,外槽宽度只有23毫米,截取一段长为24厘米,尝试做个苗条小车





小电机是拆机二手的,主要是共享单车,摩拜的电子锁电机



先在线槽上安装了二只N20小电机





装上二个快餐盒盖做轮子



电机驱动使用MX1508双路电机驱动模块



还有DRV8833双路电机驱动模块



供测试的锂电池





测试一下使用3.7V锂电池的动力系统(视频)

[https://v.youku.com/v_show/id_XNTEyNTM2NDcyOA==.html?spm=a2hcb.playlsit.page.1](https://v.youku.com/v_show/id_XNTEyNTM2NDcyOA==.html?spm=a2hcb.playlsit.page.1)

【花雕动手做】实验五十三:语音控制摩拜小电机的纤细机器人测试平台
实验开源代码

#include "asr.h"
extern "C"{ void * __dso_handle = 0 ;}
#include "setup.h"
#include "myLib/asr_event.h"

uint32_t snid;

//{ID:250,keyword:"命令词",ASR:"最大音量",ASRTO:"音量调整到最大"}
//{ID:251,keyword:"命令词",ASR:"中等音量",ASRTO:"音量调整到中等"}
//{ID:252,keyword:"命令词",ASR:"最小音量",ASRTO:"音量调整到最小"}
//{speak:小蝶-清新女声,vol:20,speed:10,platform:haohaodada}
//{playid:10001,voice:欢迎使用人工智能AI助手,用小龟小车唤醒我。}
//{playid:10002,voice:我退下了,用小龟小车唤醒我}
void sys_power_on_hook(void){
vol_set(7);
}

void ASR_CODE()
{
//{ID:500,keyword:"唤醒词",ASR:"小龟小车",ASRTO:"我在呢"}
if(snid == 500){

}
//{ID:501,keyword:"唤醒词",ASR:"小龟",ASRTO:"我在呢"}
if(snid == 501){

}
//{ID:502,keyword:"唤醒词",ASR:"小车",ASRTO:"我在呢"}
if(snid == 502){

}
//{ID:503,keyword:"命令词",ASR:"前进",ASRTO:"开走喽"}
if(snid == 503){
    digital_write(2,1);
    digital_write(3,0);
    digital_write(5,0);
    digital_write(6,1);
}
//{ID:504,keyword:"命令词",ASR:"后退",ASRTO:"注意,我倒车啦"}
if(snid == 504){
    digital_write(2,0);
    digital_write(3,1);
    digital_write(5,1);
    digital_write(6,0);
}
//{ID:505,keyword:"命令词",ASR:"刹车",ASRTO:"好的,我停下"}
if(snid == 505){
    digital_write(2,1);
    digital_write(3,1);
    digital_write(5,1);
    digital_write(6,1);
}
//{ID:506,keyword:"命令词",ASR:"右转",ASRTO:"行,我右拐弯了"}
if(snid == 506){
    digital_write(2,1);
    digital_write(3,0);
    digital_write(5,1);
    digital_write(6,0);
}
//{ID:507,keyword:"命令词",ASR:"左转",ASRTO:"是,向左拐弯"}
if(snid == 507){
    digital_write(2,0);
    digital_write(3,1);
    digital_write(5,0);
    digital_write(6,1);
}
//{ID:508,keyword:"命令词",ASR:"别开了",ASRTO:"好的,我停下"}
if(snid == 508){
    digital_write(2,1);
    digital_write(3,1);
    digital_write(5,1);
    digital_write(6,1);
}
set_state_enter_wakeup(15000);
}

void setup()
{
digital_write(0, 0);
set_gpio_input(1);
digital_write(2, 0);
digital_write(3, 0);
set_gpio_input(4);
digital_write(5, 0);
digital_write(6, 0);
set_gpio_input(13);
set_gpio_input(14);
set_gpio_input(20);
}
生成模型与编译烧录




实验记录视频

【ASR PRO离线语音控制的苗条小车】 https://www.bilibili.com/video/BV1cN4y1C7vS/?share_source=copy_web&vd_source=371a292a55e5ca9be994cbb4a86cc987

//player.bilibili.com/player.html?bvid=BV1cN4y1C7vS

【最小轮子的ASR PRO离线语音苗条小车】 https://www.bilibili.com/video/BV1uB4y1o7Li/?share_source=copy_web&vd_source=371a292a55e5ca9be994cbb4a86cc987

//player.bilibili.com/player.html?bvid=BV1uB4y1o7Li







页: [1]
查看完整版本: 【花雕动手做】ASRPRO语音识别(48)---用N20电机的苗条小车