Skip to content

Connecting to APT Stepper Motor Control Module by Thorlabs in Python

Instrument Card

The APT™ MST602 module is a dual-channel, high-resolution, rack-mounted stepper motor driver designed for use with the APT MMR601 Motion Control 19” Modular Rack System. It has been designed to drive 2-phase bi-polar stepper motors up to 50 W, with or without encoder feedback, and is compatible with the full range of stepper-motor-equipped nanopositioning actuators and stages offered by Thorlabs. Alternatively, it is also compatible with any generic two-phase bi-polar motor of varying powers and varying cardinal step sizes.

Device Specification: here

Manufacturer card: THORLABS

Thorlabs, Inc. is an American privately held optical equipment company headquartered in Newton, New Jersey. The company was founded in 1989 by Alex Cable, who serves as its current president and CEO. As of 2018, Thorlabs has annual sales of approximately $500 million.

  • Headquarters: USA
  • Yearly Revenue (millions, USD): 550
  • Vendor Website: here

Demo: Send commands to a Polulu stepper motor driver

Connect to the APT Stepper Motor Control Module in Python

PROTOCOLS > SCPI

To connect to an APT Stepper Motor Control Module Positional Controller using Instrumentkit, you can use the following code:

import instrumentkit as ik
# Connect to the APT Stepper Motor Control Module Positional Controller
controller = ik.thorlabs.APTMotorController.open_serial("/dev/ttyUSB0", baud=115200)
# Get the first channel of the controller
channel = controller.channel[0]
# Set the motor model for the channel
channel.motor_model = "PRM1-Z8"
# Move the motor to a specific position
channel.move(1000) # Move to position 1000 (encoder counts)
# Get the current position of the motor
position = channel.position
print(f"Current position: {position}")

This code connects to the APT Stepper Motor Control Module Positional Controller using the open_serial method, specifying the serial port and baud rate. It then gets the first channel of the controller and sets the motor model to “PRM1-Z8”. Finally, it moves the motor to position 1000 and retrieves the current position of the motor.