In this tutorial, I’m going to show you how to automate an ordinary curtain using a stepper motor and an Arduino. This tutorial can be implemented on any curtain that opens and closes using the rope mechanism; however, you’re free to implement it on any other type.
The project’s total cost was around $20 at the time of purchase; however, since many items are bought from AliExpress, prices can fluctuate.
There are two methods of going about this project. Method 1 is the single button that is built on the video. This method uses a single button so every push goes in the inverse of the previous; thus, it may not recognise the actual state of the curtain (opened or closed); so, it requires the Arduino to be powered all day.
Method 2: has two buttons, one to open and the other to close. This method doesn’t require the Arduino to be turned on as it doesn’t have to know its state to operate. Regardless of which method you go for, the Arduino still doesn’t know how far the curtain moved and whether it got stuck or whatever really as there is no sensing mechanism to help identify the state of the curtain as feedback to the Arduino.
With that said, you need to calibrate the stepper by adjusting the speed and number of rotations to what works on your curtain according to its length.
*The circuits of both methods may be slightly different from the actual project in terms of components; so, you may watch the video to get a clear idea of the build.
** The pull-down resistors used are 10k ohms, not 220 ohms.