ROS与javascript入门教程-speech_commands-语音控制
ROS与javascript入门教程-speech_commands-语音控制
说明:
- 介绍如何实现web版的语音控制
步骤:
- 安装rosbridge-suite
sudo apt-get install ros-kinetic-rosbridge-suite
- 安装web服务器
sudo apt-get install apache2
- 启用apache2的ssl模块
sudo a2enmod ssl
- 配置apache2的HTTPS
sudo make-ssl-cert generate-default-snakeoil --force-overwrite
sudo a2ensite default-ssl
- 重启apache2
sudo service apache2 restart
测试服务器是否成功,浏览器访问http://10.0.0.25/index.html,看到欢迎页说明成功
下载代码:
cd /var/www/html
git clone https://github.com/UbiquityRobotics/speech_commands.git
- 创建自签名认证("snakeoil"),并配置浏览器和机器人之间可通过ssl通讯
cp /etc/ssl/private/ssl-cert-snakeoil.key /etc/ssl/certs/
- 设置权限
sudo chmod 644 /etc/ssl/certs/ssl-cert-snakeoil.key
- 修改rosbridge_websocket.launch如下3行
- 位置在/opt/ros/kinetic/share/rosbridge_server/launch/rosbridge_websocket.launch
<arg name="ssl" default="true" />
<arg name="certfile" default="/etc/ssl/certs/ssl-cert-snakeoil.pem" />
<arg name="keyfile" default="/etc/ssl/certs/ssl-cert-snakeoil.key" />
- 安装tf2_web_republisher
sudo apt-get install ros-kinetic-tf2-web-republisher
运行:
- 服务器,新终端,运行
roslaunch rosbridge_server rosbridge_websocket.launch
- 服务器,新终端,运行
rosrun tf2_web_republisher tf2_web_republisher
- 修改 speechcommands.html,设置对应的IP地址和端口号
- 可在pc或安卓收,通过chrome浏览器运行speechcommands.html
- 第一次运行要求认证,通过认证即可
使用:
- 点击箭头移动机器人
- 点击麦克风说话,会被要求启用麦克风,点确认
- 说"forward"或其他命令,看机器人的相应动作
参考:
- https://github.com/UbiquityRobotics/speech_commands
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号