Crate syact

source ·
Expand description

§syact

Rust Crates.io version syact: rustc 1.68+

Note

Many aspects of the library (for example the documentation) are not fully finished yet! (Though I try to update it as frequent as possible)

A library for all types of components used in robots, including controlls for stepper motors, servo motors and more complex assemblies using said motors. Currently all implementations are made for the raspberry pi, though new implementations for more controllers are currently being made.

§Goal

  • Create an all-in-one library to control motors, read sensors and do basic calculations in rust.
  • Keep it as easy to use as possible
  • Specialize the library for hobbyists and tinkerers
  • Offer options for static aswell as dynamic typings

§In Action

Let us assume we want to control a simple stepper motor (in this example a 17HE15_1504_S) with a PWM controller connected to the BCM pins 27 and 19 (e.g. on a raspberry).

TODO: NEW EXAMPLE

§Features

  • Motors
    • Stepper motors
      • Absolute/relative movements
      • Continuous movements
      • Microstepping
        • Preconfigured
        • With signals to be set by the controller
      • Inverting logical signals if desired
    • Servo motors
    • DC motors
  • Components
    • LinearAxis
    • Gear joint
    • LinearAxis-triangle
    • Conveyor
    • DC-Motor
  • Calculation
    • Stepper motor curves
      • Low resolution
      • High resolution
    • Paths
      • Point-To-Point
      • Linear
    • Overloads
    • Forces
    • Inertias
  • Measurements
    • Simple switch
    • Rotary resolver
    • Trait for custom measurements

§Issues and requests

If you encounter any issues or if you have any request for new features, feel free to create an issue at the GitHub repo.

Re-exports§

Modules§

  • Actuator structures and traits
  • Structs for storing characteristics of stepper motors and devices
  • Various devices
  • Functions and Structs for calculating Stepper Motor procedures and operations
  • Functions and Structs for taking measurements with a robot for e.g. position calculation
  • Easy import of the functionalities

Traits§

  • A trait that marks a type as a boxing type for another type that includes e.g. GPIO-pins or other physical interfaces that have to be setup
  • A trait that provides a universal dismantle function
  • A trait that provides a universal setup function,

Type Aliases§

  • The general error type used in the crate

Derive Macros§