BowlerKernel
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
com.neuronrobotics.sdk.addons.irobot.CreateArm Class Reference
Collaboration diagram for com.neuronrobotics.sdk.addons.irobot.CreateArm:
Collaboration graph
[legend]

Public Member Functions

 CreateArm (ServoChannel[] links)
 
void home ()
 
void rest ()
 
void gripClose ()
 
void gripOpen ()
 
void setShouler (double angle)
 
void setElbow (double angle)
 
void setWrist (double angle)
 
void setAngles (double shoulder, double elbow, double wrist)
 
void setAngles (double shoulder, double elbow, double wrist, float time)
 
double[] getAngles ()
 
double[] getCartesianPose ()
 
String getCartesianPoseString ()
 
void setCartesianPose (double[] p)
 
void setCartesianPose (double[] p, float time)
 
void setCartesianPose (double x, double y, double orentation)
 
void setCartesianPose (double x, double y, double orentation, float time)
 
void setCartesianX (double x)
 
void setCartesianY (double y)
 
void setCartesianOrentation (double o)
 
double GetOrentation ()
 
void setCenters (double[] centers)
 
double[] getCenters ()
 
void setBlocking (boolean blocking)
 
boolean isBlocking ()
 
void setScale (double scale[])
 
double[] getScale ()
 

Private Member Functions

void check (ServoChannel[] links)
 
boolean updateCartesian (double x, double y, double orentation)
 
double sqrt (double d)
 
double atan2 (double y, double x)
 
double acos (double d)
 
double sin (double angle)
 
double cos (double angle)
 
double ToRadians (double degrees)
 

Private Attributes

double scale [] ={1.55,1.50,-1.76}
 
double[] positions =new double[4]
 
double[] angles =new double[3]
 
double[] pose =new double[3]
 
double[] centers ={134,136,128,48}
 
boolean blocking = false
 
double xyThreshHold = .1
 
double orentThreshHold = 1
 

Static Private Attributes

static final double l1 = 6.0
 
static final double l2 = 3.93
 
static final double l3 = 4.75
 
static final double M_PI = Math.PI
 

Detailed Description

The Class CreateArm.

Definition at line 25 of file CreateArm.java.

Constructor & Destructor Documentation

◆ CreateArm()

com.neuronrobotics.sdk.addons.irobot.CreateArm.CreateArm ( ServoChannel[]  links)

Instantiates a new creates the arm.

Parameters
linksthis is an array of servo channel links. 0th element is shoulder 1th element is elbow 2th element is is wrist 3th element is the gripper

Definition at line 76 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.check(), com.neuronrobotics.sdk.addons.irobot.CreateArm.getCartesianPose(), com.neuronrobotics.sdk.addons.irobot.CreateArm.home(), and com.neuronrobotics.sdk.addons.irobot.CreateArm.pose.

Here is the call graph for this function:

Member Function Documentation

◆ acos()

double com.neuronrobotics.sdk.addons.irobot.CreateArm.acos ( double  d)
private

Acos.

Parameters
dthe d
Returns
the double

Definition at line 456 of file CreateArm.java.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

◆ atan2()

double com.neuronrobotics.sdk.addons.irobot.CreateArm.atan2 ( double  y,
double  x 
)
private

Atan2.

Parameters
ythe y
xthe x
Returns
the double

Definition at line 446 of file CreateArm.java.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

◆ check()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.check ( ServoChannel[]  links)
private

◆ cos()

double com.neuronrobotics.sdk.addons.irobot.CreateArm.cos ( double  angle)
private

Cos.

Parameters
anglethe angle
Returns
the double

Definition at line 476 of file CreateArm.java.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.getCartesianPose(), and com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

◆ getAngles()

double [] com.neuronrobotics.sdk.addons.irobot.CreateArm.getAngles ( )

◆ getCartesianPose()

double [] com.neuronrobotics.sdk.addons.irobot.CreateArm.getCartesianPose ( )

◆ getCartesianPoseString()

String com.neuronrobotics.sdk.addons.irobot.CreateArm.getCartesianPoseString ( )

Gets the cartesian pose string.

Returns
the cartesian pose string

Definition at line 286 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.getCartesianPose(), and com.neuronrobotics.sdk.addons.irobot.CreateArm.pose.

Here is the call graph for this function:

◆ getCenters()

double [] com.neuronrobotics.sdk.addons.irobot.CreateArm.getCenters ( )

◆ GetOrentation()

double com.neuronrobotics.sdk.addons.irobot.CreateArm.GetOrentation ( )

Gets the orentation.

Returns
the current approach orientation of the wrist

Definition at line 495 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.angles, and com.neuronrobotics.sdk.addons.irobot.CreateArm.getAngles().

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.getCartesianPose().

Here is the call graph for this function:

◆ getScale()

double [] com.neuronrobotics.sdk.addons.irobot.CreateArm.getScale ( )

◆ gripClose()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.gripClose ( )

◆ gripOpen()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.gripOpen ( )

◆ home()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.home ( )

◆ isBlocking()

boolean com.neuronrobotics.sdk.addons.irobot.CreateArm.isBlocking ( )

◆ rest()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.rest ( )

◆ setAngles() [1/2]

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setAngles ( double  shoulder,
double  elbow,
double  wrist 
)

This takes angles in degrees and converts them to servo positions; Note: All zeros would be the arm completely horizontal, all links pointing out.

Parameters
shoulderthe shoulder
elbowthe elbow
wristthe wrist

Definition at line 182 of file CreateArm.java.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.home(), com.neuronrobotics.sdk.addons.irobot.CreateArm.rest(), com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose(), com.neuronrobotics.sdk.addons.irobot.CreateArm.setElbow(), com.neuronrobotics.sdk.addons.irobot.CreateArm.setShouler(), and com.neuronrobotics.sdk.addons.irobot.CreateArm.setWrist().

◆ setAngles() [2/2]

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setAngles ( double  shoulder,
double  elbow,
double  wrist,
float  time 
)

◆ setBlocking()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setBlocking ( boolean  blocking)

Sets the blocking.

Parameters
blockingthe new blocking

Definition at line 523 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.blocking.

◆ setCartesianOrentation()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianOrentation ( double  o)

Sets the cartesian orentation.

Parameters
othe new cartesian orentation

Definition at line 422 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.pose, and com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

Here is the call graph for this function:

◆ setCartesianPose() [1/4]

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose ( double  x,
double  y,
double  orentation 
)

Sets the cartesian pose.

Parameters
xthe x
ythe y
orentationthe orentation

Definition at line 323 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

Here is the call graph for this function:

◆ setCartesianPose() [2/4]

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose ( double  x,
double  y,
double  orentation,
float  time 
)

◆ setCartesianPose() [3/4]

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose ( double[]  p)

◆ setCartesianPose() [4/4]

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose ( double[]  p,
float  time 
)

Sets the cartesian pose.

Parameters
pthe p
timethe time

Definition at line 312 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

Here is the call graph for this function:

◆ setCartesianX()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianX ( double  x)

Sets the cartesian x.

Parameters
xthe new cartesian x

Definition at line 404 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.pose, and com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

Here is the call graph for this function:

◆ setCartesianY()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianY ( double  y)

Sets the cartesian y.

Parameters
ythe new cartesian y

Definition at line 413 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.pose, and com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

Here is the call graph for this function:

◆ setCenters()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setCenters ( double[]  centers)

Sets the centers.

Parameters
centersthe new centers

Definition at line 505 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.centers.

◆ setElbow()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setElbow ( double  angle)

Sets the elbow.

Parameters
angleset just the elbow angle

Definition at line 161 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.angles, and com.neuronrobotics.sdk.addons.irobot.CreateArm.setAngles().

Here is the call graph for this function:

◆ setScale()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setScale ( double  scale[])

Sets the scale.

Parameters
scalethe new scale

Definition at line 541 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.scale.

◆ setShouler()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setShouler ( double  angle)

Sets the shouler.

Parameters
angleset just the shoulder angle

Definition at line 152 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.angles, and com.neuronrobotics.sdk.addons.irobot.CreateArm.setAngles().

Here is the call graph for this function:

◆ setWrist()

void com.neuronrobotics.sdk.addons.irobot.CreateArm.setWrist ( double  angle)

Sets the wrist.

Parameters
angleset just the wrist angle

Definition at line 170 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.angles, and com.neuronrobotics.sdk.addons.irobot.CreateArm.setAngles().

Here is the call graph for this function:

◆ sin()

double com.neuronrobotics.sdk.addons.irobot.CreateArm.sin ( double  angle)
private

Sin.

Parameters
anglethe angle
Returns
the double

Definition at line 466 of file CreateArm.java.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.getCartesianPose(), and com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

◆ sqrt()

double com.neuronrobotics.sdk.addons.irobot.CreateArm.sqrt ( double  d)
private

Sqrt.

Parameters
dthe d
Returns
the double

Definition at line 435 of file CreateArm.java.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

◆ ToRadians()

double com.neuronrobotics.sdk.addons.irobot.CreateArm.ToRadians ( double  degrees)
private

To radians.

Parameters
degreesthe degrees
Returns
the double

Definition at line 486 of file CreateArm.java.

References com.neuronrobotics.sdk.addons.irobot.CreateArm.M_PI.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.getCartesianPose().

◆ updateCartesian()

boolean com.neuronrobotics.sdk.addons.irobot.CreateArm.updateCartesian ( double  x,
double  y,
double  orentation 
)
private

Update cartesian.

Parameters
xthe x
ythe y
orentationthe orentation
Returns
true, if successful

Definition at line 378 of file CreateArm.java.

References com.neuronrobotics.sdk.common.Log.info(), com.neuronrobotics.sdk.addons.irobot.CreateArm.orentThreshHold, com.neuronrobotics.sdk.addons.irobot.CreateArm.pose, and com.neuronrobotics.sdk.addons.irobot.CreateArm.xyThreshHold.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.setCartesianPose().

Here is the call graph for this function:

Member Data Documentation

◆ angles

double [] com.neuronrobotics.sdk.addons.irobot.CreateArm.angles =new double[3]
private

◆ blocking

boolean com.neuronrobotics.sdk.addons.irobot.CreateArm.blocking = false
private

◆ centers

double [] com.neuronrobotics.sdk.addons.irobot.CreateArm.centers ={134,136,128,48}
private

◆ l1

final double com.neuronrobotics.sdk.addons.irobot.CreateArm.l1 = 6.0
staticprivate

◆ l2

final double com.neuronrobotics.sdk.addons.irobot.CreateArm.l2 = 3.93
staticprivate

◆ l3

final double com.neuronrobotics.sdk.addons.irobot.CreateArm.l3 = 4.75
staticprivate

◆ M_PI

final double com.neuronrobotics.sdk.addons.irobot.CreateArm.M_PI = Math.PI
staticprivate

◆ orentThreshHold

double com.neuronrobotics.sdk.addons.irobot.CreateArm.orentThreshHold = 1
private

The orent thresh hold.

Definition at line 65 of file CreateArm.java.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.updateCartesian().

◆ pose

double [] com.neuronrobotics.sdk.addons.irobot.CreateArm.pose =new double[3]
private

◆ positions

double [] com.neuronrobotics.sdk.addons.irobot.CreateArm.positions =new double[4]
private

◆ scale

double com.neuronrobotics.sdk.addons.irobot.CreateArm.scale[] ={1.55,1.50,-1.76}
private

◆ xyThreshHold

double com.neuronrobotics.sdk.addons.irobot.CreateArm.xyThreshHold = .1
private

The xy thresh hold.

Definition at line 62 of file CreateArm.java.

Referenced by com.neuronrobotics.sdk.addons.irobot.CreateArm.updateCartesian().


The documentation for this class was generated from the following file: