Making Your First ROS Package | Getting Ready to Build Robots with ROS #5

Поделиться
HTML-код
  • Опубликовано: 23 ноя 2024

Комментарии • 40

  • @manishnayak1000
    @manishnayak1000 2 года назад +16

    I really liked that we are actually starting from scratch and using package create to get the basic required files. So many other tutorials start directly by asking to clone a repo where everything is already present in the source code and we just need to build and run the launch file. Finally got a video covering the fundamentals!

    • @ArticulatedRobotics
      @ArticulatedRobotics  2 года назад +3

      Thanks! Although I will admit that the "Building a mobile robot" tutorial series does do that, but it only starts with a very basic launch file and URDF.
      The new python launch files are very powerful, but I find the syntax to be a bit opaque for new users/inexperienced programmers.

  • @iamshakeelsindho
    @iamshakeelsindho 2 месяца назад +1

    This is a wholesome video and the playlist. Thank you so much for this.

  • @Frostbyte-Game-Studio
    @Frostbyte-Game-Studio Год назад +2

    ok you're my new favorite robotics RUclipsr

  • @iurireis8024
    @iurireis8024 7 месяцев назад +2

    Great video and great job, congratulations!

  • @C-Career-yj7vx
    @C-Career-yj7vx 6 месяцев назад

    Thank you for this playlist. It's really helpful.
    In Windows: Instead of colcon build --symlink-install just use, colcon build
    (Found a reason where it doesn't work ;D)

  • @fpl341
    @fpl341 2 года назад

    thank you for your ROS2 series, it is very useful for beginer like me. Thank you, thank you!

  • @junaidamin2412
    @junaidamin2412 Год назад +1

    You're doing an awesome job mate!

  • @mshytb
    @mshytb 7 месяцев назад

    I'm a Automation Engineer and I suddenly have to work with ROS2, this series helped me a lot!!
    I'm really needing some help, how can I make a service to send a image to a client node? Everything I'm doing is going wronggg

  • @63yashthakur67
    @63yashthakur67 2 года назад +1

    GREAT WORK!!!!!!!!!

  • @boukermouchemohammed8729
    @boukermouchemohammed8729 6 месяцев назад

    Thank you for the video.
    I don't understand how you establish communication between the Raspberry Pi and PC, and how you can display them on the same screen.

  • @hilarymartins-udeze4315
    @hilarymartins-udeze4315 7 месяцев назад

    when i tried to build the workspace, it says colcon command not found. Now what do i do?

  • @Must23
    @Must23 Год назад

    Thanks a lot dude~!

  • @macknightxu2199
    @macknightxu2199 Год назад

    hi, I had this strange issue, why is it wrong syntax?
    Traceback (most recent call last):
    File "/home/william/catkin_ws/devel/lib/dart_robot_interface/run_server.sh", line 15, in
    exec(compile(fh.read(), python_script, 'exec'), context)
    File "/home/william/catkin_ws/src/DaRT-robot-interface/html/run_server.sh", line 4
    source ~/catkin_ws/devel/setup.bash
    ^
    SyntaxError: invalid syntax

  • @johnfrye6290
    @johnfrye6290 2 года назад +1

    Do you have any reason you prefer colcon over catkin or ament (maybe colcon is part of ament)? Still trying to understand the available tools. Docs say they don't want to tether ros2 to a build system, but at the same time the author of that article wrote colcon. I figure best to understand what build tools are before I start diving in too deep

    • @ArticulatedRobotics
      @ArticulatedRobotics  2 года назад +5

      Hi John, presumably you're referring to this page? - design.ros2.org/articles/build_tool.html
      My understanding is the following - but as you've noted there is a bit of confusion so I might have it wrong:
      - There is a differentiation between build systems and build tools. A build system builds a single package, a build tool executes multiple build systems to build a set of packages.
      - ROS 1 (by the end) had catkin as the (C++) build system, with catkin_make and catkin_tools as the build tools (depending on preference)
      - ROS 2 started with ament_cmake (an upgraded catkin) as the (C++) build system and ament_tools as the build tool (which can build not just ament_cmake packages but other types too)
      - colcon superseded ament_tools as the ROS 2 build tool (see github.com/ament/ament_tools), but that is separate to ament_cmake. So now colcon is the standard build tool, and it can be used with the following build systems: ament_cmake (ROS C++), CMake (regular C++), and Python. It gets a bit more complicated depending on whether packages have a manifest (package.xml) or not etc.
      - I think the idea is that colcon is not an official "ROS" tool, it's not part of ROS, you can use it with non-ROS projects (which I have) and you can theoretically use ROS projects without it (which I haven't), but that it is maintained by ROS developers, and is now the de facto standard for building ROS projects.
      It's worth checking out this article too, which is now very outdated but might clarify some things design.ros2.org/articles/ament.html
      I hope that helps!

  • @cphillips8219
    @cphillips8219 Год назад +6

    Followed this as best I could however, the files didnt end up here. file 'listener.launch.py' was not found in the share directory of package 'my_package' which is at '/home/clint/dev_ws/install/my_package/share/my_package'

    • @kazamkolol7531
      @kazamkolol7531 Год назад +1

      Hey, Did u fix the issue ?

    • @FaizanAhmadKhan-v5f
      @FaizanAhmadKhan-v5f Год назад

      Any solution found??

    • @gyuray
      @gyuray 11 месяцев назад

      In my case, I made a typo by writing ${PROJECT_NAME} as ${PRJECT_NAME}.

    • @propad12
      @propad12 7 месяцев назад

      if you guys / anyone else searching still needed help, my problem was that I didnt source the .bashrc file correctly before attempting to launch the program which led it to search in some weird other spot so make sure that you clearly say
      source install/setup.bash
      then you can run (when i first tried i said "My_package" instead of "my_package, so be careful")
      ros2 launch my_package listener.launch.py
      and then i got it to work perfectly

    • @faresmohameed4454
      @faresmohameed4454 19 дней назад

      did you solved it ?

  • @johnnam7225
    @johnnam7225 2 года назад +4

    you are number 1

  • @earthrelated
    @earthrelated 11 месяцев назад

    Thank you !!!

  • @techclubtokorozawa5476
    @techclubtokorozawa5476 2 года назад +2

    amazinggggg.

  • @masdikaaliman6425
    @masdikaaliman6425 11 месяцев назад

    I hope ur make the ROS 1 version to more understand

  • @xinweili2940
    @xinweili2940 Год назад

    May I ask why when I enter "ros2 pkg create --build-type ament_cmake my_package" it will show "ros2: command not found" ?

    • @younesboutelidjane9581
      @younesboutelidjane9581 Год назад

      you should source your bashrc file

    • @ArticulatedRobotics
      @ArticulatedRobotics  Год назад +1

      As Younes said, either you haven't installed ROS correctly or you haven't sourced /opt/ros/humble(or foxy)/setup.bash (or put it in your ~/.bashrc)

  • @ShmeegleSon
    @ShmeegleSon Год назад

    thank you!

  • @co4erol
    @co4erol 2 года назад

    Thank you for this video series. I want to do what you are doing. I have not a just GL.iNet Router. I have all the other equipment.
    Is that necessary too much? Because in Turkey it's kinda expensive :(

    • @ArticulatedRobotics
      @ArticulatedRobotics  2 года назад +1

      You definitely don't need that router! In the video on networking I cover a few different approaches you can take.
      The easiest is just to connect to whatever WiFi network you already have. This is really only a problem if other people on the same network are using ROS, or if you want to take your whole setup and move to somewhere else (e.g. test it at a park).
      The other alternative mentioned in that video is an ad-hoc network, where you set up either the Pi or the dev machine as an access point and have the other connect to it.
      I just find the travel router a very convenient solution (although I feel I've had more dropouts with it recently so I'm less impressed).
      ruclips.net/video/NW97xLF7CYQ/видео.html

  • @anthonybeatoabreu5299
    @anthonybeatoabreu5299 7 месяцев назад

    10/10

  • @ayuminor
    @ayuminor Год назад

    I was surprised to see him building the project on the pi rather than the PC. Is that the usual way of things and necessary or was it just done here because of the small project?
    Another small thing: How come 'listener' used a py package and 'talker' a cpp one? Just to demonstrate that mixing them works?

  • @macknightxu2199
    @macknightxu2199 Год назад

    another issue is that there seems no module which can be installed by pip3, not finding this robot_classes module:
    Traceback (most recent call last):
    File "/home/william/catkin_ws/devel/lib/dart_robot_interface/robot.py", line 15, in
    exec(compile(fh.read(), python_script, 'exec'), context)
    File "/home/william/catkin_ws/src/DaRT-robot-interface/src/robot.py", line 3, in
    from robot_classes import SupportedRobot
    ModuleNotFoundError: No module named 'robot_classes'

  • @lluiscrispilopez6285
    @lluiscrispilopez6285 2 года назад

    Can you do this by serial ?