Robotics Deep Learning Using Nvidia Jetson Nano Devkit

Ahmed Gamal
4 min readNov 29, 2019

--

My 3 Months experience in hacking first-time usage of electronics below,
I wish this article will help you to understand any of these elements. If you work with it soon, and I wish there will be a huge development with these electronics combined again because you can have a great output.

Electronics

Jetson nano Devkit

https://blog.hypriot.com/images/nvidia-jetson-nano-intro/Jetson-Nano-Upacked.jpg
  • Intel Realsense “DEPTH camera D415”
  • Universal Robots UR10
  • MY1020 48V 1000W MOTOR (BRUSHED) x2
  • Arduino Mega 2560

Jetson Setup

I’m suggesting a good, and fast start to get started quickly follow this small course here. it is 8 hours course will give you a good start with jetson nano, and the difference between classification, and regression in images “If you still fresh”,
Jetson nano is a totally new, and powerful kit comparing to its price.
I have really enjoyed working with it,

Recommendation: Because of the new kit and software I have had to go through all possible ways to make it work, kindly find below what I have done to achieve this mega project.
128 GB SD card U10 For the best storage
5 V 2.6 A adaptor to use headless mode and run jetson without screen and USB problems.
here and here you can find two images to flash it to your SD card but there is a huge difference between them.
The first one is the official image with the latest version of the jetpack. but it’s almost empty version so you have to set-up everything on your own.
The second one is DLinano “Deep leaning institute for Nvidia”, this one contains everything you may need for any project and works perfectly in headless mode with Jupyter notebook, but it’s one version below in jetpack and that’s will cause a huge problem to set-up the kernel for specific camera “Intel real sense D435i”

Realsense with jetson

This part the most tricky one because each version is different and you need to be sure about what should you use.
I have used D415 depth camera and for setup here is a good tutorial on how to get started Remeber that D435i can’t be installed on DLI image because you need a higher Jetpack

Universal Robot 10 (UR10)

The UR10e is an extraordinarily versatile collaborative industrial robot, delivering both high payload (10 kg) lift and long reach (1300mm) makes it well suited for a wide range of applications in machine tending, palletizing, and packaging.

Motors

Nothing special about these DC motors besides they are so powerful so my advice safety safety safety “my fingers got burned twice because of drivers 90 degrees C ”, the only different coding through nanpy to use Arduino PWM.

Arduino Mega with jetson

This part was so much fun for me because working on Arduino as a slave with nanpy library was fast and efficient in servo, PWM and I/O.

Procedures

What I have done to run this project.

  1. Download and flash this image as a ready Deep learning kit install or this image for the latest version.

2. Set-up Jetson Nano GPIO

Try “sudo pip install Jetson.GPIO” if doesn’t work go manual.git clone https://github.com/NVIDIA/jetson-gpio.gitcd jetson-gpiosudo python3 setup.py installsudo groupadd -f -r gpiosudo usermod -a -G gpio your_user_name

3. Set-up intel real sense

Follow this tutorial it’s an open-source library from intel

note that if are you going to use 435i you need to download jetpack 4.2.2 and install all nessary libraries

4. Set-up Arduino-Nanpy

pip install nanpygit clone https://github.com/nanpy/nanpy-firmware.gitcd nanpy-firmware./configure.sh
Copy Nanpy directory to Arduino sketchbook then open nanpy.ino upload it

5. Your System is ready now
try Examples from each stage to make sure that the system is working.
Try your own project, I trust that you can do wonderful projects with these components.

Conclusion

As I have mentioned above combining all of this component You can do Massive projects.
Jetson nano is so powerful kit for deep learning and AI for Robotics, but it has some limitations like no PWM and not enough current for led that’s why using Arduino through Nanpy serial communication is a good solution.

--

--