I want to see other teams’ opinions.
To me, the answer to this question depends on how much detail that you think you need and how much of the robot operation can be automated during the Sandstorm period.
If you can reliably get your robot to a target using autonomous path driving then you may just need a 640x480 camera with a large viewport on the DS to see clearly where you’re placing/shooting your game piece.
Higher-resolution cameras may be limited by the FMS bandwidth limit in rule R67. 1280x720 and 1920x1080p cameras may have a hard time pumping all that resolution through the 4mbps pipe, so you’ll need to compress those images or reduce the resolution.
A few of our students came up with a good list of cameras to use, I’ll try and get a copy for you, but remember that 4mbit is not that much. How you use it and get it to the DS is really the tricky bit; 4K 120FPS is great, but not so much if you can’t possibly hope to stream it back to the DS.
I’m about to reveal our team’s secret weapon… https://www.amazon.com/180degree-Fisheye-Camera-usb-Android-Windows/dp/B00LQ854AG
Once you use a wide-angle camera, you’ll never go back. And it’s plug-and-play with every computer I’ve tried, including the roboRIO.
In terms of software, the simplest possible system is a network camera (e.g. Axis M1011) displayed on a web browser on the DS laptop. Nothing to configure in the robot code, nothing to configure in the FRC DS software. Hardware-wise, it’s a bit harder than a USB camera since you need to power it, but with a good regulated power supply it’s simple and works well.
That said, I agree 100% on wide angle lenses, such as the ELP mentioned above.
Don’t let people scare you on bandwidth. It’s not particularly hard to configure video feeds to run in reasonable bandwidth, once you let go of the notion of suitable-for-framing image quality.
+1 but if you’re looking for another step up, back in 2017 Roboteers(2481) used 4 cameras stitched together to create a 360 view of everything around their robot, you can see it in action in their reveal video
Thank you for sharing. Is the fisheye distortion too disorienting?
We are using the Limelight camera. Love it so far. A little pricey but well worth it and can work up to 90fps.
In our experience, any problems with distortion are made up for by how much peripheral vision you have.
I’m surprised to see your reference to a fisheye lens. Why do you like it? I can see the extra peripheral vision handy to avoid defense bot coming your way.
My 2013 Toyota has a wide angle lens on the backup camera (‘back’ before they added the overlays to show your path as defined by the steering wheel). It is useless for backing up our narrow, curvy driveway. I’m thinking a tighter lens will help for accurate robot aiming.
There’s more than two ways to build a robot!
With a backup camera you have to also think about how to steer a car in reverse.
Our drivers had no trouble adjusting to the distortion, and loved being able to see both distant objectives and game pieces next to the robot in the same image.
I’m about to reveal our team’s secret weapon…
Can you adjust the image size and frame rate?
We’ve uses the same many times with great success!
Like bvisness said you’re also focusing on backing the car up and you’re only using the camera for driving backwards. Think about this if someone said “hey we’re going to cover your windshield when you drive but you can have one camera.” Would you rather have a regular, undistorted, but smaller view of only the road in front of you or would you want a wide angle camera where you can see the road in front of you and the lanes off to each side? If I was driving on the field I would definitely want a fisheye lens, accepting the distorted view in exchange for a bigger viewing area, more to reference when aiming, and a less probable chance to hit my alliance partners two hatch five star autonomous.
I know that this is a bit more expensive, but we’ve been testing out the Axis F-Series system for Axis. It features a modular design, splitting the sensors and processor up, and supports streaming up to four mjpeg or h.264 images at once! The sensors are tiny, and the smaller sensor size is great to work with. They even let you *gasp * adjust camera parameters automatically (I’m looking at you, lifecam auto color settings)
is there a good way to ensure we are under 4mb bandwidth limit?
thanks
You can configure your robot’s radio to limit bandwidth using the “BW Limit” checkbox in the FRC Radio Configuration Utility. This mimics the FMS’s bandwidth limit that you will encounter at competitions so it’s a good way to make sure that your camera feeds aren’t over-filling the pipe.
If you’re on Windows, you can also watch your dashboard process’s “Network” column in the Task Manager to track its bandwidth usage. The Task Manager won’t report exact usage, but it should give a good idea of the ballpark range you’re in.
We purchased one of these and verified it works with PC programs like Skype, but the basic USB camera initialization code that works for other cameras we’ve connected to the roboRIO doesn’t seem to like the fisheye cam.
Is there a specific frame rate and resolution you command for this camera to get it to play nice with the roboRIO?
Are the prices on Amazon for these representative of what FRC teams could buy them for? Because the setup looks a bit price-prohibitive, and I say that as a team which routinely uses $400 cameras in competition.
Can anyone share some footage they have taken with this camera? We are really looking at this but we cant seem to find any videos made with this camera.