This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Following the instructions as per the quick start guide, when running the InstaSpin_FOC GUI, the follow error message appeared:
"Restarting Program Model...
Initializing target : C:\ti\guicomposer\webapps\InstaSPIN_FOC_F2806xM\appConfig.ccxml
Connecting target: Texas Instruments XDS100v2 USB Emulator_0/C28xx
sun.org.mozilla.javascript.internal.WrappedException: Wrapped com.ti.ccstudio.scripting.environment.ScriptingException: Error connecting to the target: emulation failure occurred (<Unknown source>#14) in <Unknown source> at line number 14Restart Completed."
Here is what I have verified thus far:
In addition, when running the debug from lab 1, the following error message is generated:
Error connecting to the target:
(Error -1135 @ 0x0)
The emulator reported an error. Confirm emulator configuration and connections, reset the emulator, and retry the operation.
(Emulation package 5.1.73.0)
Could you please suggest a solution?
Thanks for the help.
Hello,
There is no power for your MCU.
LD1 of your F28069M ControlCard should be ON when there is power.
LD4 is only for emulator indicator.
Can you check why?
Best regards,
Maria
Agree that it appears that your controlCARD doesn't have power, but it should as soon as you apply Vbus to the DRV8301 EVM. There aren't any other switch options on this EVM. Are you sure you didn't accidently apply power to the wrong location and damage the board? I've seen that a few times.
BTW - what kind of motor are you trying to run on this kit? Just be careful it if is a very low flux (high speed) motor as the board has voltage scale of 66V and you are only using 15V on the bus. It may be difficult to ID the motor and the low speed peformance will be a bit compromised.
Chris,
Thanks for your helpful comments and insights. I got the board working now on another dc power supply. LED 1 on the control card as well as on the board are now on. The old dc source wasn't providing any current, so your intuition that the board was not properly powered was correct.
The BLDC motor that I use has the following specifications:
KV4000 Outrunner Brushless Motor For Trex 450 RC Helicopter
Rotational Speed: 4000Kv (rpm/v)
Max KV value : 3813 rpm/v
Min KV value : 4387 rpm/v
No-load speed: 38130-43870 rpm/s
No-load current: 3.4-4.8A
Load voltage: 14.8V
Load current: 24.3V
Load power: 360W
Following the identification process, I was able to arrive at the following results posted below. The value for the rated flux of 0.0327964 V/Hz (under identification settings) seems to be different to the identified flux of 0.0384253 V/Hz. Am I missing something here? Anyways, in the next phase I shall attempt to run the BLDC motor separately with 6 step square wave current and with sinusoidal current (similar to how a PMSM is driven with vector control, but using BLDC motor). Could you refer to me whether there are existing source codes for those 2 current injection schemes, or will I have to develop the code myself? Any relevant material would be much appreciated, as I am running on a tight time budget.
identification settings
Estimation frequency=20Hz
motor pole pair=4
motor max current=5A
motor max frequency=800Hz
rated flux=0.0327964 Vline-line/Hz
motor parameters
Rs=0.0330863 ohm
Ld=Lq=0.0003336761 Henry
flux=0.0384253 V/Hz
Encountered a problem in lab02a. Have defined motor parameters and passed them null values.
#define MY_MOTOR 104 //defined this line
#define USER_MOTOR MY_MOTOR //added this line and commented out the line defining the current motor
#elif (USER_MOTOR == MY_MOTOR)
#define USER_MOTOR_TYPE MOTOR_Type_Pm
#define USER_MOTOR_NUM_POLE_PAIRS (4)
#define USER_MOTOR_Rr (NULL)
#define USER_MOTOR_Rs (NULL)
#define USER_MOTOR_Ls_d (NULL)
#define USER_MOTOR_Ls_q (NULL)
#define USER_MOTOR_RATED_FLUX (NULL)
#define USER_MOTOR_MAGNETIZING_CURRENT (NULL)
#define USER_MOTOR_RES_EST_CURRENT (1.0)
#define USER_MOTOR_IND_EST_CURRENT (-1.0)
#define USER_MOTOR_MAX_CURRENT (5.0)
#define USER_MOTOR_FLUX_EST_FREQ_Hz (20.0)
After building lab02 and hitting debug button, the follow error occurs: load program error; encountered problem loading file
From the GUI (which I had running for identifying motor parameters), I get the following warning message:
ERROR : C28xx: Failed to remove the debug state from the target before disconnecting. There may still be breakpoint op-codes embedded in program memory. It is recommended that you reset the emulator before you connect and reload your program before you continue debugging |
I think may have somehow exited the debugging mode from lab01 prematurely. How do I clear the breakpoint op-codes in program memory? How should I have exited the debugging mode?7127.lab2-problem.docx
yue,
the parameters you ID'd are incorrect. I can tell because
1. Your Ls value is much too large. These types of motors will have ~5-30uH typically. You have 333uH.
2. Your Rs / Ls = 100 Hz. because your Ls is too low. Your R/L for this motor will certainly be > 3 KHz
3. You say this has 8 poles. For 44 KRPM that's nearly 3 KHz. Is that correct? That means you need to run the estimator and current loops at least 24 KHz...that's going to consume many, many MIPS.....over 70 MIPS. Won't fit on a 27F device. Are you sure you don't have 4 poles? That is more reasonable.
4. Your max Hz of 800 is incorrect. It will either be 1500 or 3000, but you can only increase this to 4 * the user.h filter pole, which gives a limit of about 1400 on the BOOSTXL-DRV8301.
5. Your estimation frequency is too low
#define USER_MOTOR_FLUX_EST_FREQ_Hz (20.0)
try (100.0)
6. Your flux is very large for this motor. 0.038 V/Hz doesn't make sense. It will produce 14V (your bus voltage) at only 368 Hz.
are you using the spreadsheet we provide? It doesn't seem like it....
yue yao said:Anyways, in the next phase I shall attempt to run the BLDC motor separately with 6 step square wave current and with sinusoidal current (similar to how a PMSM is driven with vector control, but using BLDC motor). Could you refer to me whether there are existing source codes for those 2 current injection schemes, or will I have to develop the code myself? Any relevant material would be much appreciated, as I am running on a tight time budget.
We don't offer square wave BLDC control in MotorWare, nor is the HW on the BOOSTXL-DRV8301 applicable (no sum current return).
InstaSPIN-FOC already runs in sinewave control through a modulation index of 1.0. Over 1.0 it moves into space vector and then into trapezoidal square wave.
Thanks for your quick reply, Chris. Just to clarify, the kit can inject sinusoidal current with space vector control, and for trapezoidal square wave current is achieved through over-modulation? Can you refer me the most relevant application note/ code/ example for sinewave and trapezoidal square wave schemes? I have motorware and control suite installed.
Let's make this simple. Suppose the first task is to drive the BLDC motor with pure sinusoidal current (is this implementable with this board? I realize this can cause torque ripple due to unmatched shape of current and back emf), how can I implement it? Please provide as much detail as necessary as I am still not very familiar with the board's hardware.
Many thanks in advance.
Yue
yue yao said:Thanks for your quick reply, Chris. Just to clarify, the kit can inject sinusoidal current with space vector control, and for trapezoidal square wave current is achieved through over-modulation?
yes, essentially
yue yao said:Can you refer me the most relevant application note/ code/ example for sinewave and trapezoidal square wave schemes? I have motorware and control suite installed.
MotorWare proj_lab10 covers over-modulation.
The write-up hasn't been added to the lab Guide, but I cover it in part 5 of the InstaSPIN-FOC training
http://www.ti.com/ww/en/mcu/instaspin/support_community.shtml
yue yao said:Suppose the first task is to drive the BLDC motor with pure sinusoidal current (is this implementable with this board?
Yes, this is what is done with a modulation setting of 1.0
yue yao said:I realize this can cause torque ripple due to unmatched shape of current and back emf
No, the opposite. If you drive a motor with trapezoidal that is when you get more torque ripple. Torque ripple is also more prevalent with higher short circuit current motors (larger flux and/or very low inductance). If you have a trapezoidal wound motor you can drive it with sinewaves just fine. What you will see is that you will miss out on a small amount of possible torque when using sinewaves on a trap wound motor, but the benefits from using an FOC technique make up for this IMO.