pyrtc.hardware.bmc_dm
Boston Micromachines (BMC) deformable-mirror adapter.
Drives BMC MEMS mirrors (Multi-DM, Kilo-DM, 2K, 3K, …) through the BMC DM
SDK’s Python module bmc on Linux and Windows. Set sdk_path to the
directory holding the module if it is not importable already.
The SDK takes one value per actuator in [0, 1] (a fraction of the
driver’s range). MEMS mirrors only pull, so pyrtc’s bipolar commands are
applied about a bias: value = clip(bias + command_scale * command, 0, 1),
with bias 0.5 and command_scale 0.5 by default (commands in
[-1, 1] span the full range). Use command_cap to limit the stroke.
The actuator count comes from the SDK. The 2D layout is, in order:
layout_file (a boolean .npy map), else BMC’s standard square
geometries (a square grid, or a square with its four corners removed, as on
the Multi-DM 140 and Kilo-DM 1020), else the smallest centred disk with that
many actuators (the 2K/3K circular apertures). Check it against the vendor’s
actuator map.
Functions
|
Return the actuator map of a standard BMC mirror with |
Classes
|
Wavefront corrector on a Boston Micromachines MEMS deformable mirror. |