ros2_canopen  master
C++ ROS CANopen Library
lifecycle_cia402_driver.hpp
Go to the documentation of this file.
1 #ifndef CANOPEN_402_DRIVER__CANOPEN_LIFECYCLE_402_DRIVER_HPP_
2 #define CANOPEN_402_DRIVER__CANOPEN_LIFECYCLE_402_DRIVER_HPP_
3 
6 
7 namespace ros2_canopen
8 {
16 {
17  std::shared_ptr<node_interfaces::NodeCanopen402Driver<rclcpp_lifecycle::LifecycleNode>>
18  node_canopen_402_driver_;
19 
20 public:
21  LifecycleCia402Driver(rclcpp::NodeOptions node_options = rclcpp::NodeOptions());
22 
23  virtual bool reset_node_nmt_command()
24  {
25  return node_canopen_402_driver_->reset_node_nmt_command();
26  }
27 
28  virtual bool start_node_nmt_command()
29  {
30  return node_canopen_402_driver_->start_node_nmt_command();
31  }
32 
33  virtual bool tpdo_transmit(ros2_canopen::COData & data)
34  {
35  return node_canopen_402_driver_->tpdo_transmit(data);
36  }
37 
38  virtual bool sdo_write(ros2_canopen::COData & data)
39  {
40  return node_canopen_402_driver_->sdo_write(data);
41  }
42 
43  virtual bool sdo_read(ros2_canopen::COData & data)
44  {
45  return node_canopen_402_driver_->sdo_read(data);
46  }
47 
48  void register_nmt_state_cb(std::function<void(canopen::NmtState, uint8_t)> nmt_state_cb)
49  {
50  node_canopen_402_driver_->register_nmt_state_cb(nmt_state_cb);
51  }
52 
53  void register_rpdo_cb(std::function<void(COData, uint8_t)> rpdo_cb)
54  {
55  node_canopen_402_driver_->register_rpdo_cb(rpdo_cb);
56  }
57 
58  double get_speed() { return node_canopen_402_driver_->get_speed(); }
59 
60  double get_position() { return node_canopen_402_driver_->get_position(); }
61 
62  bool set_target(double target) { return node_canopen_402_driver_->set_target(target); }
63 
64  bool init_motor() { return node_canopen_402_driver_->init_motor(); }
65 
66  bool recover_motor() { return node_canopen_402_driver_->recover_motor(); }
67 
68  bool halt_motor() { return node_canopen_402_driver_->halt_motor(); }
69 
70  bool set_mode_position() { return node_canopen_402_driver_->set_mode_position(); }
71 
72  bool set_mode_velocity() { return node_canopen_402_driver_->set_mode_velocity(); }
73 
74  bool set_mode_cyclic_position() { return node_canopen_402_driver_->set_mode_cyclic_position(); }
75 
76  bool set_mode_cyclic_velocity() { return node_canopen_402_driver_->set_mode_cyclic_velocity(); }
77 
78  bool set_mode_torque() { return node_canopen_402_driver_->set_mode_torque(); }
79 };
80 } // namespace ros2_canopen
81 
82 #endif // CANOPEN_402_DRIVER__CANOPEN_402_DRIVER_HPP_
Lifecycle Canopen Driver.
Definition: driver_node.hpp:176
Lifecycle 402 Driver.
Definition: lifecycle_cia402_driver.hpp:16
virtual bool sdo_write(ros2_canopen::COData &data)
Definition: lifecycle_cia402_driver.hpp:38
bool set_mode_velocity()
Definition: lifecycle_cia402_driver.hpp:72
bool set_mode_cyclic_position()
Definition: lifecycle_cia402_driver.hpp:74
bool halt_motor()
Definition: lifecycle_cia402_driver.hpp:68
double get_speed()
Definition: lifecycle_cia402_driver.hpp:58
virtual bool tpdo_transmit(ros2_canopen::COData &data)
Definition: lifecycle_cia402_driver.hpp:33
bool init_motor()
Definition: lifecycle_cia402_driver.hpp:64
bool set_target(double target)
Definition: lifecycle_cia402_driver.hpp:62
double get_position()
Definition: lifecycle_cia402_driver.hpp:60
virtual bool sdo_read(ros2_canopen::COData &data)
Definition: lifecycle_cia402_driver.hpp:43
virtual bool start_node_nmt_command()
Definition: lifecycle_cia402_driver.hpp:28
bool set_mode_position()
Definition: lifecycle_cia402_driver.hpp:70
void register_rpdo_cb(std::function< void(COData, uint8_t)> rpdo_cb)
Definition: lifecycle_cia402_driver.hpp:53
bool set_mode_torque()
Definition: lifecycle_cia402_driver.hpp:78
bool set_mode_cyclic_velocity()
Definition: lifecycle_cia402_driver.hpp:76
bool recover_motor()
Definition: lifecycle_cia402_driver.hpp:66
LifecycleCia402Driver(rclcpp::NodeOptions node_options=rclcpp::NodeOptions())
virtual bool reset_node_nmt_command()
Definition: lifecycle_cia402_driver.hpp:23
void register_nmt_state_cb(std::function< void(canopen::NmtState, uint8_t)> nmt_state_cb)
Definition: lifecycle_cia402_driver.hpp:48
Definition: configuration_manager.hpp:28
Definition: exchange.hpp:26