WO2020135389A1 - 电机补偿方法、装置、驱动器及系统 - Google Patents

电机补偿方法、装置、驱动器及系统 Download PDF

Info

Publication number
WO2020135389A1
WO2020135389A1 PCT/CN2019/127777 CN2019127777W WO2020135389A1 WO 2020135389 A1 WO2020135389 A1 WO 2020135389A1 CN 2019127777 W CN2019127777 W CN 2019127777W WO 2020135389 A1 WO2020135389 A1 WO 2020135389A1
Authority
WO
WIPO (PCT)
Prior art keywords
motor
value
angle value
angle
compensation
Prior art date
Application number
PCT/CN2019/127777
Other languages
English (en)
French (fr)
Inventor
刘元江
刘鹏
陈志�
Original Assignee
歌尔股份有限公司
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 歌尔股份有限公司 filed Critical 歌尔股份有限公司
Publication of WO2020135389A1 publication Critical patent/WO2020135389A1/zh

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
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/14Estimation or adaptation of motor parameters, e.g. rotor time constant, flux, speed, current or voltage

Definitions

  • the present invention relates to the technical field of motor equipment, and more particularly, to a motor compensation method, a motor compensation device, a driver, and a motor compensation system.
  • Direct-drive rotary motor as one of the motors, mainly relies on the encoder inside the motor to achieve positioning.
  • encoders include grating encoders and magnetic encoders.
  • the accuracy of positioning using a raster encoder is high, but the price of the raster encoder is expensive, which increases the production cost.
  • the accuracy is poor when using magnetic encoder to achieve positioning.
  • An object of the present invention is to provide a new technology solution for angular displacement compensation of a motor.
  • a motor compensation method which includes:
  • the compensation value is used to drive the motor to rotate.
  • controlling the motor to rotate a preset angle value to obtain the actual angle value of the motor rotation measured by an angle measuring instrument, and determining the angle deviation value according to the preset angle value and the actual angle value includes:
  • the angle deviation value is determined according to the preset angle value and the average actual angle value.
  • using the compensation value to drive the motor to rotate includes:
  • the compensation pulse number of the driver is determined according to the compensation value; the motor is driven to rotate according to the compensation pulse number.
  • the preset angle value is an angle value corresponding to 8 equal parts of 360°, or the preset angle value is an angle value corresponding to 16 equal parts of 360°.
  • the encoder is any one of a grating encoder and a magnetic encoder.
  • the motor is a DDR motor.
  • a motor compensation device including:
  • a control module for controlling the motor to rotate a preset angle value, wherein the preset angle value is an angle value corresponding to 360° divided into multiple equal parts;
  • An obtaining module configured to obtain an actual angle value of the rotation of the motor measured by an angle measuring instrument
  • An angle deviation value determination module configured to determine an angle deviation value according to the preset angle value and the actual angle value
  • a compensation value determining module configured to determine the compensation value corresponding to the preset angle value of the motor rotation according to the resolution of the encoder and the angle deviation value;
  • the compensation module is used to drive the motor to rotate by using the compensation value every time the motor rotates once, and every time the motor rotates the preset angle value.
  • the device further includes: an actual angle value processing module,
  • the control module is further used to control the motor to rotate a preset angle value multiple times;
  • the acquiring module is further configured to acquire the actual angle value measured by the angle measuring instrument every time the motor rotates a preset angle value, and obtain multiple sets of actual angle values;
  • the actual angle value processing module is used for averaging the multiple sets of actual angle values to obtain the average actual angle value of the motor rotation;
  • the angle deviation value acquisition module is further used to determine the angle deviation value according to the preset angle value and the average actual angle value.
  • a driver including: a memory and a processor, the memory is used to store instructions, and the instructions are used to control the processor to operate to perform any one of the first aspects The method.
  • a motor compensation system including a motor and the driver according to the second or third aspect.
  • the motor is controlled to rotate a preset angle value, the actual angle value of the motor rotation measured by an angle measuring instrument is obtained, and the angle deviation value is determined according to the preset angle value and the actual angle value,
  • the compensation value corresponding to the preset angle value of the motor rotation is determined according to the resolution of the encoder and the angle deviation value.
  • FIG. 1 is a schematic flowchart of a motor compensation method according to an embodiment of the present invention.
  • Fig. 2 is a schematic diagram of the deviation curve of the actual angle value and the target angle value of the motor during one revolution of the motor.
  • FIG. 3 is a schematic diagram of the deviation curve of the actual angle value of the motor rotation and the target angle value in the process of one revolution of the motor after using the motor compensation method provided by the embodiment of the present invention.
  • FIG. 4 is a schematic block diagram of a motor compensation device according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of a hardware structure of a driver according to an embodiment of the present invention.
  • FIG. 1 is a schematic flowchart of a motor compensation method according to an embodiment of the present invention.
  • the motor involved in the embodiments of the present invention may be any type of rotating motor, for example, a DDR motor.
  • the motor compensation method includes at least the following steps:
  • step S1100 the motor is controlled to rotate to a preset angle value, where the preset angle value is a 360° angle value corresponding to multiple equal parts.
  • the preset angle value can be determined according to the actual test situation.
  • the preset angle value is an angle value corresponding to 8 equal parts of 360°, or the preset angle value is an angle value corresponding to 16 equal parts of 360°.
  • Step S1200 Obtain the actual angle value of the motor rotation measured by the angle measuring instrument.
  • the measurement accuracy of the angle measuring instrument is higher than the measurement accuracy of the encoder used with the motor, and meets the test requirements of the motor compensation method provided by the embodiment of the present invention.
  • Step S1300 Determine the angle deviation value according to the preset angle value and the actual angle value.
  • the motor in order to improve the determination accuracy of the actual angle value of the motor rotation, the motor is controlled to rotate a predetermined angle value multiple times. Each time the motor rotates a preset angle value, the angle measuring instrument measures the angle of rotation of the motor once. In this way, multiple sets of actual angle values measured by the angle measuring instrument can be obtained. Then average the multiple sets of actual angle values to obtain the average actual angle of motor rotation. The angle deviation value is determined according to the preset angle value and the average actual angle value.
  • step S1400 the compensation value corresponding to the preset angle value of the motor rotation is determined according to the resolution of the encoder and the angle deviation value.
  • the compensation value corresponding to the preset angle of motor rotation is obtained based on the following calculation formula
  • c is the compensation value corresponding to the preset angle of motor rotation
  • r is the encoder resolution
  • b is the angle deviation value
  • the encoder used with the motor may be any one of a grating encoder and a magnetic encoder.
  • the raster encoder is a raster encoder with lower precision.
  • step S1500 within each revolution of the motor, and each time the motor rotates by a preset angle value, the compensation value is used to drive the motor to rotate.
  • the driver controls the rotation of the motor by sending out the number of pulses.
  • the number of compensation pulses of the driver is determined according to the compensation value. Then, the motor is driven to rotate according to the number of compensation pulses, so that the deviation between the actual rotation angle value of the motor and the preset angle value is reduced.
  • Fig. 2 is a schematic diagram of the deviation curve of the actual angle value and the target angle value of the motor during one revolution of the motor.
  • FIG. 3 is a schematic diagram of the deviation curve of the actual angle value of the motor rotation and the target angle value in the process of one revolution of the motor after using the motor compensation method provided by the embodiment of the present invention.
  • the axis of abscissa represents the target angle value of the motor rotation
  • the axis of ordinate represents the deviation angle value between the target angle value of the motor rotation and the actual angle value.
  • one end of the motor is provided with a turntable.
  • the drive drives the motor to rotate, which in turn drives the turntable to rotate.
  • the turntable is used to place the workpiece to be processed.
  • the workpiece held by the robot On the processing line of the workpiece, the workpiece held by the robot is placed at a fixed position on the turntable. Then process the workpiece placed on a fixed position on the turntable.
  • the motor is driven to rotate by the driver to rotate the turntable by 45°. Then, the manipulator places the next workpiece to be processed to a fixed position on the turntable to process it.
  • the relative position of the workpiece and the turntable is required to be high, which in turn makes the turntable rotate an error of 45° each time within the allowable error range. If the error of 45° rotation of the turntable exceeds the upper limit of the allowable error range, the motor needs to be compensated.
  • the method of motor compensation includes at least the following steps:
  • step S2100 the motor is controlled to rotate a preset angle value multiple times. In this way, every time the motor rotates a preset angle value, the angle measuring instrument measures the angle of the motor rotation once.
  • Step S2200 Obtain multiple sets of actual angle values measured by the angle measuring instrument.
  • Step S2300 Perform average processing on multiple sets of actual angle values to obtain an average actual angle value of motor rotation.
  • Step S2400 Determine the angle deviation value according to the preset angle value and the average actual angle value.
  • step S2500 the compensation value corresponding to the preset angle value of the motor rotation is determined according to the resolution of the encoder and the angle deviation value.
  • step S2600 within each rotation of the motor, and each time the motor rotates by 45°, the motor is driven to rotate using the compensation value.
  • FIG. 4 is a schematic block diagram of a motor compensation device according to an embodiment of the present invention.
  • the motor compensation device includes a control module 4100, an acquisition module 4200, an angle deviation value determination module 4300, a compensation value determination module 4400, and a compensation module 4500.
  • the control module 4100 is used to control the motor to rotate by a preset angle value, where the preset angle value is a 360° angle value corresponding to multiple equal parts.
  • the obtaining module 4200 is used to obtain the actual angle value of the motor rotation measured by the angle measuring instrument.
  • the angle deviation value determination module 4300 is used to determine the angle deviation value according to the preset angle value and the actual angle value.
  • the compensation value determining module 4400 is used to determine the compensation value corresponding to the preset angle value of the motor rotation according to the resolution of the encoder and the angle deviation value.
  • the compensation module 4500 is used to drive the motor to rotate by using the compensation value every time the motor rotates once, and every time the motor rotates a preset angle value.
  • the motor compensation device further includes: an actual angle value processing module.
  • the control module 4100 is further used to control the motor to rotate a preset angle value multiple times.
  • the obtaining module 4200 is further configured to obtain the actual angle value measured by the angle measuring instrument every time the motor rotates a preset angle value once, and obtain multiple sets of actual angle values.
  • the actual angle value processing module is used for averaging multiple sets of actual angle values to obtain the average actual angle value of the motor rotation.
  • the angle deviation value determination module 4300 is further configured to determine the angle deviation value according to the preset angle value and the average actual angle value.
  • the compensation module 4500 is further configured to determine the number of compensation pulses of the driver according to the compensation value; drive the motor to rotate according to the number of compensation pulses.
  • FIG. 5 is a schematic diagram of a hardware structure of a driver according to an embodiment of the present invention.
  • the driver may include a memory 510 and a processor 520.
  • the memory 510 is used to store instructions, which are used to control the processor 520 to operate to execute the motor compensation method according to an embodiment of the present invention.
  • Those skilled in the art may design instructions according to the technical solutions disclosed in the present invention. How instructions control the processor to operate is well known in the art, so embodiments of the present invention will not be described in detail here.
  • the processor can be configured by instructions to implement the driver.
  • the instructions can be stored in the ROM, and when the device is started, the instructions are read from the ROM into the programmable device to implement the driver.
  • the motor compensation method can be cured into a dedicated device (eg, ASIC).
  • the drive can be divided into independent units, or they can be combined together.
  • the driver may be implemented by one of the above-mentioned various implementations, or may be implemented by a combination of two or more of the above-mentioned various implementations.
  • An embodiment of the present invention provides a motor compensation system.
  • the motor compensation system includes a motor and a driver as shown in FIG. 5.
  • the driver is used to control the rotation of the motor by sending out the number of pulses.
  • the motor is controlled to rotate a preset angle value, the actual angle value of the motor rotation measured by an angle measuring instrument is obtained, and the angle deviation value is determined according to the preset angle value and the actual angle value,
  • the compensation value corresponding to the preset angle value of the motor rotation is determined according to the resolution of the encoder and the angle deviation value.
  • the host involved in the present invention may be a system, a method and/or a computer program product.
  • the computer program product may include a computer-readable storage medium loaded with computer-readable program instructions for causing the processor to implement various aspects of the present invention.
  • the computer-readable storage medium may be a tangible device that can hold and store instructions used by the instruction execution device.
  • the computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
  • Computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), and erasable programmable read only memory (EPROM (Or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanical encoding device, such as a computer on which instructions are stored
  • RAM random access memory
  • ROM read only memory
  • EPROM erasable programmable read only memory
  • SRAM static random access memory
  • CD-ROM compact disk read-only memory
  • DVD digital versatile disk
  • memory stick floppy disk
  • mechanical encoding device such as a computer on which instructions are stored
  • the convex structure in the hole card or the groove and any suitable combination of the above.
  • the computer-readable storage medium used here is not to be interpreted as a transient signal itself, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (for example, optical pulses through fiber optic cables), or through wires The transmitted electrical signal.
  • the computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to various computing/processing devices, or to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and/or a wireless network.
  • the network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and/or edge servers.
  • the network adapter card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing/processing device .
  • the computer program instructions for performing the operations of the present invention may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or in one or more programming languages Source code or target code written in any combination.
  • Programming languages include object-oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as "C" language or similar programming languages.
  • Computer readable program instructions can be executed entirely on the user's computer, partly on the user's computer, as an independent software package, partly on the user's computer and partly on a remote computer, or completely on the remote computer or server carried out.
  • the remote computer may be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (eg, using an Internet service provider to pass the Internet connection).
  • electronic circuits such as programmable logic circuits, field programmable gate arrays (FPGAs), or programmable logic arrays (PLA), are personalized by utilizing the status information of computer-readable program instructions.
  • Computer-readable program instructions are executed to implement various aspects of the present invention.
  • These computer-readable program instructions can be provided to the processor of a general-purpose computer, special-purpose computer, or other programmable data processing device, thereby producing a machine that causes these instructions to be executed by the processor of a computer or other programmable data processing device A device that implements the functions/actions specified in one or more blocks in the flowchart and/or block diagram is generated.
  • the computer-readable program instructions may also be stored in a computer-readable storage medium. These instructions cause the computer, programmable data processing apparatus, and/or other devices to work in a specific manner. Therefore, the computer-readable medium storing the instructions includes An article of manufacture that includes instructions to implement various aspects of the functions/acts specified in one or more blocks in the flowchart and/or block diagram.
  • the computer-readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other equipment, so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other equipment to produce a computer-implemented process , So that the instructions executed on the computer, other programmable data processing device, or other equipment implement the functions/acts specified in one or more blocks in the flowchart and/or block diagram.
  • each block in the flowchart or block diagram may represent a module, a program segment, or a part of an instruction, and a module, a program segment, or a part of an instruction contains one or more executables for implementing a specified logical function instruction.
  • the functions marked in the blocks may also occur in an order different from that marked in the drawings. For example, two consecutive blocks can actually be executed substantially in parallel, and sometimes they can also be executed in reverse order, depending on the functions involved.
  • each block in the block diagrams and/or flowcharts, and combinations of blocks in the block diagrams and/or flowcharts can be implemented with a dedicated hardware-based system that performs specified functions or actions Or, it can be realized by a combination of dedicated hardware and computer instructions. It is well known to those skilled in the art that implementation by hardware, implementation by software, and implementation by combining software and hardware are all equivalent.

Abstract

一种电机补偿方法、装置、驱动器及系统,其中,所述方法包括:控制电机转动预设角度值,其中,所述预设角度值为360°平分为多等份对应的角度值(S1100);获取角度测量仪测量得到的所述电机转动的实际角度值(S1200);根据所述预设角度值和所述实际角度值确定角度偏差值(S1300);根据编码器的分辨率和所述角度偏差值确定所述电机转动预设角度值对应的补偿值(S1400);在所述电机每转动一圈内,且所述电机每转动所述预设角度值,利用所述补偿值驱动所述电机转动(S1500)。

Description

电机补偿方法、装置、驱动器及系统 技术领域
本发明涉及电机设备技术领域,更具体地,涉及一种电机补偿方法、一种电机补偿装置、一种驱动器以及一种电机补偿系统。
背景技术
随着工业的高速发展,现代工业对于电机定位精度的要求越来越高。
直驱式旋转电机(DDR)作为电机中的一种,主要是依靠电机内部的编码器来实现定位。目前常用的编码器包括光栅编码器和磁栅编码器。
使用光栅编码器实现定位时精确性较高,但是光栅编码器的价格昂贵,增加了生产成本。使用磁栅编码器实现定位时精确性较差。
因此,有必要针对上述现有技术中的技术问题进行改进。
发明内容
本发明的一个目的是提供一种用于电机角位移补偿的新技术方案。
根据本发明的第一方面,提供了一种电机补偿方法,其特征在于,包括:
控制电机转动预设角度值,其中,所述预设角度值为360°平分为多等份对应的角度值;
获取角度测量仪测量得到的所述电机转动的实际角度值;
根据所述预设角度值和所述实际角度值确定角度偏差值;
根据编码器的分辨率和所述角度偏差值确定所述电机转动预设角度值对应的补偿值;
在所述电机每转动一圈内,且所述电机每转动所述预设角度值,利用所述补偿值驱动所述电机转动。
可选地,所述控制电机转动预设角度值,获取角度测量仪测量得到的所述电机转动的实际角度值,根据所述预设角度值和所述实际角度值确定角度偏差值包括:
控制所述电机转动多次预设角度值;
在所述电机每转动一次预设角度值时,获取所述角度测量仪测量得到的实际角度值,得到多组实际角度值;
对所述多组实际角度值进行平均处理,得到所述电机转动的平均实际角度值;
根据所述预设角度值和所述平均实际角度值确定角度偏差值。
可选地,所述利用所述补偿值驱动所述电机转动包括:
根据所述补偿值确定驱动器的补偿脉冲数;根据所述补偿脉冲数驱动所述电机转动。
可选地,所述预设角度值为360°平分为8等份对应的角度值,或者,所述预设角度值为360°平分为16等份对应的角度值。
可选地,所述编码器为光栅编码器和磁栅编码器中的任一种。
可选地,所述电机为DDR电机。
根据本发明的第二方面,提供了一种电机补偿装置,包括:
控制模块,用于控制电机转动预设角度值,其中,所述预设角度值为360°平分为多等份对应的角度值;
获取模块,用于获取角度测量仪测量得到的所述电机转动的实际角度值;
角度偏差值确定模块,用于根据所述预设角度值和所述实际角度值确定角度偏差值;
补偿值确定模块,用于根据编码器的分辨率和所述角度偏差值确定所述电机转动预设角度值对应的补偿值;
补偿模块,用于在所述电机每转动一圈内,且所述电机每转动所述预设角度值,利用所述补偿值驱动所述电机转动。
可选地,所述装置还包括:实际角度值处理模块,
所述控制模块进一步用于控制所述电机转动多次预设角度值;
所述获取模块进一步用于在所述电机每转动一次预设角度值时,获取所述角度测量仪测量得到的实际角度值,得到多组实际角度值;
所述实际角度值处理模块用于所述对所述多组实际角度值进行平均处理,得到所述电机转动的平均实际角度值;
角度偏差值获取模块进一步用于根据所述预设角度值和所述平均实际角度值确定角度偏差值。
本发明的第三方面,提供了一种驱动器,包括:存储器和处理器,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据第一方面中任一项所述的方法。
本发明的第四方面,提供了一种电机补偿系统,包括电机和如第二方面或第三方面所述的驱动器。
根据本发明的一个实施例,控制电机转动预设角度值,获取角度测量仪测量得到的所述电机转动的实际角度值,根据所述预设角度值和所述实际角度值确定角度偏差值,根据编码器的分辨率和所述角度偏差值确定所述电机转动预设角度值对应的补偿值,在所述电机每转动一圈内,且所述电机每转动所述预设角度值,利用所述补偿值驱动所述电机转动,使得电机角位移能够达到设定的目标角位移。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1是根据本发明实施例的电机补偿方法的示意性流程图。
图2是电机转动一圈的过程中电机转动的实际角度值和目标角度值的偏差曲线示意图。
图3是使用本发明实施例提供的电机补偿方法后电机转动一圈的过程中电机转动的实际角度值和目标角度值的偏差曲线示意图。
图4为根据本发明实施例的电机补偿装置的示意性原理框图。
图5是根据本发明实施例的驱动器的硬件结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<方法实施例>
图1是根据本发明实施例的电机补偿方法的示意性流程图。本发明实施例涉及的电机可以为任一类型的旋转电机,例如,DDR电机。
根据图1所示,该电机补偿方法至少包括以下步骤:
步骤S1100,控制电机转动预设角度值,其中,预设角度值为360°平分为多等份对应的角度值。
预设角度值可以根据实际测试情况而定。例如,预设角度值为360°平分为8等份对应的角度值,或者,所述预设角度值为360°平分为16等份对应的角度值。
步骤S1200,获取角度测量仪测量得到的电机转动的实际角度值。
需要说明地是,角度测量仪的测量精度高于与电机搭配使用的编码器的测量精度,满足本发明实施例提供的电机补偿方法的测试要求。
步骤S1300,根据预设角度值和实际角度值确定角度偏差值。
在本发明的一个实施例中,为了提高电机转动的实际角度值的确定精度,控制电机转动多次预设角度值。在电机每转动一次预设角度值时,角度测量仪均进行一次电机转动的角度的测量。这样可以获取角度测量仪测量得到的多组实际角度值。然后对多组实际角度值进行平均处理,得到电机转动的平均实际角度值。根据预设角度值和平均实际角度值确定角度偏差值。
步骤S1400,根据编码器的分辨率和角度偏差值确定电机转动预设角度值对应的补偿值。
本发明实施例中,基于以下计算式得到电机转动预设角度值对应的补偿值,
Figure PCTCN2019127777-appb-000001
其中,c为电机转动预设角度值对应的补偿值,r为编码器分辨率,b为角度偏差值。
需要说明地是,与电机搭配使用的编码器可以是光栅编码器和磁栅编码器中的任一种。光栅编码器为精度较低的光栅编码器。
步骤S1500,在电机每转动一圈内,且电机每转动预设角度值,利用补偿值驱动电机转动。
驱动器通过发出脉冲数控制电机转动。在本发明实施例中,根据补偿值确定驱动器的补偿脉冲数。然后根据补偿脉冲数驱动电机转动,以使电机的实际转动角度值与预设角度值之间的偏差减小。
图2是电机转动一圈的过程中电机转动的实际角度值和目标角度值的偏差曲线示意图。图3是使用本发明实施例提供的电机补偿方法后电机转动一圈的过程中电机转动的实际角度值和目标角度值的偏差曲线示意图。
图2和图3示出的偏差曲线中,横坐标轴代表电机转动的目标角度值,纵坐标轴代表电机转动的目标角度值和实际角度值的偏差角度值。
根据图2示出的偏差曲线和图3示出的偏差曲线,可以得出利用本发明实施例提供的电机补偿方法后,电机转动的实际角度值和目标角度值的偏差变小。
<例子1>
在本发明实施例中,电机的一端设置有转盘。通过驱动器带动电机转动,进而带动转盘转动。该转盘用于放置待加工工件。
在工件的加工流水线上,通过机械手将其夹持的工件放置到转盘上的固定位置。然后对放置到转盘上的固定位置的工件进行加工处理。当完成该工件的加工后,通过驱动器带动电机转动,以使转盘转动45°。然后,机械手将下一个待加工工件放置到转盘上的固定位置,以对其进行加工处理。
由于工件的加工精度的要求,使得工件与转盘的相对位置要求较高,进而使得转盘每次转动45°的误差需控制允许误差范围内。如果转盘每次转动45°的误差超过允许误差范围的上限值时,需要对电机进行补偿。
电机补偿的方法至少包括以下步骤:
步骤S2100,控制电机转动多次预设角度值。这样,在电机每转动一次预设角度值时,角度测量仪均进行一次电机转动的角度的测量。
步骤S2200,获取角度测量仪测量得到的多组实际角度值。
步骤S2300,对多组实际角度值进行平均处理,得到电机转动的平均实际角度值。
步骤S2400,根据预设角度值和平均实际角度值确定角度偏差值。
步骤S2500,根据编码器的分辨率和角度偏差值确定电机转动预设角度值对应的补偿值。
步骤S2600,在电机每转动一圈内,且电机每转动45°,利用补偿值驱动电机转动。
<装置实施例>
图4为根据本发明实施例的电机补偿装置的示意性原理框图。
根据图4所示,本发明实施例的电机补偿装置包括控制模块4100、获取模块4200、角度偏差值确定模块4300、补偿值确定模块4400和补偿模块4500。
控制模块4100用于控制电机转动预设角度值,其中,预设角度值为 360°平分为多等份对应的角度值。
获取模块4200用于获取角度测量仪测量得到的电机转动的实际角度值。
角度偏差值确定模块4300用于根据预设角度值和实际角度值确定角度偏差值。
补偿值确定模块4400用于根据编码器的分辨率和角度偏差值确定电机转动预设角度值对应的补偿值。
补偿模块4500用于在电机每转动一圈内,且电机每转动预设角度值,利用补偿值驱动电机转动。
在本发明的一个实施例中,电机补偿装置还包括:实际角度值处理模块。
控制模块4100进一步用于控制电机转动多次预设角度值。
获取模块4200进一步用于在电机每转动一次预设角度值时,获取角度测量仪测量得到的实际角度值,得到多组实际角度值。
实际角度值处理模块用于对多组实际角度值进行平均处理,得到电机转动的平均实际角度值。
角度偏差值确定模块4300进一步用于根据预设角度值和平均实际角度值确定角度偏差值。
在本发明的一个实施例中,补偿模块4500进一步用于根据补偿值确定驱动器的补偿脉冲数;根据补偿脉冲数驱动电机转动。
图5是根据本发明实施例的驱动器的硬件结构示意图。
根据图5所示,驱动器可以包括存储器510和处理器520。
存储器510用于存储指令,该指令用于控制处理器520进行操作以执行根据本发明实施例的电机补偿方法,本领域技术人员可以根据本发明所公开的技术方案设计指令。指令是如何控制处理器进行操作,这是本领域的公知,故本发明实施例在此不再详细描述。
本领域技术人员应当明白,可以通过各种方式来。例如,可以通过指令配置处理器来实现驱动器。例如,可以将指令存储在ROM中,并且当启动设备时,将指令从ROM读取到可编程器件中来实现驱动器。例如, 可以将电机补偿方法固化到专用器件(例如ASIC)中。可以将驱动器分成相互独立的单元,或者可以将它们合并在一起实现。驱动器可以通过上述各种实现方式中的一种来实现,或者可以通过上述各种实现方式中的两种或更多种方式的组合来实现。
本发明的一个实施例提供了一种电机补偿系统。该电机补偿系统包括电机和如图5示出的驱动器。该驱动器用于通过发出脉冲数控制电机转动。
根据本发明的一个实施例,控制电机转动预设角度值,获取角度测量仪测量得到的所述电机转动的实际角度值,根据所述预设角度值和所述实际角度值确定角度偏差值,根据编码器的分辨率和所述角度偏差值确定所述电机转动预设角度值对应的补偿值,在所述电机每转动一圈内,且所述电机每转动所述预设角度值,利用所述补偿值驱动所述电机转动,使得电机角位移能够达到设定的目标角位移。
本发明涉及的主机可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/ 或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的 计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。

Claims (10)

  1. 一种电机补偿方法,其特征在于,包括:
    控制电机转动预设角度值,其中,所述预设角度值为360°平分为多等份对应的角度值;
    获取角度测量仪测量得到的所述电机转动的实际角度值;
    根据所述预设角度值和所述实际角度值确定角度偏差值;
    根据编码器的分辨率和所述角度偏差值确定所述电机转动预设角度值对应的补偿值;
    在所述电机每转动一圈内,且所述电机每转动所述预设角度值,利用所述补偿值驱动所述电机转动。
  2. 根据权利要求1所述的方法,其特征在于,所述控制电机转动预设角度值,获取角度测量仪测量得到的所述电机转动的实际角度值,根据所述预设角度值和所述实际角度值确定角度偏差值包括:
    控制所述电机转动多次预设角度值;
    在所述电机每转动一次预设角度值时,获取所述角度测量仪测量得到的实际角度值,得到多组实际角度值;
    对所述多组实际角度值进行平均处理,得到所述电机转动的平均实际角度值;
    根据所述预设角度值和所述平均实际角度值确定角度偏差值。
  3. 根据权利要求1所述的方法,其特征在于,所述利用所述补偿值驱动所述电机转动包括:
    根据所述补偿值确定驱动器的补偿脉冲数;根据所述补偿脉冲数驱动所述电机转动。
  4. 根据权利要求1所述的方法,其特征在于,所述预设角度值为360°平分为8等份对应的角度值,或者,所述预设角度值为360°平分为16等份对应的角度值。
  5. 根据权利要求1所述的方法,其特征在于,所述编码器为光栅编码 器和磁栅编码器中的任一种。
  6. 根据权利要求1所述的方法,其特征在于,所述电机为DDR电机。
  7. 一种电机补偿装置,其特征在于,包括:
    控制模块,用于控制电机转动预设角度值,其中,所述预设角度值为360°平分为多等份对应的角度值;
    获取模块,用于获取角度测量仪测量得到的所述电机转动的实际角度值;
    角度偏差值确定模块,用于根据所述预设角度值和所述实际角度值确定角度偏差值;
    补偿值确定模块,用于根据编码器的分辨率和所述角度偏差值确定所述电机转动预设角度值对应的补偿值;
    补偿模块,用于在所述电机每转动一圈内,且所述电机每转动所述预设角度值,利用所述补偿值驱动所述电机转动。
  8. 根据权利要求7所述的装置,其特征在于,所述装置还包括:实际角度值处理模块,
    所述控制模块进一步用于控制所述电机转动多次预设角度值;
    所述获取模块进一步用于在所述电机每转动一次预设角度值时,获取所述角度测量仪测量得到的实际角度值,得到多组实际角度值;
    所述实际角度值处理模块用于所述对所述多组实际角度值进行平均处理,得到所述电机转动的平均实际角度值;
    角度偏差值确定模块进一步用于根据所述预设角度值和所述平均实际角度值确定角度偏差值。
  9. 一种驱动器,其特征在于,包括:存储器和处理器,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据权利要求1-6中任一项所述的方法。
  10. 一种电机补偿系统,其特征在于,包括电机和如权利要求7或8所述的驱动器。
PCT/CN2019/127777 2018-12-26 2019-12-24 电机补偿方法、装置、驱动器及系统 WO2020135389A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811602543.5 2018-12-26
CN201811602543.5A CN109560743B (zh) 2018-12-26 2018-12-26 电机补偿方法、装置、驱动器及系统

Publications (1)

Publication Number Publication Date
WO2020135389A1 true WO2020135389A1 (zh) 2020-07-02

Family

ID=65871359

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/127777 WO2020135389A1 (zh) 2018-12-26 2019-12-24 电机补偿方法、装置、驱动器及系统

Country Status (2)

Country Link
CN (1) CN109560743B (zh)
WO (1) WO2020135389A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109560743B (zh) * 2018-12-26 2020-10-02 歌尔股份有限公司 电机补偿方法、装置、驱动器及系统
CN111337876B (zh) * 2020-03-04 2022-09-27 广东博智林机器人有限公司 定位装置及目标定位方法
CN112171607A (zh) * 2020-09-29 2021-01-05 无锡华光环保能源集团股份有限公司 一种大型筒体类件转动控制方法
CN113476111B (zh) * 2021-07-08 2023-01-24 上海导向医疗系统有限公司 乳腺旋切系统及其电机控制系统、控制方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102554710A (zh) * 2012-02-28 2012-07-11 浙江大学 一种机床回转工作台转角误差的测量装置和方法
US20130154537A1 (en) * 2011-12-16 2013-06-20 Denso Corporation Motor control apparatus
CN203251267U (zh) * 2013-04-28 2013-10-23 京滨电子装置研究开发(上海)有限公司 控制装置和车辆驱动系统
CN103954316A (zh) * 2014-04-30 2014-07-30 湖南大学 一种角度编码器的标定方法及装置
CN204794777U (zh) * 2015-07-16 2015-11-18 周海波 一种无刷电机转子位置误差校准装置
CN106411211A (zh) * 2016-11-25 2017-02-15 西安科技大学 一种混合式光电编码器的绝对位置信号标定系统及方法
CN109560743A (zh) * 2018-12-26 2019-04-02 歌尔股份有限公司 电机补偿方法、装置、驱动器及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104079218B (zh) * 2014-06-17 2016-07-20 南京航空航天大学 一种电机转子位置角度获得方法
CN106655640B (zh) * 2016-11-25 2017-08-08 西安科技大学 混合式光电编码器的绝对位置信号校正值确定方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130154537A1 (en) * 2011-12-16 2013-06-20 Denso Corporation Motor control apparatus
CN102554710A (zh) * 2012-02-28 2012-07-11 浙江大学 一种机床回转工作台转角误差的测量装置和方法
CN203251267U (zh) * 2013-04-28 2013-10-23 京滨电子装置研究开发(上海)有限公司 控制装置和车辆驱动系统
CN103954316A (zh) * 2014-04-30 2014-07-30 湖南大学 一种角度编码器的标定方法及装置
CN204794777U (zh) * 2015-07-16 2015-11-18 周海波 一种无刷电机转子位置误差校准装置
CN106411211A (zh) * 2016-11-25 2017-02-15 西安科技大学 一种混合式光电编码器的绝对位置信号标定系统及方法
CN109560743A (zh) * 2018-12-26 2019-04-02 歌尔股份有限公司 电机补偿方法、装置、驱动器及系统

Also Published As

Publication number Publication date
CN109560743A (zh) 2019-04-02
CN109560743B (zh) 2020-10-02

Similar Documents

Publication Publication Date Title
WO2020135389A1 (zh) 电机补偿方法、装置、驱动器及系统
JP6154401B2 (ja) 高分解能アブソリュート・エンコーダ
KR100889961B1 (ko) 스텝 모터 위치 오차 보정 방법 및 시스템
US11356044B2 (en) Method for detecting motor initial phase and phase sequence and system for controlling permanent-magnet synchronous motor
WO2020034977A1 (zh) 电机补偿方法、驱动器、机械臂关节模组及机械臂
TWI564548B (zh) 旋轉編碼器的自校正方法
JP2012038312A (ja) 制御システム及びこの制御システムに用いる位置推定方法
CN103395073A (zh) 一种六轴工业机器人的零点标定方法
US9507338B2 (en) Motor control device and correction data generation method in same
JP2010067905A (ja) ウエハのアライメント方法及び装置
CN111197954A (zh) 一种机器的绝对位置测量方法、装置、存储介质及机器
JP6352540B2 (ja) 検出装置、回転角度検出装置、検出方法、およびプログラム
CN104816316A (zh) 转臂零点标定装置及具有其的机器人
CN110849387A (zh) 一种传感器参数标定方法和装置
CN112478540B (zh) 控制托盘转动的方法和装置
CN113691182B (zh) 永磁同步电机的电阻辨识方法、系统、介质及终端
US10422668B2 (en) Method and program for angle calibration of rotary shaft
JP2012192498A (ja) ロボット制御装置およびキャリブレーション方法
CN109658384B (zh) 屏幕测试定位的控制方法、装置及系统
WO2020133471A1 (zh) 转动角度的检测方法及装置
JP6719684B1 (ja) 数値制御装置
US9855656B2 (en) Robot control device for controlling motor-driven robot
CN110045279B (zh) 电机的力矩和电流的比例关系标定方法、系统及终端设备
US8504207B2 (en) Electronic device and method for controlling motions of mechanical arm using the electronic device
CN113778019B (zh) 机床奇异点问题规避方法、装置、电子设备及存储介质

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: 19903268

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: 19903268

Country of ref document: EP

Kind code of ref document: A1