# Detecting an external resistance on a motor

#### mvoltin

Joined Dec 18, 2015
4
We are building a very cool project for school (x-wing fighter) with functional cockpit canopy that opens and closes by linear actuator (Arduino, relay, limit switches, etc.). We cannot figure out an efficient way to detect resistance/obstruction while the canopy is closing but before it reaches the limit switch (i.e. kids hand or leg is in the way). the actuator can impose 250lbs force and definitely do not want a child getting squashed in there.

All automatic trunks for vans have this feature - door stops as soon as it detects an extra resistance. One guess is that it detects when motor starts drawing too much current? If this is correct, then how would it define what is "normal" vs. "abnormal" current draw since a motor naturally would draw much more current when the door is horizontal (extended) as opposed to vertical (close to being closed)?

Or is there another way an external resistance is detected? Any guidance on where to start will be appreciated. Thanks in advance,
Mike

#### MikeML

Joined Oct 2, 2009
5,444
You would have to record the motor current during its entire trajectory, for both directions of travel. Detection of obstructions requires comparing today's current vs position (or current vs time) to a previously recorded baseline.

I have an Arduino-controlled linear actuator moving a 12' drive-through swing gate. I am controlling the rate of acceleration, de-acceleration and detecting obstructions. The gate pivot axis is not perfectly vertical, so current required to open the gate is different to closing it. If the wind is blowing, that adds/subtracts from the current profile... An obstruction, like a car bumper causes a huge increase in current. I think you will look for subtle differences...

#### mvoltin

Joined Dec 18, 2015
4
You would have to record the motor current during its entire trajectory, for both directions of travel. Detection of obstructions requires comparing today's current vs position (or current vs time) to a previously recorded baseline.

I have an Arduino-controlled linear actuator moving a 12' drive-through swing gate. I am controlling the rate of acceleration, de-acceleration and detecting obstructions. The gate pivot axis is not perfectly vertical, so current required to open the gate is different to closing it. If the wind is blowing, that adds/subtracts from the current profile... An obstruction, like a car bumper causes a huge increase in current. I think you will look for subtle differences...
Hi Mike,
Thank you so much, this helps. I am relatively newbie and any additional guidance would help: what the circuit will look like or components for detecting the current may be (it will be 12V and probably could not use Arduino directly).

#### MikeML

Joined Oct 2, 2009
5,444

#### #12

Joined Nov 30, 2010
18,223
I'm probably just spitting into the wind here but,
Garage doors use a light beam.
You could also fashion a, "drop bar" across the bottom edge of the upper part so it detects any blockage.
These methods are basically impossible to cover every possible angle of human stupidity, but they might make a good secondary system.
It is my opinion that anything which can exert 250 pounds of force should not be where random people can get in the way. If you can't do that, use redundant safetys. Perhaps use gravity for most of the closing force? A force limiting clutch? (Now I'm guessing.)
This brings the idea of the, "both buttons" method of keeping people away from huge stamping machines. Force the visitor to hold a button with each hand or the door motor won't work. Then they will try to stick their head or leg in the opening.

The first suggestion by MikeML was basically, "Gather the data". You can't program your way out of everything just because computing power is cheap. Sometimes you have to actually measure something. In this case, you might even have to provide an escort to be sure...Wrong. you can't be sure of anything when the random public is allowed access, but you can make it less random if a person is always present to supervise the visitors. How much risk are you willing to take? How much are you willing to per per finger?