Selecting a motor and drive for an automation project

Cool. Just hope the chickens aren’t coming.

Many thanks to David for last week’s very informative discussion of his highly innovative and flexible mini-modular clixx_io system.

It would be good to have a command (double-press?) so that the door can be frozen at its current position.

For the mechanics of my sliding-door opener, I will try a standard curtain track, even if it needs some reinforcement to withstand the forces: it has a pulley at each end, and rope enclosed within the track (which will need to be cut and tensioned - maybe with an idler wheel as on a car’s fan-belt) . The rope would wind once or twice round the drive-shaft, or around a pulley on it).

Hi Michael,

Sounds like a good idea. I’ll come back next wednesday and we can keep going on it.

What are the dimensions of that bigger motor?? I guess it will fit easily
in a space of about 100mm between window and curtain. btw, you will have
noticed that curtain-control may be a very popular application, quite apart
from sliding doors.

Two buttons are needed - one inside, one out. Are there spare pins or
solderable-points?

An alternative to buttons, or maybe an extra, may be detecting
interruption of light-path near the door, as in entry-alert devices. That
may conflict with the double-click idea for arresting the motor. The
light-path would need to be a plane over the full 1500mm or so of the door,
so that at least foot, hand or head is detected. An audible beep would be
wise too - the screen door can be invisible, people do sometimes try to
walk through it. Very hard on the nerves, the head, and especially on the
screen door. (Are we re-inventing the logic here??)

I will be there Weds.

@PaulG will you open?? One does need to check :slight_smile:

@Michael and @clixx_io - I can open the Space tomorrow evening from 6.30 to around 8.30. Please let me know if you cancel.

Paul: I can’t make it tomorow night.

Michael: Not sure. They are not so big from memory 10x6x3cm

I can come back wed 22nd.

@PaulG - I won’t come since clixx is not able to be there.

Thanks @Michael and @clixx_io. I won’t open tonight unless there are others wanting to hack.

Paul, can you open for the 22nd? Who can put it in the calendar?

@Michael - yes, and I have entered it in the Calendar. :slight_smile:

1 Like

The type of motor that I was suggesting is here. It’s an automotive window regulator. (Sadly the engine in this isn’t working - maybe it can be fixed - it was in the throwout bin at a friends business).

The good thing about it is that it drives a cable in a push/pull arrangement. Which could easily be adapted to a sliding door.

Here’s a link to a (new) (cheap-chinese) (maybe-3-uses-only) one: http://www.aliexpress.com/item/Universal-power-window-motor-for-auto-electric-window-regulator-EQ153-motor-Free-Post/2018648292.html

As OP have mentioned, Oatley-Electronics also have suitable parts.

I will bring the one that I have along on wednesday anyway. I’m sure we will get something working.

“Here’s a link to a (new) (cheap-chinese) (maybe-3-uses-only) one.” … well it expired before it was linked?! :smile:

Yes, car window motor is a clever option. Inconveniently - there are no car-wreckers nearby.

I will bring a curtain-rail for

Two buttons are needed - one inside, one out. Are there spare pins or solderable-points?

Always :slight_smile:

An alternative to buttons, or maybe an extra, may be detecting interruption of light-path near the door, as in entry-alert devices. That may conflict with the double-click idea for arresting the motor. The light-path would need to be a plane over the full 1500mm or so of the door, so that at least foot, hand or head is detected. An audible beep would be wise too - the screen door can be invisible, people do sometimes try to walk through it. Very hard on the nerves, the head, and especially on the screen door. (Are we re-inventing the logic here??)

I will bring some PIR movement sensors tonight. I think they would be what you want.

I will be there Weds.

Same. Seeya’s tonight.

Update on my project to automate a very heavy (double-glazed) sliding-door. I found a car nicely nearby, kept for parts by the owners. So I have a nice free shiny automotive window regulator now, with three more there if this works out. It is worm-drive, may not open the door fast enough without modification.

Another option is a battery drill. Noisy and large, and less convenient, but good torque.

I need to decide on mechanics and then move to the logic and safety issues.

I’ve been slowly writing a function to control the motor using software PWM (Pulse Width Modulation).

None of the functions that I could find would allow me to turn on a motor for a percentage of power for a given number of seconds+1/10ths of a second so I wrote something myself that hopefully can make it easier to control.

Anybody know a good way to insert debug/test hooks in the code?

/**********************************************************************
 * PWM write to a GPIO Pin
 * 
 * This is software PWM function that oscilates a pin at a particular
 * percentage value for a time measured in 1/10ths of a second.
 *
 * @param onpercentage - A value between 0 - 100 representing the number
 *                       of on cycles in 100 for the pin to pulse. A
 *                       value of 10 will give a 10% duty cycle.
 * 
 * @param seconds     - number of seconds for the function to run
 * @param deciseconds - number of 1/10th second units to run.
 *
 **********************************************************************/  
void clixxIOGPIOPin::pwmWrite(short onpercentage,int seconds, int deciseconds)
{
    const short skip_marks = (100 / onpercentage) - 1;
    
    unsigned long ds = (seconds * 10) + deciseconds;
    
    for (unsigned long dc = 0; dc < ds; dc++)
    {
        short e=skip_marks;
        
        for (short d=0; d<100; d++)
        {
            
            this->digitalWrite(true);
            
            delay_ms(1);
            
            if (e > 0)
            {
                if (e-- != 0)
                {
                    this->digitalWrite(false);
                }
                
                delay_ms(1);
                
            } else
            {
                e = skip_marks;
            }
            
        }
        
    }

}

The main reason is that you might want to start the motor at 30% for 1 second, increase the speed to 60% for three seconds and then slow right down at the end to 10% for the last two seconds.

fwdpin.pwmwrite(30,1,0);
fwdpin.pwmwrite(60,3,0);
fwdpin.pwmwrite(10,2,0);
1 Like

I am negotiating a proverbial bump in the road, having forgotten that, because the wire rope to open/shut my sliding door would need several turns around shaft, to gain traction for accelerating the rather heavy door, the rope has a helical path on its drive shaft, and moves back and forth on the shaft as door opens / closes. Thus the car window mechanics is not suitable, as it cannot be adapted for a 1200mm movement of the door, being set up for the 450-or-so mm span of a car window at most. Maybe I print a drive-pulley for the Toyota window gear, about 80mm diam. Is it feasible to print it with a helical groove with pitch of 1.7mm and depth 1mm or so on the pulley? A drill may be a more suitable motor, including the chuck, it has a slip-mechanism that would be useful as a safety feature. I will come tomorrow anyway.

Hi Micheal,

btw, Here’s a picture I found of a commercial unit that uses rubber-timimg-belts as a mechanism.

I found a candidate for the rubber-timing belt on an asian website: http://www.aliexpress.com/item/free-shipping-10meters-GT2-Rubber-Timing-Belt-6mm-width-10m-length/1487697793.html

See you tonight.

EDIT: 6mm probably won’t be wide/strong enough.

I suggest going to 15mm or more:

Belt: - http://www.aliexpress.com/item/Free-Shipping-Arc-teeth-Industrial-PU-Open-Ended-Timing-Belt-HTD3M-15mm-10m-lot-Wholesale/843592066.html

Pulleys: http://www.aliexpress.com/item/20-teeth-HTD3M-timing-pulley-8mm-bore-15mm-width-belt-10pcs-pack/1688753786.html