You are here

2. Motor Setup Wizard

Submitted by frank on Tue, 2017-10-03 19:49

Configuration of your VESC® or VESC® based ESC using the VESC®-Tool Software.


In this tutorial we will configure a genuine VESC® motor controller in combination with a BLDC motor.
We will run the motor in FOC mode and we will make use of Hall sensors.

Make sure to use the latest VESC-Tool version!
Download from http://www.vesc-project.com/vesc_tool


Vesc-Tool_MSM_intro


Vesc-Tool_MSW_wiring


Connect your VESC® to your computer using a mini/micro USB cable.

Mini USB is used for HW 4.xx only. Some cheap micro USB cables are designed for charging your
phone and will not work properly! Try another cable if you experience any issues.

Run the VESC®-Tool software.


Vesc-Tool_MSW_connect


Vesc-Tool_MSW_start


Vesc-Tool_MSW_default


VESC-Tool MSW_choose FOC


Now we get the following options:

FOC = Field-Oriented Control
Advanced control mode (sinusoidal, silent, more efficient,
better motor sensor operation).
May cause damage to 3rd party hardware!

BLDC = Trapezoidal Control
More simple control mode (block commutation), noisier, hall-sensor operation
less accurate at this stage. Safer for operation of 3rd party hardware.

DC = Only for DC motors. Use phase wire A and C only!

VESC-Tool MSW_choose FOC


Vesc-Tool_FW_current limits warning


The following explanations will help you to configure your current limits correctly:

Motor Current Max: The maximum current your motor can handle continuously (Ampere). Please refer to the motor specifications of your motor. You may use lower values to de-power your setup.
Our motor can handle 50A, but we will only set it to 30A to get started. You can boost your settings once you feel comfortable. A safe approach towards higher values is highly recommended (e.g. start with 15A only).
Hint: This value can be greater than the Battery Current Max value, resulting in a higher motor power output at part throttle. At max throttle the Battery Current Max is the limiting value if set lower than Motor Current Max
Motor Current Max Brake: The maximum current output you allow your motor to produce when operated as a generator. Electric vehicles may use the motor as a brake, generating energy when slowing down the vehicle. The energy produced will be stored in the battery. In this tutorial we will set the value to -25A to get started. The value should not be higher than the max. continuous current specification of the motor.
Hint: Higher values will result in stronger brakes if the Battery Current Max Regen settings allows the storage of the current generated.
Battery Current Max: The maximum continuous current your battery is rated for. Please refer to your battery specifications for safe settings. LiPo-pack batteries are usually C-rated. A 5800mAh, 25C rated battery can handle 5.8A x 25=145A max. Manufacturers often overrate the batteries and cutting the value in half is recommend. We will use 72A max for safety reasons.
Hint: Since our Motor Current Max is set to 30A, we could use 30A for the battery as well.
Technically there is no reason to use a higher value than the Motor Current Max.
Battery Current Max Regen: The maximum current you allow the VESC to push towards your battery or battery management system (if incorporated in your system) when braking. This value should not exceed the maximum charge current rating of your battery or capability of your battery management system. Our battery is 5C rated for charging. We use a 5800mAh battery.
5.8A x 5 = 29A max. charge current.  Again: Better be pessimistic with those values! We will set it to -20A.

Hint: Since this value is lower than the Motor Current Max Brake (-25A), the firmware will limit the ampflow towards the Battery to -20A, regardless of the higher value we specified for Motor Current Max Brake (-25A). In consequence our maximum motor brake force is limited by the lower Battery Current Max Regen value.

Vesc-Tool_MSW_current limits set


Vesc-Tool_MSW_battery cutoff_warning

Now we will configure your battery cutoff voltage.

If you discharge your battery below a certain voltage, it will get damaged permanently. LiPo packs or Lithium ion Batteries usualy operate between 4.2V and 3.1V per cell. Do not allow your system to discharge them beyond 3.1V per cell! For this reason the VESC will measure your battery voltage and will start to softly cutoff the power at 3.4V per cell (Battery Votage Cutoff Start) and it will perform a hard cutoff at 3.1V per cell (Battery Votage Cutoff End).

You can also set custom values if your cells have different ratings.

Battery Voltage Cutoff End = number of cells in series x minimum cell voltage

VESC-Tool MSW_battery cutoff_set values


Next step is the choice of motor sensors

Sensors help the VESC to know the rotor position in refenrence to the copper coils. This way the motor can perform a relatively smooth startup from 0 RPM. If your motor features sensors you should make use of them. At higher RPM, the VESC will use back EMFs to calculate the rotor position. The RPM for switching to back EMF operation can be defined later.

No sensors: without motor sensors the motor needs to turn a bit, so the VESC can calculate the rotor position from the back EMF current flow that the magnets will induce into the copper coils when they rotate around the  the motor stator. Startup from 0 RPM is possible but a bit shaky.

Hall sensors: A transducer that varies its output voltage in response to a magnetic field. Usually a set of three sensors are acurately positioned inside or outside the motor to roughly determin the position of the rotor.
Commonly used, not very precise, good enough to guarnatee a smooth startup of a vehicle from standstill.

AS5047 Encoder: This is a chip sensing the magnetic field of a diametrally magnetized magnet, attached to the motor shaft. The precision is very high (14 bit) and allows very accurate determination of the rotor position.

ABI: Output signal of an incremental rotary encoder (mechanical, optical or magnetic).

Our motor has Hall sensors, so we will choose Hall sensor operation.

Vesc-Tool_MSW_select sensors


Next step is to measure your motor parameters

For the best possible result, do the detection without attached drive train, propellers etc.

Every single motor is unique and the VESC needs to know certain parameters to run the motor. The VESC needs to know the motor resistance, electrical inductance and flux linkage (λ). From these basic values other values can be calculated that are essential for the motor operation. So that‘s what we will do now.

Step 1:measure RL
The motor will make a loud humming noise

Step 2:measure λ   
The motor will spin up. Make sure to disassemble propellers or lift up your vehicle from the ground or take any preparations necessary to allow your motor to spin up freely.

Step 3:Apply values

Vesc-Tool_MSW_motor parameter_01

Vesc-Tool_MSW_motor parameter_02

Vesc-Tool_MSW_motor parameter_03

Vesc-Tool_MSW_motor parameter_04

Vesc-Tool_MSW_motor parameter_05


Vesc-Tool_MSW_sensor calibration_01

Make sure that your motor can rotate freely, since the motor will start to turn slowly now.

Vesc-Tool_MSW_sensor calibration_02

Vesc-Tool_MSW_sensor calibration_03


Vesc-Tool_MSW_finish


Congratulations, you have finished the Motor Setup Wizard.

Please continue with the Input Setup Wizard.

Comments

Hello,

I am trying to go through the set up wizard for a BDLC motor and it will briefly work but then instantly stop.  How can I debug this?

Thanks

Use a debugger: If you have access to a debugger, use it to step through the code and identify any errors wordle or issues in the code that may be causing the motor to stop.

I really like your posts. Thanks for this useful information 

bitlife

Many motor controllers provide error codes when there is an issue with the motor. Check the manual for your specific motor controller wordiply to see if there are any error codes and what they mean.

Your articles have helped me to learn a lot of interesting information on this topic 

mapquest directions and they are important material from which I can come up with many good ideas. 

slither io 

Motors have many advantages if we compare it to the engine. Cost is a major reason in any aspect that we take in the notice and i have read in essays-studymoosereviews as a major advantage of its lower cost than engines. Overall this article is new for me to get information from here..!!

You've done it again by providing this knowledge, mapquest directions which is engaging and educational from beginning to end.

Your post Share is a magnificent jewel due to the breadth and mapquest directions depth with which it treats the topic.

A Metal Roofing System might seem expensive at first sight, but when you consider everything else involved, you will find that it’s actually the most economical and the most practical option to go with. metal roofing systems st petersburg

Pages