Welcome! Log In Create A New Profile

Advanced

Mechanical Endstop wiki page

Posted by Nudel 
Mechanical Endstop wiki page
October 19, 2010 09:55AM
So, I'm having problems with the endstop flags, and instead of replacing my taped-up beer can version with proper flags, I've decided to go the mechanical switch route.

I put up a wiki page here: http://reprap.org/wiki/Mechanical_Endstop

But there are a few thing I'm a little unsure about. As far as I can see you'd only need a basic single pole single throw (SPST) switch and a pull down resistor. But if you have a single pole double throw (SPDT) switch, would the pull down resistor still be needed? On the microswitches I have there is a tiny delay when you trigger the switch, so I'd guess the pull down resistor is still needed for a stable signal. But is it best practice to it as a single throw switch, or to take advantage of the double throw mechanism as well?

This is a fast proposal for the wiring, is it correct?

Edit: No, it's not. Nothing to see here, move along.

Edited 1 time(s). Last edit at 10/25/2010 09:09AM by Nudel.


--
-Nudel
Blog with RepRap Comic
Attachments:
open | download - mechanical_endstop_wiring_draft1.png (25.6 KB)
Re: Mechanical Endstop wiki page
October 20, 2010 05:10AM
This is a fast proposal for the wiring, is it correct?

Nudel, you're a developer - try reprap-dev. smileys with beer


-Sebastien, RepRap.org library gnome.

Remember, you're all RepRap developers (once you've joined the super-secret developer mailing list), and the wiki, RepRap.org, [reprap.org] is for everyone and everything! grinning smiley
Re: Mechanical Endstop wiki page
October 20, 2010 06:25AM
It is traditional to use a pull up resistor and wire the switch to ground. That way you are bussing ground around the machine rather than 5V, safer and better for noise immunity. It also matches the polarity of normal opto switches. I.e. goes high when the switch is activated.


[www.hydraraptor.blogspot.com]
Re: Mechanical Endstop wiki page
October 20, 2010 09:36AM
It's also important to keep in mind such things as "what happens if it's unplugged or my pet rabbit chews through the cable?"

I.E. design it such that when it's unplugged, it registers as "at the end" rather than "keep going"


--
I'm building it with Baling Wire
Re: Mechanical Endstop wiki page
October 25, 2010 09:08AM
Sebastien: If this kind of stuff is encouraged in reprap-dev, I'll surely post there next. smiling smiley

Nophead: Thanks, like this? :



jgilmore: That would be how it is designed already, isn't it? Though if your rabbit manages to chew only the 5v cable, or swallow the resistor, there might be a problem.


--
-Nudel
Blog with RepRap Comic
Attachments:
open | download - mechanical_endstop_draft3.png (3.9 KB)
Re: Mechanical Endstop wiki page
October 25, 2010 09:35AM
Yes that is how I wire mine. Make sure you keep the wires away from the motor leads and / or used screened cable as it is easy to pick up enough noise to get false triggering.


[www.hydraraptor.blogspot.com]
I don't entirely agree with Nophead. I had some troubles with endstop false triggering due the noise induced by the motors (I'm using Sanguinololu with internal pullups), but I simply solved they using the endstop as normally open. If you use a normally closed configuration the cables create a coil (a really good system to pick up any sort of noise), but if you use a normally open configuration when the endstop is not pressed the two cables are floating and less susceptible to noise.
So finally I was able to solve the problem and fasten together motors and endstop wires (and it's really handy).
I done a video on that RepRap#Resco Troubleshooting - False endstop triggering
Re: Mechanical Endstop wiki page
February 22, 2013 03:28PM
The closed loop configuration is for safety: lets say your wires come loose and the cable unplugs, you give it a homing command and you got yourself a crash coz it will never give you 5v when the cable is out. Perhaps it doesnt seem so important coz in our particular case printers with weak motors and belts, crashes like that are not fatal. But imagine a screw drive with a good powerful motor, if you crash it you might break the machine. So in a normal cnc config, i dont think you can afford to use a "good-to-go" signal like that. So dont "push" this as a good change, coz it isnt quite so in most of the cases.

In exchange to avoid false triggering during prints, one can set in firmware to check for endstops only during home procedure, which is typically done at startup or at start of every print. Then while printing the endstops are never read, so false signals or any noise is no problem. Once referenced 0.0.0 by the homing command, firmware knows to keep moves inside the defined space, and ignore moves that would move it over the axes min and max points. So it doesnt need to watch the endstops if configuration is good, and wont crash either.

Edited 1 time(s). Last edit at 02/22/2013 04:13PM by NoobMan.
Re: Mechanical Endstop wiki page
March 07, 2013 03:25AM
Sorry for the ridiculous late reply.
Indeed, my favorite configuration is closed loop one. But as you wrote after the homing done at the begin of the print the firmware will avoid dangerous moves.
The only problems can occours if your motors lose steps (and you can't avoid they anyway if don't use also a max endstop). However in the worst case when the axis will reach its limit the motor will lose steps, and it's not a big deal (this kind of errors will never happen in a properly configured printer).
Set the firmware to read the endstops only during home is an interesting option, but don't resolve the issue. The false trigger errors will happen also when homing, making the machine think that the home is in an wrong position.

When I finally resolved for the open loop configuration my first thought really was "now if a connector became loose or cable is interrupted the printer will not stop". But considering that the printer will never lose steps (otherwise you have other type of problems) I believe that stop a print for a missing endstop input that otherwise will never be used during print is not a feature. Infact the firmware option you taught do the same.
Sorry, only registered users may post in this forum.

Click here to login