Commit Graph
52 Commits
Author SHA1 Message Date
Unknown a2ebb7085c Merge branch 'devel' into Endstops 2018-10-06 13:33:21 -04: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
Unknown dc693ebd9c Merge branch 'devel' into Endstops 2018-09-27 20:42:30 -04: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
Unknown 92fe075b9e Fix existing calls to GPIO_Subscribe 2018-08-28 23:12:53 -04:00
Oskar Weigl 584b73920d fix incorrect shifting of offset during index callback 2018-08-24 20:43:28 -07:00
Unknown 14e917171d Rename pll_vel to vel_estimate 2018-08-23 22:26:26 -04:00
Oskar Weigl 19e3c779ae force offset cal after idx search, index now homes axis 2018-08-17 23:39:43 -07:00
Oskar Weigl e6f60e0b93 Merge branch 'master' into devel 2018-07-17 01:41:31 -07:00
Oskar Weigl 955aba11a5 fix axis error motor failed when encoder failed 2018-07-01 15:42:48 -07:00
Oskar Weigl a116c94075 sync shadow_count to count_in_cpr when calibrating 2018-06-22 00:44:03 -07:00
Oskar Weigl 37e01b9865 move bandwith to config 2018-05-15 17:27:12 -07:00
Oskar Weigl f1081afc7b encoder bandwidth configurable 2018-05-15 10:31:09 -07:00
Oskar Weigl a63c4a4a96 Merge branch 'fw4' into powerwheels 2018-05-15 10:23:16 -07:00
Oskar Weigl 3103eda5f9 Merge branch 'devel' into fw4 2018-05-15 10:22:19 -07:00
Oskar Weigl ebfe0755bd set bandwidth to 100 2018-05-14 01:54:02 -07:00
Oskar Weigl cafcdb4e29 center-align hall interpolation float offset 2018-05-14 01:53:01 -07:00
Oskar Weigl 439a32f530 reset encoder bandwidth back up to 1000 per s 2018-05-14 00:18:27 -07:00
Oskar Weigl 94245a608b explicit cast on num_steps 2018-05-12 22:24:17 -07:00
Oskar Weigl 1ace6422db explicit cast on num_steps 2018-05-12 22:20:41 -07:00
Oskar Weigl 7188e2a1c2 clean state machine level error writing 2018-05-10 14:42:35 -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
Samuel Sadok d6496ca574 save offset and set default cpr to 72 2018-04-27 15:04:43 -07:00
Samuel Sadok d827d7f1d1 set encoder to ready state on startup for hall effect mode 2018-04-27 12:08:23 -07:00
Oskar Weigl 512ba5e603 implement interpolation 2018-04-27 02:12:35 -07:00
Oskar Weigl f480059905 add sub-count phase alignment offset 2018-04-27 01:27:42 -07:00
Oskar Weigl 52b179d498 working hall, suspect commutation angle noise 2018-04-27 00:26:43 -07:00
Oskar Weigl b5a7be71df decode hall 2018-04-26 21:31:46 -07:00
Oskar Weigl 7d6ddc96b2 update encoder during calib 2018-04-26 13:46:47 -07:00
Samuel Sadok 8b696d29e0 change pos_cpr to pos_cpr_ 2018-04-23 20:10:02 -07:00
Samuel Sadok 1f504d1d99 Merge branch 'sam_testing' into sam_oskar_testing 2018-04-21 23:11:36 -07:00
Samuel Sadok 741a51442f split communication into multiple files 2018-04-20 23:44:55 -07:00
Oskar Weigl 7d99825988 snap pll_vel to 0 to avoid jitter 2018-04-15 15:55:36 -07:00
Oskar Weigl be50b6ee74 split set_count into linear and circular 2018-04-15 01:07:54 -07:00
Oskar Weigl 0b1bf6f278 implement circular vel pll tracking 2018-04-15 00:38:39 -07:00
Oskar Weigl 339fe59f30 make pos estimate available 2018-04-14 22:47:52 -07:00
Samuel Sadok b4fa53c849 fix encoder offset calibration and error handling 2018-04-10 15:49:00 -07:00
Samuel Sadok 09f361de61 fix encoder offset calibration and error handling 2018-04-09 19:32:36 -07:00
Samuel Sadok ae9a208f1f turn error enums into flags 2018-04-06 13:12:39 -07:00
Samuel Sadok ab698a9dce turn error enums into flags 2018-04-05 22:27:20 -07:00
Samuel Sadok b8b483c9d6 Firmware hardening
- check return code of enqueue_modulation_timings
 - wrap all hardware access to safety critical hardware timer registers in safety_critical_ sections. These functions like the armed-ness of each PWM output to a corresponding armed state that can only be set at start or by the user
 - ensure NaN in any variables doesn't cause unpredictable behavior on the safety critical PWM outputs
2018-03-30 22:32:07 -07:00
Samuel Sadok 69e1b5331a make encoder index search and encoder offset calibration independent
These two activities are now separate states of the axis state machine.
Each of them can be invoked independently at any time (provided the motor is calibrated).
2018-03-23 17:09:52 -07:00
Samuel Sadok 93d6a787cd Merge branch 'devel' of github.com:madcowswe/ODrive into sam_refactoring 2018-03-09 16:01:18 -08:00
Samuel Sadok 9486f9ed15 make stuff working again, improve state machine design, add underscore to member names 2018-03-09 13:37:07 -08:00
Samuel Sadok f5081352b3 refactor protocol 2018-03-08 12:56:24 -08:00