140 likes | 257 Views
Centre for Research & Training in Industrial Control Robotics and Material Engineering Politehnica University of Bucharest. Integrating a Short Range Laser Probe with a 6-DOF Vertical Robot Arm and a Rotary Table. Theodor Borangiu borangiu@cimr.pub.ro Anamaria Dogar dogar@cimr.pub.ro
E N D
Centre for Research & Training in Industrial Control Robotics and Material Engineering Politehnica University of Bucharest Integrating a Short Range Laser Probe witha 6-DOF Vertical Robot Arm and a Rotary Table Theodor Borangiu borangiu@cimr.pub.ro Anamaria Dogar dogar@cimr.pub.ro Alexandru Dumitrache alex@cimr.pub.ro
Overview • Objective: Development of a 3D Laser Scanning System • Usage: • Scanning small and medium objects and reproduction on a CNC milling machine • Inspection of the parts produced on the CNC
Main issues • Communication and synchronization between the robot arm, the laser probe and the rotary table • Aligning the measurements from the laser probe into the workpiece’s reference frame • Calibration issues Computing the calibration matrices: • between robot arm and laser probe • between robot arm and rotary table
Communication and Synchronization Requirements for obtaining a 3D measurement: • Data from the laser probe: A set of 2D points corresponding to one scanline measurement • Instantaneous position of the robot: Six encoder values, from which the pose of the laser probe can be evaluated, in X-Y-Z-Yaw-Pitch-Roll format • Instantaneous position of the turntable: One encoder value, or rotation angle
Communication and Synchronization Two scanning methods are possible: • Move, stop and measure: • The robot arm and the table move to the desired position, stop the motion and then the measurement is taken • The robot and the table have to move in very small steps, at high acceleration rates • The scanning process is slow, but simpler to implement • Continuous (dynamic) scanning: • The robot arm and the table move continuously along the scanning trajectory, and the laser probe takes measurements periodically, at a programmed sampling rate • The laser probe sends a trigger signal every time a measurement is taken • The mechanical subsystem (robot and table) listen for the trigger signal and latch their instantaneous position • The scanning process is faster, the mechanical stages have a smooth motion (low acceleration rates and faster speed)
Communication and Synchronization Implementation of dynamic scanning Laser Probe 2D Data Acquisition Trigger Signal 3D Point Cloud Computation Scanning Trajectory Generator Motion Control Driver Robot Arm and Table Encoder Latching Module Adaptive Scanning Trajectory Computation
Aligning the measurements • Laser probe 2D data is joined with instant position of the mechanical elements, resulting the 3D measurement • System is modelled as an open 7-DOF Kinematic Chain, using the Denavit-Hartenberg convention • 3D data is obtained by composing 4x4 HTMs
Direct Kinematics of the robot arm From robot wrist to the laser probe From rotary table to robot base Determined by robot – laser probe calibration Determined by robot – rotary table calibration Aligning the measurements • 2D laser data is extended into 3D: X = 0, Y and Z map to the 2D data • The result is premultiplied with the following transformation matrix • (the alignment equation):
Calibration issues There are two transformation matrices which are determined by calibration: • The robot – laser probe calibration • It is a constant matrix describing the location of the laser probe with respect to the robot wrist • It is computed automatically by the software of the laser probe, using the ball matching procedure • The robot – rotary table calibration • It is a transformation matrix which depends on the rotation angle of the rotary table, qR • The method of computation will be presented here
Robot – Rotary Table Calibration • The calibration compensates the following misalignments: • Misalignment between the rotary table and the robot • Table offset: when the position of the table does not match the designed values • Table external tilt: when the rotation axis of the table is not parallel to the Z axis of the robot base • Internal mechanical errors of the table • Table eccentricity: when the centre of rotation is not the same with the geometrical centre of the table • Table internal tilt: when the rotation axis of the table is not normal to the table surface • This calibration method does not compensate for other mechanical errors, such as backlash
Robot – Rotary Table Calibration • The calibration is performed in four stages: • Determining the internal and external tilt • It is performed by evaluating the normal vector at the table and its dependence over the rotary table angle qR • The normal vector is computed by fitting a plane through the laser probe measurements • Determining the table height • The computation is straightforward after the tilt angles have been computed, and it involves averaging the Z components of the surface measurements • Determining the table eccentricity • This involves placing the laser probe at the edge of the table, performing a 360° rotation and observing the variation of the edge position. The variation should be an oscillation whose amplitude and phase allow the computation of the eccentricity values • Determining the table position in the X-Y plane of the robot • As the table is round, this step involves detecting the edge of the table from different locations (at least 3), and fitting a circle through these points • Before performing the above steps, the robot – laser probe calibration should be computed
Robot – Rotary Table Calibration Verification methods: • The first test (alignment test) will check whether the table is properly aligned (internal and external tilt): • The laser probe should be placed down-looking at the table surface, in a position close to the table edge • The table rotates. If the measurements indicated by the laser probe vary with the rotation, the rotary table exhibits internal mechanical errors (eccentricity or internal tilt) • If the measurements do not vary with the rotation, the laser probe should then be moved in various positions / orientations around the table, and all the measurements collected. If the data do not lie in a plane parallel to XY, the table is not well aligned with the robot (external tilt), but there is no internal tilt error • The second test will check the internal misalignments of the table: • The laser probe is placed so that it is able to see both the surface and the edge of the table. The table rotates with 360°, while the laser records measurements. If the measurements do not vary with table rotation, there is no misalignment of the table, or it has been correctly compensated for. • The third test will check the offsets (or X-Y-Z location) of the table: • The laser probe will be placed so that it is able to detect the edge of the table, from different (at least 3) locations • A circle can be fitted through the measured edge locations, allowing to determine the geometric center of the table and compare it to the ideal one
Conclusion This paper presented the following issues required for implementing a 3D laser scanner by integrating a laser probe, a 6-DOF vertical robot arm and a rotary table: • The synchronization solution for performing continuous (high-speed) dynamic scanning • The transformations required to align the 2D laser probe measurements into a 3D reference frame attached to the workpiece, for obtaining a point cloud model • A calibration and verification method for compensation of misalignments between robot and rotary table
Thank you! ...any questions?