-
Notifications
You must be signed in to change notification settings - Fork 14
How to contribute a model
이번 튜토리얼은 모델을 어떻게 Gazebo Model Database에 추가하는지에 대해 설명할 것이다. 이번 튜토리얼은 당신이 가제보 모델을 생성했고 공동체와 그것을 공유하고자 한다고 가정한다. 이번 튜토리얼은 또한 당신이 Bitbucket 계정을 가지고 있고 Mercurial 고객이라고 가정한다.
Note : 당신은 당신의 모델을 가제보에서 사용하기 위해 데이터 베이스에 추가할 필요가 없다. 데이터 베이스는 전체 공동체를 위해 유용한 모델을 찾기 위한 일반적인 장소이다.
Note : 당신은 모델에 포함된 모든 파일들을 배포할 권리를 가지고 있고 그것들은 저작권을 가진 자료들이 아니다.
https://bitbucket.org/osrf/gazebo_models로 가서 화면의 왼쪽 사이드 메뉴에서 Fork를 선택 해라. 초기 옵션들은 일반적으로 fine 이다. 저장소를 분기한 이후, 그것을 복사해라. 저장소를 위해 당신이 초기 이름을 선택한다고 가정한다면 당신은 다음과 유사하게 터미널에 커맨드를 사용하여 복사를 할 것이다.
$ hg clone https://bitbucket.org/yourname/gazebo_models
여기서 yourname은 당신의 Bitbucket username 이다.
gazebo_models 폴더 아래 당신의 모델의 폴더를 만들어라. 이번 튜토리얼에서 우리는 이 폴더를 mymodel이라고 부르기로 가정한다. 그러나 당신은 이 모델에 대해 유용한 정보를 줄 수 있는 이를을 폴더에 부여 해야 한다. 이 폴더는 반드시 model.config 파일과 적어도 하나의 .sdf 파일을 포함해야 한다. 이 폴더는 다른 파일(meshes, textures, templates...)들 또한 포함 할 수 있다. 또한 당신은 모델의 폴더를 CMakeLists.txt 파일에도 추가해야 한다.
model.config 파일은 적절한 SDF 파일을 선택하기 위해 필요한 정보를 제공한다. 이 정보는 모델의 저자 그리고 모델의 텍스트 설명이다. 샘플의 model.confg는 아래와 같다.
<?xml version="1.0"?>
<model>
<name>Wedge juggler</name>
<version>1.0</version>
<sdf version="1.5">model.sdf</sdf>
<author>
<name>Evan Drumwright</name>
<email>[email protected]</email>
</author>
<description>
A ball-in-wedge juggler.
</description>
</model>
이 model.config 파일은 시뮬레이터의 모델의 정의(visual, inertial, kinematics, geometric properites...)를 타나낸다. 모델의 정의들은 model.sdf에 있고 SDF standard 1.5를 따른다. 당신 모델의 다양한 버전들을 정의하는 것이 가능하다. 이것은 만약 당신이 당신의 모델이 다른 버전의 가제보에 사용될때 유용하다. 예를 들어 우리는 이제 세가지의 다른 SDF버전을 제공하도록 위의 파일의 내용을 바꿀 것이다.
<?xml version="1.0"?>
<model>
<name>Wedge juggler</name>
<version>1.0</version>
<sdf version="1.5">model.sdf</sdf>
<sdf version="1.4">model-1.4.sdf</sdf>
<author>
<name>Evan Drumwright</name>
<email>[email protected]</email>
</author>
<description>
A ball-in-wedge juggler.
</description>
</model>
당신은 당신의 모든 파일들을 gazebo_models의 root 폴더에 다음과 같이 타이핑 하므로써 저장소에 추가 할 수 있다.
$ hg add mymodel
혹은 만약 당신이 저장하기 원하지 않는 일부 파일들이 있다면 개별적으로 파일들을 추가 할 수 있다.
$ hg add mymodel/model.config
$ hg add mymodel/model.sdf
Bitbucket의 당신의 분기에 변화된 것들을 Commit 하고 Push 해라. 설명 메시지를 Commit해라. 예를 든다면 다음과 같다. $ hg commit -m "Adding mymodel to the database" $ hg push
당신의 Bitbucket username 이 yourname이고 당신의 분기에 대해 초기화들을 사용한다고 가정한다면 당신은 분기 저장소를 여기에서 찾을 수 있을 것이다. https://bitbucket.org/yourname/gazebo_models
- 이 사이트 웹페이지의 왼쪽 사이드 메뉴에서 Creat pull request를 선택한다.
- 오른쪽 화살표로 orsf/gazebo_models 가 선택되어 있는지 확인한다.
- 당신 모델의 의미 있는 이름을 부여한다.
- description에 당신모델의 관련된 정보와 이 모델로 부터 왜 공동체가 이익을 얻을 수 있는지에 대해 서술 한다.
모델의 그림을 추가하는 것 또한 추천한다. 여기에서 당신은 좋은 예를 볼 수 있다. https://bitbucket.org/osrf/gazebo_models/pull-requests/241/added-model-demo-joint-types/diff - 당신의 다른 옵션들에 만족 할 때 Creat pull request를 클릭한다.
- OSRF는 당신의 pull request를 리뷰할 것이고 모델의 데이터베이스에 당신의 수정사항들을 합칠 것이다.
-
Robot Simulators
-
Build a Robot
- Model structure and requirements
- How to contribute a model
- Make a model
- Make a Mobile Robot
- The relationship among Link, Joint and Axis
- Import Meshes
- Attach Meshes
- Add a Sensor to a Robot
- Make a Simple Gripper
- Attach Gripper to Robot
- Nested model
- Model Editor
- Animated Box
- Make an animated model(actor)
- Inertial parameters of triangle meshes
- Visibility layers
-
Model Editor
-
Build a World
-
Tools and utilities
-
Write a plugin
-
Plugins
-
Sensors
-
User input
-
Transport Library
-
Rendering Library
-
Connect to ROS
-
Ros Control - Advanced
-
DRCSIM for ROS Kinetic (Ubuntu16.04)
-
DRCSIM
- DRC Simulator installation
- Launchfile options
- Spawn Atlas into a custom world
- Animate joints
- Atlas Keyboard Teleoperation over ROS
- Teleoperate atlas with a music mixer
- Visualization and logging
- Atlas MultiSense SL head
- How to use the Atlas Sim Interface
- Atlas fake walking
- Grasp with Sandia hands
- DRC vehicle tele-operation
- DRC vehicle tele operation with Atlas
- Sending joint commands with ROS
- Atlas control over ROS with python
- Modify environment
- Atlas switching control modes
- Atlas Controller Synchronization over ROS Topics
- Changing Viscous Damping Coefficients Over ROS Service
- Running BDI controller demo
- Using the RobotiQ 3 Finger Adaptive Robot Gripper
- BDI Atlas Robot Interface 3.0.0 Stand In Example
-
HAPTIX
- HAPTIX software install and update
- HAPTIX C API
- HAPTIX Matlab and Octave API
- HAPTIX Simulation World API
- HAPTIX Teleoperation
- HAPTIX environment setup
- HAPTIX Optitrack Control
- HAPTIX Tactor Glove
- HAPTIX Simulation World API with Custom World Example
- HAPTIX logging
- HAPTIX DEKA Luke hand installation
- HAPTIX Simulation Scoring Plugin Example
-
MoveIt!
-
Rviz & rqt & ROSBAG
- Control Theory
- TroubleShooting
- Solidworks model to URDF
- ROS-Gazebo with MATLab
- MATLab installation in Linux
- [Gazebo simulation with MATLab]