Other Parts Discussed in Thread: DRV8301,
Hi,
I started with the DRV8301-HC-EVM with TMS320F28069 control card for development and now I am testing my first revision of hardware. I used most of the same circuits (µC, DRV8301, current measurement, BEMF measurement, 1.65V reference, etc..) as the EVM but obviously the layout is different. Our application requires the motor to start and stop many times into a variety of hydraulic loads so I would like to to utilize the Rs Online algorithm but first I wanted to validate the RsRecalc measurement with my hardware to ensure repeatable results.
For all of the information below I used Lab4 with the Flag_enableRsRecalc = true in main.h.
MAIN QUESTIONS:
- What accuracy should I expect (measurement to measurement on one hardware and between different sets of same revision hardware) for the RsRecalc value? I know there will be variability but what should be considered good enough for the FOC algorithm and for Rs Online going forward?
- How is Rs measured during RsRecalc? I know there is a DC current and there must be a voltage measured somewhere. I want to understand what hardware affects the measurement/calculation.
Below is data for reference, all from the same motor. I also included the gMotorVars.I_bias.value[x] values
Rs = 13.3mΩ (measured on a milliohm meter with Rphase to Rphase Y = 26.6mΩ)
Values recorded using DRV8301-HC-EVM with different current measurement scaling configurations.
Rs | gMotorVars.I_bias.value[0] | gMotorVars.I_bias.value[1] | gMotorVars.I_bias.value[2] | |
EVM #1 Lab 4 RsRecal=true 3 shunts
USER_ADC_FULL_SCALE_CURRENT_A (41.25) USER_ADC_FULL_SCALE_CURRENT_A (272) 1k and 20k for Imeasure op amp circuits, 0.002Ω shunt 17.8k and 4.99k divider for all voltage measurements |
0.016182 | 0.989415 | 0.981926 | 1.000942 |
0.015964 | 0.989573 | 0.981939 | 1.000902 | |
0.016230 | 0.989554 | 0.981799 | 1.000827 | |
0.016370 | 0.989623 | 0.981882 | 1.000935 | |
0.016384 | 0.989376 | 0.981772 | 1.000750 | |
0.016191 | 0.989540 | 0.981902 | 1.000829 | |
AVERAGE | 0.016220 | 0.989514 | 0.981870 | 1.000864 |
EVM #1 Lab 4 RsRecal=true 3 shunts
USER_ADC_FULL_SCALE_CURRENT_A (165) USER_ADC_FULL_SCALE_CURRENT_A (330) 1k and 20k//6.64k for Imeasure op amp circuits, 0.002Ω shunt 17.8k and 4.99k divider for all voltage measurements |
0.015795 | 0.995750 | 0.991929 | 1.002518 |
0.015848 | 0.995718 | 0.991698 | 1.002228 | |
0.015545 | 0.995529 | 0.991541 | 1.002182 | |
0.015995 | 0.995428 | 0.991787 | 1.002359 | |
0.015873 | 0.995682 | 0.991952 | 1.002550 | |
0.016205 | 0.995464 | 0.991529 | 1.002242 | |
AVERAGE | 0.015877 | 0.995595 | 0.991739 | 1.002347 |
EVM #1 Lab 4 RsRecal=true 3 shunts
USER_ADC_FULL_SCALE_CURRENT_A (136) USER_ADC_FULL_SCALE_CURRENT_A (272) 1k and 12.1k for Imeasure op amp circuits, 0.001Ω shunt 17.8k and 4.99k divider for all voltage measurements (SAME SCALING CIRCUITS AS MY HARDWARE) |
0.014882 | 0.993159 | 0.990278 | 0.999778 |
0.016156 | 0.992771 | 0.990272 | 0.999641 | |
0.015642 | 0.992970 | 0.990390 | 0.999736 | |
0.015950 | 0.992773 | 0.990390 | 0.999635 | |
0.015697 | 0.992756 | 0.990467 | 0.999681 | |
0.015354 | 0.992895 | 0.990347 | 0.999714 | |
AVERAGE | 0.015613 | 0.992887 | 0.990357 | 0.999697 |
Values recorded using my hardware (using 2 shunts):
- USER_IQ_FULL_SCALE_CURRENT_A (136)
- USER_ADC_FULL_SCALE_CURRENT_A (272)
- 1k and 12.1k for Imeasure op amp circuits, 0.001Ω shunt
- 17.8k and 4.99k divider for all voltage measurements
- user.h is attached
Rs | gMotorVars.I_bias.value[0] | gMotorVars.I_bias.value[1] | |
MC9 | 0.017040 | 0.996757 | 0.999924 |
0.017002 | 0.996795 | 0.999876 | |
MC8 | 0.013684 | 1.004826 | 1.004693 |
0.013659 | 1.004655 | 1.004578 | |
MC12 | 0.012777 | 1.005780 | 0.995970 |
0.012679 | 1.005858 | 0.996072 | |
MC13 | 0.013903 | 1.000876 | 0.996826 |
0.014261 | 1.001014 | 0.996924 |