motor running detection

I am looking at running a routine when a motor starts to rotate and wondering if anyone can tell me the best method of going about this. As the motor is not in the equipment at the moment so cannot get accurate measurements from it but is the paperfeed motor in a epson printer and is a dc motor running on PWM. As i dont know what the maximum motor voltage is at the moment but can be took into consideration when designing the interface which would be the best approach to just test when the motor starts would i need something like a optic isolator or something more simple ?
 

grim_reaper

Senior Member
For dead simple things, I would go with a hall effect sensor or other magnetic switch. Depending on the physical construction and arrangement of the motor, you should be able to detect a variance in magnetic field when it's moving as opposed to stationary. That covers your isolation as well.

I'm sure others can suggest more methods; if you can buffer/copy the PWM going to the motor, using PulseIn should give you a reading as well. Then there's plain mechanical - if you can attach something to the shaft of the motor to see if it's physically turning, etc.
 

Dippy

Moderator
"I am looking at running a routine when a motor starts to rotate..."
Do you mean detecting that a motor is being forced to rotate (by an external force) when not powered?

Or , effectively, a confirmation that your PWM power is actually rotating the motor?
 
I mean confirmation that the motor is receiving a pwm and rotating. The hall effect is a good approach but i do not have a lot of space for fitting a magnet and was hoping that there was some way to detect the pwm on the motor resulting in a logic level state that the motor has started like 1 running 0 stopped as i will have the motor connections close at hand
 

grim_reaper

Senior Member
Sorry, I didn't mean to suggest adding a magnet and sensor as a pair; I meant using ONLY a hall effect sensor to detect the movement of the magnet inside the motor. I've got some 'small transistor' sized HE sensors somewhere - you should be able to squeeze one in!

As I said before, I'm sure there are a few people on this forum who can suggest ways to electrically test for a PWM signal if that's the route you want to take.
 

Dippy

Moderator
I've been looking at a similar thing for stepper motors by checking pulse shapes.
The motor is a generator as well as a reactive load.
But the back-emf generation at tiny rpms is small and maybe swamped by reactive effects.

Unless you can actually get a rotational sensor in place I'd be tempted to 'scope the motor terminals to see if there is anything to work with.
Sensorless brushless DC drives use the generation (back EMF) method but are struggling at very low rpm.
Maybe you can get some guideance/inspiration from those articles and App Notes.

Or maybe someone has already solved it.
A suggestion like Grim-reaper's is maybe an easier thing to try.
 
thanks for the suggestions, i have just found a hall effect board that was left over from some other project it is one that came from china on ebay and has two output connections for DO and AO which are a digital output and direct sensor output. I just hooked it up and tried it and although it works and the DO output is high when the motor is stopped and goes low when running it is far to sensitive and switch when it is upto a meter away from the motor. This will not work as there are other motors in the vicinity which would probably also trigger the sensor so unless there is a way i can only detect the one motor (reduce sesitivity) it would not work
 

Circuit

Senior Member
I've been looking at a similar thing for stepper motors by checking pulse shapes.
The motor is a generator as well as a reactive load.
But the back-emf generation at tiny rpms is small and maybe swamped by reactive effects.
Dippy, just a quick thought... with a stepper motor you are energising coils in sequence. Is there not a tell-tale signal available on the unenergised coils that could be detected as the energised coils pull the armature around? If the armature fails to move, would not the signal be considerably different? - or is that what you are doing when you say that you are checking pulse shapes?
 

Dippy

Moderator
That's what I am sensing but it gets a little noisy in practice with PWM flying around.
Simple in theory, yes. Anyway, I don't to digress from thread.
 

grim_reaper

Senior Member
... and has two output connections for DO and AO which are a digital output and direct sensor output.
If the DO is too sensitive, have a look at the AO! That assumes you have a spare AI on your 'AXE of course. If you can get the sensor output as an analogue from 0 to 255 [ish] then maybe you can tune it in the software. And if the thing is extremely sensitive as you say, then you may even be able to estimate the PWM from the sensor feedback.

Without diagrams, specs, code, etc., it's up to you to experiment...
 
I did quickly check the AO signal and not really sure if i can get this to work on the one motor and not be triggered by the others which are not that far away as the voltage did not seem to vary enough at small distances. I will look into other ways of detecting to the motor running that are specific to the one motor thanks for the help
 

The bear

Senior Member
@wijnendael,
Sounds an interesting project, I, for one would like to know more about it.
Much more help will come your way, from experienced forum members,
if you can elaborate somewhat.
Looking forward to more info.

Regards, Bear..
 
The reason i wish to detect the motor when it starts is in order to operate a switch automatically. The topic is in conjunction with some other posts i have made regarding the building of a DTG printer although i have the printer nearly finished and it works as it should there are some mods need making in order for it to work more effectively. Because all the parts where removed from the original printer and re-fitted in different locations the timing of the PE switch when the paperfeed motor starts can be sometimes a little hit and miss. So i have decide to remove the mechanical switch and try to give the signal to the printer software via a output that will be timed via the start of the motor this i can then if required change the time interval between motor and switch via my picaxe project that will include a 4x4 keypad and oled display. So as you see really i need a reliable way to detect when the motor starts to turn (this has to be done on initial power up which i do now by watching for the motor to start and manually operating the switch) After the initial power up the switch will be held high until a proximity switch is operated at the end of the print and eject then it will return to the detection of the motor start.
 
Decided to take a slightly different approach to this problem with a slotted sensor. When the motor assembly is placed back on the printer it will rotate the paper feed shaft which has a encoder disc fitted, i could try and piggy back a signal from here but feel its best to leave it alone and add another sensor to watch the disc and then give me my logic state signal to say the motor is running. I have found something that will do i think on ebay found here http://www.ebay.co.uk/itm/121206154492?_trksid=p2060778.m1438.l2649&ssPageName=STRK%3AMEBIDX%3AIT
 

grim_reaper

Senior Member
That's a nice little module for £2.54! It's a shame there's no detailed photo of the sensor itself. The baffle between the tx/rx looks a bit small.
 
Top