Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save johnwason/9570213e62fb737162170c53194cbb05 to your computer and use it in GitHub Desktop.

Select an option

Save johnwason/9570213e62fb737162170c53194cbb05 to your computer and use it in GitHub Desktop.
tesseract_robotraconteur concept service definitions
service experimental.tesseract_robotics.environment
import com.robotraconteur.geometry
using com.robotraconteur.geometry.Pose
using com.robotraconteur.geometry.SpatialInertia
struct Visual
field pose origin
field varvalue geometry
end
struct Joint
field string name
field JointType joint_type
field Vector3 axis
field string child_link_name
field string parent_list_name
field Pose parent_to_joint_origin_transform
end
struct Link
field string name
field SpatialInertia inertial
field Visual{list} visual
field Collision{list} collision
end
struct AddLinkCommand
field Link link
field Joint joint
field bool replace_allowed
field int32 command_id
end
struct FreeformCommand
field string command
field varvalue{string} params
field int32 command_id
end
object Environment
property string name [readonly]
property string{list} joint_names
property string{list} link_names
property Joint getf_joint(string joint_name)
property Link getf_link(string link_name)
function double[] getf_current_joint_values(string{list} joint_names)
function void setf_state(string{list} joint_names, double[] joint_values, NamedPose{list} transforms)
function int32 apply_command(varvalue command)
function int32 apply_commands(varvalue{list} command)
function varvalue{list} getf_command_history(int32 last_command_id)
event command_applied(int32 last_command_id)
end
service experimental.tesseract_robotics
import com.robotraconteur.device
using com.robotraconteur.device.Device
struct EnvironmentInfo
field string name
end
struct TaskInfo
field string name
end
object TesseractRobotics
property DeviceInfo device_info [readonly,nolock]
property EnvironmentInfo{string} environments_info [readonly]
property TaskInfo{string} tasks_info [readonly]
objref Environment{string} environments
objref TaskExecutor{string} task_executors
objref CollisionChecker{string} collision_checker
function string clone_environment(string environment_name, new_environment_name)
end
service experimental.tesseract_robotics.command_language
import com.robotraconteur.uuid
using com.robotraconteur.uuid.UUID
enum MoveInstructionType
LINEAR = 0,
FREESPACE = 1,
CIRCULAR = 2
end
struct JointWaypoint
field string{list} names
field double[] position
field double[] upper_tolerance
field double[] lower_tolerance
end
struct MoveInstruction
field varvalue waypoint
field UUID uuid
field MoveType move_type
field string profile
field string path_profile
field ManipulatorInfo manipulator_info
end
struct CompositeInstruction
field varvalue{list} instructions
field UUID uuid
field string profile
field ManipulatorInfo manipulator_info
end
service experimental.tesseract_robotics.task
import experimental.tesseract_robotics.command_language
using experimental.tesseract_robotics.command_language.CompositeInstruction
struct PlanningRequest
field string environment_name
field CompositeInstruction input
end
struct PlanningResposeStatus
field ActionStatus action_status
field CompositeInstruction result
end
object TaskExecutor
property string name [readonly]
function PlanningResponseStatus{generator} run_task(PlanningRequest request)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment