ROS2 TUTORIAL. HOW TO RUN ROS2 ON YOUR ROBOT. IMPLEMENTING CUSTOM HARDWARE INTERFACE

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

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

  • @roboage1027
    @roboage1027  Год назад +4

    If you like my content, you can support my channel. I will greatly help me to develop more interesting projects 😀
    To support channel:
    PayPal:www.paypal.com/donate/?hosted_button_id=XHXABEQL94444
    Patreon:www.patreon.com/robo_age
    Buy me a coffee: bmc.link/roboage21Y

  • @keepfighting8402
    @keepfighting8402 Год назад +3

    З цікавістю спостерігаю за вашим проектом,добре , що в такий важкий час для нашої країни цей напрямок розвивається

  • @svitlana1367
    @svitlana1367 Год назад +2

    Very good explanation. Thank you 👍

  • @kot2905
    @kot2905 Год назад +2

    Great tutorial! Thanks!

  • @likefoodua1088
    @likefoodua1088 10 месяцев назад +1

    I like your channel. I'll support you.

  • @ВладШевченко-ц7т
    @ВладШевченко-ц7т Год назад +3

    Good video!

  • @vikavr5641
    @vikavr5641 Год назад +2

    Good video!!! Thanks

  • @dhanrajzaveri5383
    @dhanrajzaveri5383 9 дней назад

    Hi, thanks for the tutorial! I am actually a beginner and trying to make a 6DOF robotic arm which will have ROS2+ Arduino interface, so if I copy your steps, will I be able to achieve the same results as of you? I have Humble and 22.04

  • @forrestjone3855
    @forrestjone3855 3 месяца назад

    Excellent

  • @andreypopov6166
    @andreypopov6166 5 месяцев назад +1

    Thank you for the tutorial. I am wondering what is the most necessary math to understand is needeed for robotics? Thanks.

    • @roboage1027
      @roboage1027  5 месяцев назад

      Thank you for your comment. Linear algebra, I guess. In robotics, matrices and vectors are everywhere

    • @andreypopov6166
      @andreypopov6166 5 месяцев назад

      @@roboage1027 Thank you!

  • @bartvanderhaagen986
    @bartvanderhaagen986 4 месяца назад

    Hey very nice video! thanks for sharing and taking your time to explain all this. Where can I see into your robot core? The code or sketch that drive your motors.

    • @roboage1027
      @roboage1027  4 месяца назад

      Thank you for your comment. I use Odrive board to drive the motors. So you can use my code only with this specific board. And I use Arduino to send commands to Odrive. It's just standard serial communication.

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

    Really good channel.

  • @peteradel7925
    @peteradel7925 2 месяца назад

    can i take link form this information?

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

    Is it possible to have ros2_control work together on foxy (jetson nano) and humble (workstation)?

  • @freddyli5356
    @freddyli5356 8 месяцев назад +1

    Can I package the game as an IPA / apk game then running it on my phone in order to control the robot?

    • @roboage1027
      @roboage1027  8 месяцев назад +1

      No, it's just for simulation.

  • @epg3581
    @epg3581 6 месяцев назад +1

    Is the code available?

  • @bodevedhamsh2637
    @bodevedhamsh2637 Месяц назад

    what is custom_hardware.launch.py is launching? @12.26 min

    • @roboage1027
      @roboage1027  29 дней назад

      Just standard ros2 launch file. docs.ros.org/en/jazzy/Tutorials/Intermediate/Launch/Creating-Launch-Files.html

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

    How can I use rose pkg in this video 17:00?

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

      There's no specific ros2 package to talk to unreal engine. At least I don't know one. In all my videos, I just use shared memory to exchange information between ros2 and UE. If you mean some package to run ros2 on real hardware , you need to write your own hardware interface . There's standard ros2 hardware interface template. Take it and rewrite read and write functions in it to receive and send information from and to your hardware. I this video I use serial port to talk to arduino. In read function I read positions of each of the joints and in write function I write commands from controllers to arduino.

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

    Is the source code available by any chance?

  • @AzharKhan-cy5kt
    @AzharKhan-cy5kt Год назад

    Hi i am working on a robotic arm in ros2 .... In this project i am making a controller arm with 5 potentiometers installed at every joint (5th potentiometer is for gripper) , the angles data will be transferred through micro_ros publisher node in esp32 wirelessly to ros2 in the pc, a subscriber node will receive the data .....i have the arduino code of a robotic arm from a tutorial but don't know how to convert it to use in micro_ros also i am struggling with ros2_control how to connect my subscriber node to the 3d model in gazebo.... basically the simulation arm in gazebo has to mimic the movements of the controller arm....

    • @AzharKhan-cy5kt
      @AzharKhan-cy5kt Год назад

      Please make a video for it will be very grateful

    • @AzharKhan-cy5kt
      @AzharKhan-cy5kt Год назад

      You don't have to make a controller arm just make a tutorial in which you will be controlling your robotic arm with 6 potentiometers i can give you the link to the arduino code if you are interested

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

      Hi. Why do you need micro_ros on Arduino at all. You can transfer data from ROS to Arduino through serial port. You don't need any external libraries for that. I used micro_ros once and I can't say it's very convenient . Concerning gazebo, you will need to send the same commands to ros2 controller that you will send to real robot. Then robot in your gazebo simulation will repeat movements of your real robot.

    • @AzharKhan-cy5kt
      @AzharKhan-cy5kt Год назад

      @@roboage1027 thanks..... but in this video it seem very complex. I mean very very complex
      It's my FYP project and i can't figure it out it'll be very helpful if you make a video in which your robotic arm is controlled wirelessly through potentiometers and ESP32 microcontroller live (means potentiometer connected to esp32 and sending angles data wirelessly with esp32 to the simulation arm)

    • @AzharKhan-cy5kt
      @AzharKhan-cy5kt Год назад

      @@roboage1027 and furthermore right now I'm in the first step to send data from esp32 to the gazebo simulation and control the arm in simulation after that will work on physical robot

  • @sanjeevhegderobotics
    @sanjeevhegderobotics 2 месяца назад

    Thanks for the wonderful tutorial!!
    Quick question: now that you have hardware interface to send position for each joints, how is this implemented on Arduino/driver side?
    Is there pid to do position control on arduino side and trajectory controller takes the responsibility of just sending different positions?
    I am confused since the trajectory controller is already sending positions by taking encoder feedback, do you still need to implement pid for each joints on Arduino, because the encoder feedback(current position ) would be sent back and you can only apply forward or reverse voltage pwm. Else wouldnt there would be 2 pid loop, one at ros controller level and one at driver level ?
    I am building a bipedal robot myself and currently i am able to control all joints using just esp32 and now looking into how i canwrite motion planning. I am very new to ros2
    You can see my robot here: ruclips.net/user/shorts0abCoyroeNA?si=66RCjNYzvqmOJHYF

    • @roboage1027
      @roboage1027  2 месяца назад

      @@sanjeevhegderobotics Arduino just takes position commands from ros controller and sends them to Odrive board. Odrive uses another pid loop to drive bldc motor to commanded position. It is implemented in Odrive's firmware. So basically, there are two PID loops: one on the ROS side and one on the Odrive's side . Odrive's PID outputs pwm signal to adjust voltages on motors phases.

    • @sanjeevhegderobotics
      @sanjeevhegderobotics 2 месяца назад

      @@roboage1027 Thanks for explaining. I now understand what I need to try.
      Apart from position, I think I need velocity interface since I want to achieve trajectory for walking where joints of 2 legs does coordinated movement to different positions with different velocity within same time frame. OR do you think the time parameterization of moveit will take care of it?

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

      @@sanjeevhegderobotics I think you are right. Time parametrisation should take care . You just need to specify correct target points for your trajectory controllers in terms of desired joints positions and time constraints.

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

    "Promosm"