Machine Vision Optics for Robotics

Lenses for Robotics: Choosing Machine Vision Optics by Robot Task and Mount Format

A lens selection guide for navigation, manipulation, inspection-on-arm, and stereo depth sensing. Covers M12 vs C-mount tradeoffs, distortion, vibration, and matched-pair requirements for stereo cameras.

By Max Henkart, Commonlands · Updated July 2026 · 9 min read

An industrial robot arm with an M12 camera on its end-effector picking a part

Robot vision splits into three optical problems, not one: navigation needs wide field of view to see the surroundings, manipulation needs the right working distance and depth of field to place a gripper accurately, and inspection-on-arm needs resolution and low distortion at a fixed standoff. For any camera that moves with the robot (end-of-arm tooling, wrist-mounted, or mobile platform), M12 lenses are the default format at 3g-15g. For fixed-station and gantry inspection where weight is not a constraint, C-mount gives more resolution headroom and an adjustable iris.

Below: lens choice by task, the specs that matter (distortion, CRA, vibration), M12 vs C-mount tradeoffs, and stereo depth-sensing cameras. It also covers why matched lens pairs matter.

What lens should I use for each robot vision task?

Robot vision breaks into three optical problems: navigation, manipulation, and inspection-on-arm. Each has a different primary constraint, so the right lens follows from the task, not the robot platform. A single robot often carries more than one camera, each running a different lens for a different job.

Navigation: wide field of view for situational awareness

Mobile robots and AMRs run fisheye or ultra-wide M12 lenses in the 150-200 degree range to see a wide area with fewer cameras. High distortion is fine here, since obstacle avoidance is not a millimeter-precision task.

Manipulation and pick-and-place: working distance and distortion

Robot arms picking parts need the lens matched to working distance and depth of field, not just field of view. Overhead bin-picking cameras commonly run 300mm-800mm. Coordinate accuracy then depends on distortion, since several percent of barrel distortion at the corner can be the difference between a successful grasp and a miss.

Inspection-on-arm: resolution and low distortion at a fixed standoff

Inspection cameras need resolution to resolve the defect size at the working distance, plus distortion low enough that image-coordinate measurements are trustworthy. Because these are often fixed rather than moving with the robot, C-mount becomes practical: no payload penalty, and an adjustable iris to hold focus across parts of varying height.

Robot taskLens formatPrimary optical needWhat to avoid
Navigation / AMR surround-view M12 fisheye or ultra-wide 150-200 degree field of view, small form factor Telephoto; unnecessary sealing indoors
Manipulation / pick-and-place M12 low distortion Working distance match, low distortion for coordinate accuracy Fisheye without a distortion model in software
Inspection-on-arm M12 (end-of-arm) or C-mount (fixed station) Resolution at working distance, low distortion C-mount weight on a moving end effector
Stereo depth sensing Matched M12 or C-mount pair Consistent focal length and distortion between both lenses Assuming same SKU means identical optics

The table is a starting point. Real robots mix roles: a mobile manipulator might carry a fisheye for navigation and a low-distortion lens on the arm for grasping. See the lenses for embedded vision guide for board-level integration common to all three roles.

An all-metal M12 lens bolted into a camera on robot end-of-arm tooling
A rugged threaded mount holds calibration through constant vibration.

M12 vs C-mount lenses by robotics task

M12 lenses use an M12x0.5mm thread with no standardized flange focal distance, and they dominate embedded vision boards: many Jetson modules, the M12 Raspberry Pi HQ camera, and most other MIPI-CSI2 modules use M12 holders. Aperture is typically fixed.

C-mount lenses use a 1"-32 UN thread with a standardized 17.526mm flange, working with GigE Vision, USB3 Vision, and CoaXPress industrial cameras. The adjustable iris ring gives depth-of-field control, useful for gantry stations imaging parts of varying height.

FactorM12C-mount
Weight3g-15g50g-200g
Camera compatibilityEmbedded boards (Jetson, Raspberry Pi)Industrial cameras (GigE, USB3, CoaXPress)
ApertureFixedAdjustable iris
Flange standardNo standard17.526mm, standardized
Typical sensor coverageCompact formats, up to about 1/1.7"Larger formats, up to 1.2" and beyond
Best forNavigation, end-of-arm, mobile platformsFixed station, gantry, conveyor inspection

The decision follows the camera's mounting, not a preference for one format. If the camera moves with the robot, M12 wins on weight and board-level integration. If it is fixed while parts move through the field, C-mount is worth the size for resolution headroom and iris control. Neither is a lesser version of the other. They are different optical systems: C-mount's internal cam rebalances aberrations as the focus ring moves lens groups relative to each other, while M12 is a rigid assembly with no internal moving groups.

Chief ray angle (CRA) matching

CRA describes the angle at which off-axis light exits the lens and strikes the sensor. Small-pixel CMOS sensors use microlens arrays tuned to a specific CRA curve. A mismatch produces color shading and corner falloff toward the edges, a sensor angular-response effect rather than optical vignetting, common when pairing wide-angle lenses with sensors designed for longer focal lengths. Verify CRA compatibility between lens and sensor rather than assuming it based on mount type alone. See the chief ray angle and mismatch guide for the verification method.

Lenses for stereo vision and depth sensing

A stereo camera uses two lenses separated by a known baseline to capture the same scene from slightly different viewpoints, then estimates depth from disparity, the pixel offset between where a given point appears in the left and right image. The relationship is Z = (f × B) / d, where Z is scene depth, f is focal length in pixels, B is baseline, and d is disparity.

Disparity sits in the denominator and shrinks with distance, so precision falls off with range: a fixed disparity error produces a depth error that grows with the square of distance. A 1-pixel error at 500mm costs far less absolute depth than the same error at 2000mm.

Longer focal length increases disparity sensitivity and depth precision but narrows field of view and shrinks the overlap volume both cameras share. A wider baseline improves depth discrimination but pushes out the nearest distance both cameras can see. Choose baseline and focal length together against the working volume you need to cover, and verify shared coverage with the field of view calculator before committing to hardware.

Why matched lens pairs matter for disparity accuracy

Stereo depth assumes both lenses behave consistently: the same scene geometry should produce proportionally equivalent image geometry in each camera. If the left lens has a slightly longer effective focal length than the right, objects at a given depth image at different magnification, and calibration can only partially absorb the residual. Two lenses under the same SKU still differ measurably in focal length and distortion from manufacturing tolerances, so characterize both individually for demanding stereo rather than trusting the catalog number.

Distortion mismatch degrades rectification, the step that aligns both images so corresponding points fall on the same horizontal scan line. When distortion profiles differ, residuals remain, forcing the matching algorithm to search a wider vertical range and raising false matches near the field edges. Asymmetric corner MTF does the same: comparing a sharp patch against a blurred one lowers match confidence in that region.

M12 vs C-mount for stereo builds

M12 is the practical choice for compact embedded stereo: two lenses fit on a small sensor pair without meaningful added mass, and current Commonlands M12 lenses cover sensors up to roughly 1/1.7" with distortion from near-zero to about 2%, acceptable for calibrated stereo. C-mount becomes better once the sensor exceeds that, the path needs a rigid mechanical reference, or depth-of-field control matters. The fixed 17.526mm flange simplifies rig alignment, at the cost of size and price.

In the table below, field-of-view angles are the full diagonal across the stated image-circle diameter, and distortion is signed (negative is barrel) in each lens's published convention.

LensMountEFLFoVDistortionPriceStereo use case
CIL062 M12 6.2mm 60° @ 7.2mm -2% rectilin. @8.8mm $19 Compact embedded stereo, budget builds
CIL085 M12 8.2mm 57° @ 8.8mm -0.9% TV @8.8mm $49 Higher-resolution compact stereo, lower distortion
CIL561 C-mount 6.0mm 76° @ 9.3mm -2% $149 Rigid industrial stereo rig, adjustable iris

For the full rectification-residual analysis and CRA-versus-microlens interaction, see how to read MTF curves.

Top lenses for robotics by task

The best robotics lens follows the task, not the robot: an M12 fisheye for navigation, a low-distortion M12 for pick-and-place, a C-mount for fixed-station inspection, and a matched M12 pair for stereo. The six Commonlands picks below are all published-spec parts. Size each against your own sensor and working distance with the field of view calculator. Specific figures come from the product page. Ranges and qualitative entries are flagged in the footnote.

Robot taskLensMountEFLDistortionWeightWhy this pick
Navigation / SLAM (wide FoV)CIL232M123.1mmHigh, fisheye12g181° coverage from one camera cuts the sensor count for perimeter awareness. IP67 suits dusty outdoor platforms, and all-glass, all-metal construction stays dimensionally stable under vibration.
Mobile robot / AMR (indoor)CIL391M123.25mmBarrel, uncorrected5gLightest wide option for indoor AMRs that skip sealing. 154° and all-glass at 5g.
Pick-and-placeCIL052M125.2mm-0.1%13.1gLow distortion keeps grasp coordinates accurate without a per-frame software correction.
Inspection-on-armCIL034M123.2mmNear-zero5.7gIP67 metal barrel holds calibration under arm vibration. Negligible distortion at 5.7g.
Stereo pair (embedded)CIL062M126.2mm-2%<15gLow-cost matched pair for compact disparity rigs. Characterize both units, since same-SKU lenses still vary in EFL and distortion.
Fixed-station / gantry inspectionCIL556C-mount50mm-0.02%96g25MP resolution and an adjustable F/2.8-16 iris for high-magnification defect inspection where weight is not a payload cost.

Fisheye and wide-angle distortion is barrel by design and specified against a different reference, so it does not compare directly to the low-distortion figures. Entries marked under 15g are M12 models inside the 3g to 15g band. Confirm exact mass on the product page.

One caveat on stereo: an integrated depth camera (Intel RealSense class) can replace a discrete lens pair when coarse depth is enough and integration time matters more than accuracy. A spec-controlled matched M12 pair wins when you set the baseline yourself or need distortion held consistent between channels.

Whichever route you take, verify chief ray angle against the sensor before you commit, then browse the full M12 lenses and C-mount lenses ranges for focal lengths not shown here.

Products by robotics use case

In-stock Commonlands M12 and C-mount lenses spanning navigation, manipulation, and stereo builds. Same-day shipping on orders placed before 12 PM PST.

Basler Dart Camera IP67 M12 Lens

No Distortion 3.2mm Lens

$39.00

Download .STPView Product
No Distortion Wide Angle M12 Lens

Low Distortion 1.8mm M12 Lens

$39.00

Download .STPView Product
6mm M12 Lenses S Mount Lens

Low Distortion 6mm M12 Lens

$49.00

Download .STPView Product
Wide Angle M12 Lens

Wide-Angle 4.5mm M12 Lens

$49.00

Download .STPView Product
No Distortion 4.2mm M12 Lens

No Distortion 4.2mm M12 Lens

$49.00

Download .STPView Product
IR Corrected 12mm M12 Lens

IR Corrected 12mm M12 Lens

$59.00

Download .STPView Product
3.5mm M12 Lens for IMX226 AR0821 IMX537

Large Format 3.5mm M12 Lens

$29.00

Download .STPView Product
3mm Wide-Angle M12 Lens

Wide-Angle 2.7mm M12 Lens

$39.00

Download .STPView Product

Browse Camera Lenses for Robotics

An autonomous mobile robot with two wide-angle M12 cameras for stereo depth and navigation
Wide-angle stereo pairs give the robot depth for SLAM navigation.

Frequently asked questions

What lens should I use for a pick-and-place robot?

For overhead bin picking at 300mm-800mm working distance, the CIL052 (5.2mm, -0.1% distortion, $79) is the better default. Pick-and-place is a coordinate-accuracy task, and its low distortion keeps position error out of the grasp calculation. If coverage of a full bin matters more than coordinate accuracy and you are correcting distortion in software, the CIL391 (3.25mm, 154-degree FoV, $39) gives more field of view. Both are M12 format and mount directly on Jetson and Raspberry Pi camera boards that use M12 lens holders.

What is the best lens for NVIDIA Jetson robot vision?

Jetson platforms typically pair with MIPI-CSI2 cameras on small sensors (1/2.7 inch to 1/3 inch) through M12 lens holders. A 3mm-5mm M12 lens, such as the CIL034, covers general-purpose robot arm and mobile robot vision at these sensor sizes. For wider obstacle-avoidance coverage, a 150-200 degree fisheye M12 lens like the CIL232 is a common pairing. Always verify chief ray angle compatibility against your sensor module.

Should I use an M12 or a C-mount lens for robotic applications?

If the camera moves with the robot (on an end-of-arm tool, wrist, or mobile platform), M12 is usually the right format at 3g-15g versus 50g-200g for C-mount. That payload margin matters against a robot arm's rated capacity. If the camera is fixed and the part moves to it (gantry, conveyor, or fixed station), C-mount gives more resolution headroom and an adjustable iris for depth-of-field control.

How do I calculate the right focal length for my robot camera?

Use EFL = (WD × sensor_width) / FOV_width, which is exact for rectilinear lenses, to solve for focal length from your working distance and required field of view. For fisheye lenses, use the FoV calculator instead. For a 1/3 inch sensor (4.8mm wide) at 300mm working distance needing roughly 290mm of horizontal coverage, that works out to approximately a 5mm lens.

Use the Commonlands FoV calculator to run the numbers for your own sensor and working distance. For depth of field at that working distance, use the DoF calculator.

Can I use a fisheye lens for robot guidance and manipulation?

Fisheye lenses have high barrel distortion by design, which is fine for navigation and obstacle detection where wide coverage matters and precise position measurement does not. For manipulation tasks that localize a part or read a fiducial from image coordinates, use a low-distortion rectilinear lens instead. Correcting fisheye distortion in software adds processing overhead and has its own accuracy limits.

Need help choosing a lens for your robot?

Send us your robot task: navigation, manipulation, inspection-on-arm, or stereo depth sensing. Include your sensor and working distance. Commonlands optical engineers can recommend focal length, distortion tolerance, and mount format, and confirm CRA compatibility before you commit to a design.