Motor control device, positioning device, and motor control method

JPWO2025027795A1Active Publication Date: 2025-02-06MITSUBISHI ELECTRIC CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2025538118
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-08-01
Publication Date
2025-02-06
Estimated Expiration
2043-08-01

AI Technical Summary

Technical Problem

Conventional motor control devices fail to adequately suppress positioning errors caused by vibrations in the device mount during high-speed and high-acceleration movements, particularly in the miniaturization context of electronic components and IC chips, due to inaccuracies in vibration model parameters.

Method used

A motor control device that estimates mount vibrations using a motor thrust command and calculated parameters, generates a vibration error correction signal to adjust the motor thrust, and updates parameters based on actual detected relative positions to improve positioning accuracy.

Benefits of technology

The solution effectively suppresses positioning errors by accurately estimating mount vibrations and adjusting motor thrust, enhancing the precision and reliability of positioning operations, even under high-speed and high-acceleration conditions.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

A motor control device (110) comprises: a moving body position command generation unit (4) that generates a moving body position command; a motor position acquisition unit (5) that acquires a motor position detection value; a frame vibration estimation unit (7) that calculates a frame vibration estimation value on the basis of thrust generated by the motor and a frame weight estimation value; a vibration error correction signal computation unit (8) that, on the basis of the frame vibration estimation value, calculates a vibration error correction signal for suppressing any error caused by the vibration of a device frame included in the relative position of the moving body with respect to a target position; a motor drive control unit (6) that generates a motor thrust command on the basis of the moving body position command, the motor position detection value, and the vibration error correction signal; a relative position acquisition unit (11) that acquires a moving body relative position detection value from an image captured by a camera for imaging the target position; a frame vibration calculation unit (12) that calculates a frame vibration calculation value from the moving body relative position detection value; and a frame weight estimation unit (15) that calculates the frame weight estimation value from the frame vibration calculation value and the thrust generated by the motor.
Need to check novelty before this filing date? Find Prior Art

Description

Motor control device, positioning device, and motor control method

[0001] The present disclosure relates to a motor control device, a positioning device, and a motor control method for positioning a moving body relative to a target position.

[0002] Motor control devices are known that control the thrust generated by the motor to position a moving body connected to the motor relative to a target position. For example, such motor control devices are used in the manufacturing fields of electronic circuit boards and semiconductors, and are installed in manufacturing devices such as chip mounters and chip bonders that mount electronic components, IC (Integrated Circuit) chips, and the like on substrates. In this case, the moving body is a mounting head equipped with a suction nozzle that grasps and carries the electronic components, IC chips, and other objects to be mounted. The mounting head moves to an area where electronic components or IC chips are supplied, picks up the supplied electronic components or IC chips with the suction nozzle, and then moves to a target position on the substrate and releases the electronic components or IC chips from the suction nozzle, thereby mounting the electronic components or IC chips on the substrate.

[0003] The mounting head is moved by a combination of a rotary motor and a linear motion mechanism or a linear motor mechanism, and the position of the moving body is determined by feedback control based on the value detected by an encoder that detects the rotational position of the motor or the position of the linear motor mover. In other words, feedback control is not performed by directly detecting whether the suction nozzle or the object to be mounted is actually positioned at the target position on the board.

[0004] In recent years, electronic components and IC chips have become increasingly miniaturized, requiring higher accuracy in positioning. Furthermore, to improve productivity, there is also a need to shorten the time it takes to pick up and release electronic components and IC chips, which requires that the mounting head be moved at high speed, acceleration, or deceleration. When the mounting head moves at high acceleration or deceleration, the mounting stand on which the mounting head and the board are mounted vibrates, and this vibration can cause a vibration-related error between the moving body and the target position on the board. Vibration of the mounting stand can result in a positioning error of the moving body.

[0005] Patent Document 1 discloses a technology for correcting positioning errors of a moving body by processing an image captured by a camera, calculating a target position in the captured image, and moving the moving body based on the current target position estimated by compensating for delays associated with capturing and image processing. Patent Document 1 further discloses that, for errors caused by gantry vibration, a gantry vibration model is used to estimate the current target position and correct the error.

[0006] Japanese Patent Application Laid-Open No. 2015-213139

[0007] However, the conventional technology described above has a problem in that the parameters used in the gantry vibration model are not set appropriately, and positioning errors due to vibration of the device gantry may not be sufficiently suppressed. The gantry vibration model used in the conventional technology described above uses parameters such as the mass of the moving parts. While these parameters can be calculated from the design data of the device in an ideal case, actual devices often do not have the characteristics as designed, and therefore it is highly likely that the vibration of the device gantry cannot be accurately estimated even if the parameters calculated from the design data of the device are used.

[0008] The present disclosure has been made in view of the above, and has an object to provide a motor control device that can suppress positioning errors caused by vibrations of the device stand.

[0009] In order to solve the above-mentioned problems and achieve the objectives, the motor control device of the present disclosure is a motor control device that stops a moving body at a predetermined position relative to a target position by controlling the thrust generated by a motor mechanically connected to a moving body that is movably installed relative to an equipment pedestal based on a motor thrust command, and has: a moving body position command generation unit that generates a moving body position command to stop the moving body at a predetermined position relative to the target position; a motor position acquisition unit that acquires a motor position detection value that is a time waveform of the motor's position coordinates; a pedestal vibration estimation unit that calculates a pedestal vibration estimate that estimates the vibration of the equipment pedestal based on the thrust generated by the motor and a pedestal weight estimate that estimates the weight of the equipment pedestal; a vibration error correction signal calculation unit that calculates a vibration error correction signal based on the pedestal vibration estimate value to suppress errors caused by the vibration of the equipment pedestal included in the relative position of the moving body with respect to the target position; and a motor drive control unit that generates a motor thrust command based on the moving body position command, the motor position detection value, and the vibration error correction signal. The motor control device also includes a relative position acquisition unit that acquires a moving body relative position detection value, which is a time waveform of the position coordinates of the moving body relative to the target position, from an image captured by a camera that captures the target position; a base vibration calculation unit that calculates a base vibration calculation value from the moving body relative position detection value; and a base weight estimation unit that calculates a base weight estimate that estimates the weight of the device base from the base vibration calculation value and the thrust generated by the motor, and is characterized in that the base vibration estimation unit calculates the base vibration estimate value using the base weight estimate value estimated by the base weight estimation unit.

[0010] According to the present disclosure, it is possible to suppress positioning errors caused by vibrations of the device stand.

[0011] FIG. 1 is a diagram showing the configuration of a positioning device according to a first embodiment; FIG. 2 is a diagram showing an example of how a device pedestal vibrates; FIG. 3 is a flowchart for explaining the operation of a motor control device according to the first embodiment to control a motor; FIG. 4 is a flowchart for explaining the operation of a motor control device according to the first embodiment to update parameters used to estimate pedestal vibration; FIG. 5 is a diagram showing dedicated hardware for realizing the function of a motor control device; FIG. 6 is a diagram showing the configuration of a control circuit for realizing the function of a motor control device; FIG. 7 is a diagram showing the configuration of a positioning device according to a second embodiment;

[0012] A motor control device, a positioning device, and a motor control method according to embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.

[0013] First Embodiment. FIG. 1 is a diagram showing the configuration of a positioning device 100 according to a first embodiment. The positioning device 100 includes a motor 1 installed on an equipment stand 2, the equipment stand 2, and a moving body 3 mechanically connected to the motor 1. The moving body 3 is movable relative to the equipment stand 2 by thrust generated by the motor 1. For example, the moving body 3 is attached to the top of the equipment stand 2 and is movable in the space above a work surface on the equipment stand 2. A target position 9 is provided on the work surface, and the moving body 3 is controlled so that its relative position with respect to the target position 9 is a predetermined position. The positioning device 100 also includes a camera 10 that captures an image of the target position 9. The camera 10 is fixed relative to the moving body 3 and its position changes as the moving body 3 moves. In the first embodiment, it is assumed that the image captured by the camera 10 includes the target position 9 even when the camera 10 moves.

[0014] The positioning device 100 is mounted, for example, on a manufacturing device that manufactures electronic circuit boards, semiconductors, and the like used in electronic devices. When the positioning device 100 is mounted on a manufacturing device for electronic circuit boards, semiconductors, and the like, the movable body 3 is equipped, for example, with a means for performing a predetermined task, and can perform the task at a stopping position after moving to a target position 9. For example, the movable body 3 may be a mounting head equipped with a means for gripping an object, such as a suction nozzle. When the movable body 3 is a mounting head, the movable body 3 moves over the substrate while gripping an object such as an electronic component or IC chip using the suction nozzle, and when it stops at a target position 9 set on the substrate, it releases the gripped object, thereby mounting the electronic component or IC chip on the substrate.

[0015] The positioning device 100 further includes a motor control device 110 that controls the motor 1. The motor control device 110 controls the thrust generated by the motor 1 based on a motor thrust command. The motor control device 110 includes a moving body position command generation unit 4, a motor position acquisition unit 5, a motor drive control unit 6, a gantry vibration estimation unit 7, a vibration error correction signal calculation unit 8, a relative position acquisition unit 11, a gantry vibration calculation unit 12, a gantry vibration characteristic setting unit 13, an estimation switching unit 14, a gantry weight estimation unit 15, a gantry vibration frequency estimation unit 16, and a gantry vibration damping coefficient estimation unit 17.

[0016] The mobile body position command generator 4 generates a mobile body position command for stopping the mobile body 3 at a predetermined position relative to the target position 9. The mobile body position command generator 4 outputs the generated mobile body position command to the motor drive controller 6. The mobile body position command may be for stopping the mobile body 3 directly above the target position 9, or for stopping the mobile body 3 at a position where it can perform a predetermined task with respect to the target position 9. For example, if the mobile body 3 is a mounting head, the mobile body position command may be for stopping the mobile body 3 at a predetermined position relative to the target position 9 so that the position of the suction nozzle of the mobile body 3 overlaps with the target position 9, so that the mobile body 3 can mount an object such as an electronic component at the target position 9.

[0017] The motor position acquisition unit 5 acquires a motor position detection value, which is a time waveform of the position coordinates of the motor 1. The motor position acquisition unit 5 outputs the acquired motor position detection value to each of the motor drive control unit 6 and the gantry vibration calculation unit 12.

[0018] The motor drive control unit 6 generates a motor thrust command based on the mobile object position command output by the mobile object position command generation unit 4, the motor position detection value output by the motor position acquisition unit 5, and a vibration error correction signal output by a vibration error correction signal calculation unit 8 (described later). The motor drive control unit 6 outputs the motor thrust command to the motor 1, thereby controlling the thrust generated by the motor 1. The mobile object 3 moves when the motor 1 generates thrust in accordance with the motor thrust command.

[0019] The gantry vibration estimation unit 7 calculates an estimated gantry vibration waveform that estimates the gantry vibration occurring in the device gantry 2, based on a motor thrust command indicating the thrust generated by the motor 1 and parameters set by the gantry vibration characteristic setting unit 13. The gantry vibration estimation unit 7 outputs the calculated estimated gantry vibration waveform to the vibration error correction signal calculation unit 8 as a gantry vibration estimated value.

[0020] The vibration error correction signal calculation unit 8 calculates a vibration error correction signal for suppressing an error occurring in the position of the moving body 3 due to vibration of the device pedestal 2 from the pedestal vibration estimated value output by the pedestal vibration estimation unit 7. The vibration error correction signal calculation unit 8 outputs the calculated vibration error correction signal to the motor drive control unit 6.

[0021] As described above, the motor control device 110 controls the operation of positioning the moving body 3 relative to the target position 9 based on the moving body position command generated by the moving body position command generator 4. At this time, if a disturbance such as friction occurs or if there is an error between the thrust of the motor 1 moving the moving body 3 and the motor thrust command output from the motor drive controller 6, a positioning error will occur in the moving body 3 relative to the target position 9. Therefore, the motor drive controller 6 operates the motor 1 so as to position the moving body 3 relative to the target position 9 by successively changing the motor thrust command based on the motor position detection value, which is the detection value of the position of the motor 1 acquired by the motor position acquirer 5. However, when the motor 1 and the moving body 3 repeatedly accelerate and decelerate, the reaction force is transmitted to the device pedestal 2, which may cause the device pedestal 2 to vibrate.

[0022] Fig. 2 is a diagram showing an example of the vibration of the device pedestal 2. Fig. 2 shows the state in which the device pedestal 2 is rocking vibrating so as to rotate around the bottom of the device pedestal 2 due to a reaction force caused by acceleration and deceleration of the motor 1 and the moving body 3. When the device pedestal 2 vibrates, the motor 1, the moving body 3, and the target position 9 installed on the device pedestal 2 also vibrate in conjunction with the vibration of the device pedestal 2.

[0023] 2, when the vibration waveform of the moving body 3 when the device pedestal 2 is vibrating is Ah(t)×sin(ωt+φ) and the vibration waveform of the target position 9 is Ao(t)×sin(ωt+φ), the relationship between the vibration waveform of the moving body 3 and the vibration waveform of the target position 9 can be expressed as R×Ah(t)×sin(ωt+φ)=Ao(t)×sin(ωt+φ) using a coefficient R (0<R≦1). In other words, due to the vibration of the device pedestal 2, a vibration waveform of (1−R)Ah(t)×sin(ωt+φ) is generated as a relative error between the moving body 3 and the target position 9.

[0024] The vibration of the device pedestal 2, which is the cause of the relative error, is due to acceleration and deceleration of the motor 1 and the moving body 3, and therefore the above-mentioned pedestal vibration estimating unit 7 can calculate the vibration waveform of the device pedestal 2 from the motor thrust command. Specifically, if an estimated pedestal weight value that is an estimate of the weight of the device pedestal 2 is m, an estimated pedestal vibration frequency value that is an estimate of the vibration frequency of the device pedestal 2 is ω, and an estimated pedestal vibration damping coefficient value that is an estimate of the vibration damping coefficient of the device pedestal 2 is ζ, the pedestal vibration estimating unit 7 can calculate the vibration waveform of the device pedestal 2 using the equation of motion shown in the following group of formulas (1):

[0025]

[0026] The gantry vibration estimation unit 7 outputs the waveform (1-R)Ah(t)×sin(ωt+φ), which is the estimated vibration waveform of the device gantry 2 multiplied by (1-R), to the vibration error correction signal calculation unit 8 as the gantry vibration estimated value.

[0027] The vibration error correction signal calculation unit 8 calculates a vibration error correction signal so as to move the motor 1 and the moving body 3 with a waveform (-1) × (1-R)Ah(t) × sin(ωt + φ) that is the inverse of the waveform output by the gantry vibration estimation unit 7. This cancels out the vibration of (1-R)Ah(t) × sin(ωt + φ) that occurs as a relative error between the moving body 3 and the target position 9 due to the vibration of the device gantry 2, thereby suppressing the error.

[0028] Here, if the values ​​of the gantry weight estimate m, gantry vibration frequency estimate ω, and gantry vibration damping coefficient estimate ζ used by the gantry vibration estimation unit 7 differ from the characteristics of the actual device gantry 2, the estimation accuracy of the gantry vibration estimate will decrease, making it difficult to suppress the relative error occurring between the moving body 3 and the target position 9. Therefore, the motor control device 110 has a function of updating the values ​​of the gantry weight estimate m, gantry vibration frequency estimate ω, and gantry vibration damping coefficient estimate ζ used by the gantry vibration estimation unit 7 using the moving body relative position detection value of the moving body 3 that is actually detected.

[0029] The relative position acquisition unit 11 acquires an image captured by the camera 10, detects the position of the target position 9 in the acquired captured image from the acquired captured image, and acquires a moving body relative position detection value as the position of the moving body 3 relative to the target position 9. The relative position acquisition unit 11 outputs the acquired moving body relative position detection value to the gantry vibration calculation unit 12.

[0030] The gantry vibration calculation unit 12 calculates the vibration waveform of the vibration occurring in the device gantry 2 based on the motor position detection value output by the motor position acquisition unit 5 and the moving body relative position detection value output by the relative position acquisition unit 11. The gantry vibration calculation unit 12 outputs the calculated vibration waveform as a gantry vibration calculation value to each of the gantry weight estimation unit 15, the gantry vibration frequency estimation unit 16, and the gantry vibration damping coefficient estimation unit 17. Since the motor position detection value indicates the position of the motor 1 and the moving body 3 relative to the upper part of the device gantry 2, the gantry vibration calculation unit 12 can obtain the remaining movement amount Er of the moving body 3 relative to the target position 9 from the motor position detection value. Furthermore, since the moving body relative position detection value is calculated from an image captured by the camera 10 installed on the moving body 3, the value is the sum of the remaining movement amount Er and the vibration waveform of (1-R)Ah×sin(ωt+φ) generated as a relative error between the moving body 3 and the target position 9. From this, the gantry vibration calculation unit 12 can calculate a vibration waveform of (1-R)Ah(t)×sin(ωt+φ), which is the relative error occurring between the moving body 3 and the target position 9 due to vibration of the device gantry 2, from the moving body relative position detection value and the motor position detection value, and output the calculated vibration waveform as a gantry vibration calculation value. Note that the gantry vibration calculation value cannot be used to generate a vibration error correction signal because there is a large delay in the image processing required to calculate the moving body relative position detection value.

[0031] The gantry vibration characteristic setting unit 13 stores the estimated gantry weight value m, the estimated gantry vibration frequency value ω, and the estimated gantry vibration damping coefficient value ζ estimated by the gantry weight estimation unit 15, the gantry vibration frequency estimation unit 16, and the gantry vibration damping coefficient estimation unit 17, which will be described later, and sets them as parameters to be used by the gantry vibration estimation unit 7.

[0032] The estimation switching unit 14 determines the period during which the gantry weight estimation unit 15, the gantry vibration frequency estimation unit 16, and the gantry vibration damping coefficient estimation unit 17 each perform their estimation operation. Of the gantry weight estimate m, the gantry vibration frequency estimate ω, and the gantry vibration damping coefficient estimate ζ, the gantry vibration frequency estimate ω and the gantry vibration damping coefficient estimate ζ can be estimated from the vibration waveform of free vibration when the device gantry 2 is not subjected to an external force, that is, when the motor 1 is not generating thrust for acceleration or deceleration. The gantry weight estimate m can be estimated when the device gantry 2 is subjected to an external force, that is, when the motor 1 is generating thrust for acceleration or deceleration. Whether the device gantry 2 is subjected to an external force can be determined from the motor thrust command input to the motor 1. Therefore, the estimation switching unit 14 determines whether the motor 1 is generating thrust for acceleration or deceleration based on the motor thrust command, and causes the platform weight estimation unit 15 to perform estimation operations during the period when the motor 1 is accelerating or decelerating for movement, and causes the platform vibration frequency estimation unit 16 and the platform vibration damping coefficient estimation unit 17 to perform estimation operations during the period when the motor 1 is neither accelerating nor decelerating.

[0033] The gantry weight estimation unit 15 performs an operation of estimating the gantry weight estimated value m from data acquired during the period determined by the estimation switching unit 14 as the period for performing the estimation operation. The gantry weight estimation unit 15 estimates the gantry weight estimated value m based on the gantry vibration calculated value output by the gantry vibration calculation unit 12 and the motor thrust command output by the motor drive control unit 6. Specifically, the gantry weight estimation unit 15 calculates the gantry weight estimated value m so as to minimize the difference between the vibration waveform calculated using the group of equations (1) using a waveform with the sign of the motor thrust command as a reaction force acting on the device gantry 2 and the gantry vibration calculated value. The least squares method can be used for this calculation method.

[0034] The gantry vibration frequency estimator 16 performs an operation of estimating the gantry vibration frequency estimated value ω from data acquired during the period determined as the period for performing the estimation operation by the estimation switching unit 14. The gantry vibration frequency estimator 16 estimates the gantry vibration frequency estimated value ω based on the gantry vibration calculated value output by the gantry vibration calculator 12. Specifically, the gantry vibration frequency estimator 16 may measure the time interval at which the waveform of the gantry vibration calculated value passes through zero and calculate the gantry vibration frequency estimated value ω from the measured time interval, or may calculate the gantry vibration frequency estimated value ω using an FFT (Fast Fourier Transform).

[0035] The gantry vibration damping coefficient estimator 17 performs an operation of estimating the gantry vibration damping coefficient estimated value ζ from data acquired during the period determined by the estimation switcher 14 as the period for performing the estimation operation. The gantry vibration damping coefficient estimator 17 estimates the gantry vibration damping coefficient estimated value ζ based on the gantry vibration calculated value output by the gantry vibration calculator 12. Specifically, the gantry vibration damping coefficient estimator 17 can calculate the gantry vibration damping coefficient estimated value ζ from the change over time in the vibration amplitude of the gantry vibration calculated value.

[0036] Next, the operation of the motor control device 110 will be described. Fig. 3 is a flowchart for explaining the operation of the motor control device 110 according to the first embodiment to control the motor 1. The moving body position command generator 4 of the motor control device 110 generates a moving body position command for stopping the moving body 3 at a predetermined position relative to the target position 9 (step S11), and outputs the generated moving body position command to the motor drive controller 6.

[0037] Furthermore, the motor position acquisition unit 5 acquires a motor position detection value (step S12) and outputs the acquired motor position detection value to the gantry vibration calculation unit 12 and the motor drive control unit 6. The gantry vibration estimation unit 7 calculates an estimated gantry vibration waveform using the motor thrust command output by the motor drive control unit 6 and the parameters set by the gantry vibration characteristic setting unit 13, specifically, the estimated gantry weight value m, the estimated gantry vibration frequency value ω, and the estimated gantry vibration damping coefficient value ζ (step S13), and outputs the calculated estimated gantry vibration waveform to the vibration error correction signal calculation unit 8 as an estimated gantry vibration value.

[0038] The vibration error correction signal calculation unit 8 calculates a vibration error correction signal based on the gantry vibration estimated value output by the gantry vibration estimation unit 7 (step S14), and outputs the calculated vibration error correction signal to the motor drive control unit 6.

[0039] The motor drive control unit 6 generates a motor thrust force command for controlling the motor 1 based on the moving body position command, the motor position detection value, and the vibration error correction signal (step S15).

[0040] The motor drive control unit 6 outputs the generated motor thrust force command to the motor 1, thereby controlling the motor 1 based on the motor thrust force command (step S16). At this time, the motor drive control unit 6 also outputs the generated motor thrust force command to each of the gantry vibration estimating unit 7, the estimation switching unit 14, and the gantry weight estimating unit 15.

[0041] The motor control device 110 determines whether the processing has been completed (step S17), and if it determines that the processing has not been completed (step S17: No), it repeats the processing from step S11, and if it determines that the processing has been completed (step S17: Yes), it terminates the control processing of the motor 1.

[0042] Furthermore, the motor control device 110 executes an operation to update the parameters used to estimate the gantry vibration in parallel with the control operation of the motor 1 shown in Fig. 3. Fig. 4 is a flowchart for explaining the operation of updating the parameters used to estimate the gantry vibration by the motor control device 110 according to the first embodiment.

[0043] The motor control device 110 acquires an image captured by the camera 10 (step S21). The relative position acquisition unit 11 acquires a moving body relative position detection value, which is a time waveform of the position coordinates of the moving body 3 relative to the target position 9, from the image captured by the camera 10 (step S22), and outputs the acquired moving body relative position detection value to the gantry vibration calculation unit 12.

[0044] The gantry vibration calculation unit 12 calculates a gantry vibration calculated value from the moving body relative position detection value output by the relative position acquisition unit 11 (step S23), and outputs the calculated gantry vibration calculated value to each of the gantry weight estimation unit 15, the gantry vibration frequency estimation unit 16, and the gantry vibration damping coefficient estimation unit 17.

[0045] The estimation switching unit 14 determines whether the motor 1 is accelerating or decelerating (step S24) based on the motor thrust command output by the motor drive control unit 6. If the motor 1 is accelerating or decelerating (step S24: Yes), the estimation switching unit 14 causes the gantry weight estimating unit 15 to execute an operation of estimating the gantry weight (step S25), and the gantry weight estimating unit 15 outputs the estimation result, that is, the gantry weight estimated value m, to the gantry vibration characteristic setting unit 13. If the motor 1 is neither accelerating nor decelerating (step S24: No), the estimation switching unit 14 causes the gantry vibration frequency estimating unit 16 and the gantry vibration damping coefficient estimating unit 17 to respectively perform the estimation operation of the gantry vibration frequency and the gantry vibration damping coefficient (step S26), and the gantry vibration frequency estimating unit 16 outputs the estimation result, the gantry vibration frequency estimated value ω, to the gantry vibration characteristic setting unit 13, and the gantry vibration damping coefficient estimating unit 17 outputs the estimation result, the gantry vibration damping coefficient estimated value ζ, to the gantry vibration characteristic setting unit 13.

[0046] The gantry vibration characteristic setting unit 13 updates the parameters used by the gantry vibration estimation unit 7 to estimate the gantry vibration with the estimation results (step S27). The motor control device 110 determines whether the processing has ended (step S28), and if it determines that the processing has not ended (step S28: No), it repeats the processing from step S21, and if it determines that the processing has ended (step S28: Yes), it ends the parameter update processing.

[0047] Here, we will explain the hardware configuration of motor control device 110. The functions of each part of motor control device 110 are realized by processing circuits. These processing circuits may be realized by dedicated hardware, or may be control circuits using a CPU (Central Processing Unit).

[0048] When the above processing circuits are realized by dedicated hardware, they are realized by processing circuit 90 shown in Fig. 5. Fig. 5 is a diagram showing dedicated hardware for realizing the functions of motor control device 110. Processing circuit 90 may be a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a combination thereof.

[0049] When the processing circuit is realized by a control circuit using a CPU, the control circuit is, for example, a control circuit 91 having a configuration shown in FIG. 6 . FIG. 6 is a diagram showing the configuration of the control circuit 91 for realizing the functions of the motor control device 110. As shown in FIG. 6 , the control circuit 91 includes a processor 92 and a memory 93. The processor 92 is a CPU, and is also called a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a DSP (Digital Signal Processor), etc. The memory 93 is, for example, a non-volatile or volatile semiconductor memory such as a random access memory (RAM), a read-only memory (ROM), a flash memory, an erasable programmable read-only memory (EPROM), an electrically programmable programmable read-only memory (EEPROM), a magnetic disk, a flexible disk, an optical disk, a compact disk, a minidisk, or a digital versatile disk (DVD).

[0050] When the above processing circuit is realized by the control circuit 91, it is realized by the processor 92 reading and executing a program corresponding to the processing of each component element, which is stored in the memory 93. The memory 93 is also used as a temporary memory for each process executed by the processor 92. The program executed by the processor 92 may be provided in a state stored in a storage medium, or may be provided via a communication path such as the Internet.

[0051] As described above, according to the first embodiment, it is possible to provide a motor control device 110 that controls, based on a motor thrust command, the thrust generated by the motor 1 mechanically connected to the moving body 3 that is movably installed with respect to the equipment pedestal 2, thereby stopping the moving body 3 at a predetermined position relative to the target position 9. The motor control device 110 includes a moving body position command generation unit 4 that generates a moving body position command for stopping the moving body 3 at a predetermined position relative to the target position 9, a motor position acquisition unit 5 that acquires a motor position detection value that is a time waveform of the position coordinates of the motor 1, a pedestal vibration estimation unit 7 that calculates a pedestal vibration estimate that estimates vibration of the equipment pedestal 2 based on the thrust generated by the motor 1 and a pedestal weight estimate value m that estimates the weight of the equipment pedestal 2, a vibration error correction signal calculation unit 8 that calculates, based on the pedestal vibration estimate value, a vibration error correction signal for suppressing an error caused by vibration of the equipment pedestal 2 that is included in the relative position of the moving body 3 with respect to the target position 9, and a motor drive control unit 6 that generates a motor thrust command based on the moving body position command, the motor position detection value, and the vibration error correction signal. The motor control device 110 further includes a relative position acquisition unit 11 that acquires a moving body relative position detection value, which is a time waveform of the position coordinates of the moving body 3 relative to the target position 9, from an image captured by a camera 10 that captures the target position 9; a gantry vibration calculation unit 12 that calculates a gantry vibration calculation value from the moving body relative position detection value; and a gantry weight estimation unit 15 that calculates a gantry weight estimate m that estimates the weight of the device gantry 2 from the gantry vibration calculation value and the thrust generated by the motor 1. The gantry vibration estimation unit 7 can calculate the gantry vibration estimate value using the gantry weight estimate value m estimated by the gantry weight estimation unit 15. As a result, the motor control device 110 calculates the gantry weight estimate value from the gantry vibration detection value detected from the image captured during actual operation and the thrust generated by the motor 1, thereby making it possible to obtain a highly accurate gantry weight estimate value m. Furthermore, the highly accurate gantry weight estimate value m is used to estimate vibrations occurring in the device gantry 2 and suppress errors caused by the estimated vibrations, making it possible to suppress positioning errors with high precision.

[0052] The motor control device 110 can further include an estimation switching unit 14 that determines a period during which the gantry weight estimating unit 15 performs an estimation operation, based on the thrust generated by the motor 1. Specifically, the estimation switching unit 14 causes the gantry weight estimating unit 15 to perform an estimation operation during a period during which the motor 1 is accelerating or decelerating for movement. This makes it possible to obtain a more accurate gantry weight estimated value m.

[0053] The motor control device 110 further includes a gantry vibration frequency estimator 16 that calculates a gantry vibration frequency estimate value ω by estimating the gantry vibration frequency from the gantry vibration calculated value, and a gantry vibration damping coefficient estimator 17 that calculates a gantry vibration damping coefficient estimate value ζ by estimating the gantry vibration damping coefficient from the gantry vibration calculated value, the gantry vibration estimator 7 calculates the gantry vibration estimate value based on the gantry vibration frequency estimate value ω and the gantry vibration damping coefficient estimate value ζ, and the estimation switcher 14 causes the gantry vibration frequency estimator 16 and the gantry vibration damping coefficient estimator 17 to perform estimation operations during a period when the motor 1 is neither accelerating nor decelerating. This makes it possible to obtain highly accurate values ​​for the gantry vibration frequency and the gantry vibration damping coefficient, and to suppress positioning errors with even greater precision.

[0054] Second Embodiment Fig. 7 is a diagram showing the configuration of a positioning device 100A according to a second embodiment. The positioning device 100A has a motor control device 110A instead of the motor control device 110 of the positioning device 100. The configuration of the motor control device 110A is the same as that of the motor control device 110 according to the first embodiment, except that it has an estimation switching unit 14a instead of the estimation switching unit 14. Below, differences from the first embodiment will be mainly described, and descriptions of the same parts as in the first embodiment will be omitted.

[0055] The estimation switching unit 14a receives the motor thrust command output by the motor drive control unit 6 as well as the motor position detection value output by the motor position acquisition unit 5. Based on the motor thrust command and the motor position detection value, the estimation switching unit 14a determines the period during which each of the gantry weight estimator 15, the gantry vibration frequency estimator 16, and the gantry vibration damping coefficient estimator 17 performs its estimation operation.

[0056] The gantry vibration calculation value used in the estimation operation by the gantry weight estimation unit 15, the gantry vibration frequency estimation unit 16, and the gantry vibration damping coefficient estimation unit 17 is calculated from the moving body relative position detection value, which is a value obtained by detecting the position of the target position 9 in the image captured by the camera 10 and acquiring the position of the moving body 3 relative to the target position 9. In the first embodiment, it was assumed that the camera 10 moves within a range that includes the target position 9 within the imaging area, and that the captured images captured by the camera 10 include the target position 9 even when the camera 10 moves. However, when attempting to obtain position detection values ​​with high resolution, the camera 10 may not be able to capture a wide range due to limitations of the imaging element and image transfer rate. For this reason, in the second embodiment, it is assumed that some of the captured images by the camera 10 include the target position 9 and some do not. If the captured image does not include the target position 9, the moving body relative position detection value cannot be obtained, and therefore the estimation switching unit 14a causes the gantry weight estimation unit 15, the gantry vibration frequency estimation unit 16, and the gantry vibration damping coefficient estimation unit 17 to perform an estimation operation during a period when the target position 9 is included in the captured image. Specifically, the estimation switching unit 14a determines whether the target position 9 is included in the captured image of the camera 10 based on the motor position detection value, and determines a period during which the gantry weight estimation unit 15, the gantry vibration frequency estimation unit 16, and the gantry vibration damping coefficient estimation unit 17 will perform their estimation operation during a period when the target position 9 is included in the captured image.

[0057] 8 is a flowchart for explaining the operation of updating parameters used by the motor control device 110A according to the second embodiment to estimate pedestal vibration. Steps S21 to S23 are the same as those in the first embodiment. In the second embodiment, before step S24, the estimation switching unit 14a determines whether the target position 9 is included in the image captured by the camera 10 (step S31). If the target position 9 is included in the captured image (step S31: Yes), the same processes as in the first embodiment, steps S24 to S27, are performed. If the target position 9 is not included in the captured image (step S31: No), the processes of steps S24 to S27 are omitted, and the process proceeds to step S28.

[0058] As a result, the estimation switching unit 14a of the motor control device 110A sets a period for performing the estimation operation so that when the photographed image includes the target position 9 and the motor 1 is accelerating or decelerating, the estimation switching unit 14a causes the gantry weight estimating unit 15 to perform the estimation operation, and when the photographed image includes the target position 9 and the motor 1 is not accelerating or decelerating, the estimation switching unit 14a causes the gantry vibration frequency estimating unit 16 and the gantry vibration damping coefficient estimating unit 17 to perform the estimation operation. Furthermore, when the photographed image does not include the target position 9, the estimation switching unit 14a does not cause any estimation operation to be performed.

[0059] As described above, according to the second embodiment, a motor control device 110A can be provided. In the motor control device 110A, the estimation switching unit 14a determines whether or not the target position 9 is included in the image captured by the camera 10, and causes the gantry weight estimation unit 15 to perform an estimation operation during a period when the target position 9 is included in the captured image. The estimation switching unit 14a may also determine whether or not the target position 9 is included in the image captured by the camera 10, and cause the gantry vibration frequency estimation unit 16 and the gantry vibration damping coefficient estimation unit 17 to perform an estimation operation during a period when the target position 9 is included in the captured image. This makes it possible to obtain a highly accurate gantry weight estimate m, a gantry vibration frequency estimate ω, and a gantry vibration damping coefficient estimate ζ even when the motor 1 and the moving object 3 move over a wide range such that the target position 9 is not included in the image captured by the camera 10.

[0060] In the above embodiment, the estimation switching unit 14a determines the period for executing the estimation operation of each of the gantry weight estimate value m, the gantry vibration frequency estimate value ω, and the gantry vibration damping coefficient estimate value ζ using the motor thrust command and the motor position detection value, but any other signal may be used as long as it is a signal that can determine the acceleration and deceleration state of the motor 1 and the period during which the target position 9 is included in the image captured by the camera 10. For example, it may be determined whether or not the target position 9 is included in the image captured by the camera 10 based on the mobile body position command generated by the mobile body position command generation unit 4, or it may be determined whether or not the acceleration and deceleration state of the motor 1 and the target position 9 are included in the image captured by the camera 10 based on only the mobile body position command or only the motor position detection value.

[0061] Third Embodiment Fig. 9 is a diagram showing the configuration of a positioning device 100B according to a third embodiment. The positioning device 100B has a motor control device 110B instead of the motor control device 110A of the positioning device 100A. The configuration of the motor control device 110B is the same as that of the motor control device 110A according to the second embodiment, except that it has a gantry vibration estimator 7a instead of the gantry vibration estimator 7 of the motor control device 110A, and an estimation switcher 14b instead of the estimation switcher 14a. Below, differences from the second embodiment will be mainly described, and descriptions of similar parts to the second embodiment will be omitted.

[0062] The gantry vibration estimation unit 7a receives, as input, the motor thrust command output by the motor drive control unit 6, the parameters output by the gantry vibration characteristic setting unit 13, the gantry vibration calculated value output by the gantry vibration calculation unit 12, and information indicating a period for changing the calculation method output by the estimation switching unit 14b. Similar to the gantry vibration estimation unit 7, the gantry vibration estimation unit 7a has a function of executing a first method for calculating a gantry vibration estimated value based on the motor thrust command, and a second method for calculating a gantry vibration estimated value using the gantry vibration calculated value in addition to the motor thrust command. The gantry vibration estimation unit 7a switches the method used to calculate the gantry vibration estimated value between the first method and the second method in accordance with an instruction from the estimation switching unit 14b. It is believed that the second method can obtain a gantry vibration estimated value with higher accuracy than the first method. However, because it takes time to calculate the gantry vibration calculated value due to image processing, etc., there is a significant delay in the gantry vibration calculated value, and the effect of the delay must be corrected.

[0063] The estimation switching unit 14b determines the period during which the gantry weight estimator 15, the gantry vibration frequency estimator 16, and the gantry vibration damping coefficient estimator 17 perform estimation operations, and also determines the period during which the gantry vibration estimator 7a changes the calculation method for the gantry vibration estimated value, in the same manner as in embodiment 2. Specifically, the estimation switching unit 14b determines the period during which the gantry vibration estimator 7a changes the calculation method for the gantry vibration estimated value, so that the gantry vibration estimator 7a calculates the gantry vibration estimated value by the second method during a period when the target position 9 is included in the captured image of the camera 10, and calculates the gantry vibration estimated value by the first method during a period when the target position 9 is not included in the captured image.

[0064] Fig. 10 is a diagram showing a detailed configuration of the gantry vibration estimator 7a shown in Fig. 9. The gantry vibration estimator 7a has a delay adding unit 71, a gantry vibration equation of motion calculator 72, an error calculator 73, a gantry vibration equation of motion calculator 74, an error correction calculator 75, and an output switching unit 76.

[0065] The delay adding unit 71 adds the same delay time as the delay included in the gantry vibration calculated value to the motor thrust command, and outputs the motor thrust command with the delay added to the gantry vibration equation of motion calculation unit 72 .

[0066] The gantry vibration equation of motion calculation unit 72 calculates a delayed gantry vibration estimated value from the motor thrust command with the delay added, using parameters such as the estimated gantry weight value m, the estimated gantry vibration frequency value ω, and the estimated gantry vibration damping coefficient value ζ. The gantry vibration equation of motion calculation unit 72 outputs the calculated delayed gantry vibration estimated value to each of the error calculation unit 73 and the error correction calculation unit 75.

[0067] The error calculation unit 73 compares the calculated gantry vibration value with the delayed gantry vibration estimated value to calculate an error calculation value, and outputs the calculated error value to the error correction calculation unit 75.

[0068] The gantry vibration equation of motion calculation unit 74 calculates an estimated gantry vibration value from the motor thrust command to which no delay has been added, using parameters such as the estimated gantry weight value m, the estimated gantry vibration frequency value ω, and the estimated gantry vibration damping coefficient value ζ. The gantry vibration equation of motion calculation unit 74 outputs the calculated estimated gantry vibration value to each of the error correction calculation unit 75 and the output switching unit 76.

[0069] The error correction calculation unit 75 calculates an error-corrected gantry vibration estimate using the error calculation value, the delayed gantry vibration estimate value, and the gantry vibration estimate value, and outputs the calculated error-corrected gantry vibration estimate value to the output switching unit 76. Because the delayed gantry vibration estimate value is delayed by the same amount as the gantry vibration calculation value, the error calculation value calculated by the error calculation unit 73 includes the influence of estimation errors of parameters such as the gantry weight estimate value m, the gantry vibration frequency estimate value ω, and the gantry vibration damping coefficient estimate value ζ. Based on the amount of change in the gantry vibration estimate value relative to the delayed gantry vibration estimate value, i.e., the change after the delay time has elapsed, the error correction calculation unit 75 adds a value calculated assuming that the error calculation value has changed over the delay time to the gantry vibration estimate value, and outputs the result as the error-corrected gantry vibration estimate value. This makes it possible to correct errors in the gantry vibration estimate value that appear due to errors between the actual characteristics of the device gantry 2 and parameters such as the gantry weight estimate value m, the gantry vibration frequency estimate value ω, and the gantry vibration damping coefficient estimate value ζ.

[0070] The output switching unit 76 switches the output of the gantry vibration estimator 7 a between a gantry vibration estimated value and an error-corrected gantry vibration estimated value. Specifically, the output switching unit 76 switches the output of the gantry vibration estimator 7 a in accordance with an instruction from the estimation switching unit 14 b.

[0071] As described above, according to the motor control device 110B of the third embodiment, the gantry vibration estimator 7a can calculate a gantry vibration estimate based on the thrust generated by the motor 1 and the gantry vibration calculated value. The motor control device 110B can further include an estimation switcher 14b that determines whether the target position 9 is included in the image captured by the camera 10 and causes the gantry vibration estimator 7a to calculate a gantry vibration estimate based on the thrust generated by the motor 1 and the gantry vibration calculated value during the period when the captured image includes the target position 9. This allows the gantry vibration estimator 7a to calculate a gantry vibration estimate using an appropriate signal, thereby enabling a more accurate gantry vibration estimate to be obtained using the gantry vibration calculated value. Furthermore, the motor control device 110B calculates a vibration error correction signal using the more accurate gantry vibration estimated value, thereby enabling control to more accurately suppress the relative error occurring between the moving object 3 and the target position 9 due to vibration of the device gantry 2.

[0072] Fourth Embodiment Fig. 11 is a diagram showing the configuration of a positioning device 100C according to a fourth embodiment. The positioning device 100C has a motor control device 110C instead of the motor control device 110 of the positioning device 100. The motor control device 110C has a mobile object position command generation unit 4a instead of the mobile object position command generation unit 4, a gantry vibration characteristic setting unit 13a instead of the gantry vibration characteristic setting unit 13, an estimation switching unit 14c instead of the estimation switching unit 14, and is configured by omitting the gantry vibration frequency estimator 16 and the gantry vibration damping coefficient estimator 17. Since the other components denoted with the same reference numerals are the same as those of the motor control device 110 according to the first embodiment, the following description will mainly focus on the parts that are different from those of the first embodiment, and will omit a description of the parts that are the same as those of the first embodiment.

[0073] The gantry vibration characteristic setting unit 13 a stores a preset gantry vibration frequency estimated value ω and a gantry vibration damping coefficient estimated value ζ, and also stores the gantry weight estimated value m calculated by the gantry weight estimating unit 15 .

[0074] The estimation switching unit 14c determines the period during which the platform weight estimation unit 15 performs the estimation operation of the platform weight estimated value m based on the motor thrust command, and also determines whether to switch the mobile body position command generated by the mobile body position command generation unit 4a.

[0075] The moving body position command generator 4a generates a moving body position command for accelerating or decelerating the motor 1 and stopping the motor 1 within a moving distance within a range in which the target position 9 is included in the image captured by the camera 10. The moving body position command generator 4a outputs the generated moving body position command to the motor drive controller 6. As the motor 1 moves in accordance with such a moving body position command, the target position 9 is always included in the image captured by the camera 10 while the motor 1 is accelerating or decelerating. This allows the gantry weight estimator 15 to determine a period during which to estimate the gantry weight estimated value m without determining whether the target position 9 is included in the image captured by the camera 10. In other words, the estimation switcher 14c can determine a period during which to perform the operation of estimating the gantry weight estimated value m based only on whether the motor 1 is accelerating or decelerating, without determining whether the target position 9 is included in the image captured by the camera 10.

[0076] The estimated gantry vibration frequency value ω and the estimated gantry vibration damping coefficient value ζ stored in the gantry vibration characteristic setting unit 13a can be values ​​read by the user from the calculated gantry vibration value.

[0077] As described above, according to the motor control device 110C of embodiment 4, the moving body position command generator 4a can generate a moving body position command that causes the motor 1 to accelerate or decelerate and then stop within a range in which the captured image includes the target position 9. This allows the gantry weight estimator 15 to determine the period during which the estimation operation is to be performed without determining whether the target position 9 is included in the captured image of the camera 10, thereby reducing the amount of calculation required for the determination by the estimation switcher 14c. Furthermore, according to the motor control device 110C, the gantry vibration frequency estimated value ω and the gantry vibration damping coefficient estimated value ζ are set in advance and no estimation calculation is performed, thereby reducing the amount of calculation.

[0078] The configurations shown in the above embodiments are merely examples, and may be combined with other known technologies, or different embodiments may be combined with each other. It is also possible to omit or modify parts of the configurations as long as they do not deviate from the gist of the invention.

[0079] REFERENCE SIGNS LIST 1 Motor, 2 Device stand, 3 Moving body, 4, 4a Moving body position command generation unit, 5 Motor position acquisition unit, 6 Motor drive control unit, 7, 7a Stand vibration estimation unit, 8 Vibration error correction signal calculation unit, 9 Target position, 10 Camera, 11 Relative position acquisition unit, 12 Stand vibration calculation unit, 13, 13a Stand vibration characteristic setting unit, 14, 14a, 14b, 14c Estimation switching unit, 15 Stand weight estimation unit, 16 Stand vibration frequency estimation unit, 17 Stand vibration damping coefficient estimation unit, 71 Delay addition unit, 72, 74 Stand vibration motion equation calculation unit, 73 Error calculation unit, 75 Error correction calculation unit, 76 Output switching unit, 90 Processing circuit, 91 Control circuit, 92 Processor, 93 Memory, 100, 100A, 100B, 100C Positioning device 110, 110A, 110B, 110C Motor control device.

Claims

1. A motor control device for stopping a moving body at a predetermined position relative to a target position by controlling a thrust generated by a motor mechanically connected to a moving body movably installed relative to an equipment pedestal based on a motor thrust command, comprising: a moving body position command generation unit for generating a moving body position command for stopping the moving body at a predetermined position relative to the target position; a motor position acquisition unit for acquiring a motor position detection value which is a time waveform of the position coordinates of the motor; a pedestal vibration estimation unit for calculating a pedestal vibration estimate which estimates the vibration of the equipment pedestal based on the thrust generated by the motor and a pedestal weight estimate which estimates the weight of the equipment pedestal; a vibration error correction signal calculation unit for calculating a vibration error correction signal for suppressing an error caused by the vibration of the equipment pedestal included in the relative position of the moving body relative to the target position based on the pedestal vibration estimate; a motor drive control unit for generating the motor thrust command based on the moving body position command, the motor position detection value, and the vibration error correction signal; and a relative position acquisition unit for acquiring a moving body relative position detection value which is a time waveform of the position coordinates of the moving body relative to the target position from an image captured by a camera which captures the target position. a gantry vibration calculation unit that calculates a gantry vibration calculated value from the moving body relative position detection value, and a gantry weight estimation unit that calculates a gantry weight estimated value by estimating a weight of the device gantry from the gantry vibration calculated value and a thrust force generated by the motor, wherein the gantry vibration estimation unit calculates the gantry vibration estimated value using the gantry weight estimated value estimated by the gantry weight estimation unit.

2. The motor control device according to claim 1, further comprising an estimation switching unit that determines a period during which the platform weight estimation unit performs an estimation operation based on the thrust generated by the motor.

3. The motor control device according to claim 2, characterized in that the estimation switching unit causes the platform weight estimation unit to execute the estimation operation during a period in which the motor is accelerating or decelerating for movement.

4. A motor control device as described in claim 2 or 3, further comprising: a pedestal vibration frequency estimation unit that calculates a pedestal vibration frequency estimated value by estimating a pedestal vibration frequency from the pedestal vibration calculated value; and a pedestal vibration damping coefficient estimation unit that calculates a pedestal vibration damping coefficient estimated value by estimating a pedestal vibration damping coefficient from the pedestal vibration calculated value, wherein the pedestal vibration estimation unit calculates the pedestal vibration estimated value based on the pedestal vibration frequency estimated value and the pedestal vibration damping coefficient estimated value, and the estimation switching unit causes the pedestal vibration frequency estimation unit and the pedestal vibration damping coefficient estimation unit to perform estimation operations during a period when the motor is not accelerating or decelerating.

5. A motor control device as described in claim 2 or 3, characterized in that the estimation switching unit determines whether the target position is included in the image captured by the camera, and causes the platform weight estimation unit to perform an estimation operation during the period when the target position is included in the captured image.

6. The motor control device described in claim 4, characterized in that the estimation switching unit determines whether the target position is included in the captured image of the camera, and causes the platform vibration frequency estimation unit and the platform vibration damping coefficient estimation unit to perform estimation operations during the period when the captured image includes the target position.

7. The motor control device according to claim 1, characterized in that the base vibration estimation unit calculates the base vibration estimated value based on the thrust force generated by the motor and the calculated base vibration value.

8. The motor control device as described in claim 7, further comprising an estimation switching unit that determines whether or not the target position is included in the captured image of the camera, and during a period in which the captured image includes the target position, causes the platform vibration estimation unit to calculate the platform vibration estimated value based on the thrust force generated by the motor and the platform vibration calculated value.

9. The motor control device according to claim 1, characterized in that the moving body position command generating unit generates the moving body position command such that the motor accelerates or decelerates and stops within a range in which the captured image includes the target position.

10. An equipment stand; a moving body movably installed relative to the equipment stand; a motor mechanically connected to the moving body; a camera for photographing a target position; a moving body position command generation unit for generating a moving body position command for stopping the moving body at a predetermined position relative to the target position; a motor position acquisition unit for acquiring a motor position detection value which is a time waveform of the position coordinates of the motor; a stand vibration estimation unit for calculating a stand vibration estimate value which estimates the vibration of the equipment stand based on a thrust generated by the motor and a stand weight which is the weight of the equipment stand; a vibration error correction signal calculation unit for calculating a vibration error correction signal for suppressing an error caused by the vibration of the equipment stand included in the relative position of the moving body with respect to the target position based on the stand vibration estimated value; a motor drive control unit for generating a motor thrust command for controlling the thrust generated by the motor based on the moving body position command, the motor position detection value, and the vibration error correction signal; and a relative position acquisition unit for acquiring a moving body relative position detection value which is a time waveform of the position coordinates of the moving body with respect to the target position from an image captured by the camera. a platform vibration calculation unit that calculates a platform vibration calculated value from the moving body relative position detection value, and a platform weight estimation unit that calculates a platform weight estimated value by estimating a weight of the device platform from the platform vibration calculated value and a thrust force generated by the motor, wherein the platform vibration estimation unit calculates the platform vibration estimated value using the platform weight estimated value estimated by the platform weight estimation unit.

11. A motor control method for a motor control device that stops a moving body at a predetermined position relative to a target position by controlling the thrust generated by a motor mechanically connected to the moving body, which is movably installed relative to an equipment stand, based on a motor thrust command, comprising the steps of: acquiring position coordinates of the moving body relative to the target position from an image of the target position, and calculating a stand vibration calculation value of vibrations occurring in the equipment stand; calculating a stand weight estimate that estimates the weight of the equipment stand from the stand vibration calculation value and the thrust generated by the motor; estimating the vibration of the equipment stand from the stand weight estimate and the thrust generated by the motor; calculating a vibration error correction signal for suppressing errors caused by the vibration of the equipment stand included in the relative position of the moving body with respect to the target position, and changing the motor thrust command based on the vibration error correction signal.

Citation Information

Patent Citations

  • Linear motor drive gear

    JP1999122902A

  • Transport system and processing system

    JP2019062599A

  • Conveyance system, processing system, article producing method, conveyance system control method, program, and storage medium

    JP2022044957A