Version 3 has been released!

{STEPPER} command

Tells a stepper motor to perform some action. Movements can be defined in degrees or actual steps.

Syntax

{STEPPER} ch action ␑ param1 ␒ param2  param3  param4 

  • ch - The channel of the stepper motor
  • action - One of the following
    • OFF - Turn all the motor coils off (reduces power used)
    • RESET - Stop the motor and reset the 0° position to the current position, and turn off the coils.
    • STOP - Stop the motor in its current position. 
    • MOVE Move the motor a number of degrees/steps relative to the current position.
      • param1 - the number of degrees/steps to turn. Negative values will turn counter clockwise. The value can be larger than a full revolution.
      • param2 - the units of movement specified by param1
        • D = Degrees (default)
        • S = Steps
        • R = Revolutions
    • GOTO - Move the motor to a specific position.
      • param1 - the position to turn to
      • param2 - the units of position specified by param1
        • D = Degrees (default)
        • S = Steps
      • param3 - the direction to use, where:
        • -1 means counter clockwise
        • 0 means using the shortest path (default)
        • 1 means clockwise
    • SPEED - Set the speed of movements of the stepper motor.
      • param1 - the number of units of rotation per hour to turn.
      • param2 - the units of movement specified by param1
        • D = Degrees (default)
        • S = Steps (not yet implemented)
Example values:
15 degrees = 1 revolution per day
360 degrees = 1 revolution per hour
21600 degrees = 1 revolution per minute (60 * 360)
    • TURN - Start turning without any end point defined. The direction to use is:
      • param1 - the direction to use, where:
        • -1 means counter clockwise
        • 1 means clockwise
  • param1-4 - Data values as described for each action above. Parameters are separated by DC2 characters 
Notes
  • There is no positioning feedback data from stepper motors. When RemoteSign ESP starts up it has no way of knowing the position of a connected stepper motor. It assumes that the motor starts off at 0° You can position the motor's zero point using script lines like this in RemoteSign Sequencer


  • Commands take immediate effect. For example, if you want to move the motor 30° then move back -30° again, the second MOVE command should only be sent when the first movement is complete. The time delay can be calculated based on the speed. If the speed is 21600°/h (1 RPM) then the time to move 30° is 30/(360*60) = 5 seconds.
  • The accuracy of positioning depends on the stepper motor. For example, the common 28BY-48 has a resolution of 5.66111 steps per degree making it impossible to turn exact number of degrees. If you want to use exact and repeatable movements on such motors, make movements based on motor steps rather than degrees.

See also: {DCH}

Overview and list of all RemoteSign commands: API reference

Supported by:
RemoteSign Sequencer 3.10
RemoteSign ESP 3.7