Compounds | |
| class | AbsPosMC |
| class | ArmMC |
| class | Array |
| class | Array< Type > |
| This class is a generic template array class. More... | |
| class | ArtificialPotentialF |
| A function to calculate artificial potential field (APF). More... | |
| class | ATISensor |
| Derived class for ATI Force/Torque sensors. This class is derived from the abstract template class Sensor<Type>. Since this class is used to sense 6D end-effector force vectors accompanied by an error state, Sensor<Type> is customized to Sensor<Vector7> Note: This implementation of the ATI F/T sensor interfaces through the serial port. However, it can interface through DAQ too. The sensor controller supports tool transformations, temperature compensation, biasing, and a variety of error checking. More... | |
| class | Base |
| Acts as the base class for all OSCAR classes. More... | |
| class | BaseController |
| class | BezierCurve |
| This class can be used to generate Bezier Curves from provided control points. A Bezier Curve will interpolate the starting and end points and will stay within the convex hull of the control points. More... | |
| class | Bit3IO |
| class | Box |
| A box obstacle used for modeling of objects in workcells. More... | |
| class | BoxData |
| Reads and writes a Box to and from an XML data file. More... | |
| class | BSpline |
| This class can be used to generate B-Spline curves. B-Splines are an advanced curve form that allows for the order to be set by the user instead of being defined by the number of control points. The Bezier curve is a special form of the B-Spline. More... | |
| class | CartesianControl |
| class | CollisionDetection |
| Collision Detection Class. More... | |
| class | CollisionPoint |
| class | Cone |
| A cone primitive used for modeling of objects in workcells The cone (in its local frame) will be symmetric about the y axis and its total height will be centered at y=0 with the tip of the cone at y=height/2. The cone can then be moved in its local from by specifying a local transform. More... | |
| class | ConeData |
| Reads and writes a Cone to and from an XML data file. More... | |
| class | ConfigurationData |
| Stores a named joint configuration. More... | |
| struct | ControlParam |
| class | CoordinateSpace |
| Specifies the properties of a coordinate space. More... | |
| class | CoordinateVector |
| Create a vector that has coordinate space information. More... | |
| class | CriteriaProperties |
| class | CriteriaPropertiesRepository |
| CriteriaPropertiesRepository is a repository class which holds results \ calculated by the criteria to allow data sharing. More... | |
| class | CubicPoly |
| This class allows the user to create a cubic polynomial trajectory by specifying initial and final positions and accelerations. More... | |
| class | Cylisphere |
| A cylispherical object for use in robot or as obstacle. More... | |
| class | DeltaMC |
| class | DeltaWithForceMC |
| class | Diff |
| A class for numerically computing derivatives. More... | |
| class | DIO |
| Abstract class for Digital IO. More... | |
| class | DistanceCalculator |
| Interface class for Distance Calculators. More... | |
| class | DistanceResults |
| class | DistanceResultsRepository |
| DistanceResultsRepository is a repository which holds DistanceResults objects, which in turn contain the witness points between manipulators and their surroundings, unit vectors pointing from the manipulator witness points, the magnitude of the distance between witness points, and the G and H functions of the witness points. More... | |
| class | DLSEqnSolver |
| This class contains methods for calculating solutions to the linear system Ax=b. More... | |
| class | EqnSolver |
| This class contains methods for calculating solutions to the linear system Ax=b. More... | |
| class | FifthOrderPoly |
| This class allows the user to create a fifth order polynomial trajectory by specifying initial and final conditions for positions,velocities and accelerations. More... | |
| class | FixedSizeArray |
| A template class that allows the creation of specific type arrays with a defined fixed size. More... | |
| class | FixedSizeMatrix |
| A template class that allows the creation of specific matrices with a defined fixed size. More... | |
| class | FKAcceleration |
| class | FKJacobian |
| class | FKJacobianBase |
| class | FKJacobianMitsubishi |
| This class computes a semi closed-form of the Jacobian matrix for the Mitsubishi robot. More... | |
| class | FKJacobianPlanar3R |
| class | FKPosition |
| class | FKPositionBase |
| Interface class that specifes the minimum interface a derived class should have that implements a forward position solution. Derived classes can implement this interface and also inherit from Kinematics to implement additional functionality. More... | |
| class | FKPositionMitsubishi |
| This class contains the ForwardKinematics interface for a Mitsubishi manipulator. More... | |
| class | FKPositionPuma |
| This class contains the ForwardKinematics interface for a Puma manipulator. More... | |
| class | FKPositionSpatial3R |
| This class contains the ForwardKinematics interface for a Spatial 3R manipulator. More... | |
| class | FKVelocity |
| class | GeneralKinematicsHandler |
| class | HandPose |
| Represents a 6 element vector whose 1st 3 elements hold the X,Y,Z positions and the last three hold the orientation. More... | |
| class | HandPoseMotion |
| This class is designed specifically for developing Cartesian space End-Effector motion using HandPoses. More... | |
| class | HandPoseRepository |
| HandPoseRepository is a repository class which holds HandPose data calculated by the criteria to allow data sharing. More... | |
| class | IKCCD |
| class | IKDirectSearch |
| This class contains methods for calculating inverse position and velocity solutions for serial manipulators using the Resolved Rate technique. More... | |
| class | IKJacobian |
| This class contains methods for calculating inverse position and velocity solutions for serial manipulators using the Resolved Rate technique. More... | |
| class | IKJAvoidLimits |
| This class is used to calculate the inverse position solution using a weighting matrix based on the joint limits. More... | |
| class | IKJDLS |
| IKJacobian with Damped Least Square (DLS) technique. More... | |
| class | IKJGenerateOptions |
| Generates a set of inverse kinematics solutions for redundant serial manipulators. More... | |
| class | IKJReconfig |
| Used to calculate the inverse position solution using the active/inactive functionality. More... | |
| class | IKJTranspose |
| This class contains methods for calculating inverse position solutions for serial manipulators (especially low DOF manipulators) using the Jacobian Transpose technique. More... | |
| class | IKMitsubishi |
| IKMitsubishi Implements a closed form solution for a standard Mitsubishi Robot. More... | |
| class | IKPosition |
| IKPosition acts as the base class for inverse position functionality. More... | |
| class | IKPuma |
| IKPuma Implements a closed form solution for a standard Puma Robot. More... | |
| class | IKVelocity |
| IKVelocity acts as the base class for inverse velocity functionality. More... | |
| class | JointVector |
| Used to pass joint position values. More... | |
| class | KeyboardMC |
| class | Kinematics |
| class | KinematicsHandler |
| KinematicsHandler describes an abstract class for computing the forward and inverse kinematics of serial robot arms. This class also checks for position limits. User should derive a specific class from this or use the GeneralKinematicsHandler class that is derived from KinematicsHandler. This class and dervied classes implement functionality that computes the forward and inverse position solution. It also checks joint travel limits and singularities. Objects of this class will always maintain a valid joint state and the corresponding cartesian state. Inputs that violate position limits or lead to singularities will not lead to an erroneous state of the system. More... | |
| class | KraftMC |
| class | MagellanMC |
| class | Configuration |
| class | Control |
| class | ControlInformation |
| class | Controller |
| class | CTPDJointControl |
| class | CylisphereData |
| Reads and writes a Cylisphere to and from an XML data file. More... | |
| class | Device |
| class | DHData |
| Reads DH parameters from a data file or programmatically create them. More... | |
| class | Drill |
| Drill provides a C++ interface to the custom drill tool for the Robotics Research Arm. This class uses DIO abstract class for IO with the drill. The tool frame for the drill is also set during the construction of this object. A call to GetToolFrame will return the tool frame. The units in which the tool frame is returned are inches. The base plate of the drill is defined in the XY plane, with the Z axis from the drill base plate to the center contact point of the drill. More... | |
| class | DynamicScaling |
| This class allows the user to scale joint trajectories to meet velocity, acceleration or torque limits. Time is scaled. More... | |
| class | EEPerturbation |
| This class creates a series of options in a sphere around the end-effector. More... | |
| class | ForwardDynamics |
| A class to calculate forward dynamics dynamic simulation purposes. More... | |
| class | GeneralKeyboard |
| class | IDLagrange |
| Inverse dynamics using Lagrange. More... | |
| class | IDNewtonEuler |
| Inverse dynamics using Newton-Euler. More... | |
| class | IDSANewtonEuler |
| Standalone inverse dynamics using Newton-Euler. More... | |
| class | IDStandAlone |
| An abstract class for stand-alone inverse dynamics. More... | |
| class | ImpedanceControl |
| class | ImpedanceFilter |
| class | Integrator |
| Integrator class is used to solve an ODE problem, i.e. More... | |
| class | InverseDynamics |
| An abstract class for calculating inverse dynamics. All the calculated torque values are the "required" actuator torques (not the torques acting on the actuators). More... | |
| class | JointControl |
| class | KB2017Interface |
| class | Limit |
| class | Limits |
| A Limits object is used to store binary limits data for robot joints. These include min and max. These limits are generally used for Position, Velocity, Current, Acceleration and Torque. In additon to limits, the Limits object can also contain the excess error associated with a joint. These excess errors can be specified for all different limits type. Generally, they are specified for position and current. More... | |
| class | LimitsData |
| Reads Limits data from a data file or programmatically create them. LimitsType template argument should either be "Position", "Velocity", "Acceleration", "Current", or "Torque". More... | |
| class | LimitStatusArray |
| class | MachineInterface |
| class | ManipulatorData |
| Reads a manipulator model from a data file or programmatically create them. More... | |
| class | ManualController |
| class | Matrix |
| This class is a 2D array of doubles that contains the appropriate functionality for managing robotics data. More... | |
| class | MatrixCol |
| This class creates a pointer to a column in a Matrix. More... | |
| class | MatrixData |
| Reads data from a file that is represented in matrix format. More... | |
| class | MatrixRepository |
| MatrixRepository is a repository class which holds vector data calculated by the criteria to allow data sharing. More... | |
| class | MatrixRow |
| This class creates a pointer to a row in a Matrix. More... | |
| class | MCDIO |
| Class for digital IO using Measurement Computing DAQ boards. More... | |
| class | ModelingObject |
| Abstract base class for Primitives and Nodes. | |
| class | ModelingObjectMap |
| Contains an STL map which indexes the name of ModelingObjects (Nodes and Primitives) with their address. Useful for finding the address of a modeling Node or Primitive just by knowing its name. The key to the STL map is an OSCAR::String, the data type being stored is ModelingObject*. More... | |
| class | MotionParameters |
| This class is used to store the parameters used for generating trajectories. These parameters include: total time for trajectory, sampling time, a vector of start positions, a vector of stop positions, and a filename/matrix of motion constraints. This class is passed to the OfflineMotionPlanner before calculating a trajectory. More... | |
| class | MotionPlanner |
| class | NiDaqIO |
| This class is used to interface with NI DAQ IO boards. More... | |
| class | NIDIO |
| Class for digital IO using National Instruments DAQ boards. More... | |
| class | Node |
| A Node a tree modeling structure containing instances of the primitives and child nodes, as well as methods to update the locations of the Node and the modeling objects contained within this Node and its children. Basically, a Node has a list of Node's inside it. This list of nodes constitutes its children. A Node also has a list of Primitive's in it. This list of Primitives constitutes the obstacles associated with just itself. More... | |
| class | NodeObstacleData |
| Reads a node's obstacle model. A node can have primitive shapes in it and also children nodes. More... | |
| class | ObAvData |
| Contains the functionality to read/write data from/to a file for obstacle avoidance. More... | |
| class | ObAvInfo |
| Holds results of manipulator-obstacle distance calculations. More... | |
| class | ObAvInfoRepository |
| ObAvInfoRepository is a repository which holds ObAvInfo objects, which in turn contain the witness points between manipulators and their surroundings, unit vectors pointing from the manipulator witness points, the magnitude of the distance between witness points, and the G and H functions of the witness points. More... | |
| class | OfflineMotionPlanner |
| This class is used for generating and storing trajectories off-line (not in real-time). More... | |
| class | OnlineMotionPlanner |
| class | Orientation |
| Represents a 3 long vector whose elements hold the spatial orientation. More... | |
| class | OSCARError |
| Defines an error object that contains an integer value and an error description. More... | |
| class | OSCARXMLErrorReporter |
| class | ParabolicBlend |
| This class can be used to develop a parabolic blend through a set of control points. This creates a smooth 3rd degree curve that passes through each of the control points with C1 continuity. More... | |
| class | PathBlend |
| This class implements the constant velocity path blending technique developed R. H. Taylor in "Planning and Execution of Straight-Line Manipulator Trajectories." This class will develop a trajectory that smoothly interpolates straight line motions through a set of via points. More... | |
| class | PCAccelerationLimitsAvoidance |
| PCAccelerationLimitsAvoidance is a class for criteria which avoids the acceleration limits for the joints on a manipulator. PCAccelerationLimitsAvoidance is derived from PCVectorLimits. It is a class that computes the manipulator's distance from acceleration limits. More... | |
| class | PCADistToEEWrench |
| PCADistToEEWrench is derived from PCADistToTorque and PCJacobianPseudoInverse. More... | |
| class | PCADistToEEWrenchD1 |
| PCADistToEEWrenchD1 is derived from PCADistToTorque and PCJacobianPseudoInverse. This class is not currently functional and can not be instantiated. More... | |
| class | PCADistToForce |
| PCADistToForce computes the joint Forces/forces based on distances to surrounding obstacles. More... | |
| class | PCADistToForceD1 |
| PCADistToForceD1 is derived from PCADistToForce. More... | |
| class | PCADistToTorque |
| PCADistToTorque computes the joint torques/forces based on distances to surrounding obstacles. More... | |
| class | PCADistToTorqueD1 |
| Computes the first derivative of the torques due to artificial forces. This class is not currently functional. More... | |
| class | PCAverageDistReciprocal |
| PCAverageDistReciprocal calculates the average of the reciprocal of the minimum distance from the robot arm to obstacles. More... | |
| class | PCAWorkCell |
| PCAWorkCell uses a WorkCell to compute and store the obstacle avoidance information (see DistanceResults). More... | |
| class | PCCompliance |
| PCCompliance is an abstract class for criteria which are based on the compliance matrix. PCCompliance is derived from PCJacobian. It is an intermediate abstract class that contains the functionality to compute the compliance matrix necessary for certain criteria. More... | |
| class | PCComplianceEigenVectors |
| PCComplianceEigenVectors is an abstract class for criteria which are based on the eigenvalues or eigenvectors of the compliance matrix. PCComplianceEigenVectors is derived from PCCompliance. It is an intermediate abstract class that contains the functionality to compute the eigenvalues and eigenvectors for compliance certain criteria. This class is only available if you are using the Matrix class that uses Matlab libraries. More... | |
| class | PCDexterity |
| PCDexterity is a criteria which is based on the condition number of the Jacobian, minimum and maximum eigenvalues. The condition number specifies the Jacobian's sensitivity to error, therefore well-conditioned Jacobians are less likely to produce significant error for any specified motion. Dexterity minimizes any error at the EEF due to errors in the actuators. Another definition is the EEF's ability to react to any commanded position equally well. Since it is based on Jacobian eigenvalues, it also indicates proximity to a singulatity. PCDexterity is derived from PCJacobianEigenValues. More... | |
| class | PCDirectionalEEFStiffness |
| PCDirectionalEEFStiffness is a criteria that evaluates stiffness in a given direction. Knowing the direction of force will allow the manipulator to reorient itself in a stiffer orientation. PCDirectionalEEFStiffness is derived from PCComplianceEigenVectors. More... | |
| class | PCEEFInertia |
| PCEEFInertia is an intermediate class for criteria which are based on the Transferred EEF Inertia matrix. PCEEFInertia is derived from RRCInertia. It is an intermediate abstract class that contains the functionality to compute the transfer the Inertia matrix to the EEF necessary for certain criteria. More... | |
| class | PCEEFKineticEnergy |
| PCEEFKineticEnergy is a criteria which is based on the transferred inertia matrix and the velocity of the end-effector. This criteria attempts to minimize the kinetic energy in the direction of motion ofthe EEF. PCEEFKineticEnergy is derived from PCEEFInertia. More... | |
| class | PCEEWrench |
| PCEEWrench is derived from PCADistToEEWrench. More... | |
| class | PCEEWrenchD1 |
| PCEEWrenchD1 is derived from PCAWorkCell. More... | |
| class | PCFilter |
| PCFilter should be used to filter using multiple criteria. It can be used to choose the first solution which passes all critical limits or it can be placed in a fusion scheme to filter solutions before another PC or Fusion object chooses the optimal solution. It is derived from PerformanceCriteria so the same methods are available. By deriving from PerformanceCriteria it allows multiple PCFilters to be further fused to allow more complicated combinational RRTs. More... | |
| class | PCForceTransmissibility |
| PCForceTransmissibility is a criteria which is based on the jacobian and force direction of the end-effector. This criteria attempts to maximize the ease with which joint torques are transmitted to the EEF force. PCForceTransmissibility is derived from PCJacobian. More... | |
| class | PCFusion |
| PCFusion should be used to fuse multiple criteria into a single metric to allow optimal solution selection. PCFusion is setup to be as general as possible to allow many different redundancy resolution techniques. It is derived from PerformanceCriteria so the same methods are available. By deriving from PerformanceCriteria it allows multiple PCFusion or PCFilter objects to be further fused to allow more complicated combinational RRTs. More... | |
| class | PCGeneralizedDynamicEfficiency |
| PCGeneralizedDynamicEfficiency is a criteria based upon the ratio of the largest inertial eigenvalue and the largest jacobian eigenvalue. The purpose of this criterion is to minimize joint torques in terms of inertial loading. PCGeneralizedDynamicEfficiency is derived from PCInertiaEigenValues and PCJacobianEigenValues. More... | |
| class | PCGeneralizedInertialEfficiency |
| PCGeneralizedInertialEfficiency is a criteria based upon the largest inertial eigenvalue. PCGeneralizedInertialEfficiency is derived from PCInertiaEigenValues. More... | |
| class | PCGeneralizedStiffness |
| PCGeneralizedStiffness is a criteria that evaluates the overall stiffness of a give manipulator configuration. It is done by taking the frobenius norm of the stiffness matrix. PCGeneralizedStiffness is derived from PCCompliance. More... | |
| class | PCGeneralizedTorqueMinimization |
| PCGeneralizedTorqueMinimization is a criteria based upon the Inertia and JacobianPseudoInverse matrices. The infinity norms of the Inertia and JacobianPseudoInverse matrices are multiplied together to get an estimate on the necessary torque to move the manipulator from one configuration to another. PCGeneralizedTorqueMinimization is derived from PCInertia and PCJacobianPseudoInverse. More... | |
| class | PCGeneralizedVelocityMinimization |
| PCGeneralizedVelocityMinimization is a criteria based upon the JacobianPseudoInverse, that aims to reduce joint velocities. It only takes the largest row sum of the pseudoinverse which is the largest transformation of a joint velocity. This criteria does not actually calculate velocities so there is no check to make sure operation velocity limits are not violated. PCGeneralizedVelocityMinimization is derived from PCJacobianPseudoInverse. More... | |
| class | PCInertia |
| PCInertia is an abstract class for criteria which are based on the inertia matrix. PCInertia is derived from PerformanceCriteria. It is an intermediate abstract class that contains the functionality to compute the inertia matrix necessary for certain criteria. More... | |
| class | PCInertiaEigenValues |
| PCInertiaEigenValues is an abstract class for criteria which are based on the inertia eigenvalues. PCInertia is derived from PCInertia. It is an intermediate abstract class that contains the functionality to compute the inertia eigenvalues necessary for certain criteria. More... | |
| class | PCInertialFrobeniusNorm |
| PCInertialFrobeniusNorm takes the frobenius norm of the iStar inertia matrix. Minimizing the effective inertia matrix leads to a decrease in the kinetic energy of the system. PCGeneralizedTorqueMinimization is derived from PCInertia. More... | |
| class | PCInverseMeasureOfTransmissibility |
| PCInverseMeasureOfTransmissibility is a criteria which is based on determinant of the jacobian. This criteria attempts to maximize the ease with which joint velocities are transmitted to the EEF velocities. This criteria is computationally fast and can have multiple physical meanings. Because of the dual nature of the Jacobian, transmission transmissibility or velocity transmissibility could be optimized. The determinant is also an indicator of proximity to a singularity. PCInverseMeasureOfTransmissibility is derived from PCJacobian. More... | |
| class | PCJacobian |
| PCJacobian is an abstract class for criteria which are based on the jacobian. PCJacobian is derived from PerformanceCriteria. It is an intermediate abstract class that contains the functionality to compute jacobians. Derived classes update the necessary repositories by calling the protected method update(). More... | |
| class | PCJacobianEigenValues |
| PCJacobianEigenValues is an intermediate abstract class which adds the functionality to calculate jacobian eigenvalues. PCJacobianEigenValues is derived from PCJacobian. More... | |
| class | PCJacobianFrobeniusNorm |
| PCJacobianFrobeniusNorm is a criteria which is based on the frobenius norm of the Jacobian matrix. This criterion can be viewed as a generalized efficiency criterion for both velocity and torque transmission. Mitch Pryor suggests this is the most effective criteria in terms of avoiding singularities. PCJacobianFrobeniusNorm is derived from PCJacobian. More... | |
| class | PCJacobianPseudoInverse |
| PCPseudoInverse is an intermediate abstract class which adds the functionality to calculate jacobian pseudoinverses. PCJacobianPseudoInverse is derived from PCJacobian. More... | |
| class | PCJointRangeAvailability |
| PCJointRangeAvailability is a criteria which calculates the distance from the joint limits of a manipulator. PCJointRangeAvailability is derived from PCVectorLimits. The methods to get and set individual joint parameters are in PCVectorLimits. More... | |
| class | PCJointTorque |
| Minimizes joint torques due to artificial forces. More... | |
| class | PCKeyboard |
| class | PCKeyboardMC |
| class | PCKineticEnergy |
| PCKineticEnergy calculates the kinetic energy of the manipulator using the iStar inertia matrix and the current positions. Time is not explicitly included in the formulation, so the criteria value is not the true kinetic energy value, but allows solutions to be ranked. It could easily be modified to take into account time. PCKineticEnergy is derived from PCInertia. More... | |
| class | PCLinkForce |
| PCLinkForce minimizes the average of the artificial forces acting on the links. More... | |
| class | PCLoadTorqueMinimization |
| PCLoadTorqueMinimization is a criteria which is based on the Jacobian matrix. This criterion attempts to reduce the actuator torques due to the load at the EEF. PCLoadTorqueMinimization is derived from PCJacobian. More... | |
| class | PCMagneticEEF |
| PCMagneticEEF is a criteria which calculates the distance to a point. PCMagneticEEF works like a magnet attracting the EEF to the specified point or repelling the EEF from an obstacle. More... | |
| class | PCMeasureOfTransmissibility |
| PCMeasureOfTransmissibility is a criteria which is based on determinant of the jacobian. This criteria attempts to maximize the ease with which joint velocities are transmitted to the EEF velocities. This criteria is computationally fast and can have multiple physical meanings. Because of the dual nature of the Jacobian, transmission transmissibility or velocity transmissibility could be optimized. The determinant is also an indicator of proximity to a singularity. PCMeasureOfTransmissibility is derived from PCJacobian. More... | |
| class | PCPotentialEnergy |
| PCPotentialEnergy is a criteria that calculates the potential energy in the manipulator due to deflections. Deflections due to forces at the EEF are the only deflections considered. Minimizing this criteria should reduce deflections due to loads at the EEF. PCPotentialEnergy is derived from PCCompliance. More... | |
| class | PCRoboworksInterface |
| This class multiply inherits from RoboworksInterface and PowerCubeBase classes. This is an interface for PowerCube simulation (when simulation is done in Roboworks.). It has following functionality. -Object construction and initialization -Homing -Resetting -Halting -Getting and setting positions of modules and gripper(if any) Note: for giving position commands call SetServoValue() (See RobotServoInterface.h). The implementation is in SetPosition(). More... | |
| class | PCSHandPose |
| class | PCSingularityAvoidance |
| PCSingularityAvoidance is a criteria which is based on the minimum eigenvalue of the Jacobian. Exclusively tracking the minimum singular value may exhibit a better indication of a manipulator's nearness to a mathematical singularity. Transmissibilty can be improved by maximizing the distance from singularities, therefore minimizing the joint torques required to maintain a desired EEF force. PCSingularityAvoidance is derived from PCJacobianEigenValues. More... | |
| class | PCSmallestMinDist |
| PCSmallestMinDist calculates the minimum distance from the robot arm to any obstacle in the environment. More... | |
| class | PCTorqueLimitsAvoidance |
| PCTorqueLimitsAvoidance is a class for criteria which avoids the torque limits for the joints on a manipulator. PCTorqueLimitsAvoidance is derived from PCVectorLimits. It is a class that computes the manipulator's distance from torque limits. More... | |
| class | PCVectorLimits |
| PCVectorLimits is an abstract class for criteria which avoids the limits of a vector. More... | |
| class | PCVelocityLimitsAvoidance |
| PCVelocityLimitsAvoidance is a class for criteria which avoids the velocity limits for the joints on a manipulator. PCVelocityLimitsAvoidance is derived from PCVectorLimits. It is a class that computes the manipulator's distance from velocity limits. More... | |
| class | PCVelocityTransmissibility |
| PCVelocityTransmissibility is a criteria which is based on the jacobian pseudo-inverse and the velocity of the end-effector. This criteria attempts to maximize the efficiency with which joint velocities are transmitted to the EEF velocity. PCVelocityTransmissibility is derived from PCJacobian. More... | |
| class | PerformanceCriteria |
| PerformanceCriteria should be used to select a solution from a set of options for a manipulator. More... | |
| class | Perturbation |
| Perturbation can be called to generate patterned perturbations for Vector and RRJointVector. More... | |
| class | Plane |
| Define a planar primitive for use in robot obstacle avoidance. More... | |
| class | PlaneData |
| Reads and writes a Plane to and from an XML data file. More... | |
| class | Polytope |
| Class for STL based polytope obstacle models Currently an empty class which can be instantiated but can not be used for anything useful. More... | |
| class | PolytopeData |
| Reads and writes a Polytope to and from an XML data file. More... | |
| class | PowerCubeBase |
| This is an abstract class for Amtec's PowerCube Interface (both hardware and simulation modules inherit from this class.) having following functionality -Initialization -Homing -Resetting -functionality related to gripper -retrieving and setting different attributes (like current limits). More... | |
| class | PowerCubeInterface |
| This class, derived from PowerCubeBase class, implements the software interface to control mechanism/robot hardware assembled from PowerCube modules manufactured by Amtec Robotics (http://www.amtec-robotics.com/index.html) that is part of the Schunk group(http://www.schunk.com/). More... | |
| class | Primitive |
| Base for geometric primitives. | |
| class | Quaternion |
| Used to reperesent a quaternion rotation. More... | |
| class | RedundantKinematicsHandler |
| class | Relay |
| class | Repository |
| Repository is a base repository class from which all repository types will derive. These repositories store data computed by the criteria in order to prevent repeat calculations. All computational ability is in the performance criteria - repositories store data only. Repository contains the functionality to keep track of whether the repository has been updated. The methods to get and set the data members inside the repository were placed in the derived template class TypeRepository so the same methods could be used for several repository types. The reason this base class is necessary is because RepositoryList cannot point to a template class. More... | |
| class | RepositoryList |
| RepositoryList is a list which holds Repository objects. This list will be passed to criteria to give them a place to read and write data for criteria computations. More... | |
| class | RK4 |
| fixed step size Runge Kutta Integrator Used to integrate ODEs in a manner similar to ode45 in matlab More... | |
| class | RobixInterface |
| class | RobotData |
| Acts as the base class for all classes that are used to read and parse data files. More... | |
| class | RobotServoInterface |
| class | RoboworksInterface |
| class | Rot3by3 |
| This class is used to represent a 3x3 rotation matrix. More... | |
| class | RRMotionPlan |
| This class is the base class for the Motion Planning library. It contains the functionality for setting the motion parameters and performs some of the low level calculations. More... | |
| class | RROnlineMotionPlanner |
| This class defines the base interface for performing online motion planning. This class is not currently implemented. More... | |
| class | RRStatics |
| An abstract class for calculating static forces. More... | |
| class | RSIMC |
| class | RungeKutta |
| class | Saw |
| Saw provides a C++ interface to the custom saw tool for the Robotics Research Arm. This class uses Digital IO hardware for IO with the saw. The tool frame for the saw is also set during the construction of this object. A call to GetToolFrame will return the tool frame. The units in which the tool frame is returned are inches. The tool point for the saw is defined as point on the leading edge of the skid plate of the saw which is colinear with the saw blade. More... | |
| class | ScalarRepository |
| ScalarRepository is a repository class which holds scalar data calculated by the criteria to allow data sharing. More... | |
| class | ScaleInverseF |
| \ ScaleInverseF One type of APF where Scalar function goes as the inverse of the argument The function is F(x) = k*[(mx-mn)/(x-mn)]^z + thresh, so that as (x->inf), (F(x)->thresh), (x=mx), (F(x) = k + thresh), and as (x->mn), (F(x)->inf). Note: this function object does not check for x < mn. A special case is when k=1, z=1, mx=1, mn=0, and thresh=0, then F(x) = 1/x. | |
| class | ScaleInverseVanishF |
| \ ScaleInverseVanishF One type of APF where Scalar function starts from infinity at a certain value and decreases as the argument grows until vanishing completely at a certain value. The function is F(x) = k*[(mx-x)/(x-mn)]^z + thresh, so that if (x>=mx), (F(x) = thresh), and as (x->mn), (F(x)->inf). If thres = 0, then it means that APF will have no effect when x >= mx. Note: this function object does not check for x < mn. | |
| class | Sensor |
| Base class for all Sensors. Each Sensor should be derived from this class and should support all the methods. More... | |
| class | ServoInterface |
| class | Shared |
| class | SimpleObAv |
| class | Simulator |
| class | SkeletalPrimitive |
| Base for skeletal geometric primitives. More... | |
| class | SpaceballMC |
| class | SpatialXform |
| This class represents a 6 by 6 spatial transformation matrix. More... | |
| class | SpecificationsData |
| Reads specifications for a particular system (robot, tool, etc.) from a data file or programmatically create them. More... | |
| class | Sphere |
| Define a spherical primitive for use in robot obstacle avoidance. More... | |
| class | SphereData |
| Reads and writes a Sphere to and from an XML data file. More... | |
| class | Spline |
| An abstract class defining the base-level interface for spline curve generation. This includes the ability to set, insert, and delete the control points. More... | |
| class | SprayGun |
| SprayGun provides a C++ interface to the custom spray gun tool for the Robotics Research Arm. This class uses digitial IO data-acquisition hardware for IO with the spray gun. The tool frame for the spray gun is also set during the construction of this object. A call to GetToolFrame will return the tool frame. The units in which the tool frame is returned are inches. The tool point for the spray gun is defined at the output nozzle of the spray gun. More... | |
| class | TCP |
| This class contains base interface for TCP/IP communication. More... | |
| class | TCPClient |
| This class contains functionality for setting up a TCP client. More... | |
| class | TCPServer |
| This class contains functionality for setting up a TCP server. More... | |
| class | Tensor |
| Represents a tensor (basically an array of matrices). More... | |
| class | TensorData |
| Reads data from a file that is represented in tensor format (array of matrices). More... | |
| class | TensorRepository |
| TensorRepository is a repository class which holds tensor data calculated by the criteria to allow data sharing. More... | |
| class | ThreeStateTool |
| Base class for all tools that support Forward, Reverse, and Off functionality. More... | |
| class | Timer |
| Measures code execution time. More... | |
| class | Tool |
| Base class for all end effector tools. Each tool should be derived from this class and should support all the methods. More... | |
| class | ToolChanger |
| ToolChanger provides a C++ interface to the tool changers mounted on the Robotics Research Arm. This class uses ditial IO data-acquisition drivers for IO with the tool changers. The tool frame for the ToolChangers is also set during the construction of this object. A call to #GetToolFrame will return the tool frame. The units in which the tool frame is returned are inches. The base plate of the tool changer is defined in the XY plane, with the Z axis from the tool changer base plate towards the tool attachment plate. More... | |
| class | ToolData |
| Reads a tool model from a data file or programmatically create them. More... | |
| class | TOSMC |
| class | TwoStateSwitch |
| Base class for all switches that support On and Off functionality. More... | |
| class | TwoStateTool |
| Base class for all tools that support Forward (On) and Off functionality. More... | |
| class | TypeRepository |
| TypeRepository is a repository template class which holds the functionality for retrieving and setting data in the repositories. Derived classes will set the template type and allocate the type size depending on needs. The type has to be a pointer so get and set methods will be taking or returning pointers. More... | |
| class | Vector3 |
| Represents a spatial position vector. More... | |
| class | VectorArray |
| Stores arrays of vectors. More... | |
| class | VectorNumeric |
| Represents a vector. More... | |
| class | VectorRepository |
| VectorRepository is a repository class which holds vector data \ calculated by the criteria to allow data sharing. More... | |
| class | WorkCell |
| Contains a geometric description of the work cell (from an ObAvData object) and computes witness points (minimum distances between robots and other models) and derivatives of witness points (stored in an ObAvInfo object). More... | |
| class | WorkcellData |
| Reads a Workcell model from a data file or programmatically create them. More... | |
| class | Xform |
| Defines a 4 by 4 homogeneous transformation matrix. More... | |
| class | XMLData |
| Reads OSCAR specific data specifiedf in XML This is the base class for all data to be loaded in XML format. This class sets up the XML parser (Xerces), sets its properties (validation, schema, etc.) sets namespace, etc. Dervied classes have to define the parseParameters method for the specific data they are loading. More... | |
| class | XMLDHData |
| Reads DH parameters from a data file or programmatically create them. More... | |
Typedefs | |
| typedef std::string | String |
| typedef Array< Vector7 > | Vector7Array |
| typedef Array< int > | ArrayI |
| typedef Tensor * | TensorP |
| typedef unsigned long | ADDR |
| typedef char | Control8Bit |
| typedef short | Control16Bit |
| typedef float | Control32Bit |
| typedef VectorNumeric< Control8Bit > | Control8BitArray |
| typedef VectorNumeric< Control16Bit > | Control16BitArray |
| typedef VectorNumeric< Control32Bit > | Control32BitArray |
| typedef Array< enum CoordinateStatus > | CoordinateStatusArray |
| typedef double * | DoubleP |
| typedef Matrix * | Matrixp |
| typedef Array< bool > | BoolArray |
| typedef Array< char > | CharArray |
| typedef VectorNumeric< unsigned int > | VectorUINT |
| typedef VectorNumeric< int > | VectorI |
| typedef VectorNumeric< float > | VectorF |
| typedef VectorNumeric< double > | VectorD |
| typedef VectorNumeric< double > | Vector |
| typedef Vector3 | Vector3D |
| typedef FixedSizeArray< Vector, 7 > | Vector7 |
| typedef Vector * | VectorP |
| typedef std::vector< Vector3 > | Vector3vec |
| typedef std::list< Node * > | NodeList |
| typedef std::list< Primitive * > | PrimitiveList |
| typedef FixedSizeArray< Vector, 6 > | EEFVelocity |
| typedef FixedSizeArray< Vector, 6 > | ForceDirection |
| typedef std::map< String, Repository * > | RepositoryMap |
Enumerations | |
| enum | LimitStatus { MinLimitViolation = -1, NoLimitViolation = 0, MaxLimitViolation = 1 } |
| enum | CartesianCoordinateMode { World, Tool, Part } |
| enum | CoordinateStatus { Active = true, Inactive = false } |
| enum | AngleUnits { Radians = 1, Degrees = 2 } |
| enum | HandPoseInterp { NormalInterp, QuaternionLERP, QuaternionSLERP } |
| enum | fileEnums { ROBOT, BRANCH, OBSTACLE, SPHERE, CYLISPHERE, PLANE, BOX, RADIUS, FRAME, OBSTPOINT, INVALID } |
| enum | MinOrMax { Minimize, Maximize } |
Functions | |
| template<class err_t> err_t & | DUMMY_ERROR (const err_t &theError) |
| void | DisplayError (const String &eString) |
| void | DisplayDebug (const String &debugString) |
| void | DisplayTrace (const String &traceString) |
| void | DisplayError (const OSCARError &err) |
| void | Display (const String &dispString) |
| template<class T> void | Input (T &t) |
| std::ostream & | operator<< (std::ostream &strm, const OSCARError &err) |
| OSCARError | operator+ (const OSCARError &e1, const OSCARError &e2) |
| template<class T> String | ToString (const T &t) |
| int | ByteSwap (int in) |
| float | ByteSwap (float in) |
| double | ByteSwap (double in) |
| void | ByteSwap (Vector &v) |
| void | ByteSwap (VectorF &v) |
| void | ByteSwap (VectorI &v) |
| std::ostream & | operator<< (std::ostream &out, const DHData &D) |
| std::ostream & | operator<< (std::ostream &out, const MatrixData &M) |
| OSCARError | fromException (const DOMException &toCatch) |
| OSCARError | fromException (const XMLException &toCatch) |
| OSCARError | fromException (const SAXParseException &toCatch) |
| std::ostream & | operator<< (std::ostream &out, const TensorData &T) |
| template<class Type> std::ostream & | operator<< (std::ostream &os, const Array< Type > &a) |
| template<class Type> std::istream & | operator>> (std::istream &is, Array< Type > &a) |
| std::istream & | operator>> (std::istream &is, bool &b) |
| Vector | GetRow (unsigned int row, const Matrix &m) |
| Vector | GetCol (unsigned int col, const Matrix &m) |
| void | GetRow (Vector &result, unsigned int row, const Matrix &m) |
| void | GetCol (Vector &result, unsigned int col, const Matrix &m) |
| Vector3 | Cross3 (const Vector3 &v1, const Vector3 &v2) |
| Vector3 | Cross3Unit (const Vector3 &v1, const Vector3 &v2) |
| Matrix | operator * (double a, const Matrix &m) |
| Vector3 | operator * (const Xform &lhs, const Vector3 &rhs) |
| void | Multiply (const Xform &lhs, const Vector3 &rhs, Vector3 &result) |
| template<class Type> VectorNumeric< Type > | operator * (Type a, const VectorNumeric< Type > &v) |
| template<class To, class From> To | Convert (const From &f) |
| template<class Type> Type | Dot (const VectorNumeric< Type > &v1, const VectorNumeric< Type > &v2) |
| std::ostream & | operator<< (std::ostream &out, const Matrix &m) |
| std::ostream & | operator<< (std::ostream &out, const MatrixRow &m) |
| std::ostream & | operator<< (std::ostream &out, const MatrixCol &m) |
| std::ostream & | operator<< (std::ostream &strm, const Tensor &t) |
| bool | GenerateLine (const Vector &initialPosition, const Vector &finalPosition, Matrix &pathTrajectory, unsigned int steps, unsigned int degree=2, OSCARError &err=DUMMY_ERROR(noError), char *constraintsFileName=NULL) |
| bool | InterpolateSlerp (const Quaternion &initialQuaternion, const Quaternion &finalQuaternion, Quaternion &resultQuaternion, double t, OSCARError &err=DUMMY_ERROR(noError)) |
| bool | GenerateHandPath (const HandPose &initialHand, const HandPose &finalHand, Matrix &handTrajectory, unsigned int steps, unsigned int degree=2, HandPoseInterp mode=NormalInterp, OSCARError &err=DUMMY_ERROR(noError)) |
| bool | distToForce (const ArtificialPotentialF &func, const Matrix &minDist, Matrix &forces) |
| bool | forceToTorque (const Tensor &gDist, const Matrix &forces, Vector &torque) |
| bool | forceToTorque (const DistanceResults &results, std::list< Primitive * > &armPrimitives, std::list< Primitive * > &enviPrimitives, Vector &torque) |
| bool | torqToEEWrench (const Vector &torques, const Matrix &jacobInv, Vector &eeForce) |
| bool | distToForceD1 (const ArtificialPotentialF &func, const Matrix &minDist, const Matrix &forces, Matrix &forcesD1) |
| bool | forceToTorqueD1 (const std::vector< Tensor * > &hDist, const Tensor &gDist, const Matrix &forces, const Matrix &forcesD1, const Vector &jointVel, const Vector &torques, Vector &torquesD1) |
| bool | torqToEEWrenchD1 (const Tensor &eeTransHFunc, const Tensor &eeRotHFunc, const Matrix &jacobianInv, const Vector &jointVel, const Vector &torques, const Vector &torquesD1, const Vector &eeForce, Vector &eeForceD1) |
| const vector< string > | fileTags (stringTags,&stringTags[INVALID]) |
| double | PointLine (const Vector3 &a, const Vector3 &b0, const Vector3 &b1, Vector3 &bWit, Vector3 &unitVec, double &t) |
| double | LineLine (const Vector3 &a0, const Vector3 &a1, const Vector3 &b0, const Vector3 &b1, Vector3 &aWit, Vector3 &bWit, Vector3 &unitVec, double &t0, double &t1) |
| double | testEndPoints (const Vector3 &a0, const Vector3 &a1, const Vector3 &b0, const Vector3 &b1, Vector3 &aWit, Vector3 &bWit, Vector3 &unitVec, double &t0, double &t1) |
| double | LineFacet (const Vector3 &a0, const Vector3 &a1, const std::vector< Vector3 > &facetPoints, Vector3 &unitVec, double &t1, double &t2) |
| double | LineFacet (const Vector3 &a0, const Vector3 &a1, const std::vector< Vector3 > &facetPoints, const Vector3 &facetNormal, Vector3 &unitVec, double &t1, double &t2) |
| void | calcJointTorques (const Xform *globalXforms, const Vector3 &forceLocation, const Vector3 &force, unsigned int linkIndex, Vector &torques) |
| void | calcJointTorquesToBase (const Xform *globalXforms, const Vector3 &forceLocation, const Vector3 &force, unsigned int linkIndex, Vector &torques) |
| void | calcJointTorquesToEE (const Xform *globalXforms, const Vector3 &forceLocation, const Vector3 &force, unsigned int linkIndex, Vector &torques) |
| bool | CalcJointTorques (FKPosition &fk, const Vector &jointPositions, Vector &torques, const Vector3 &forceLocation, const Vector3 &force, unsigned int linkIndex) |
| bool | CalcJointTorques (const FKPosition &fk, Vector &torques, const Vector3 &forceLocation, const Vector3 &force, unsigned int linkIndex) |
| void | calculateSupportReactionForces (const Vector3 &base0, const Vector3 &base1, const Vector3 &forceLocation, const Vector3 &force, Vector3 &base0FRX, Vector3 &base1FRX) |
| void | calculateSupportReactions (const Vector3 &base0, const Vector3 &base1, const Vector3 &forceLocation, const Vector3 &force, Vector3 &base0FRX, Vector3 &base0TRX, Vector3 &base1FRX, Vector3 &base1TRX) |
| template<class T> VectorNumeric< T > & | RowToVector (const Matrix &matx, unsigned int row, VectorNumeric< T > ©) |
| template<class T> VectorNumeric< T > & | ColToVector (const Matrix &matx, unsigned int col, VectorNumeric< T > ©) |
| std::ostream & | operator<< (std::ostream &out, const ObAvData &arg) |
Variables | |
| const OSCARError | noError |
| const OSCARError | notSupported |
| const OSCARError | notInitialized |
| const OSCARError | HardwareErrors |
| const OSCARError | powerFailure |
| const OSCARError | connectionFailure |
| const OSCARError | deviceNotReady |
| const OSCARError | initializeFailure |
| const OSCARError | registerReadFailure |
| const OSCARError | registerWriteFailure |
| const OSCARError | portOpenFailure |
| const OSCARError | portReadFailure |
| const OSCARError | portWriteFailure |
| const OSCARError | notClosed |
| const OSCARError | parameterNotMatch |
| const OSCARError | valueNotSet |
| const OSCARError | parameterNotValid |
| const OSCARError | positionExcessError |
| const OSCARError | velocityExcessError |
| const OSCARError | torqueExcessError |
| const OSCARError | currentExcessError |
| const OSCARError | armPowerOffError |
| const OSCARError | illegalRoboWorksTagNameError |
| const OSCARError | robixDLLError |
| const OSCARError | robixEIError |
| const OSCARError | robixRobotError |
| const OSCARError | robixServoError |
| const OSCARError | nidaqError |
| const OSCARError | measurementComputingError |
| const OSCARError | powerCubeDLLError |
| const OSCARError | powerCubeCommError |
| const OSCARError | powerCubeLimitError |
| const OSCARError | powerCubePowerError |
| const OSCARError | |