WO2021024590A1 - Motor control device, moving body, motor control method, and program - Google Patents

Motor control device, moving body, motor control method, and program Download PDF

Info

Publication number
WO2021024590A1
WO2021024590A1 PCT/JP2020/021556 JP2020021556W WO2021024590A1 WO 2021024590 A1 WO2021024590 A1 WO 2021024590A1 JP 2020021556 W JP2020021556 W JP 2020021556W WO 2021024590 A1 WO2021024590 A1 WO 2021024590A1
Authority
WO
WIPO (PCT)
Prior art keywords
motor
motor control
torque
detection value
control device
Prior art date
Application number
PCT/JP2020/021556
Other languages
French (fr)
Japanese (ja)
Inventor
悠輔 久保井
弘 藤原
田澤 徹
Original Assignee
パナソニックIpマネジメント株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Publication of WO2021024590A1 publication Critical patent/WO2021024590A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P29/00Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
    • H02P29/40Regulating or controlling the amount of current drawn or delivered by the motor for controlling the mechanical load

Definitions

  • the present disclosure generally relates to motor control devices, moving bodies, motor control methods and programs. More specifically, the present disclosure relates to a motor control device that controls a motor that rotates a propeller, a moving body including the motor control device, a motor control method, and a program.
  • the unmanned aerial vehicle (moving body) described in Patent Document 1 has an attitude control loop.
  • the attitude control loop includes an angular velocity control loop.
  • the angular velocity control loop uses a PI (Proportion Integral) corrector to calculate the angular velocity setting point of the unmanned aerial vehicle.
  • the angular velocity control loop calculates the difference between the angular velocity set point and the angular velocity effectively measured by the gyrometer. Based on this information, various set points are calculated for the rotational speed of the motor (and therefore for lift), and the set points are sent to the motor to perform the motion operation of the drone.
  • the motor control device includes an acquisition unit and a motor control unit.
  • the acquisition unit acquires a torque detection value corresponding to the torque generated between the propeller and the motor that rotates the propeller.
  • the motor control unit controls the motor based on the torque detection value.
  • the moving body includes a motor control device, a motor, a propeller, and a moving body main body.
  • a motor, a propeller, and a motor control device are mounted on the main body of the moving body.
  • the motor control method includes a first step of acquiring a torque detection value corresponding to a torque generated between a propeller and a motor that rotates the propeller, and a torque detection acquired in the first step. It comprises a second step of controlling the motor based on the value.
  • the program according to one aspect of the present disclosure is a program for causing one or more processors to execute the motor control method.
  • the present disclosure has an advantage that the responsiveness of motor control can be improved.
  • FIG. 1 is a block diagram of a mobile motor control device according to an embodiment.
  • FIG. 2 is a block diagram of the same moving body.
  • FIG. 3 is a perspective view showing a schematic shape of the moving body as described above.
  • FIG. 4 is a flowchart showing an operation example of the moving body as described above.
  • FIG. 5 is a block diagram of the motor control device of the moving body according to the first modification.
  • FIG. 3 described in the following embodiment is a schematic view, and the ratio of the size and the thickness of each component in the figure does not necessarily reflect the actual dimensional ratio. ..
  • FIG. 1 is a block diagram of a mobile motor control device 2 according to an embodiment.
  • FIG. 2 is a block diagram of the mobile body 1 of the same.
  • the moving body 1 includes a plurality of motor control devices 2 (4 in FIG. 2), a plurality of motors 3 (4 in FIG. 2), and a plurality of propellers (4 in FIG. 2). 4 (rotor blade) and a moving body main body 5 are provided.
  • the moving body 1 includes three or more motors 3 and three or more propellers 4.
  • the plurality of motors 3, the plurality of propellers 4, and the plurality of motor control devices 2 are mounted on the moving body main body 5.
  • the plurality of motors 3 and the plurality of propellers 4 have a one-to-one correspondence.
  • Each propeller 4 is rotated by a force applied from the corresponding motor 3.
  • torque is generated between each motor 3 and the corresponding propeller 4.
  • a thrust for moving the moving body 1 is generated.
  • the plurality of motor control devices 2 and the plurality of motors 3 have a one-to-one correspondence. Each motor control device 2 controls the corresponding motor 3.
  • each motor control device 2 includes a motor control unit 21, a current sensor 25, and an acquisition unit 26.
  • the current sensor 25 measures the current flowing through the motor 3.
  • the acquisition unit 26 calculates the torque detection value T1 which is the detection value of the torque current flowing through the motor 3 based on the current measured by the current sensor 25.
  • the torque detection value T1 is a value corresponding to the torque generated between the propeller 4 and the motor 3.
  • the acquisition unit 26 calculates the torque detection value T1 individually in each motor control device 2.
  • the control of the motor 3 can be changed based on the torque detection value T1. Therefore, the responsiveness of the control of the motor 3 can be improved as compared with the case where the motor 3 is controlled based on the detection result of the posture and speed of the moving body 1. For example, when the posture of the moving body 1 starts to collapse, the posture can be corrected by controlling the motor 3 based on the changed torque detection value T1 before the posture collapse becomes large.
  • FIG. 3 is a perspective view showing a schematic shape of the moving body 1 according to the embodiment.
  • the moving body 1 is a drone (aerial drone)
  • Drones are a type of unmanned aerial vehicle.
  • a drone is a type of multicopter with three or more propellers 4.
  • the drone has the function of flying autonomously.
  • the drone controls the posture of the aircraft (moving body body 5) by controlling the rotation speed of each of the three or more propellers 4.
  • the moving direction of the aircraft changes according to the change in the attitude of the aircraft.
  • the roll axis, pitch axis, and yaw axis of the moving body body 5 are illustrated as X-axis, Y-axis, and Z-axis.
  • four propellers 4 are attached to the moving body main body 5. More specifically, the mobile body 5 has four arms 51 extending in four directions. A propeller 4 is attached to the tip of each arm 51 of the moving body body 5.
  • the four propellers 4 may be referred to as propellers 41, 42, 43, 44, respectively.
  • the four propellers 41 to 44 are arranged in this order (around the yaw axis (Z axis)) in the circumferential direction surrounding the moving body body 5.
  • two propellers 41 and 43 rotate in the first direction
  • the remaining two propellers 42 and 44 rotate in the second direction opposite to the first direction.
  • the two propellers 4 located diagonally to each other rotate in the same direction.
  • Each of the four propellers 4 rotates by the driving force of the corresponding motor 3 to generate thrust.
  • arrows f1 to f4 indicating the thrust of each propeller 4 and arrows f5 indicating the thrust of the moving body 5 are shown.
  • the direction of thrust of each propeller 4 is the yaw axis direction (upward). In the four propellers 4, the thrusts can be different from each other.
  • each of the four propellers 4 the higher the number of revolutions, the greater the thrust.
  • the thrust and posture of the moving body 5 change according to the thrust of each of the four propellers 4.
  • the rotation speeds of the two propellers 41 and 42 provided on the front half of the moving body 1 are the rotation speeds of the two propellers 43 and 44 provided on the rear half of the moving body 1.
  • the torque acting on the moving body body 5 from the four propellers 4 is also determined by the rotation speed of each of the four propellers 4. For example, suppose that the rotation speeds of the two propellers 41 and 43 located diagonally to each other are made smaller or larger than the rotation speeds of the remaining two propellers 42 and 44. Then, a torque corresponding to the difference between the torques of the two propellers 41 and 43 and the torques of the two propellers 42 and 44 acts on the moving body body 5, so that the moving body body 5 is centered on the yaw axis (Z axis). Rotate.
  • the moving body 1 includes an upper portion 6, a middle portion 7, four motor control devices 2, four motors 3, four propellers 4, a moving body main body 5, and motion. It includes a detection unit 9.
  • Each motor 3 is, for example, a brushless motor.
  • the mobile 1 includes, for example, a computer system having one or more processors and memory. When the processor of the computer system executes the program recorded in the memory of the computer system, at least a part of the functions of the upper unit 6, the intermediate unit 7, and the motor control device 2 are realized.
  • the program may be recorded in a memory, provided through a telecommunication line such as the Internet, or may be recorded and provided on a non-temporary recording medium such as a memory card.
  • the motion detection unit 9 detects information about the motion of the moving body 1.
  • the detection signal indicating the detection result of the motion detection unit 9 is output to the upper unit 6 and the middle unit 7.
  • the motion detection unit 9 includes, for example, a gyro sensor, an acceleration sensor, a geomagnetic sensor, a GPS (Global Positioning System) sensor, a pressure sensor, and the like.
  • the gyro sensor detects the posture (tilt) of the moving body 1.
  • the acceleration sensor detects the acceleration of the moving body 1.
  • the geomagnetic sensor detects the orientation of the moving body 1.
  • the GPS sensor detects the current position of the moving body 1.
  • the barometric pressure sensor detects the barometric pressure at the current position of the moving body 1.
  • the motion detection unit 9 calculates the coordinates, velocity, angle, and angular velocity of the moving body 1 based on the outputs of various sensors such as a gyro sensor.
  • the coordinates of the moving body 1 calculated by the motion detection unit 9 are the X coordinate, the Y coordinate, and the Z coordinate.
  • the directions of the roll axis, pitch axis, and yaw axis when the moving body 1 is not tilted and the rotation axes of the four propellers 4 are parallel to the vertical direction are defined as the X, Y, and Z axis directions. ..
  • the velocities of the moving body 1 calculated by the motion detection unit 9 are the velocities in the X-axis direction and the velocities in the Y-axis direction.
  • the angle of the moving body 1 calculated by the motion detection unit 9 is the rotation position of the moving body 1 around the roll axis, the pitch axis, and the yaw axis (X, Y, Z axes).
  • the angular velocity of the moving body 1 calculated by the motion detection unit 9 is the angular velocity of rotation around the roll axis, the pitch axis, and the yaw axis.
  • the upper unit 6 transmits a first instruction signal regarding the control of the four motors 3 to the middle unit 7.
  • the first instruction signal is, for example, at least one of a position instruction signal for instructing the position (altitude and horizontal coordinates) of the mobile body 5 and an attitude instruction signal for instructing the posture (angle) of the mobile body 5.
  • a position instruction signal for instructing the position (altitude and horizontal coordinates) of the mobile body 5
  • an attitude instruction signal for instructing the posture (angle) of the mobile body 5.
  • Including one For example, when the mobile body 1 is stopped on the ground, information on the coordinates of the destination of the mobile body 1 is input to the upper unit 6 by wireless communication or wired communication from an external device of the mobile body 1. .. Further, for example, during the flight of the mobile body 1, the update information of the coordinates of the destination of the mobile body 1 is input to the upper unit 6 by wireless communication from an external device of the mobile body 1.
  • the upper unit 6 generates a position instruction signal and an attitude instruction signal based on the information of the coordinates of the destination of the moving body 1 and the detection signals of the gyro sensor, the GPS sensor, and the like of the motion detection unit 9. As a result, the upper unit 6 controls the four motors 3 so as to direct the moving body 1 to the destination.
  • the middle unit 7 generates a second instruction signal based on the first instruction signal received from the upper unit 6 and the information about the motion of the moving body 1 received from the motion detection unit 9.
  • the second instruction signal includes, for example, the torque target values Tr1 (or Tr2, Tr3, Tr4) and the thrust target values Fr1 (or Fr2, Fr3, Fr4) of each of the four motors 3.
  • the middle unit 7 generates four second instruction signals and transmits them to the four motor control devices 2.
  • the four second instruction signals can be different from each other. That is, the intermediate portion 7 can give different instructions to the four motors 3 via the four motor control devices 2. Thereby, the posture, the moving direction, the moving speed, the acceleration, and the like of the moving body 1 can be controlled by controlling the rotation speed of each of the four motors 3.
  • Parameters related to the force applied to the moving body body 5 include acceleration in the yaw axis (Z axis) direction, angular velocity around the roll axis, angular velocity around the pitch axis, and angular velocity around the yaw axis.
  • the acceleration in the yaw axis direction is detected by the acceleration sensor of the motion detection unit 9.
  • the angular velocity around the roll axis, the angular velocity around the pitch axis, and the angular velocity around the yaw axis are detected by the gyro sensor of the motion detection unit 9.
  • the middle unit 7 calculates the target value of each of these four parameters based on the first instruction signal transmitted from the upper unit 6, and feedback-controls the four parameters so that each of the four parameters approaches the target value. ..
  • the middle portion 7 has an altitude controller 71, a position controller 72, 73, a speed controller 74, 75, an angle controller 76, 77, 78, and an angular velocity controller 79, 80, 81. doing. Each of these performs feedback control.
  • the middle portion 7 further has an indicator portion 82.
  • a signal including a target value (denoted as Zr in FIG. 2) of the Z coordinate (altitude) of the moving body 1 is input to the altitude controller 71 as the first instruction signal from the upper unit 6.
  • the calculated value of the Z coordinate (denoted as Z in FIG. 2) of the moving body 1 calculated by the motion detection unit 9 is input to the altitude controller 71.
  • the altitude controller 71 determines the total target value Tr of the torques of the four motors 3 so that the difference between the target value of the Z coordinate and the calculated value converges within a predetermined range.
  • the target value Tr is a vector quantity.
  • a signal including the target value of the X coordinate of the moving body 1 (denoted as Xr in FIG. 2) is input to the position controller 72 as the first instruction signal from the upper unit 6.
  • the calculated value of the X coordinate (denoted as X in FIG. 2) of the moving body 1 calculated by the motion detection unit 9 is input to the position controller 72.
  • the position controller 72 determines the target value Vxr of the velocity in the X-axis direction so that the difference between the target value of the X coordinate and the calculated value converges within a predetermined range.
  • a signal including a target value of the Y coordinate of the moving body 1 (denoted as Yr in FIG. 2) is input to the position controller 73 as the first instruction signal from the upper unit 6.
  • the calculated value of the Y coordinate (denoted as Y in FIG. 2) of the moving body 1 calculated by the motion detection unit 9 is input to the position controller 73.
  • the position controller 72 determines the target value Vyr of the velocity in the Y-axis direction so that the difference between the target value of the Y coordinate and the calculated value converges within a predetermined range.
  • the target value Vxr of the velocity in the X-axis direction defined by the position controller 72 and the calculated value Vx of the velocity in the X-axis direction calculated by the motion detection unit 9 are input.
  • the speed controller 74 determines the target value ⁇ r of the angle around the Y axis so that the difference between the target value Vxr and the calculated value Vx converges within a predetermined range. By rotating the moving body main body 5 around the Y axis, the speed of the moving body main body 5 in the X-axis direction is adjusted.
  • the target value Vyr of the velocity in the Y-axis direction defined by the position controller 73 and the calculated value Vy of the velocity in the Y-axis direction calculated by the motion detection unit 9 are input to the speed controller 75.
  • the speed controller 75 determines the target value ⁇ r of the angle around the X axis so that the difference between the target value Vyr and the calculated value Vy converges within a predetermined range.
  • the angle controller 76 has a target value ⁇ r of the angle around the Y axis defined by the speed controller 74 and a calculated value of the angle around the Y axis calculated by the motion detection unit 9 (denoted as ⁇ in FIG. 2). ) And is entered.
  • the angle controller 76 determines the target value ⁇ r of the angular velocity of rotation around the Y axis so that the difference between the target value ⁇ r and the calculated value ⁇ converges within a predetermined range.
  • the angle controller 77 has a target value ⁇ r of the angle around the X axis defined by the speed controller 75 and a calculated value of the angle around the X axis calculated by the motion detection unit 9 (denoted as ⁇ in FIG. 2). ) And is entered.
  • the angle controller 77 determines the target value ⁇ r of the angular velocity of rotation around the X axis so that the difference between the target value ⁇ r and the calculated value ⁇ converges within a predetermined range.
  • a signal including a target value of an angle around the Z axis (denoted as ⁇ r in FIG. 2) is input to the angle controller 78 as the first instruction signal from the upper unit 6.
  • the calculated value of the angle around the Z axis (denoted as ⁇ in FIG. 2) calculated by the motion detection unit 9 is input to the angle controller 78.
  • the angle controller 78 determines the target value ⁇ r of the angular velocity of rotation around the Z axis so that the difference between the target value ⁇ r and the calculated value ⁇ converges within a predetermined range.
  • the angular velocity controller 79 has a target value ⁇ r of the angular velocity of rotation around the Y-axis defined by the angle controller 76 and a calculated value ⁇ of the angular velocity of rotation around the Y-axis calculated by the motion detection unit 9. Entered.
  • the angular velocity controller 79 determines the target value ⁇ r of the angular acceleration of rotation around the Y axis so that the difference between the target value ⁇ r and the calculated value ⁇ r converges within a predetermined range.
  • the angular velocity controller 80 has a target value ⁇ r of the angular velocity of rotation around the X-axis defined by the angle controller 77 and a calculated value ⁇ of the angular velocity of rotation around the X-axis calculated by the motion detection unit 9. Entered.
  • the angular velocity controller 80 determines the target value ⁇ r of the angular acceleration of rotation around the X axis so that the difference between the target value ⁇ r and the calculated value ⁇ converges within a predetermined range.
  • the angular velocity controller 81 has a target value ⁇ r of the angular velocity of rotation around the Z axis defined by the angle controller 78 and a calculated value ⁇ r of the angular velocity of rotation around the Z axis calculated by the motion detection unit 9. Entered.
  • the angular velocity controller 81 determines the target value ⁇ r of the angular acceleration of rotation around the Z axis so that the difference between the target value ⁇ r and the calculated value ⁇ r converges within a predetermined range.
  • the indicator 82 rotates around the X, Y, and Z axes defined by the angular velocity controllers 79, 80, and 81, and the target value Tr of the total torque of the four motors 3 defined by the altitude controller 71.
  • Four torque target values Tr1, Tr2, Tr3, Tr4 and four thrust target values Fr1, Fr2, Fr3, and Fr4 are generated based on the target values ⁇ r, ⁇ r, and ⁇ r of the angular acceleration of.
  • the four torque target values Tr1, Tr2, Tr3, Tr4 and the four thrust target values Fr1, Fr2, Fr3, and Fr4 each correspond one-to-one with the four motor control devices 2.
  • the indicator 82 outputs the corresponding torque target value and thrust target value to the four motor control devices 2, respectively. By controlling the motor 3 based on the corresponding torque target value and thrust target value in each of the four motor control devices 2, the measured values are brought closer to the target values Tr, ⁇ r, ⁇ r, and ⁇ r.
  • each motor control device 2 includes a motor control unit 21, a control output unit 22, a motor rotation measurement unit 23, a power supply circuit 24, a current sensor 25, an acquisition unit 26, and a pressure sensor. 27, a thrust calculation unit 28, and an output unit 29 are provided.
  • the motor control device 2 includes, for example, a computer system having one or more processors and memories. When the processor of the computer system executes the program recorded in the memory of the computer system, at least a part of the functions of the motor control device 2 are realized.
  • the program may be recorded in a memory, provided through a telecommunication line such as the Internet, or may be recorded and provided on a non-temporary recording medium such as a memory card.
  • the motor control unit 21 includes a torque controller 211, a thrust controller 212, and a current controller 213.
  • the torque target value Tr1 is input to the torque controller 211 from the indicator unit 82 of the intermediate unit 7.
  • the torque detection value T1 of the motor 3 calculated by the acquisition unit 26 is input to the torque controller 211.
  • the thrust target value Fr1 is input to the thrust controller 212 from the instruction unit 82 of the middle unit 7.
  • the thrust detection value F1 of the motor 3 calculated by the thrust calculation unit 28 is input to the thrust controller 212.
  • the motor control unit 21 controls the current flowing through the motor 3 based on the torque detection value T1. More specifically, the motor control unit 21 performs feedback control so that the torque detection value T1 approaches the torque target value Tr1. That is, the motor control unit 21 determines the current target value Ir1 of the current supplied to the motor 3 so that the difference between the torque target value Tr1 and the torque detection value T1 converges within the first predetermined range.
  • the motor control unit 21 further controls the motor 3 based on the thrust detection value F1 corresponding to the thrust generated by the propeller 4.
  • the thrust detection value F1 is a value calculated by the thrust calculation unit 28.
  • the motor control unit 21 provides feedback control so that the thrust detection value F1 approaches the thrust target value Fr1. That is, the motor control unit 21 determines the current target value Ir1 so that the difference between the thrust target value Fr1 and the thrust detection value F1 converges within the second predetermined range.
  • the difference between the torque target value Tr1 and the torque detection value T1 converges within the first predetermined range
  • the difference between the thrust target value Fr1 and the thrust detection value F1 is the second predetermined difference.
  • the current target value Ir1 is set so as to converge within the range.
  • the first predetermined range is, for example, a range of -3% to + 3% of the torque target value Tr1.
  • the second predetermined range is, for example, a range of -3% to + 3% of the thrust target value Fr1.
  • the motor control unit 21 has a torque / thrust control unit 210 including a torque controller 211 and a thrust controller 212.
  • the torque controller 211 outputs the difference between the torque target value Tr1 and the torque detection value T1.
  • the thrust controller 212 outputs the difference between the thrust target value Fr1 and the thrust detection value F1.
  • the torque / thrust control unit 210 determines the current target value Ir1 based on the outputs of the torque controller 211 and the thrust controller 212.
  • the torque and the thrust are weighted by defining the widths (difference between the upper limit value and the lower limit value) of the first predetermined range and the second predetermined range, respectively.
  • the larger the torque weighting the closer the torque (torque detection value T1) approaches the torque target value Tr1.
  • the smaller the width of the first predetermined range the larger the weighting of the thrust, and the more accurately the altitude of the moving body 1 can be controlled.
  • the smaller the width of the second predetermined range the larger the weighting of the torque, and the more accurately the posture of the moving body 1 can be controlled.
  • the weighting of torque and thrust is appropriately determined.
  • the current target value Ir1 defined by the torque / thrust control unit 210 and the measured value I1 of the current flowing through the motor 3 measured by the current sensor 25 are input to the current controller 213.
  • the current controller 213 (motor control unit 21) performs current control for controlling the current flowing through the motor 3 based on the current flowing through the motor 3 (measured value I1). More specifically, the current controller 213 controls the current supplied to the motor 3 so that the difference between the current target value Ir1 and the measured value I1 converges within a predetermined range. That is, the current controller 213 feedback-controls so that the measured value I1 approaches the current target value Ir1.
  • the power supply circuit 24 is, for example, a switching power supply circuit including a switching element.
  • the power supply circuit 24 passes a current through the motor 3.
  • the motor control device 2 controls the motor 3 by controlling the current flowing from the power supply circuit 24 to the motor 3.
  • PWM Pulse Width Modulation
  • the current controller 213 controls the operation of the switching element of the power supply circuit 24 by the PWM signal P1 generated based on the current target value Ir1 and the measured value I1.
  • the current controller 213 controls the current flowing through the motor 3.
  • the motor rotation measuring unit 23, the current sensor 25, and the pressure sensor 27 acquire information about the motor 3.
  • the motor rotation measuring unit 23 measures the rotation angle A1 of the motor 3.
  • the motor rotation measuring unit 23 includes, for example, a photoelectric encoder or a magnetic encoder.
  • the current sensor 25 measures the current flowing through the motor 3. More specifically, the motor 3 is supplied with a three-phase current (U-phase current, V-phase current, and W-phase current) from the power supply circuit 24. The current sensor 25 measures at least two phases of current.
  • the pressure sensor 27 detects the pressure generated between the motor 3 and the propeller 4.
  • the pressure sensor 27 receives an axial force generated by the rotation of the rotating shaft from the rotating shaft of the rotor of the motor 3 and detects this force.
  • a resistance type strain gauge, a semiconductor type pressure sensor, or the like can be adopted.
  • the semiconductor pressure sensor include a piezoresistive pressure sensor and a capacitance type pressure sensor.
  • the acquisition unit 26 calculates the d-axis current and the q-axis current flowing through the motor 3. More specifically, the acquisition unit 26 converts the currents of at least two phases measured by the current sensor 25 into coordinates based on the rotation angle A1 of the motor 3 measured by the motor rotation measurement unit 23, and performs a magnetic field component (d). It is converted into a current measurement value of (shaft current) and a current measurement value of a torque component (q-axis current).
  • the torque detection value T1 which is a value corresponding to the torque generated between the propeller 4 and the motor 3, is a current measurement value of the torque component (q-axis current) calculated by the acquisition unit 26. That is, the acquisition unit 26 calculates the torque detection value T1 based on the current flowing through the motor 3.
  • the relationship between the current of at least two phases detected by the current sensor 25 and the torque detection value T1 is stored in the memory of the motor control device 2 in the form of an arithmetic expression or a data table, for example.
  • the thrust calculation unit 28 calculates the thrust (thrust detection value F1) generated by the propeller 4 based on the detection value of the pressure generated between the motor 3 and the propeller 4 detected by the pressure sensor 27.
  • the relationship between the pressure detection value and the thrust detection value F1 is stored in the memory of the motor control device 2 in the form of an arithmetic expression or a data table, for example. The larger the pressure detection value, the larger the thrust detection value F1 calculated by the thrust calculation unit 28.
  • the output unit 29 outputs the torque detection value T1.
  • the output unit 29 outputs (stores), for example, the torque detection value T1 to the memory of the motor control unit 21.
  • the output unit 29 has, for example, a wireless communication device, and outputs (transmits) a signal including the torque detection value T1 to the external device by wireless communication.
  • the control output unit 22 outputs information regarding the control content of the motor 3 by the motor control unit 21.
  • the information regarding the control content of the motor 3 is, for example, a torque target value Tr1 and a thrust target value Fr1, and various other target values.
  • the control output unit 22 outputs (stores), for example, information on the control content of the motor 3 to the memory of the motor control unit 21.
  • the control output unit 22 has, for example, a wireless communication device, and outputs (transmits) information on the control content of the motor 3 to an external device by wireless communication.
  • the control output unit 22 and the output unit 29 may share a part or all of the configuration.
  • FIG. 4 is a flowchart showing an operation example of the moving body according to the embodiment.
  • the current sensor 25 of the motor control device 2 measures the current flowing through the motor 3 (step ST1).
  • the acquisition unit 26 calculates (acquires) a torque detection value T1 corresponding to the torque generated between the propeller 4 and the motor 3 based on the current measured by the current sensor 25 (step ST2).
  • the pressure sensor 27 of the motor control device 2 detects the pressure generated between the motor 3 and the propeller 4 (step ST3).
  • the thrust calculation unit 28 calculates the thrust detection value F1 based on the pressure detection value detected by the pressure sensor 27 (step ST4).
  • the motor control unit 21 controls the motor 3 based on the torque detection value T1 and the thrust detection value F1 of the propeller 4 (step ST5). Such processing is executed by each of the four motor control devices 2.
  • the motor control device 2 further controls the motor 3 based on the thrust detection value F1
  • the accuracy of the control of the motor 3 is improved as compared with the case where the motor 3 is controlled only based on the torque detection value T1.
  • both the fluctuation of the torque detection value T1 and the fluctuation of the thrust detection value F1 can be detected before the fluctuation of the posture of the moving body 1 is detected by the gyro sensor. Therefore, the posture of the moving body 1 can be corrected by controlling the motor 3 based on the changed torque detection value T1 and the thrust detection value F1 before the posture of the moving body 1 collapses significantly.
  • the torque detection value T1 and the thrust detection value F1 are calculated based on the rotation speed of the motor 3, the rotation speed of the motor 3 and the torque detection value T1 and the thrust detection value are affected by the influence of the wind around the moving body 1.
  • the correlation with F1 may change and the calculation accuracy may deteriorate.
  • the torque detection value T1 is calculated based on the current measured by the current sensor 25.
  • the thrust detection value F1 is calculated based on the pressure detection value measured by the pressure sensor 27. Therefore, the influence of the wind on the torque detection value T1 and the thrust detection value F1 can be reduced. Therefore, the accuracy of control of the motor 3 can be improved.
  • FIG. 5 is a block diagram of the motor control device of the moving body according to the first modification.
  • the same components as those in the embodiment are designated by the same reference numerals and the description thereof will be omitted. In the following, one of the four motor control devices 2A will be described.
  • the motor control unit 21A of the modification 1 further includes a rotation speed controller 214.
  • the torque / thrust control unit 210 generates a rotation speed target value Nr1 that indicates the rotation speed of the motor 3 based on the torque target value Tr1 and the thrust target value Fr1, and outputs the rotation speed target value Nr1 to the rotation speed controller 214. That is, in the torque / thrust control unit 210, the difference between the torque target value Tr1 and the torque detection value T1 converges within the first predetermined range, and the difference between the thrust target value Fr1 and the thrust detection value F1 is the second.
  • the rotation speed target value Nr1 is set so as to converge within the predetermined range of.
  • the motor control unit 21A controls the rotation speed to control the current flowing through the motor 3 based on the rotation speed of the motor 3. More specifically, the rotation speed target value Nr1 is input to the rotation speed controller 214 from the torque / thrust control unit 210. The rotation speed A1 (measured value) of the motor 3 measured by the motor rotation measuring unit 23 is input to the rotation speed controller 214. The rotation speed controller 214 calculates the measured value of the rotation speed of the motor 3 by time-differentiating the rotation angle A1. The motor control unit 21A performs feedback control so that the measured value of the rotation speed approaches the rotation speed target value Nr1. That is, the rotation speed controller 214 determines the current target value Ir1 so that the difference between the measured rotation speed value and the rotation speed target value Nr1 converges within a predetermined range.
  • the motor control unit 21A controls the rotation speed to control the current flowing through the motor 3 based on the measured value of the rotation speed of the motor 3. Therefore, the accuracy of control of the motor 3 can be improved as compared with the case where the motor control unit 21A controls the motor 3 without using the measured value of the rotation speed of the motor 3. Further, also in the first modification, the control of the motor 3 can be changed according to the change of the torque detection value T1 or the thrust detection value F1. Therefore, the responsiveness of the control of the motor 3 can be improved as compared with the case where neither the torque detection value T1 nor the thrust detection value F1 is used for the control of the motor 3.
  • the rotation speed controller 214 may be provided in front of the torque / thrust control unit 210. That is, in one embodiment, the indicating unit 82 (see FIG. 2) of the middle unit 7 (see FIG. 2) calculates the rotation speed target value Nr1 based on the target values Tr, ⁇ r, ⁇ r, and ⁇ r, and rotates. The numerical target value Nr1 is output to the rotation speed controller 214. The rotation speed controller 214 determines the torque target value Tr1 and the thrust target value Fr1 so that the difference between the rotation speed target value Nr1 and the measured value of the rotation speed of the motor 3 converges within a predetermined range.
  • the difference between the torque target value Tr1 and the torque detection value T1 converges within the first predetermined range, and the difference between the thrust target value Fr1 and the thrust detection value F1 is the second predetermined value.
  • the current target value Ir1 is set so as to converge within the range. Even with such a configuration, the motor control unit 21A can control the rotation speed based on the rotation speed of the motor 3.
  • At least a part of the same functions as the motor control device 2 and the mobile body 1 may be embodied in a motor control method, a (computer) program, a non-temporary recording medium on which the program is recorded, or the like.
  • the motor control method includes a first step of acquiring a torque detection value T1 corresponding to the torque generated between the propeller 4 and the motor 3 that rotates the propeller 4, and a torque acquired in the first step.
  • a second step of controlling the motor 3 based on the detected value T1 is provided.
  • the program according to one aspect is a program for causing one or more processors to execute the above motor control method.
  • the motor control device 2 and the mobile body 1 in the present disclosure include a computer system.
  • the main configuration of a computer system is a processor and memory as hardware.
  • the processor executes the program recorded in the memory of the computer system, at least a part of the functions as the motor control device 2 and the mobile body 1 in the present disclosure is realized.
  • the program may be pre-recorded in the memory of the computer system, may be provided through a telecommunications line, and may be recorded on a non-temporary recording medium such as a memory card, optical disk, hard disk drive, etc. that can be read by the computer system. May be provided.
  • the processor of a computer system is composed of one or more electronic circuits including a semiconductor integrated circuit (IC, Integrated Circuit) or a large-scale integrated circuit (LSI, Large Scale Integration).
  • the integrated circuit such as an IC or LSI referred to here has a different name depending on the degree of integration, and includes an integrated circuit called a system LSI, a VLSI (Very Large Scale Integration), or a ULSI (Ultra Large Scale Integration).
  • an FPGA Field-Programmable Gate Array
  • a logical device capable of reconfiguring the junction relationship inside the LSI or reconfiguring the circuit partition inside the LSI should also be adopted as a processor. Can be done.
  • a plurality of electronic circuits may be integrated on one chip, or may be distributed on a plurality of chips.
  • the plurality of chips may be integrated in one device, or may be distributed in a plurality of devices.
  • the computer system referred to here includes a microcontroller having one or more processors and one or more memories. Therefore, the microcontroller is also composed of one or more electronic circuits including a semiconductor integrated circuit or a large-scale integrated circuit.
  • a plurality of functions of the motor control device 2 and the mobile body 1 are integrated in one housing.
  • the components of the motor control device 2 and the moving body 1 may be dispersedly provided in a plurality of housings.
  • at least a part of the functions of the motor control device 2 and the mobile body 1, for example, a part of the functions of the acquisition unit 26 may be realized by a cloud (cloud computing) or the like.
  • At least a part of the functions of the motor control device 2 and the moving body 1 distributed in a plurality of devices may be integrated in one housing.
  • some functions of the motor control device 2 and the moving body 1 dispersed in the middle portion 7 and the motor control device 2 may be integrated in one housing.
  • the motor control unit 21 may perform voltage control for controlling the voltage applied to the motor 3 based on the voltage applied to the motor 3.
  • the voltage applied to the motor 3 is a voltage applied to the winding of the motor 3.
  • the voltage sensor of the moving body 1 acquires the voltage detection value of the voltage applied to the motor 3.
  • the motor control unit 21 includes a voltage controller instead of the current controller 213.
  • the torque / thrust control unit 210 transmits a voltage instruction signal including a target value (voltage target value) of the voltage applied to the motor 3 to the voltage controller.
  • the voltage controller controls the operation of the switching element of the power supply circuit 24 so that the difference between the voltage target value and the voltage detection value converges within a predetermined range.
  • the voltage controller controls the current flowing through the motor 3.
  • the motor control unit 21 performs feedback control so that the voltage detection value approaches the voltage target value.
  • the motor control unit 21 does not control the motor 3 based on both the torque detection value T1 and the thrust detection value F1, but controls the motor 3 based on one of the torque detection value T1 and the thrust detection value F1. May be good.
  • the mobile body 1 is not limited to a drone (aerial drone), and may be, for example, a radio-controlled aircraft.
  • the mobile body 1 is not limited to a flying body such as a drone and a radio-controlled aircraft.
  • the moving body 1 may be a device that moves on or under water, such as a water drone, an underwater drone, a water radio control, or a submarine radio control (underwater radio control).
  • the number of propellers 4 and the number of motors 3 included in the moving body 1 are not limited to four.
  • the number of propellers 4 and the number of motors 3 of the moving body 1 may be, for example, two, three, six, or eight.
  • the number of motor control devices 2 included in the moving body 1 is not limited to four. Further, the number of motor control devices 2 may be different from the number of propellers 4 and the number of motors 3. One motor control device 2 may control a plurality of motors 3.
  • each motor control device 2 information about the motor 3 to be controlled is acquired by each sensor (motor rotation measuring unit 23, current sensor 25, and pressure sensor 27). In the embodiment, each motor control device 2 controls the motor 3 by using only the information about the motor 3 to be controlled among the information about the plurality of motors 3. On the other hand, each motor control device 2 further uses the information about the motor 3 other than the motor 3 to be controlled in addition to the information about the motor 3 to be controlled among the plurality of motors 3, and the motor 3 to be controlled. May be controlled.
  • a part of the configuration may be shared between the plurality of motor control devices 2.
  • at least a part of the output unit 29, the control output unit 22, the acquisition unit 26, and the thrust calculation unit 28 may be shared among the plurality of motor control devices 2.
  • the motor control device 2 may include at least an acquisition unit 26 and a motor control unit 21.
  • the current sensor 25 and the pressure sensor 27 may be provided in the moving body 1 as an external configuration of the motor control device 2.
  • the acquisition unit 26 is not limited to the configuration in which the torque detection value T1 is calculated by itself.
  • the acquisition unit 26 may acquire the torque detection value T1 from the calculation unit. ..
  • the moving body 1 may be provided with a torque sensor.
  • the acquisition unit 26 may calculate the torque detection value T1 based on the output of the torque sensor instead of the output of the current sensor 25.
  • the torque sensor referred to here measures the operating torque of the motor 3.
  • the torque sensor is, for example, a magnetostrictive strain sensor capable of detecting torsional strain.
  • the magnetostrictive strain sensor detects a change in magnetic permeability according to the strain generated by applying torque to the rotating shaft of the motor 3 with a coil installed in the non-rotating part of the motor 3, and outputs a voltage signal proportional to the strain. Output.
  • the operation of the motor control unit 21 based on the torque detection value T1 is not limited to the feedback control that causes the torque detection value T1 to approach the torque target value.
  • the operation of the motor control unit 21 based on the thrust detection value F1 is not limited to the feedback control that causes the thrust detection value F1 to approach the thrust target value.
  • the motor control unit 21 causes the torque detection value T1 and the thrust detection value F1 to elapse over time in order to cause the moving body 1 to crash land when, for example, the wind speed around the moving body 1 exceeds a threshold value. Control may be performed to reduce the rotation speed of the motor 3 so as to decrease in accordance with the above.
  • reducing the rotation speed of the motor 3 includes setting the rotation speed of the motor 3 to 0 (that is, stopping the motor 3).
  • the wind speed around the moving body 1 may be detected by, for example, a wind speed sensor provided in the moving body 1.
  • the motor control unit 21 may set a limit value of the torque detection value T1 when a specific condition is satisfied. When the torque target value is larger than the limit value, the motor control unit 21 may control the motor 3 so that the torque detection value T1 approaches the limit value instead of the torque target value. When the specific condition is not satisfied, the motor control unit 21 cancels the setting of the limit value. As a result, there is room for increasing the torque of the motor 3 when a specific condition is not satisfied, so that the flexibility of control of the motor 3 can be increased.
  • the motor control unit 21 may set a limit value of the thrust detection value F1 when a specific condition is satisfied. Whether or not the moving body 1 has entered the turbulent airflow may be determined based on, for example, the detection result of the air flow sensor provided in the moving body 1. The air flow sensor detects the wind speed and the wind direction around the moving body 1.
  • the motor control unit 21 may further control the motor 3 based on the output of the gyro sensor of the motion detection unit 9. For example, the motor control unit 21 determines the magnitude of the posture disturbance of the moving body 1 based on the torque detection value T1. When the motor control unit 21 determines that the magnitude of the posture disturbance of the moving body 1 exceeds a predetermined value based on the torque detection value T1, the motor control unit 21 first controls the motor 3 based on the torque detection value T1. After that, when a predetermined time elapses, the motor control unit 21 controls the motor 3 based on the output of the gyro sensor among the torque detection value T1 and the gyro sensor.
  • the motor control unit 21 when the motor control unit 21 detects the disorder of the posture of the moving body 1 based on the torque detection value T1, the motor control unit 21 first corrects the posture based on the torque detection value T1. After that, after the timing when the posture disorder is reflected in the output of the gyro sensor, the motor control unit 21 corrects the posture based on the output of the gyro sensor. Thereby, the accuracy of control for the motor 3 can be improved.
  • the motor control device (2, 2A) includes an acquisition unit (26) and a motor control unit (21, 21A).
  • the acquisition unit (26) acquires a torque detection value (T1) corresponding to the torque generated between the propeller (4) and the motor (3) that rotates the propeller (4).
  • the motor control units (21, 21A) control the motor (3) based on the torque detection value (T1) acquired by the acquisition unit (26).
  • the control of the motor (3) can be changed based on the changed torque detection value (T1). Therefore, the responsiveness of the control of the motor (3) can be improved as compared with the case where the motor (3) is controlled based on the detection result of the posture and speed of the moving body (1).
  • the motor control unit (21, 21A) has a thrust detection value (F1) corresponding to the thrust generated by the propeller (4). ) Further, the motor (3) is controlled.
  • the accuracy of control of the motor (3) is improved as compared with the case where the motor control units (21, 21A) control the motor (3) based only on the torque detection value (T1). be able to.
  • the motor control unit (21, 21A) performs current control.
  • the motor control units (21, 21A) control the current flowing through the motor (3) based on the current flowing through the motor (3).
  • the accuracy of control of the motor (3) is improved as compared with the case where the motor control units (21, 21A) control the motor (3) based only on the torque detection value (T1). be able to.
  • the motor control unit (21, 21A) performs voltage control.
  • the motor control units (21, 21A) control the voltage applied to the motor (3) based on the voltage applied to the motor (3).
  • the accuracy of control of the motor (3) is improved as compared with the case where the motor control units (21, 21A) control the motor (3) based only on the torque detection value (T1). be able to.
  • the motor control unit (21A) controls the rotation speed in any one of the first to fourth aspects.
  • the motor control unit (21A) controls the current flowing through the motor (3) based on the rotation speed of the motor (3).
  • the accuracy of control of the motor (3) can be improved as compared with the case where the motor control unit (21A) controls the motor (3) based only on the torque detection value (T1). it can.
  • the motor control unit (21, 21A) has a torque detection value (T1) as a torque target. Feedback control is performed so as to approach the value (Tr1).
  • the motor control device (2, 2A) according to the seventh aspect further includes an output unit (29) in any one of the first to sixth aspects.
  • the output unit (29) outputs the torque detection value (T1).
  • the torque detection value (T1) can be used outside the motor control device (2, 2A).
  • an external device of the motor control device (2, 2A) can determine the operating state of the motor (3) by monitoring the torque detection value (T1) output from the output unit (29). ..
  • the motor control device (2, 2A) according to the eighth aspect further includes a control output unit (22) in any one of the first to seventh aspects.
  • the control output unit (22) outputs information regarding the control content of the motor (3) by the motor control unit (21, 21A).
  • the user or the like can grasp the control content of the motor (3).
  • the acquisition unit (26) torques based on the current flowing through the motor (3).
  • the detected value (T1) is calculated.
  • Configurations other than the first aspect are not essential configurations for the motor control device (2, 2A) and can be omitted as appropriate.
  • the moving body (1) includes a motor control device (2, 2A), a motor (3), a propeller (4), and the propeller (4) according to any one of the first to ninth aspects. It includes a moving body main body (5).
  • a motor (3), a propeller (4), and a motor control device (2, 2A) are mounted on the mobile body (5).
  • the responsiveness of the control of the motor (3) can be improved.
  • the moving body (1) according to the eleventh aspect includes three or more motors (3) and propellers (4) in the tenth aspect.
  • the responsiveness of the control of the motor (3) can be improved.
  • program according to the thirteenth aspect is a program for causing one or more processors to execute the motor control method according to the twelfth aspect.
  • various configurations (including modifications) of the motor control device (2, 2A) and the moving body (1) according to the embodiment can be embodied by a motor control method and a program.

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

This motor control device is provided with an acquiring unit and a motor control unit. The acquiring unit acquires a torque detection value corresponding to the torque generated between a propeller and a motor rotating the propeller. The motor control unit controls the motor on the basis of the torque detection value acquired by the acquiring unit.

Description

モータ制御装置、移動体、モータ制御方法及びプログラムMotor control device, moving body, motor control method and program
 本開示は一般にモータ制御装置、移動体、モータ制御方法及びプログラムに関する。本開示は、より詳細には、プロペラを回転させるモータを制御するモータ制御装置、このモータ制御装置を備える移動体、モータ制御方法及びプログラムに関する。 The present disclosure generally relates to motor control devices, moving bodies, motor control methods and programs. More specifically, the present disclosure relates to a motor control device that controls a motor that rotates a propeller, a moving body including the motor control device, a motor control method, and a program.
 従来、ドローン等の移動体が備えているモータを制御する技術が知られている(例えば、特許文献1を参照)。特許文献1に記載の無人機(移動体)は、姿勢制御ループを有している。姿勢制御ループは、角速度制御ループを含んでいる。角速度制御ループは、PI(Proportion Integral)補正器を使用して、無人機の角速度設定点を計算する。角速度制御ループは、角速度設定点と、ジャイロメータによって有効に測定された角速度との間の差を計算する。この情報に基づいて、モータの回転速度について(したがって、揚力について)種々の設定点を計算し、その設定点は、無人機の運動操作を実行するために、モータに送信される。 Conventionally, a technique for controlling a motor included in a moving body such as a drone is known (see, for example, Patent Document 1). The unmanned aerial vehicle (moving body) described in Patent Document 1 has an attitude control loop. The attitude control loop includes an angular velocity control loop. The angular velocity control loop uses a PI (Proportion Integral) corrector to calculate the angular velocity setting point of the unmanned aerial vehicle. The angular velocity control loop calculates the difference between the angular velocity set point and the angular velocity effectively measured by the gyrometer. Based on this information, various set points are calculated for the rotational speed of the motor (and therefore for lift), and the set points are sent to the motor to perform the motion operation of the drone.
 特許文献1記載の無人機(移動体)では、無人機の姿勢を修正するためにモータの制御の補正を行うためには、まず、無人機の姿勢が変動してから、無人機の姿勢の変動をジャイロメータにより測定することを要するため、モータの制御の応答性に課題があった。 In the unmanned aerial vehicle (moving body) described in Patent Document 1, in order to correct the control of the motor in order to correct the posture of the unmanned aerial vehicle, first, the posture of the unmanned aerial vehicle changes, and then the posture of the unmanned aerial vehicle is changed. Since it is necessary to measure the fluctuation with a gyrometer, there is a problem in the responsiveness of the motor control.
特表2015-514263号公報Special Table 2015-514263
 本開示は、モータの制御の応答性を改善させることができるモータ制御装置、移動体、モータ制御方法及びプログラムを提供することを目的とする。 It is an object of the present disclosure to provide a motor control device, a moving body, a motor control method and a program capable of improving the responsiveness of motor control.
 本開示の一態様に係るモータ制御装置は、取得部と、モータ制御部と、を備える。取得部は、プロペラとプロペラを回転させるモータとの間で発生するトルクに相当するトルク検出値を取得する。モータ制御部は、トルク検出値に基づいて、モータを制御する。 The motor control device according to one aspect of the present disclosure includes an acquisition unit and a motor control unit. The acquisition unit acquires a torque detection value corresponding to the torque generated between the propeller and the motor that rotates the propeller. The motor control unit controls the motor based on the torque detection value.
 本開示の一態様に係る移動体は、モータ制御装置と、モータと、プロペラと、移動体本体と、を備える。移動体本体には、モータ、プロペラ及びモータ制御装置が搭載される。 The moving body according to one aspect of the present disclosure includes a motor control device, a motor, a propeller, and a moving body main body. A motor, a propeller, and a motor control device are mounted on the main body of the moving body.
 本開示の一態様に係るモータ制御方法は、プロペラとプロペラを回転させるモータとの間で発生するトルクに相当するトルク検出値を取得する第1のステップと、第1のステップで取得したトルク検出値に基づいて、モータを制御する第2のステップと、を備える。 The motor control method according to one aspect of the present disclosure includes a first step of acquiring a torque detection value corresponding to a torque generated between a propeller and a motor that rotates the propeller, and a torque detection acquired in the first step. It comprises a second step of controlling the motor based on the value.
 本開示の一態様に係るプログラムは、モータ制御方法を、1以上のプロセッサに実行させるためのプログラムである。 The program according to one aspect of the present disclosure is a program for causing one or more processors to execute the motor control method.
 本開示は、モータの制御の応答性を改善させることができるという利点がある。 The present disclosure has an advantage that the responsiveness of motor control can be improved.
図1は、実施形態に係る移動体のモータ制御装置のブロック図である。FIG. 1 is a block diagram of a mobile motor control device according to an embodiment. 図2は、同上の移動体のブロック図である。FIG. 2 is a block diagram of the same moving body. 図3は、同上の移動体の概略形状を示す斜視図である。FIG. 3 is a perspective view showing a schematic shape of the moving body as described above. 図4は、同上の移動体の動作例を示すフローチャートである。FIG. 4 is a flowchart showing an operation example of the moving body as described above. 図5は、変形例1に係る移動体のモータ制御装置のブロック図である。FIG. 5 is a block diagram of the motor control device of the moving body according to the first modification.
 以下、実施形態に係るモータ制御装置2、移動体1、モータ制御方法及びプログラムについて、図面を用いて説明する。ただし、下記の実施形態は、本開示の様々な実施形態の1つに過ぎない。下記の実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、下記の実施形態において説明する図3は、模式的な図であり、図中の各構成要素の大きさ及び厚さそれぞれの比が必ずしも実際の寸法比を反映しているとは限らない。 Hereinafter, the motor control device 2, the moving body 1, the motor control method, and the program according to the embodiment will be described with reference to the drawings. However, the following embodiments are only one of the various embodiments of the present disclosure. The following embodiments can be variously modified according to the design and the like as long as the object of the present disclosure can be achieved. Further, FIG. 3 described in the following embodiment is a schematic view, and the ratio of the size and the thickness of each component in the figure does not necessarily reflect the actual dimensional ratio. ..
 (1)概要
 図1は、実施形態に係る移動体のモータ制御装置2のブロック図である。図2は、同上の移動体1のブロック図である。図2に示すように、移動体1は、複数(図2では4つ)のモータ制御装置2と、複数(図2では4つ)のモータ3と、複数(図2では4つ)のプロペラ4(回転翼)と、移動体本体5と、を備えている。移動体1は、3つ以上のモータ3及び3つ以上のプロペラ4を備えている。複数のモータ3、複数のプロペラ4及び複数のモータ制御装置2は、移動体本体5に搭載されている。
(1) Outline FIG. 1 is a block diagram of a mobile motor control device 2 according to an embodiment. FIG. 2 is a block diagram of the mobile body 1 of the same. As shown in FIG. 2, the moving body 1 includes a plurality of motor control devices 2 (4 in FIG. 2), a plurality of motors 3 (4 in FIG. 2), and a plurality of propellers (4 in FIG. 2). 4 (rotor blade) and a moving body main body 5 are provided. The moving body 1 includes three or more motors 3 and three or more propellers 4. The plurality of motors 3, the plurality of propellers 4, and the plurality of motor control devices 2 are mounted on the moving body main body 5.
 複数のモータ3と複数のプロペラ4とは、一対一で対応している。各プロペラ4は、対応するモータ3から与えられる力により回転する。これにより、各モータ3と対応するプロペラ4との間で、トルクが発生する。各プロペラ4が対応するモータ3により回転させられることで、移動体1を移動させる推力が発生する。 The plurality of motors 3 and the plurality of propellers 4 have a one-to-one correspondence. Each propeller 4 is rotated by a force applied from the corresponding motor 3. As a result, torque is generated between each motor 3 and the corresponding propeller 4. When each propeller 4 is rotated by the corresponding motor 3, a thrust for moving the moving body 1 is generated.
 複数のモータ制御装置2と複数のモータ3とは、一対一で対応している。各モータ制御装置2は、対応するモータ3を制御する。 The plurality of motor control devices 2 and the plurality of motors 3 have a one-to-one correspondence. Each motor control device 2 controls the corresponding motor 3.
 図1に示すように、各モータ制御装置2は、モータ制御部21と、電流センサ25と、取得部26と、を備えている。 As shown in FIG. 1, each motor control device 2 includes a motor control unit 21, a current sensor 25, and an acquisition unit 26.
 各モータ制御装置2において、電流センサ25は、モータ3に流れる電流を測定する。取得部26は、電流センサ25で測定された電流に基づいて、モータ3に流れるトルク電流の検出値であるトルク検出値T1を算出する。トルク検出値T1は、プロペラ4とモータ3との間で発生するトルクに相当する値である。各モータ制御装置2において個別に、取得部26がトルク検出値T1を算出する。 In each motor control device 2, the current sensor 25 measures the current flowing through the motor 3. The acquisition unit 26 calculates the torque detection value T1 which is the detection value of the torque current flowing through the motor 3 based on the current measured by the current sensor 25. The torque detection value T1 is a value corresponding to the torque generated between the propeller 4 and the motor 3. The acquisition unit 26 calculates the torque detection value T1 individually in each motor control device 2.
 モータ制御部21は、取得部26で取得されたトルク検出値T1に基づいて、モータ3を制御する。 The motor control unit 21 controls the motor 3 based on the torque detection value T1 acquired by the acquisition unit 26.
 モータ制御装置2では、プロペラ4とモータ3との間で発生するトルクの変化後であれば、トルクの変化の結果として移動体1の姿勢及び速度等が変化する前であっても、変化したトルク検出値T1に基づいてモータ3の制御を変更することができる。そのため、移動体1の姿勢及び速度等の検出結果に基づいてモータ3の制御を行う場合と比較して、モータ3の制御の応答性を改善させることができる。例えば、移動体1の姿勢が崩れ始めた場合に、姿勢の崩れが大きくなる前に、変化したトルク検出値T1に基づいてモータ3を制御することで、姿勢を補正することができる。 In the motor control device 2, after the change in torque generated between the propeller 4 and the motor 3, the change occurs even before the posture, speed, etc. of the moving body 1 change as a result of the change in torque. The control of the motor 3 can be changed based on the torque detection value T1. Therefore, the responsiveness of the control of the motor 3 can be improved as compared with the case where the motor 3 is controlled based on the detection result of the posture and speed of the moving body 1. For example, when the posture of the moving body 1 starts to collapse, the posture can be corrected by controlling the motor 3 based on the changed torque detection value T1 before the posture collapse becomes large.
 (2)構成
 以下、本実施形態の移動体1及びモータ制御装置2について、より詳細に説明する。図3は、実施形態に係る移動体1の概略形状を示す斜視図である。本実施形態では、移動体1(図3を参照)がドローン(空中ドローン)である場合を代表例として説明する。ドローンは、無人航空機の一種である。ドローンは、3つ以上のプロペラ4を有したマルチコプターの一種である。ドローンは、自律的に飛行する機能を有している。ドローンは、3つ以上のプロペラ4の各々の回転数を制御することで、機体(移動体本体5)の姿勢を制御する。機体の姿勢の変化に応じて、機体の移動方向が変化する。
(2) Configuration Hereinafter, the moving body 1 and the motor control device 2 of the present embodiment will be described in more detail. FIG. 3 is a perspective view showing a schematic shape of the moving body 1 according to the embodiment. In the present embodiment, a case where the moving body 1 (see FIG. 3) is a drone (aerial drone) will be described as a typical example. Drones are a type of unmanned aerial vehicle. A drone is a type of multicopter with three or more propellers 4. The drone has the function of flying autonomously. The drone controls the posture of the aircraft (moving body body 5) by controlling the rotation speed of each of the three or more propellers 4. The moving direction of the aircraft changes according to the change in the attitude of the aircraft.
 図3では、移動体本体5のロール軸、ピッチ軸及びヨー軸を、X軸、Y軸及びZ軸として図示している。図3に示すように、移動体本体5には、4つのプロペラ4が取り付けられている。より詳細には、移動体本体5は、4方に延びる4つのアーム51を有している。移動体本体5には、各アーム51の先端にプロペラ4が取り付けられている。以下では、4つのプロペラ4を区別するために、4つのプロペラ4をそれぞれプロペラ41、42、43、44と称することがある。4つのプロペラ41~44は、移動体本体5を囲む周方向において(ヨー軸(Z軸)の周りに)この順に並んでいる。 In FIG. 3, the roll axis, pitch axis, and yaw axis of the moving body body 5 are illustrated as X-axis, Y-axis, and Z-axis. As shown in FIG. 3, four propellers 4 are attached to the moving body main body 5. More specifically, the mobile body 5 has four arms 51 extending in four directions. A propeller 4 is attached to the tip of each arm 51 of the moving body body 5. In the following, in order to distinguish the four propellers 4, the four propellers 4 may be referred to as propellers 41, 42, 43, 44, respectively. The four propellers 41 to 44 are arranged in this order (around the yaw axis (Z axis)) in the circumferential direction surrounding the moving body body 5.
 4つのプロペラ4のうち2つのプロペラ41、43は、第1の向きに回転し、残りの2つのプロペラ42、44は、第1の向きとは反対向きの第2の向きに回転する。互いに対角に位置する2つのプロペラ4は、同じ向きに回転する。 Of the four propellers 4, two propellers 41 and 43 rotate in the first direction, and the remaining two propellers 42 and 44 rotate in the second direction opposite to the first direction. The two propellers 4 located diagonally to each other rotate in the same direction.
 4つのプロペラ4の各々が、対応するモータ3の駆動力により回転し、推力を発生させる。図3では、各プロペラ4の推力を表す矢印f1~f4と、移動体本体5の推力を表す矢印f5と、を図示している。各プロペラ4の推力の方向は、ヨー軸方向(上向き)である。4つのプロペラ4において、推力は互いに異なり得る。 Each of the four propellers 4 rotates by the driving force of the corresponding motor 3 to generate thrust. In FIG. 3, arrows f1 to f4 indicating the thrust of each propeller 4 and arrows f5 indicating the thrust of the moving body 5 are shown. The direction of thrust of each propeller 4 is the yaw axis direction (upward). In the four propellers 4, the thrusts can be different from each other.
 4つのプロペラ4の各々では、回転数が大きいほど、推力が大きい。4つのプロペラ4の各々の推力に応じて、移動体本体5の推力及び姿勢が変化する。例えば、移動体1の前半分(X軸の正の側)に設けられた2つのプロペラ41、42の回転数を、移動体1の後ろ半分に設けられた2つのプロペラ43、44の回転数よりも小さくすることで、移動体1が前傾するので、移動体1に上向き前寄りの推力が発生して移動体1が前進する。 In each of the four propellers 4, the higher the number of revolutions, the greater the thrust. The thrust and posture of the moving body 5 change according to the thrust of each of the four propellers 4. For example, the rotation speeds of the two propellers 41 and 42 provided on the front half of the moving body 1 (on the positive side of the X-axis) are the rotation speeds of the two propellers 43 and 44 provided on the rear half of the moving body 1. By making the size smaller than the above, the moving body 1 tilts forward, so that an upward and forward thrust is generated on the moving body 1 and the moving body 1 moves forward.
 4つのプロペラ4から移動体本体5に作用するトルクも、4つのプロペラ4のそれぞれの回転数により決まる。例えば、互いに対角に位置する2つのプロペラ41、43の回転数を、残りの2つのプロペラ42、44の回転数よりも小さく又は大きくしたとする。すると、2つのプロペラ41、43のトルクと2つのプロペラ42、44のトルクとの差分に相当するトルクが移動体本体5に作用するので、移動体本体5がヨー軸(Z軸)を中心に回転する。 The torque acting on the moving body body 5 from the four propellers 4 is also determined by the rotation speed of each of the four propellers 4. For example, suppose that the rotation speeds of the two propellers 41 and 43 located diagonally to each other are made smaller or larger than the rotation speeds of the remaining two propellers 42 and 44. Then, a torque corresponding to the difference between the torques of the two propellers 41 and 43 and the torques of the two propellers 42 and 44 acts on the moving body body 5, so that the moving body body 5 is centered on the yaw axis (Z axis). Rotate.
 図2に示すように、移動体1は、上位部6と、中位部7と、4つのモータ制御装置2と、4つのモータ3と、4つのプロペラ4と、移動体本体5と、運動検出部9と、を備えている。各モータ3は、例えばブラシレスモータである。移動体1は、例えば、1以上のプロセッサ及びメモリを有するコンピュータシステムを含んでいる。コンピュータシステムのメモリに記録されたプログラムを、コンピュータシステムのプロセッサが実行することにより、上位部6、中位部7及びモータ制御装置2の少なくとも一部の機能が実現される。プログラムは、メモリに記録されていてもよいし、インターネット等の電気通信回線を通して提供されてもよいし、メモリカード等の非一時的記録媒体に記録されて提供されてもよい。 As shown in FIG. 2, the moving body 1 includes an upper portion 6, a middle portion 7, four motor control devices 2, four motors 3, four propellers 4, a moving body main body 5, and motion. It includes a detection unit 9. Each motor 3 is, for example, a brushless motor. The mobile 1 includes, for example, a computer system having one or more processors and memory. When the processor of the computer system executes the program recorded in the memory of the computer system, at least a part of the functions of the upper unit 6, the intermediate unit 7, and the motor control device 2 are realized. The program may be recorded in a memory, provided through a telecommunication line such as the Internet, or may be recorded and provided on a non-temporary recording medium such as a memory card.
 運動検出部9は、移動体1の運動に関する情報を検出する。運動検出部9の検出結果を示す検出信号は、上位部6及び中位部7に出力される。運動検出部9は、例えば、ジャイロセンサ、加速度センサ、地磁気センサ、GPS(Global Positioning System)センサ及び、気圧センサ等を含む。ジャイロセンサは、移動体1の姿勢(傾き)を検出する。加速度センサは、移動体1の加速度を検出する。地磁気センサは、移動体1の方位を検出する。GPSセンサは、移動体1の現在位置を検出する。気圧センサは、移動体1の現在位置の気圧を検出する。 The motion detection unit 9 detects information about the motion of the moving body 1. The detection signal indicating the detection result of the motion detection unit 9 is output to the upper unit 6 and the middle unit 7. The motion detection unit 9 includes, for example, a gyro sensor, an acceleration sensor, a geomagnetic sensor, a GPS (Global Positioning System) sensor, a pressure sensor, and the like. The gyro sensor detects the posture (tilt) of the moving body 1. The acceleration sensor detects the acceleration of the moving body 1. The geomagnetic sensor detects the orientation of the moving body 1. The GPS sensor detects the current position of the moving body 1. The barometric pressure sensor detects the barometric pressure at the current position of the moving body 1.
 運動検出部9は、ジャイロセンサ等の各種のセンサの出力に基づいて、移動体1の座標、速度、角度及び、角速度を算出する。 The motion detection unit 9 calculates the coordinates, velocity, angle, and angular velocity of the moving body 1 based on the outputs of various sensors such as a gyro sensor.
 運動検出部9で算出される移動体1の座標は、X座標、Y座標及びZ座標である。ここでは、移動体1が傾いておらず4つのプロペラ4の回転軸が鉛直方向に対して平行であるときのロール軸、ピッチ軸及びヨー軸の方向を、X、Y、Z軸方向とする。運動検出部9で算出される移動体1の速度は、X軸方向の速度及びY軸方向の速度である。 The coordinates of the moving body 1 calculated by the motion detection unit 9 are the X coordinate, the Y coordinate, and the Z coordinate. Here, the directions of the roll axis, pitch axis, and yaw axis when the moving body 1 is not tilted and the rotation axes of the four propellers 4 are parallel to the vertical direction are defined as the X, Y, and Z axis directions. .. The velocities of the moving body 1 calculated by the motion detection unit 9 are the velocities in the X-axis direction and the velocities in the Y-axis direction.
 運動検出部9で算出される移動体1の角度は、ロール軸、ピッチ軸、ヨー軸(X、Y、Z軸)周りの移動体1の回転位置である。運動検出部9で算出される移動体1の角速度は、ロール軸、ピッチ軸、ヨー軸周りの回転の角速度である。 The angle of the moving body 1 calculated by the motion detection unit 9 is the rotation position of the moving body 1 around the roll axis, the pitch axis, and the yaw axis (X, Y, Z axes). The angular velocity of the moving body 1 calculated by the motion detection unit 9 is the angular velocity of rotation around the roll axis, the pitch axis, and the yaw axis.
 上位部6は、4つのモータ3の制御に関する第1の指示信号を中位部7に送信する。第1の指示信号は、例えば、移動体本体5の位置(高度及び水平方向の座標)を指示する位置指示信号及び、移動体本体5の姿勢(角度)を指示する姿勢指示信号のうち、少なくとも一方を含む。例えば、移動体1が地上で停止しているとき、上位部6には、移動体1の目的地の座標の情報が、移動体1の外部の装置から、無線通信又は有線通信により入力される。また、例えば、移動体1の飛行中において、上位部6には、移動体1の目的地の座標の更新情報が、移動体1の外部の装置から、無線通信により入力される。上位部6は、移動体1の目的地の座標の情報と、運動検出部9のジャイロセンサ及びGPSセンサ等の検出信号とに基づいて、位置指示信号及び姿勢指示信号を生成する。これにより、上位部6は、移動体1を目的地に向かわせるように4つのモータ3を制御する。 The upper unit 6 transmits a first instruction signal regarding the control of the four motors 3 to the middle unit 7. The first instruction signal is, for example, at least one of a position instruction signal for instructing the position (altitude and horizontal coordinates) of the mobile body 5 and an attitude instruction signal for instructing the posture (angle) of the mobile body 5. Including one. For example, when the mobile body 1 is stopped on the ground, information on the coordinates of the destination of the mobile body 1 is input to the upper unit 6 by wireless communication or wired communication from an external device of the mobile body 1. .. Further, for example, during the flight of the mobile body 1, the update information of the coordinates of the destination of the mobile body 1 is input to the upper unit 6 by wireless communication from an external device of the mobile body 1. The upper unit 6 generates a position instruction signal and an attitude instruction signal based on the information of the coordinates of the destination of the moving body 1 and the detection signals of the gyro sensor, the GPS sensor, and the like of the motion detection unit 9. As a result, the upper unit 6 controls the four motors 3 so as to direct the moving body 1 to the destination.
 中位部7は、上位部6から受信した第1の指示信号と、運動検出部9から受信した移動体1の運動に関する情報と、に基づいて、第2の指示信号を生成する。第2の指示信号は、例えば、4つのモータ3の各々のトルク目標値Tr1(又はTr2、Tr3、Tr4)及び推力目標値Fr1(又はFr2、Fr3、Fr4)を含む。中位部7は、4つの第2の指示信号を生成し、4つのモータ制御装置2に送信する。4つの第2の指示信号は、それぞれ異なり得る。つまり、中位部7は、4つのモータ制御装置2を介して、4つのモータ3にそれぞれ異なる指示を行い得る。これにより、4つのモータ3の各々の回転数を制御して、移動体1の姿勢、移動方向、移動速度及び加速度等を制御できる。 The middle unit 7 generates a second instruction signal based on the first instruction signal received from the upper unit 6 and the information about the motion of the moving body 1 received from the motion detection unit 9. The second instruction signal includes, for example, the torque target values Tr1 (or Tr2, Tr3, Tr4) and the thrust target values Fr1 (or Fr2, Fr3, Fr4) of each of the four motors 3. The middle unit 7 generates four second instruction signals and transmits them to the four motor control devices 2. The four second instruction signals can be different from each other. That is, the intermediate portion 7 can give different instructions to the four motors 3 via the four motor control devices 2. Thereby, the posture, the moving direction, the moving speed, the acceleration, and the like of the moving body 1 can be controlled by controlling the rotation speed of each of the four motors 3.
 移動体本体5に掛かる力に関するパラメータとしては、ヨー軸(Z軸)方向の加速度と、ロール軸周りの角速度と、ピッチ軸周りの角速度と、ヨー軸周りの角速度と、がある。ヨー軸方向の加速度は、運動検出部9の加速度センサにより検出される。ロール軸周りの角速度、ピッチ軸周りの角速度及びヨー軸周りの角速度は、運動検出部9のジャイロセンサにより検出される。中位部7は、これら4つのパラメータの各々の目標値を、上位部6から送信される第1の指示信号に基づいて算出し、これら4つのパラメータがそれぞれ目標値に近づくようにフィードバック制御する。 Parameters related to the force applied to the moving body body 5 include acceleration in the yaw axis (Z axis) direction, angular velocity around the roll axis, angular velocity around the pitch axis, and angular velocity around the yaw axis. The acceleration in the yaw axis direction is detected by the acceleration sensor of the motion detection unit 9. The angular velocity around the roll axis, the angular velocity around the pitch axis, and the angular velocity around the yaw axis are detected by the gyro sensor of the motion detection unit 9. The middle unit 7 calculates the target value of each of these four parameters based on the first instruction signal transmitted from the upper unit 6, and feedback-controls the four parameters so that each of the four parameters approaches the target value. ..
 中位部7は、高度制御器71と、位置制御器72、73と、速度制御器74、75と、角度制御器76、77、78と、角速度制御器79、80、81と、を有している。これらは、それぞれ、フィードバック制御を行う。中位部7は、指示部82を更に有している。 The middle portion 7 has an altitude controller 71, a position controller 72, 73, a speed controller 74, 75, an angle controller 76, 77, 78, and an angular velocity controller 79, 80, 81. doing. Each of these performs feedback control. The middle portion 7 further has an indicator portion 82.
 高度制御器71には、上位部6からの第1の指示信号として、移動体1のZ座標(高度)の目標値(図2では、Zrと表記)を含む信号が入力される。高度制御器71には、運動検出部9で算出された移動体1のZ座標(図2では、Zと表記)の算出値が入力される。高度制御器71は、Z座標の目標値と算出値との差分が所定範囲内に収束するように、4つのモータ3のトルクの合算の目標値Trを定める。目標値Trは、ベクトル量である。 A signal including a target value (denoted as Zr in FIG. 2) of the Z coordinate (altitude) of the moving body 1 is input to the altitude controller 71 as the first instruction signal from the upper unit 6. The calculated value of the Z coordinate (denoted as Z in FIG. 2) of the moving body 1 calculated by the motion detection unit 9 is input to the altitude controller 71. The altitude controller 71 determines the total target value Tr of the torques of the four motors 3 so that the difference between the target value of the Z coordinate and the calculated value converges within a predetermined range. The target value Tr is a vector quantity.
 位置制御器72には、上位部6からの第1の指示信号として、移動体1のX座標の目標値(図2では、Xrと表記)を含む信号が入力される。位置制御器72には、運動検出部9で算出された移動体1のX座標(図2では、Xと表記)の算出値が入力される。位置制御器72は、X座標の目標値と算出値との差分が所定範囲内に収束するように、X軸方向の速度の目標値Vxrを定める。 A signal including the target value of the X coordinate of the moving body 1 (denoted as Xr in FIG. 2) is input to the position controller 72 as the first instruction signal from the upper unit 6. The calculated value of the X coordinate (denoted as X in FIG. 2) of the moving body 1 calculated by the motion detection unit 9 is input to the position controller 72. The position controller 72 determines the target value Vxr of the velocity in the X-axis direction so that the difference between the target value of the X coordinate and the calculated value converges within a predetermined range.
 位置制御器73には、上位部6からの第1の指示信号として、移動体1のY座標の目標値(図2では、Yrと表記)を含む信号が入力される。位置制御器73には、運動検出部9で算出された移動体1のY座標(図2では、Yと表記)の算出値が入力される。位置制御器72は、Y座標の目標値と算出値との差分が所定範囲内に収束するように、Y軸方向の速度の目標値Vyrを定める。 A signal including a target value of the Y coordinate of the moving body 1 (denoted as Yr in FIG. 2) is input to the position controller 73 as the first instruction signal from the upper unit 6. The calculated value of the Y coordinate (denoted as Y in FIG. 2) of the moving body 1 calculated by the motion detection unit 9 is input to the position controller 73. The position controller 72 determines the target value Vyr of the velocity in the Y-axis direction so that the difference between the target value of the Y coordinate and the calculated value converges within a predetermined range.
 速度制御器74には、位置制御器72で定められたX軸方向の速度の目標値Vxrと、運動検出部9で算出されたX軸方向の速度の算出値Vxと、が入力される。速度制御器74は、目標値Vxrと算出値Vxとの差分が所定範囲内に収束するように、Y軸周りの角度の目標値θrを定める。移動体本体5がY軸周りに回転することで、X軸方向の移動体本体5の速度が調整される。 In the speed controller 74, the target value Vxr of the velocity in the X-axis direction defined by the position controller 72 and the calculated value Vx of the velocity in the X-axis direction calculated by the motion detection unit 9 are input. The speed controller 74 determines the target value θr of the angle around the Y axis so that the difference between the target value Vxr and the calculated value Vx converges within a predetermined range. By rotating the moving body main body 5 around the Y axis, the speed of the moving body main body 5 in the X-axis direction is adjusted.
 速度制御器75には、位置制御器73で定められたY軸方向の速度の目標値Vyrと、運動検出部9で算出されたY軸方向の速度の算出値Vyと、が入力される。速度制御器75は、目標値Vyrと算出値Vyとの差分が所定範囲内に収束するように、X軸周りの角度の目標値φrを定める。移動体本体5がX軸周りに回転することで、Y軸方向の移動体本体5の速度が調整される。 The target value Vyr of the velocity in the Y-axis direction defined by the position controller 73 and the calculated value Vy of the velocity in the Y-axis direction calculated by the motion detection unit 9 are input to the speed controller 75. The speed controller 75 determines the target value φr of the angle around the X axis so that the difference between the target value Vyr and the calculated value Vy converges within a predetermined range. By rotating the moving body main body 5 around the X axis, the speed of the moving body main body 5 in the Y axis direction is adjusted.
 角度制御器76には、速度制御器74で定められたY軸周りの角度の目標値θrと、運動検出部9で算出されたY軸周りの角度の算出値(図2では、θと表記)と、が入力される。角度制御器76は、目標値θrと算出値θとの差分が所定範囲内に収束するように、Y軸周りの回転の角速度の目標値ωθrを定める。 The angle controller 76 has a target value θr of the angle around the Y axis defined by the speed controller 74 and a calculated value of the angle around the Y axis calculated by the motion detection unit 9 (denoted as θ in FIG. 2). ) And is entered. The angle controller 76 determines the target value ωθr of the angular velocity of rotation around the Y axis so that the difference between the target value θr and the calculated value θ converges within a predetermined range.
 角度制御器77には、速度制御器75で定められたX軸周りの角度の目標値φrと、運動検出部9で算出されたX軸周りの角度の算出値(図2では、φと表記)と、が入力される。角度制御器77は、目標値φrと算出値φとの差分が所定範囲内に収束するように、X軸周りの回転の角速度の目標値ωφrを定める。 The angle controller 77 has a target value φr of the angle around the X axis defined by the speed controller 75 and a calculated value of the angle around the X axis calculated by the motion detection unit 9 (denoted as φ in FIG. 2). ) And is entered. The angle controller 77 determines the target value ωφr of the angular velocity of rotation around the X axis so that the difference between the target value φr and the calculated value φ converges within a predetermined range.
 角度制御器78には、上位部6からの第1の指示信号として、Z軸周りの角度の目標値(図2では、ψrと表記)を含む信号が入力される。角度制御器78には、運動検出部9で算出されたZ軸周りの角度の算出値(図2では、ψと表記)が入力される。角度制御器78は、目標値ψrと算出値ψとの差分が所定範囲内に収束するように、Z軸周りの回転の角速度の目標値ωψrを定める。 A signal including a target value of an angle around the Z axis (denoted as ψr in FIG. 2) is input to the angle controller 78 as the first instruction signal from the upper unit 6. The calculated value of the angle around the Z axis (denoted as ψ in FIG. 2) calculated by the motion detection unit 9 is input to the angle controller 78. The angle controller 78 determines the target value ωψr of the angular velocity of rotation around the Z axis so that the difference between the target value ψr and the calculated value ψ converges within a predetermined range.
 角速度制御器79には、角度制御器76で定められたY軸周りの回転の角速度の目標値ωθrと、運動検出部9で算出されたY軸周りの回転の角速度の算出値ωθと、が入力される。角速度制御器79は、目標値ωθrと算出値ωθとの差分が所定範囲内に収束するように、Y軸周りの回転の角加速度の目標値τθrを定める。 The angular velocity controller 79 has a target value ωθr of the angular velocity of rotation around the Y-axis defined by the angle controller 76 and a calculated value ωθ of the angular velocity of rotation around the Y-axis calculated by the motion detection unit 9. Entered. The angular velocity controller 79 determines the target value τθr of the angular acceleration of rotation around the Y axis so that the difference between the target value ωθr and the calculated value ωθr converges within a predetermined range.
 角速度制御器80には、角度制御器77で定められたX軸周りの回転の角速度の目標値ωφrと、運動検出部9で算出されたX軸周りの回転の角速度の算出値ωφと、が入力される。角速度制御器80は、目標値ωφrと算出値ωφとの差分が所定範囲内に収束するように、X軸周りの回転の角加速度の目標値τφrを定める。 The angular velocity controller 80 has a target value ωφr of the angular velocity of rotation around the X-axis defined by the angle controller 77 and a calculated value ωφ of the angular velocity of rotation around the X-axis calculated by the motion detection unit 9. Entered. The angular velocity controller 80 determines the target value τφr of the angular acceleration of rotation around the X axis so that the difference between the target value ωφr and the calculated value ωφ converges within a predetermined range.
 角速度制御器81には、角度制御器78で定められたZ軸周りの回転の角速度の目標値ωψrと、運動検出部9で算出されたZ軸周りの回転の角速度の算出値ωψと、が入力される。角速度制御器81は、目標値ωψrと算出値ωψとの差分が所定範囲内に収束するように、Z軸周りの回転の角加速度の目標値τψrを定める。 The angular velocity controller 81 has a target value ωψr of the angular velocity of rotation around the Z axis defined by the angle controller 78 and a calculated value ωψr of the angular velocity of rotation around the Z axis calculated by the motion detection unit 9. Entered. The angular velocity controller 81 determines the target value τψr of the angular acceleration of rotation around the Z axis so that the difference between the target value ωψr and the calculated value ωψr converges within a predetermined range.
 指示部82は、高度制御器71で定められた、4つのモータ3のトルクの合算の目標値Trと、角速度制御器79、80、81で定められた、X、Y、Z軸周りの回転の角加速度の目標値τφr、τθr、τψrと、に基づいて、4つのトルク目標値Tr1、Tr2、Tr3、Tr4及び4つの推力目標値Fr1、Fr2、Fr3、Fr4を生成する。4つのトルク目標値Tr1、Tr2、Tr3、Tr4及び4つの推力目標値Fr1、Fr2、Fr3、Fr4はそれぞれ、4つのモータ制御装置2と一対一で対応する。指示部82は、4つのモータ制御装置2にそれぞれ、対応するトルク目標値及び推力目標値を出力する。4つのモータ制御装置2においてそれぞれ、対応するトルク目標値及び推力目標値に基づいてモータ3の制御がされることで、目標値Tr、τφr、τθr、τψrに実測値が近づけられる。 The indicator 82 rotates around the X, Y, and Z axes defined by the angular velocity controllers 79, 80, and 81, and the target value Tr of the total torque of the four motors 3 defined by the altitude controller 71. Four torque target values Tr1, Tr2, Tr3, Tr4 and four thrust target values Fr1, Fr2, Fr3, and Fr4 are generated based on the target values τφr, τθr, and τψr of the angular acceleration of. The four torque target values Tr1, Tr2, Tr3, Tr4 and the four thrust target values Fr1, Fr2, Fr3, and Fr4 each correspond one-to-one with the four motor control devices 2. The indicator 82 outputs the corresponding torque target value and thrust target value to the four motor control devices 2, respectively. By controlling the motor 3 based on the corresponding torque target value and thrust target value in each of the four motor control devices 2, the measured values are brought closer to the target values Tr, τφr, τθr, and τψr.
 以下では、4つのモータ制御装置2のうちの1つに着目して説明する。図1に示すように、各モータ制御装置2は、モータ制御部21と、制御出力部22と、モータ回転測定部23と、電源回路24と、電流センサ25と、取得部26と、圧力センサ27と、推力算出部28と、出力部29と、を備えている。モータ制御装置2は、例えば、1以上のプロセッサ及びメモリを有するコンピュータシステムを含んでいる。コンピュータシステムのメモリに記録されたプログラムを、コンピュータシステムのプロセッサが実行することにより、モータ制御装置2の少なくとも一部の機能が実現される。プログラムは、メモリに記録されていてもよいし、インターネット等の電気通信回線を通して提供されてもよく、メモリカード等の非一時的記録媒体に記録されて提供されてもよい。 In the following, the description will focus on one of the four motor control devices 2. As shown in FIG. 1, each motor control device 2 includes a motor control unit 21, a control output unit 22, a motor rotation measurement unit 23, a power supply circuit 24, a current sensor 25, an acquisition unit 26, and a pressure sensor. 27, a thrust calculation unit 28, and an output unit 29 are provided. The motor control device 2 includes, for example, a computer system having one or more processors and memories. When the processor of the computer system executes the program recorded in the memory of the computer system, at least a part of the functions of the motor control device 2 are realized. The program may be recorded in a memory, provided through a telecommunication line such as the Internet, or may be recorded and provided on a non-temporary recording medium such as a memory card.
 モータ制御部21は、トルク制御器211と、推力制御器212と、電流制御器213と、を含む。 The motor control unit 21 includes a torque controller 211, a thrust controller 212, and a current controller 213.
 トルク制御器211には、中位部7の指示部82から、トルク目標値Tr1が入力される。トルク制御器211には、取得部26で算出された、モータ3のトルク検出値T1が入力される。 The torque target value Tr1 is input to the torque controller 211 from the indicator unit 82 of the intermediate unit 7. The torque detection value T1 of the motor 3 calculated by the acquisition unit 26 is input to the torque controller 211.
 推力制御器212には、中位部7の指示部82から、推力目標値Fr1が入力される。推力制御器212には、推力算出部28で算出された、モータ3の推力検出値F1が入力される。 The thrust target value Fr1 is input to the thrust controller 212 from the instruction unit 82 of the middle unit 7. The thrust detection value F1 of the motor 3 calculated by the thrust calculation unit 28 is input to the thrust controller 212.
 モータ制御部21は、トルク検出値T1に基づいて、モータ3に流れる電流を制御する。より詳細には、モータ制御部21は、トルク検出値T1がトルク目標値Tr1に近づくようにフィードバック制御する。すなわち、モータ制御部21は、トルク目標値Tr1とトルク検出値T1との差分が第1の所定範囲内に収束するように、モータ3に供給される電流の電流目標値Ir1を定める。 The motor control unit 21 controls the current flowing through the motor 3 based on the torque detection value T1. More specifically, the motor control unit 21 performs feedback control so that the torque detection value T1 approaches the torque target value Tr1. That is, the motor control unit 21 determines the current target value Ir1 of the current supplied to the motor 3 so that the difference between the torque target value Tr1 and the torque detection value T1 converges within the first predetermined range.
 モータ制御部21は、プロペラ4により発生する推力に相当する推力検出値F1に更に基づいて、モータ3を制御する。推力検出値F1は、推力算出部28で算出される値である。モータ制御部21は、推力検出値F1が推力目標値Fr1に近づくようにフィードバック制御する。すなわち、モータ制御部21は、推力目標値Fr1と推力検出値F1との差分が第2の所定範囲内に収束するように、電流目標値Ir1を定める。 The motor control unit 21 further controls the motor 3 based on the thrust detection value F1 corresponding to the thrust generated by the propeller 4. The thrust detection value F1 is a value calculated by the thrust calculation unit 28. The motor control unit 21 provides feedback control so that the thrust detection value F1 approaches the thrust target value Fr1. That is, the motor control unit 21 determines the current target value Ir1 so that the difference between the thrust target value Fr1 and the thrust detection value F1 converges within the second predetermined range.
 要するに、モータ制御部21は、トルク目標値Tr1とトルク検出値T1との差分が第1の所定範囲内に収束し、かつ、推力目標値Fr1と推力検出値F1との差分が第2の所定範囲内に収束するように、電流目標値Ir1を定める。第1の所定範囲は、例えば、トルク目標値Tr1の-3%~+3%の範囲である。第2の所定範囲は、例えば、推力目標値Fr1の-3%~+3%の範囲である。 In short, in the motor control unit 21, the difference between the torque target value Tr1 and the torque detection value T1 converges within the first predetermined range, and the difference between the thrust target value Fr1 and the thrust detection value F1 is the second predetermined difference. The current target value Ir1 is set so as to converge within the range. The first predetermined range is, for example, a range of -3% to + 3% of the torque target value Tr1. The second predetermined range is, for example, a range of -3% to + 3% of the thrust target value Fr1.
 より詳細には、モータ制御部21は、トルク制御器211と推力制御器212とを含むトルク・推力制御部210を有する。トルク制御器211は、トルク目標値Tr1とトルク検出値T1との差分を出力する。推力制御器212は、推力目標値Fr1と推力検出値F1との差分を出力する。トルク・推力制御部210は、トルク制御器211及び推力制御器212の出力に基づいて、電流目標値Ir1を定める。 More specifically, the motor control unit 21 has a torque / thrust control unit 210 including a torque controller 211 and a thrust controller 212. The torque controller 211 outputs the difference between the torque target value Tr1 and the torque detection value T1. The thrust controller 212 outputs the difference between the thrust target value Fr1 and the thrust detection value F1. The torque / thrust control unit 210 determines the current target value Ir1 based on the outputs of the torque controller 211 and the thrust controller 212.
 ここで、第1の所定範囲及び第2の所定範囲の各々の幅(上限値と下限値との差)を定めることによって、トルクと推力とがそれぞれ重み付けされる。トルクの重み付けが大きいほど、トルク(トルク検出値T1)がトルク目標値Tr1に近づく。推力の重み付けが大きいほど、推力(推力検出値F1)が推力目標値Fr1に近づく。第1の所定範囲の幅が小さいほど、推力の重み付けが大きく、移動体1の高度を精度良く制御できる。第2の所定範囲の幅が小さいほど、トルクの重み付けが大きく、移動体1の姿勢を精度良く制御できる。設計により、トルクと推力との重み付けが適宜定められる。 Here, the torque and the thrust are weighted by defining the widths (difference between the upper limit value and the lower limit value) of the first predetermined range and the second predetermined range, respectively. The larger the torque weighting, the closer the torque (torque detection value T1) approaches the torque target value Tr1. The greater the weighting of thrust, the closer the thrust (thrust detection value F1) approaches the thrust target value Fr1. The smaller the width of the first predetermined range, the larger the weighting of the thrust, and the more accurately the altitude of the moving body 1 can be controlled. The smaller the width of the second predetermined range, the larger the weighting of the torque, and the more accurately the posture of the moving body 1 can be controlled. Depending on the design, the weighting of torque and thrust is appropriately determined.
 電流制御器213には、トルク・推力制御部210で定められた電流目標値Ir1と、電流センサ25で測定されたモータ3に流れる電流の測定値I1と、が入力される。電流制御器213(モータ制御部21)は、モータ3に流れる電流(測定値I1)に基づいて、モータ3に流れる電流を制御する電流制御を行う。より詳細には、電流制御器213は、電流目標値Ir1と測定値I1との差分が所定範囲内に収束するように、モータ3に供給する電流を制御する。すなわち、電流制御器213は、測定値I1が電流目標値Ir1に近づくようにフィードバック制御する。 The current target value Ir1 defined by the torque / thrust control unit 210 and the measured value I1 of the current flowing through the motor 3 measured by the current sensor 25 are input to the current controller 213. The current controller 213 (motor control unit 21) performs current control for controlling the current flowing through the motor 3 based on the current flowing through the motor 3 (measured value I1). More specifically, the current controller 213 controls the current supplied to the motor 3 so that the difference between the current target value Ir1 and the measured value I1 converges within a predetermined range. That is, the current controller 213 feedback-controls so that the measured value I1 approaches the current target value Ir1.
 電源回路24は、例えば、スイッチング素子を含むスイッチング電源回路である。電源回路24は、モータ3に電流を流す。モータ制御装置2は、電源回路24からモータ3に流す電流を制御することにより、モータ3を制御する。モータ3に流す電流を制御する手法としては、例えば、PWM(Pulse Width Modulation)制御が採用される。すなわち、電流制御器213は、電流目標値Ir1と測定値I1とに基づいて生成したPWM信号P1により、電源回路24のスイッチング素子の動作を制御する。これにより、電流制御器213は、モータ3に流す電流を制御する。 The power supply circuit 24 is, for example, a switching power supply circuit including a switching element. The power supply circuit 24 passes a current through the motor 3. The motor control device 2 controls the motor 3 by controlling the current flowing from the power supply circuit 24 to the motor 3. As a method of controlling the current flowing through the motor 3, for example, PWM (Pulse Width Modulation) control is adopted. That is, the current controller 213 controls the operation of the switching element of the power supply circuit 24 by the PWM signal P1 generated based on the current target value Ir1 and the measured value I1. As a result, the current controller 213 controls the current flowing through the motor 3.
 プロペラ4とモータ3との間で発生するトルクと、プロペラ4により発生する推力と、モータ3の回転数との間には、相関がある。なお、トルク、推力及び回転数の相関は、移動体1の周囲の風の影響により変化する。プロペラ4とモータ3との間で発生するトルクは、例えば、モータ3の回転数の2乗に比例する。プロペラ4により発生する推力は、例えば、モータ3の回転数の2乗に比例する。モータ制御装置2では、トルク及び推力に関するフィードバック制御を行うことで、モータ3の回転数を制御する。 There is a correlation between the torque generated between the propeller 4 and the motor 3, the thrust generated by the propeller 4, and the rotation speed of the motor 3. The correlation between torque, thrust, and rotation speed changes due to the influence of the wind around the moving body 1. The torque generated between the propeller 4 and the motor 3 is, for example, proportional to the square of the rotation speed of the motor 3. The thrust generated by the propeller 4 is, for example, proportional to the square of the rotation speed of the motor 3. The motor control device 2 controls the rotation speed of the motor 3 by performing feedback control regarding torque and thrust.
 モータ回転測定部23、電流センサ25及び圧力センサ27は、モータ3に関する情報を取得する。 The motor rotation measuring unit 23, the current sensor 25, and the pressure sensor 27 acquire information about the motor 3.
 モータ回転測定部23は、モータ3の回転角A1を測定する。モータ回転測定部23は、例えば、光電式エンコーダ又は磁気式エンコーダを含む。 The motor rotation measuring unit 23 measures the rotation angle A1 of the motor 3. The motor rotation measuring unit 23 includes, for example, a photoelectric encoder or a magnetic encoder.
 電流センサ25は、モータ3に流れる電流を測定する。より詳細には、モータ3には、電源回路24から3相電流(U相電流、V相電流及びW相電流)が供給される。電流センサ25は、少なくとも2相の電流を測定する。 The current sensor 25 measures the current flowing through the motor 3. More specifically, the motor 3 is supplied with a three-phase current (U-phase current, V-phase current, and W-phase current) from the power supply circuit 24. The current sensor 25 measures at least two phases of current.
 圧力センサ27は、モータ3とプロペラ4との間で発生する圧力を検出する。圧力センサ27は、モータ3のロータが有する回転軸から、回転軸の回転に伴って発生する軸方向の力を受けて、この力を検出する。圧力センサ27としては、例えば、抵抗式ひずみゲージ、又は、半導体式圧力センサ等を採用することができる。半導体圧力センサとしては、ピエゾ抵抗型圧力センサ、及び、静電容量型圧力センサ等がある。 The pressure sensor 27 detects the pressure generated between the motor 3 and the propeller 4. The pressure sensor 27 receives an axial force generated by the rotation of the rotating shaft from the rotating shaft of the rotor of the motor 3 and detects this force. As the pressure sensor 27, for example, a resistance type strain gauge, a semiconductor type pressure sensor, or the like can be adopted. Examples of the semiconductor pressure sensor include a piezoresistive pressure sensor and a capacitance type pressure sensor.
 取得部26は、モータ3に流れるd軸電流及びq軸電流を算出する。より詳細には、取得部26は、電流センサ25で測定された少なくとも2相の電流を、モータ回転測定部23で測定されたモータ3の回転角A1に基づいて座標変換し、磁界成分(d軸電流)の電流測定値と、トルク成分(q軸電流)の電流測定値とに変換する。プロペラ4とモータ3との間で発生するトルクに相当する値であるトルク検出値T1は、取得部26で算出される、トルク成分(q軸電流)の電流測定値である。すなわち、取得部26は、モータ3に流れる電流に基づいて、トルク検出値T1を算出する。電流センサ25で検出された少なくとも2相の電流とトルク検出値T1との関係は、例えば演算式又はデータテーブルの形式で、モータ制御装置2のメモリに記憶されている。 The acquisition unit 26 calculates the d-axis current and the q-axis current flowing through the motor 3. More specifically, the acquisition unit 26 converts the currents of at least two phases measured by the current sensor 25 into coordinates based on the rotation angle A1 of the motor 3 measured by the motor rotation measurement unit 23, and performs a magnetic field component (d). It is converted into a current measurement value of (shaft current) and a current measurement value of a torque component (q-axis current). The torque detection value T1, which is a value corresponding to the torque generated between the propeller 4 and the motor 3, is a current measurement value of the torque component (q-axis current) calculated by the acquisition unit 26. That is, the acquisition unit 26 calculates the torque detection value T1 based on the current flowing through the motor 3. The relationship between the current of at least two phases detected by the current sensor 25 and the torque detection value T1 is stored in the memory of the motor control device 2 in the form of an arithmetic expression or a data table, for example.
 推力算出部28は、圧力センサ27で検出された、モータ3とプロペラ4との間で発生する圧力の検出値に基づいて、プロペラ4により発生する推力(推力検出値F1)を算出する。圧力の検出値と推力検出値F1との関係は、例えば演算式又はデータテーブルの形式で、モータ制御装置2のメモリに記憶されている。圧力の検出値が大きいほど、推力算出部28で算出される推力検出値F1は大きくなる。 The thrust calculation unit 28 calculates the thrust (thrust detection value F1) generated by the propeller 4 based on the detection value of the pressure generated between the motor 3 and the propeller 4 detected by the pressure sensor 27. The relationship between the pressure detection value and the thrust detection value F1 is stored in the memory of the motor control device 2 in the form of an arithmetic expression or a data table, for example. The larger the pressure detection value, the larger the thrust detection value F1 calculated by the thrust calculation unit 28.
 出力部29は、トルク検出値T1を出力する。出力部29は、例えば、トルク検出値T1をモータ制御部21のメモリに出力する(記憶させる)。出力部29は、例えば、無線通信装置を有し、トルク検出値T1を含む信号を無線通信により外部装置へ出力する(送信する)。 The output unit 29 outputs the torque detection value T1. The output unit 29 outputs (stores), for example, the torque detection value T1 to the memory of the motor control unit 21. The output unit 29 has, for example, a wireless communication device, and outputs (transmits) a signal including the torque detection value T1 to the external device by wireless communication.
 制御出力部22は、モータ制御部21によるモータ3の制御内容に関する情報を出力する。モータ3の制御内容に関する情報とは、例えば、トルク目標値Tr1及び推力目標値Fr1、並びに、その他の各種の目標値である。制御出力部22は、例えば、モータ3の制御内容に関する情報をモータ制御部21のメモリに出力する(記憶させる)。制御出力部22は、例えば、無線通信装置を有し、モータ3の制御内容に関する情報を無線通信により外部装置へ出力する(送信する)。なお、制御出力部22と出力部29とで一部又は全部の構成を共有していてもよい。 The control output unit 22 outputs information regarding the control content of the motor 3 by the motor control unit 21. The information regarding the control content of the motor 3 is, for example, a torque target value Tr1 and a thrust target value Fr1, and various other target values. The control output unit 22 outputs (stores), for example, information on the control content of the motor 3 to the memory of the motor control unit 21. The control output unit 22 has, for example, a wireless communication device, and outputs (transmits) information on the control content of the motor 3 to an external device by wireless communication. The control output unit 22 and the output unit 29 may share a part or all of the configuration.
 (3)動作フロー
 図4を参照して、モータ制御装置2の動作フローを説明する。図4は、実施形態に係る移動体の動作例を示すフローチャートである。
(3) Operation Flow The operation flow of the motor control device 2 will be described with reference to FIG. FIG. 4 is a flowchart showing an operation example of the moving body according to the embodiment.
 モータ制御装置2の電流センサ25は、モータ3に流れる電流を測定する(ステップST1)。取得部26は、電流センサ25で測定された電流に基づいて、プロペラ4とモータ3との間で発生するトルクに相当するトルク検出値T1を算出(取得)する(ステップST2)。モータ制御装置2の圧力センサ27は、モータ3とプロペラ4との間で発生する圧力を検出する(ステップST3)。推力算出部28は、圧力センサ27で検出された圧力の検出値に基づいて、推力検出値F1を算出する(ステップST4)。モータ制御部21は、トルク検出値T1及びプロペラ4の推力検出値F1等に基づいて、モータ3を制御する(ステップST5)。このような処理が、4つのモータ制御装置2の各々で実行される。 The current sensor 25 of the motor control device 2 measures the current flowing through the motor 3 (step ST1). The acquisition unit 26 calculates (acquires) a torque detection value T1 corresponding to the torque generated between the propeller 4 and the motor 3 based on the current measured by the current sensor 25 (step ST2). The pressure sensor 27 of the motor control device 2 detects the pressure generated between the motor 3 and the propeller 4 (step ST3). The thrust calculation unit 28 calculates the thrust detection value F1 based on the pressure detection value detected by the pressure sensor 27 (step ST4). The motor control unit 21 controls the motor 3 based on the torque detection value T1 and the thrust detection value F1 of the propeller 4 (step ST5). Such processing is executed by each of the four motor control devices 2.
 (4)小括
 以上説明したモータ制御装置2では、トルク検出値T1に基づいてモータ3を制御するので、移動体1の姿勢及び速度等の検出結果に基づいてモータ3の制御を行う場合と比較して、モータ3の制御の応答性を改善させることができる。
(4) Summary Since the motor control device 2 described above controls the motor 3 based on the torque detection value T1, the motor 3 is controlled based on the detection results such as the posture and speed of the moving body 1. In comparison, the control responsiveness of the motor 3 can be improved.
 モータ制御装置2では、推力検出値F1に更に基づいて、モータ3を制御するので、トルク検出値T1のみに基づいてモータ3を制御する場合と比較して、モータ3の制御の精度を改善させることができる。さらに、トルク検出値T1の変動も推力検出値F1の変動も、移動体1の姿勢の変動がジャイロセンサで検出される前に検出することができる。そのため、移動体1の姿勢の崩れが大きくなる前に、変化したトルク検出値T1及び推力検出値F1に基づいてモータ3を制御することで、移動体1の姿勢を補正することができる。 Since the motor control device 2 further controls the motor 3 based on the thrust detection value F1, the accuracy of the control of the motor 3 is improved as compared with the case where the motor 3 is controlled only based on the torque detection value T1. be able to. Further, both the fluctuation of the torque detection value T1 and the fluctuation of the thrust detection value F1 can be detected before the fluctuation of the posture of the moving body 1 is detected by the gyro sensor. Therefore, the posture of the moving body 1 can be corrected by controlling the motor 3 based on the changed torque detection value T1 and the thrust detection value F1 before the posture of the moving body 1 collapses significantly.
 仮に、トルク検出値T1及び推力検出値F1がモータ3の回転数に基づいて算出される場合は、移動体1の周囲の風の影響によってモータ3の回転数とトルク検出値T1及び推力検出値F1との相関が変化し、算出の精度が悪化する可能性がある。モータ制御装置2では、トルク検出値T1は、電流センサ25で測定された電流に基づいて算出される。さらに、推力検出値F1は、圧力センサ27で測定された圧力の検出値に基づいて算出される。そのため、トルク検出値T1及び推力検出値F1に対する風の影響を低減できる。よって、モータ3の制御の精度を改善させることができる。 If the torque detection value T1 and the thrust detection value F1 are calculated based on the rotation speed of the motor 3, the rotation speed of the motor 3 and the torque detection value T1 and the thrust detection value are affected by the influence of the wind around the moving body 1. The correlation with F1 may change and the calculation accuracy may deteriorate. In the motor control device 2, the torque detection value T1 is calculated based on the current measured by the current sensor 25. Further, the thrust detection value F1 is calculated based on the pressure detection value measured by the pressure sensor 27. Therefore, the influence of the wind on the torque detection value T1 and the thrust detection value F1 can be reduced. Therefore, the accuracy of control of the motor 3 can be improved.
 (5)変形例1
 以下、実施形態の変形例1に係るモータ制御装置2Aについて、図5を用いて説明する。図5は、変形例1に係る移動体のモータ制御装置のブロック図である。実施形態と同様の構成については、同一の符号を付して説明を省略する。以下では、4つのモータ制御装置2Aのうちの1つに着目して説明する。
(5) Modification 1
Hereinafter, the motor control device 2A according to the first modification of the embodiment will be described with reference to FIG. FIG. 5 is a block diagram of the motor control device of the moving body according to the first modification. The same components as those in the embodiment are designated by the same reference numerals and the description thereof will be omitted. In the following, one of the four motor control devices 2A will be described.
 変形例1のモータ制御部21Aは、回転数制御器214を更に備えている。トルク・推力制御部210は、トルク目標値Tr1及び推力目標値Fr1に基づいて、モータ3の回転数を指示する回転数目標値Nr1を生成し、回転数制御器214へ出力する。すなわち、トルク・推力制御部210は、トルク目標値Tr1とトルク検出値T1との差分が第1の所定範囲内に収束し、かつ、推力目標値Fr1と推力検出値F1との差分が第2の所定範囲内に収束するように、回転数目標値Nr1を定める。 The motor control unit 21A of the modification 1 further includes a rotation speed controller 214. The torque / thrust control unit 210 generates a rotation speed target value Nr1 that indicates the rotation speed of the motor 3 based on the torque target value Tr1 and the thrust target value Fr1, and outputs the rotation speed target value Nr1 to the rotation speed controller 214. That is, in the torque / thrust control unit 210, the difference between the torque target value Tr1 and the torque detection value T1 converges within the first predetermined range, and the difference between the thrust target value Fr1 and the thrust detection value F1 is the second. The rotation speed target value Nr1 is set so as to converge within the predetermined range of.
 モータ制御部21Aは、モータ3の回転数に基づいて、モータ3に流れる電流を制御する回転数制御を行う。より詳細には、回転数制御器214には、トルク・推力制御部210から、回転数目標値Nr1が入力される。回転数制御器214には、モータ回転測定部23で測定された、モータ3の回転角A1(測定値)が入力される。回転数制御器214は、回転角A1を時間微分することにより、モータ3の回転数の測定値を算出する。モータ制御部21Aは、回転数の測定値が回転数目標値Nr1に近づくようにフィードバック制御する。すなわち、回転数制御器214は、回転数の測定値と回転数目標値Nr1との差分が所定範囲内に収束するように、電流目標値Ir1を定める。 The motor control unit 21A controls the rotation speed to control the current flowing through the motor 3 based on the rotation speed of the motor 3. More specifically, the rotation speed target value Nr1 is input to the rotation speed controller 214 from the torque / thrust control unit 210. The rotation speed A1 (measured value) of the motor 3 measured by the motor rotation measuring unit 23 is input to the rotation speed controller 214. The rotation speed controller 214 calculates the measured value of the rotation speed of the motor 3 by time-differentiating the rotation angle A1. The motor control unit 21A performs feedback control so that the measured value of the rotation speed approaches the rotation speed target value Nr1. That is, the rotation speed controller 214 determines the current target value Ir1 so that the difference between the measured rotation speed value and the rotation speed target value Nr1 converges within a predetermined range.
 以上説明したように、モータ制御部21Aは、モータ3の回転数の測定値に基づいて、モータ3に流れる電流を制御する回転数制御を行う。そのため、モータ制御部21Aがモータ3の回転数の測定値を用いずにモータ3を制御する場合と比較して、モータ3の制御の精度を改善させることができる。また、変形例1でも、トルク検出値T1又は推力検出値F1の変化に応じてモータ3の制御を変化させることができる。したがって、トルク検出値T1及び推力検出値F1のいずれもモータ3の制御に用いない場合と比較して、モータ3の制御の応答性を改善させることができる。 As described above, the motor control unit 21A controls the rotation speed to control the current flowing through the motor 3 based on the measured value of the rotation speed of the motor 3. Therefore, the accuracy of control of the motor 3 can be improved as compared with the case where the motor control unit 21A controls the motor 3 without using the measured value of the rotation speed of the motor 3. Further, also in the first modification, the control of the motor 3 can be changed according to the change of the torque detection value T1 or the thrust detection value F1. Therefore, the responsiveness of the control of the motor 3 can be improved as compared with the case where neither the torque detection value T1 nor the thrust detection value F1 is used for the control of the motor 3.
 なお、変形例1において、回転数制御器214は、トルク・推力制御部210の前段に設けられていてもよい。すなわち、一態様において、中位部7(図2を参照)の指示部82(図2を参照)は、目標値Tr、τφr、τθr、τψrに基づいて回転数目標値Nr1を算出し、回転数目標値Nr1を回転数制御器214へ出力する。回転数制御器214は、回転数目標値Nr1とモータ3の回転数の測定値との差分が所定範囲内に収束するように、トルク目標値Tr1及び推力目標値Fr1を定める。トルク・推力制御部210は、トルク目標値Tr1とトルク検出値T1との差分が第1の所定範囲内に収束し、かつ、推力目標値Fr1と推力検出値F1との差分が第2の所定範囲内に収束するように、電流目標値Ir1を定める。このような構成であっても、モータ制御部21Aは、モータ3の回転数に基づいた回転数制御ができる。 In the first modification, the rotation speed controller 214 may be provided in front of the torque / thrust control unit 210. That is, in one embodiment, the indicating unit 82 (see FIG. 2) of the middle unit 7 (see FIG. 2) calculates the rotation speed target value Nr1 based on the target values Tr, τφr, τθr, and τψr, and rotates. The numerical target value Nr1 is output to the rotation speed controller 214. The rotation speed controller 214 determines the torque target value Tr1 and the thrust target value Fr1 so that the difference between the rotation speed target value Nr1 and the measured value of the rotation speed of the motor 3 converges within a predetermined range. In the torque / thrust control unit 210, the difference between the torque target value Tr1 and the torque detection value T1 converges within the first predetermined range, and the difference between the thrust target value Fr1 and the thrust detection value F1 is the second predetermined value. The current target value Ir1 is set so as to converge within the range. Even with such a configuration, the motor control unit 21A can control the rotation speed based on the rotation speed of the motor 3.
 (6)その他の変形例
 以下、実施形態のその他の変形例を列挙する。以下の変形例は、適宜組み合わせて実現されてもよい。
(6) Other Modification Examples The other modifications of the embodiment are listed below. The following modifications may be realized in appropriate combinations.
 モータ制御装置2及び移動体1と同様の機能の少なくとも一部は、モータ制御方法、(コンピュータ)プログラム、又はプログラムを記録した非一時的記録媒体等で具現化されてもよい。 At least a part of the same functions as the motor control device 2 and the mobile body 1 may be embodied in a motor control method, a (computer) program, a non-temporary recording medium on which the program is recorded, or the like.
 一態様に係るモータ制御方法は、プロペラ4とプロペラ4を回転させるモータ3との間で発生するトルクに相当するトルク検出値T1を取得する第1のステップと、第1のステップで取得したトルク検出値T1に基づいて、モータ3を制御する第2のステップと、を備える。 The motor control method according to one aspect includes a first step of acquiring a torque detection value T1 corresponding to the torque generated between the propeller 4 and the motor 3 that rotates the propeller 4, and a torque acquired in the first step. A second step of controlling the motor 3 based on the detected value T1 is provided.
 一態様に係るプログラムは、上記のモータ制御方法を1以上のプロセッサに実行させるためのプログラムである。 The program according to one aspect is a program for causing one or more processors to execute the above motor control method.
 本開示におけるモータ制御装置2及び移動体1は、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示におけるモータ制御装置2及び移動体1としての機能の少なくとも一部が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路(IC、Integrated Circuit)又は大規模集積回路(LSI、Large Scale Integration)を含む1ないし複数の電子回路で構成される。ここでいうIC又はLSI等の集積回路は、集積の度合いによって呼び方が異なっており、システムLSI、VLSI(Very Large Scale Integration)、又はULSI(Ultra Large Scale Integration)と呼ばれる集積回路を含む。さらに、LSIの製造後にプログラムされる、FPGA(Field-Programmable Gate Array)、又はLSI内部の接合関係の再構成若しくはLSI内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、1つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、1つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。ここでいうコンピュータシステムは、1以上のプロセッサ及び1以上のメモリを有するマイクロコントローラを含む。したがって、マイクロコントローラについても、半導体集積回路又は大規模集積回路を含む1ないし複数の電子回路で構成される。 The motor control device 2 and the mobile body 1 in the present disclosure include a computer system. The main configuration of a computer system is a processor and memory as hardware. When the processor executes the program recorded in the memory of the computer system, at least a part of the functions as the motor control device 2 and the mobile body 1 in the present disclosure is realized. The program may be pre-recorded in the memory of the computer system, may be provided through a telecommunications line, and may be recorded on a non-temporary recording medium such as a memory card, optical disk, hard disk drive, etc. that can be read by the computer system. May be provided. The processor of a computer system is composed of one or more electronic circuits including a semiconductor integrated circuit (IC, Integrated Circuit) or a large-scale integrated circuit (LSI, Large Scale Integration). The integrated circuit such as an IC or LSI referred to here has a different name depending on the degree of integration, and includes an integrated circuit called a system LSI, a VLSI (Very Large Scale Integration), or a ULSI (Ultra Large Scale Integration). Further, an FPGA (Field-Programmable Gate Array) programmed after manufacturing the LSI, or a logical device capable of reconfiguring the junction relationship inside the LSI or reconfiguring the circuit partition inside the LSI should also be adopted as a processor. Can be done. A plurality of electronic circuits may be integrated on one chip, or may be distributed on a plurality of chips. The plurality of chips may be integrated in one device, or may be distributed in a plurality of devices. The computer system referred to here includes a microcontroller having one or more processors and one or more memories. Therefore, the microcontroller is also composed of one or more electronic circuits including a semiconductor integrated circuit or a large-scale integrated circuit.
 モータ制御装置2及び移動体1における複数の機能が、1つの筐体内に集約されていることは、モータ制御装置2及び移動体1に必須の構成ではない。モータ制御装置2及び移動体1の構成要素は、複数の筐体に分散して設けられていてもよい。さらに、モータ制御装置2及び移動体1の少なくとも一部の機能、例えば、取得部26の一部の機能がクラウド(クラウドコンピューティング)等によって実現されてもよい。 It is not an essential configuration for the motor control device 2 and the mobile body 1 that a plurality of functions of the motor control device 2 and the mobile body 1 are integrated in one housing. The components of the motor control device 2 and the moving body 1 may be dispersedly provided in a plurality of housings. Further, at least a part of the functions of the motor control device 2 and the mobile body 1, for example, a part of the functions of the acquisition unit 26 may be realized by a cloud (cloud computing) or the like.
 反対に、実施形態において、複数の装置に分散されているモータ制御装置2及び移動体1の少なくとも一部の機能が、1つの筐体内に集約されていてもよい。例えば、中位部7とモータ制御装置2とに分散されているモータ制御装置2及び移動体1の一部の機能が、1つの筐体内に集約されていてもよい。 On the contrary, in the embodiment, at least a part of the functions of the motor control device 2 and the moving body 1 distributed in a plurality of devices may be integrated in one housing. For example, some functions of the motor control device 2 and the moving body 1 dispersed in the middle portion 7 and the motor control device 2 may be integrated in one housing.
 モータ制御部21は、モータ3に印加される電圧に基づいて、モータ3に印加される電圧を制御する電圧制御を行ってもよい。モータ3に印加される電圧とは、具体的には、モータ3の巻線に印加される電圧である。モータ制御部21が電圧制御を行う場合の一態様において、移動体1が備える電圧センサにより、モータ3に印加される電圧の電圧検出値が取得される。モータ制御部21は、電流制御器213に代えて、電圧制御器を含んでいる。トルク・推力制御部210は、モータ3に印加される電圧の目標値(電圧目標値)を含む電圧指示信号を、電圧制御器に送信する。電圧制御器は、電圧目標値と電圧検出値との差分が所定範囲内に収束するように、電源回路24のスイッチング素子の動作を制御する。これにより、電圧制御器は、モータ3に流す電流を制御する。言い換えると、モータ制御部21は、電圧検出値が電圧目標値に近づくようにフィードバック制御する。 The motor control unit 21 may perform voltage control for controlling the voltage applied to the motor 3 based on the voltage applied to the motor 3. Specifically, the voltage applied to the motor 3 is a voltage applied to the winding of the motor 3. In one aspect when the motor control unit 21 performs voltage control, the voltage sensor of the moving body 1 acquires the voltage detection value of the voltage applied to the motor 3. The motor control unit 21 includes a voltage controller instead of the current controller 213. The torque / thrust control unit 210 transmits a voltage instruction signal including a target value (voltage target value) of the voltage applied to the motor 3 to the voltage controller. The voltage controller controls the operation of the switching element of the power supply circuit 24 so that the difference between the voltage target value and the voltage detection value converges within a predetermined range. As a result, the voltage controller controls the current flowing through the motor 3. In other words, the motor control unit 21 performs feedback control so that the voltage detection value approaches the voltage target value.
 モータ制御部21は、トルク検出値T1及び推力検出値F1の両方に基づいてモータ3を制御するのではなく、トルク検出値T1及び推力検出値F1のうち一方に基づいてモータ3を制御してもよい。 The motor control unit 21 does not control the motor 3 based on both the torque detection value T1 and the thrust detection value F1, but controls the motor 3 based on one of the torque detection value T1 and the thrust detection value F1. May be good.
 移動体1は、ドローン(空中ドローン)に限定されず、例えば、ラジコン機であってもよい。移動体1は、ドローン及びラジコン機等の飛行体に限定されない。移動体1は、水上ドローン、水中ドローン、水上ラジコン又は潜水艦ラジコン(水中ラジコン)等の、水上又は水中を移動する機器であってもよい。 The mobile body 1 is not limited to a drone (aerial drone), and may be, for example, a radio-controlled aircraft. The mobile body 1 is not limited to a flying body such as a drone and a radio-controlled aircraft. The moving body 1 may be a device that moves on or under water, such as a water drone, an underwater drone, a water radio control, or a submarine radio control (underwater radio control).
 移動体1が備えるプロペラ4の個数及びモータ3の個数は、4つに限定されない。移動体1のプロペラ4の個数及びモータ3の個数は、例えば、2つ、3つ、6つ、又は8つであってもよい。 The number of propellers 4 and the number of motors 3 included in the moving body 1 are not limited to four. The number of propellers 4 and the number of motors 3 of the moving body 1 may be, for example, two, three, six, or eight.
 移動体1が備えるモータ制御装置2の個数は、4つに限定されない。また、モータ制御装置2の個数は、プロペラ4の個数及びモータ3の個数とは異なっていてもよい。1つのモータ制御装置2が、複数のモータ3を制御してもよい。 The number of motor control devices 2 included in the moving body 1 is not limited to four. Further, the number of motor control devices 2 may be different from the number of propellers 4 and the number of motors 3. One motor control device 2 may control a plurality of motors 3.
 各モータ制御装置2では、制御対象のモータ3に関する情報が、各センサ(モータ回転測定部23、電流センサ25及び圧力センサ27)により取得される。実施形態では、各モータ制御装置2は、複数のモータ3に関する情報のうち、制御対象のモータ3に関する情報のみを用いてモータ3を制御する。これに対して、各モータ制御装置2は、複数のモータ3のうち制御対象のモータ3に関する情報に加えて、制御対象のモータ3以外のモータ3に関する情報を更に用いて、制御対象のモータ3を制御してもよい。 In each motor control device 2, information about the motor 3 to be controlled is acquired by each sensor (motor rotation measuring unit 23, current sensor 25, and pressure sensor 27). In the embodiment, each motor control device 2 controls the motor 3 by using only the information about the motor 3 to be controlled among the information about the plurality of motors 3. On the other hand, each motor control device 2 further uses the information about the motor 3 other than the motor 3 to be controlled in addition to the information about the motor 3 to be controlled among the plurality of motors 3, and the motor 3 to be controlled. May be controlled.
 複数のモータ制御装置2間で、一部の構成を共有していてもよい。例えば、複数のモータ制御装置2間で、出力部29、制御出力部22、取得部26及び推力算出部28のうち少なくとも一部を共有していてもよい。 A part of the configuration may be shared between the plurality of motor control devices 2. For example, at least a part of the output unit 29, the control output unit 22, the acquisition unit 26, and the thrust calculation unit 28 may be shared among the plurality of motor control devices 2.
 モータ制御装置2は、少なくとも取得部26と、モータ制御部21と、を備えていればよい。例えば、電流センサ25及び圧力センサ27が、モータ制御装置2の外部の構成として移動体1に備えられていてもよい。 The motor control device 2 may include at least an acquisition unit 26 and a motor control unit 21. For example, the current sensor 25 and the pressure sensor 27 may be provided in the moving body 1 as an external configuration of the motor control device 2.
 取得部26は、トルク検出値T1を自ら算出する構成に限定されない。例えば、移動体1が、トルク検出値T1を算出する算出部をモータ制御装置2の外部の構成として備えている場合に、取得部26は、算出部からトルク検出値T1を取得してもよい。 The acquisition unit 26 is not limited to the configuration in which the torque detection value T1 is calculated by itself. For example, when the moving body 1 includes a calculation unit for calculating the torque detection value T1 as an external configuration of the motor control device 2, the acquisition unit 26 may acquire the torque detection value T1 from the calculation unit. ..
 移動体1は、トルクセンサを備えていてもよい。取得部26は、電流センサ25の出力に代えて、トルクセンサの出力に基づいてトルク検出値T1を算出してもよい。ここで言うトルクセンサは、モータ3の動作トルクを測定する。トルクセンサは、例えば、ねじり歪みの検出が可能な磁歪式歪センサである。磁歪式歪センサは、モータ3の回転軸にトルクが加わることにより発生する歪みに応じた透磁率の変化を、モータ3の非回転部分に設置したコイルで検出し、歪みに比例した電圧信号を出力する。 The moving body 1 may be provided with a torque sensor. The acquisition unit 26 may calculate the torque detection value T1 based on the output of the torque sensor instead of the output of the current sensor 25. The torque sensor referred to here measures the operating torque of the motor 3. The torque sensor is, for example, a magnetostrictive strain sensor capable of detecting torsional strain. The magnetostrictive strain sensor detects a change in magnetic permeability according to the strain generated by applying torque to the rotating shaft of the motor 3 with a coil installed in the non-rotating part of the motor 3, and outputs a voltage signal proportional to the strain. Output.
 トルク検出値T1に基づいたモータ制御部21の動作は、トルク検出値T1がトルク目標値に近づくようにするフィードバック制御に限定されない。推力検出値F1に基づいたモータ制御部21の動作は、推力検出値F1が推力目標値に近づくようにするフィードバック制御に限定されない。モータ制御部21は、例えば、移動体1の周囲の風速が閾値を超える等の特定の条件を満たす場合に、移動体1を不時着させるために、トルク検出値T1及び推力検出値F1が時間経過に伴って低下するようにモータ3の回転数を低下させる制御を行ってもよい。ここで言う「モータ3の回転数を低下させる」とは、モータ3の回転数を0にする(すなわち、モータ3を停止させる)ことを含む。移動体1の周囲の風速は、例えば、移動体1が備えた風速センサにより検出されればよい。 The operation of the motor control unit 21 based on the torque detection value T1 is not limited to the feedback control that causes the torque detection value T1 to approach the torque target value. The operation of the motor control unit 21 based on the thrust detection value F1 is not limited to the feedback control that causes the thrust detection value F1 to approach the thrust target value. The motor control unit 21 causes the torque detection value T1 and the thrust detection value F1 to elapse over time in order to cause the moving body 1 to crash land when, for example, the wind speed around the moving body 1 exceeds a threshold value. Control may be performed to reduce the rotation speed of the motor 3 so as to decrease in accordance with the above. The term "reducing the rotation speed of the motor 3" as used herein includes setting the rotation speed of the motor 3 to 0 (that is, stopping the motor 3). The wind speed around the moving body 1 may be detected by, for example, a wind speed sensor provided in the moving body 1.
 モータ制御部21は、特定の条件を満たす場合に、トルク検出値T1のリミット値を設定してもよい。トルク目標値がリミット値よりも大きい場合に、モータ制御部21は、トルク検出値T1がトルク目標値ではなくリミット値に近づくようにモータ3を制御してもよい。モータ制御部21は、特定の条件が満たされなくなると、リミット値の設定を解除する。これにより、特定の条件が満たされなくなった場合に、モータ3のトルクを増加させる余地が残るので、モータ3の制御の柔軟性を高めることができる。例えば、移動体1が乱気流に突入するという特定の条件を満たした場合に、リミット値を設定し、移動体1が乱気流から脱した後に、リミット値の設定を解除して4つのモータ3のトルクをモータ3ごとに適宜増加又は減少させることで、移動体1の姿勢を正すことができる。同様に、モータ制御部21は、特定の条件を満たす場合に、推力検出値F1のリミット値を設定してもよい。移動体1における乱気流への突入の有無は、例えば、移動体1が備えた空気流センサの検出結果に基づいて判定されればよい。空気流センサは、移動体1の周囲の風速と風向きとを検出する。 The motor control unit 21 may set a limit value of the torque detection value T1 when a specific condition is satisfied. When the torque target value is larger than the limit value, the motor control unit 21 may control the motor 3 so that the torque detection value T1 approaches the limit value instead of the torque target value. When the specific condition is not satisfied, the motor control unit 21 cancels the setting of the limit value. As a result, there is room for increasing the torque of the motor 3 when a specific condition is not satisfied, so that the flexibility of control of the motor 3 can be increased. For example, when a specific condition that the moving body 1 enters the turbulence is satisfied, a limit value is set, and after the moving body 1 escapes from the eddy, the limit value setting is released and the torques of the four motors 3 Can be appropriately increased or decreased for each motor 3 to correct the posture of the moving body 1. Similarly, the motor control unit 21 may set a limit value of the thrust detection value F1 when a specific condition is satisfied. Whether or not the moving body 1 has entered the turbulent airflow may be determined based on, for example, the detection result of the air flow sensor provided in the moving body 1. The air flow sensor detects the wind speed and the wind direction around the moving body 1.
 モータ制御部21は、運動検出部9のジャイロセンサの出力に更に基づいて、モータ3を制御してもよい。例えば、モータ制御部21は、トルク検出値T1に基づいて移動体1の姿勢の乱れの大きさを判定する。モータ制御部21は、トルク検出値T1に基づいて移動体1の姿勢の乱れの大きさが所定値を超えていると判定すると、まず、トルク検出値T1に基づいてモータ3を制御する。その後、所定時間が経過すると、モータ制御部21は、トルク検出値T1とジャイロセンサとのうち、ジャイロセンサの出力に基づいて、モータ3を制御する。要するに、モータ制御部21は、トルク検出値T1に基づいて移動体1の姿勢の乱れを検出した場合に、まずはトルク検出値T1に基づいた姿勢の修正を行う。その後、姿勢の乱れがジャイロセンサの出力に反映されるタイミング以降には、モータ制御部21は、ジャイロセンサの出力に基づいた姿勢の修正を行う。これにより、モータ3に対する制御の精度の向上を図ることができる。 The motor control unit 21 may further control the motor 3 based on the output of the gyro sensor of the motion detection unit 9. For example, the motor control unit 21 determines the magnitude of the posture disturbance of the moving body 1 based on the torque detection value T1. When the motor control unit 21 determines that the magnitude of the posture disturbance of the moving body 1 exceeds a predetermined value based on the torque detection value T1, the motor control unit 21 first controls the motor 3 based on the torque detection value T1. After that, when a predetermined time elapses, the motor control unit 21 controls the motor 3 based on the output of the gyro sensor among the torque detection value T1 and the gyro sensor. In short, when the motor control unit 21 detects the disorder of the posture of the moving body 1 based on the torque detection value T1, the motor control unit 21 first corrects the posture based on the torque detection value T1. After that, after the timing when the posture disorder is reflected in the output of the gyro sensor, the motor control unit 21 corrects the posture based on the output of the gyro sensor. Thereby, the accuracy of control for the motor 3 can be improved.
 (7)まとめ
 以上説明した実施形態等から、以下の態様が開示されている。
(7) Summary The following aspects are disclosed from the above-described embodiments and the like.
 第1の態様に係るモータ制御装置(2、2A)は、取得部(26)と、モータ制御部(21、21A)と、を備える。取得部(26)は、プロペラ(4)とプロペラ(4)を回転させるモータ(3)との間で発生するトルクに相当するトルク検出値(T1)を取得する。モータ制御部(21、21A)は、取得部(26)で取得されたトルク検出値(T1)に基づいて、モータ(3)を制御する。 The motor control device (2, 2A) according to the first aspect includes an acquisition unit (26) and a motor control unit (21, 21A). The acquisition unit (26) acquires a torque detection value (T1) corresponding to the torque generated between the propeller (4) and the motor (3) that rotates the propeller (4). The motor control units (21, 21A) control the motor (3) based on the torque detection value (T1) acquired by the acquisition unit (26).
 上記の構成によれば、プロペラ(4)とモータ(3)との間で発生するトルクの変化後であれば、トルクの変化の結果として移動体(1)の姿勢及び速度等が変化する前であっても、変化したトルク検出値(T1)に基づいてモータ(3)の制御を変更することができる。そのため、移動体(1)の姿勢及び速度等の検出結果に基づいてモータ(3)の制御を行う場合と比較して、モータ(3)の制御の応答性を改善させることができる。 According to the above configuration, after the change in torque generated between the propeller (4) and the motor (3), before the attitude, speed, etc. of the moving body (1) change as a result of the change in torque. Even so, the control of the motor (3) can be changed based on the changed torque detection value (T1). Therefore, the responsiveness of the control of the motor (3) can be improved as compared with the case where the motor (3) is controlled based on the detection result of the posture and speed of the moving body (1).
 また、第2の態様に係るモータ制御装置(2、2A)では、第1の態様において、モータ制御部(21、21A)は、プロペラ(4)により発生する推力に相当する推力検出値(F1)に更に基づいて、モータ(3)を制御する。 Further, in the motor control device (2, 2A) according to the second aspect, in the first aspect, the motor control unit (21, 21A) has a thrust detection value (F1) corresponding to the thrust generated by the propeller (4). ) Further, the motor (3) is controlled.
 上記の構成によれば、モータ制御部(21、21A)がトルク検出値(T1)のみに基づいてモータ(3)を制御する場合と比較して、モータ(3)の制御の精度を改善させることができる。 According to the above configuration, the accuracy of control of the motor (3) is improved as compared with the case where the motor control units (21, 21A) control the motor (3) based only on the torque detection value (T1). be able to.
 また、第3の態様に係るモータ制御装置(2、2A)では、第1又は2の態様において、モータ制御部(21、21A)は、電流制御を行う。電流制御では、モータ制御部(21、21A)は、モータ(3)に流れる電流に基づいて、モータ(3)に流れる電流を制御する。 Further, in the motor control device (2, 2A) according to the third aspect, in the first or second aspect, the motor control unit (21, 21A) performs current control. In the current control, the motor control units (21, 21A) control the current flowing through the motor (3) based on the current flowing through the motor (3).
 上記の構成によれば、モータ制御部(21、21A)がトルク検出値(T1)のみに基づいてモータ(3)を制御する場合と比較して、モータ(3)の制御の精度を改善させることができる。 According to the above configuration, the accuracy of control of the motor (3) is improved as compared with the case where the motor control units (21, 21A) control the motor (3) based only on the torque detection value (T1). be able to.
 また、第4の態様に係るモータ制御装置(2、2A)では、第1又は2の態様において、モータ制御部(21、21A)は、電圧制御を行う。電圧制御では、モータ制御部(21、21A)は、モータ(3)に印加される電圧に基づいて、モータ(3)に印加される電圧を制御する。 Further, in the motor control device (2, 2A) according to the fourth aspect, in the first or second aspect, the motor control unit (21, 21A) performs voltage control. In voltage control, the motor control units (21, 21A) control the voltage applied to the motor (3) based on the voltage applied to the motor (3).
 上記の構成によれば、モータ制御部(21、21A)がトルク検出値(T1)のみに基づいてモータ(3)を制御する場合と比較して、モータ(3)の制御の精度を改善させることができる。 According to the above configuration, the accuracy of control of the motor (3) is improved as compared with the case where the motor control units (21, 21A) control the motor (3) based only on the torque detection value (T1). be able to.
 また、第5の態様に係るモータ制御装置(2A)では、第1~4の態様のいずれか1つにおいて、モータ制御部(21A)は、回転数制御を行う。回転数制御では、モータ制御部(21A)は、モータ(3)の回転数に基づいて、モータ(3)に流れる電流を制御する。 Further, in the motor control device (2A) according to the fifth aspect, the motor control unit (21A) controls the rotation speed in any one of the first to fourth aspects. In the rotation speed control, the motor control unit (21A) controls the current flowing through the motor (3) based on the rotation speed of the motor (3).
 上記の構成によれば、モータ制御部(21A)がトルク検出値(T1)のみに基づいてモータ(3)を制御する場合と比較して、モータ(3)の制御の精度を改善させることができる。 According to the above configuration, the accuracy of control of the motor (3) can be improved as compared with the case where the motor control unit (21A) controls the motor (3) based only on the torque detection value (T1). it can.
 また、第6の態様に係るモータ制御装置(2、2A)では、第1~5の態様のいずれか1つにおいて、モータ制御部(21、21A)は、トルク検出値(T1)がトルク目標値(Tr1)に近づくようにフィードバック制御する。 Further, in the motor control device (2, 2A) according to the sixth aspect, in any one of the first to fifth aspects, the motor control unit (21, 21A) has a torque detection value (T1) as a torque target. Feedback control is performed so as to approach the value (Tr1).
 上記の構成によれば、モータ(3)の制御の精度を改善させることができる。 According to the above configuration, the accuracy of control of the motor (3) can be improved.
 また、第7の態様に係るモータ制御装置(2、2A)は、第1~6の態様のいずれか1つにおいて、出力部(29)を更に備える。出力部(29)は、トルク検出値(T1)を出力する。 Further, the motor control device (2, 2A) according to the seventh aspect further includes an output unit (29) in any one of the first to sixth aspects. The output unit (29) outputs the torque detection value (T1).
 上記の構成によれば、トルク検出値(T1)をモータ制御装置(2、2A)の外部で用いることができる。例えば、モータ制御装置(2、2A)の外部の装置は、出力部(29)から出力されるトルク検出値(T1)をモニタすることで、モータ(3)の動作状態を判定することができる。 According to the above configuration, the torque detection value (T1) can be used outside the motor control device (2, 2A). For example, an external device of the motor control device (2, 2A) can determine the operating state of the motor (3) by monitoring the torque detection value (T1) output from the output unit (29). ..
 また、第8の態様に係るモータ制御装置(2、2A)は、第1~7の態様のいずれか1つにおいて、制御出力部(22)を更に備える。制御出力部(22)は、モータ制御部(21、21A)によるモータ(3)の制御内容に関する情報を出力する。 Further, the motor control device (2, 2A) according to the eighth aspect further includes a control output unit (22) in any one of the first to seventh aspects. The control output unit (22) outputs information regarding the control content of the motor (3) by the motor control unit (21, 21A).
 上記の構成によれば、モータ(3)の制御内容をユーザ等が把握できる。 According to the above configuration, the user or the like can grasp the control content of the motor (3).
 また、第9の態様に係るモータ制御装置(2、2A)では、第1~8の態様のいずれか1つにおいて、取得部(26)は、モータ(3)に流れる電流に基づいて、トルク検出値(T1)を算出する。 Further, in the motor control device (2, 2A) according to the ninth aspect, in any one of the first to eighth aspects, the acquisition unit (26) torques based on the current flowing through the motor (3). The detected value (T1) is calculated.
 上記の構成によれば、磁歪式歪センサ等のトルクセンサを用いることなくトルク検出値(T1)を算出することができる。 According to the above configuration, the torque detection value (T1) can be calculated without using a torque sensor such as a magnetostrictive strain sensor.
 第1の態様以外の構成については、モータ制御装置(2、2A)に必須の構成ではなく、適宜省略可能である。 Configurations other than the first aspect are not essential configurations for the motor control device (2, 2A) and can be omitted as appropriate.
 また、第10の態様に係る移動体(1)は、第1~9の態様のいずれか1つに係るモータ制御装置(2、2A)と、モータ(3)と、プロペラ(4)と、移動体本体(5)と、を備える。移動体本体(5)には、モータ(3)、プロペラ(4)及びモータ制御装置(2、2A)が搭載される。 Further, the moving body (1) according to the tenth aspect includes a motor control device (2, 2A), a motor (3), a propeller (4), and the propeller (4) according to any one of the first to ninth aspects. It includes a moving body main body (5). A motor (3), a propeller (4), and a motor control device (2, 2A) are mounted on the mobile body (5).
 上記の構成によれば、モータ(3)の制御の応答性を改善させることができる。 According to the above configuration, the responsiveness of the control of the motor (3) can be improved.
 また、第11の態様に係る移動体(1)は、第10の態様において、モータ(3)及びプロペラ(4)の各々を3つ以上備える。 Further, the moving body (1) according to the eleventh aspect includes three or more motors (3) and propellers (4) in the tenth aspect.
 また、第12の態様に係るモータ制御方法は、プロペラ(4)とプロペラ(4)を回転させるモータ(3)との間で発生するトルクに相当するトルク検出値(T1)を取得する第1のステップと、第1のステップで取得したトルク検出値(T1)に基づいて、モータ(3)を制御する第2のステップと、を備える。 Further, in the motor control method according to the twelfth aspect, the first method of acquiring a torque detection value (T1) corresponding to the torque generated between the propeller (4) and the motor (3) for rotating the propeller (4). And a second step of controlling the motor (3) based on the torque detection value (T1) acquired in the first step.
 上記の構成によれば、モータ(3)の制御の応答性を改善させることができる。 According to the above configuration, the responsiveness of the control of the motor (3) can be improved.
 また、第13の態様に係るプログラムは、第12の態様に係るモータ制御方法を、1以上のプロセッサに実行させるためのプログラムである。 Further, the program according to the thirteenth aspect is a program for causing one or more processors to execute the motor control method according to the twelfth aspect.
 上記態様に限らず、実施形態に係るモータ制御装置(2、2A)及び移動体(1)の種々の構成(変形例を含む)は、モータ制御方法及びプログラムにて具現化可能である。 Not limited to the above aspects, various configurations (including modifications) of the motor control device (2, 2A) and the moving body (1) according to the embodiment can be embodied by a motor control method and a program.
1 移動体
2、2A モータ制御装置
21、21A モータ制御部
210 トルク・推力制御部
211 トルク制御器
212 推力制御器
213 電流制御器
214 回転数制御器
22 制御出力部
23 モータ回転測定部
24 電源回路
25 電流センサ
26 取得部
27 圧力センサ
28 推力算出部
29 出力部
3 モータ
4、41、42、43、44 プロペラ
5 移動体本体
51 アーム
6 上位部
7 中位部
71 高度制御器
72、73 位置制御器
74、75 速度制御器
76、77、78 角度制御器
79、80、81 角速度制御器
82 指示部
9 運動検出部
1 Moving body 2, 2A Motor control device 21, 21A Motor control unit 210 Torque / thrust control unit 211 Torque controller 212 Thrust controller 213 Current controller 214 Rotation speed controller 22 Control output unit 23 Motor rotation measurement unit 24 Power supply circuit 25 Current sensor 26 Acquisition unit 27 Pressure sensor 28 Propulsion calculation unit 29 Output unit 3 Motor 4, 41, 42, 43, 44 Propeller 5 Mobile body 51 Arm 6 Upper part 7 Middle part 71 Advanced controller 72, 73 Position control Instrument 74, 75 Speed controller 76, 77, 78 Angle controller 79, 80, 81 Angle speed controller 82 Indicator 9 Motion detector

Claims (13)

  1. プロペラと前記プロペラを回転させるモータとの間で発生するトルクに相当するトルク検出値を取得する取得部と、前記トルク検出値に基づいて、前記モータを制御するモータ制御部と、を備える、
    モータ制御装置。
    It includes an acquisition unit that acquires a torque detection value corresponding to the torque generated between the propeller and the motor that rotates the propeller, and a motor control unit that controls the motor based on the torque detection value.
    Motor control device.
  2. 前記モータ制御部は、前記プロペラにより発生する推力に相当する推力検出値に更に基づいて、前記モータを制御する、
    請求項1に記載のモータ制御装置。
    The motor control unit further controls the motor based on a thrust detection value corresponding to the thrust generated by the propeller.
    The motor control device according to claim 1.
  3. 前記モータ制御部は、前記モータに流れる電流に基づいて、前記モータに流れる電流を制御する電流制御を行う、
    請求項1又は2に記載のモータ制御装置。
    The motor control unit performs current control for controlling the current flowing through the motor based on the current flowing through the motor.
    The motor control device according to claim 1 or 2.
  4. 前記モータ制御部は、前記モータに印加される電圧に基づいて、前記モータに印加される電圧を制御する電圧制御を行う、
    請求項1又は2に記載のモータ制御装置。
    The motor control unit performs voltage control for controlling the voltage applied to the motor based on the voltage applied to the motor.
    The motor control device according to claim 1 or 2.
  5. 前記モータ制御部は、前記モータの回転数に基づいて、前記モータに流れる電流を制御する回転数制御を行う、
    請求項1~4のいずれか一項に記載のモータ制御装置。
    The motor control unit controls the rotation speed to control the current flowing through the motor based on the rotation speed of the motor.
    The motor control device according to any one of claims 1 to 4.
  6. 前記モータ制御部は、前記トルク検出値がトルク目標値に近づくようにフィードバック制御する、
    請求項1~5のいずれか一項に記載のモータ制御装置。
    The motor control unit feedback-controls the torque detection value so that it approaches the torque target value.
    The motor control device according to any one of claims 1 to 5.
  7. 前記トルク検出値を出力する出力部を更に備える、請求項1~6のいずれか一項に記載のモータ制御装置。 The motor control device according to any one of claims 1 to 6, further comprising an output unit that outputs the torque detection value.
  8. 前記モータ制御部による前記モータの制御内容に関する情報を出力する制御出力部を更に備える、
    請求項1~7のいずれか一項に記載のモータ制御装置。
    A control output unit that outputs information regarding the control content of the motor by the motor control unit is further provided.
    The motor control device according to any one of claims 1 to 7.
  9. 前記取得部は、前記モータに流れる電流に基づいて、前記トルク検出値を算出する、
    請求項1~8のいずれか一項に記載のモータ制御装置。
    The acquisition unit calculates the torque detection value based on the current flowing through the motor.
    The motor control device according to any one of claims 1 to 8.
  10. 請求項1~9のいずれか一項に記載のモータ制御装置と、
    前記モータと、
    前記プロペラと、
    前記モータ、前記プロペラ及び前記モータ制御装置が搭載された移動体本体と、を備える、
    移動体。
    The motor control device according to any one of claims 1 to 9,
    With the motor
    With the propeller
    A mobile body including the motor, the propeller, and the motor control device.
    Mobile body.
  11. 前記モータ及び前記プロペラの各々を3つ以上備える、
    請求項10に記載の移動体。
    Each of the motor and the propeller is provided with three or more.
    The moving body according to claim 10.
  12. プロペラと前記プロペラを回転させるモータとの間で発生するトルクに相当するトルク検出値を取得する第1のステップと、
    前記第1のステップで取得した前記トルク検出値に基づいて、前記モータを制御する第2のステップと、を備える、
    モータ制御方法。
    The first step of acquiring a torque detection value corresponding to the torque generated between the propeller and the motor that rotates the propeller, and
    A second step of controlling the motor based on the torque detection value acquired in the first step is provided.
    Motor control method.
  13. 請求項12に記載のモータ制御方法を、1以上のプロセッサに実行させるための、
    プログラム。
    A method for causing one or more processors to execute the motor control method according to claim 12.
    program.
PCT/JP2020/021556 2019-08-02 2020-06-01 Motor control device, moving body, motor control method, and program WO2021024590A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019143246A JP2022133489A (en) 2019-08-02 2019-08-02 Motor control device, mobile body, motor control method, and program
JP2019-143246 2019-08-02

Publications (1)

Publication Number Publication Date
WO2021024590A1 true WO2021024590A1 (en) 2021-02-11

Family

ID=74504017

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/021556 WO2021024590A1 (en) 2019-08-02 2020-06-01 Motor control device, moving body, motor control method, and program

Country Status (2)

Country Link
JP (1) JP2022133489A (en)
WO (1) WO2021024590A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7267903B2 (en) * 2019-11-26 2023-05-02 国立大学法人徳島大学 flying object

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018112495A (en) * 2017-01-12 2018-07-19 イームズロボティクス株式会社 Flight system, flight management method, and flight program
WO2018147304A1 (en) * 2017-02-08 2018-08-16 日本電産株式会社 Motor-related information processing circuit, motor-related information processing method and motor module
JP2018192838A (en) * 2017-05-12 2018-12-06 国立大学法人東京海洋大学 Load state estimating device of propeller, load state estimating method of propeller and load state estimating program of propeller
JP2019122241A (en) * 2017-12-28 2019-07-22 株式会社デンソー Rotary electric machine

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018112495A (en) * 2017-01-12 2018-07-19 イームズロボティクス株式会社 Flight system, flight management method, and flight program
WO2018147304A1 (en) * 2017-02-08 2018-08-16 日本電産株式会社 Motor-related information processing circuit, motor-related information processing method and motor module
JP2018192838A (en) * 2017-05-12 2018-12-06 国立大学法人東京海洋大学 Load state estimating device of propeller, load state estimating method of propeller and load state estimating program of propeller
JP2019122241A (en) * 2017-12-28 2019-07-22 株式会社デンソー Rotary electric machine

Also Published As

Publication number Publication date
JP2022133489A (en) 2022-09-14

Similar Documents

Publication Publication Date Title
Meyer et al. Comprehensive simulation of quadrotor uavs using ros and gazebo
US20200278701A1 (en) Method and computer program for controlling tilt angle of main rotor on basis of vertical attitude control signal low-speed flight state, and vertical take-off and landing aircraft
US11669109B2 (en) Method and apparatus for yaw fusion and aircraft
US11958604B2 (en) Unmanned aerial vehicle and method for controlling gimbal thereof
WO2020019331A1 (en) Method for height measurement and compensation by barometer, and unmanned aerial vehicle
US10577116B1 (en) Active damping of flexible modes for unmanned aerial vehicles
CN111650955B (en) Control method of climbing robot and climbing robot
CN107111321B (en) Control method, control device, flight control system and multi-rotor unmanned aerial vehicle
CN108196570A (en) A kind of unmanned plane navigational calibration method, apparatus and unmanned plane
CN113039502A (en) Multi-rotor unmanned aerial vehicle, control method and control device thereof, and computer-readable storage medium
WO2021024590A1 (en) Motor control device, moving body, motor control method, and program
CN107102653A (en) A kind of apparatus and method for the carry equipment angle over the ground for controlling unmanned plane
CN109521785A (en) It is a kind of to clap Smart Rotor aerocraft system with oneself
CN110300941A (en) A kind of method for controlling rotation of holder, device and control equipment, mobile platform
CN109343558A (en) A kind of rotor wing unmanned aerial vehicle automatically corrects navigation control system
WO2021024591A1 (en) Motor control device, moving body, motor control method, and program
JP2016215958A (en) Multicopter and multicopter system
JPWO2021024591A5 (en)
WO2018107733A1 (en) Method and device for controlling airship
KR101622277B1 (en) Modularized Quad-Rotor control system and control method thereof
CN109506649B (en) Inner frame zero locking method and system for four-axis inertial stabilization platform system
JP2021157493A (en) Autonomous flying object and flight control method
Høglund Autonomous inspection of wind turbines and buildings using an UAV
CN108827302A (en) Multi-rotor aerocraft air navigation aid based on rotor tachometric survey
WO2021223169A1 (en) Method and device for detecting power output of unmanned aerial vehicle

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20850927

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20850927

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP