Commit Graph
2636 Commits
Author SHA1 Message Date
Samuel Sadok 7fade2b95a add filter to the reported <odrv>.ibus 2020-07-13 16:00:33 +02:00
Unknown b58d169acc CTRL_MODE --> CONTROL_MODE in utils.py 2020-07-10 16:30:37 -04:00
Unknown 0ee6c92cea Force position control when using ASCII t command 2020-07-08 22:18:19 -04:00
Unknown 28e54e2655 Merge branch 'rc-v0.5.0' into devel 2020-07-08 22:14:36 -04:00
Unknown ce7073baf5 Fix ASCII 't' command 2020-07-08 22:12:51 -04:00
samuelsadok 8e630d08bb Merge pull request #421 from kylebme/plotting_improvements
Bulk Capture Python Helper Methods
2020-07-08 11:36:08 +02:00
samuelsadok be8cdb9cc4 Merge branch 'devel' into plotting_improvements 2020-07-08 11:34:43 +02:00
Unknown b36e352ee0 Fix SPI DMA with different SPI transfer sizes 2020-07-03 23:37:54 +02:00
samuelsadok a3ecc7c883 Merge pull request #433 from madcowswe/SPI_DMA_Fix
Fix SPI DMA with different SPI transfer sizes
2020-07-03 23:37:01 +02:00
Unknown 9360c5df65 Fix SPI DMA with different SPI transfer sizes 2020-07-02 21:34:51 -04:00
Cam Buss 2571ab308d Allow reversal of homing direction and ability to clear SPI Error Rate (#427)
* clear spi_error_rate on error clear
* negative homing speed and negative endtop offset
2020-07-01 22:53:17 +02:00
Cam Buss fc82ed6610 Allow reversal of homing direction and ability to clear SPI Error Rate (#427)
* clear spi_error_rate on error clear
* negative homing speed and negative endtop offset
2020-07-01 22:50:25 +02:00
Samuel Sadok 2d05a50e89 Fix ASCII protocol bug when writing to uint8_t
When writing to uint8_t properties or equivalently
sized enum properties, the ASCII protocol handler would
write beyond the variable itself and overwrite adjacent
memory.

This manifested for instance in the following:

    r axis0.controller.config.input_mode 1
    w axis0.controller.config.control_mode 3
    r axis0.controller.config.input_mode 0

This boils down to what appears to be misbehavior of
`sscanf`.

This fix adds an intermediate union to provide a safe
memory area for the `sscanf` call.
2020-07-01 13:00:09 +02:00
Samuel Sadok 60482c9e8b Fix ASCII protocol bug when writing to uint8_t
When writing to uint8_t properties or equivalently
sized enum properties, the ASCII protocol handler would
write beyond the variable itself and overwrite adjacent
memory.

This manifested for instance in the following:

    r axis0.controller.config.input_mode 1
    w axis0.controller.config.control_mode 3
    r axis0.controller.config.input_mode 0

This boils down to what appears to be misbehavior of
`sscanf`.

This fix adds an intermediate union to provide a safe
memory area for the `sscanf` call.
2020-07-01 12:42:01 +02:00
Kyle Bartholomew 400727e337 Fixed call to old function name 2020-06-30 22:54:32 -07:00
Samuel Sadok b794178f0e fix HWIL tests 2020-06-30 15:18:35 +02:00
Kyle Bartholomew a673a50b43 Replace pandas with numpy, fixed naming, added plot title 2020-06-29 21:40:56 -07:00
PAJohnson ea99feaeb9 Accidentally commented out some encoder tests, fixed. 2020-06-23 22:25:19 +01:00
PAJohnson 8ab640f387 Merge pull request #426 from PAJohnson/A_to_Nm
Change motor control input from Amps to Nm.
2020-06-23 16:23:48 -04:00
PAJohnson eb494f409a Change from CurrentControl in interface yaml to TorqueControl 2020-06-23 16:11:11 -04:00
PAJohnson c63e51f8d7 Changed docs to reflect change from CONTROL_MODE_CURRENT_CONTROL to CONTROL_MODE_TORQUE_CONTROL 2020-06-23 16:04:00 -04:00
PAJohnson 152a127d67 Merge branch 'devel' of https://github.com/madcowswe/Odrive into A_to_Nm 2020-06-23 15:59:51 -04:00
Oskar Weigl 99507d2ece Merge pull request #424 from madcowswe/feature/doc_autogen
HTML API reference autogeneration
2020-06-23 12:27:12 -07:00
PAJohnson 57d67290bb Merge issue, reverted to previous serial-number 2020-06-23 19:15:01 +01:00
PAJohnson 6d60a534a5 Merge branch 'devel' of https://github.com/madcowswe/ODrive into devel 2020-06-23 19:12:38 +01:00
PAJohnson 110a97688b Found pinout typo in test-rig-rpi.yaml for teensy<->odrive encoder pins.
Modified encoder_test.py to work with correct test rig pin mapping
2020-06-23 18:36:18 +01:00
PAJohnson fa1cf2553f Added test for torque limit - TestTorqueLimit() 2020-06-23 03:46:45 +01:00
PAJohnson 7c33fa5d27 Changed docs to reflect removal of current control mode and addition of torque control mode
Regenerated enums
changed can_test.py to reflect control mode change
modified closed_loop_test.py to pass with A->Nm change.
2020-06-23 01:23:11 +01:00
PAJohnson cc87e4e6a8 Raised current limit from 10A to 15A for regen test. Previously, a motor overcurrent error was triggered ~50% of the time during the braking test. 2020-06-23 00:34:33 +01:00
PAJohnson 52b805b2ee Merge remote-tracking branch 'upstream/devel' into A_to_Nm 2020-06-22 18:33:42 -04:00
PAJohnson 2937e5bd27 Modified tolerances to work on different test rig 2020-06-22 23:30:56 +01:00
PAJohnson fc5361a042 Merge remote-tracking branch 'upstream/devel' into A_to_Nm 2020-06-22 13:38:47 -04:00
Samuel Sadok 4100fff46a Prevent python from using __pycache__ during build
Caching doesn't work well with the tup build system as tup acts offended
when a build task writes files outside of tup's root directory.

Particularly on Windows this manifests in errors like:

tup error: File '[...]/__pycache__/unicode_escape.cpython-38.pyc' was written to, but is not in .tup/db. You probably should specify it as an output

The option -B prevents python from using byte code cache.
2020-06-22 06:00:35 -07:00
Samuel Sadok f63c7edcd0 fix appearance on several browsers 2020-06-19 13:24:38 +02:00
PAJohnson 8d259c141e Merge branch 'A_to_Nm' of https://github.com/PAJohnson/ODrive into A_to_Nm 2020-06-18 18:33:31 -04:00
PAJohnson e5ace9ecc8 Changed default values of vel_gain, vel_integrator_gain and torque_constant to work with ODrive branded motors.
Changed units in comments from A to Nm where appropriate.
2020-06-18 18:32:24 -04:00
PAJohnson f19f57779b Changed vel_gain, vel_integrator_gain and torque_constant to work out of the box with ODrive branded motors.
Removed unused variable torque_lim_margin
Changed default value of torque_lim to +inf
2020-06-18 18:27:19 -04:00
Oskar Weigl 758989e2b4 Cleaner clamping 2020-06-18 12:58:10 -07:00
pjohnson 63f7c09bc2 Clamped max_torque to 0 for ACIM motors in case max_torque happened to be negative. 2020-06-18 15:13:58 -04:00
pjohnson a9b1841092 Added Motor::max_available_torque(). Use is to correctly determine torque limit for velocity anti-windup.
Set default value (0.0) for current_setpoint
Units documentation
Removed unused variable thermal_torque_lim_
2020-06-18 13:11:41 -04:00
Samuel Sadok 6d6c554a87 revert navbar colors, implement indentation 2020-06-18 10:28:26 +02:00
pjohnson ceabd24582 Made changes reflecting PR comments.
Added torque_ramp_rate to controller config.
Changed INPUT_MODE_CURRENT_RAMP to INPUT_MODE_TORQUE_RAMP for controller input mode enum.
Torque limits and current limits are now observed seperately. Torque limit is in the controller, current limit is in the motor object.
Fixed torque -> current calculation in motor_update to handle ACIM motors.
2020-06-17 13:15:36 -04:00
Samuel Sadok 055aabc5a1 Make compile work on GCC 10.1 (again) 2020-06-17 12:39:01 +02:00
pjohnson d78119e29f Modified docs and communication interfaces to reflect change from A to Nm for motor control input.
Renamed vel_integrator_current_ to vel_integrator_torque_
Removed input_current_ from controller, added input_torque_
2020-06-16 17:10:36 -04:00
pjohnson e2527ec468 added torque_constant to motor config struct and interface file
changed all instances of current_setpoint to torque_setpoint
modified limitVel() to use torque instead of current units
removed effective_current_lim, added effective_torque_lim()
added torque_lim to motor config struct and interface file
2020-06-16 15:55:18 -04:00
Samuel Sadok 8bd35aaff5 tweak appearance 2020-06-15 14:20:32 +02:00
Samuel Sadok 445f41aa2c Enhance API documentation 2020-06-10 23:03:07 +02:00
Samuel Sadok d304d4e7eb move part of documentation into the yaml file
The following documentation is moved to odrive-interfaces.yaml:
 - Error flag documentation from troubleshooting.md
 - Axis state documentation from commands.md
 - Input mode documentation from input_modes.md
2020-06-10 23:03:07 +02:00
Samuel Sadok 426236dff1 implement HTML API reference autogeneration
This adds a jinja template to generate markdown files
(with lots of HTML mixed in) from YAML using the existing
interface_generator.py script.

The docs website layout files are modified to incorporate the
new documentation.

While previously Github Pages was automatically running
Jekyll on the docs folder, this commit adds a custom Github
workflow to compile and deploy the website to facilitate
the custom markdown generation step before Jekyll runs.
2020-06-10 23:03:07 +02:00
Samuel Sadok b88f66ab99 update macOS build instructions 2020-06-10 16:09:18 +02:00