Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

新增ROS Noetic分支,测试通过 #148

Closed
wants to merge 67 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
3d0c8ef
update README.md
anchuanxu Jul 15, 2019
cce7f4e
add dependlib
anchuanxu Jul 16, 2019
0d8f036
add hector_slam
anchuanxu Jul 16, 2019
3351428
add dependlib
anchuanxu Jul 16, 2019
b9e51aa
test
pengxiaoxing0906 Jul 22, 2019
c8882a3
Merge pull request #1 from pengxiaoxing0906/master
anchuanxu Jul 22, 2019
73c0aba
修正gazebo9.10打不开仿真环境问题
anchuanxu Jul 22, 2019
ebcee57
Merge branch 'master' of https://github.com/anchuanxu/ROS-Academy-for…
anchuanxu Jul 22, 2019
bde983c
update param_demo_cpp.launch
anchuanxu Jul 22, 2019
16e87fe
remove meshes.bak
anchuanxu Jul 22, 2019
acd62ce
Merge pull request #1 from anchuanxu/master
pengxiaoxing0906 Jul 22, 2019
c3dfccc
Delete test.txt
pengxiaoxing0906 Jul 22, 2019
1f4b5e0
add somefiles about orb2 install and build
anchuanxu Jul 23, 2019
f14fbdc
add new map
anchuanxu Jul 23, 2019
c420bb0
Merge branch 'master' of https://github.com/anchuanxu/ROS-Academy-for…
anchuanxu Jul 23, 2019
e11f31b
Merge pull request #2 from anchuanxu/master
pengxiaoxing0906 Jul 24, 2019
bd67494
update hector_slam_demo.launch
anchuanxu Jul 24, 2019
3e17be2
update hector_demo.launch
anchuanxu Jul 24, 2019
9296942
Fixed a bug with the model showing anomalies in rviz
anchuanxu Jul 24, 2019
f7cd105
update readme
anchuanxu Jul 24, 2019
b15b089
Merge pull request #3 from anchuanxu/master
pengxiaoxing0906 Jul 24, 2019
3ee9561
update readme
anchuanxu Jul 24, 2019
41423d6
fix a error about hector mapping
anchuanxu Jul 24, 2019
576bcdd
fixed a bug about launch hector
anchuanxu Jul 25, 2019
ba91f88
安装运行中的bug记录及解决办法
pengxiaoxing0906 Jul 25, 2019
92782e8
Update orb的填坑攻略.md
pengxiaoxing0906 Jul 25, 2019
6768fb1
fixed some bug about rtabmap
anchuanxu Jul 25, 2019
6cd27cb
update 指南.md
anchuanxu Jul 26, 2019
cc14634
update action_demo
anchuanxu Jul 26, 2019
9c4156b
add README.md
anchuanxu Jul 26, 2019
c4feb4e
update README.md
anchuanxu Jul 26, 2019
210e569
update README.md
anchuanxu Jul 26, 2019
f395623
delete test.txt
anchuanxu Jul 26, 2019
f179f77
Merge pull request #2 from pengxiaoxing0906/master
anchuanxu Jul 26, 2019
eed46e9
Merge pull request #4 from anchuanxu/master
pengxiaoxing0906 Jul 26, 2019
5643d56
Update OpenCV 3.4.1安装.md
pengxiaoxing0906 Jul 26, 2019
2d14d9e
Update OpenCV 3.4.1安装.md
pengxiaoxing0906 Jul 26, 2019
5fa9d1a
Update OpenCV 3.4.1安装.md
pengxiaoxing0906 Jul 26, 2019
e05eaea
Update README
pengxiaoxing0906 Jul 26, 2019
a986650
Update 解决在仿真环境跑orb_slam2没有摄像头信息的问题.md
pengxiaoxing0906 Jul 26, 2019
34b05ca
关于opencv的修改
pengxiaoxing0906 Jul 26, 2019
18e6856
删除opencv3.2的相关说明
pengxiaoxing0906 Jul 26, 2019
79bbaf0
cartographer_ros
chenjy9581 Jul 28, 2019
88f06d5
Merge pull request #3 from pengxiaoxing0906/master
anchuanxu Jul 28, 2019
3c1e8c7
Merge pull request #4 from chenjy9581/master
anchuanxu Jul 28, 2019
5b28dcf
add cartographer code
anchuanxu Jul 29, 2019
2d1a274
add script adn image
anchuanxu Jul 29, 2019
83df0ad
Update README.md
anchuanxu Jul 29, 2019
2ffcc64
Update README.md
anchuanxu Jul 30, 2019
8ad9234
fix a bug
anchuanxu Jul 30, 2019
0a3b703
添加代码仓库对于 ROS Melodic / Ubuntu 18.04 的支持
lazyparser Jul 30, 2019
7d12f87
add CONTRIBUTORS
anchuanxu Jul 30, 2019
aef9d7f
Merge pull request #53 from anchuanxu/melodic
lazyparser Jul 30, 2019
8da579b
完善py文件代码,兼容python3
chenjy9581 Aug 25, 2019
c67dcfd
Merge pull request #6 from chenjy9581/melodic
anchuanxu Aug 25, 2019
b00b154
Update navigation_demo.launch ,fixed a bug
anchuanxu Nov 22, 2019
a111afc
fixed a build bug
Jun 8, 2020
9fc4316
修复了navi运行tf的一个Bug
Jun 9, 2020
43878c0
fixed conflicts
Jun 9, 2020
9ebd044
Merge pull request #91 from anchuanxu/dev
anchuanxu Jun 9, 2020
8176e71
Merge pull request #57 from anchuanxu/melodic
anchuanxu Aug 17, 2020
1723a2a
update readme
Aug 17, 2020
1aac69c
Merge pull request #101 from anchuanxu/melodic
anchuanxu Aug 17, 2020
0070cbf
update RADEME.md
Sep 16, 2020
c138983
add new sample scene
Sep 18, 2020
a18023b
test pass on Ubuntu 20.04 with ROS noetic :ok:
thinkexist1989 Jan 28, 2022
cff130c
add yocs_msgs
thinkexist1989 Jan 28, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
31 changes: 31 additions & 0 deletions CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
## Ubuntu 18.04 课程代码仓库升级CONTRIBUTORS

### 安传旭

- 电信科学技术研究院
- email: anchuanxu@126.com
- github: [https://github.com/anchuanxu](https://github.com/anchuanxu)

### 彭晓星

- 北京理工大学
- email: 1119832974@qq.com
- github: [https://github.com/pengxiaoxing0906](https://github.com/pengxiaoxing0906)

### 蓝煜东

- 北京航空航天大学
- email: lan1106628183@163.com
- github: [https://github.com/staillyd](https://github.com/staillyd)

### 陈家友

- 电信科学技术研究院
- email: 1132021192@qq.com
- github: [https://github.com/chenjy9581](https://github.com/chenjy9581)

##### Update :2019/7

##### copyright

![Logo](./joint_logo.png)
63 changes: 50 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
| **robot_sim_demo** | 机器人仿真程序,大部分示例会用到这个软件包 |
| **topic_demo** | topic通信,自定义msg,包括C++和python两个版本实现 |
| **service_demo** | service通信,自定义srv,分别以C++和python两种语言实现 |
| **action_demo** | action通信,自定义action,C++和python两种语言实现 |
| **action_demo** | action通信,自定义action,C++语言实现 |
| **param_demo** | param操作,分别以C++和python两种语言实现 |
| **msgs_demo** | 演示msg、srv、action文件的格式规范 |
| **tf_demo** | tf相关API操作演示,tf示例包括C++和python两个版本 |
Expand All @@ -30,24 +30,27 @@
| **urdf_demo** | 创建机器人urdf模型,在RViz中显示 |
| **navigation_sim_demo** | 导航演示工具包,包括AMCL, Odometry Navigation等演示 |
| **slam_sim_demo** | 同步定位与建图演示,包括Gmapping, Karto, Hector等SLAM演示 |
| **robot_orbslam2_demo** | ORB_SLAM2的演示 |
| **orbslam2_demo** | ORB_SLAM2的演示 |
| **rtabmap_demo** | rtabmap的演示 |
| **cartographer_demo** | cartographer安装演示包|
| **dependlib** | ubuntu18所依赖的包(melodic不自带) |
| **ros_academy_for_beginners** | Metapacakge示例,依赖了本仓库所有的pacakge |


---

## 下载和编译
## 下载编译和运行

1. 克隆或下载ROS-Academy-for-Beginners教学包到工作空间的`/src`目录下,例如 `~/catkin_ws/src`
```sh
$ cd ~/catkin_ws/src
$ git clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git
$ git clone -b melodic https://github.com/DroidAITech/ROS-Academy-for-Beginners.git
```

2. 安装教学包所需的依赖
```sh
$ cd ~/catkin_ws
$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
$ rosdep install --from-paths src --ignore-src --rosdistro=noetic -y
```

3. 编译并刷新环境
Expand All @@ -56,18 +59,16 @@ $ catkin_make
$ source ~/catkin_ws/devel/setup.bash
```

4. 运行示例
4. 升级gazebo

---
## 运行须知
(1). 建议在**本地Ubuntu 20.04**下运行仿真程序。目前Gazebo模拟器的**兼容性**是一大问题,在虚拟机或配置较低的电脑上可能无法运行。**如果你的显卡是N卡,建议安装Ubuntu下的显卡驱动**。

1. 建议在**本地Ubuntu 16.04**下运行仿真程序。目前Gazebo模拟器的**兼容性**是一大问题,在虚拟机或配置较低的电脑上可能无法运行。**如果你的显卡是N卡,建议安装Ubuntu下的显卡驱动**
(2). 运行Gazebo仿真程序`robot_sim_demo`前,请将Gazebo升级到9.x版本以上(**20.04下是11.x**)

2. 运行Gazebo仿真程序`robot_sim_demo`前,请将Gazebo升级到7.x版本以上(**推荐7.9版本**)。

查看Gazebo版本方法
```sh
$ gazebo -v #确认7.0以上,推荐7.9
$ gazebo -v # Ubuntu 20.04下是gazebo 11.x
```

升级方法
Expand All @@ -76,12 +77,48 @@ $ source ~/catkin_ws/devel/setup.bash
$ sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
$ wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install gazebo7
$ sudo apt-get install gazebo11
```

系统更新

```sh
$ sudo apt-get update && upgrade #需要执行,否则环境启动可能存在问题
```

3. 确保所有依赖都已安装,如`gazebo_ros`, `gmapping`, `slam_karto`, `amcl`。
(3). 确保所有依赖都已安装,如`gazebo_ros`, `gmapping`, `slam_karto`, `amcl`。

5. 启动仿真环境

```
roslaunch robot_sim_demo robot_spawn.launch
```

6. 启动Slam导航示例

第一步,新开终端,首先启动仿真环境

```
roslaunch robot_sim_demo robot_spawn.launch
```

第二步,新开终端,启动slam

```
roslaunch slam_sim_demo gampping_demo.launch
```

第三步,新开终端,启动navigation

```
roslaunch navigation_sim_demo navigation_demo.launch
```

第四步,新开终端,启动rviz

```
roslaunch navigation_sim_demo view_navigation.launch
```

---
## Copyright
Expand Down
70 changes: 29 additions & 41 deletions action_demo/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,15 @@ project(action_demo)
find_package(catkin REQUIRED COMPONENTS
actionlib
actionlib_msgs
genmsg
geometry_msgs
message_generation
roscpp
rospy
std_msgs
)

## System dependencies are found with CMake's conventions
find_package(Boost REQUIRED COMPONENTS system)
# find_package(Boost REQUIRED COMPONENTS system)


## Uncomment this if the package has a setup.py. This macro ensures
Expand All @@ -35,10 +36,10 @@ find_package(Boost REQUIRED COMPONENTS system)
## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
## * In the file package.xml:
## * add a build_depend tag for "message_generation"
## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET
## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET
## * If MSG_DEP_SET isn't empty the following dependency has been pulled in
## but can be declared for certainty nonetheless:
## * add a run_depend tag for "message_runtime"
## * add a exec_depend tag for "message_runtime"
## * In this file (CMakeLists.txt):
## * add "message_generation" and every package in MSG_DEP_SET to
## find_package(catkin REQUIRED COMPONENTS ...)
Expand All @@ -48,6 +49,18 @@ find_package(Boost REQUIRED COMPONENTS system)
## and list every .msg/.srv/.action file to be processed
## * uncomment the generate_messages entry below
## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)
add_action_files(
# FILES
# Action1.action
# Action2.action
DIRECTORY action
FILES Linewalk.action
)

## Generate added messages and services with any dependencies listed here
generate_messages(
DEPENDENCIES actionlib_msgs geometry_msgs std_msgs
)

## Generate messages in the 'msg' folder
# add_message_files(
Expand All @@ -64,18 +77,17 @@ find_package(Boost REQUIRED COMPONENTS system)
# )

## Generate actions in the 'action' folder
add_action_files(
DIRECTORY action FILES DoDishes.action
# add_action_files(
# FILES
# Action1.action
# Action2.action
)
# )

## Generate added messages and services with any dependencies listed here
generate_messages(
DEPENDENCIES
actionlib_msgs
)
# generate_messages(
# DEPENDENCIES
# actionlib_msgs# geometry_msgs# std_msgs
# )

################################################
## Declare ROS dynamic reconfigure parameters ##
Expand All @@ -84,7 +96,7 @@ DIRECTORY action FILES DoDishes.action
## To declare and build dynamic reconfigure parameters within this
## package, follow these steps:
## * In the file package.xml:
## * add a build_depend and a run_depend tag for "dynamic_reconfigure"
## * add a build_depend and a exec_depend tag for "dynamic_reconfigure"
## * In this file (CMakeLists.txt):
## * add "dynamic_reconfigure" to
## find_package(catkin REQUIRED COMPONENTS ...)
Expand All @@ -102,14 +114,14 @@ DIRECTORY action FILES DoDishes.action
###################################
## The catkin_package macro generates cmake config files for your package
## Declare things to be passed to dependent projects
## INCLUDE_DIRS: uncomment this if you package contains header files
## INCLUDE_DIRS: uncomment this if your package contains header files
## LIBRARIES: libraries you create in this project that dependent projects also need
## CATKIN_DEPENDS: catkin_packages dependent projects also need
## DEPENDS: system dependencies of this project that dependent projects also need
catkin_package(
# INCLUDE_DIRS include
# LIBRARIES actionlib_demo
CATKIN_DEPENDS actionlib actionlib_msgs genmsg message_generation roscpp rospy std_msgs
# LIBRARIES action_test
CATKIN_DEPENDS actionlib_msgs
# DEPENDS system_lib
)

Expand All @@ -120,20 +132,8 @@ catkin_package(
## Specify additional locations of header files
## Your package locations should be listed before other locations
include_directories(
include
# include
${catkin_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
)
add_executable(dishes_Server src/dishes_Server.cpp)

target_link_libraries(
dishes_Server
${catkin_LIBRARIES}
)

add_dependencies(
dishes_Server
${action_demo_EXPORTED_TARGETS}
)

## Declare a C++ library
Expand Down Expand Up @@ -166,18 +166,6 @@ add_dependencies(
# ${catkin_LIBRARIES}
# )

add_executable(dishes_Client src/dishes_Client.cpp)

target_link_libraries(
dishes_Client
${catkin_LIBRARIES}
)

add_dependencies(
dishes_Client
${action_demo_EXPORTED_TARGETS}
)

#############
## Install ##
#############
Expand Down Expand Up @@ -218,7 +206,7 @@ add_dependencies(
#############

## Add gtest based cpp test target and link libraries
# catkin_add_gtest(${PROJECT_NAME}-test test/test_actionlib_demo.cpp)
# catkin_add_gtest(${PROJECT_NAME}-test test/test_action_demo.cpp)
# if(TARGET ${PROJECT_NAME}-test)
# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME})
# endif()
Expand Down
13 changes: 13 additions & 0 deletions action_demo/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# action_demo

### introduce

本demo在课程仿真场景下,演示一个简单的action通讯.运行action之后,会看到xbot在场景中简单的"折返跑".同时,终端打印实时进度,反馈通信进程状态.

### run

1. 打开一个终端:`$ roslaunch robot_sim_demo robot_spawn.launch`

2. 打开一个新终端:`$ rosrun action_test linewalk_server.py`

3. 打开一个新终端 :`$ rosrun action_test linewalk_client.py`
8 changes: 0 additions & 8 deletions action_demo/action/DoDishes.action

This file was deleted.

8 changes: 8 additions & 0 deletions action_demo/action/Linewalk.action
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#goal definition
int32 order
---
#result definition
int32 finished
---
#feedback
float32 processing
Loading