Device for synchronously controlling six-phase motor
By implementing synchronous control through a dual-controller system, the safety issues of the UAM vehicle motor control system under fault conditions were resolved, and the stable operation of the six-phase motor was achieved, enhancing the safety and reliability of the system.
Patent Information
- Application Number
- CN202510769097.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-05-22
- Filing Date
- 2025-06-10
- Publication Date
- 2025-11-25
AI Technical Summary
The motor control system of UAM vehicles is vulnerable to attack in case of failure, leading to security issues. Existing technology makes it difficult to achieve synchronous control of dual controllers, resulting in the system being unable to remain stable in case of failure.
A dual-controller system is adopted. The first controller calculates the length of the next switching PWM cycle and outputs a signal, while the second controller extracts data through the timer input module for synchronous control, thereby realizing the synchronization of the abc and xyz phases of the six-phase motor.
It enhances the safety of motor control, solves the problem of dual controller synchronization, and ensures that the system can still maintain stable operation in the event of a fault.
Smart Images

Figure CN121012406A_ABST
Abstract
Description
[0001] Cross-reference to related applications
[0002] This application claims the rights and priority of Korean Patent Application No. 10-2024-0066547, filed on May 22, 2024, the entire contents of which are hereby incorporated by reference. Technical Field
[0003] This disclosure relates to techniques for controlling electric motors. Background Technology
[0004] Urban air mobility (UAM), referring to flying vehicles, is currently receiving significant global attention as one of the most promising areas of next-generation industry. This technology is seen as an innovative solution providing a fast and efficient means of urban transportation, thereby reducing traffic congestion and travel time. It is anticipated that by overcoming the limitations of traditional ground transportation and utilizing air travel routes, faster and more flexible urban mobility will be possible.
[0005] UAM (Usage-Assisted Transportation) refers to the service of transporting people or goods via small aircraft using electric or hybrid power. This can be used not only for short-distance urban travel but also as a rapid means of transportation to suburbs, and it has significant potential, particularly in areas with insufficient transportation infrastructure. While the development of the UAM industry presents the task of addressing various technical, regulatory, and social challenges, it is expected to become a key component of future transportation systems, as many companies and governments are expanding research and investment in this field.
[0006] Advances and commercialization of UAM technology are expected to fundamentally transform the urban transportation paradigm and realize its role as an eco-friendly mode of transport. This is because its primary use of electricity reduces carbon emissions, while enabling significantly more efficient travel compared to conventional road traffic. Therefore, UAM is considered a crucial technology for sustainable urban development and transportation system innovation, and its potential is expected to be witnessed in real-world urban environments in the coming years.
[0007] On the other hand, while the UAM system is an innovative transportation solution, it carries inherent risks associated with its operating environment. Due to the nature of flying vehicles, malfunctions in such vehicles can lead to extremely serious consequences. For example, in the case of automobiles, even when problems such as motor controller failure occur, the vehicle can safely remain stopped on the road. Even when a system failure occurs, the vehicle can still be controlled using its chassis and wheels, thus maintaining a relatively safe situation for the driver, passengers, and other road users.
[0008] Conversely, UAM vehicles are significantly more vulnerable to problems that can occur during flight, such as motor controller failures. Flying vehicles require continuous power and control, and when any of these critical systems fails, the vehicle may become airborne, potentially leading directly to a collision. Such a collision could pose a serious risk not only to the occupants but also to individuals on the ground. Therefore, the safety of UAM vehicles is of paramount importance, and for this purpose, the development and implementation of various safety devices and protocols are necessary, such as redundant systems, fault-tolerant systems, and emergency response protocols.
[0009] The discussion in this section is intended to provide background information only and does not constitute an endorsement of the prior art. Summary of the Invention
[0010] Embodiments of this disclosure provide techniques for safely controlling motors. Another embodiment of this disclosure provides techniques for enhancing safety by using dual controllers to control a six-phase motor. Embodiments of this disclosure provide techniques for synchronizing the controllers of the dual controllers used to control the six-phase motor with each other.
[0011] According to an embodiment, an apparatus for controlling a six-phase motor is provided. The six-phase motor synchronous control apparatus includes a first controller configured to calculate the length of a next switching pulse width modulation (PWM) cycle, output at least one PWM signal indicating the length value of the next switching PWM cycle, and control the abc phases of the six-phase motor by using a control duty cycle for the abc phase and the length value of the next switching PWM cycle. The apparatus also includes a second controller configured to obtain the length value of the next switching PWM cycle based on the at least one PWM signal, and control the xyz phases of the six-phase motor by using a control duty cycle for the xyz phase and the length value of the next switching PWM cycle.
[0012] The first controller can divide the length of the next switching PWM cycle into a low-order value and a high-order value, output a first PWM signal indicating the low-order value, and output a second PWM signal indicating the high-order value.
[0013] The second controller can extract the value A from the first PWM signal, extract the value B from the second PWM signal, and obtain the length of the next switching PWM cycle by performing an OR operation between the value obtained by shifting the value B and the value A.
[0014] The first and second controllers can output the switching PWM signal by using a ramp-up counter configured to increment and decrement during the switching PWM cycle, and a register indicating the edge value.
[0015] In the first controller and the second controller, the ramp counter can switch the counting direction from incrementing to decrementing according to the main PWM signal that indicates the control cycle of the first controller.
[0016] The next control cycle of the first controller can be calculated as the sum of half the length of the current switching PWM cycle and half the length of the next switching PWM cycle.
[0017] The first controller can output at least one PWM signal using a timer output module (TOM), and the second controller can extract data from at least one PWM signal using a timer input module (TIM) to calculate the length value of the next switching PWM cycle.
[0018] The second controller's TIM can generate an interrupt service routine (ISR) event based on the main PWM signal or at least one PWM signal received from the first controller, and the second controller can calculate the length of the next switching PWM cycle based on the data extracted from at least one PWM signal according to the ISR event.
[0019] According to another embodiment, a method for synchronously controlling a six-phase motor is provided. The method includes: calculating the length of a next switching PWM cycle and outputting at least one PWM signal indicating the length value of the next switching PWM cycle; the method further includes: controlling the abc phases of the six-phase motor by using a control duty cycle for the abc phases and the length value of the next switching PWM cycle; and obtaining the length value of the next switching PWM cycle based on the at least one PWM signal. The method further includes controlling the xyz phases of the six-phase motor by using a control duty cycle for the xyz phases and the length value of the next switching PWM cycle.
[0020] The output of at least one PWM signal indicating the length value of the next switching PWM cycle may include: outputting a first PWM signal corresponding to a value generated from the operation between the length value of the next switching PWM cycle and 0xFF, and outputting a second PWM signal corresponding to a value generated from the operation between the length value of the next switching PWM cycle and 0xFF00.
[0021] Obtaining the length of the next switching PWM cycle based on at least one PWM signal may include: extracting the value A from the first PWM signal, extracting the value B from the second PWM signal, and calculating the length of the next switching PWM cycle by performing a bitwise operation of (B << 8) | A.
[0022] The method may also include calculating the length of the next control cycle as the sum of half the length of the current switching PWM cycle and half the length of the next switching PWM cycle.
[0023] Controlling the xyz phase may include outputting a switching PWM signal by using a ramp counter configured to increment and then decrement during the switching PWM cycle and a register indicating the edge value, and switching the counting direction of the ramp counter from incrementing to decrementing at the end or beginning of the control cycle.
[0024] The method may further include outputting a main PWM signal in sync with the control cycle. Controlling the xyz phase may also include switching the counting direction of the boost / deboost counter from incrementing to decrementing based on the main PWM signal.
[0025] According to another embodiment, a different apparatus for synchronously controlling a six-phase motor is provided. The apparatus includes: a first controller configured to control the abc phases of the six-phase motor by using a control duty cycle for the abc phases and a length value of the next switching PWM cycle, and to output the length value of the next switching PWM cycle using a TOM. The apparatus also includes a second controller configured to obtain the length value of the next switching PWM cycle using a TIM, the TIM being configured to receive the output of the TOM as an input, and the second controller controlling the xyz phases of the six-phase motor by using a control duty cycle for the xyz phases and the length value of the next switching PWM cycle.
[0026] The second controller can calculate the rising edge or falling edge token value of the switching PWM signal by using the control duty cycle for the xyz phase and the length of the next switching PWM cycle.
[0027] The second controller can output the switching PWM signal by using a ramp-up counter configured to increment and decrement during the switching PWM cycle, and a register indicating the rising edge or falling edge flag value.
[0028] The first controller can also control the cycle by using TOM output, and the second controller can switch the counting direction of the riser / faller counter from increasing to decreasing at the end or beginning of the control cycle identified by TIM.
[0029] The ISR event corresponding to the end or start of the control cycle can be generated by the TIM in the second controller.
[0030] The first controller can use the length value of the next switching PWM cycle output by TOM as multiple PWM signals.
[0031] As described above, the motor can be controlled more safely according to the embodiments of this disclosure. Furthermore, the safety of six-phase motor control can be further enhanced by controlling the six-phase motor via dual controllers according to the embodiments of this disclosure. Additionally, the synchronization problem, a challenge associated with dual controllers, can be solved according to the embodiments of this disclosure. Attached Figure Description
[0032] Figure 1 This is a configuration diagram showing an example of a system for controlling a six-phase motor.
[0033] Figure 2 This is a diagram showing the configuration of a six-phase motor control system according to an embodiment.
[0034] Figure 3 This is a diagram showing the configuration of the inverter and motor according to an embodiment.
[0035] Figure 4 This is a diagram illustrating the generation of a switching PWM signal based on the control duty cycle.
[0036] Figure 5 This is a diagram showing the key waveforms of the controller in a six-phase motor synchronous control device according to an embodiment.
[0037] Figure 6 This is a flowchart of a six-phase motor synchronous control method according to an implementation method.
[0038] Figure 7 This is a flowchart of a control method for a first controller according to an embodiment.
[0039] Figure 8 This is a flowchart of a control method for a second controller according to an embodiment.
[0040] Figure 9 This is a diagram illustrating the signals between the first controller and the second controller according to an embodiment. Detailed Implementation
[0041] In the following, some embodiments of the present disclosure are described in detail with reference to the accompanying drawings. It should be noted that when assigning reference numerals to components in the drawings, the same components are indicated by the same reference numerals whenever possible, even if the components are shown in different drawings. Furthermore, in the description of this disclosure, detailed descriptions of known configurations or functions are omitted where such detailed descriptions would obscure the main points of the disclosure.
[0042] Furthermore, expressions such as "first," "second," "A," "B," "(a)," or "(b)" may be used when describing the components of this disclosure. These expressions are intended only to distinguish one component from another and do not limit the nature, order, or sequence of these components. It should be understood that when describing a first element as "connected," "coupled," or "joined" to a second element, the first element may be directly connected, coupled, or joined to the second element, or the first element may be connected, coupled, or joined to the second element, and a third element may be connected, coupled, or joined between the second elements.
[0043] When the components, controllers, devices, elements, apparatuses, units, etc. of this disclosure are described as having a purpose or performing an operation or function, the components, controllers, devices, elements, apparatuses, units, etc., shall be regarded herein as being "configured" to satisfy that purpose or perform that operation or function. Each component, controller, device, element, apparatus, unit, etc. may individually embody or include a processor and memory (e.g., a non-transitory computer-readable medium) as part of an apparatus.
[0044] Figure 1 This is a configuration diagram showing an example of a system for controlling a six-phase motor.
[0045] Reference Figure 1 The motor 40 can have six phases.
[0046] The six-phase motor 40 may include two three-phase systems. The three-phase systems can be designated as a set of abc phases and a set of xyz phases, respectively. In the six-phase motor 40, the abc phases and the xyz phases can be arranged with a certain angular displacement relative to each other. For example, with the abc phases arranged at 120-degree intervals, similar to a standard three-phase system, the xyz phases can be arranged at specific angles (such as 30 degrees or 60 degrees) relative to the abc phases. With this configuration, the motor can achieve smoother rotational torque and higher resolution control. Furthermore, in the event of a fault, the other phases can continue to operate, thereby providing enhanced reliability.
[0047] System 1 for controlling a six-phase motor may include two inverters 21 and 22, a controller 10 (e.g., a motor control unit (MCU)), a power supply 30, etc.
[0048] The first inverter 21 of the two inverters 21 and 22 is powered to control the abc phase of the six-phase motor 40. The output of the first inverter 21 can be connected to the abc phase of the six-phase motor 40, and the first inverter 21 can control the abc phase by supplying phase power to each of the abc phases. The second inverter 22 of the two inverters 21 and 22 is powered to control the xyz phase of the six-phase motor 40. The output of the second inverter 22 can be connected to the xyz phase of the six-phase motor 40, and the second inverter 22 can control the xyz phase by providing phase power to each of the xyz phases.
[0049] Multiple switches may be arranged in each of inverters 21 and 22. Controller 10 may output switch pulse width modulation (PWM) signals S1 to S6 and S7 to S12 for controlling the on / off operation of these switches. Then, based on these switch PWM signals, each of inverters 21 and 22 may turn the switch on / off to convert the power supplied from power source 30 into phase power suitable for each phase.
[0050] The controller 10 can output first switching PWM signals S1 to S6 to control the switches included in the first inverter 21, and can output second switching PWM signals S7 to S12 to control the switches included in the second inverter 22.
[0051] Because a single controller 10 is used in system 1 for controlling the six-phase motor, there is no problem with the synchronization between the first switching PWM signals S1 to S6 and the second switching PWM signals S7 to S12. The single controller 10 can generate the first switching PWM signals S1 to S6 and the second switching PWM signals S7 to S12, so that the signals are synchronized with each other.
[0052] While using a single controller 10 is advantageous for controlling different inverters with synchronization signals, the problem is that the entire system may become inoperable if controller 10 fails. Therefore, the six-phase motor control system according to the embodiment proposes a technique for controlling a six-phase motor using dual controllers.
[0053] Figure 2 This is a diagram showing the configuration of a six-phase motor control system according to an embodiment.
[0054] Reference Figure 2 The six-phase motor control system 100 may include a first controller 110, a second controller 120, a first inverter 21, a second inverter 22, a power supply 30, etc.
[0055] The first controller 110 can control the abc phases of the six-phase motor 40 by outputting first switch PWM signals S1 to S6 that can perform on / off control of the switches included in the first inverter 21.
[0056] In addition, the second controller 120 can control the xyz phase of the six-phase motor 40 by outputting second switch PWM signals S7 to S12 that can perform on / off control of the switches included in the second inverter 22.
[0057] Both the first controller 110 and the second controller 120 can be hardware components called MCUs. The abbreviation "MCU" can stand for "microcontroller unit" or "motor control unit".
[0058] MCUs 110 and 120 are adapted to output PWM signals. MCUs 110 and 120 can generate switching PWM signals to control the speed and torque of the motor. The switching PWM signals can precisely regulate the power supplied to the motor 40 by modulating the average value of the voltage and current of each phase of power switched in inverters 21 and 22.
[0059] MCUs 110 and 120 may each include an analog-to-digital converter (ADC) for converting analog signals (such as current, voltage, or temperature) from motor 40 into digital values. MCUs 110 and 120 may each include an ADC with a high sampling rate and high resolution for precise motor control.
[0060] MCUs 110 and 120 can each be equipped with a multi-core central processing unit (CPU). By using such a CPU, MCUs 110 and 120 can perform calculations for control and execute complex algorithms.
[0061] MCUs 110 and 120 can each include timers and counters. By using these timers and counters, MCUs 110 and 120 can accurately control the timing of PWM signals.
[0062] MCUs 110 and 120 may each include flash memory and random access memory (RAM) for storing program code and data.
[0063] The first controller 110 and the second controller 120, which can combine such MCU components, can be implemented as separate hardware entities that do not share memory. The first controller 110 and the second controller 120 may include independent CPUs and independent timers and counters. In some embodiments, the first controller 110 and the second controller 120 can be implemented as independent hardware units that do not share memory.
[0064] The first controller 110 and the second controller 120 can exchange synchronization signals to synchronize the switching PWM signals S1 to S6 and S7 to S12. For example, the first controller 110 can synchronize the switching PWM signals S1 to S6 and S7 to S12 by sending at least one PWM signal SPWM to the second controller 120.
[0065] Figure 3 This is a diagram showing the configuration of the inverter and motor according to an embodiment.
[0066] Reference Figure 3 The first inverter 21 may include six switches, and the second inverter 22 may include six switches.
[0067] The upper switch of the first inverter 21 may have a side connected to the positive electrode of the power supply and opposite sides connected to phases a, b, and c of the motor 40, respectively. Similarly, the lower switch of the first inverter 21 may have a side connected to the negative electrode of the power supply and opposite sides connected to phases a, b, and c of the motor 40, respectively. An upper switch and a next switch connected to the same phase form an arm, in which a positive voltage from the power supply is supplied to the corresponding phase when the upper switch is turned on and the next switch is turned off. Furthermore, in this arm, a negative voltage from the power supply is supplied to the corresponding phase when the upper switch is turned off and the next switch is turned on.
[0068] The upper switch of the second converter 22 may have a side connected to the positive electrode of the power supply and opposite sides connected to the x, y, and z phases of the motor 40, respectively. Similarly, the lower switch of the second converter 22 may have a side connected to the negative electrode of the power supply and opposite sides connected to the x, y, and z phases of the motor 40, respectively. An upper switch and a next switch connected to the same phase form an arm, in which a positive voltage from the power supply is supplied to the corresponding phase when the upper switch is turned on and the next switch is turned off. Furthermore, in this arm, a negative voltage from the power supply is supplied to the corresponding phase when the upper switch is turned off and the next switch is turned on.
[0069] The average voltage and / or average current flowing in each phase can be determined by the proportion of time a positive voltage is supplied within one switching PWM cycle (i.e., the control duty cycle). A first controller and a second controller can supply a switching PWM signal to the respective inverters 21 and 22 to control the average voltage and / or average current supplied to each phase within one switching PWM cycle. In this document, the switching PWM signal can be determined by the control duty cycle determined according to a control algorithm (e.g., a control loop).
[0070] Figure 4 This is a diagram illustrating the generation of a switching PWM signal based on the control duty cycle.
[0071] Reference Figure 4 The controller can calculate the control duty cycle for each control period (Ctrl Period). The controller can control each phase of the motor by generating switching PWM signals S1 and S7 for each switching PWM period.
[0072] The controller may include an increment counter CN. The increment counter CN can increment its value from a reset value at regular time intervals. The increment counter CN can be reset at a predetermined time point or synchronized with a reset signal from another channel.
[0073] When the rise counter CN is reset, an interrupt service routine (ISR) event occurs, and within the function handling the ISR event, the control duty cycle for the next switching PWM cycle can be calculated for each control cycle. In this implementation, the length of the next switching PWM cycle can also be calculated if necessary. Then, when the control duty cycle and length of the next switching PWM cycle are determined, the rising and falling edge values of the switching PWM signals S1 and S7 can be calculated as time values (e.g., token values). For example, if the length of the next switching PWM cycle is 10,000 tokens and the control duty cycle is 0.6, the rising edge value can be determined as 2,000 tokens, and the falling edge value can be determined as 8,000 tokens.
[0074] The controller may include a multi-channel sequencer (MCS). The MCS can update registers using calculated rising edge and / or falling edge values. The controller may include a synchronization register (SR), a control mode (CM) register, etc. The controller can update these registers using rising edge and / or falling edge values.
[0075] When the value of the rise counter CN reaches the value stored in the first register CM1, the controller can generate the rising edge of the switching PWM signals S1 and S7. Furthermore, when the value of the rise counter CN reaches the value stored in the second register CM0, the controller can generate the falling edge of the switching PWM signals S1 and S7.
[0076] In the example above, the control period (Ctrl Period) and the switching PWM period (PWM Period) can be the same, and these periods can be synchronized with the main PWM signal (M_PWM).
[0077] To generate the switching PWM signal as described above, in addition to controlling the duty cycle, the length of the switching PWM cycle may be required. In a motor control device employing two controllers, the controllers can determine the control duty cycle based on the control algorithm included in each controller. However, in cases where the two controllers need to be synchronized, such as for a six-phase motor, although each controller can independently determine its control duty cycle, the switching PWM cycles need to be synchronized. Here, the two controllers not only need to synchronize the switching PWM cycles but also need to know the length of the next switching PWM cycle in advance. The controller can calculate the rising and / or falling edge values of the switching PWM signal in the next switching PWM cycle only after determining the length of the next switching PWM cycle.
[0078] Figure 5 This is a diagram showing the key waveforms of the controller in a six-phase motor synchronous control device according to an embodiment.
[0079] refer to Figure 5The six-phase motor synchronous control device may include a first controller M1 and a second controller M2 constituting a dual controller. In an embodiment, the first controller M1 can operate as the master controller M.
[0080] The first controller M1 can perform incremental counting using the master counter M_CN. The interval from the start of counting from the master counter M_CN until the master counter M_CN is reset can be defined as the control period Ctrl Period (CP). Figure 5 The initial control cycle CP0, the first control cycle CP1, and the second control cycle CP2 are shown.
[0081] The first controller M1 can generate a main PWM signal M_PWM that is synchronized with the main control cycles CP0, CP1, and CP2. The duty cycle of the main PWM signal M_PWM can be 0.5.
[0082] In the function of handling the main ISR event M_ISR that occurs based on the start or reset timing of the main PWM signal M_PWM or the main control cycles CP0, CP1 and CP2, the first controller M1 can calculate the length of the next switching PWM cycle, and can calculate the rising edge value and / or falling edge value for control in the next switching PWM cycle based on the control duty cycle determined by the control algorithm and the length value of the next switching PWM cycle.
[0083] Furthermore, in the function of handling the main ISR event M_ISR, the first controller M1 can calculate the A value A1, A2, or A3 and the B value B1, B2, or B3 for generating one or more PWM signals P_PWM1 and P_PWM2. Here, the one or more PWM signals P_PWM1 and P_PWM2 can be signals indicating the length of the next switching PWM cycle.
[0084] The first controller M1 can divide the length value of the next switching PWM cycle into low-order and high-order values, then calculate the A value based on the low-order value, and calculate the B value based on the high-order value. For example, when the length value of the next switching PWM cycle is a 16-bit value, the first controller M1 can calculate the A values A1, A2, A3, and the values obtained by ANDing the length value of the next switching PWM cycle with 0xFF. It can then calculate the B values B1, B2, or B3, corresponding to the values obtained by ANDing the length value of the next switching PWM cycle with 0xFF00 (the B value can be an 8-bit value after the bit shifting operation).
[0085] Then, the first controller M1 can update the CM0 register by using the calculated A value A1, A2 or A3 and B value B1, B2 or B3 using the first -1MCS M1_MCS1.
[0086] The updated value in the CM0 register can be compared with the main counter M_CN. When the main counter M_CN reaches the value in the CM0 register, the falling edge of the first PWM signal P_PWM1 and the falling edge of the second PWM signal P_PWM2 can be generated. Here, there can be two CM0 registers, and the values A1, A2, or A3 and B1, B2, or B3 can be stored in each CM0 register.
[0087] According to this process, the first PWM signal P_PWM1 can represent the low-order value of the length of the next switching PWM cycle, and the second PWM signal P_PWM2 can represent the high-order value of the length of the next switching PWM cycle.
[0088] The first controller M1 may include a timer output module (TOM). Furthermore, the first controller M1 can output a main PWM signal M_PWM, a first PWM signal P_PWM1, and a second PWM signal P_PWM2 using the TOM.
[0089] The first controller M1 and the second controller M2 may respectively include ramp counters M1_CN and M2_CN that increment and then decrement in each of the switching PWM cycles PP0, PP1 and PP2.
[0090] The ramp counters M1_CN and M2_CN can start counting upwards from the initial value at the beginning of each of the switching PWM cycles PP0, PP1, and PP2. Then, the ramp counters M1_CN and M2_CN can change their counting direction from increasing to decreasing according to the main PWM signal M_PWM indicating the control cycles CP0, CP1, and CP2 of the first controller M1. Furthermore, the time interval between the ramp counters M1_CN and M2_CN incrementing from their initial values and then decrementing to reach their initial values again can represent the switching PWM cycle.
[0091] The control cycles CP0, CP1, and CP2 may differ from the switching PWM cycles PP0, PP1, and PP2. The first controller M1 can calculate the length of the next control cycle as the sum of half the length of the current switching PWM cycle and half the length of the next switching PWM cycle (this calculation can be performed within...). Figure 5 (Executed in the M_ISR event handling function). Furthermore, the first controller M1 can update a register (e.g., the SR register) with the length of the next control cycle by using the first -1MCS M1_MCS1, such that the main counter M_CN is reset in the next control cycle when the count of the main counter M_CN reaches the length value of the next control cycle.
[0092] In the function of handling the main ISR event M_ISR, the first controller M1 can calculate the rising edge value and / or falling edge value for control in the next switching PWM cycle based on the control duty cycle and the length of the next switching PWM cycle. In an implementation, the first controller M1 can calculate a single edge value comparable to the first rise-fall counter M1_CN. The first controller M1 can then update the CM1 register with this edge value using the first -2MCSM1_MCS2.
[0093] Furthermore, when the value of the first rise-fall counter M1_CN reaches the edge value, the first controller M1 can generate the rising edge of the switch PWM signal S1 and increment it simultaneously. And when the value of the first rise-fall counter M1_CN reaches the edge value, the first controller M1 can generate the falling edge of the switch PWM signal S1 and decrement it simultaneously.
[0094] The second controller M2 may include a timer input module (TIM).
[0095] The second controller M2 can receive the PWM signal output from the TOM of the first controller M1 using TIM, and can extract data from the PWM signal to calculate the length value of the next switching PWM cycle.
[0096] By using TIM, the second controller M2 can calculate the A values A1, A2, or A3 included in the first PWM signal P_PWM1, and can calculate the B values B1, B2, or B3 included in the second PWM signal P_PWM2. Then, the second controller M2 can calculate the length of the next switching PWM cycle using the A values A1, A2, or A3 and the B values B1, B2, or B3. For the length value calculation, the second controller M2 can perform an OR operation between the value generated by a bit shift operation on the B values B1, B2, or B3 and the A value. For example, the second controller M2 can calculate the length of the next switching PWM cycle by performing a bitwise operation of (B << 8) | A.
[0097] TIM can generate an ISR event based on the received main PWM signal M_PWM or the first PWM signal P_PWM1 / second PWM signal P_PWM2. In the function of handling this ISR event M2_TIM_ISR, the second controller M2 can calculate the length value of the next switching PWM cycle, and can calculate the rising edge value and / or falling edge value for control by using the control duty cycle and the length value of the next switching PWM cycle.
[0098] In this implementation, the second controller M2 can calculate a single edge value comparable to the second rise / fall counter M2_CN. Then, by using the second MCS M2_MCS, the second controller M2 can update the CM1 register with this edge value.
[0099] Furthermore, the second controller M2 can generate the rising edge of the switching PWM signal S7 when the value of the second rise-fall counter M2_CN reaches the edge value and increases simultaneously, and can generate the falling edge of the switching PWM signal S7 when the value of the second rise-fall counter M2_CN reaches the edge value and decreases simultaneously.
[0100] Figure 6 This is a flowchart of a six-phase motor synchronous control method according to an implementation method.
[0101] refer to Figure 6 In operation S600, the control device can calculate the length of the next switching PWM cycle.
[0102] In operation S602, the control device can output at least one PWM signal indicating the length value of the next switching PWM cycle.
[0103] In operation S604, the control device can control the abc phase of the six-phase motor by using the control duty cycle for the abc phase and the length value of the next switching PWM cycle.
[0104] In operation S606, the control device can obtain the length value of the next switching PWM cycle based on at least one PWM signal.
[0105] In operation S608, the control device can control the xyz phase of the six-phase motor by using the control duty cycle of the xyz phase and the length value of the next switching PWM cycle.
[0106] In operation S602, the control device may output a first PWM signal corresponding to a value generated by an operation (e.g., an AND operation) between the length value of the next switching PWM cycle and 0xFF, and may output a second PWM signal corresponding to a value generated by an operation (e.g., an AND operation) between the length value of the next switching PWM cycle and 0xFF00.
[0107] In addition, in operation S606, the control device can extract the value of A from the first PWM signal and the value of B from the second PWM signal, and can calculate the length of the next switching PWM cycle by performing a bitwise operation of (B << 8) | A.
[0108] The control device may also include an operation that calculates the length of the next control cycle as the sum of half the length of the current switching PWM cycle and half the length of the next switching PWM cycle.
[0109] In operation of S608, the control device can output a switching PWM signal by using a ramp counter that increments and decrements during the switching PWM cycle and a register indicating the edge value. The counting direction of the ramp counter can be switched from incrementing to decrementing at the end or beginning of the control cycle.
[0110] In addition, the control device may also include an operation that outputs a main PWM signal in sync with the control cycle, and in operation S608, the counting direction of the ramp counter can be switched from incrementing to decrementing according to the main PWM signal.
[0111] Figure 7 This is a flowchart of a control method for a first controller according to an embodiment.
[0112] refer to Figure 7 In operation of S700, the first controller can calculate the length of the next switching PWM cycle.
[0113] In operation S702, the first controller can calculate the length of the next control cycle as the sum of half the length of the current switching PWM cycle and half the length of the next switching PWM cycle.
[0114] In operation S704, the first controller can calculate the values A and B based on the length of the next switching PWM cycle. The first controller can calculate the value A by performing an operation between the length value of the next switching PWM cycle and 0xFF (e.g., an AND operation), and can calculate the value B by performing an operation between the length value of the next switching PWM cycle and 0xFF00 (e.g., an AND operation) (a bit shifting operation can be additionally performed on the value B).
[0115] In operation of S706, the first controller can update the registers for values A and B, causing one or more PWM signals to be output.
[0116] In operation of S708, the first controller can update the register for the control cycle length value and the register for the edge value in the next switching PWM cycle.
[0117] In addition, the first controller can generate and output a switching PWM signal by using such edge values and a rise-fall counter.
[0118] Figure 8 This is a flowchart of a control method for a second controller according to an embodiment.
[0119] refer to Figure 8 In operating the S800, TIM ISR events in the second controller can be generated via TIM.
[0120] In operation of S802, the second controller can read the A and B values from the PWM signal via the function of handling TIM ISR events.
[0121] In operation S804, the second controller can obtain the length of the next switching PWM cycle by using the A value and the B value, and can calculate the edge value by using the control duty cycle and the length of the next switching PWM cycle.
[0122] In operation of S806, the second controller can update the register used for the edge value in the next switching PWM cycle.
[0123] In addition, the second controller can generate and output a switching PWM signal by using such edge values and a rise / fall counter.
[0124] Figure 9 This is a diagram illustrating the signals between the first controller and the second controller according to an embodiment.
[0125] refer to Figure 9 The first controller 110 can generate switching PWM signals S1 to S6 by using the control duty cycle for the abc phase of the six-phase motor and the length value of the next switching PWM cycle, and can control the abc phase of the six-phase motor by outputting the switching PWM signals S1 to S6 to the first converter.
[0126] Furthermore, the first controller 110 can output the length value of the next switching PWM cycle using TOM. For example, the first controller 110 can represent the length value of the next switching PWM cycle in the first PWM signal P_PWM1 and the second PWM signal P_PWM2, and can output the first PWM signal P_PWM1 and the second PWM signal P_PWM2 via TOM.
[0127] The second controller 120 can obtain the length value of the next switching PWM cycle by using the output of the received TOM as input to TIM.
[0128] Furthermore, the second controller 120 can generate switching PWM signals S7 to S12 by using the control duty cycle of the xyz phase of the six-phase motor and the length value of the next switching PWM cycle, and can control the xyz phase of the six-phase motor by outputting the switching PWM signals S7 to S12 to the second inverter.
[0129] The first controller can calculate the rising edge or falling edge value of the switching PWM signal using the control duty cycle of the abc phase and the length of the next switching PWM cycle. Similarly, the second controller can calculate the rising edge or falling edge value of the switching PWM signal using the control duty cycle of the xyz phase and the length of the next switching PWM cycle.
[0130] The first and second controllers can output the switching PWM signal by using a rise-fall counter that increments and then decrements during the switching PWM cycle and a register that indicates the rising edge or falling edge token value.
[0131] The first controller can also output a control cycle using TOM. This signal can be the main PWM signal M_PWM. Furthermore, the second controller can switch the counting direction of the ramp counter from incrementing to decrementing at the end or beginning of the control cycle, with the end or beginning of the control cycle identified by TIM.
[0132] In addition, ISR events corresponding to the end or start of the control cycle can be generated by TIM in the second controller.
[0133] The first controller can use the length value of the next switching PWM cycle output by TOM as multiple PWM signals. For example, as Figure 9 As shown, the first controller can output the length value of the next switching PWM cycle as the first PWM signal P_PWM1 and the second PWM signal P_PWM2.
[0134] As described above, the motor can be controlled more safely according to the embodiments of this disclosure. Furthermore, the safety of six-phase motor control can be further enhanced by controlling the six-phase motor via dual controllers according to the embodiments of this disclosure. Additionally, the synchronization problem, a challenge associated with dual controllers, can be solved according to the embodiments of this disclosure.
[0135] The terms “comprising,” “including,” or “having” used above mean that the corresponding component may be inherent, unless specifically stated otherwise, and therefore should be interpreted as potentially including other components rather than excluding them. Unless otherwise defined, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art. Terms (such as those defined in commonly used dictionaries) should be interpreted as having meanings consistent with their meanings in the relevant field and in the context of this disclosure, and should not be interpreted as having idealized or overly formal meanings unless expressly defined herein.
[0136] The above description merely illustrates the technical concept of this disclosure, and those skilled in the art can change and modify this disclosure in various ways without departing from its scope. Therefore, the embodiments described herein are not intended to limit, but merely to explain the technical concept of this disclosure, and the technical concept of this disclosure is not limited to the embodiments. The scope of this disclosure should be interpreted by the appended claims, and all technical concepts within the equivalent scope should be interpreted as included within the scope of this disclosure.
Claims
1. A device for synchronously controlling a six-phase motor, comprising: The first controller is configured as follows: Calculate the length of the next switching pulse width modulation (PWM) cycle. Output at least one PWM signal indicating the length value of the next switching PWM cycle, and The abc phase of the six-phase motor is controlled by using the control duty cycle for the abc phase and the length of the next switching PWM cycle. as well as The second controller is configured as follows: The length of the next switching PWM cycle is obtained based on the at least one PWM signal, and The xyz phase of the six-phase motor is controlled by using the control duty cycle for the xyz phase and the length value of the next switching PWM cycle.
2. The apparatus according to claim 1, wherein, The first controller is also configured to: The length value of the next switching PWM cycle is divided into low-order and high-order values; Output a first PWM signal indicating the low-order value; and Output a second PWM signal indicating the high-order value.
3. The apparatus according to claim 2, wherein, The second controller is also configured to: Extract the value A from the first PWM signal; Extract the B value from the second PWM signal; and The length of the next switching PWM cycle is obtained by performing an OR operation between the value obtained by shifting the value of B and the value of A.
4. The apparatus according to claim 1, wherein, The first controller and the second controller are also configured to increment and then decrement during the switching PWM cycle by using an i-increment counter; And the ii register, which indicates the edge value, to output the switching PWM signal.
5. The apparatus according to claim 4, wherein, In both the first and second controllers, the ramp counter is further configured to switch the counting direction from incrementing to decrementing according to a main PWM signal indicating the control cycle of the first controller.
6. The apparatus according to claim 5, wherein, The next control cycle of the first controller is calculated as the sum of half the length of the current switching PWM cycle and half the length of the next switching PWM cycle.
7. The apparatus according to claim 1, wherein: The first controller is also configured to output at least one pulse width modulation signal using a timer output module TOM; and The second controller is also configured to extract data from the at least one PWM signal using a timer input module (TIM) for calculating the length value of the next switching PWM cycle.
8. The apparatus according to claim 7, wherein: The second controller's TIM is configured to generate an Interrupt Service Routine (ISR) event based on the main PWM signal or at least one PWM signal received from the first controller; and The second controller is also configured to calculate the length of the next switching PWM cycle based on data extracted from the at least one PWM signal according to the ISR event.
9. A device for synchronously controlling a six-phase motor, comprising: The first controller is configured as follows: The abc phase of the six-phase motor is controlled by using the control duty cycle for the abc phase and the length of the next switching pulse width modulation (PWM) cycle. The length of the next switching PWM cycle is output using the timer output module TOM. as well as The second controller is configured as follows: The length of the next switching PWM cycle is obtained by using the timer input module TIM, which is configured to receive the output of TOM as input. The xyz phase of the six-phase motor is controlled by using the control duty cycle for the xyz phase and the length of the next switching PWM cycle.
10. The apparatus according to claim 9, wherein, The second controller is also configured to calculate the rising edge or falling edge token value of the switching PWM signal by using the control duty cycle for the xyz phase and the length value of the next switching PWM cycle.
Citation Information
Patent Citations
A fan heater
KR1020240066547A