This release contains:
- Development:
- create `Timer` sensor
- create `ConstantPWM` rule to control a `DCMotor` at a constant `pwm`
- create `HelicalGear`, `WormGear` and `WormWheel` rotating objects
- create `Current` and `Angle` units
- update utilities to handle `HelicalGear`, `WormGear` and `WormWheel`
- add trigonometric methods to `Angle` and `AngularPosition`
- add self-locking property to `Powertrain`
- edit `Solver` to handle self-locking property
- Tests:
- add `Timer` tests
- add `ConstantPWM` tests
- add `HelicalGear`, `WormGear` and `WormWheel` tests
- update utilities tests
- update `Powertrain` tests
- update `Solver` tests
- move common test to `slave` and `gear` folders
- remove redundant composite strategies
- remove test deadlines
- Maintenance:
- fix some typos in tests and documentation
- Enhancement:
- make rules' attributes read-only properties
- rename `Transmission` to `Powertrain`
- move mechanical objects to separate files
- move rules to separate files
- move sensors to separate files
- update tests structure according to code re-organization
- convert `float` `pressure_angle` to `Angle` instance
- remove redundant abstract methods
- improve legend in stress `Powertrain.plot`
- Bug:
- fix bug on load torque computation not taking into account mating efficiency
- Documentation:
- add cross reference links to usage examples
- add rules' properties documentation
- add `Timer` documentation
- add `ConstantPWM` documentation
- add `HelicalGear`, `WormGear` and `WormWheel` documentation
- add trigonometric methods documentation
- update usage examples
- add new utilities documentation
- add link to example code in documentation
- add worm and helical gear usage example in documentation
- add multiple simulation concatenation usage example in documentation
- add logo
- Release:
- extend support to Python 3.12