A comparison between six-step and sine-wave commutation methods for brushless direct current motors

Received Jun 13, 2021 Revised Mar 1, 2022 Accepted Mar 28, 2022 This research is focused on the design and implementation of an electronic circuit for commuting a brushless direct current (BLDC) motor and its data acquisition system, as well as conducting experiments on them. We propose a drive circuit using two modules, each consist of a dual H-bridge, that are cheap and can be easily obtained. Two different commutation methods, namely six-step and sine-wave commutations, are applied. Each of these implements a different way for its open-loop speed control, i.e., a voltagecontrolled-current-source is implemented along with the six-step commutation and the step duration approach is implemented along with the sine-wave commutation. The experiment data are acquired using a developed desktop application. Some experiment results lead us to find that, on its own, both commutation methods have a narrow range of speed. Nevertheless, if both methods are used together, this range can be increased. Also, the relation between speed and its controlling signals for both methods are shown.


INTRODUCTION
The facts that satellites support national industries and communications lead to say that a satellite is an important technology. Even so, satellite development in Indonesia is still not optimal. For microsatellites, National Aeronautics and Space Agency of Indonesia (LAPAN) has successfully carried out assembly, integration, and test (AIT) in Indonesia, e.g. LAPAN-A2 and LAPAN-A3 [1], [2]. However, almost all of the satellite components come from vendors overseas. One of these components is the reaction wheel. A reaction wheel is a satellite actuator that steers the satellite's attitude through the changes of speed of those motors. The satellite angular speed or velocity will react to negate those changes. This physical property is called the conservation of angular momentum. In this case, it is the angular momentum conservation of the satellite body and flywheel of the reaction wheel. For further information about reaction wheel and how it works to control the satellite attitude, one may refer [3]- [6].
Principally, reaction wheel is an electromechanical system based on a motor with a mechanical load installed at its shaft, which is called a flywheel, such that the generated angular momentum and its change is enough to control the attitude of the satellite [7]. Most reaction wheels use brushless direct current (BLDC) type of motors. In comparison to brushed direct current (DC) motors, BLDC motors have many advantages that are suitable for space qualification. One of those is that BLDC motors have lower maintenance because they have no brushes. Therefore, they have no wear-out problem. Also, sparking due to friction between  [11]. One aspect that makes them more complex and costlier than brushed DC motors is, it requires an electronic circuit for commuting the BLDC motors electronically [12], [13].
This research is focused on the design and implementation of an electronic circuit for commuting a BLDC motor and its data acquisition system, as well as conducting experiments on them. We proposed a 3phase inverter using two modules, each consist of a dual H-bridge, that are cheap and can be easily obtained in Indonesia. In motor applications, the H-bridges are used for brushed DC motors [24]. So, the challenge is, to operate these modules on BLDC motors, a different method is needed. Moreover, the properties of this system are interesting to be identified. This paper is organized is being as: section 2 describes the research method in relating to commutation methods, H-bridge module, speed controller, and desktop application for data acquisition and display; the research result and discussion are presented in section 3; and section 4 concludes with a summary of this research and an outlook to future research direction.

RESEARCH METHOD
To understand how to commute a BLDC motor, how BLDC motors work needs to be known first. Then these H-bridges can be controlled according to how the BLDC motors work. In this research, a microcontroller is used to calculate and transmit the controlling signals, as well as to communicate with a computer. At this point, the BLDC motor with mechanical load installed at its shaft, i.e. a simple reaction wheel prototype, will be only run by an open-loop speed control approach. After that, a desktop application for data acquisition and display is developed. Finally, the characteristic of the time response of the BLDC motor is acquired by analyzing the acquired data. Elaboration of the proposed method is presented as follows:

Commutation methods
A BLDC motor has a permanent magnet at its rotor, and coils at its stator. These coils are grouped into three phases. Generally, the phases are connected to each other in a Y configuration [20]. The number of coils in each phase is determined by the number of pairs of poles in the rotor. Figure 1 shows a BLDC motor with four pairs of poles. So there are four coils connected serially at each phase. Each coil, i.e., "first coil", "second coil", and "third coil", corresponds to each phase of the 3-phase voltage source.

Figure 1. A BLDC motor illustration
When current flows through a coil, a magnetic field appear around this coil. The direction of current flow affects the magnetic field polarity accordingly. Every time the magnetic field polarity on these coils changed, the rotor will follow. Hence, a specific commutation of current flow will make the rotor spins seamlessly.
This specific commutation of current flow is in the form of a sine wave. Each phase will have a phase difference of one hundred and twenty degrees to each other. However, BLDC motors usually just controlled by the approximation of the sine wave, not the actual sine wave. This approximation is called the six-step commutation. Controlling the six-step commutation is easier. This method only needs three values, which are high, floating, and low. Figure 2 shows the comparison of a sine wave and the six-step commutations.
Another approximation of the sine wave is through the sine-wave commutation. This method is similar to the six-step commutation, but with more steps, so it is closer to the real sine wave. Thus, it is called the sine-wave commutation. This method can run smoothly at a longer step duration because of the addition of the step. Figure 3 shows a sine wave (black line) and sine-wave commutation in the form of twelve-step commutation with pulse-width modulation (PWM) shaded-square waveform.

H-bridge
The H-bridge circuit is a switch. It switches the input polarity on the output. H-bridge like the L298N is, normally, used for brushed DC motors [25], [26] because the motor will rotate in the other directions when the polarity is inverted. Figure 4 shows the configuration of the switches of an H-bridge. Note that an L298N has two H-bridges.
The L298N has two input switches, an enable input, and two outputs for each of the H-bridges. From the two input switches, one is for the left switches and the left output, and the other one is for the right. If an input is high, then the corresponding output will be connected to the positive side, else if this input is low, then it will be connected to the ground instead. There is only one enable input for each H-bridge and it will open (floating) all four switches if it set to disable. A BLDC motor needs three inputs for each of its phases, therefore a BLDC motor needs two of the L298N.

Open-loop speed controller
The duration of each step in the six-step commutation (horizontal lines in Figure 2) will affect the rotor speed. But, if it is too fast, the rotor will not be able to follow. And if it runs too slowly, the jagged waveform of this method will start to show as stuttering of the motor. Thus, a voltage-controlled-currentsource, as in Figure 5, is used instead of changing the duration of the step. This current source implementation in the system is shown in Figure 6. Magnetic field strength depends on the current flows through the coil. Larger current yields a stronger magnetic field. Therefore, the rotor will get a stronger force, and vice versa for lower current flows. The rotor will move according to the given current, so the given current will depend on the desired speed of the motor. But there is a limit on how slow can the motor run with this method, because the stator needs a minimum current to be able to move the stator. Now once the rotor matched the stator position, the microcontroller will immediately signal the stator to move to the next step, and so avoiding the stuttering of the motor. As in Figure 6, moving to the next step will depend on the state of the Hall sensors, which represents the position of the rotor, and not a predefined duration from the desired speed. Meanwhile, with the sine-wave commutation, the rotor will not be able to follow too if it runs too fast, but the change between high and low can be graduated smoothly using PWM. So, the step duration can be as long as needed without the risk of the motor stuttering, and so the hall sensor and the current source are not necessary. As in Figure 7, the duration of each step in the sine-wave PWM signal will depend on the desired speed.
In the current source circuit, the non-inverting input of the operational amplifier (op-amp) will control the gate voltage so that the voltage over the sense/shunt resistor is the same as the non-inverting input of the op-amp. The shunt resistor voltage divided by its resistance equals the current flows through it. Hence, by using a digital to analog converter (DAC) to vary the voltage on the non-inverting input will control the current flows across the load proportionally.

Desktop application for data acquisition and display
This desktop application is a software that will communicate with the microcontroller. The universal synchronous/asynchronous receiver/transmitter (USART) facilitates this communication. While the computer or the microcontroller sends data over USART, there is a probability that the data will change on the way and thus creating errors. USART sends data in bytes. Echo method is a simple method that can minimize this probability. When a byte is received, the receiver will transmit that byte to the transmitter. If it is not the same, then the transmitter will send an error signal. Otherwise, the transmitter will send another byte that has to be transmitted. A command from the computer is in the form of six bytes. One byte is for the header, four bytes for the data, and one byte is for the tail. Other than sending speed signal to the microcontroller, this desktop application is also for receiving speed reading from the microcontroller. The data will be analyzed later to see the characteristic of the time response of the BLDC motor.

Electronic commutation circuit and graphical user interface
Scheme of the electronic circuit for commuting the BLDC motor implemented in this research is presented in Figure 8. While the graphical user interface (GUI) of the desktop application is shown in Figure 9. Some properties we observed in the conducted experimentation are as follows: i) in contrast to the six-step commutation, the sine-wave commutation method can drive the motor at a very slow speed. It is because, compared to six-step commutation that is limited to the minimum current needed, step duration of the sinewave commutation is not limited. In addition to this method, PWM can be used to keep using the three values (high, low, and floating), and ii) in high-speed cases, the buffer will overflow if the Echo method is used when the desktop application reads the data. So, the Echo method must be turned off when the desktop application reads the data. Figure 10 and Figure 11 show the speed data over time for various current settings on the six-step commutation. The raw data are noisy Figure 10, so these data are processed using local regression method Figure 11. The highest speed possible is around 1200 revolution per minute (RPM), with the current set around 250 mA. The lowest current when the rotor still spins is around 90 mA. The rotor rotates about 400 RPM. Note that the data are aligned on the time axis to the time when the first data is acquired. We can see that both figures do not display full transient responses.  The sine-wave commutation data shown in Figure 12 are also processed using local regression method. Like the previous figures, the time axis shown in Figure 12 starts after the first speed data are acquired. From Figure 11 and Figure 12, Table 1 is presented to show the comparison of the range of speed between six-step and sine-wave commutation methods. The six-step commutation method gives a higher RPM. On its own, both commutation methods have a narrow range of speed. Nevertheless, if both methods are used together, this range can be increased.  In (1) and Figure 13 show current as a function of speed, , in the six-step commutation method. This formula is derived from the data displayed in Figure 11 using polynomial regression. Plugging-in speed in RPM into this equation yields the approximation of the needed current in milli-Ampere to achieve that speed.

Experimental result
( ) = 0.0003 2 − 0.2117 + 133.0879 (1) In (2) and Figure 14 show step duration as a function of speed, , for the sine-wave commutation. Just like the six-step commutation, this equation yields the approximation of the step duration in millisecond to get the desired speed in RPM.
( ) = 0.0004 2 − 0.2283 + 36.5720 (2)  Figure 13. Relationship between current and speed in the six-step commutation method Figure 14. Relationship between step duration and speed in the sine-wave commutation method

CONCLUSION
An electronic circuit for commuting BLDC motors that utilized cheap and easily found H-bridge module is developed. Two different commutation methods, namely six-step and sine-wave commutations, are applied. Each of these implements a different way for the open-loop speed control: a voltage-controlledcurrent-source is implemented along with the six-step commutation and the step duration approach is implemented along with the sine-wave commutation. A desktop application with GUI for data acquisition and display is developed and used in the conducted experiments. Some experiment results lead us to recognize that, on its own, both commutation methods have a narrow range of speed. Nevertheless, if both methods are used together, this range can be increased. Also, the relation between current and speed in the six-step commutation method, as well as the relation between step duration and speed in the sine-wave commutation, are shown. An interesting future work could be concentrated on the closed-loop approach for the BLDC motor speed control. Besides, designing a real-time noise data rejection in data acquisition would be interesting and challenging.