Update of /cvsroot/playerstage/code/player/server/drivers/mixed/p2os
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7093
Modified Files:
p2os.cc
Log Message:
Added default arm geometry values for pioneer arm
Index: p2os.cc
===================================================================
RCS file: /cvsroot/playerstage/code/player/server/drivers/mixed/p2os/p2os.cc,v
retrieving revision 1.71
retrieving revision 1.72
diff -C2 -d -r1.71 -r1.72
*** p2os.cc 26 Jun 2006 05:23:35 -0000 1.71
--- p2os.cc 8 Jul 2006 03:03:58 -0000 1.72
***************
*** 234,238 ****
- Use velocity bands
- aa_basepos (3 floats)
! - Default: 0, 0, 0
- Position of the base of the arm from the robot centre in metres.
- aa_baseorient (3 floats)
--- 234,238 ----
- Use velocity bands
- aa_basepos (3 floats)
! - Default: (0.105, 0, 0.3185)
- Position of the base of the arm from the robot centre in metres.
- aa_baseorient (3 floats)
***************
*** 240,249 ****
- Orientation of the base of the arm from the robot centre in radians.
- aa_offsets (6 floats)
! - Default: all zero TODO: measure them
- Offsets for the actarray. Taken from previous actuator to current
actuator
(first should be from the actarray's base position). Each offset is a
straight line, not measured per axis.
- aa_orients (3x6 floats)
! - Default: all zero TODO: measure them
- Orientation of each actuator when it is at 0. Measured by taking a line
from
this actuator to the next and measuring its angles about the 3 axes of the
--- 240,249 ----
- Orientation of the base of the arm from the robot centre in radians.
- aa_offsets (6 floats)
! - Default: (0, 0.06875, 0.16, 0, 0.13775, 0.11321)
- Offsets for the actarray. Taken from previous actuator to current
actuator
(first should be from the actarray's base position). Each offset is a
straight line, not measured per axis.
- aa_orients (3x6 floats)
! - Default: all zero
- Orientation of each actuator when it is at 0. Measured by taking a line
from
this actuator to the next and measuring its angles about the 3 axes of the
***************
*** 251,266 ****
- Each set of three values is a single orientation.
- aa_axes (3x6 floats)
! - Default: all zero TODO: measure them
- The axis of rotation for each joint in the actarray.
- Each set of three values is a vector along the axis of rotation.
- limb_pos (3 floats)
! - Default: 0, 0, 0
- Position of the base of the arm from the robot centre in metres.
- limb_links (5 floats)
! - Default: 0.06875, 0.16, 0, 0.13775, 0.11321
- Offset from previous joint to this joint in metres.
e.g. the offset from joint 0 to joint 1 is 0.06875m, and from joint 1 to
joint 2 is 0.16m.
- limb_offsets (5 floats)
! - Default: 0, 0, 0, 0, 0
- Angular offset of each joint from desired position to actual position
(calibration data).
- Possibly taken by commanding joints to 0rad with actarray interface, then
measuring
--- 251,266 ----
- Each set of three values is a single orientation.
- aa_axes (3x6 floats)
! - Default: ((0,0,1), (0,1,0), (0,1,0), (0,1,0), (1,0,0), (0,1,0), (0,0,1))
- The axis of rotation for each joint in the actarray.
- Each set of three values is a vector along the axis of rotation.
- limb_pos (3 floats)
! - Default: (0.105, 0, 0.3185)
- Position of the base of the arm from the robot centre in metres.
- limb_links (5 floats)
! - Default: (0.06875, 0.16, 0, 0.13775, 0.11321)
- Offset from previous joint to this joint in metres.
e.g. the offset from joint 0 to joint 1 is 0.06875m, and from joint 1 to
joint 2 is 0.16m.
- limb_offsets (5 floats)
! - Default: (0, 0, 0, 0, 0)
- Angular offset of each joint from desired position to actual position
(calibration data).
- Possibly taken by commanding joints to 0rad with actarray interface, then
measuring
***************
*** 535,550 ****
// Actarray configuration
! for (int ii = 0; ii < 6; ii++)
! {
! aaOffsets[ii] = cf->ReadTupleFloat(section, "aa_offsets", ii, 0.0f);
! }
for (int ii = 0; ii < 18; ii++)
{
aaOrients[ii] = cf->ReadTupleFloat(section, "aa_orients", ii, 0.0f);
- aaAxes[ii] = cf->ReadTupleFloat(section, "aa_axes", ii, 0.0f);
}
! aaBasePos.px = cf->ReadTupleFloat(section, "aa_basepos", 0, 0.0f);
aaBasePos.py = cf->ReadTupleFloat(section, "aa_basepos", 1, 0.0f);
! aaBasePos.pz = cf->ReadTupleFloat(section, "aa_basepos", 2, 0.0f);
aaBaseOrient.proll = cf->ReadTupleFloat(section, "aa_baseorient", 0, 0.0f);
aaBaseOrient.ppitch = cf->ReadTupleFloat(section, "aa_baseorient", 1, 0.0f);
--- 535,578 ----
// Actarray configuration
! // Offsets
! aaOffsets[0] = cf->ReadTupleFloat(section, "aa_offsets", 0, 0.0f);
! aaOffsets[1] = cf->ReadTupleFloat(section, "aa_offsets", 1, 0.06875f);
! aaOffsets[2] = cf->ReadTupleFloat(section, "aa_offsets", 2, 0.16f);
! aaOffsets[3] = cf->ReadTupleFloat(section, "aa_offsets", 3, 0.0925f);
! aaOffsets[4] = cf->ReadTupleFloat(section, "aa_offsets", 4, 0.05f);
! aaOffsets[5] = cf->ReadTupleFloat(section, "aa_offsets", 5, 0.085f);
! // Orientations default: all zeros
for (int ii = 0; ii < 18; ii++)
{
aaOrients[ii] = cf->ReadTupleFloat(section, "aa_orients", ii, 0.0f);
}
! // Joint 0 default: (0, 0, 1)
! aaAxes[0] = cf->ReadTupleFloat(section, "aa_axes", 0, 0.0f);
! aaAxes[1] = cf->ReadTupleFloat(section, "aa_axes", 1, 0.0f);
! aaAxes[2] = cf->ReadTupleFloat(section, "aa_axes", 2, 1.0f);
! // Joint 1 default: (0, 1, 0)
! aaAxes[3] = cf->ReadTupleFloat(section, "aa_axes", 3, 0.0f);
! aaAxes[4] = cf->ReadTupleFloat(section, "aa_axes", 4, 1.0f);
! aaAxes[5] = cf->ReadTupleFloat(section, "aa_axes", 5, 0.0f);
! // Joint 2 default: (0, 1, 0)
! aaAxes[6] = cf->ReadTupleFloat(section, "aa_axes", 6, 0.0f);
! aaAxes[7] = cf->ReadTupleFloat(section, "aa_axes", 7, 1.0f);
! aaAxes[8] = cf->ReadTupleFloat(section, "aa_axes", 8, 0.0f);
! // Joint 3 default: (1, 0, 0)
! aaAxes[9] = cf->ReadTupleFloat(section, "aa_axes", 9, 1.0f);
! aaAxes[10] = cf->ReadTupleFloat(section, "aa_axes", 10, 0.0f);
! aaAxes[11] = cf->ReadTupleFloat(section, "aa_axes", 11, 0.0f);
! // Joint 4 default: (0, 1, 0)
! aaAxes[12] = cf->ReadTupleFloat(section, "aa_axes", 12, 0.0f);
! aaAxes[13] = cf->ReadTupleFloat(section, "aa_axes", 13, 1.0f);
! aaAxes[14] = cf->ReadTupleFloat(section, "aa_axes", 14, 0.0f);
! // Joint 5 default: (0, 0, 1)
! aaAxes[15] = cf->ReadTupleFloat(section, "aa_axes", 15, 0.0f);
! aaAxes[16] = cf->ReadTupleFloat(section, "aa_axes", 16, 0.0f);
! aaAxes[17] = cf->ReadTupleFloat(section, "aa_axes", 17, 1.0f);
! // Joint base position, orientation
! aaBasePos.px = cf->ReadTupleFloat(section, "aa_basepos", 0, 0.105f);
aaBasePos.py = cf->ReadTupleFloat(section, "aa_basepos", 1, 0.0f);
! aaBasePos.pz = cf->ReadTupleFloat(section, "aa_basepos", 2, 0.3185f);
aaBaseOrient.proll = cf->ReadTupleFloat(section, "aa_baseorient", 0, 0.0f);
aaBaseOrient.ppitch = cf->ReadTupleFloat(section, "aa_baseorient", 1, 0.0f);
***************
*** 554,560 ****
{
limb_data.state = PLAYER_LIMB_STATE_IDLE;
! armOffsetX = cf->ReadTupleFloat(section, "limb_pos", 0, 0.0f);
armOffsetY = cf->ReadTupleFloat(section, "limb_pos", 1, 0.0f);
! armOffsetZ = cf->ReadTupleFloat(section, "limb_pos", 2, 0.0f);
double temp1 = cf->ReadTupleFloat(section, "limb_links", 0, 0.06875f);
double temp2 = cf->ReadTupleFloat(section, "limb_links", 1, 0.16f);
--- 582,588 ----
{
limb_data.state = PLAYER_LIMB_STATE_IDLE;
! armOffsetX = cf->ReadTupleFloat(section, "limb_pos", 0, 0.105f);
armOffsetY = cf->ReadTupleFloat(section, "limb_pos", 1, 0.0f);
! armOffsetZ = cf->ReadTupleFloat(section, "limb_pos", 2, 0.3185f);
double temp1 = cf->ReadTupleFloat(section, "limb_links", 0, 0.06875f);
double temp2 = cf->ReadTupleFloat(section, "limb_links", 1, 0.16f);
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit