Documentation ¶
Overview ¶
Package base defines the base that a robot uses to move around.
Package base contains a gRPC based base client ¶
Package base contains an enum representing optional base features ¶
Package base contains a gRPC based arm service server.
Index ¶
- Constants
- Variables
- func CreateStatus(ctx context.Context, b Base) (*commonpb.ActuatorStatus, error)
- func Named(name string) resource.Name
- func NamesFromRobot(r robot.Robot) []string
- func NewRPCServiceServer(coll resource.APIResourceCollection[Base]) interface{}
- func PropertiesToProtoResponse(features Properties) (*pb.GetPropertiesResponse, error)
- type Base
- type Properties
Constants ¶
const SubtypeName = "base"
SubtypeName is a constant that identifies the component resource API string "base".
Variables ¶
var API = resource.APINamespaceRDK.WithComponentType(SubtypeName)
API is a variable that identifies the component resource API.
Functions ¶
func CreateStatus ¶
CreateStatus creates a status from the base.
func NamesFromRobot ¶
NamesFromRobot is a helper for getting all base names from the given Robot.
func NewRPCServiceServer ¶ added in v0.2.36
func NewRPCServiceServer(coll resource.APIResourceCollection[Base]) interface{}
NewRPCServiceServer constructs a base gRPC service server. It is intentionally untyped to prevent use outside of tests.
func PropertiesToProtoResponse ¶ added in v0.2.50
func PropertiesToProtoResponse( features Properties, ) (*pb.GetPropertiesResponse, error)
PropertiesToProtoResponse takes a map of features to struct and converts it to a GetPropertiesResponse.
Types ¶
type Base ¶
type Base interface { resource.Resource resource.Actuator resource.Shaped // MoveStraight moves the robot straight a given distance at a given speed. // If a distance or speed of zero is given, the base will stop. // This method blocks until completed or cancelled MoveStraight(ctx context.Context, distanceMm int, mmPerSec float64, extra map[string]interface{}) error // Spin spins the robot by a given angle in degrees at a given speed. // If a speed of 0 the base will stop. // Given a positive speed and a positive angle, the base turns to the left (for built-in RDK drivers) // This method blocks until completed or cancelled Spin(ctx context.Context, angleDeg, degsPerSec float64, extra map[string]interface{}) error // For linear power, positive Y moves forwards for built-in RDK drivers // For angular power, positive Z turns to the left for built-in RDK drivers SetPower(ctx context.Context, linear, angular r3.Vector, extra map[string]interface{}) error // linear is in mmPerSec (positive Y moves forwards for built-in RDK drivers) // angular is in degsPerSec (positive Z turns to the left for built-in RDK drivers) SetVelocity(ctx context.Context, linear, angular r3.Vector, extra map[string]interface{}) error Properties(ctx context.Context, extra map[string]interface{}) (Properties, error) }
A Base represents a physical base of a robot.
func FromDependencies ¶
func FromDependencies(deps resource.Dependencies, name string) (Base, error)
FromDependencies is a helper for getting the named base from a collection of dependencies.
type Properties ¶ added in v0.2.50
type Properties struct { TurningRadiusMeters float64 WidthMeters float64 WheelCircumferenceMeters float64 }
Properties is a structure representing features of a base.
func ProtoFeaturesToProperties ¶ added in v0.2.50
func ProtoFeaturesToProperties(resp *pb.GetPropertiesResponse) Properties
ProtoFeaturesToProperties takes a GetPropertiesResponse and returns an equivalent Properties struct.
Directories ¶
Path | Synopsis |
---|---|
Package fake implements a fake base.
|
Package fake implements a fake base. |
Package kinematicbase contains wrappers that augment bases with information needed for higher level control over the base
|
Package kinematicbase contains wrappers that augment bases with information needed for higher level control over the base |
Package register registers all relevant bases
|
Package register registers all relevant bases |
Package sensorcontrolled base implements a base with feedback control from a movement sensor
|
Package sensorcontrolled base implements a base with feedback control from a movement sensor |
Package wheeled implements some bases, like a wheeled base.
|
Package wheeled implements some bases, like a wheeled base. |