Collision avoidance with LIDAR and Jetson Nano

Поділитися
Вставка
  • Опубліковано 5 вер 2024
  • Implementation of environment scanning and collision detection using RPLidar from Slamtec and Jetson Nano single board computer.
    Lidar is used to detect obstacles in front while the robot is walking. Also LIDAR data can be visualized in robot control Python application using websocket connection and polar chart from plotly.js library.

КОМЕНТАРІ • 38

  • @TheRealFrankWizza
    @TheRealFrankWizza 3 роки тому +2

    This is interesting. I will try this one with matplot lib on the Jetson.

  • @CognosSquare
    @CognosSquare 3 роки тому

    ROS is good but also benefits building up from ground yourself. Looking forward to seeing the robot in action.

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому

      Yes, looks like ROS can save much time in many cases but sometimes you just want to "invent wheel" again to have better feeling about magnitude of specific problem. Here is some early progress of the robot ua-cam.com/video/AXLPzXKSF14/v-deo.html

  • @mark-theeverydayimagineer6163
    @mark-theeverydayimagineer6163 3 роки тому

    Thank you. Interesting

  • @endercn6871
    @endercn6871 3 роки тому

    thank you so much

  • @theexperimenter5813
    @theexperimenter5813 2 роки тому +1

    Pretty. Cool. Example. Could. You. Post. Your. Code.

  • @melvinsajith4448
    @melvinsajith4448 3 роки тому

    interesting and cool , i was also had a idea of building a robot dog with jetson nano that i brought but because of less money , and because of i am in high school

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому

      Yes Jetson board is a bit expensive comparing to other sbc like Raspberry Pi not mentioning controllers like Arduino and its clones. I would start from something cheaper where you don't need to deal with AI - so you can implement your robot as walking machine only using Arduino and some cheap RC servo motors. Now it is cheaper to start anyway as it was like 20 year ago when I was studying. The only clever bricks we had was NE555 and Atmel microcontrollers :-)

    • @melvinsajith4448
      @melvinsajith4448 3 роки тому

      I have arduino and raspberry pi pico and i have used it for lot of project and i like to learn more on the software of robotics so i bought a jetson nano because i did not have a personal computer or laptop to work and learn

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому

      @@melvinsajith4448 I understand. Using Jetson as personal computer is a good idea. In reality I am, using it in the same way although it is installed on my robot. Just working through Remote Desktop.

    • @melvinsajith4448
      @melvinsajith4448 3 роки тому

      @@slawomirkorbas how to use remote desktop in jetson nano , i tried VNC but not working which are you using

    • @RoadBikersPoznan
      @RoadBikersPoznan 3 роки тому

      @@melvinsajith4448 I think you have to Install xrdp from eg from here: www.hackster.io/news/getting-started-with-the-nvidia-jetson-nano-developer-kit-43aa7c298797
      Then:
      Install xfce4: sudo apt install xfce4
      Comment out the last two lines in /etc/xrdp/startwm.sh
      Add the following line to /etc/xrdp/startwm.sh:
      startxfce4
      Restart xrdp
      sudo service xrdp restart
      At the end you shook should be able to connect from Remote Desktop Client on Windows. This is what warked for me although thi setup is very cumbersome.

  • @vishalvikal6677
    @vishalvikal6677 3 роки тому +1

    Hello sir, I watched your video that wa really awesome.
    I want to ask a question . How to calculate cpu utilisation in percentage using kernel, user, idle, total terms of each core. Please help me out. THANKS

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому +1

      Hi Vishal I am not sure if I can help you but why you need this? Cpu utilization will differ depending on the specific task being executed by robot. Most cpu time consuming are tasks using computer vision (image recognition etc).) Anyway I belive you can find some equations on the web.

    • @vishalvikal6677
      @vishalvikal6677 3 роки тому +1

      @@slawomirkorbas
      Thanks for your reply sir.
      I have some data about cpu.
      I want to calculate cpu utilisation in percentage using that data.
      Please help me sir
      Thanks

  • @keshav2136
    @keshav2136 3 роки тому

    AMAZINGGG

  • @yugalsharma13
    @yugalsharma13 2 роки тому

    This is pretty amazing! Are you using AI algorithms for it?

    • @slawomirkorbas
      @slawomirkorbas  2 роки тому +1

      This is a plan. For now it is a program based on fixed algorithm.

    • @yugalsharma13
      @yugalsharma13 2 роки тому

      Nice work!

  • @ansjaved3484
    @ansjaved3484 3 роки тому +1

    Cool. I'm also working on the prototype of autonomous car. As I want to avoid obstacles using RP-Lidar A2 M8 by following your video. Have you completely control lidar working using python? I also want to do same. Can you tell me way or suggest me some tutorials. And please share your code. Thank you so much if you can help me.

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому +2

      Yes the lidar is controlled using python program. There are more than one library supporting SLAMTEC's protocol for Python. I have used this one: github.com/SkoltechRobotics/rplidar but I think you may try this as well: pypi.org/project/pyrplidar/. The interface is similar - you need to iterate over scans collection and then examine the touples for the data relevant for you eg. [angle, quality, distance]. In may case I was interested in the area in fron of the walking robot and my program considered anything closer than 30cm within 60 degree angle range(front) as an obstacle. Some of my code related to collision aviodance you may find here: github.com/slawomirkorbas/robotics/tree/main/python_jetson/quadruped_webapp

    • @ansjaved3484
      @ansjaved3484 3 роки тому

      @@slawomirkorbas Thank you so much. I think Pyrplidar python library can do my work. :)

    • @serhatarslan4138
      @serhatarslan4138 3 роки тому +1

      Hello this code is it work? I am using Rp-Lidar too. Can you help me in this topic? thanks in advance

    • @ansjaved3484
      @ansjaved3484 3 роки тому +1

      @@serhatarslan4138 Use pyrplidar library.

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому +1

      Yes. This code works. Use RP-Lidar library. You may get it from github.

  • @alexla4426
    @alexla4426 3 роки тому +1

    which lidar are you using?

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому

      Hi, I am using RP-Lidar A1 from Slamtec. This is relatively cheap model and good for prototyping. There is also A2 model using direct drive and having smaller form factor. I presume they use the same protocol for data transfer.

  • @joanroboticaeducativa9663
    @joanroboticaeducativa9663 3 роки тому +1

    Hello, I'm speaking to you from Colombia, sorry for my English, I would like you to help me with my robot, it is possible, thank you, I await your answer.

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому

      Hi Joan, I could help you to some extent if you specify what type of robot you are building and what is your goal.

    • @joanroboticaeducativa9663
      @joanroboticaeducativa9663 3 роки тому

      @@slawomirkorbas thanks for answering. I am building a robot for customer service, the main task is to move inside a car park and invoice payments through an electronic platform, for that I think I would have to start the snowing with a lidar, I would like to mark a route and let the robot follow her.

    • @joanroboticaeducativa9663
      @joanroboticaeducativa9663 3 роки тому

      @@slawomirkorbas the robot's goal is to speed up the payment of parking, using cutting-edge technology
      , I think that with slam and artificial intelligence I could do it.

    • @joanroboticaeducativa9663
      @joanroboticaeducativa9663 3 роки тому

      You can see my video on you tobe of the project progress

    • @slawomirkorbas
      @slawomirkorbas  3 роки тому

      @@joanroboticaeducativa9663 I understand. If you want your robot to follow specific path I would prefer using computer vision for that. Camera connected to your SBC-single borad computer like Jetson Nano or Raspberry PI and use. Then you would need to mark a path on the floor where your robot is supposed to move (eg. using some tape or paint). You could teach your robot to follow this markup with the use of some deep learning framework like OpenCV See this: const-toporov.medium.com/line-following-robot-with-opencv-and-contour-based-approach-417b90f2c298.
      I would start from som,ething simple in the beginning - fixed route. When it comes to using LIDAR for route following this is not a main purpose of this device. LIDAR can be use as auxiliary device for avaoiding potenital crashes with other moving objects. Hope that helps.