Move a Stepper Motor to an Exact Position

by RonFrtek in Circuits > Arduino

3030 Views, 3 Favorites, 0 Comments

Move a Stepper Motor to an Exact Position

Move a stepper motor to an exact position

In this tutorial we will learn how to move a stepper motor for a certain amount of steps, and then with a push of a button repeat it again.
Watch the Video!

Also: Check out the Arduino Nano and Visuino: Control Stepper Motor Tutorial With Buttons made by Boian Mitov

What Will You Need

stepper.jpg
VisuinoAdvrtisementNewDesign1.jpg
FZEK4WBK3XGYAP0.LARGE.jpg
button module red 2-1000x1000.jpg
  • Stepper motor 28byj-48 & stepper motor driver board
  • Button module
  • Arduino or any other board
  • Visuino software: Download Visuino

The Circuit

2021-07-21_22-31-15.jpg

  • Connect Stepper Motor to Stepper Motor Driver
    Connect Arduino pin [5V] to Driver Board pin [VCC]
  • Connect Arduino pin [GND] to Driver Board pin [GND]
  • Connect Arduino digital pin [4] to Driver Board pin [IN1]
  • Connect Arduino digital pin [5] to Driver Board pin [IN2]
  • Connect Arduino digital pin [6] to Driver Board pin [IN3]
  • Connect Arduino digital pin [7] to Driver Board pin [IN4]
  • Connect Button module pin [Out] to Arduino digital pin [2]
  • Connect Arduino pin [5V] to Button module pin [VCC]
  • Connect Arduino pin [GND] to Button module pin [GND]

Start Visuino, and Select the Arduino UNO Board Type

FRWQB80K1RVKKV9.LARGE.jpg
F311FBVK5AHN5HJ.LARGE.jpg

The Visuino: https://www.visuino.eu also needs to be installed. Download Free version or register for a Free Trial.

Start Visuino as shown in the first picture Click on the "Tools" button on the Arduino component (Picture 1) in Visuino When the dialog appears, select "Arduino UNO" as shown on Picture 2

In Visuino Add & Set Components

2021-07-21_21-51-12.jpg
2021-07-21_21-50-53.jpg
2021-07-21_21-49-19.jpg
2021-07-21_21-48-52.jpg
2021-07-21_22-04-29.jpg
2021-07-21_22-00-28.jpg
  • Add "Debounce Button" component
  • Add "Pulse Generator" component
  • Add "Up/Down Counter" component
  • Add "4 Wire Stepper Motor" component


  • Select "PulseGenerator1" and in the properties window set Frequency to 100, this will be the speed of the motor, you can adjust the number if you want.
  • Select "UpDownCounter1" and in the properties window set Initial Value to 1000, this is the amount of the steps that the motor will do once you Turn "On" the Arduino.
    Set the Min > "Value" to 0 and "Roll Over" to False

    This means that the Counter will count down from 1000 to zero and once it reaches zero it will not roll over and start again.

In Visuino Connect Components

stepper-control.png
2021-07-21_21-53-36.jpg

  • Connect "PulseGenerator1" pin [Out] to "UpDownCounter1" pin [Down]
  • Connect "Button1" pin [Out] to "UpDownCounter1" pin [Reset]
  • Connect "UpDownCounter1" pin [Out] to "Stepper1" pin [In]
  • Connect "Stepper1" pin [0] to Arduino digital pin [4]
  • Connect "Stepper1" pin [1] to Arduino digital pin [5]
  • Connect "Stepper1" pin [2] to Arduino digital pin [6]
  • Connect "Stepper1" pin [3] to Arduino digital pin [7]
  • Connect Arduino Digital pin [2] to "Button1" pin [In]

Generate, Compile, and Upload the Arduino Code

FOQOHC1KLWB8FIX.jpg

In Visuino, at the bottom click on the "Build" Tab, make sure the correct port is selected, then click on the "Compile/Build and Upload" button.

Play

If you power the Arduino module, The motor will do 1000 steps and if you press a button it will do another 1000 steps.

Congratulations! You have completed your project with Visuino. Also attached is the Visuino project, that I created for this Instructable, you can download it and open it in Visuino: https://www.visuino.eu