ROS_安装一个第三方仿真软件包——机器人模拟世界

简介: 本文记录安装一个第三方仿真软件包的实战,从下载到成功运行!环境:ubuntu16.04 & ROS-Ubuntu2最终效果图下载源码包在Ubuntu系统上,确保git已经安装sudo apt-get install git...

本文记录安装一个第三方仿真软件包的实战,从下载到成功运行!
环境:ubuntu16.04 & ROS-Ubuntu2




img_63c4ee4f45eac99bc0c59ec08784cdde.png
最终效果图

下载源码包

在Ubuntu系统上,确保git已经安装
sudo apt-get install git

然后再创建一个名为tutorial_ws的工作空间,在它的src路径下克隆ROS-Academy-for-Beginners软件包
cd
mkdir -p tutorial_ws/src           创建catkin工作空间
cd tutorial_ws/src                 进入src路径,克隆教学软件包
git clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git

安装依赖

安装依赖:

cd ~/tutorial_ws
rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y

过程图:

img_894155166728af478c4503776d617767.png

img_5bad3c34799f9b8d26fa6d7f3976d0a8.png

img_c2b5b98bf17e8a69494ab79f265352ba.png

注意:以上命令非常重要,缺少依赖将导致软件包无法正常编译和运行。
在开始编译之前,需要确保Gazebo在7.0版本以上

gazebo -V
img_f2946c5c1610289304552c4256d2f984.png

编译

接着回到catkin_ws下编译:

cd ~/tutorial_ws
catkin_make

过程图:

img_45381fa5d4f3c68b962db6a3c19346fc.png

img_021049b56adda2819b732f5d2b80735a.png

img_ad3a23a261c899e2e3459a8658d83290.png

img_4fcb9bf9a0277da56bb6c890c70a6768.png

下面是刷新环境的两种方法:

source ~/tutorial_ws/devel/setup.bash
rospack profile

过程图:

img_ca6b20e63573c662bbcf1471995c5b77.png

img_18dee1567ae9800b69e5f97c0a0581a9.png

运行仿真程序

首先需要解决一个问题,不然待会儿运行时会闪退:

roslaunch robot_sim_demo robot_spawn.launch

下面是运行过程图(是的,一开始可能会遇到一个报错[robot_spawn.launch] is neither a launch file in package [robot_sim_demo] nor is [robot_sim_demo] a launch file name The traceback for the exception was written to the log file,然而下面的过程图已经是从报错到解决报错成功运行的过程了):

img_bb47a84a0b88a28007cde10a249d0260.png

liweipeng@liweipeng-virtual-machine:~$ rospack profile
Full tree crawl took 0.189714 seconds.
Directories marked with (*) contain no manifest.  You may
want to delete these directories.
To get just of list of directories without manifests,
re-run the profile with --zombie-only
-------------------------------------------------------------
0.141810   /opt/ros/kinetic/share
0.000770 * /opt/ros/kinetic/share/OpenCV-3.3.1-dev
0.000257 * /opt/ros/kinetic/share/doc
0.000043 * /opt/ros/kinetic/share/OpenCV-3.3.1-dev/haarcascades
0.000019 * /opt/ros/kinetic/share/OpenCV-3.3.1-dev/lbpcascades
0.000008 * /opt/ros/kinetic/share/doc/liborocos-kdl
liweipeng@liweipeng-virtual-machine:~$ roslaunch robot_sim_demo robot_spawn.launch 
[robot_spawn.launch] is neither a launch file in package [robot_sim_demo] nor is [robot_sim_demo] a launch file name
The traceback for the exception was written to the log file
liweipeng@liweipeng-virtual-machine:~$ roslaunch robot_sim_demo robot_spawn.launch 
[robot_spawn.launch] is neither a launch file in package [robot_sim_demo] nor is [robot_sim_demo] a launch file name
The traceback for the exception was written to the log file
liweipeng@liweipeng-virtual-machine:~$ cd ~/tutorial_ws
liweipeng@liweipeng-virtual-machine:~/tutorial_ws$ roslaunch robot_sim_demo robot_spawn.launch 
[robot_spawn.launch] is neither a launch file in package [robot_sim_demo] nor is [robot_sim_demo] a launch file name
The traceback for the exception was written to the log file
liweipeng@liweipeng-virtual-machine:~/tutorial_ws$ source ~/tutorial_ws/devel/setup.bash
liweipeng@liweipeng-virtual-machine:~/tutorial_ws$ rospack profile
Full tree crawl took 0.025369 seconds.
Directories marked with (*) contain no manifest.  You may
want to delete these directories.
To get just of list of directories without manifests,
re-run the profile with --zombie-only
-------------------------------------------------------------
0.016329   /opt/ros/kinetic/share
0.008478   /home/liweipeng/tutorial_ws/src
0.008405   /home/liweipeng/tutorial_ws/src/ROS-Academy-for-Beginners
0.000169 * /opt/ros/kinetic/share/OpenCV-3.3.1-dev
0.000036 * /opt/ros/kinetic/share/doc
0.000035 * /opt/ros/kinetic/share/OpenCV-3.3.1-dev/haarcascades
0.000015 * /opt/ros/kinetic/share/OpenCV-3.3.1-dev/lbpcascades
0.000006 * /opt/ros/kinetic/share/doc/liborocos-kdl
liweipeng@liweipeng-virtual-machine:~/tutorial_ws$ roslaunch robot_sim_demo robot_spawn.launch 
... logging to /home/liweipeng/.ros/log/3bcd5ac4-be9d-11e8-a270-000c29f43d2c/roslaunch-liweipeng-virtual-machine-2603.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

xacro: Traditional processing is deprecated. Switch to --inorder processing!
To check for compatibility of your document, use option --check-order.
For more infos, see http://wiki.ros.org/xacro#Processing_Order
xacro.py is deprecated; please use xacro instead
started roslaunch server http://liweipeng-virtual-machine:41819/

SUMMARY
========

PARAMETERS

img_f383a28d51cf85bab16c23bab2079a2d.png

img_64b2509d689893f3da651b257ae786ae.png
img_a29ad9b2006138b64616a82775be7563.png
img_082ce810ca4656fab9b1800efa7147f3.png

再打开一个终端,输入以下命令,用键盘控制机器人移动,聚焦控制程序窗口,按下i、j、l等按键,控制机器人移动:

rosrun robot_sim_demo robot_keyboard_teleop.py

过程图如下,记得运行前要刷新环境,或者用上面的方法把刷新命令添加到脚本:

img_c0eea367083defdd50310c1b727266e3.png

呐,对比上图,我把它移到了简介牌的右边:

img_63c4ee4f45eac99bc0c59ec08784cdde.png

相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
ROS入门实践
本课程将基于基础设施即代码 IaC 的理念,介绍阿里云自动化编排服务ROS的概念、功能和使用方式,并通过实际应用场景介绍如何借助ROS实现云资源的自动化部署,使得云上资源部署和运维工作更为高效。
目录
相关文章
|
运维 算法 机器人
阿里云AnalyticDB具身智能方案:破解机器人仿真数据、算力与运维之困
本文将介绍阿里云瑶池旗下的云原生数据仓库AnalyticDB MySQL推出的全托管云上仿真解决方案,方案采用云原生架构,为开发者提供从开发环境、仿真计算到数据管理的全链路支持。
|
机器学习/深度学习 算法 机器人
基于QLearning强化学习的较大规模栅格地图机器人路径规划matlab仿真
本项目基于MATLAB 2022a,通过强化学习算法实现机器人在栅格地图中的路径规划。仿真结果显示了机器人从初始位置到目标位置的行驶动作序列(如“下下下下右右...”),并生成了详细的路径图。智能体通过Q-Learning算法与环境交互,根据奖励信号优化行为策略,最终学会最优路径。核心程序实现了效用值排序、状态转换及动作选择,并输出机器人行驶的动作序列和路径可视化图。
847 85
|
传感器 算法 安全
机器人路径规划和避障算法matlab仿真,分别对比贪婪搜索,最安全距离,RPM以及RRT四种算法
本程序基于MATLAB 2022A实现机器人路径规划与避障仿真,对比贪婪搜索、最安全距离、RPM和RRT四种算法。通过地图模拟环境,输出各算法的路径规划结果,展示其在避障性能与路径优化方面的差异。代码包含核心路径搜索逻辑,并附有测试运行图示,适用于机器人路径规划研究与教学演示。
1195 64
|
Ubuntu 机器人 Shell
在Jetson TX2的Ubuntu18.04系统中安装ROS的教程
所有这些步骤并不复杂,但确实需要仔细一点。如果遇到问题,不要灰心,问题是解决问题的开始。保持耐心,细心阅读错误信息,通常情况下,问题的答案就藏在其中。祝ROS旅程顺利!
609 18
|
算法 数据可视化 安全
基于DWA优化算法的机器人路径规划matlab仿真
本项目基于DWA优化算法实现机器人路径规划的MATLAB仿真,适用于动态环境下的自主导航。使用MATLAB2022A版本运行,展示路径规划和预测结果。核心代码通过散点图和轨迹图可视化路径点及预测路径。DWA算法通过定义速度空间、采样候选动作并评估其优劣(目标方向性、障碍物距离、速度一致性),实时调整机器人运动参数,确保安全避障并接近目标。
673 68
|
机器学习/深度学习 算法 机器人
基于Qlearning强化学习的机器人路线规划matlab仿真
本内容展示了基于Q-learning强化学习算法的路径规划研究,包括MATLAB仿真效果、理论知识及核心代码。通过训练与测试,智能体在离散化网格环境中学习最优策略以规避障碍并到达目标。代码实现中采用epsilon-贪婪策略平衡探索与利用,并针对紧急情况设计特殊动作逻辑(如后退)。最终,Q-table收敛后可生成从起点到终点的最优路径,为机器人导航提供有效解决方案。
460 20
|
机器人 数据安全/隐私保护
基于模糊PID控制器的puma560机器人控制系统的simulink建模与仿真
本课题研究基于模糊PID控制器的PUMA 560机器人控制系统建模与仿真,对比传统PID控制器性能。通过Simulink实现系统建模,分析两种控制器的误差表现。模糊PID结合了PID的线性控制优势与模糊逻辑的灵活性,提升动态性能和抗干扰能力。以PUMA 560机器人为例,其运动学和动力学模型为基础,设计针对各关节的模糊PID控制器,包括模糊化、规则制定、推理及去模糊化等步骤,最终实现更优的控制效果。
|
机器学习/深度学习 算法 数据可视化
基于Qlearning强化学习的机器人迷宫路线搜索算法matlab仿真
本内容展示了基于Q-learning算法的机器人迷宫路径搜索仿真及其实现过程。通过Matlab2022a进行仿真,结果以图形形式呈现,无水印(附图1-4)。算法理论部分介绍了Q-learning的核心概念,包括智能体、环境、状态、动作和奖励,以及Q表的构建与更新方法。具体实现中,将迷宫抽象为二维网格世界,定义起点和终点,利用Q-learning训练机器人找到最优路径。核心程序代码实现了多轮训练、累计奖励值与Q值的可视化,并展示了机器人从起点到终点的路径规划过程。
705 0
|
算法 机器人 数据安全/隐私保护
四自由度SCARA机器人的运动学和动力学matlab建模与仿真
本课题深入研究SCARA机器人系统,提出其动力学与运动学模型,并基于MATLAB Robotics Toolbox建立四自由度SCARA机器人仿真对象。通过理论结合仿真实验,实现了运动学正解、逆解及轨迹规划等功能,完成系统实验和算法验证。SCARA机器人以其平面关节结构实现快速定位与装配,在自动生产线中广泛应用,尤其在电子和汽车行业表现优异。使用D-H参数法进行结构建模,推导末端执行器的位姿,建立了机器人的运动学方程。
|
机器人 数据安全/隐私保护
基于PID控制器的六自由度串联机器人控制系统的simulink建模与仿真
本课题基于MATLAB2022a的Simulink环境,对六自由度串联机器人控制系统进行建模与仿真,采用PID控制器实现关节的位置、速度或力矩控制。PID控制器通过比例、积分、微分三种策略有效减小系统误差,提高响应速度和稳定性。仿真结果显示系统运行良好,无水印。尽管PID控制简单实用,但在复杂动力学环境下,常结合其他控制策略以增强鲁棒性。

热门文章

最新文章

推荐镜像

更多
  • ros