与Zaber电动线性幻灯片的接口。
zaber-device的Python项目详细描述
这个python包(zaber_设备)创建了一个名为zaber device的类, 其中包含serial_interface.serialinterface的实例并添加 方法将其与zaber机动化线性幻灯片接口。
作者:
Peter Polidoro <peterpolidoro@gmail.com>
许可证:
BSD
示例用法:
from zaber_device import ZaberDevice dev = ZaberDevice() # Might automatically find device if one available # if it is not found automatically, specify port directly dev = ZaberDevice(port='/dev/ttyUSB0') # Linux dev = ZaberDevice(port='/dev/tty.usbmodem262471') # Mac OS X dev = ZaberDevice(port='COM3') # Windows dev.get_actuator_count() 2 dev.get_position() [130000, 160000] dev.home() dev.moving() [True, True] dev.moving() [False, False] dev.get_position() [0, 0] dev.move_relative(10000) dev.get_position() [10000, 10000] dev.move_relative(10000,0) dev.moving() [True, False] dev.get_position() [20000, 10000] dev.store_position(0) dev.get_stored_position(0) [20000, 10000] dev.move_at_speed(1000) dev.stop() dev.get_position() [61679, 51679] dev.move_to_stored_position(0) dev.get_position() [20000, 10000] from zaber_device import ZaberDevices devs = ZaberDevices() # Might automatically find all available devices # if they are not found automatically, specify ports to use devs = ZaberDevices(use_ports=['/dev/ttyUSB0','/dev/ttyUSB1']) # Linux devs = ZaberDevices(use_ports=['/dev/tty.usbmodem262471','/dev/tty.usbmodem262472']) # Mac OS X devs = ZaberDevices(use_ports=['COM3','COM4']) # Windows devs.keys() dev = devs[serial_number] from zaber_device import ZaberStage stage = ZaberStage() # Might automatically find all available devices # if they are not found automatically, specify ports to use stage = ZaberStage(use_ports=['/dev/ttyUSB0','/dev/ttyUSB1']) # Linux stage = ZaberStage(use_ports=['/dev/tty.usbmodem262471','/dev/tty.usbmodem262472']) # Mac OS X stage = ZaberStage(use_ports=['COM3','COM4']) # Windows stage.get_aliases() {123: [10, 11]} serial_number = 123 alias = 10 stage.set_x_axis(serial_number,alias) alias = 11 stage.set_y_axis(serial_number,alias) # Lookup microstep_size on Zaber website stage.set_x_microstep_size(0.49609375e-3) stage.get_x_microstep_size() 0.00049609375 stage.set_y_microstep_size(0.49609375e-3) stage.home() stage.moving() (True, True, False) stage.moving() (False, False, False) stage.get_positions() [0.0, 0.0, 0.0] stage.move_x_at_speed(5) stage.moving() (True, False, False) stage.get_positions() [76.4619375, 0.0, 0.0] stage.stop_x() stage.moving() (False, False, False) stage.get_positions() [94.38133984375, 0.0, 0.0] stage.move_y_relative(125) stage.moving() (False, True, False) stage.moving() (False, False, False) stage.get_positions() [94.38133984375, 124.99975, 0.0] stage.move_x_absolute(50) stage.move_y_absolute(75) stage.moving() (False, False, False) stage.store_x_position(0) stage.get_stored_x_position(0) 49.99980078125 stage.move_x_relative(50) stage.get_positions() [99.9996015625, 74.99994921875, 0.0] stage.move_to_stored_x_position(0) stage.get_positions() [49.99980078125, 74.99994921875, 0.0]