Motion Master 6.0.0-alpha.50
Next-generation motion control software
Loading...
Searching...
No Matches
somanet_drive.h
Go to the documentation of this file.
1#pragma once
2
3#include <expected>
4#include <string>
5
6#include "node/cia402_drive.h"
7#include "node/synapticon.h"
8
9namespace mm::node {
10
27class SomanetDrive : public Cia402Drive {
28 public:
31
32 // SOMANET-specific synchronous object-dictionary accessors are added here as their object
33 // indices are confirmed (encoder type/resolution, motor pole pairs, commutation offset, ...).
34 // Each is a thin typed read/write over device(); none holds state.
35};
36
45std::expected<SomanetDrive, std::string> createSomanetDrive(Device& device);
46
47} // namespace mm::node
Borrowed view of a CiA402 drive — the device control state machine, operation modes,...
Definition cia402_drive.h:27
Represents a single node on the fieldbus.
Definition device.h:36
Device & device()
The underlying generic device this view operates on.
Definition profile_device.h:37
Borrowed view of a SOMANET drive — a CiA402 drive plus Synapticon-specific object-dictionary access (...
Definition somanet_drive.h:27
SomanetDrive(Device &device)
Binds an (unchecked) SOMANET view to device. Prefer createSomanetDrive.
Definition somanet_drive.h:30
Definition http_server.h:16
std::expected< SomanetDrive, std::string > createSomanetDrive(Device &device)
Validates that device is a SOMANET drive, then binds a view to it.
Definition somanet_drive.cc:8