Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   Co processor Question (http://www.chiefdelphi.com/forums/showthread.php?t=142070)

aaronjeline 18-01-2016 17:01

Co processor Question
 
Looking into purchasing a co processor for vision detection, any recommendations? +1 if it's easily compatible with GRIP.

Thanks.

Arhowk 18-01-2016 18:58

Re: Co processor Question
 
If you want to use GRIP than your best best is an r-pi 2.. not sure of the processing power on that though

if you'd like to use CV, than you can go with a beaglebone or TK2

ThomasClark 18-01-2016 22:10

Re: Co processor Question
 
Kangaroo PC

It comes with full 64-bit Windows 10, twice the RAM of a Raspberry Pi, a 32 GB SSD, and an internal battery. It's a little pricier, but well within the limit for a single component. You can also probably get a 10% education discount.

cad321 18-01-2016 22:45

Re: Co processor Question
 
Quote:

Originally Posted by ThomasClark (Post 1526354)
Kangaroo PC

It comes with full 64-bit Windows 10, twice the RAM of a Raspberry Pi, a 32 GB SSD, and an internal battery. It's a little pricier, but well within the limit for a single component. You can also probably get a 10% education discount.

How would you go about communicating with this? There is no ethernet port on it, only Bluetooth and wifi both of which are illegal to use in competition.

Arhowk 18-01-2016 22:49

Re: Co processor Question
 
Quote:

Originally Posted by cad321 (Post 1526380)
How would you go about communicating with this? There is no ethernet port on it, only Bluetooth and wifi both of which are illegal to use in competition.

It has a USB port on it... wrong direction though! Connecting it to the RIO would connect two hosts together... which is like plugging a mouse into another mouse. A custom driver for the USB port would have to be written, I guess. Seems like less work to just use a r-pi

dkavanagh 18-01-2016 23:03

Re: Co processor Question
 
Ever looked at this? http://www.em.avnet.com/en-us/design...arter-Kit.aspx

mmaunu 18-01-2016 23:54

Re: Co processor Question
 
Quote:

Originally Posted by Arhowk (Post 1526382)
It has a USB port on it... wrong direction though! Connecting it to the RIO would connect two hosts together... which is like plugging a mouse into another mouse. A custom driver for the USB port would have to be written, I guess. Seems like less work to just use a r-pi

The USB on the dock can be used with a USB-to-ethernet adapter (like this one) to plug into the router. Just another option.

ThomasClark 19-01-2016 00:06

Re: Co processor Question
 
Quote:

Originally Posted by mmaunu (Post 1526415)
The USB on the dock can be used with a USB-to-ethernet adapter (like this one) to plug into the router. Just another option.

Yep, this is most likely what 237 is doing.

rich2202 19-01-2016 00:42

Re: Co processor Question
 
We were thinking of doing the vision processing on the Driver Station. The video will be fed to the DS for driving purposes, so no additional wifi traffic.

Robomarfa 21-01-2016 10:01

Re: Co processor Question
 
Is there a co-processor recommendation for use with LabView?

marshall 21-01-2016 10:08

Re: Co processor Question
 
Quote:

Originally Posted by ThomasClark (Post 1526354)
Kangaroo PC

It comes with full 64-bit Windows 10, twice the RAM of a Raspberry Pi, a 32 GB SSD, and an internal battery. It's a little pricier, but well within the limit for a single component. You can also probably get a 10% education discount.

This is really cool. Thank you for sharing.

Fauge7 21-01-2016 10:29

Re: Co processor Question
 
Odroid c1+, same price as the raspi but also runs linux and has a gpio that is the same as raspi, very good board for the same price.

Greg McKaskle 21-01-2016 10:30

Re: Co processor Question
 
Quote:

Originally Posted by Robomarfa (Post 1527737)
Is there a co-processor recommendation for use with LabView?

While all of them will interoperate with a LV programmed roboRIO, at the moment, the only LV tools given to teams are for Windows computers. So an easy onboard processor to target with LV needs to run windows.

The team I'm mentoring intends to do all of our vision on the roboRIO. Coprocessors bring extra MIPs, but also extra complexity and points of failure. So it is worth considering whether the coprocessor is the right approach for your team.

Greg McKaskle

techhelpbb 21-01-2016 10:41

Re: Co processor Question
 
Currently working with the ODroid XU4 with Ubuntu 15.04 32bit.
Mounted in the ODroid default case with 16GB of eMMC.
8GB free for this work and 1.3GB of RAM with Mate running.

Thought the Kangaroo might be a good alternate as well have one on my desk.

The battery in the Kangaroo is attractive. The ODroid's 8 cores draw 3A at 5VDC (measured with Fluke meter on 100ms max recording mode) with Belkin WiFi, wireless keyboard and a USB camera attached by USB. That is within reach of the old D-Link radio DC/DC converter. Thing is: I worry that a dip below 8VDC might cause a reset so we might put a low drop out DC/DC stepup booster to 15VDC or 18VDC before that D-Link DC/DC converter. That adds volume and weight to the ODroid which would otherwise be smaller than the Kangaroo.

Not sure if we field this frankly. For the last several years I invested in vision related hardware and often it did not get on the robot even if it worked. We are student led so if they choose to not follow through it is their choice. I just provide the investment. Personally I like the modularity of doing the video and camera capture on the coprocessor. If they ditch the idea you just take it off.

Alerra 21-01-2016 11:08

Re: Co processor Question
 
The Beaglebone Black is a great coprocessor, with more than enough power for vision tracking.

s1900ahon 21-01-2016 11:36

Re: Co processor Question
 
You might also look at this board:DE0-NANO-SOC.

CPU is a dual core A9 @ 925 MHz, 1 GB DDR3 (32-bit wide) plus FPGA.

DISCLAIMER: I work for Intel (Altera).

Greg McKaskle 21-01-2016 11:37

Re: Co processor Question
 
Just learned about the Kangaroo. Since it is a Windows desktop, it can be treated much like a DB computer, so RoboRealm, LV examples, and much other SW will run on it and be easily debugged for it.

Greg McKaskle

marshall 21-01-2016 12:33

Re: Co processor Question
 
Quote:

Originally Posted by s1900ahon (Post 1527793)
You might also look at this board:DE0-NANO-SOC.

CPU is a dual core A9 @ 925 MHz, 1 GB DDR3 (32-bit wide) plus FPGA.

DISCLAIMER: I work for Intel (Altera).

And you're recommending an ARM CPU? Clearly they have not made you part of the Intel machine yet!

s1900ahon 21-01-2016 12:38

Re: Co processor Question
 
Quote:

Originally Posted by marshall (Post 1527816)
And you're recommending an ARM CPU? Clearly they have not made you part of the Intel machine yet!

Heh heh.. I got my new badge only just yesterday.

However, I've also been told on numerous occasions that our SoC product line (e.g. the Cyclone V SoC on the DE0 Nano SoC board) will have a long life and will have new, ARM-based variants.

Anyhow, I do like this board. I sit beside the marketing guy who oversaw development and was happy to provide him suggestions during that time frame so that it would be useful to robotic applications. This includes the Arduino style headers. There are some things I'd fix on it, but overall, it is a very powerful little guy.

techhelpbb 21-01-2016 12:38

Re: Co processor Question
 
Quote:

Originally Posted by Greg McKaskle (Post 1527794)
Just learned about the Kangaroo. Since it is a Windows desktop, it can be treated much like a DB computer, so RoboRealm, LV examples, and much other SW will run on it and be easily debugged for it.

Do you know, off hand, about compatibility with Windows 10 IoT?

Quote:

Originally Posted by s1900ahon (Post 1527793)
You might also look at this board:DE0-NANO-SOC

How much current at 5V?

s1900ahon 21-01-2016 12:58

Re: Co processor Question
 
Quote:

Originally Posted by techhelpbb (Post 1527823)
How much current at 5V?

I'll measure that tonight. The wall wart that comes in the kit is 2A @ 5V.

Scott

snekiam 21-01-2016 14:30

Re: Co processor Question
 
Anybody using the RPi 2? We were planning on using it this year, but not entirely sure it will be powerful enough.

techhelpbb 21-01-2016 16:29

Re: Co processor Question
 
Quote:

Originally Posted by snekiam (Post 1527889)
Anybody using the RPi 2? We were planning on using it this year, but not entirely sure it will be powerful enough.

I think the Raspberry Pi 2 is a fine board but our first adventure into visual processing was on a proper laptop. With the limited time I like to have more power than we need because that performance limit demands optimization. Thing is the difference in price from a $35 board to a $99 board, as long as the support needs do not get even larger, is not worth saving the money. Even at $300 it might still be worth the money.

Once we get into the $300 range you start getting into the laptop range. Starts not to make sense anymore. Just buy the laptop.

adciv 21-01-2016 16:46

Re: Co processor Question
 
Quote:

Originally Posted by techhelpbb (Post 1527945)
Once we get into the $300 range you start getting into the laptop range. Starts not to make sense anymore. Just buy the laptop.

Size/Weight says keep the micro...hmm..... I need to look more into this kangaroo.

onenerdyguy 22-01-2016 09:02

Re: Co processor Question
 
Ok, so rookie team, with a question: I thought everything had to be powered off the robot battery, so how can we use the Kangaroo with the integrated?

techhelpbb 22-01-2016 09:10

Re: Co processor Question
 
Quote:

Originally Posted by onenerdyguy (Post 1528282)
Ok, so rookie team, with a question: I thought everything had to be powered off the robot battery, so how can we use the Kangaroo with the integrated?

The rules for COTS devices allow you to put a device with a battery provided as part of the original COTS design on the competition field robots. Nothing indicates that the power for these devices must be controlled by the robot master breaker.

Since none of these devices are allowed to instruct the robot to move directly the risk to leaving it on is somewhat mitigated. A few years ago we put a netbook with an SSD minus the screen and keyboard on the robot and it was often left on then charged in the pits.

Of course if your device does not have a battery and you run an operating system that doesn't like being abruptly shut down, then you need to start a shutdown rapidly before you turn off the robot master breaker. The ODroid XU4 I mentioned above can boot in 20 seconds and shutdown faster than that. It also has a button one can use to start the shutdown without resorting to hooking up a mouse/keyboard/monitor. That button does require some software tweaking to work like that, normally it simply brings up the shutdown screen in Mate.

adciv 22-01-2016 09:12

Re: Co processor Question
 
Under the custom circuitry rule, you can use a power supply to convert the battery voltage to a regulated voltage suitable for the end device provided doing so does not violate any other rules (e.g. R41, 24V limit)

The Kangaroo requires a 12V 3A input. I do not recommend a direct battery connection as the battery voltage can fluctuate wildly during a match. What you can do is acquire a 6-18V to 12V voltage regulator and use that for powering the Kangaroo.

On a related note, I have seen people add laptops to the robot powered by their internal battery under rule R31).

techhelpbb 22-01-2016 09:28

Re: Co processor Question
 
Quote:

Originally Posted by adciv (Post 1528287)
The Kangaroo requires a 12V 3A input. I do not recommend a direct battery connection as the battery voltage can fluctuate wildly during a match. What you can do is acquire a 6-18V to 12V voltage regulator and use that for powering the Kangaroo.

It makes little sense to try to charge the Kangaroo on the robot during a match. It has sufficient battery life on the COTS battery to survive the match and be charged in the pits easily.

This is the real weight and size value to it versus say the ODroid XU4. With the ODroid there's no COTS battery. So it must have power from the robot. It is very likely I can place in the footprint of the face of the Kangaroo the ODroid XU4 and the support power system but it will be heavier and thicker by some amount. On the other hand the USB to Ethernet dongle will make the face of the Kangaroo a little larger. Price wise the Kangaroo plus the USB to Ethernet dongle are in line with the price of the ODroid XU4, the case for it, and the old D-Link DC/DC converter. If one adds a boost converter to the Odroid XU4 system then the ODroid XU4 is slightly more expensive to use for this. Ubuntu on the ODroid is 32bit and Windows on the Kangaroo is 64bit. Not that I think the word width is the big issue here. The National Instrument software may work with the Kangaroo but with the ODroid XU4 you'll probably use OpenCV.

I am not sure how long the boot and shutdown on the Kangaroo are. If it is left on between matches it might not matter.

adciv 22-01-2016 09:37

Re: Co processor Question
 
Woops, I missed that it had an internal battery.

If anyone has some vision benchmarks between ODroid, Kangaroo, and Tegra TK1, I'd be interested. As an aside, it is legal to use a 2nd RIO as a coprocessor (albeit expensively, R11)

techhelpbb 22-01-2016 09:39

Re: Co processor Question
 
Quote:

Originally Posted by adciv (Post 1528305)
Woops, I missed that it had an internal battery.

If anyone has some vision benchmarks between ODroid, Kangaroo, and Tegra TK1, I'd be interested. As an aside, it is legal to use a 2nd RIO as a coprocessor (albeit expensively, R11)

Marshall posted some performance work on the Tegra in the past.
There are multiple ODroid boards so which ones interest you?
Which vision system on the Kangaroo?

techhelpbb 22-01-2016 09:40

Re: Co processor Question
 
Quote:

Originally Posted by adciv (Post 1528305)
Woops, I missed that it had an internal battery.

If anyone has some vision benchmarks between ODroid, Kangaroo, and Tegra TK1, I'd be interested. As an aside, it is legal to use a 2nd RIO as a coprocessor (albeit expensively, R11)

Marshall posted some performance work on the Tegra in the past.
There are multiple ODroid boards so which ones interest you?
Which vision system on the Kangaroo?

I can't necessarily do this myself right now.
These are the questions one would need to know.

adciv 22-01-2016 10:06

Re: Co processor Question
 
I'll take whatever info is out there, this is for general background knowledge on their comparative capabilities. I've wanted to run vision co-processors in the past. The only reasons we aren't this year is the roboRIO is 'good enough' for what we need and our development resources are too low to spend time on the tegra.

techhelpbb 22-01-2016 10:13

Re: Co processor Question
 
Quote:

Originally Posted by adciv (Post 1528312)
I'll take whatever info is out there, this is for general background knowledge on their comparative capabilities. I've wanted to run vision co-processors in the past. The only reasons we aren't this year is the roboRIO is 'good enough' for what we need and our development resources are too low to spend time on the tegra.

Only thing I have handy for the ODroid XU3 (last version - the XU4 is even faster):
http://www.eecs.berkeley.edu/Pubs/Te...S-2014-117.pdf

I have a Kangaroo on my desk but I don't really want to put the NI stuff on it.
Maybe I'll order another...Done
Microsoft loves me considering I just renewed my MSDN license...
ODroid loves me because I now own 4 of these XU4 and all sorts of gizmos for them.
Terasic where is my account e-mail?! :D

marshall 22-01-2016 10:50

Re: Co processor Question
 
Quote:

Originally Posted by techhelpbb (Post 1528308)
Marshall posted some performance work on the Tegra in the past.
There are multiple ODroid boards so which ones interest you?
Which vision system on the Kangaroo?

I can't necessarily do this myself right now.
These are the questions one would need to know.

Our work on the Tegra Systems has been interesting in terms of performance. Some folks last year (and this year!) have complained that our code performance was slow on the Jetson. We were running a cascade classifier last year that ran around 15 frames per second on the Jetson TK1. That's not slow in our experience but hey, what do we know?

Running the same code on the TX1 is substantially faster. Moving from a cascade classifier to neural networks is proving to be tricky because we don't have enough training data but also significantly faster too. It also helps that we are training with a Titan X and a 12 core Xeon... shame we can't put it on the robot...

Was our code last year super efficient and optimized for Big O or whatever nonsense you want to measure performance with? No. Ain't nobody got time for that.

Ultimately though, it's all about iterating through code revisions and optimizing the whole package, both the code and the processor.

techhelpbb 22-01-2016 11:00

Re: Co processor Question
 
Quote:

Originally Posted by marshall (Post 1528347)
Was our code last year super efficient and optimized for Big O or whatever nonsense you want to measure performance with? No. Ain't nobody got time for that.

Ultimately though, it's all about iterating through code revisions and optimizing the whole package, both the code and the processor.

Agreed and one of the things that makes me think the students I mentor might not field the XU4 is that they only asked for it the 1st week of the competition.

Success with this is very much based on what you put into it.
Sure they have what they need from me right now but it is already week 2.
6 weeks might not be enough commit for them to optimize either.

It doesn't bother me. If this rolls into the summer it's still a good use case and there's enough hardware I can work with them till next year and open source the results.

If I were a team hurting for resources and unsure of the skill level we have I wouldn't be rushing to implement this right now. Might be better to wait for some more HowTo and example cases.

Yikes: the cheapest shipping option for the Terasic board is $25? The board itself is only $99.
Seriously?:
Quote:

[Kind Warning]

Please note that Terasic only has a Taiwanese Citibank account (BENEFICIARY BANK Name: CITIBANK TAIWAN LTD., SWIFT CODE : CITITWTX) with beneficiary name TERASIC INC., if you receive any instruction asking you to wire payment to another account, please stop the payment and contact us immediately.

We would also like to remind that Terasic Sales Team only uses the domain name at terasic.com or terasic.com.tw (e.g. sales@terasic.com, NOT sales.terasic@dr.com), please pay attention to the domain name when contacting our Sales Team member.
Glad I used a proper credit card not a debit card for that :)

ThomasClark 22-01-2016 16:59

Re: Co processor Question
 
Quote:

Originally Posted by adciv (Post 1528305)
If anyone has some vision benchmarks between ODroid, Kangaroo, and Tegra TK1, I'd be interested.

I don't have benchmarks, but the Kangaroo doing basic target tracking in GRIP seems to get around 10-20 fps


All times are GMT -5. The time now is 07:14.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi