Multiple cameras

Hi,

Some of the members on my team were wondering about the feasibility of using two cameras on the robot at once. One of which we would use for image processing to aim at the target, which would be on the front of the robot. The other camera would be displayed on the dashboard and used for the drivers to line up with game elements. Please let me know if this is possible so that I can let my fellow team members know.

Thanks in advance.

This is possible. Connect one into the cRIO for vision processing, and attach one directly onto the wireless router.

Unless he has the cRIO v2, which I imagine most teams will be using this year since the robots are smaller and weight is a huge issue with the climbing.

In that case, you would need to plug both cameras into the router, and make changes to the dashboard to accommodate vision processing on the driverstation side.

Just be very careful about framerate, resolution, and compression so that you don’t run into the 7Mb/s bandwidth limit on the FMS.

I 2nd the notion of watching your frame rate to the driver station. They’re bandwidth limiting the comms to only 7 Mbps this year. 320x240x30 FPS is 1/3 of your bandwidth without some serious compression.

Good luck…

30 frames per second? I don’t recall ever being able to get a consistent 30FPS even with unlimited bandwidth. (Or heck 10) That’s why the driver needs to rely on more than just the live feed.

Hi,

Thanks for the quick replies. I have an 8 slot CRIO, so would the IP address for the one plugging straight into it would be the normal 10.25.39.11 for the feed to the DS? Could the one plugged into the router have an IP address that is anything not used on the 10.29.39.XX subnet. Then our code or dashboard would get images from this camera.

On the issue of bandwidth, we only ever need the second camera for aiming. This will be our first year doing image processing so we might do it on board the CRIO, not using any wireless bandwith.

In the older Crio setups port 2 on the Crio was set to talk to the camera on its defaullt IP address. The dashboard got its image from the crio not the camera. I am not sure is the current image does the same for port 2. A camera with 10.xx.xx.11 needs to be plugged into the Dlink bridge, not port 2 on the crio. You can use a second camera with a different IP address. We did it successfully last year. You will need to keep a eye on band width. You generally do not need 30 FPS or full color depth though.

Plugging both cameras into the robot bridge is an easier way of handling two cameras. The cameras won’t affect your wireless bandwidth limitation unless the images are requested over wireless, i.e., the Driver Station makes the request for images from the particular camera.
If both are connected to the robot bridge, then the camera IP addresses would be 10.25.39.11 for the first one, and probably 10.25.39.12 for the second camera. Really your choice of .12 and higher.

The camera used by the cRIO would not send wireless packets, just local Ethernet packets to the cRIO.
The same as if you used a second image processing computer on the robot that requested camera images over an Ethernet connection.

That said, using the second cRIO port is fine too.
That particular port expects the camera’s factory default IP address of 192.168.1.50

Our team is considering using a camera and a Kinect on our robot.

  1. Would that work network wise?

  2. Has anyone used the Kinect on their robot with target tracking success?

Using the kinect was the subject of much discussion last year; very few actually did it. The kinect uses USB (not an IP camera), which the CRIO doesn’t support; ideas such as putting a netbook on the robot were kicked around, and solutions of microComputers were thrown around. It’s a huge undertaking as far as I know.

This may have been made extremely easier with the new RaspberryPi… :slight_smile: