Beispiel #1
0
 def start_probe(self, params):
     manual_probe.verify_no_manual_probe(self.printer)
     # Lookup objects
     probe = self.printer.lookup_object('probe', None)
     method = self.gcode.get_str('METHOD', params, 'automatic').lower()
     self.results = []
     if probe is None or method != 'automatic':
         # Manual probe
         self.lift_speed = self.speed
         self.probe_offsets = (0., 0., 0.)
         self._manual_probe_start()
         return
     # Perform automatic probing
     self.lift_speed = probe.get_lift_speed(params)
     self.probe_offsets = probe.get_offsets()
     if self.horizontal_move_z < self.probe_offsets[2]:
         raise self.gcode.error("horizontal_move_z can't be less than"
                                " probe's z_offset")
     probe.multi_probe_begin()
     while 1:
         done = self._move_next()
         if done:
             break
         pos = probe.run_probe(params)
         self.results.append(pos)
     probe.multi_probe_end()
Beispiel #2
0
 def cmd_PROBE_CALIBRATE(self, params):
     manual_probe.verify_no_manual_probe(self.printer)
     # Perform initial probe
     curpos = self.run_probe(params)
     # Move away from the bed
     self.probe_calibrate_z = curpos[2]
     curpos[2] += 5.
     self._move(curpos, self.speed)
     # Move the nozzle over the probe point
     curpos[0] += self.x_offset
     curpos[1] += self.y_offset
     self._move(curpos, self.speed)
     # Start manual probe
     manual_probe.ManualProbeHelper(self.printer, params,
                                    self.probe_calibrate_finalize)