最新消息:

ROS与javascript入门教程-speech_commands-语音控制

ROS1/一代机器人系统 少儿编程 1644浏览 0评论
ROS与JS入门教程

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

您必须 登录 才能发表评论!