Motion Master 6.0.0-alpha.111
Next-generation motion control software
Loading...
Searching...
No Matches
somanet_control.h
Go to the documentation of this file.
1#pragma once
2
3#include <chrono>
4#include <cstdint>
5#include <expected>
6#include <string>
7#include <vector>
8
11#include "node/somanet_drive.h"
12
13namespace mm::node {
14
29
36std::expected<BrakeState, std::string> brakeState(DeviceManager& deviceManager,
37 uint16_t slavePosition);
38
55std::expected<Encoders, std::string> encoders(DeviceManager& deviceManager, uint16_t slavePosition);
56
57std::expected<BrakeState, std::string> releaseBrake(DeviceManager& deviceManager,
58 uint16_t slavePosition,
59 std::chrono::milliseconds settle);
60
67std::expected<BrakeState, std::string> engageBrake(DeviceManager& deviceManager,
68 uint16_t slavePosition,
69 std::chrono::milliseconds settle);
70
80std::expected<std::vector<DeviceFile>, std::string> readFileList(DeviceManager& deviceManager,
81 uint16_t slavePosition);
82
93std::expected<void, std::string> removeFile(DeviceManager& deviceManager, uint16_t slavePosition,
94 const std::string& filename);
95
104std::expected<HardwareDescription, std::string> readHardwareDescription(
105 DeviceManager& deviceManager, uint16_t slavePosition);
106
115std::expected<std::optional<PlantModel>, std::string> readPlantModel(DeviceManager& deviceManager,
116 uint16_t slavePosition);
117
128std::expected<std::optional<IntegroVariant>, std::string> readIntegroVariant(
129 DeviceManager& deviceManager, uint16_t slavePosition);
130
140std::expected<FirmwareCompatibility, std::string> checkFirmwarePackage(
141 DeviceManager& deviceManager, uint16_t slavePosition, std::string_view packageFilename);
142
153std::expected<HrdRecording, std::string> readHrdRecording(DeviceManager& deviceManager,
154 uint16_t slavePosition,
155 somanet::HrdData data);
156
157} // namespace mm::node
HrdData
Which signal a high resolution data (HRD) stream records — OS command 3's data index....
Definition somanet_drive.h:658
Definition bus_health_source.h:7
std::expected< HrdRecording, std::string > readHrdRecording(DeviceManager &deviceManager, uint16_t slavePosition, somanet::HrdData data)
Reads a drive's high resolution data recording back and decodes it.
Definition somanet_control.cc:104
std::expected< BrakeState, std::string > brakeState(DeviceManager &deviceManager, uint16_t slavePosition)
Reads a drive's brake configuration and current state (0x2004).
Definition somanet_control.cc:33
std::expected< void, std::string > removeFile(DeviceManager &deviceManager, uint16_t slavePosition, const std::string &filename)
Deletes one file from a device's flash.
Definition somanet_control.cc:65
std::expected< BrakeState, std::string > engageBrake(DeviceManager &deviceManager, uint16_t slavePosition, std::chrono::milliseconds settle)
Engages a drive's brake and waits settle for it to bite.
Definition somanet_control.cc:52
std::expected< std::optional< IntegroVariant >, std::string > readIntegroVariant(DeviceManager &deviceManager, uint16_t slavePosition)
Reads and parses a device's .variant file.
Definition somanet_control.cc:91
std::expected< HardwareDescription, std::string > readHardwareDescription(DeviceManager &deviceManager, uint16_t slavePosition)
Reads and parses a device's .hardware_description file.
Definition somanet_control.cc:79
std::expected< FirmwareCompatibility, std::string > checkFirmwarePackage(DeviceManager &deviceManager, uint16_t slavePosition, std::string_view packageFilename)
Reads what a device is and decides whether a firmware package belongs on it.
Definition somanet_control.cc:97
std::expected< std::optional< PlantModel >, std::string > readPlantModel(DeviceManager &deviceManager, uint16_t slavePosition)
Reads and parses a device's plant_model.csv.
Definition somanet_control.cc:85
std::expected< std::vector< DeviceFile >, std::string > readFileList(DeviceManager &deviceManager, uint16_t slavePosition)
Reads the list of files stored on a device (FoE read of "fs-getlist").
Definition somanet_control.cc:59
std::expected< Encoders, std::string > encoders(DeviceManager &deviceManager, uint16_t slavePosition)
Releases (disengages) a drive's brake, then waits for the release to finish.
Definition somanet_control.cc:39
Plant identification: the model of a motor and its load that auto-tuning computes gains from,...
bool releaseBrake
Definition somanet_procedures.cc:462