Using the iKin Cartesian interface with Vizzy

From ISRWiki
Revision as of 13:37, 13 September 2012 by Daragao (talk | contribs)
Jump to navigation Jump to search

Running the iKin Cartesian interface module

  1. On a shell go to the iKin Cartesian interface build directory.
  2. Run the server executable with the following parameters.
server --from [configFile]
  1. Run the solver executable with the following parameters.
solver --from [configFile]

The [configFile] should be replace with the path and file name of the configuration file

iKin Cartesian interface configuration files

Through the configuration files it is possible to determine which is the kinematic description that is needed and which of the parts are needed to control each of the arms.

The examples presented are for the left arm, the format is the same for the right arm with minor changes (basically changing the word "left" to "right").

Server config file

//the kinematics_file refers to the kinematics description file
kinematics_file	kinematics_left_arm.ini
robot			vizzy
//the part is either the left_arm or the right_arm
part			left_arm
//local port for the ikin server
local			cartesianController/left_arm
[GENERAL]
ControllerName		vizzy/cartesianController/left_arm
// the robot is simulated @ 100Hz, hence let s give it some margin to respond
// we ll lower a bit the controller s speed
ControllerPeriod	20
//the port name for to connect to the solver
SolverNameToConnect	cartesianSolver/left_arm
KinematicPart		custom
NumberOfDrivers	3
//for the vizzy robot to control the arms it needs this three parts
[DRIVER_0]
Key			torso
JointsOrder		direct

[DRIVER_1]
Key			left_shoulder
JointsOrder		direct

[DRIVER_2]
Key			left_arm
JointsOrder		direct

Solver config file

//the kinematics_file refers to the kinematics description file
kinematics_file	kinematics_left_arm.ini
robot		vizzy
//the part is either the left_arm or the right_arm
part		left_arm
//local port for the ikin solver
name		cartesianSolver/left_arm
period		30
dof		(1	1	1	1	1	1	1	1	1)
rest_pos	(0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0)
rest_weights	(0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0	0.0)
pose		xyz //full
mode		shot
verbosity	on
maxIter	200
tol		0.0001
xyzTol		0.00000001
interPoints	off
ping_robot_tmo	10.0

Kinematics description file

// 3-links planar manipulator
// note that it is not important to set the joints bound coherently with the hardware,
// since they will be aligned automatically at run-time through a call to getLimits()

H0 (1.0 0.0 0.0 0.0   0.0 0.0 -1.0 0.0  0.0 1.0 0.0 0.0   0.0 0.0 0.0 1.0)     // given per rows (Very precise MATLAB Matrix)

numLinks 9

link_0	(A 0.0)		(D 0.0805) 	(alpha -90.0) 	(offset 180.0) 	(min -20.0) 	(max 20.0)
link_1	(A 0.0)		(D -0.212) 	(alpha -90.0) 	(offset 0.0) 	(min -18.0) 	(max 18.0)
link_2	(A 0.0)		(D -0.10256) 	(alpha 90.0) 	(offset 90.0) 	(min -75.0) 	(max 135.0)
link_3	(A 0.0)		(D 0.0) 	(alpha -90.0) 	(offset -70.0)	(min 0.0) 	(max 75.0)
link_4	(A 0.0)		(D -0.16296) 	(alpha -90.0) 	(offset 90.0) 	(min -85.0) 	(max 85.0)
link_5	(A 0.0)		(D 0.0) 	(alpha 90.0) 	(offset 0.0) 	(min -0.0) 	(max 110.0)
link_6	(A 0.0)		(D -0.18925) 	(alpha 90.0) 	(offset 0.0) 	(min -85.0) 	(max 85.0)
link_7	(A 0.0)		(D 0.0) 	(alpha 90.0) 	(offset -90.0) 	(min -35.0) 	(max 35.0)
link_8	(A 0.100)	(D 0.0) 	(alpha -90.0) 	(offset 0.0) 	(min -35.0) 	(max 35.0)

<< Back to Vizzy wiki homepage