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
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
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
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
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
Unknown
f635ee85cf
Convert an if-else tree to a switch statement for clarity
2020-05-07 18:05:40 -04:00
Unknown
6863507570
Use std::clamp instead of manual clamping in some spots
2020-05-07 18:04:27 -04:00
Unknown
9ef3d0c6a1
Store the result of get_inverter_temp to a member variable
2020-04-25 22:38:53 -04:00
Unknown
7a756c1761
Merge branch 'devel' into RazorsEdge
2020-01-01 21:45:41 -05:00
Oskar Weigl
e19e857360
fix typo
2019-10-28 20:39:23 -07:00
Oskar Weigl
cbae7c5b85
change current lim tolerance to absolute margin
2019-10-28 20:34:17 -07:00
Oskar Weigl
4015ed09dd
add ACIM autoflux
2019-09-23 00:07:45 -07:00
Oskar Weigl
c8c6f6237c
finish implementing basic ACIM control
2019-09-22 23:27:40 -07:00
Unknown
9e782cce7b
Revert "Formatting pass"
...
This reverts commit 2b58d15d8d .
2019-09-15 01:15:51 -04:00
Oskar Weigl
6a929d4236
improve oscilloscope functionality
2019-09-12 18:11:32 -07:00
Unknown
cd304f7b78
Merge branch 'devel' into RazorsEdge
2019-08-26 07:36:26 -04:00
Unknown
2e3768c329
Start moving casts and math functions to std::
2019-08-25 17:13:10 -04:00
Unknown
2b58d15d8d
Formatting pass
2019-08-20 23:13:54 -04:00
Oskar Weigl
87e83bd4ba
Change ERROR_CURRENT_UNSTABLE to ERROR_CURRENT_LIMIT_VIOLATION
2019-08-09 20:37:07 -07:00
Oskar Weigl
ce8949f774
add current limit tolerance and current lim violation error check
2019-06-02 14:53:58 -07:00
Oskar Weigl
a86fb3e59b
add coherent sampling and 1.5 cycle pwm phase advance
2019-02-01 21:01:45 -08:00
Oskar Weigl
19f266c0fa
update min inductance
2019-01-29 19:34:28 -08:00
Oskar Weigl
9328617092
change inductance bounds
2019-01-24 14:34:45 -08:00
Oskar Weigl
15983cc4f0
Thermal current limit with linear derating
2019-01-16 01:19:36 -08:00
Oskar Weigl
31562aca12
add voltage magnitude clamping for gimbal motors in closed loop
2019-01-15 19:44:07 -08:00
Oskar Weigl
167f00e622
add current sense saturation fault
2018-11-27 22:29:02 -08:00
Oskar Weigl
1511ae1db7
use tim13 as realtime control diagnostic timebase
2018-10-24 21:56:02 -07:00
Oskar Weigl
26eb4e7765
disable PWM straight away on motor error
2018-10-07 13:12:37 -07:00
Oskar Weigl
85540cb1ab
move check_for_errors to inline
2018-10-06 01:39:53 -07:00
Oskar Weigl
833bdde5f8
Merge pull request #253 from madcowswe/property-hooks
...
Property hooks
2018-09-30 19:16:38 -07:00
Oskar Weigl
6c89460d88
Merge pull request #254 from madcowswe/fix-sincos
...
Fix rounding issue in arm_cos_f32
2018-09-30 19:13:53 -07:00
Oskar Weigl
a1c8a559c5
Merge branch 'devel' into property-hooks
2018-09-30 18:55:22 -07:00
Oskar Weigl
ece2921316
add and rename our own copy of arm_sin_f32 and arm_cos_f32
2018-09-27 21:18:38 -07:00
Oskar Weigl
d2e2c3a1a8
use new hooks for encoder and current control bandwidth
2018-09-25 21:34:16 -07:00
Oskar Weigl
e88abb56eb
pull in configs and enum into class for Axis and Motor, for consistency
2018-09-24 22:59:36 -07:00
Oskar Weigl
d54d4479ac
update max inductance check to 2500uH
2018-08-27 16:09:07 -07:00
Oskar Weigl
6e9dd068de
add current control bandwith config setting
2018-06-21 22:41:58 -07:00
Oskar Weigl
c6cf7b2132
current control bandwidth lowered for high inductance wheels. TODO Make configurable
2018-05-17 17:07:34 -07:00
Oskar Weigl
f88ea874e9
implement snap of requested current range
2018-05-14 00:03:50 -07:00
Oskar Weigl
0d07c71f95
push estimator updates into control loop prefix
2018-05-10 07:33:54 -07:00
Oskar Weigl
a94096b64d
Make subcomponent errors to always set relevant axis error; use do_checks and set_error
2018-05-10 06:56:13 -07:00
Oskar Weigl
7d6ddc96b2
update encoder during calib
2018-04-26 13:46:47 -07:00
Oskar Weigl
4420d3873a
lowish current motor resistance meas config
2018-04-26 13:46:47 -07:00
Samuel Sadok
1f504d1d99
Merge branch 'sam_testing' into sam_oskar_testing
2018-04-21 23:11:36 -07:00