4 releases (stable)

2.0.0 Mar 13, 2024
1.1.0 Mar 4, 2024
1.0.0 Feb 16, 2024
0.1.0 Feb 1, 2024

#9 in #gmt

Download history 127/week @ 2024-02-12 23/week @ 2024-02-19 22/week @ 2024-02-26 181/week @ 2024-03-04 182/week @ 2024-03-11 7/week @ 2024-03-18 32/week @ 2024-04-01

226 downloads per month

MIT license

2.5MB
14K SLoC

gmt_dos-clients_servos

Crates.io Documentation

A client for the GMT servo-mechanisms.


lib.rs:

GMT Servo-Mechanisms

A dos-actors system that combines together a few clients:

  • the GMT FEM
  • the GMT mount control system
  • the GMT M1 control system
  • the GMT M2 control system

Per default, only a few inputs and outputs of the FEM are made available:

Other builders will add extra inputs and outputs to the FEM. These builders are:

Warning

The gmt_dos-clients_servos crate depends on some code that is generated at compile timed based on the value of the environment variable FEM_REPO. To get the full documentation, you need to set the FEM_REPO environment variable and recompile the docs locally with:

FEM_REPO=<path-to-fem>  cargo doc --no-deps --package gmt_dos-clients_servos --open

Example

use gmt_dos_clients_servos::{asms_servo, AsmsServo, GmtServoMechanisms};
use gmt_fem::FEM;

const ACTUATOR_RATE: usize = 80; // 100Hz

let frequency = 8000_f64; // Hz
let fem = FEM::from_env()?;

let gmt_servos =
GmtServoMechanisms::<ACTUATOR_RATE, 1>::new(frequency, fem).build()?;

Dependencies

~68MB
~1M SLoC