Welcome! Log In Create A New Profile

Advanced

Z-height sensor - inductive?

Posted by Treth 
Re: Z-height sensor - inductive?
April 28, 2014 11:38AM
Quote
dc42
Quote
dmould
In any case, many of the methods discussed would also not give the same height for different thicknesses of glass.

That's a good point.

I was going to develop a prototype inductive sensor next, however I'm leaning towards a solenoid-operated contact probe now. This will be independent of glass thickness and work anywhere on the bed. I've located a couple of solenoids that look suitable, and I am making inquiries.

There remains the issue of how to do x-homing. One possibility is to use a microswitch on the x-motor mount, although that would involve yet more wires running back to the Duet. Another is to keep an IR sensor on the hot end board just for IR homing. A third possibility is to mount a microswitch on the hot end board, such that its actuator lines up with the z-nut trap.

You could simply wire the Z homing switch across the original IR sensor output and ground. If the Z homing switch is normally open, the X homing will work exactly as before. You then detect Z home when the switch closes to suddenly give a reading of zero (or close to it). RS has a range of small 12V solenoids. Maybe re-purpose the FAN connection to drive the solenoid - it could even be wired in parallel to the existing fan if you assume that you will never want to do Z homing with a hot extruder or print with the fan off. Or you could cleverly arrange the solenoid to move the switch through 90 degrees, so it detects the bed in one position and the X end-stop in the other.

Dave
(#106)
Re: Z-height sensor - inductive?
April 28, 2014 12:15PM
Quote
dmould
RS has a range of small 12V solenoids.

Sadly, the only one that RS used to sell that looks good for this application has been discontinued, [uk.rs-online.com]. So I have turned to other suppliers.

Controlling the solenoid will not be a problem. If I can get it working well, my plan is to develop a board that is a drop-in replacement for the board I have nearly sold out of, using the same wiring and connectors, and with similar lighting and hot end fan control.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 28, 2014 12:29PM
I like the idea of an electrical circuit either breaking or making contact.
But if the nozzle / bed is not suitable, how about the bearing running on the back of the X-arm?
If the arm was made from alloy (which I believe some people are now using) and the bearing was attached to a feed, then as soon as the nozzle touches the bed the hot end rocks back an amount and the bearing breaks contact. It should be a fairly easy calculation to work out what nozzle height is when the bearing breaks the circuit.
Feeding power to the (alloy) X arm should be fairly easy. Getting a return from the bearing, well you could just run a single wire under the X axis LMU and attach to the bolt with an eyelet.
No probes to worry about. Its the nozzle that is doing the reading. Just make sure its clear of any filament.
Re: Z-height sensor - inductive?
April 28, 2014 01:48PM
Balidey, that sounded like a very neat and original idea, so I did some tests. I put a piece of copper tape on my acrylic x-plate, and set up a meter to measure the resistance between it and the screw holding the x-runner bearing. Then I calibrated the height to zero, and measured the resistance at various heights.

The resistance with the nozzle above the bed is anything between 500 ohms and 90kohms, depending on the x-position. I guess the oil in the bearing is insulating the outside roller from the inside to some extent. That in itself is not necessarily a problem. The problem is that in order to break the contact reliably, I need to drop the nozzle to -0.8mm.

I can see the acrylic flexing as I do this test, so maybe the main problem is the flexibility of the acrylic. It may work better with an aluminium x-plate. Seeing the acrylic flexing has made me realise how bad it it, so I've ordered an aluminium one from DaveK. I'll repeat this test when it is fitted.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 28, 2014 01:52PM
Quote
dc42
Quote
dmould
RS has a range of small 12V solenoids.

Sadly, the only one that RS used to sell that looks good for this application has been discontinued, [uk.rs-online.com]. So I have turned to other suppliers.

How about [uk.rs-online.com] ?
Whoops - that's 24V (but might work at half power)

But there's
[uk.rs-online.com]
[uk.rs-online.com]
[uk.rs-online.com]
or even
[uk.rs-online.com]

Not that I have any reason to promote RS - just like their next day delivery even when I order in the evening!

Dave
(#106)

Edited 1 time(s). Last edit at 04/28/2014 01:57PM by dmould.
Re: Z-height sensor - inductive?
April 28, 2014 02:44PM
I'm having great success with dc42's modulated if probe, but...

As a way of measuring position cheaply and to an accuracy of 0.01mm look to the cheap digital vernier calipers found all over the place, I have 5 in the shop myself, they are only about £8!

They work capacitively and are very simple but plenty accurate.

Could the method not be used to sense when a gentle spring loaded plunger hits the bed??..


Another RS Ormerod Mk1 meets the world smiling smiley

Retired now but I used to make....
CNC Machined Mk1 aluminium bed support plates for the Ormerod
CNC machined X-plates and ribs for Mk1 & Mk2 Ormerods
CNC machined bed support arms for the Mk2 Ormerod.
Dual Hot-End heatsink blocks.
Re: Z-height sensor - inductive?
April 28, 2014 02:51PM
Quote
dmould
How about [uk.rs-online.com] ?
Whoops - that's 24V (but might work at half power)

But there's
[uk.rs-online.com]
[uk.rs-online.com]
[uk.rs-online.com]
or even
[uk.rs-online.com]

Not that I have any reason to promote RS - just like their next day delivery even when I order in the evening!

Dave
(#106)

Dave, those are all far too expensive for something that I am looking to manufacture and sell at a modest price (preferably less than I charged for my IR/ultrasonic boards). Most of them are also too large to fit on the PCB and consume too much power. I have some enquiries out with UK manufacturers and distributors, but I have also ordered one of these [www.ebay.co.uk] which is a far better price and looks as if it may do the job.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 28, 2014 03:26PM
Quote
Davek0974
As a way of measuring position cheaply and to an accuracy of 0.01mm look to the cheap digital vernier calipers found all over the place, I have 5 in the shop myself, they are only about £8!

They work capacitively and are very simple but plenty accurate.

I did wonder as well whether one could use the guts in some way but I can't think how the mechanical coupling would work at the moment particularly as I think the distance to the plates needs to be well controlled.

This site has a bit of a tear down into the guts. Calipers
Re: Z-height sensor - inductive?
April 28, 2014 06:06PM
Interesting! However, a caliper measures the displacement between two parts that are moving past each other. We have a different problem, which is to measure the distance between the nozzle and the bed, while at the same time remaining at least 1mm away from the bed under normal operation even when the head is touching the bed.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 29, 2014 04:06AM
This is the type of precision position switch we would like smiling smiley
[toolsensor.com]
I haven't got pricing, but looking at other examples my guess is they are greater than £50 and probably over £100....... sad smiley
But it shows the type of switches available.

The earlier post suggesting something like a ball point pen tip, that would be a great sensor!
Metal ball (in plastic guide tube) sprung loaded to a tip metal ring, perfect. Guess once you ruggedize it, it costs £50.....


Ormerod #007 (shaken but not stirred!)
Re: Z-height sensor - inductive?
April 29, 2014 04:18AM
I am not sure of the need to continuously monitor the height.
If the need is simply to set the inital zero Z figures before a print start - maybe at the usual four positions - then a combination of the solenoid and the capacitive vernier might suffice.

Sensor fixed relative to nozzle - Z difference known.
Fire the solenoid to extend the contact tip, and measure the extension.
A bit of arithmetic to determine the exact height of the nozzle.


Ormerod #17
Re: Z-height sensor - inductive?
April 29, 2014 04:34AM
How about using the height sensing method of the DamBuster Lancasters - or something similar.
They used angled searchlights on each wing, such that the beams coincided along the centre line of the aircraft when at the exact required height (50 feet I think).

If we can rely on the reflective nature of the surface, then a laser (from a laser pointer perhaps) angled down at, say, 45 degrees to aim near the tip of the hot end.
Detect the position of the reflected beam along the X axis in mm will give the height in mm.
No idea how to do that ...
Greg


Ormerod #17
Re: Z-height sensor - inductive?
April 29, 2014 05:10AM
Quote
GregL
Sensor fixed relative to nozzle - Z difference known.
Fire the solenoid to extend the contact tip, and measure the extension.
A bit of arithmetic to determine the exact height of the nozzle.

That is exactly what I am looking at. I will measure the extension either using the variation in inductance of the solenoid, or with a separate optical sensor. We don't actually need to measure the extension, just to know when the extension is a particular value.

Quote
GregL
How about using the height sensing method of the DamBuster Lancasters - or something similar.
They used angled searchlights on each wing, such that the beams coincided along the centre line of the aircraft when at the exact required height (50 feet I think).

If we can rely on the reflective nature of the surface, then a laser (from a laser pointer perhaps) angled down at, say, 45 degrees to aim near the tip of the hot end.
Detect the position of the reflected beam along the X axis in mm will give the height in mm.

I thought of something similar. Two LEDs, modulated in antiphase, directed vertically on to the bed such that the spots from them overlap a little. One photoreceptor inside a tube, aimed at the bed at a 45 degree angle. The proportion of light from each LED seen by the photoreceptor will depend on the height. One problem with this arrangement is that we would need to distinguish the reflection from the top of the glass (which is what we want) from the reflection from the bottom of the glass or the heat spreader.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 29, 2014 05:29AM
Some great ideas being thrown around in this thread, can't wait to see what you guys come up with.

I am not worried about sensing several locations, just having the head at a known height in one position is all I want. Hopefully with a nice level bed, and maybe a touch of bed compensation will take care of the rest.

Regards,

Les


Pointy's Things
Pointy's Blog
Re: Z-height sensor - inductive?
April 29, 2014 06:35AM
What I'm after is being able to measure the bed at the four corners for level compensation, and at the centre for accurate initial Z positioning. Ultrasonic does this well when the bed is cool, but not when the bed is hot.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 29, 2014 06:53AM
Quote
dc42
Quote
GregL
Sensor fixed relative to nozzle - Z difference known.
Fire the solenoid to extend the contact tip, and measure the extension.
A bit of arithmetic to determine the exact height of the nozzle.

That is exactly what I am looking at. I will measure the extension either using the variation in inductance of the solenoid, or with a separate optical sensor. We don't actually need to measure the extension, just to know when the extension is a particular value.

Quote
GregL
How about using the height sensing method of the DamBuster Lancasters - or something similar.
They used angled searchlights on each wing, such that the beams coincided along the centre line of the aircraft when at the exact required height (50 feet I think).

If we can rely on the reflective nature of the surface, then a laser (from a laser pointer perhaps) angled down at, say, 45 degrees to aim near the tip of the hot end.
Detect the position of the reflected beam along the X axis in mm will give the height in mm.

I thought of something similar. Two LEDs, modulated in antiphase, directed vertically on to the bed such that the spots from them overlap a little. One photoreceptor inside a tube, aimed at the bed at a 45 degree angle. The proportion of light from each LED seen by the photoreceptor will depend on the height. One problem with this arrangement is that we would need to distinguish the reflection from the top of the glass (which is what we want) from the reflection from the bottom of the glass or the heat spreader.

This maybe what you are describing, but here's my description.

Use a sprung loaded solenoid that had the plunger available at top and bottom.
Sprung loaded in the up position.

Use a slotted opto to sense the top part of the plunger. Positioned so it is normally blocked.

Apply a current to drive the solenoid down just past the opto window such that it has the full beam.
(This will hopefully reduce the force on the tip when in contact with the bed).

As the z-axis moves down the sensor starts to block and if measured with an analog input will give a signal proportion to the amount of 'blockage' use a defined reading as the reference position.

Solenoid is the sensor and automatically moved above nozzle height when de-energised.


Ormerod #007 (shaken but not stirred!)
Re: Z-height sensor - inductive?
April 29, 2014 07:36AM
Quote
Treth
Use a slotted opto to sense the top part of the plunger. Positioned so it is normally blocked.

That's what I was planning to do if I can't get the inductance change measurement to work well enough. Unfortunately, the only suitable solenoid I can find in the UK doesn't have the plunger available at both ends. Measuring the inductance change should not be difficult, the difficult part is to make the measurement insensitive to the resistance of the solenoid, which will increase as it heats up.

Quote
Treth
Apply a current to drive the solenoid down just past the opto window such that it has the full beam.
(This will hopefully reduce the force on the tip when in contact with the bed).

That's a neat idea, and it will also reduce the heat generated in the solenoid.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 29, 2014 09:06AM
Just found this on Rapid Electronics
[www.rapidonline.com]
Not ideal for the sensor end, but cheap and has both ends available and 2 to 3mm travel.
Need to attach a small rod at the spring end to go through the opto slot or similar.

CPC do these more expensive ones
[cpc.farnell.com]
[cpc.farnell.com]

What about model railway track switching solenoids, I'm not into this area, but do they offer anything suitable?

Just some thoughts.
P.S. Couldn't find anything at Maplin


Ormerod #007 (shaken but not stirred!)
Re: Z-height sensor - inductive?
April 29, 2014 10:16AM
Hi Treth, I didn't think of looking at Rapid, however the one you linked only specifies the push force for up to 1mm travel at 100% duty cycle. I'm looking for at least 3mm travel at 100% duty cycle. The best I can find in the UK so far is this [uk.farnell.com]. Tubular solenoids seem to have much better force & stroke for the same power dissipation compared to open frame solenoids. I also have some cheap Chinese open frame solenoids on order. The CPC ones are too large and also don't specify the push force or stroke at 100% duty cycle. I've gone through a lot of solenoid catalogUes and listings looking for something suitable!



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 29, 2014 10:45AM
Quote
dc42
I've gone through a lot of solenoid catalogUes and listings looking for something suitable!
Yes, I guessed you had! The spec's and extracted spec's are quite poor, so I appreciate your time and efforts.
I like the Farnell part you selected, I guess you would have thought of this as well, but is there room to put a 'black' coating of some form along the protruding shaft and use a reflective sensor to detect the transition?
Could work well with your current IR sensor board!


Ormerod #007 (shaken but not stirred!)
Re: Z-height sensor - inductive?
April 29, 2014 10:51AM
I think we could print a plastic part to push over the shaft with a "flag" on it that can activate a slotted opto sensor. But I also intend to have a go at sensing the change in inductance. If we're going to PWM the solenoid anyway to limit the travel and keep it cool, then by measuring the rate of current decay when the drive is turned off, we can work out the ratio of the inductance to the total circuit resistance.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 29, 2014 03:38PM
Quote
dc42
Interesting! However, a caliper measures the displacement between two parts that are moving past each other. We have a different problem, which is to measure the distance between the nozzle and the bed, while at the same time remaining at least 1mm away from the bed under normal operation even when the head is touching the bed.

You have two parts - the bed and the nozzle/measuring device which is slowly moving toward it

You could set a zero point at any distance on the caliper, the nozzle would drop until that point is reached where it would stop, set z0 and move to the next position etc.

I know it's not ideal but I can see a way it could work, you don't even need to measure, just a pulse when a set point is reached, it's the accuracy that counts.


Just a thought smiling smiley


Another RS Ormerod Mk1 meets the world smiling smiley

Retired now but I used to make....
CNC Machined Mk1 aluminium bed support plates for the Ormerod
CNC machined X-plates and ribs for Mk1 & Mk2 Ormerods
CNC machined bed support arms for the Mk2 Ormerod.
Dual Hot-End heatsink blocks.
Re: Z-height sensor - inductive?
April 29, 2014 05:06PM
Another thought trying to get to low cost and robustness. This would be very cheap for hardware and is small.

Thinking of the combined bed sensing and the need to retract the sensor, how about using a vibration motor as used in the iPhone etc.
This would be used as a motor to move between sensing and parking positions and as a generator/sensor for contact with the bed.
A sensing arm is mounted on the shaft with the offset weights in a set position to apply a downward pressure.
When the arm makes contact with the bed a sudden but small emf is generated, this is amplified and used as the reference position detect.
When not in use the arm is rotated to sit in a parked position (again the offset weight is used to aid staying in this position).



Considerations:
Don't know the emf generated.
Could be adversely affected by the commutator segments and how these relate to the brushes in the parked position.
3D printer vibration from stepper motors may swamp the required signal.


Ormerod #007 (shaken but not stirred!)
Re: Z-height sensor - inductive?
April 30, 2014 03:40AM
My thoughts were to replace the force sensor idea with an opto sensor so you would detect zero when the hotend lifts.

I was thinking the gap (or not) between the x runner bearing and the runner could be used as the opto slot. When the head hits the bed, the slot opens.

regards
Andy


Ormerod #318
www.zoomworks.org - Free and Open Source Stuff smiling smiley
Re: Z-height sensor - inductive?
April 30, 2014 04:39AM
Andy, see this post [forums.reprap.org]. An opto sensor would have the same issue with flexing of the plate.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 30, 2014 01:12PM
I've today taken delivery of the tubular solenoid from Farnell. The good news is that the plunger does extend out of the back side of the solenoid, so an opto sensor with a wide enough gap (more than 6mm) could be used there if I don't find measuring the inductance satisfactory.

The bad news is that the solenoid has no end stop or return spring. The plunger can fall out of the back of the solenoid, although with the solenoid mounted vertically that will not happen. The return spring is a bigger problem because it needs to be extremely weak. I have a box of assorted springs from Maplin and there are no compression springs in it that will fit and are not much too strong. I've looked online and can find no low-cost stock compression springs because it's hard to find such weak ones. I can get them manufactured, but this isn't cheap especially if I just want a few for development. If anyone else wants to search for a suitable spring, the specifications I am looking for are:

Inside diameter: 5mm or a little greater
Free length: (actually, length under a load of 0.042N i.e. weight of plunger): no more than 12mm. A shorter free length would be better, but free length minus fully compressed length must be at least 4mm.
Rate: below 0.1N/mm, preferably no more than 0.05N/mm

In the same delivery I received some narrow-angle IR LEDs and phototransistors. So I'll try the Dambusters-style solution first. It's potentially cheaper than the solenoid solution, given the cost of the tubular solenoid and spring.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Z-height sensor - inductive?
April 30, 2014 03:04PM
When do you sleep David?
Seems to me that you are putting 25 hr days!
Greg


Ormerod #17
Re: Z-height sensor - inductive?
April 30, 2014 04:01PM
Quote
dc42
So I'll try the Dambusters-style solution first. It's potentially cheaper than the solenoid solution, given the cost of the tubular solenoid and spring.

Can we have the music with it please? grinning smiley

Les


Pointy's Things
Pointy's Blog
Re: Z-height sensor - inductive?
April 30, 2014 05:46PM
Hi all, glad to see the ideas still flowing in. Not had much spare time but still keeping up with this topic. After bouncing off the inductive sensor due to the difficulty in getting reproducible results myself, I'm still sold on the capacitive method. I think David has used the Atmel micro to do the sensing but the Microchip PIC I've been working with uses a significantly different technique (constant current source/sink to charge/discharge the sensing capacitor) which, I think, makes it far less temperature sensitive. I've been printing with nothing on the glass but clean kapton and the results seem to be highly repeatable to within less than 0.1mm but I don't know what would happen with acetone/ABS surface treatments etc.

Despite the small capacitances involved, to get a feel for the resolution I'm getting, these plots show the A/D values returned for Z heights between 0 to 20mm. The two curves simply represent two different calibrations performed with different max. heights. Sensitivity is greatest when close to zero height, but even between 1mm & 2mm the readings go from 591 to 355... (for the red curve)



For me the greatest attraction is still the huge simplicity of the capacitive sensor- just a microchip, xtal and a metal plate connected to a GPIO pin.


RS Components Reprap Ormerod No. 481
Re: Z-height sensor - inductive?
April 30, 2014 06:34PM
Hi Radian,

I am indeed using a different capacitive sensing technique. My prototype uses the Atmel charge transfer technique, which doesn't rely on a constant-current source, but does rely on a reference capacitor (I'm using a temperature-stable one), and requires 2 pins to be connected directly or indirectly to the sense plate (increasing the pin capacitance). I am also using one of my PCBs designed for ultrasonic sensing, which has long traces attached to those pins that run most of the length of the board, hence more stray capacitance.

Would you care to take and post sets of readings taken at (a) bed at room temperature, and (b) bed temperature 70C or higher? With Z=0 calibrated manually before each set of readings, once the bed has reached a stable temperature. From what you have already said, I believe you are getting a lower temperature sensitivity than I am, but I would like to know how much lower.

Also, from the readings you are taking, are you able to calculate the ratio of sense plate capacitance variation to total capacitance?

Edited 1 time(s). Last edit at 04/30/2014 06:34PM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Sorry, only registered users may post in this forum.

Click here to login