raiden00pl
144bf0bd1f
examples/foc: remove obsolete CONFIG_EXAMPLES_FOC_IPHASE_ADC option
2023-11-15 18:49:42 +01:00
raiden00pl
fa19b71ba4
examples/foc: get iphase scale from the FOC device interface
2023-11-15 03:48:53 -08:00
raiden00pl
9eb5bd4091
examples/foc: pass from velocity controller to torque controller
2023-11-14 09:46:07 -08:00
raiden00pl
ce53f0fc4c
examples/foc: add torque saturation
2023-11-14 09:46:07 -08:00
raiden00pl
dc4330476d
examples/foc: add velocity saturation
2023-11-14 09:46:07 -08:00
raiden00pl
32a8c29753
examples/foc: don't raise error when EXAMPLES_FOC_IPHASE_ADC isn't set
...
This is the first step towards getting rid of CONFIG_EXAMPLES_FOC_IPHASE_ADC completely
2023-11-14 04:42:13 -08:00
raiden00pl
eeacbdde3a
examples/foc: get velocity from observer if sensored mode
2023-11-14 10:30:52 +01:00
raiden00pl
c5314b54a4
examples/foc: fix active brake for sensored mode
2023-11-14 10:30:52 +01:00
raiden00pl
cb36d9c8b2
examples/foc: fix compilation for open-loop without angle observer
2023-11-14 10:30:52 +01:00
raiden00pl
b52f7dae0c
examples/foc: set direction when updating new setpoint
2023-11-13 08:49:21 -08:00
raiden00pl
1095aec162
examples/foc: start from the beginning if control loop is started
...
After the start request to FOC device, we should return to the
beginning of the loop and wait for the first synchronization event.
This also fixes the problem with the extended first loop cycle,
so we can remove the workaround in foc_perf.
2023-11-13 08:48:22 -08:00
raiden00pl
f9a4ace59a
examples/foc: fix warning for sensored configurations
2023-11-13 08:47:21 -08:00
raiden00pl
87dcf877e7
examples/foc: raise error if both sensorless and sensored modes enabled
2023-11-13 08:47:21 -08:00
raiden00pl
8a04e2b282
examples/foc: add #error messages
2023-11-13 08:47:21 -08:00
raiden00pl
3c541c496b
examples/foc: allow sensored velocity mode
2023-11-13 08:47:21 -08:00
raiden00pl
9ba7092000
examples/foc: add support for control loop performance measurements
...
also format CMakeLists.txt
2023-11-06 09:02:28 +08:00
raiden00pl
73ab7dedd4
examples/foc: refactor control loop
...
1. get FOC device state at the beginning of the loop
2. simplify if-else block
2023-11-05 13:56:52 +08:00
raiden00pl
7e918964e4
remove examples/xxx/README.md. Migrated to Documentation/applications/examples
...
part of examples/bastest is moved to examples/bastest.testcases.md
2023-10-30 10:00:01 +08:00
raiden00pl
292b0cbc28
examples/foc: change the velocity ramp parameters scale to x1
...
controlling the ramp with greather accuracy makes no practical sense
2023-10-29 10:40:27 +08:00
raiden00pl
8568439b80
examples/foc: configure acceleration and deceleration from command line
2023-10-29 10:40:27 +08:00
raiden00pl
aad2bcb621
examples/foc: use the current configuration values when printing the help message
...
This is useful when tuning the controller and running application many times with different parameters from the NSH
2023-10-19 19:18:48 -04:00
raiden00pl
1c922f2d2d
examples/foc: add phase angle observer support (sensorless mode)
...
This app can work now as sensorless ESC.
Also introduce a cmd line option that force open-loop control
which is useful when tuning angle/velocity observers
2023-10-19 19:33:43 +08:00
raiden00pl
8398297518
examples/foc: add an option to call nxscope work from control thread
...
This alows nxscope data to be sent with every cycle of the control loop,
which increases the execution time of the control loop, but allows data
to be sent at a highier frequency using the small nxscope buffer.
Useful when tuning and debuging using RTT transfer.
2023-10-19 01:24:07 +08:00
raiden00pl
4652c5516d
examples/foc: rename SETPOINT_ADC_SCALE to SETPOINT_INTF_SCALE
...
SETPOINT_INTF_SCALE is more appropriate name because this definition is not only used for ADC scale
2023-10-18 14:15:47 +08:00
raiden00pl
de6a384668
examples/foc: add velocity PI controller
2023-10-18 14:15:12 +08:00
raiden00pl
9dde6983e6
examples/foc: add support for feedforward compensation
2023-10-17 22:45:26 +08:00
raiden00pl
c8a4abfcb2
examples/foc: remove align configuration checks
...
these are already done when you configure the align routine
2023-10-17 22:42:42 +08:00
raiden00pl
fd0da7d4df
examples/foc: open-loop needs initial phase alignment
2023-10-17 22:42:42 +08:00
raiden00pl
8e0819df04
examples/foc: add velocity observers
2023-10-17 22:42:42 +08:00
raiden00pl
9bcca69967
examples/foc: initialize motor phy
2023-10-17 22:42:42 +08:00
raiden00pl
9ee4daea43
examples/foc: configure active breake current
2023-10-17 14:24:58 +08:00
raiden00pl
e8ff9ad005
foc/example/Kconfig: cosmetics
2023-10-17 14:23:42 +08:00
raiden00pl
969607ac44
examples/foc: fix setpoint scale for char interface
2023-10-17 14:23:42 +08:00
raiden00pl
4c4976a4e9
examples/foc: add warning if no controller enabled
2023-10-17 14:23:42 +08:00
raiden00pl
5dd4813b34
examples/foc: fix wrong nxscope functions for fixed16
2023-10-16 13:53:40 -04:00
raiden00pl
8ee684e586
industry/foc: make direction alignment configurable
...
for sensorless velocity controller (ESC) we don't need to align the direction,
but we have to align the initial motor phase each time the motor start
2023-10-16 13:44:37 -04:00
raiden00pl
b88057fffd
examples/foc: support svm3 state with nxscope
2023-10-05 20:42:46 +08:00
raiden00pl
a56f0922c5
industrial/foc: add an interface that returns the modulation state
...
Useful for debugging and demonstrating FOC operation
2023-10-05 20:42:46 +08:00
raiden00pl
5cbd9b2b7b
examples/foc: allow nxscope transfer over RTT interface
...
For UART serial interface TERMIOS is required, but for RTT serial interface it's not.
2023-10-02 21:46:52 +03:00
Xiang Xiao
8083b094c3
Kconfig: Simplify the conditional default statement
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-07-25 09:51:09 +08:00
raiden00pl
ed370ec674
cmake: port nxscope and foc and add missing directories
2023-07-14 22:04:35 +08:00
raiden00pl
7e5a436ff9
examples/foc: add real time data capture with the NxScope library
2023-05-19 20:18:38 +08:00
raiden00pl
55b296a5c6
examples/foc/foc_thr: get controller type from controller ID
2023-05-19 20:18:38 +08:00
raiden00pl
54bcf3afdd
examples/foc/foc_thr: fix mutex logic
2023-05-19 20:18:38 +08:00
raiden00pl
111e02dbdb
examples/foc: improve the readability of the motor structures
2023-05-17 13:45:24 +08:00
raiden00pl
caba5a0a6f
examples/foc: add missing deinit calls
2023-05-15 13:19:34 -03:00
raiden00pl
f358bdfcb3
examples/foc: send messages only to active control threads
2023-05-15 13:19:34 -03:00
raiden00pl
beb5369a0d
examples/foc/foc_main.c: fix de-initialization sequence
2023-05-15 13:19:34 -03:00
raiden00pl
cc189ef170
examples/foc: add controller IDLE mode
2023-05-15 13:19:34 -03:00
Xiang Xiao
7c37421266
Replace all sprintf with snprintf
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-05-08 21:35:16 +03:00