Skip to content
Snippets Groups Projects

Feature/elevation correction arm

Merged Hark Simon Braren requested to merge feature/elevation_correction_arm into master
1 file
+ 15
1
Compare changes
  • Side-by-side
  • Inline
@@ -117,6 +117,9 @@ classdef itaEimar < itaMeasurementTasksScan
failed_command_repititions = 5; % How often do we repeat commands until we throw an error?
doSorting = true; % sort the measurement coordinates for arm due to shorter measurement time
armCorrectionAngle = 0; % Correct the position of the arm. Check at 90° if horizontal. Value <0 -> higher position
% for heavy objects use [offset at 90, offset at zero] to compensate sag
% CAUTION: due to backlash always move to a target position from the same direction
% i.e. only decrease theta throughout a measurement
end
% *********************************************************************
properties (Access = protected, Hidden = true)
@@ -925,7 +928,18 @@ classdef itaEimar < itaMeasurementTasksScan
return;
end
angle = angle - 119.01 + this.armCorrectionAngle; % Larger substractive value: Higher position. Checkt at 90�.
%apply arm correction
% Larger substractive value: Higher position. Checkt at 90 deg
% for static compensation when using lightweight attachment,
% e.g. a microphon. When using a loudpeaker use the 2 value
% compensation [offset at 90 deg, offset at 0 deg] to
% compnesate sag in the arm
if numel(this.armCorrectionAngle) < 2
corr_angle = ones(2) * this.armCorrectionAngle;
else
corr_angle = this.armCorrectionAngle;
end
angle = angle - 119.01 + corr_angle(2) + (corr_angle(1) - corr_angle(2))*sin(angle*pi/180);
Loading