diff options
author | David Crocker <dcrocker@eschertech.com> | 2018-02-15 19:29:12 +0300 |
---|---|---|
committer | David Crocker <dcrocker@eschertech.com> | 2018-02-15 19:29:28 +0300 |
commit | 6629a8d0d5372637c70217f3bdfb0c0d339f21d1 (patch) | |
tree | 9274b9311978326aa24989e758f3a8928cea0508 /src/ZProbe.h | |
parent | 56ce29027a745be0def9d53168513f8ecafd0208 (diff) |
Version 1.21RC2
The filament usage comments generated by Ideamaker are now recognised
A separate Z probe type (P9 in M558) is now used for BLTouch and
compatible Z probes. When this is selected, the deployprobe.g macro is
run just before each probing move, and retractprobe.g is run every time
the probe triggers, or at the end of the probing move if it doesn't
trigger
All heaters are turned off during probing moves if parameter B1 is
specified in the M558 command
The M671 command can be used with just one pair of X and Y coordinates,
which disables the manual bed calibration assistant
Continuous rotation proximal and distal joints are now supported on
SCARA printers, and continuous rotation turntables are assumed on Polar
printers
When beginning a print from SD card, macro /sys/start.g is run if it is
present
Sending M0 or M1 from a source other than the SD card no longer stops an
SD card print that is not paused
When a serial input channel detects a framing or overrun error other
than in a GCode end-of-line comment, the line of GCode in which it
occurs is discarded
When the M207 Z hop setting was changed during a print while a travel
move is in progress, at the end of the travel move the head was lowered
by the new value for Z hop instead of the original value
Endstop pins 5-9 (E2-E6) on the expansion connector are now working
If neither of the /www/reprap.htm and /www/html404.htm files was present
when the web server as asked to fetch a file, it returned a 404 error,
however there was no associated plain text response so most browsers
displayed a blank screen (fixed in Duet WiFi/Ethernet build only)
If a G0 or G1 command resulted in no movement (e.g. because it was a
duplicate of a previous line) then correct synchronisation between
subsequent movement and non-movement commands was lost
Diffstat (limited to 'src/ZProbe.h')
-rw-r--r-- | src/ZProbe.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/ZProbe.h b/src/ZProbe.h new file mode 100644 index 00000000..0ebea544 --- /dev/null +++ b/src/ZProbe.h @@ -0,0 +1,50 @@ +/* + * ZProbe.h + * + * Created on: 13 Feb 2018 + * Author: David + */ + +#ifndef SRC_ZPROBE_H_ +#define SRC_ZPROBE_H_ + +#include "RepRapFirmware.h" + +enum class ZProbeType : uint8_t +{ + none = 0, + analog = 1, + dumbModulated = 2, + alternateAnalog = 3, + e0Switch = 4, + digital = 5, + e1Switch = 6, + zSwitch = 7, + unfilteredDigital = 8, + blTouch = 9, + numTypes = 10 // must be 1 higher than the last type +}; + +class ZProbe +{ +public: + int32_t adcValue; // the target ADC value, after inversion if enabled + float xOffset, yOffset; // the offset of the probe relative to the print head + float triggerHeight; // the nozzle height at which the target ADC value is returned + float calibTemperature; // the temperature at which we did the calibration + float temperatureCoefficient; // the variation of height with bed temperature + float diveHeight; // the dive height we use when probing + float probeSpeed; // the initial speed of probing + float travelSpeed; // the speed at which we travel to the probe point + float recoveryTime; // Z probe recovery time + float tolerance; // maximum difference between probe heights when doing >1 taps + uint8_t maxTaps; // maximum probes at each point + bool invertReading; // true if we need to invert the reading + bool turnHeatersOff; // true to turn heaters off while probing + + void Init(float h); + float GetStopHeight(float temperature) const; + bool WriteParameters(FileStore *f, unsigned int probeType) const; +}; + +#endif /* SRC_ZPROBE_H_ */ |