- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Greetings of the day,
Currently am working on 'Over Current Protection' in BLDC Hall sensor Controlling using XMC1300 MCU with custom motor designed for max current = 150A and trying to set over current limit, but here am bit confused with below 2 parameters MOTOR0_BLDC_SCALAR_OVER_CURRENT and MOTOR0_BLDC_SCALAR_SHORTCIRCUIT_CURRENT ? can you explain me in detail how to configure above 2 parameters and how it works ?
1) Am configuring MOTOR0_BLDC_SCALAR_OVER_CURRENT to 5A and motor stops initially in Power ON, It is detecting fault and entering into Protection ISR ? Is it considering the difference between bound0 and bound1 ?
2) In UM of XMC1300 It is mentioned that Event is trigger when it is in boundary limits, but in SW it is mentioned that after exceeding boundary limits only over current is detected. which is to be considered ?
Note: Please check the below 2 Images Highlighted.
3) I have go through the BLDC_SCALAR_HALL_XMC1300 user guide, but am unable to detect fault,
below is the DC bus voltage (Blue)and DC bus current (Yellow) captured at 1000 RPM and getting noise at DC input (DC current). Any issue with noise I have tried using averaging method also but it is not detecting fault when set to 5A.
Can you please help me to come out of these issue
Thanking you
Suraj, N
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello @Suraj
I have the following comments on your issue:
1. If you are sensing 150 A with a range of 800mV, it means that the resolution is 0.0053V/A. This resolution is too low and will lead to inaccurate results. The resolution will be comparable to the noise and will affect the sensing.
2. You may arrange for zero input to the motor (motor switched off) and sense the CT output. This way you may be able to find out the noise margin along with the DC offset. One way to find out the noise margin is to view the waveforms in AC coupling mode. We know that the resolution is 5.3mV/A. So, for example, a noise margin of 53mV will mean that there will be sensing inaccuracy of 10A.
3. Could you please let us know the rated current for the motor you are using? For example, if your motor is rated for 20A, you employ soft starting and limit the initial current. This way you can reduce the maximum sensing limit such that the resolution improves.
4. Please let us know the basis for selecting an overcurrent rating of 5A when you have a current sensing limit of 150A. You have mentioned that your initial motor current is 500mV, which means a current of 94A. So, an over-current limit of 5A seems odd.
5. Please implement a buffer to get the ADC log in debug mode.
Best Regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Suraj ,
I recommend using the BLDC_SCALAR_SL_XMC13_uCProbe code example. This code example comes with GUI in uCProbe for visualizing the current operation/state of the drive. It indicates different errors/faults in Realtime.
MOTOR0_BLDC_SCALAR_OVER_CURRENT- Is used in calculations of the boundary conditions
MOTOR0_BLDC_SCALAR_SHORTCIRCUIT_CURRENT – This is the current limit beyond which the motor will stop rotating.
- Am configuring MOTOR0_BLDC_SCALAR_OVER_CURRENT to 5A and motor stops initially in Power ON, It is detecting fault and entering into Protection ISR ? Is it considering the difference between bound0 and bound1 ?
>> If your system is designed for a max current of 150A then the initial current will be higher than the 5A. Which can cause a shutdown of the system. Could you please let me know the initial current for your system?
- In UM of XMC1300 It is mentioned that Event is trigger when it is in boundary limits, but in SW it is mentioned that after exceeding boundary limits only over current is detected. which is to be considered ?
>> As per the user manual it is stated:
“Overcurrent Protection: Continuous over current is checked for every PWM period and the motor is stopped if the current is more than the user-specified current limit for the user-specified time period. This functionality is realized using ADC limit check.”
>> It will start detecting after the upper boundary is crossed and will wait for the user-specified time and will stop if the over-current persists beyond this time.
Q1. Could you please let us know about your sensing setup for the VDCbus and VDClink current?
Q2. Please also let us know the scaling factor in the measurements. What is the noise band with respect to the nominal value?
Q3. What is the nominal current for your drive?
Please let us know if you need further clarification.
Thank you
Best Regards
Raj Chaudhari
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Greetings of the day,
Thanks for the reply
Q1. Could you please let us know about your sensing setup for the VDCbus and VDClink current?
We are using Current Transducer (CT Card) with Offset of 1.65 V directly connected to ADC pin (I_DC) and
we measured in load testing CT reaches to 2.45 V for max current of 150A
Note: Is it possible to detect current of 5A to 150A with 800mV difference
Q2. Please also let us know the scaling factor in the measurements. What is the noise band with respect to the nominal value?
Configured Parameters
Current Amplifier Offset = 1.65
Current Amplifier gain = 1 V
Rshunt = 5mOhms, Calculated according to our O/P voltage of 2.45 V
Current Limit = 5A
Time duration = 50ms
Short circuit current = 100 A
Q3. What is the nominal current for your drive?
1) Initially after Power ON DC link Current is Less than 500 mV and Phase Currents (UVW) are with less currents
Note: CT offset is varying from 1.65 to 1.75 because there is noise when drive is Power ON (Observed from DSO)
2) After Motor running with Initial or starting Speed 20A flows through all Phase Currents and DC link current is changing based on applied Speed a
Note: At maximum SPEED = 2000 RPM, DC link current holds 11A current
What is the difference between DC link Current measurement and Average DC link current measurement ?
How can we Compare both Voltages ? Is It possible to take Log for ADC count of both at Fixed Speed (ex:1000 RPM)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello @Suraj
I have the following comments on your issue:
1. If you are sensing 150 A with a range of 800mV, it means that the resolution is 0.0053V/A. This resolution is too low and will lead to inaccurate results. The resolution will be comparable to the noise and will affect the sensing.
2. You may arrange for zero input to the motor (motor switched off) and sense the CT output. This way you may be able to find out the noise margin along with the DC offset. One way to find out the noise margin is to view the waveforms in AC coupling mode. We know that the resolution is 5.3mV/A. So, for example, a noise margin of 53mV will mean that there will be sensing inaccuracy of 10A.
3. Could you please let us know the rated current for the motor you are using? For example, if your motor is rated for 20A, you employ soft starting and limit the initial current. This way you can reduce the maximum sensing limit such that the resolution improves.
4. Please let us know the basis for selecting an overcurrent rating of 5A when you have a current sensing limit of 150A. You have mentioned that your initial motor current is 500mV, which means a current of 94A. So, an over-current limit of 5A seems odd.
5. Please implement a buffer to get the ADC log in debug mode.
Best Regards