Stepper Motor - OS-MPI/MPS GitHub Wiki

Stepper motor

We are using stepper motors for two different applications: winding Rx coils to ensure the right number of turns and secondly, moving the sample holder to for precise positioning of the sample during acquisition. The basic stepper motor assembly is the same for both applications. While there are many different stepper motors available, we chose to use the Mercury Motor 42BYG011-25 because our minimal torque requirement and its low cost and availability. In addition to the motor, a driver board is necessary to convert the control signals to the driving power required by the motor. Like the motor, there are numerous options and we employ the Big Easy Driver v1.2 also due to its price and availability. A guide such as this one can be helpful to assemble everything

To assembly the motor and driver we hard-wired the following pins:

  • MS1, MS2, and MS3 of the board to ground to perform full steps (1.8 degrees, 200 steps per revolution).
  • Reset to be high otherwise the board ignores commands
  • Sleep to be high otherwise the board ignores commands

The following pins are inputs:

  • Step Any rise or fall results in a 1.8 deg step with full-step mode
  • Enable To prevent overheating, and reduce electrical noise, we disable the outputs by sending a high logic signal to this pin during measurements
  • Direction Determines rotation direction

Once the board is ready and connected to the motor, a power supply is needed. We are using a 12V AC/DC converter, but there are several other options. To control the driver, we utilize an Arduino (Uno/Micro, etc) due to its ease of use and the affordability of these boards, but other options are available such as Raspberry Pi’s or NI-DAQ boards with sufficient channels work equally well. These are our selected pin connections: GND, D2 → STEP, D3 → ENABLE(see Figure 1). After connecting and assembling all parts as in Figure 2. The signal to the motor is a square wave with each rise or fall resulting in a 1.8° step, thus the angular speed is determined by the square wave frequency, and the duration determines the angular distance.