Samuel Sadok
938f088fc2
make axis allocation static
2020-07-21 13:02:03 +02: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
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
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
6863507570
Use std::clamp instead of manual clamping in some spots
2020-05-07 18:04:27 -04:00
Samuel Sadok
90f5c1d0b1
change velocity clamping in input filter mode
...
as per: https://discordapp.com/channels/369667319280173067/369678934985408524/705227337230188595
2020-05-01 16:32:09 +02:00
Unknown
a5d991e712
Clarify current_setpoint calculation
2020-04-21 20:39:39 -04:00
Unknown
574190e433
Change trap_traj timer to be more robust
2020-04-21 20:39:10 -04:00
Unknown
75808abce4
Fix merge issue with ACIM code
2020-01-01 22:13:44 -05:00
Unknown
7a756c1761
Merge branch 'devel' into RazorsEdge
2020-01-01 21:45:41 -05:00
Oskar Weigl
2a22602e82
add dirty fix for setpoint in cpr
2019-11-02 14:05:22 -07:00
Oskar Weigl
27add54b3f
move vel_ramp_enable into controller.config
2019-10-07 16:19:30 -07:00
Samuel Sadok
82e8cd64fb
cosmetic changes
2019-09-27 18:01:38 +02:00
Unknown
0153e3509a
Fix anticogging
2019-09-24 21:32:50 -04: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
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
Unknown
3f4433f50d
Enable rudimentary dual-encoder support
2019-09-01 17:02:15 -04:00
Unknown
e9c8eb6c03
Add mirror_ratio
2019-08-31 19:20:47 -04:00
Unknown
f4e2c3d286
Add mirror mode
2019-08-31 18:03:00 -04:00
Unknown
5df4ceda33
Add current ramping input mode
2019-08-31 17:41:32 -04:00
Unknown
2e3768c329
Start moving casts and math functions to std::
2019-08-25 17:13:10 -04:00
Unknown
63bebaa8de
Add "enable" switches for controller options
2019-08-24 21:44:23 -04:00
Unknown
2b58d15d8d
Formatting pass
2019-08-20 23:13:54 -04:00
Unknown
9d378f1b67
Fix bug in anticogging due to improper scaling
2019-08-18 11:13:24 -04:00
Paul Guenette
ca93c0e2d2
Add isHomed indicator
2019-08-11 12:30:24 -04:00
Paul Guenette
fbd7ab2738
Improve the behaviour of the HOMING sequence
2019-07-18 17:29:21 +02:00
Paul Guenette
0ab104346f
Modify vel_ramp logic slightly to be more STL-based
2019-07-09 21:31:04 +02:00
Paul Guenette
7e569a2e1d
Further reduce the complexity of the limitVel algorithm
2019-06-21 21:52:10 +02:00
Paul Guenette
c861cc0b46
Make inputs to limitVel function const
2019-06-21 17:20:16 +02:00
Paul Guenette
4c623f2068
Implement better algorithm
2019-06-21 16:55:15 +02:00
Paul Guenette
544933bb44
Add a lot more velocity limiting tests, implement it
2019-06-19 23:13:20 +02:00
Paul Guenette
da27153f5e
Add unit tests for current_vel_limit (failing)
2019-06-19 22:36:40 +02:00
Yannis Chatzikonstantinou
313bd9fe9e
add check for vel_gain > 0
2019-06-14 22:53:04 +03:00
Yannis Chatzikonstantinou
cfb0e11272
add check for vel_limt == 0
2019-06-14 22:48:57 +03:00
Ioannis Chatzikonstantinou
7b232b4f8a
better naming
2019-06-13 10:31:26 +03:00
Ioannis Chatzikonstantinou
fc5022fde0
velocity limiting in current control mode
2019-06-13 10:27:07 +03:00
Paul Guenette
ec05f7e45a
Make sure the trajectory mode exits to avoid rollover issues
2019-06-03 21:07:49 +02:00
Paul Guenette
0f7337743c
Add input_pos_updated var to avoid race conditions with comms thread
2019-06-01 14:08:16 +02:00
Paul Guenette
12664d141d
Remove the ability to home the axis with requested_state = AXIS_HOMING
2019-05-27 17:17:20 +02:00
Paul Guenette
a4cdac52b8
Change move_incremental to use input_pos
2019-05-26 22:39:54 +02:00
Paul Guenette
73df226fc3
Merge anti_hunt
2019-05-25 19:38:52 +02:00
Paul Guenette
05711d1eba
Bring the anti-hunt functionality back
2019-05-25 19:35:15 +02:00
Paul Guenette
9e2476ed65
Remove anticogging_valid from config for now
2019-05-25 18:20:09 +02:00