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
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!
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.
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! 😊
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!
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.
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
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. 👍
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.
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 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.
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?
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?
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.
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?
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?
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. :)
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!
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
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.
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.
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
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
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 🙏🏼
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 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.
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!
@@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.
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.
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!
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 :(
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.
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!!
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 “}”
This guy says he’s not a programmer the same way teachers say their not an artist when drawing, love the content 👌🏻
Haha glad you liked it!
As a teacher, I feel so flattered!
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
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!
bro nothing is garbage, you are doing your best and that it's important.... keep moving forward!!!
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.
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! 😊
Awesomeness… love the way you printed out your code and explained.
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!
did the code work well?
@@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!
I'm a newbie to all this, your video is brilliant! Explains a lot, understandable and clear! Thank you!!!
Informative, and I like your style. Thanks.
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.
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
Thank you for this tutorial. Simple, to the point, amazing job :D!
Thanks, I just wanted to find a way to make the motor constantly rotate, forever and your code was the easiest one !
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. 👍
Thank you for the help!
exactly what i wanted ,thnx man
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.
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?
Torque is the issue ... not Force. So how far away from the axis of the stepper motor does this have to happen?
@@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.
i really enjoyed your video!!!
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?
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?
You can try but it will be quite low power if it works at all
Use external battery for 12v supply and single cable connection with Arduino board
thanks, I'm going to use this for an automatic dog feeder
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.
Thank you very helpful tutorial
Make a variable speed photogrammetry table?
have you done it yet?
@@jmakes3174 Me?
Yes and wrote a guide and posted it on hackster.io
I need a way to set up an app on my phone to be able to control a damper on my stove with temperature.
absolute life saver, thank you
I need a stepper faster than that. Is that as fast as it goes?
Once you use the arduino to write the code to the controller, can you unplug the arduino ?
No sir, the Arduino is constantly controlling the motor - the chip only turns the signals into a source strong enough to power the motor
@@SimpleElectronics Thankyou!
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?
dude i never saw code on paper before. wow
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?
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. :)
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!
What’s the load max for this ?
I really enjoyed your class, congratulations! I have a question what is the maximum speed of this engine?
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
I'm half-french, I can't talk without my hands
can i use it for my diy 3d printer?
When i turn on my stepper motor , it just vibrates bit the shaft doesnt rotate , does anybody experience the same issue ?
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.
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.
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.
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
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
depends on the load - when in doubt, just use an external supply
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 🙏🏼
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?
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
@@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.
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!
@@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.
@@ralphrego7470 Sounds good, I believe in you!
Hello, Why my stepper.h library not working? I tried accelstepper and it work just fine.
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.
How is it possible to rotate the motor 18degress each time the button is pressed? Thank you
Hi, can we use this without driver? If i just need to make something, rotate indefinitely
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!
@@SimpleElectronics Thank you so much
great video thx
thanks
i have a crap ton of ULN2003's now i know what to do with them
Idk if this is possible but how do I make it so the motor rotates slowly at 45°, and back when power is disconnected
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 :(
Ilove this guy, he is funny and informative!
Thank you!
Isn't that ic a Darlington pair
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.
Help my motor vibrates but doesn't spin
Is it hooked up fully? Are you sending the pulses too fast? try adding some delay.
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!!
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 “}”
lovely
mine gets incredibly hot when running at 12v
stepper SpinnyMcspinface = Stepper TFS, GB :)
"Oh, I made a mistake"
Well you have constantly warned people not to use the garbage code
Don't blindly use a mechanic's code, basically
It don't have to be pretty, just as long as it works.