The Cheapest Stepper Motor And How You Use It (28BYJ-48 & ULN2003 Arduino Tutorial!) (WITH CODE!)

Поділитися
Вставка
  • Опубліковано 14 січ 2025

КОМЕНТАРІ • 93

  • @parz7150
    @parz7150 2 роки тому +27

    This guy says he’s not a programmer the same way teachers say their not an artist when drawing, love the content 👌🏻

  • @glazedvc
    @glazedvc 2 роки тому +8

    I've been looking for so fucking long, a single code that allows me to reverse the stepper direcction and the "crappy" one is the only one that worked, thank you so much

  • @Brandon-qp7gq
    @Brandon-qp7gq 3 роки тому +7

    Thank you for explaining that both the arduino and stepper motor can be powered from the same 5V external source. I'm an electronics noob, and I just went through like 5 other videos to try to find out how to power both devices, and strangely enough no other video creator bothered to mention the power supply for the arduino. So thank you for clarifying!

  • @luigipasta9496
    @luigipasta9496 Рік тому +11

    bro nothing is garbage, you are doing your best and that it's important.... keep moving forward!!!

  • @GnuReligion
    @GnuReligion 3 роки тому +6

    Half-steps and acceleration are fun to play with. You can get the thing spinning faster than it ordinary can, with acceleration control.
    For 2 steppers, a ULN2803 has 8 outputs, so you can control two with 1 darlington array.

  • @peterknoll8906
    @peterknoll8906 10 місяців тому +1

    Nice video! I like the honest way of presentation.
    Yes. For that task, I would go with "attachInterrupt" to change direction whenever a button is pressed.
    Whatever happens in the main loop, the interrupt will execute. Even if the mainloop "stuck" in a delay function.
    Interrupts always have precedence.
    But as you mentioned: the code you shown is not perfect. I really like the honest way of your presentation.
    Your focus was on the very basic operation of the stepper and the code.
    Mission accomplished! 😊

  • @greaterthanbut
    @greaterthanbut 2 роки тому +1

    Awesomeness… love the way you printed out your code and explained.

  • @samwillard5688
    @samwillard5688 Рік тому +1

    These motors are common in microwaves, but in a 120 V version. They are very strong. Thanks for the code! Just getting started on Arduinos. Great work, your imagination is very impressive!

    • @AntonioRuelas-l6m
      @AntonioRuelas-l6m 8 місяців тому +1

      did the code work well?

    • @samwillard5688
      @samwillard5688 8 місяців тому

      @@AntonioRuelas-l6m I am still getting organized while i learn. I haven't had time just yet, but will let you know. Thanks for the follow up!

  • @britinrussia3687
    @britinrussia3687 9 місяців тому

    I'm a newbie to all this, your video is brilliant! Explains a lot, understandable and clear! Thank you!!!

  • @d.jensen5153
    @d.jensen5153 Місяць тому +1

    Informative, and I like your style. Thanks.

  • @car_ventures
    @car_ventures 3 місяці тому

    13:15 I'm curious if when the motor reaches the outer bound, the resistance seen by the motor changes (likely seen as a change in voltage e.g. voltage drop), if this location can have this moment logged, which it then uses as a stored value to change rotation. Effectively make it self learn it's outer bounds in both sides. Run it for a couple of cycles until it rotates fully without any resistance/voltage drop. This would also help the motor from doing too much extra work increasing is longevity.
    Could maybe program it to recheck those bounds every 100 cycles or so incase any tolerances have caused a change in position.

  • @hydrolisk1792
    @hydrolisk1792 7 місяців тому +1

    Thumbs up mate!!! Please expand your knowledge some more, you are doing a great job here. My suggestion on where to go next would be to learn about millis(). This is way better than using delays considering delays completely stop the code from running whilst a delay is in progress. Start with looking at the blink without delay code built in to the arduino IDE. This will help you later on when making more complex programs :P

  • @thecodingfox
    @thecodingfox 8 місяців тому

    Thank you for this tutorial. Simple, to the point, amazing job :D!

  • @fals3illusion
    @fals3illusion 9 місяців тому

    Thanks, I just wanted to find a way to make the motor constantly rotate, forever and your code was the easiest one !

  • @CDE.Hacker
    @CDE.Hacker 3 роки тому +1

    I can think of two things:
    First, kind of an art thing. Picture this, a 3X 5 canvas where there's two of those servos, one on each side kind of pretending to paddle a ping pong ball back and forth.
    The other idea, something practical. Like having a motion sensor trigger the servo to wave a flag. You know something fun. 👍

  • @PagedZero0
    @PagedZero0 2 роки тому +1

    Thank you for the help!

  • @abdfa4909
    @abdfa4909 5 місяців тому

    exactly what i wanted ,thnx man

  • @DannyMaes
    @DannyMaes 16 днів тому

    Hi, nothing is perfect the first time. The best way to learn is from your own errors. I like this video. I would try to replace these end-switches by (fast) light sensor. Which one would you use? Read analog input on Arduino / distinguish between light and dark level? Need to read ambient light level at start? Just some thoughts. This might be a challenge. Also, I prefer wood and screw instead of plastic and glue. Thank you.

  • @Luposian
    @Luposian Рік тому +1

    I have an application, where I need to apply 14oz of force (pull or push, I assume is the same diff) to trigger a switch. Can this stepper motor do that or do I need a different/better one? If so, any suggestions?

    • @davidbroadfoot1864
      @davidbroadfoot1864 Рік тому

      Torque is the issue ... not Force. So how far away from the axis of the stepper motor does this have to happen?

    • @Luposian
      @Luposian Рік тому

      @@davidbroadfoot1864 Assuming a small gear or pulley were attached to the spindle of this stepper motor and it was tied (with a string) to a 14oz weight (the stepper motor being fixed to a board or something), could it pull hard enough to reel in that 14oz weight? I assume a 14oz weight is 14oz, regardless if it's parallel to the stepper motor or on the floor, etc.

  • @saminpourrefaie3922
    @saminpourrefaie3922 Рік тому +1

    i really enjoyed your video!!!

  • @goesintite
    @goesintite 2 роки тому +1

    Maybe make a practical application for this. Is this viable for RC projects? Like, servos run rutters, steering, etc, maybe this and the code you made will make something run semi-autonomous?

  • @syuhadanabilah3902
    @syuhadanabilah3902 2 роки тому +4

    Hi, I have 12V stepper motor. I'm new about this so when the staff asked me if I want to buy 5V or 12V..I bought 12V. Can I connect the 12 V stepper motor to 5V power supply on Arduino Mega?

    • @SimpleElectronics
      @SimpleElectronics  2 роки тому +3

      You can try but it will be quite low power if it works at all

    • @sumitjangra9793
      @sumitjangra9793 6 місяців тому

      Use external battery for 12v supply and single cable connection with Arduino board

  • @rmilo
    @rmilo 2 роки тому +5

    thanks, I'm going to use this for an automatic dog feeder

    • @d.jensen5153
      @d.jensen5153 Місяць тому

      Yes. Did something like that for my cats to cancel neighborhood marauders. Each cat had a tiny tuned circuit pendant on their collar. A coil near the feeder was part of a dip meter. Cat gets near. Resonance is detected. Food door opens.

  • @johnperry9357
    @johnperry9357 2 роки тому +1

    Thank you very helpful tutorial

  • @AJB2K3
    @AJB2K3 3 роки тому +2

    Make a variable speed photogrammetry table?

    • @jmakes3174
      @jmakes3174 2 роки тому

      have you done it yet?

    • @AJB2K3
      @AJB2K3 2 роки тому +1

      @@jmakes3174 Me?
      Yes and wrote a guide and posted it on hackster.io

  • @leesmith9942
    @leesmith9942 2 дні тому

    I need a way to set up an app on my phone to be able to control a damper on my stove with temperature.

  • @klodilimani
    @klodilimani Рік тому

    absolute life saver, thank you

  • @NitroVipers3
    @NitroVipers3 Рік тому

    I need a stepper faster than that. Is that as fast as it goes?

  • @oldm8alfie
    @oldm8alfie Рік тому +1

    Once you use the arduino to write the code to the controller, can you unplug the arduino ?

    • @SimpleElectronics
      @SimpleElectronics  Рік тому +2

      No sir, the Arduino is constantly controlling the motor - the chip only turns the signals into a source strong enough to power the motor

    • @oldm8alfie
      @oldm8alfie Рік тому

      @@SimpleElectronics Thankyou!

  • @rgbcrafts
    @rgbcrafts 9 місяців тому

    5:10 So, if I need only it spinning on the lower speed in a constant motion, do I have to use an Arduino? All I need is it spinning in the lowest speed possible for my project. Other motors (DC motors) are way to loud and stepper motors are really quiet in comparison. Would it suffice only using the ULN2003 and the stepper motor? Maybe a turn on/off button maybe?

  • @Alice8000
    @Alice8000 5 місяців тому +3

    dude i never saw code on paper before. wow

  • @britinrussia3687
    @britinrussia3687 9 місяців тому

    How about a switches on the end of the stick, one on each side, if you could measure the time between each switch activation, it would work like a white stick for a blind person, on a mobile base his could find its way through an obstacle course.... A mechanical radar...
    What do you think?

  • @EddieFox
    @EddieFox Рік тому +1

    Wow. Awesone. Exactly what I need for blinking on robot eyes. I'm a year on, but as an arduino dunce (I can tweak but not write) could you pretty please nicely write a code that will blink eyes, a little faster and with say, 10 seconds intervals once switch activated to run permanently until deactivated? Well, you kindly offered. Btw I think your clip is brilliant. Even a simpleton like me can grasp it. I've brought you a choc orange just for the video, great. Don't worry if its a problem to write code. Cheers. :)

    • @SimpleElectronics
      @SimpleElectronics  Рік тому +1

      I am glad you liked the video but I am not in any shape to be taking on commissions at this time! check out the Arduino forums and reddit for some help! Make sure you give it your best shot before posting your code over there for help - but I am confident you can get it done - good luck!

  • @alexgrant8851
    @alexgrant8851 26 днів тому

    What’s the load max for this ?

  • @wandersonsilva-fx1cs
    @wandersonsilva-fx1cs Рік тому

    I really enjoyed your class, congratulations! I have a question what is the maximum speed of this engine?

  • @johnrc1647
    @johnrc1647 3 роки тому +2

    Great video with clear explanations. I'll have to probe my XYL for Holiday decoration ideas. One suggestion -- Please find a place to rest your hands.
    extraham

  • @brajarajsaha5955
    @brajarajsaha5955 8 місяців тому

    can i use it for my diy 3d printer?

  • @nevin6571
    @nevin6571 Рік тому +1

    When i turn on my stepper motor , it just vibrates bit the shaft doesnt rotate , does anybody experience the same issue ?

    • @DancerVlt69
      @DancerVlt69 Рік тому +1

      What you should do is check
      * the connections -> PIN 1/2/3/4 of the ULN-Board must go to PIN 8/9/10/11 on the Arduino
      * the code (6:05) -> the order of the pins is important -> Stepper stepperName = Stepper(stepsPerRev, 8, 10, 9, 11);
      * the value of the speed -> stepperName.setSpeed(15) - in my test/case a value higher than 15 let the motor losing steps
      if are all correct and the motor doesn't work correctly, check the power for the motor. The motor (I've got today) has a consumption of 330mA at 3 to 7 volts. In my case I've connected the motor to a 9V block-batterie.

  • @NealeOxley
    @NealeOxley 2 місяці тому

    I wish to use a stepper motor to brush spiderwebs away from the lenses of my video surveillance cameras. Maybe a very light soft brittle brush directly wiping across the lens and a light 45 degree arm to wipe the abseiling spiders further out from the camera by a foot. I have to use a long stick and paint brush regularly and 10 minutes later the spider is back like a ninja.

    • @NilfNilf1972
      @NilfNilf1972 Місяць тому

      Try a servo motor, it’s even easier to control, and you can set it to desired (absolute) positions, which a stepper can’t do.

  • @ememeable
    @ememeable 3 місяці тому

    Beautiful Programming
    I remember my humble beginnings
    I now laugh at how resourceful the mind can be with limited programming knowledge
    Every 2yrs and as we advanced the past seems ever so comical
    I now use pic mcu's however I still appreciate arduino my humble beginning
    I hope to find other uses for rid switches so that they still remain relevant and keep some people employed
    This is the ethics behind programming and advancements
    I try to promote good standard of living and not redundancies as I was once made redundant
    Sincerely
    Mr Ejike Ememe

  • @onizuka2687
    @onizuka2687 10 місяців тому +1

    I have 2 of these motors and I want to control them using the Arduino uno and a gyroscope mpu6050 , do I need an external power supply to power them or cable connected to the PC and 5v from Arduino should be fine ? Please answer

    • @SimpleElectronics
      @SimpleElectronics  10 місяців тому

      depends on the load - when in doubt, just use an external supply

  • @astro_aviral
    @astro_aviral 6 місяців тому

    How can i change the direction of the steeper Motor in the first example , I am making a star tracker but I want to reverse the direction of rotation 🙏🏼

  • @ralphrego7470
    @ralphrego7470 2 роки тому +1

    Hi, what I am looking for is my stepper motor to start with a switch running clockwise and stop after about 5 full 360 turns, for an indefinite period of time, then it will reverse when the switch is turned off back to it original position. Could you help me?

    • @SimpleElectronics
      @SimpleElectronics  2 роки тому +1

      Sure, which part of your code isn't working? You can email me what you have so far and what it is doing and I'll have a look

    • @ralphrego7470
      @ralphrego7470 2 роки тому +1

      @@SimpleElectronics I don't have any code as I have never done anything like this in my 63 years on planet earth. Totally new to this stepper motor stuff.

    • @SimpleElectronics
      @SimpleElectronics  2 роки тому +2

      Ah well, surely you understand that I can't really build projects for everyone who asks me to, but that's why I make these videos, to empower you to build your own projects! I think the information in this video will get you pretty much exactly where you need to go!

    • @ralphrego7470
      @ralphrego7470 2 роки тому +1

      @@SimpleElectronics I do understand, all I asking for is to write a code that will allow the stepper motor to turn clockwise 5 turns when I switch it on and then stop. Then when I turn it off it should turn counter clockwise 5 turns and stop. Then if I do run into trouble I will turn to you for guidance, if it is ok with you.

    • @SimpleElectronics
      @SimpleElectronics  2 роки тому +1

      @@ralphrego7470 Sounds good, I believe in you!

  • @floroubaldo9403
    @floroubaldo9403 Рік тому

    Hello, Why my stepper.h library not working? I tried accelstepper and it work just fine.

  • @bob-ny6kn
    @bob-ny6kn 2 роки тому +3

    Once you get your code working, the next step is to challenge yourself to make your code textually less repetitious. Rather than two functions to tell the stepper backward and forward, write one function and pass the "backward" or "forward" direction to it. It's been a year, so you might have moved on.

  • @xrphobby1341
    @xrphobby1341 8 місяців тому

    How is it possible to rotate the motor 18degress each time the button is pressed? Thank you

  • @hardwark.official
    @hardwark.official 4 місяці тому

    Hi, can we use this without driver? If i just need to make something, rotate indefinitely

    • @SimpleElectronics
      @SimpleElectronics  4 місяці тому +1

      No you can't - but to just make something spin indefinitely, just get a regular DC motor - you can adjust the voltage or the current to control the speed - set it and forget it!

    • @hardwark.official
      @hardwark.official 4 місяці тому

      @@SimpleElectronics Thank you so much

  • @nobbynose4254
    @nobbynose4254 10 місяців тому

    great video thx

  • @damrus312
    @damrus312 Місяць тому

    thanks

  • @tamtgirl
    @tamtgirl 3 роки тому +1

    i have a crap ton of ULN2003's now i know what to do with them

  • @jhebertdelacruz5437
    @jhebertdelacruz5437 3 місяці тому

    Idk if this is possible but how do I make it so the motor rotates slowly at 45°, and back when power is disconnected

  • @metallicaandchimaira
    @metallicaandchimaira 2 роки тому

    For this motor do you HAVE to have it connected to an arduino? I have a motor speed control circuit and have it connected from the power to that. Then I am running the connections to the stepper motor board and it wont turn on :(

  • @wonderwang1585
    @wonderwang1585 2 роки тому

    Ilove this guy, he is funny and informative!

  • @ChickenPermissionOG
    @ChickenPermissionOG Рік тому

    Isn't that ic a Darlington pair

  • @tillytony
    @tillytony Рік тому

    I have just come acroos your channel so havnt had a proper look. But if you havnt, could you do a tutorial om how to automticly have the motor speed up to x speed for x time and then slow down to a stop using a push button. Could you also show how to code a button press to slow and then stop the motor even if it hasnt got to full speed. I make funfair models for a hobby (I have videos on my channel) And my next project requires one button to start and stop the model.

  • @braylenhammond12
    @braylenhammond12 2 роки тому +1

    Help my motor vibrates but doesn't spin

    • @SimpleElectronics
      @SimpleElectronics  2 роки тому +2

      Is it hooked up fully? Are you sending the pulses too fast? try adding some delay.

  • @BruceEarly
    @BruceEarly 8 місяців тому

    Ok, newbe here!! My problem is everytime I compile the code it errors. It says "compilation error: expected '}' at end of input. Last of the code is ..... stepperName.step(stepsPerRevolution / 4);
    delay(50);
    buttonPressed = true;
    } What is wrong with this? By the way love your videos!!

    • @itsvaporx9633
      @itsvaporx9633 3 місяці тому

      well i’m not a programmer but a have little background. you have a syntax error and it expected another “}” somewhere. it depends on the rest of the code previous. but somewhere in there, there is a opened bracket that you haven’t closed with the “}”

  • @peterbenbow3932
    @peterbenbow3932 6 місяців тому +1

    lovely

  • @M4CHINE69
    @M4CHINE69 Рік тому

    mine gets incredibly hot when running at 12v

  • @graemebrumfitt6668
    @graemebrumfitt6668 3 місяці тому

    stepper SpinnyMcspinface = Stepper TFS, GB :)

  • @AJB2K3
    @AJB2K3 3 роки тому +1

    "Oh, I made a mistake"
    Well you have constantly warned people not to use the garbage code

  • @LordRichard987
    @LordRichard987 Рік тому +1

    It don't have to be pretty, just as long as it works.