From 77c36c01e2c22527eed69770ae7e470978827862 Mon Sep 17 00:00:00 2001 From: naikymen Date: Sun, 12 Nov 2023 21:01:39 -0300 Subject: [PATCH 1/2] add steps to measure the phase resistance --- .../hardware/motors/3-phase-3-wire-delta.svg | 147 ++++++++++ .../hardware/motors/3-phase-3-wire-star.svg | 134 +++++++++ .../hardware/motors/3-phase-4-wire-star.svg | 156 ++++++++++ .../motors/3-phase-configurations.svg | 277 ++++++++++++++++++ .../hardware/motors/index.md | 7 +- .../hardware/motors/phase_resistance.md | 71 +++++ 6 files changed, 791 insertions(+), 1 deletion(-) create mode 100644 docs/simplefoc_library/hardware/motors/3-phase-3-wire-delta.svg create mode 100644 docs/simplefoc_library/hardware/motors/3-phase-3-wire-star.svg create mode 100644 docs/simplefoc_library/hardware/motors/3-phase-4-wire-star.svg create mode 100644 docs/simplefoc_library/hardware/motors/3-phase-configurations.svg create mode 100644 docs/simplefoc_library/hardware/motors/phase_resistance.md diff --git a/docs/simplefoc_library/hardware/motors/3-phase-3-wire-delta.svg b/docs/simplefoc_library/hardware/motors/3-phase-3-wire-delta.svg new file mode 100644 index 0000000..b0eeea4 --- /dev/null +++ b/docs/simplefoc_library/hardware/motors/3-phase-3-wire-delta.svg @@ -0,0 +1,147 @@ + + + +image/svg+xml diff --git a/docs/simplefoc_library/hardware/motors/3-phase-3-wire-star.svg b/docs/simplefoc_library/hardware/motors/3-phase-3-wire-star.svg new file mode 100644 index 0000000..18c885c --- /dev/null +++ b/docs/simplefoc_library/hardware/motors/3-phase-3-wire-star.svg @@ -0,0 +1,134 @@ + + + +image/svg+xml diff --git a/docs/simplefoc_library/hardware/motors/3-phase-4-wire-star.svg b/docs/simplefoc_library/hardware/motors/3-phase-4-wire-star.svg new file mode 100644 index 0000000..bfcbead --- /dev/null +++ b/docs/simplefoc_library/hardware/motors/3-phase-4-wire-star.svg @@ -0,0 +1,156 @@ + + + +image/svg+xml Nabc diff --git a/docs/simplefoc_library/hardware/motors/3-phase-configurations.svg b/docs/simplefoc_library/hardware/motors/3-phase-configurations.svg new file mode 100644 index 0000000..b01f234 --- /dev/null +++ b/docs/simplefoc_library/hardware/motors/3-phase-configurations.svg @@ -0,0 +1,277 @@ + + + +image/svg+xml Nabc diff --git a/docs/simplefoc_library/hardware/motors/index.md b/docs/simplefoc_library/hardware/motors/index.md index a60300d..7cc0e8e 100644 --- a/docs/simplefoc_library/hardware/motors/index.md +++ b/docs/simplefoc_library/hardware/motors/index.md @@ -25,12 +25,17 @@ Arduino SimpleFOClibrary su - 2 phase (4 wire) ## 📢 Make sure to read this before running any motor! + Before running any BLDC motor with the SimpleFOClibrary please make sure your hardware can handle the currents your motor requires. -The simplest way to do it is by checking the motor phase resistance `R`. Either check the datasheet of your motor and search for the resistance value or measure it yourself using a multimeter. Then check the value of your power supply voltage `V_dc` and once when you have the values you can find the maximum current `I_max` value by calculating: +The simplest way to do it is by checking the motor phase resistance `R`. Either check the datasheet of your motor and search for the resistance value or [measure it yourself using a multimeter](./phase_resistance.md). + +Then check the value of your power supply voltage `V_dc` and once when you have the values you can find the maximum current `I_max` value by calculating: + ```cpp I_max = V_dc/R ``` + Finally check the value of the maximum current `I_max` with the datasheet of your driver board. If the `I_max` is too high you can lower the power supply voltage `V_dc` in order prevent too high peaks of the current. If you are not able to change your power supply voltage you can limit the voltage set to motor in software.

NOTE

diff --git a/docs/simplefoc_library/hardware/motors/phase_resistance.md b/docs/simplefoc_library/hardware/motors/phase_resistance.md new file mode 100644 index 0000000..c113cf7 --- /dev/null +++ b/docs/simplefoc_library/hardware/motors/phase_resistance.md @@ -0,0 +1,71 @@ +--- +layout: default +title: Phase resistance measurement +nav_order: 3 +description: "Arduino Simple Field Oriented Control (FOC) library ." +permalink: /phase_resistance +parent: Motors +grand_parent: Supported Hardware +grand_grand_parent: Arduino SimpleFOClibrary +--- + +# Phase resistance + +The term "phase resistance" may lend itself to some ambiguity, in both meaning and method for measurement. This page attempts to explain how to measure its value, which is required by several of the control algorithms in SimpleFOC. + +In this documentation, phase resistance corresponds to the resistance of a single coil inside your motor, measured in Ohms. The line resistance is the resistance between two (non-center) motor leads. + +## Identification of 3-phase motors + +In the case of 3-phase BLDC motors, you first need to learn whether the motor is wound in a Wye (a.k.a "star") or Delta configuration. Once you know that, it's simple maths to compute the phase resistance from the phase-to-phase measurement. + +Additionally, a 3-phase motor may expose 3 or 4 leads, which will affect how phase resistance is measured. In the case of a wye/star motor, the fourth lead corresponds to the center point (a.k.a. "star point"), and will show the least resistance when measured against the other leads. + +![3-phase-configurations.svg](./3-phase-configurations.svg) + +> Common configurations for 3-phase motors ([source](https://en.wikipedia.org/wiki/File:Delta-Star_Transformation.svg)). + +## Procedure + +Steps to measure phase resistance for different coil configurations and number of leads. You'll need a multi-meter that can measure resistance and your wits. + +### 3-wire Wye/Star + +Diagram: + +![3-phase-3-wire-star.svg](./3-phase-3-wire-star.svg "3-phase-3-wire-star.svg") + +Procedure: + +1. Use a multi-meter to measure the resistance across any pair of leads (in Ohms), this is referred to as the "line resistance". All three possible pairs of leads must show the same resistance. +2. **Divide the measurement by two** to obtain the final value for the phase resistance of your motor. + +> In Wye/Star configuration, you're measuring two phases at once across each pair, so the measured resistance must be divided by `2`. + +### 4-wire Wye/Star + +Diagram: + +![3-phase-4-wire-star.svg](./3-phase-4-wire-star.svg) + +In this case, you'll need to first identify the lead connected to the "center point" (labeled `N_abc` in the diagram above). + +Procedure: + +1. Use a multi-meter to measure the resistance across all pairs of leads (in Ohms), looking for a lead with exactly half the resistance than the lead pairs that exclude it. +2. The resistance between the lead with the least resistance is connected to the "center point". Label it appropriately. +3. Measure the resistance across the center point you just identified and any of the remaining three leads. This value is the phase resistance of your motor. + +> In a 4-wire Wye/Star configuration, the resistance between the center point (4-th lead) and any of the three main leads is the phase resistance, because the measurement does not involve any of the other phases. + +### 3-wire Delta + +Diagram: +![3-phase-3-wire-delta.svg](./3-phase-3-wire-delta.svg) + +Procedure: + +1. Use a multi-meter to measure the resistance across all pairs of leads (in Ohms). All measurements must be equal. +2. **Multiply the measurement by 1.5** to obtain the final value for the phase resistance of your motor. + +> In Delta configuration, you measure all phases at once; one of them being in parallel with the remaining two in series. Since all phase resistances are equal, the measurement must be multiplied by `1.5`. From e83e8ae38e42dccd5925a6cf6e3289b758c86968 Mon Sep 17 00:00:00 2001 From: naikymen Date: Sun, 12 Nov 2023 21:39:32 -0300 Subject: [PATCH 2/2] fix links to phase resistance --- docs/simplefoc_library/hardware/motors/index.md | 2 +- .../hardware/motors/phase_resistance.md | 11 ++++++----- .../motors => extras/Images}/3-phase-3-wire-delta.svg | 0 .../motors => extras/Images}/3-phase-3-wire-star.svg | 0 .../motors => extras/Images}/3-phase-4-wire-star.svg | 0 .../Images}/3-phase-configurations.svg | 0 6 files changed, 7 insertions(+), 6 deletions(-) rename {docs/simplefoc_library/hardware/motors => extras/Images}/3-phase-3-wire-delta.svg (100%) rename {docs/simplefoc_library/hardware/motors => extras/Images}/3-phase-3-wire-star.svg (100%) rename {docs/simplefoc_library/hardware/motors => extras/Images}/3-phase-4-wire-star.svg (100%) rename {docs/simplefoc_library/hardware/motors => extras/Images}/3-phase-configurations.svg (100%) diff --git a/docs/simplefoc_library/hardware/motors/index.md b/docs/simplefoc_library/hardware/motors/index.md index 7cc0e8e..a54942b 100644 --- a/docs/simplefoc_library/hardware/motors/index.md +++ b/docs/simplefoc_library/hardware/motors/index.md @@ -28,7 +28,7 @@ Arduino SimpleFOClibrary su Before running any BLDC motor with the SimpleFOClibrary please make sure your hardware can handle the currents your motor requires. -The simplest way to do it is by checking the motor phase resistance `R`. Either check the datasheet of your motor and search for the resistance value or [measure it yourself using a multimeter](./phase_resistance.md). +The simplest way to do it is by checking the motor phase resistance `R`. Either check the datasheet of your motor and search for the resistance value or [measure it yourself using a multimeter](phase_resistance). Then check the value of your power supply voltage `V_dc` and once when you have the values you can find the maximum current `I_max` value by calculating: diff --git a/docs/simplefoc_library/hardware/motors/phase_resistance.md b/docs/simplefoc_library/hardware/motors/phase_resistance.md index c113cf7..cf35f2a 100644 --- a/docs/simplefoc_library/hardware/motors/phase_resistance.md +++ b/docs/simplefoc_library/hardware/motors/phase_resistance.md @@ -1,6 +1,6 @@ --- layout: default -title: Phase resistance measurement +title: Phase resistance nav_order: 3 description: "Arduino Simple Field Oriented Control (FOC) library ." permalink: /phase_resistance @@ -21,7 +21,7 @@ In the case of 3-phase BLDC motors, you first need to learn whether the motor is Additionally, a 3-phase motor may expose 3 or 4 leads, which will affect how phase resistance is measured. In the case of a wye/star motor, the fourth lead corresponds to the center point (a.k.a. "star point"), and will show the least resistance when measured against the other leads. -![3-phase-configurations.svg](./3-phase-configurations.svg) +![3-phase-configurations.svg](extras/Images/3-phase-configurations.svg) > Common configurations for 3-phase motors ([source](https://en.wikipedia.org/wiki/File:Delta-Star_Transformation.svg)). @@ -33,7 +33,7 @@ Steps to measure phase resistance for different coil configurations and number o Diagram: -![3-phase-3-wire-star.svg](./3-phase-3-wire-star.svg "3-phase-3-wire-star.svg") +![3-phase-3-wire-star.svg](extras/Images/3-phase-3-wire-star.svg "3-phase-3-wire-star.svg") Procedure: @@ -46,7 +46,7 @@ Procedure: Diagram: -![3-phase-4-wire-star.svg](./3-phase-4-wire-star.svg) +![3-phase-4-wire-star.svg](extras/Images/3-phase-4-wire-star.svg) In this case, you'll need to first identify the lead connected to the "center point" (labeled `N_abc` in the diagram above). @@ -61,7 +61,8 @@ Procedure: ### 3-wire Delta Diagram: -![3-phase-3-wire-delta.svg](./3-phase-3-wire-delta.svg) + +![3-phase-3-wire-delta.svg](extras/Images/3-phase-3-wire-delta.svg) Procedure: diff --git a/docs/simplefoc_library/hardware/motors/3-phase-3-wire-delta.svg b/extras/Images/3-phase-3-wire-delta.svg similarity index 100% rename from docs/simplefoc_library/hardware/motors/3-phase-3-wire-delta.svg rename to extras/Images/3-phase-3-wire-delta.svg diff --git a/docs/simplefoc_library/hardware/motors/3-phase-3-wire-star.svg b/extras/Images/3-phase-3-wire-star.svg similarity index 100% rename from docs/simplefoc_library/hardware/motors/3-phase-3-wire-star.svg rename to extras/Images/3-phase-3-wire-star.svg diff --git a/docs/simplefoc_library/hardware/motors/3-phase-4-wire-star.svg b/extras/Images/3-phase-4-wire-star.svg similarity index 100% rename from docs/simplefoc_library/hardware/motors/3-phase-4-wire-star.svg rename to extras/Images/3-phase-4-wire-star.svg diff --git a/docs/simplefoc_library/hardware/motors/3-phase-configurations.svg b/extras/Images/3-phase-configurations.svg similarity index 100% rename from docs/simplefoc_library/hardware/motors/3-phase-configurations.svg rename to extras/Images/3-phase-configurations.svg