Giter VIP home page Giter VIP logo

Comments (4)

alsora avatar alsora commented on September 16, 2024 1

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 of ros2_control and ros2_controllers. This is because they don't support yet ROS 2 galactic. As soon as the official libraries gets updated, this whole vcs 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 on main, so you are free to keep using this branch if you want the latest features!

from create3_sim.

alsora avatar alsora commented on September 16, 2024

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.

slowrunner avatar slowrunner commented on September 16, 2024

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.

slowrunner avatar slowrunner commented on September 16, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.