Background - NASA Glenn Research Center



Autonomous Robotics Research for Ocean Worlds (AISR:ARROW):Autonomy Application Programming Interface DocumentVersion 0.2, November 22, 2019BackgroundThis Autonomy Interface Document describes and defines the application programming interface (API) to be made available to the candidate autonomy technologies to exercise the functions of the virtual and physical Ocean Worlds lander testbeds. This version of the document lists the current design of the interface. We expect the interface to evolve and be updated in response to the requests of potential users. This document will be updated as the changes are made.Operating EnvironmentVirtual TestbedUbuntu 18.04ROS MelodicNVIDIA graphics adapterPhysical TestbedUbuntu 18.04Two nVidia GeForce RTX 2080 Ti, 11GB available for GPU computation if neededROS MelodicCommand ProtocolThe interface will be implemented using ROS messages and actions. Each Command will be available as an action and telemetry is provided as mand DictionaryThe following commands will be available. These will be provided as ROS message and action definitions.ModuleTypeCommandDescriptionArmCommandCartesianGuardedMoveGuarded end effector move to xyz in the Lander Body Frame frameArmCommandJointMoveMove in joint space until move is completedArmCommandCartesianMoveMove to specified position in reference frameArmCommandChooseEndEffectorChoose an end effectorArmCommandUnstowUnstow armArmCommandStowStow armArmCommandStopStop all motionArmCommandBuildCollisionObjectsSet-up/update collision objects for checking collisionsArmCommandClearCollisionObjectsClear collision objects for checking collisionsArmCommandInitializeInitialize armArmCommandCheckCollisionVerify the arm motion is collision-freeArmTelemetryJointPositionJoint positionsArmTelemetryJointVelocityJoint velocitiesArmTelemetryJoint AccelerationJoint accelerationsArmTelemetryEndEffectorPoseEnd effector pose in arm spaceArmCommandCartesianMoveGuardedMove to specified position in reference frame until move is completed or until contactArmCommandJointMoveGuardedMove in joint space until move is completed or until contactArmCommandJointMoveTimeMove in joint space until move is completed in the specified timeArmCommandJointMoveOneMove the specified joint by the specified amountArmCommandCartesianMove2TargetGuardedMove to specified offset from target position in reference frameArmCommandJointMove2TargetGuardedMove to specified offset from target joint poseArmCommandSetCollisionIgnoreSets or unsets a single bit in an IDA collision objects ignore collisions field, allowing a collision to be ignored.ArmCommandSetCollisionArmIgnoreEnables or disables collision checking between two IDA links bymodifying the link collision matrix.ArmCommandSetCollisionObjectSets the parameters of a single IDA collision database objectin the global list of objects.ArmCommandSetToolSets the tool to use for arm operationsCameraCommandCaptureTake an imageCameraCommandCapturePointPoint camera at specified locationCameraCommandExposureTypeExposure type (exposure time specified or automatically determined)CameraCommandExposureDurationDuration of image exposure (not valid for auto-exposure)CameraTelemetryDepthFrameCamera depth frame dataCameraTelemetryColorFrameCamera color frame dataCameraTelemetryPointCloudCamera pointlcoud dataCamPanTiltTelemetryPanTiltPositionPan/Tilt joint anglesCamPanTiltCommandPanTiltJointMovespecify the pan and tilt target anglesFltProtectnCommandClearAllFaultsClear all faultsFltProtectnCommandClearFaultClear specified faultFltProtectnCommandSetFaultSet fault for the value passedFltProtectnTelemetryStatusSystem status enumMotionCommandScoopOpPerform arm operations to scoopMotionCommandDrillOpPerform arm operations to drillMotionCommandConePenetrometerOpPerform cone penetrometer test MotionCommandPrSinkageOpPreform pressure sinkage test MotionCommandBevameterOpPerform bevameter testSensor Data - values will be in SI unitsSystem status int32 – enum of system stateArm joint angle joint_angle float64[7]Arm instrument instrument_id int32Arm force/torque sensor fts_data float64[6] – 3D torque vector and a 3D force vectorInstrument type int32 – enum of instrument currently on armInstrument pose instrument_pose float64[7] representing a quaternion and a 3D vectorPerception camera_image ROS image rgb8 encodingPerception camera_image ROS image mono8 encodingPerception camera_image ROS image mono16 encodingPerception point_cloud ROS pointcloud with rgb and distance channelsPerception depth_map ROS image 32FC1 encodingLander pose float64[7] representing a quaternion and a 3D vectorInstrument-environment surface contact instr_contact boolFault ConditionsSystem command timeoutSystem power failureSystem misc_other failureArm joint failureArm reach limitArm motion failureArm collisionArm misc_other failureInstrument pressure sinkage failureInstrument shear bevameter failureInstrument cone penetrometerInstrument scoop failureInstrument drill failureInstrument misc_other failureLander misc failurePerception pointing failurePerception image capture failurePerception image processing failurePerception misc_other failure ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download