Comments (4)
Ok thank you for the very detailed information.
I don't think that we will provide any script for automating the setup process, this because the logic there would be very specific to a particular system (similarly to what the GoPiGo script that you linked does).
We will always make sure that the build process for the create 3 repositories follows the standard ROS 2 practices, which means that there will be abundance of documentation and support. Then it will be up to the users to define scripts for automating it if needed.
About your particular issue, what is probably the simplest solution is the following: to run git pull
in the cloned repository.
See a complete example that, assuming that you already cloned the repository once, will update it and build what is changed.
cd ~/create3desktop/create3_ws/src/create3_sim
git pull
cd ~/create3desktop/create3_ws
vcs import ~/create3desktop/create3_ws/src/ < ~/create3desktop/create3_ws/src/create3_sim/dependencies.repos
rosdep install --from-path src -yi
colcon build --symlink-install
Note that we are not removing anything from the workspace, we are just using git pull
to update the create3_sim
repository.
A couple of additional notes:
- as you may have noticed, the
dependencies.repos
file is importing some "custom" version ofros2_control
andros2_controllers
. This is because they don't support yet ROS 2 galactic. As soon as the official libraries gets updated, this wholevcs
step will be removed. - we just open-sourced the repository, so you will see a lot of activity in the next months. however, eventually we will move to a more stable release process where you should be able to use a
galactic
branch which will be updated only ~1 a month. All development will obviously still happen onmain
, so you are free to keep using this branch if you want the latest features!
from create3_sim.
Let me try to address one thing at the time.
- It's not necessary to undock the robot for running the
create3_coverage
example (as the behavior will actually start by undocking the robot if it's docked). The documentation mentions that if it is not on the dock, it should be a little bit far from it, this is to make sure that the robot does not hit the dock if there is noise in its sensors and it does not detect immediately that it's running towards the dock. This will not be a problem in the simulator unless you manually add noise to the measurements. I can definitely clarify it a little bit. - The dance example requires the robot to be undocked. I will add a note there.
- Your command for undocking the robot is correct, I think that the reason why nothing happens is related to the other issues you mention in #115. Let's keep discussing this problem there.
Could you elaborate more on the last point?
The README guides the user to create a workspace and clone the create3_sim repo into the workspace, but the next moment I see the create3_sim getting commits. Please include a section in the README:
What do you mean by I see the create3_sim getting commits
?
from create3_sim.
What do you mean by I see the create3_sim getting commits?
I am subscribed to the create3_sim repo for "all actions" so that I know when updates get committed.
Some vendors have an update script such as for the GoPiGo3 robot:
In order to quick install the GoPiGo3 repository, open up a terminal and type the following command:
curl -kL dexterindustries.com/update_gopigo3 | bash
The same command can be used for updating the GoPiGo3 to the latest version.
(In that case the script deletes the manufacturer's code tree (~/Dexter/) brings down the new code, and performs setups to rebuild python site eggs.)
I'm ok with having to manually launch a new colcon build in my ~/c3desktop/create3_ws but I need to know how to download updates of create3_sim code to the workspace again.
This is my tree:
├── create3desktop
| ├── create3_ws
│ ├── build
│ ├── install
│ ├── log
│ └── src
│ ├── create3_sim
│ ├── gazebo-ros2-control
│ ├── irobot_create_msgs
│ ├── ros2_control
│ └── ros2_controllers
At first I could probably just
rm -rf ~/create3desktop/create3_ws
and repeat my install steps:
$ cd ~/create3desktop
$ mkdir -p create3_ws/src
$ cd create3_ws/src/
$ git clone https://github.com/iRobotEducation/create3_sim.git
* Use vcs to clone additional dependencies into the workspace:
vcs import ~/create3desktop/create3_ws/src/ < ~/create3desktop/create3_ws/src/create3_sim/dependencies.repos
* install ROS3 dependencies
cd ~/create3desktop/create3_ws
rosdep install --from-path src -yi
* Build the workspace with:
colcon build --symlink-install
but eventually I will want to mod the robot description with the Oak-D-Lite that I should receive in December, and will want to check the URDF/SDF/xacro file into my create3desktop repo. Thus I won't want to blow away workspace, or possibly will have added some custom launch files. I'm not very good at using Git and am new to managing ROS workspaces.
from create3_sim.
Thank you. I added the following to my .gitignore:
# Alan Added
install/
log/
create3_sim/
__pycache__/
and performed the pull, vcs step and all got updated:
ubuntu@c3desktop:~/create3desktop/create3_ws/src/create3_sim$ git pull
remote: Enumerating objects: 56, done.
remote: Counting objects: 100% (56/56), done.
remote: Compressing objects: 100% (12/12), done.
remote: Total 39 (delta 28), reused 33 (delta 24), pack-reused 0
Unpacking objects: 100% (39/39), 5.49 KiB | 702.00 KiB/s, done.
From https://github.com/iRobotEducation/create3_sim
2d38bbd..dd8e559 justinIRBT/reflexes_and_safety -> origin/justinIRBT/reflexes_and_safety
Already up to date.
$ vcs import ~/create3desktop/create3_ws/src/ < ~/create3desktop/create3_ws/src/create3_sim/dependencies.repos
....
=== /home/ubuntu/create3desktop/create3_ws/src/gazebo-ros2-control (git) ===
Already on 'create3_galactic'
Your branch is up to date with 'origin/create3_galactic'.
=== /home/ubuntu/create3desktop/create3_ws/src/irobot_create_msgs (git) ===
HEAD is now at 34061c2 bump version to 1.2.0
=== /home/ubuntu/create3desktop/create3_ws/src/ros2_control (git) ===
From https://github.com/ros-controls/ros2_control
c43ce71..17296d8 foxy -> origin/foxy
* [new tag] 0.8.1 -> 0.8.1
HEAD is now at 017e3c5 fix: :bug: Fix for Doxygen link needing to be relative for GitHub pages (#533)
=== /home/ubuntu/create3desktop/create3_ws/src/ros2_controllers (git) ===
Already on 'create3_galactic'
Your branch is up to date with 'origin/create3_galactic'.
Thanks.
from create3_sim.
Related Issues (20)
- Package 'irobot_create_gazebo_bringup' not found HOT 2
- Can't activate controller 'diffdrive_controller' with Ignition HOT 8
- Release for Humble and Rolling? HOT 27
- Sim doesn't realize goals are complete - and no data on /odom HOT 11
- Can't Build create3_sim HOT 3
- Incorrect timestamps published using Gazebo simulation HOT 1
- SEGFAULT when adding a second Create3 Robot HOT 2
- Ignition: Missing IR intensity sensors HOT 3
- GAZEBO Simulation doesn't start up well
- Humble Multi-Robot-Sim TF namespace issue HOT 4
- Sensor Issue with a namespaced multi_sim HOT 5
- Building reference errors (Create3Hmi.cc) HOT 1
- No data under dock_status and ir_opcode topics using namespace
- About how to add a LIDAR to create3 and aws launch error HOT 2
- Disable Reflexes HOT 2
- Multi-Robot Simulation: Crash when spawning more than two robots
- Remove the Ignition install option from README (Will Not Run Create3_Sim) HOT 6
- Docking action succeeds but not centered on dock HOT 1
- Ignition: missing /cliff_intensity topic
- Issue with Spawner for diffdrive_controller: Controller manager not available HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from create3_sim.