Releases: UniMelbHumanRoboticsLab/CANOpenRobotController
Releases · UniMelbHumanRoboticsLab/CANOpenRobotController
v2.3
Functionalities
- Modular framework in 3 layers: core, hardware platforms, application (state machine based)
- Programmatic CAN Object Dictionary for compile time setup of CAN network PDOs
- ROS 1 and ROS 2 connectivity
- RT network communication (socket based) for external communication
- Logging capability via spdlog
- Self-contained without external dependencies (cross-compilation ready)
- Support and code examples for: Fourier Intelligence X2, ArmMotus M1, M2, M2Pro, EMU and ULS Robotics FIT-HV exoskeleton
- Support code for common CANOpen motor drives (EPOS, Copley and Kinco) and several IO generic, CAN and I2C peripherals
- Tested on Linux x64, BeagleBone and Raspberry Pi platforms
What's Changed
- M2 Pro Updates and Fixes in #73
- More accurate main loop timing at the expense of CPU usage in #76
- Fix bug (#78) and add Analog In option in Drive in #79
- State machine template and State machine creation script in #80
- Addition of FIT-HV exoskeleton support in #83
- Addition of EPOS drive support in #84
- Added I2C generic device, BNO055 and restructured devices hierarchy in #85
- Documentation formatting
Important note
Every robot (platform) constructor should now use addJoint(), addInput() and addOtherCAN() methods to add new joints and inputs for proper management. Existing platforms have been updated appropriately.
v2.2
Functionalities
- Modular framework in 3 layers: core, hardware platforms, application (state machine based)
- Programmatic CAN Object Dictionary for compile time setup of CAN network PDOs
- ROS 1 connectivity (examples in X2DemoMachine and M1DemoMachineROS)
- ROS 2 connectivity (examples in X2ROS2DemoMachine)
- RT network communication (socket based) for external communication (example in M3DemoMachine)
- Logging capability
- Self-contained without external dependencies (cross-compilation ready)
- Support and code examples for: Fourier Intelligence X2, ArmMotus M1, ArmMotus M2 and ArmMotus EMU
- Tested on Linux x64, BeagleBone and Raspberry Pi platforms
What's Changed
- Updated x2_description repo address by @emekBaris in #69
- Cleaner cmake organisation to ease switching between apps and limit compilation by @vcrocher in #70
Full Changelog: v2.1...v2.2
v2.1
Functionalities
- Modular framework in 3 layers: core, hardware platforms, application (state machine based)
- Programmatic CAN Object Dictionary for compile time setup of CAN network PDOs
- ROS 1 connectivity (examples in X2DemoMachine and M1DemoMachineROS)
- ROS 2 connectivity (examples in X2ROS2DemoMachine)
- RT network communication (socket based) for external communication (example in M3DemoMachine)
- Logging capability
- Self-contained without external dependencies (cross-compilation ready)
- Support and code examples for: Fourier Intelligence X2, ArmMotus M1, ArmMotus M2 and ArmMotus EMU
- Tested on Linux x64, BeagleBone and Raspberry Pi platforms
Changes
- ROS2 example
Full Changelog: v2.0...v2.1
Author: benvonh b.vonsnarski@uq.edu.au
v2.0
Functionalities
- Modular framework in 3 layers: core, hardware platforms, application (state machine based)
- Programmatic CAN Object Dictionary for compile time setup of CAN network PDOs
- ROS 1 connectivity (examples in X2DemoMachine and M1DemoMachineROS)
- RT network communication (socket based) for external communication (example in M3DemoMachine)
- Logging capability
- Self-contained without external dependencies (cross-compilation ready)
- Support and code examples for: Fourier Intelligence X2, ArmMotus M1, ArmMotus M2 and ArmMotus EMU
- Tested on Linux x64, BeagleBone and Raspberry Pi platforms
Changes
- New, improved state machine system: old state machine/apps are incompatible and need to be upgraded (see #51)
- Out-of-tree apps compilation: allow to separate apps from CORC source tree
- Support for Fourier ArmMotus EMU
- Bug fixes and better loop time management
Full Changelog: v1.2.2...v2.0
v1.2.2
Functionalities
- Modular framework in 3 layers: core, hardware platforms, application (state machine based)
- Programmatic CAN Object Dictionary for compile time setup of CAN network PDOs
- ROS 1 connectivity (example in X2DemoMachine and M1DemoMachineROS)
- RT network communication (socket based) for external communication (example in M3DemoMachine)
- Logging capability
- Self-contained without external dependencies (cross-compilation ready)
- Support and code examples for: Fourier Intelligence X2, ArmMotus M1, ArmMotus M2 and ArmMotus EMU
- Tested on Linux x64, BeagleBone and Raspberry Pi platforms
Changes
- M1 (Kinco drive) DIO bug fix and improvement of PDO setup
New Contributors
Full Changelog: v1.2.1...v1.2.2
v1.2.1
Functionalities
- Modular framework in 3 layers: core, hardware platforms, application (state machine based)
- Programmatic CAN Object Dictionary for compile time setup of CAN network PDOs
- ROS 1 connectivity (example in X2DemoMachine and M1DemoMachineROS)
- RT network communication (socket based) for external communication (example in M3DemoMachine)
- Logging capability
- Self-contained without external dependencies (cross-compilation ready)
- Support and code examples for: Fourier Intelligence X2, ArmMotus M1, ArmMotus M2 and ArmMotus EMU.
- Tested on Linux x64, BeagleBone and Raspberry Pi platforms.
What's Changed
- Better M1 support and demos, including ROS based demo (@ywen3)
- DIOs support in CiA 402 Drive (@ywen3)
- Removed support of ForcePlate sensors (@justincmfong)
Full Changelog: v1.1...v1.2.1
v1.1
Functionalities
- Modular framework in 3 layers: core, hardware platforms, application (state machine based)
- Programmatic CAN Object Dictionary for compile time setup of CAN network PDOs
- ROS connectivity (example in X2 and X2DemoMachine)
- RT network communication (socket based) for external communication (example in M3DemoMachine)
- Logging capability
- Self-contained without external dependencies (cross-compilation ready)
- Support and code examples for: Fourier Intelligence X2, ArmMotus M1, ArmMotus M2 and ArmMotus EMU.
- Tested on Linux x64, BeagleBone and Raspberry Pi platforms.
What's Changed
- Improved X2 ROS support (@emekBaris)
- Addition of Technaid IMU support (@emekBaris)
- Generalisation of YAML robots parameters (@emekBaris, @vcrocher)
- Improved general documentation (@emekBaris, @justincmfong, @xinlianggunimelb, @vcrocher)
- Minor bug fixes
Full Changelog: v1.0...v1.1
Initial release
Functionalities:
- Modular framework in 3 layers: core, hardware platforms, application (state machine based)
- Programmatic CAN Object Dictionary for compile time setup of CAN network PDOs
- ROS connectivity (example in X2 and X2DemoMachine)
- RT network communication (socket based) for external communication (example in M3DemoMachine)
- Logging capability
- Self-contained without external dependencies (cross-compilation ready)
Support and code examples for:
- Fourier Intelligence M1
- Fourier Intelligence M2
- Fourier Intelligence X2
- Fourier Intelligence M3
Tested on Linux x64, BeagleBone and Raspberry Pi platforms.