Expand description
§use-robotics
Facade crate for the RustUse robotics vocabulary set.
This crate re-exports the focused child crates behind explicit module names. It is documentation and composition glue only; implementation lives in the focused crates.
use-robotics is not a robotics framework, ROS replacement, simulator, hardware abstraction layer, motion planner, control system, kinematics solver, navigation stack, SLAM system, robot runtime, firmware framework, embedded HAL, hardware driver, sensor processing engine, or async runtime.
§Modules
robotfor robot names, kinds, models, and manufacturers.robot_idfor robot IDs, serial numbers, and instance IDs.jointfor joint names, kinds, limits, axes, and indexes.actuatorfor actuator names, kinds, states, and descriptive ratings.robot_sensorfor robot sensor names, kinds, mounts, and reading labels.posefor pose names, pose labels, and orientation-kind labels.framefor robotics frame names, kinds, references, and parent/child relations.end_effectorfor end-effector names, kinds, grip states, and tool mounts.kinematics_labelfor kinematics terminology, chain names, link names, and degrees of freedom.robot_subsystemfor robot subsystem names, kinds, and lifecycle states.
§Example
use use_robotics::{
actuator, end_effector, frame, joint, kinematics_label, pose, robot, robot_sensor,
robot_subsystem,
};
let robot_name = robot::RobotName::new("inspection-arm")?;
let robot_kind = robot::RobotKind::Arm;
let joint_name = joint::JointName::new("shoulder-pan")?;
let actuator_name = actuator::ActuatorName::new("shoulder-servo")?;
let sensor_name = robot_sensor::RobotSensorName::new("wrist-camera")?;
let frame_ref = frame::FrameRef::new(frame::FrameName::new("tool0")?, frame::FrameKind::Tool);
let pose_label = pose::Pose3Label::new("pick-ready")?;
let end_effector = end_effector::EndEffectorKind::Gripper;
let kinematics = kinematics_label::KinematicsKind::Forward;
let subsystem_state = robot_subsystem::SubsystemState::Ready;
assert_eq!(robot_name.as_str(), "inspection-arm");
assert_eq!(robot_kind.to_string(), "arm");
assert_eq!(joint_name.as_str(), "shoulder-pan");
assert_eq!(actuator_name.as_str(), "shoulder-servo");
assert_eq!(sensor_name.as_str(), "wrist-camera");
assert_eq!(frame_ref.name().as_str(), "tool0");
assert_eq!(pose_label.as_str(), "pick-ready");
assert_eq!(end_effector.to_string(), "gripper");
assert_eq!(kinematics.to_string(), "forward");
assert_eq!(subsystem_state.to_string(), "ready");The example composes robotics vocabulary. It does not move, control, simulate, plan, connect to, or operate a robot.
§License
Licensed under either the MIT license or Apache License, Version 2.0.
Thin facade for RustUse robotics vocabulary primitive crates.
Re-exports§
pub use use_actuator as actuator;pub use use_end_effector as end_effector;pub use use_frame as frame;pub use use_joint as joint;pub use use_kinematics_label as kinematics_label;pub use use_pose as pose;pub use use_robot as robot;pub use use_robot_id as robot_id;pub use use_robot_sensor as robot_sensor;pub use use_robot_subsystem as robot_subsystem;
Modules§
- prelude
- Common robotics vocabulary types from the focused crates.