Lesson 32 Controlling Stepper Motor WithRemote

//www.elegoo.com
//2016.12.12

include “Stepper.h”

include “IRremote.h”

/—– Variables, Pins —–/

define STEPS 32 // Number of steps per revolution of Internal shaft

int Steps2Take; // 2048 = 1 Revolution
int receiver = 12; // Signal Pin of IR receiver to Arduino Digital Pin 6

/—–( Declare objects )—–/
// Setup of proper sequencing for Motor Driver Pins
// In1, In2, In3, In4 in the sequence 1-3-2-4

Stepper small_stepper(STEPS, 8, 10, 9, 11);
IRrecv irrecv(receiver); // create instance of ‘irrecv’
decode_results results; // create instance of ‘decode_results’

void setup()
{
irrecv.enableIRIn(); // Start the receiver
}

void loop()
{
if (irrecv.decode(&results)) // have we received an IR signal?

{
switch(results.value)

{

  case 0xFFA857: // VOL+ button pressed
                  small_stepper.setSpeed(500); //Max seems to be 500
                  Steps2Take  =  2048;  // Rotate CW
                  small_stepper.step(Steps2Take);
                  delay(2000); 
                  break;

  case 0xFF629D: // VOL- button pressed
                  small_stepper.setSpeed(500);
                  Steps2Take  =  -2048;  // Rotate CCW
                  small_stepper.step(Steps2Take);
                  delay(2000); 
                  break;

}

  irrecv.resume(); // receive the next value
             digitalWrite(8, LOW);
             digitalWrite(9, LOW);
             digitalWrite(10, LOW);
             digitalWrite(11, LOW);       

}

}/* –end main loop — */

Leave a comment