All Projects → robomaster-oss → rmua19_ignition_simulator

robomaster-oss / rmua19_ignition_simulator

Licence: Apache-2.0 license
Gazebo Simulator for RoboMaster University AI Challenge 2019

Programming Languages

javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to rmua19 ignition simulator

rmoss contrib
RoboMaster OSS中的基础项目,为RoboMaster提供任务级功能模块包,如自动瞄准模块,能量机关模块等。
Stars: ✭ 13 (-13.33%)
Mutual labels:  ros2, robomaster
awesome-webots
Awesome Webots
Stars: ✭ 46 (+206.67%)
Mutual labels:  simulator, ros2
aws-robomaker-robotics-curriculum
Introductory robotics curriculum
Stars: ✭ 78 (+420%)
Mutual labels:  gazebo, ros2
dockerfiles
Dockerfiles I use for development
Stars: ✭ 64 (+326.67%)
Mutual labels:  gazebo, ros2
linorobot2
Autonomous mobile robots (2WD, 4WD, Mecanum Drive)
Stars: ✭ 97 (+546.67%)
Mutual labels:  gazebo, ros2
drl grasping
Deep Reinforcement Learning for Robotic Grasping from Octrees
Stars: ✭ 160 (+966.67%)
Mutual labels:  gazebo, ros2
Physics
experimenting with physics simulation
Stars: ✭ 53 (+253.33%)
Mutual labels:  simulator
COVIDstats
COVID-19 Statistical Analysis Simulator App using R deployed on shinyapps.io a John Hopkins University COVID count clone and simulator
Stars: ✭ 13 (-13.33%)
Mutual labels:  simulator
XWorld
A C++/Python simulator package for reinforcement learning
Stars: ✭ 82 (+446.67%)
Mutual labels:  simulator
Python-2D-Simulation-of-Schrodinger-Equation
Une simulation de l'évolution d'un paquet d'onde gaussien
Stars: ✭ 39 (+160%)
Mutual labels:  simulator
DesignSPHysics
Module for FreeCAD intended to use with DualSPHysics fluid simulator.
Stars: ✭ 65 (+333.33%)
Mutual labels:  simulator
SLAM Qt
My small SLAM simulator to study "SLAM for dummies"
Stars: ✭ 47 (+213.33%)
Mutual labels:  simulator
simple-playgrounds
Simulator for Reinforcement Learning and AI. 2D environments with physics and interactive entities. Agents with rich sensors and actuators.
Stars: ✭ 18 (+20%)
Mutual labels:  simulator
continuous Bernoulli
There are C language computer programs about the simulator, transformation, and test statistic of continuous Bernoulli distribution. More than that, the book contains continuous Binomial distribution and continuous Trinomial distribution.
Stars: ✭ 22 (+46.67%)
Mutual labels:  simulator
AutoCar
Repo for DJI RoboMaster2018, Which is detect the armor of robomaster robot.
Stars: ✭ 24 (+60%)
Mutual labels:  robomaster
gazebo terrain
Terrain model generator for Gazebo
Stars: ✭ 38 (+153.33%)
Mutual labels:  gazebo
raspicam2 node
ROS2 node for camera module of Raspberry Pi
Stars: ✭ 31 (+106.67%)
Mutual labels:  ros2
FluentSimulator
A fluent syntax .NET REST/HTTP API simulator for automated unit and UI testing.
Stars: ✭ 23 (+53.33%)
Mutual labels:  simulator
name-needed
🕹 A one man effort to produce an open source, intuitive and high performance Dwarf Fortress-esque game. Needs a name.
Stars: ✭ 87 (+480%)
Mutual labels:  simulator
wpr simulation
No description or website provided.
Stars: ✭ 24 (+60%)
Mutual labels:  gazebo

rmua19_ignition_simulator

1. 简介

rmua19_ignition_simulator是基于Gazebo (Ignition 字母版本)的仿真环境,为RoboMaster University AI Challenge 2019中的机器人算法开发提供仿真环境,方便测试AI算法,加快开发效率。

目前rmua19_ignition_simulator还不完善,仅提供以下功能:

在rmua19标准机器人(rmua19_standard_robot)上增加相关传感器,构建不同机器人模型:

  • rmua19_standard_robot_a:搭载云台相机industrial_camera和搭载激光雷达rplidar_a2,其中相机放置有在yaw轴。
  • rmua19_standard_robot_b:搭载云台相机industrial_camera和搭载激光雷达rplidar_a2,其中相机放置有在pitch轴。

构建RoboMaster University AI Challenge 2019简易场地(models/rmua19_battlefield):

  • 只有围墙

RoboMaster University AI Challenge 2019标准机器人机器人模型(rmua19_standard_robot)位于rmoss_ign_resources

注意:Gazebo (Ignition 字母版本)目前依然处于快速开发期,仿真功能不完善,且可能存在Bug。

2. 基本使用

环境配置

  • ROS2版本要求: Galatic (目前处于开发期,基于ROS2最新版本)
  • Gazebo仿真器版本要求: Edifice (目前新版本Gazebo处于开发期)
# install ros-ign package
sudo apt-get install ros-galactic-ros-ign
# install xmacro (xml macro tool for sdf)
pip install xmacro
# cd src directory of ros2 workspace 
git clone https://github.com/robomaster-oss/rmoss_interfaces
git clone https://github.com/robomaster-oss/rmoss_core
git clone https://github.com/robomaster-oss/rmoss_gazebo
git clone https://github.com/robomaster-oss/rmoss_ign_resources
git clone https://github.com/robomaster-oss/rmua19_ignition_simulator
# cd ros2 workspace
colcon build

启动仿真环境

# ros2 launch rmua19_ignition_simulator standard_robot_a_test.launch.py 
ros2 launch rmua19_ignition_simulator standard_robot_b_test.launch.py 
  • 注意:需要点击Gazebo界面上的橙红色的启动按钮

控制机器人移动

ros2 run rmoss_ign_base test_chassis_cmd.py --ros-args -r __ns:=/red_standard_robot1/robot_base -p v:=0.3 -p w:=0.3
#根据提示进行输入,支持平移与自旋
  • 底盘采用mecanum插件控制

控制机器人云台

ros2 run rmoss_ign_base test_gimbal_cmd.py --ros-args -r __ns:=/red_standard_robot1/robot_base
#根据提示进行输入,支持绝对角度控制
  • 云台采用位置PID控制

机器人射击

ros2 run rmoss_ign_base test_shoot_cmd.py --ros-args -r __ns:=/red_standard_robot1/robot_base
#根据提示进行输入
  • 射击功能基于rmoss_ign中的插件ProjectileShooter
  • 注意:目前存在未解决BUG (某些情况下会使得物理引擎错误,造成Ignition Gazebo崩溃)

3. 简易竞赛模式1v1

  • 目前测试中,射击功能存在已知BUG,以及可能存在其他未知BUG,请谨慎使用。

运行Ignition Gazebo仿真器

ros2 launch rmua19_ignition_simulator simple_competition_1v1.launch.py 

运行裁判系统

ros2 run rmua19_ignition_simulator simple_competition_1v1_referee.py 
  • 弹丸伤害为10,每个机器人HP为500,直到HP为0时,裁判系统输出胜利者,程序退出。(可重新运行开始)
  • 通过解析并处理攻击信息/referee_system/attack_info (包括射击者信息以及击中目标信息)实现裁判功能。

控制机器人-ROS2接口

例如,对于red_standard_robot1,有如下ROS2 topic接口使用,可用于机器人控制和感知。(对于standard_robot_blue1同理)

/red_standard_robot1/robot_base/chassis_cmd
/red_standard_robot1/robot_base/gimbal_state
/red_standard_robot1/robot_base/odom
/red_standard_robot1/robot_base/shoot_cmd
/red_standard_robot1/front_camera/image
/red_standard_robot1/rplidar_a2/scan

4. 维护者及开源许可证

Maintainer: Zhenpeng Ge, [email protected]

rmua19_ignition_simulator is provided under Apache License 2.0.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].