Analysis: Oak-D-Lite Sensor on GoPiGo3

Everyone knows I worry about my GoPiGo3 batteries a lot, so it will be no surprise that my first goal for “Legacy Dave” sporting his new Oak-D-Lite “Object Recognition With Depth” sensor has been to know how much battery load and processor load this new wiz-bang is going to consume.

 

The “hello world” examples showed over 100% processor load for a total 12.5 watt battery load (6W base bot plus 6.5W sensor load) - YIKES!

Since the RaspberryPi 3B+ only has USB2 for the image streaming, the sensor could only transfer results at 12 FPS.

Of course no one had thought to create an example that did not stream annotated image data from the three cameras, and when asked about an example the response was “just remove the xLinkOut statement”

After having to draw pictures and actually understand the eight data-flows, I managed to produce an object recognizing sensor with x,y,z device-relative position output with optional “see what the robot sees” image display.

Results:

  • Raspberry Pi 3B+ average load decreased from 100% to 2%
  • Oak-D-Lite object with depth processing rate increased from 12FPS to 30FPS
  • Processor Temperature “Load” decreased from 20degC to 2degC for unaspirated heatsink staying well below the soft temperature limit
  • Oak-D-Lite adds 4.5 watt load during operation to the robot’s 6W basic load
    (27WHr safely available from battery)

Created two versions:

  1. Optional Display of image, annotated objects, and depth map
  2. Console only version showing minimum code needed for results only programming

The code is here

The optional display version will allow my robot the best performance, and still allow humans to see through the robot’s eyes but only when asked.

That additional 4.5 watts has to come from a separate 5V supply so “ROSbot With LIDAR Dave” required a “5V Power Distribution” to become “Legacy Dave and ROSbot Dave with on-demand Oak-D-Lite and LIDAR”

Next up - “Legacy Dave GoPiGo3 Follows Me Around The House”

2 Likes

Are you going to post your results back on that forum?  I bet you’re not the only one who wants to know how to turn the Oak-D Lite from a space-heater into a working camera.  :wink:  :man_facepalming:

Cool beanies with the power distribution!  Do you take it off the robot’s Li-Ion battery?  I may have to find something like that for Charlie so I can send him some “boost” power through the power connector - or solder it to the PCB!

Oh, and aren’t you the one who said they didn’t allow you to use tools? (laughing!)

1 Like

and twitter:

2 Likes

What are you feeding that power adapter from?  (I’m assuming it’s a buck-converter).

Are you taking it from Dave’s lithium battery?

2 Likes
Right - Lith Batt -> volt/power meter -> GoPiGo3 -> RPi -> USB speaker
                                      \- Pololu 5v2A up/dn buck -> LIDAR+Oak-D-Lite

And there is a three-plug to one socket power cable with

  • 1 plug to Li-Ion Batt
  • 1 plug to GoPiGo3
  • 1 plug to 5v Buck
  • Socket not in use

I unplug the plug from battery to insert plug from recharger, but could use the socket (at a slower recharge rate).

2 Likes

Wow - that’s really impressive. If/when I play with an OAK I’ll have to come back to this.
/K

2 Likes

Excellent!

What buck/boost converter are you using?  I may have to find something like that over here to provide supplemental power to the Raspberry Pi.  (I’m thinking of providing a 5v power plug for the USB-C power connector.)

1 Like

Pololu has lots of voltage regulator options.

The specific one, I had lying around, is a Pololu 3-30v input, fixed 5V 2A output unit.

The Pololu bucks usually come with an enable input that would potentially allow me to quiesce the supply during recharging or when neither the Oak or LIDAR are needed. They draw around 100mA each when not in use, which for Dave as a non-24/7 bot is not an issue. If Dave ever grows recharge contacts and uses his advanced sensing to be able to wander and return to a recharger, the enable might offer up to an additional 39 minutes run time to Dave’s current 3.8 hour max playtime.

Just noticed today is seven years I’ve been haunting this forum:

Anniversary_7_Years_Today

2 Likes

Woo Hoo :clap: :partying_face:. Although I’m still fairly new, seems like it’s been a very active 7 years.
/K

2 Likes

At least the last 4-1/2 years - I signed up while searching for ideas back in '15, but lurked for 2-1/2 years listening here, on raspberrypi.org, and many robot component supplier forums.

After retiring in 2017, I needed a new “break room” and luckily found a few folk here playing with robots.

It still amazes me out of how many billions of people, how few folk there are playing with robots, and how nearly every one of us is playing with a different robot in one way or another.

Now comes along this Oak-D-Lite sensor that can be programmed to be different for every robot, and even be customized/trained making the chances of “drop in” functionality almost totally impossible.

I’m thankful for you, and all the friends I’ve made here. It’s still fun after so many years.

2 Likes