Welcome! Log In Create A New Profile

Advanced

Detailed proposal for IR sensor modulation

Posted by dc42 
Re: Detailed proposal for IR sensor modulation
January 20, 2014 02:53AM
@DC42 that is a great improvement. smiling smiley

One final consideration is the physical position of the sensor, how high above the extruder nozzle tip is the sensor face?
Looking at the Vishay data the sensor linear distance range is 2.5mm to 4.5mm, so the sensor needs to be at least 2.5mm higher than the tip.

Outside of this 2.5mm to 4.5mm range the ambient IR interference will not be compensated for correctly.

Sorry if you have already considered this in the design details...



Ormerod #007 (shaken but not stirred!)
Re: Detailed proposal for IR sensor modulation
January 20, 2014 04:14AM
Hi Treth, I think you are looking at the wrong graph. That one is for a a target at a fixed distance of 1mm where the target slides from side to side. The graph of interest here is Fig 7, which shows the collector current peaking at 1mm distance. So as long as the sensor face is at least 1mm higher than the nozzle, the reading will be monotonic with distance. Preferably it should not be much higher than this, so as to get maximum sensitivity at the calibration height.



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: Detailed proposal for IR sensor modulation
January 20, 2014 04:29AM
Great work! Sounds like a vast improvement. What version of the firmware do I need to try it? (I'm still using the original one)

regards
Andy


Ormerod #318
www.zoomworks.org - Free and Open Source Stuff smiling smiley
Re: Detailed proposal for IR sensor modulation
January 20, 2014 05:01AM
Quote
kwikius
Great work! Sounds like a vast improvement. What version of the firmware do I need to try it? (I'm still using the original one)

regards
Andy

My changes are in the latest firmware on the Duet branch, however that firmware also has some incomplete changes to the stepper movement code that I think are best avoided until that work is completed. So get it from [github.com] instead.

Btw my suggested procedure for modifying the sensor board is a little different now:

- Epoxy an extra header pin on top of the board
- Replace the 15K resistor by 3k3
- Replace the 165R resistor by 1K
- Cut the trace between the 1K resistor and the IR sensor, scrape away the solder resist, tin the copper, and solder a 51R 0603 resistor across the gap
- Solder a BC817 transistor on top, collector to one pad of the 51R, emitter to one pad of the 1K, base pin floating, so that the transistor is connected in parallel with the 1K
- Connect a 1K resistor from the base of the BC817 to the header pin





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: Detailed proposal for IR sensor modulation
January 24, 2014 04:11PM
Hey guys,

I have prototyped a similar setup now and run it on my test machine. Shining a 1kW halogen over it varies the readings by only +/-3, whilst the combined average (in brackets) moves around a few hundred points.

I have also stumbled upon something whilst trying to improve the hot end thermistor readings at room temperature. The arduino libraries set the default ADC resolution to 10 bits, but using analogReadResolution(), we can set this to 12 bits. This gives a resolution of less than one micron with the sensor a couple of mm from the target surface.

I need to put another prototype together with a 3k3 resistor, as I still have a 4k3 fitted and direct sunlight does saturate the sensor. I will try and fit the extra 10u capacitor and 1k resistor across the transistor as you (dc42) suggested earlier in this thread.
Re: Detailed proposal for IR sensor modulation
January 24, 2014 04:35PM
Quote
jmgiacalone
I have also stumbled upon something whilst trying to improve the hot end thermistor readings at room temperature. The arduino libraries set the default ADC resolution to 10 bits, but using analogReadResolution(), we can set this to 12 bits. This gives a resolution of less than one micron with the sensor a couple of mm from the target surface.

Although that may help with the temperature readings, unfortunately it won't help with the IR sensor readings because the IR sensor input on the Duet board is picking up quite a lot of noise, mainly from the switching regulator. See [forums.reprap.org] for my findings.

Quote
jmgiacalone
I need to put another prototype together with a 3k3 resistor, as I still have a 4k3 fitted and direct sunlight does saturate the sensor. I will try and fit the extra 10u capacitor and 1k resistor across the transistor as you (dc42) suggested earlier in this thread.

3k3 is better, but to avoid saturation in direct sunlight, you would need even lower. See [forums.reprap.org] for my conclusions on this matter. The 10u capacitor is already present on the original sensor board. Regarding the 1K resistor across the transistor, I think a lower value such as 470R might give even better results.



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: Detailed proposal for IR sensor modulation
January 24, 2014 04:37PM
One thing to consider: When you take a reference measurement, you are measuring the distance of the nozzle from the bed, not the IR sensor. You may think that the difference in height between the two is a fixed value so doesn't matter, but its value changes if the slope of the glass changes between prints (because the bed has moved). So the reference height really needs to be adjusted by computing how much the bed angle (as obtained from the bed setting parameters) had added or subtracted from the nozzle/IR height difference.

Dave
(#106)
Re: Detailed proposal for IR sensor modulation
January 24, 2014 04:41PM
Quote
dmould
One thing to consider: When you take a reference measurement, you are measuring the distance of the nozzle from the bed, not the IR sensor. You may think that the difference in height between the two is a fixed value so doesn't matter, but its value changes if the slope of the glass changes between prints (because the bed has moved). So the reference height really needs to be adjusted by computing how much the bed angle (as obtained from the bed setting parameters) had added or subtracted from the nozzle/IR height difference.

Dave
(#106)

Very true; but I think a bigger effect is that any change in the amount of head sag will also affect the relative heights of the nozzle and sensor. The sensor would be better positioned directly in line with the nozzle.



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: Detailed proposal for IR sensor modulation
January 24, 2014 06:02PM
as a sideline from this discussion of relative angular displacements that could influence measurement from the z-probe, is there a reference available discussing the the transforms that are used in compensation (particularly the dissection of bed correction from x/y correction, as applied using the ormaxis.g test piece)?

The reason I ask is that it is perfectly possible without bed compensation to print a perpendicular column on a sloping bed: at an extreme slope in one direction (say Y) when printing a cuboid outline, the effects are that at the bottom of the Y slope, extrusion is free but may not attach, halfway up the slope flow slows until a critical point where it becomes blocked, the nozzle moves with no extrusion (while pressure builds up) until the head moves back down the slope, where back pressure drops and there' s overextrusion, eventually, the z axis moves to the next layer and the process repeats until there's a level top - from then on, as long as the axes are perpendicular to each other, the cuboid column rises vertically, with a horizontal upper edge (one of the reasons I don't need to level the bed - I grind off the bottom layer or two anyway, since with ABS they're oversized in X and Y, as long as it sticks and the other angles are good, then the print is good).

A (say) left leaning vertical columnar print would be due to either a left leaning Z support, or an interaction between Y and Z (presuming Y runs left to right in this example) - the interaction could be drag from the print head whose moment increases as the height increases (which isn't necessarily balanced depending on retraction point and pattern), belt slippage (ditto), or torsion around X (something that i had occur today when my Z runners could no longer prevent it - again, this isn't necessarily a balanced force, depending on the pattern of extrusion, an edge may be hit more in one direction than another, giving a net shift in one direction as a sum of small hits)

oops, I'm rambling - back to the question, any references discussing the transforms please ? smiling smiley
,
Sorry, only registered users may post in this forum.

Click here to login