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.

Switching between sensored and sensorless

Other Parts Discussed in Thread: INSTASPIN-BLDC, CCSTUDIO, DRV8312

Hello,

I have been using the InstSpin GUI for a while now, very successfully except for one issue: I have to give my motor (not the one with the kit) a slight push to get started and then it runs fine. To get around this I was hoping to use the hall sensors I have to get me started from zero.

So I switched to the PMSM/BLDC GUI which gives me the option of sensored versus sensorless control. It works fine for the motor that came with the kit. When I plug in my motor it seems to try and work for about 5 seconds. Current slowly ramps up and then comes to sudden halt. The motor either gets confused and then does a sudden jerk or it spins for the 5 seconds. No fault conditions arise the controller just stops pushing any current.

I did change two lines of code allowing the minimum Voltage to the motor to be +12V.

This GUI does not give me the option to change number of poles or frequency. Will I need to do that in the .c file? If so where?

Also I was wondering if there is an option to set what spacing / angles my hall sensors are set at (30 degrees)?

If there were a start from zero, feed forward type of option in the InstaSpin GUI that would be awesome!?

Thank you in advance for any help.

Matt

  • Matthew,

    You weren't very clear on which exact package you are using, but from the context my guess is that you have

    DRV8312-C2-KIT

    And that you used InstaSPIN-BLDC GUI initially, where you noted that you need to give it a slight push.  This shouldn't be necessary. You should be able to increase the duty cycle to allow more current to get the motor to initially start. You can also look  the advanced start-up features. These are particularly useful for lower inductance and higher current motors.

    You then switched to DRV8312GUIv5.exe

    This GUI isn't meant to allow you to just plug in your own motor. The software for Hall based and sensorless SMO based control have been tuned for the kit motor. Moving to your own motor is possible, but you need to move the CCStudio based projects and work through the tuning based on the documentation.

    IF you want your motor to be able to run sensorless (using our FAST observer) instantly, I recommend you purchase TMDSCNCD28069MISO controlCARD, plut into your DRV8312 board, and use InstaSPIN-FOC or InstaSPIN-MOTION GUI or projects.  I highly recommend this path, you will be very pleased with the results and performance.

     

  • Thank you Chris.

    I have the TMDSCNCD28069MISO controlCARD and have been pleased with its performance. 

    My motor is very low current and high inductance. The flux threshold I use during normal operation is 0.03. Increasing the duty cycle works occasionally but sometimes it will get stuck (seems more like it is lost than stuck) the current will go up to the stall current at it will just sit there. 

    If I change the flux threshold to zero the wheel starts on its own 99% of the time. The 1% it doesn't work, changing direction usually solves the problem. 

    What is the controller doing when the flux threshold is zero? If it doesn't know when to commutate does it try and commutate as fast as it can?

    Thanks,

    Matt

  • I believe when the threshold is zero it is pretty much rotating through the commutation states every control cycle. You can monitor the output of the IS-BLDC block to see the state transition.