# voice_assistant **Repository Path**: lizhenke/voice_assistant ## Basic Information - **Project Name**: voice_assistant - **Description**: 语音模块,可支持二次开发 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: https://gitee.com/lizhenke/dashboard/projects - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-04-14 - **Last Updated**: 2023-04-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 驱动包安装和使用 支持版本 Ubuntu18.04 - Melodic Ubuntu20.04 - Noetic 支持平台 虚拟机、Ubuntu PC和卡片式电脑(树莓派等),以下统称为主机 安装 克隆源码到工作空间源码目录 执行udev规则 编译工作空间(该步骤可省略) 检查 将模块连接至主机 使用lsusb命令查看当前USB列表,列表中应有1a86:55d3 QinHeng Electronics 设备 如果没有,请检查设备连接,虚拟机中需要将设备挂载至虚拟机中。 使用ls -al /dev/ |grep ttyACM*命令,检查当前设备列表,应有ttyACM0和voice_assistant两个设备 如果仅有ttyACM0,则需要重新执行udev规则或重新插拔模块 使用 语音小助手ROS节点逻辑框架 语音小助手模块 串口USB voice_assistant_node artificial_idiot_node ​ ​ voice_cmd voice_cmd_fb 底盘驱动节点 导航节点 cmd_vel move_base_simple/goal move_base/result move_base/result 启动模块驱动节点voice_assistant_node和后端逻辑处理节点artificial_idiot_node C++ 复制代码 1 roslaunch voice_assistant startup.launch 启动之后模块会播报“节点已连接”。 将模块唤醒后,对模块说“前进”,模块会播报“底盘未就绪”。对模块说“开始导航”,模块会播报“导航节点未就绪” 通过底盘控制机器人移动,需要底盘节点已经运行,对于冰达机器人而已,即启动 C++ 复制代码 1 roslaunch base_control base_control.launch 当右节点订阅cmd_vel话题,artificial_idiot_node即判定底盘已就绪,现在将模块唤醒后,对模块说“前进”,artificial_idiot_node会发布cmd_vel话题,模块会播报“开始前进”,底盘将会前进。 语音导航 使用语音控制机器人导航,需要机器人已经正常可以正常运行导航功能。artificial_idiot_node节点以move_base_simple/goal话题被订阅为导航运行判断标准 启动机器人导航功能,对于冰达机器人而言,即 C++ 复制代码 1 roslaunch robot_navigation robot_navigation.launch 配置导航点坐标,即修改artificial_idiot_node.py文件中的self.goal_list数组,目前demo中支持最多三个坐标点,坐标点的格式为[x ,y , z],其中x,y单位为米,z为角度,使用四元数表述法,取值范围为-1.0~+1.0。 通过修改坐标点的值,可以修改导航目标点的坐标。 现在,启动语音模块节点 C++ 复制代码 1 roslaunch voice_assistant startup.launch 将模块唤醒后,对模块说“开始导航”,模块会播报“开始去目标点一”,到达目标点后会播报“到达目标点一”,如果导航任务失败无法到达目标点,则会播报“导航失败” 例程所支持的完整的语音命令参考 命令词列表