Skip to content

Commit

Permalink
Fix unit scaling
Browse files Browse the repository at this point in the history
  • Loading branch information
ted-miller committed Oct 5, 2023
1 parent f753fde commit 9492838
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 8 deletions.
3 changes: 3 additions & 0 deletions src/MathConstants.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@

// macro
#define MICROMETERS_TO_METERS(x) (x * 0.000001)
#define METERS_TO_MICROMETERS(x) (x * 1000000)
#define RAD_TO_DEG_0001(x) (x * DEGREES_PER_RAD * 10000)
#define DEG_0001_TO_RAD(x) ((x / 10000) * RAD_PER_DEGREE)

// used for comparing floating point values
#define EPSILON_TOLERANCE_DOUBLE (0.001)
Expand Down
14 changes: 6 additions & 8 deletions src/PositionMonitor.c
Original file line number Diff line number Diff line change
Expand Up @@ -295,16 +295,14 @@ void Ros_PositionMonitor_CalculateTransforms(int groupIndex, long* pulsePos_moto
{
switch (group->baseTrackInfo.motionType[i])
{
case MOTION_TYPE_X: coordTrackTravel.x = track_pos_meters[i]; break;
case MOTION_TYPE_Y: coordTrackTravel.y = track_pos_meters[i]; break;
case MOTION_TYPE_Z: coordTrackTravel.z = track_pos_meters[i]; break;
case MOTION_TYPE_RX: coordTrackTravel.rx = track_pos_meters[i]; break;
case MOTION_TYPE_RY: coordTrackTravel.ry = track_pos_meters[i]; break;
case MOTION_TYPE_RZ: coordTrackTravel.rz = track_pos_meters[i]; break;
case MOTION_TYPE_X: coordTrackTravel.x = METERS_TO_MICROMETERS(track_pos_meters[i]); break;
case MOTION_TYPE_Y: coordTrackTravel.y = METERS_TO_MICROMETERS(track_pos_meters[i]); break;
case MOTION_TYPE_Z: coordTrackTravel.z = METERS_TO_MICROMETERS(track_pos_meters[i]); break;
case MOTION_TYPE_RX: coordTrackTravel.rx = RAD_TO_DEG_0001(track_pos_meters[i]); break;
case MOTION_TYPE_RY: coordTrackTravel.ry = RAD_TO_DEG_0001(track_pos_meters[i]); break;
case MOTION_TYPE_RZ: coordTrackTravel.rz = RAD_TO_DEG_0001(track_pos_meters[i]); break;
}
}
Ros_Debug_BroadcastMsg("coordTrackTravel.x = %.3f", coordTrackTravel.x);
Ros_Debug_BroadcastMsg("coordTrackTravel.y = %.3f", coordTrackTravel.y);
mpZYXeulerToFrame(&coordWorldToBase, &frameWorldToTrack);
mpZYXeulerToFrame(&coordTrackTravel, &frameTrackTravel);
mpZYXeulerToFrame(&group->baseTrackInfo.offsetFromBaseToRobotOrigin, &frameTrackToRobot);
Expand Down

0 comments on commit 9492838

Please sign in to comment.