The brooks-mfc-gf daemon can be installed using the following package managers:
The brooks-mfc-gf daemon is composed of the following traits:
has-limits
has-position
has-transformed-position
is-daemon
uses-serial
uses-uart
The brooks-mfc-gf daemon has been tested with the following hardware:
address (int)
brooks-mfc-address within RS-485 network
baud_rate (int)
from uses-uart
calibration ({'items': 'calibration_point', 'type': 'array'})
default: [{'measured': 0.0, 'setpoint': 0.0}, {'measured': 1000000.0, 'setpoint': 1000000.0}]
Array of calibration points for MFC, in units.
enable (boolean)
default: True
Disable this daemon. The kind entry-point will not attempt to start this daemon.
from is-daemon
limits (array)
default: [-inf, inf]
Configuration limits are strictly optional.
from has-limits
log_level ({'name': 'level', 'symbols': ['debug', 'info', 'notice', 'warning', 'error', 'critical', 'alert', 'emergency'], 'type': 'enum'})
default: info
Set daemon log-level.
from is-daemon
log_to_file (boolean)
default: False
Optionally force logging to a file.
from is-daemon
make (['null', 'string'])
default: None
from is-daemon
model (['null', 'string'])
default: None
from is-daemon
native_limits (array)
default: [-inf, inf]
Bounds of motion specified in native coordinates. To specify bounds in transformed coordinates, use `limits`.
from has-transformed-position
out_of_limits (enum)
default: closest
Control behavior of daemon when set_position is given a value outside of limits.
from has-limits
parity ({'name': 'parity', 'symbols': ['O'], 'type': 'enum'})
default: O
Modbus parity.
port (int)
TCP port for daemon to occupy.
from is-daemon
serial (['null', 'string'])
default: None
Serial number for the particular device represented by the daemon
from is-daemon
serial_port (string)
from uses-uart
stop_bits ({'name': 'stop_bits', 'symbols': ['one', 'one_and_half', 'two'], 'type': 'enum'})
default: one
Number of stop bits.
The brooks-mfc-gf daemon will provide the following state information:
destination (double)
from has-position
hw_limits (array)
from has-limits
native_reference_position (double)
The reference position, expressed in native coordinates.
Default is `0.0`
from has-transformed-position
position (double)
from has-position
The brooks-mfc-gf daemon will expose the following public messages:
busy
➜ boolean
Returns true if daemon is currently busy.
from is-daemon
direct_serial_write
➜ null
Expose direct access to the serial port to clients.
This should not be encouraged for normal use, but may be very important for debugging.
If a device is expected to return data, it should be logged at the INFO level, not returned to the client.
This is done to allow long tasks to be run asynchronously, and to explicitly discourage use of this method except when debugging.
Setting `busy` to true is encouraged, but individual daemon writers should consider their own use case.
from uses-serial
parameters:
message (bytes)
get_config
➜ string
Full configuration for the individual daemon as defined in the TOML file.
This includes defaults and shared settings not directly specified in the daemon-specific TOML table.
from is-daemon
get_config_filepath
➜ string
String representing the absolute filepath of the configuration file on the host machine.
from is-daemon
get_destination
➜ double
Get current daemon destination.
from has-position
get_limits
➜ {'items': 'double', 'type': 'array'}
Get daemon limits.Limits will be the intersection of config limits and driver limits (when appliciable).
from has-limits
get_native_destination
➜ double
Get the destination in native coordinates.
from has-transformed-position
get_native_limits
➜ {'items': 'double', 'type': 'array'}
Returns limits in the relative coordinate system.
from has-transformed-position
get_native_position
➜ double
Get the current position in native coordinates.
from has-transformed-position
get_native_reference
➜ double
Get the reference position in native coordinates.
from has-transformed-position
get_native_units
➜ ['null', 'string']
Get the units of native coordinates.
from has-transformed-position
get_position
➜ double
Get current daemon position.
from has-position
get_rate
➜ double
Get current flow rate, in units specified within the config
get_state
➜ string
Get version of the running daemon
from is-daemon
get_units
➜ ['null', 'string']
Get units of daemon. These units apply to the position and destination properties.
from has-position
id
➜ {'type': 'map', 'values': ['null', 'string']}
JSON object with information to identify the daemon, including name, kind, make, model, serial.
from is-daemon
in_limits
➜ boolean
Check if a given position is within daemon limits.
from has-limits
parameters:
position (double)
set_native_position
➜ null
Set the current position in native coordinates.
from has-transformed-position
parameters:
native_coordinate (double)
set_native_reference
➜ null
Set the reference position in native coordinates.
Reference position need not be within hardware limits.
from has-transformed-position
parameters:
native_coordinate (double)
set_position
➜ null
Give the daemon a new destination, and begin motion towards that destination.
from has-position
parameters:
position (double)
set_rate
➜ null
Set current flow rate, in units specified within the config
parameters:
rate (double)
set_relative
➜ double
Give the daemon a new destination relative to its current position. Daemon will immediately begin motion towards new destination. Returns new destination.
from has-position
parameters:
distance (double)
shutdown
➜ null
Cleanly shutdown (or restart) daemon.
from is-daemon
parameters:
restart (boolean)
default: False
to_native
➜ double
Convert a transformed coordinate to native.
This is for debugging purposes and is discouraged in normal use.
from has-transformed-position
parameters:
transformed_coordinate (double)
to_transformed
➜ double
Convert a native coordinate to transformed.
This is for debugging purposes and is discouraged in normal use.
from has-transformed-position
parameters:
native_coordinate (double)
The brooks-mfc-gf daemon uses the following avro types:
calibration_point (record)
fields:
setpoint (double)
measured (double)
built 2024-02-09 01:44:16 CC0: no copyright