PIR SENSOR WITH ARDUINO ACTIVATE STEPPER MOTOR

16,965

48

12

Intro: PIR SENSOR WITH ARDUINO ACTIVATE STEPPER MOTOR

ACTIVATE STEPPER MOTOR USING MOTION SENSOR

Step 1: PIR WITH ARDUINO ACTIVATED STEPPER MOTOR

Hi this instactable to rotate stepper motor foreword and backward when pir read some motion.

Step 2: PART REQUIRE

1-ARDUINO UNO

2-PIR(HUMAN MOTION SENSOR)

3-L293D (MOTOR DRIVER)

4-UNI-POLAR STEPPER MOTOR(28BYJ-46)

5-SOME WIRES

Step 3: STEPPER AND PIR

Step 4: CODE

/*

Arduino with PIR motion sensor

activate camera motor projects

Writes by Engineer Mohanad Hameed */

#include //include stepper library int led = 13; // the pin that the LED is attached to

int sensor = 2; // the pin that the sensor is attached to

int state = LOW; // by default, no motion detected

int val = 0; // variable to store the sensor status (value)

int in1Pin = 12; //the pin that the phase 1 is attached to

int in2Pin = 11; //the pin that the phase 2 is attached to

int in3Pin = 10; //the pin that the phase 3 is attached to

int in4Pin = 9; //the pin that the phase 4 is attached to

int step_num =700;

Stepper motor(64, in1Pin, in2Pin, in3Pin, in4Pin);

void setup() {

pinMode(led, OUTPUT); // initialize LED as an output

pinMode(sensor, INPUT); // initialize sensor as an input

pinMode(in1Pin, OUTPUT); // initialize in1pin as an output

pinMode(in2Pin, OUTPUT); // initialize in2pin as an output

pinMode(in3Pin, OUTPUT); // initialize in3pin as an output

pinMode(in4Pin, OUTPUT); // initialize in4pin as an output

motor.setSpeed(300); //speed of the motor }

void loop(){

val = digitalRead(sensor); // read sensor value

if (val == HIGH) { // check if the sensor is HIGH

digitalWrite(led, HIGH); // turn LED ON

motor.step(step_num); //rotate the motor foreword

delay(1000); // delay 300 milliseconds

motor.step(-step_num); //rotate the motor backward

delay(300);

if (state == LOW)

{ state = HIGH; // update variable state to HIGH

}

}

else {

digitalWrite(led, LOW); // turn LED OFF

motor.step(0);

if (state == HIGH) {

state = LOW; // update variable state to LOW

}

}

}

Step 5: CIRCUIT

Share

    Recommendations

    • Audio Contest 2018

      Audio Contest 2018
    • Optics Contest

      Optics Contest
    • Electronics Tips & Tricks Challenge

      Electronics Tips & Tricks Challenge

    12 Discussions

    0
    None
    mohannadhtomatoskins

    Reply 3 years ago on Introduction

    OK.We can use it To control the camera So that the camera is moving toward the persons Or it can be used to open the door and so on .

    0
    None
    PsycheQ

    9 months ago

    CAN i get a right code?

    0
    None
    dancopy

    2 years ago

    Hello Friend!
    The code line 4 must be some mistake because it is showing the following: #include expects "FILENAME" or <FILENAME>
    Any tips? Thank you

    1 reply
    0
    None
    RameshB11dancopy

    Reply 9 months ago

    Hi

    Please see this line

    motor.setSpeed(300); //speed of the motor }

    there is flower bracket is diseble so enable the flower bracket code is working fine.

    0
    None
    AriffI1

    1 year ago

    if only 5V can motor move?

    0
    None
    MarcoO28

    2 years ago

    the code has some error, some solution

    0
    None
    JamesW139

    2 years ago

    error in code says that 'Stepper' does not name a type