servo

package
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 6, 2023 License: AGPL-3.0 Imports: 12 Imported by: 4

Documentation

Overview

Package servo contains a gRPC bases servo client

Package servo contains a gRPC based servo service server

Index

Constants

View Source
const SubtypeName = "servo"

SubtypeName is a constant that identifies the component resource API string "servo".

Variables

View Source
var API = resource.APINamespaceRDK.WithComponentType(SubtypeName)

API is a variable that identifies the component resource API.

Functions

func CreateStatus

func CreateStatus(ctx context.Context, s Servo) (*pb.Status, error)

CreateStatus creates a status from the servo.

func Named

func Named(name string) resource.Name

Named is a helper for getting the named Servo's typed resource name.

func NamesFromRobot

func NamesFromRobot(r robot.Robot) []string

NamesFromRobot is a helper for getting all servo names from the given Robot.

func NewRPCServiceServer added in v0.2.36

func NewRPCServiceServer(coll resource.APIResourceCollection[Servo]) interface{}

NewRPCServiceServer constructs a servo gRPC service server. It is intentionally untyped to prevent use outside of tests.

Types

type Position added in v0.1.2

type Position struct {
	Position uint32
}

Position wraps the returned set angle (degrees) value.

type Servo

type Servo interface {
	resource.Resource
	resource.Actuator

	// Move moves the servo to the given angle (0-180 degrees)
	// This will block until done or a new operation cancels this one
	Move(ctx context.Context, angleDeg uint32, extra map[string]interface{}) error

	// Position returns the current set angle (degrees) of the servo.
	Position(ctx context.Context, extra map[string]interface{}) (uint32, error)
}

A Servo represents a physical servo connected to a board.

func FromRobot

func FromRobot(r robot.Robot, name string) (Servo, error)

FromRobot is a helper for getting the named servo from the given Robot.

func NewClientFromConn

func NewClientFromConn(
	ctx context.Context,
	conn rpc.ClientConn,
	remoteName string,
	name resource.Name,
	logger golog.Logger,
) (Servo, error)

NewClientFromConn constructs a new Client from connection passed in.

Directories

Path Synopsis
Package fake implements a fake servo.
Package fake implements a fake servo.
Package gpio implements a pin based servo
Package gpio implements a pin based servo
Package register registers all relevant servos
Package register registers all relevant servos

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL