Commit Graph
162 Commits
Author SHA1 Message Date
PAJohnson a741177cae Fix for issue where using sensorless mode with input mode VEL_RAMP would cause the motor to try and reach a very high speed at the end of the sensorless ramp 2020-09-16 22:42:37 -04:00
PAJohnson 28b40c9bd4 Fix for high commanded currents during lockin ramp. 2020-09-10 19:48:36 -04:00
Unknown f691536b3c Fix DRV lock-up problem when using absolute encoders 2020-09-02 20:44:56 -04:00
Unknown 7fdaadf96e Fix Homing Offset problem due to counts -> revs change 2020-08-27 16:55:20 -04:00
Oskar Weigl 3760c7bc84 Merge branch 'rc-v0.5.0' into devel 2020-08-03 20:16:51 -07:00
PAJohnson 611d2d5021 Better style for null pointer checks 2020-07-31 18:09:52 -04:00
PAJohnson 5beb3faa83 Added null pointer checks to axis.cpp for pos_estimate_X
Fixed formatting
Updated CHANGELOG.md
2020-07-31 17:52:43 -04:00
Unknown d996f02df1 Add missing input_pos_updated call on transition to closed loop 2020-07-31 15:35:05 -04:00
PAJohnson 0670017a25 In axis: counts_per_step to turns_per_step (broken during previous merge) 2020-07-27 21:39:57 -04:00
PAJohnson 8fcd5e1b30 Merge branch 'devel' of https://github.com/madcowswe/ODrive into counts_to_rads
Merge devel into counts_to_rads (turns) - conflict for the step input callback
2020-07-27 21:36:00 -04:00
PAJohnson be2d1037e3 Fixed null pointer checks in controller.cpp
Fixed formatting in trapTraj.hpp
Fixed how pos_setpoint is set in axis.cpp to avoid transients on startup so that it will handle circular position setpoints
More unit corrections in the docs: radians -> turns
2020-07-27 21:26:41 -04:00
Unknown 7d94b6c786 Fix step_cb per @PAJohnson 2020-07-27 18:20:14 -04:00
Unknown 88b3ed4260 Optimize step/dir callback 2020-07-26 16:16:10 -04:00
Oskar Weigl af16316940 Merge branch 'devel' into counts_to_rads 2020-07-25 20:29:43 -07:00
Oskar Weigl 97469235d7 Add _src to estimate pointers 2020-07-25 20:24:55 -07:00
Oskar Weigl 8c85d2fe79 Add TODOs
Avoid transients when entering closed loop also on Circular position mode.
Phase interpolation is snapping to hard.
2020-07-18 19:05:34 -07:00
Oskar Weigl 1808bedf1a Fix phase_vel units 2020-07-18 19:02:28 -07:00
Rowan Goemans 1a0d6acace - Refactored thermal and current lmiting sub-systems and introduced motor thermistor support.
- Added thermal errors to dump_errors call in odrivetool.
- Added function in odrivetool to set thermistor coefficients based on thermistor specs.
- Added documentation for users on how to connect and configure their own thermistors.
2020-07-17 14:09:47 +02:00
PAJohnson e1b1641d70 Changed from radians internally to units of "turns" where a full rotation is 1.0 turn
Changed documentation to reflect the unit change
2020-07-14 20:02:59 -04:00
PAJohnson a2626889c5 Added pos_circular_ to Encoder for tracking position in a circular space
Corrected docs as they relate to unit changes
Added pos_estimate_linear and pos_estimate_circular to Controller and eliminated pointer switching logic in Controller::select_encoder()
2020-07-14 17:22:39 -04:00
PAJohnson 7ce896c2ce In encoder.*pp, XXX_estimate -> XXX_estimate_counts and XXX_est_rad -> XXX_estimate.
Changed HWIL tests to reflect unit change
Corrected sources for position and velocity estimates elsewhere.
2020-07-13 20:59:35 +01:00
PAJohnson ca7928774f Merge branch 'devel' of https://github.com/madcowswe/ODrive into counts_to_rads
Merging recent devel changes into branch
2020-07-06 20:02:47 +01: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
PAJohnson 9faf46ad47 Changed from counts->radians internally. By default, input positions and velocities are also in radians.
Added multipliers for input pos/vel to allow users to define their own units for those inputs.
2020-06-25 21:39:20 +01: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 653c4c327e Merge remote-tracking branch 'origin/devel' into feature/interface_autogen_merged 2020-05-22 21:27:58 +02:00
Samuel Sadok b3912d58c2 revert numerical static_cast to C style casts
As per https://github.com/madcowswe/ODrive/pull/410#discussion_r427725994
2020-05-20 13:26:14 +02:00
Samuel Sadok 3d07325022 remove aligned formatting of assignments 2020-05-20 12:27:28 +02:00
Samuel Sadok 3d710a5385 don't treat watchdog_timeout == 0 as special case
this special treatment is now redundant with enable_watchdog
2020-05-20 11:57:04 +02:00
Samuel Sadok e4d70a22b7 Initial implementation of interface autogenerator.
TODO:
 - write to endpoints from float (for PWM/analog input)
 - ascii protocol
2020-05-14 23:05:02 +02:00
Samuel Sadok da7f719283 improve naming consistency between code and fibre
Consistent naming makes code autogeneration easier.
This commit does not claim that the exported names of the variables were
more sensible than the in-code names. However changing the exported
names can break external tools and needs to happen in a controlled and
documented way.
2020-05-14 11:16:32 +02:00
Samuel Sadok 50ecdef860 move DC overcurrent/undercurrent checks to update_brake_current()
The checks now take into account the brake current.
Expose ibus on fibre.
2020-05-05 18:16:06 +02:00
Oskar Weigl d002a74d24 rename psu current fault levels 2020-05-01 16:37:20 -07:00
Unknown 3d2d0f0e1a Clean up and modernize axis task_chain 2020-04-27 15:27:43 -04:00
Samuel Sadok 237a50bfc9 add step/dir input tests 2020-04-21 15:57:26 +02:00
Unknown fb46103498 Add doctest, fix drv8301 warning 2020-03-27 21:22:04 -04:00
Unknown f9b4c78667 Merge remote-tracking branch 'madcowswe/devel' into RazorsEdge 2020-01-30 21:30:34 -05:00
Oskar Weigl 8cbc09e168 feed watchdog on enter closed loop 2020-01-30 16:16:39 -08:00
Unknown 1bdea53ec8 Improve testability 2020-01-08 22:11:50 -05:00
Unknown 62654ed966 Fix avoid transients at startup 2020-01-01 21:38:17 -05:00
Unknown c9d35415db Configure motors before encoders to avoid SPI collision 2020-01-01 21:37:04 -05:00
Unknown f127df72f1 Add stack_size vars, reduce stack usage 2019-10-26 14:28:06 -04:00
Samuel Sadok 82e8cd64fb cosmetic changes 2019-09-27 18:01:38 +02:00
Samuel Sadok 8ce66c6ec7 change power supply limit from watts to amps 2019-09-27 18:01:33 +02:00
Samuel Sadok c6f473936f Merge remote-tracking branch 'origin/devel' into RazorsFrozen 2019-09-27 13:04:58 +02:00
Samuel Sadok f8ea7d5684 [homing] make separate control mode
[endstops] enable in all control modes
[load encoder] use load encoder more consequently
2019-09-23 12:23:27 +02:00
samuelsadok c49e679bd9 fix bad use of memcpy
memcpy is not guaranteed to work with overlapped memory areas, however memmove is.
Apart from the semantic difference this fixes a compiler warning and possibly previously unexplained occurrences of `ERROR_INVALID_STATE`.
2019-09-19 10:10:51 +02:00
Unknown 9e782cce7b Revert "Formatting pass"
This reverts commit 2b58d15d8d.
2019-09-15 01:15:51 -04:00