WO2018179368A1 - 制御装置およびモータ制御システム - Google Patents

制御装置およびモータ制御システム Download PDF

Info

Publication number
WO2018179368A1
WO2018179368A1 PCT/JP2017/013694 JP2017013694W WO2018179368A1 WO 2018179368 A1 WO2018179368 A1 WO 2018179368A1 JP 2017013694 W JP2017013694 W JP 2017013694W WO 2018179368 A1 WO2018179368 A1 WO 2018179368A1
Authority
WO
WIPO (PCT)
Prior art keywords
control device
command value
motor
adaptive control
numerical
Prior art date
Application number
PCT/JP2017/013694
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 三菱電機株式会社
Priority to PCT/JP2017/013694 priority Critical patent/WO2018179368A1/ja
Priority to US16/463,853 priority patent/US10599104B2/en
Priority to DE112017005867.8T priority patent/DE112017005867B4/de
Priority to CN201780078137.0A priority patent/CN110100210B/zh
Priority to JP2017558757A priority patent/JP6272599B1/ja
Publication of WO2018179368A1 publication Critical patent/WO2018179368A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • B23Q15/007Automatic control or regulation of feed movement, cutting velocity or position of tool or work while the tool acts upon the workpiece
    • B23Q15/12Adaptive control, i.e. adjusting itself to have a performance which is optimum according to a preassigned criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/21Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device
    • G05B19/23Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control
    • G05B19/231Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33155Communication between motor current controller and position controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34013Servocontroller

Definitions

  • the present invention relates to a control device and a motor control system in a numerically controlled mechanical system such as a machine tool and a robot.
  • the position, speed, rotation speed, etc. of the controlled object are controlled by controlling the rotation direction and rotation speed of the motor.
  • a numerical control device generates command values such as position and speed at regular time intervals, and the motor control device receives the command values and controls the rotational direction and rotational speed of the motor. As a result, the controlled object moves to the commanded position at the commanded speed.
  • the motor control device receives feedback data such as a motor driving current, a position of a control object, and a speed, and transmits these feedback data to the numerical control device.
  • the numerical control device generates a command value for the next period and thereafter by performing feedback control using these feedback data.
  • so-called servo control is performed in machine systems such as machine tools and robots.
  • Patent Document 1 includes a plurality of communication controllers connected in a tree structure under a host controller corresponding to the numerical control device.
  • a technique for reducing the load on the host controller by controlling the motor by sharing with a communication controller is disclosed.
  • the device is configured on the premise that the load is distributed in advance, and it is not assumed to be added later.
  • the communication controller interprets a command from the host controller and calculates a control command to the motor controller.
  • the lower-level motor controller cannot interpret the command of the host controller, and can receive only the control command from the communication controller. Therefore, in the technology described in Patent Document 1, since a configuration without a communication controller does not hold, it is only possible to provide a communication controller from the beginning, and it is not possible to add a communication controller later to a mechanical system without a communication controller. Can not. On the other hand, the demands on the mechanical system may change.
  • the present invention has been made in view of the above, and an object of the present invention is to obtain a control device capable of adding adaptive control to a controlled object while suppressing changes in the configuration of the numerical control device and the motor controller.
  • a control device includes a first command value received from a numerical control device, and a motor control device that controls a motor based on the first command value.
  • a processor that generates a second command value for the motor based on at least one of the received feedback data and the sensor data received from the sensor.
  • the control apparatus concerning this invention is provided with the communication circuit which transmits a 2nd command value to a numerical control apparatus.
  • the control device has an effect of being able to add adaptive control to a controlled object while suppressing changes in the configuration of the numerical control device and the motor control device.
  • FIG. The figure which shows the structural example of the motor control system concerning Embodiment 1.
  • FIG. The figure which shows the function structural example of the adaptive control apparatus of embodiment
  • Sequence diagram showing an example of operation in the motor control system of the first embodiment The figure which shows an example of the communication period of the feedback data in the control period of Embodiment 1, and the communication period of the command value for adaptive control
  • Sequence diagram showing an example of operation in the motor control system of the second embodiment
  • the flowchart which shows an example of the abnormality monitoring process procedure of Embodiment 4
  • FIG. 1 is a diagram illustrating a configuration example of a motor control system according to the first embodiment of the present invention.
  • the motor control system shown in FIG. 1 includes a numerical control device 1, an adaptive control device 2, a motor control device 3, and a motor 4.
  • FIG. 1 shows a state in which the adaptive control device 2 that is a control device according to the present invention is connected between the numerical control device 1 and the motor control device 3, the motor control system of the present embodiment is Operation is possible even when the adaptive control device 2 is not connected. That is, the motor control system of the present embodiment can operate even when the numerical control device 1 is connected to the motor control device 3 without the adaptive control device 2.
  • FIG. 1 is a diagram illustrating a configuration example of a motor control system according to the first embodiment of the present invention.
  • the motor control system shown in FIG. 1 includes a numerical control device 1, an adaptive control device 2, a motor control device 3, and a motor 4.
  • FIG. 1 shows a state in which the adaptive control device 2 that is a control device according to the present invention
  • the adaptive control device 2 may be provided between the numerical control device 1 and the motor control device 3 as shown in FIG. 1 from the start of operation of the motor control system, or may be provided at the start of operation of the motor control system. It may be added later without. Furthermore, the adaptive control device 2 may be provided at the start of operation of the motor control system, and the adaptive control device 2 may be removed later. Thus, the adaptive controller 2 can be added to the motor control system and can be removed from the motor control system.
  • the motor control system of the present embodiment is applied to a machine system such as a machine tool or a robot.
  • the motor 4 is connected to a mechanical device (not shown) and drives the mechanical device with rotational torque.
  • the controlled object of the motor control system is a mechanical device.
  • the controlled object of the motor control system is the machine device and the motor 4 that drives the machine device.
  • a machine system such as a machine tool or a robot has a plurality of axes, and a mechanical device corresponding to each axis is provided, and a motor 4 drives the mechanical device.
  • a sensor (not shown) for detecting the position, speed, etc. of the mechanical device may be provided, and the result detected by the sensor may be input to the numerical controller 1.
  • the numerical control device 1 includes a communication circuit 11, a processor 12, and a storage unit 13.
  • the communication circuit 11 transmits / receives data to / from the adaptive control device 2 according to a predetermined communication protocol.
  • the communication circuit 11 can exchange data with the motor control device 3 according to a predetermined communication protocol.
  • the processor 12 is, for example, a CPU (Central Processing Unit), and executes a numerical control program stored in the storage unit 13 or a numerical control program input from the outside. Specifically, for example, the processor 12 interprets a numerical control program stored in the storage unit 13 and generates a command value for each motor 4 necessary for controlling the controlled object at regular intervals. To the communication circuit 11. Examples of programs for numerical control are machining programs, robot control programs, and the like. The processor 12 uses feedback data to be described later when generating the command value. The communication circuit 11 transmits the command value to the corresponding motor control device 3.
  • a CPU Central Processing Unit
  • the communication circuit 11 stores the identification information of the motor control device 3 corresponding to the command value in an area indicating a destination in the frame, stores the command value in a data area in the frame, and stores the frame. To the communication line with the motor control device 3.
  • the storage unit 13 is a memory that can store programs, data, and the like, and is, for example, a ROM (Read Only Memory), a RAM (Random Access Memory), a semiconductor memory such as a flash memory, a magnetic disk, or the like.
  • ROM Read Only Memory
  • RAM Random Access Memory
  • semiconductor memory such as a flash memory, a magnetic disk, or the like.
  • the motor control device 3 generates a drive signal for driving the motor 4 based on the command value received from the numerical control device 1 via the adaptive control device 2, and applies the drive signal to the motor 4.
  • the motor 4 rotates based on the drive signal.
  • the motor control device 3 transmits feedback data such as the position, speed, and current of the motor 4 to the numerical control device 1.
  • the motor control device 3 stores the identification information of the numerical control device 1 in an area indicating a destination in the frame and stores feedback data in a data area in the frame according to a predetermined communication protocol. Then, the frame is transmitted to the communication line with the numerical controller 1.
  • the adaptive control device 2 includes a signal relay circuit 20, a communication circuit 21, a processor 22, a sensor I / F (InterFace) circuit 23, and a storage unit 24.
  • the signal relay circuit 20 is connected to a communication line between the numerical control device 1 and the motor control device 3, and passes the command value transmitted from the numerical control device 1 as it is and transmits it to the motor control device 3. Further, the signal relay circuit 20 electrically passes the feedback data transmitted from the motor control device 3 as it is and transmits it to the numerical control device 1.
  • the communication circuit 21 can transmit and receive data to and from the numerical control device 1 according to a predetermined communication protocol.
  • the sensor I / F circuit 23 receives sensor data, which is data detected by the sensor 5, from the sensor 5. Any type of sensor 5 may be used, and the sensor 5 is installed according to the contents of adaptive control described later. Examples of the sensor 5 are a temperature sensor, an acceleration sensor, a gyro sensor, a vision sensor, and the like.
  • the processor 22 is a CPU or the like, and reads and executes an application program that is a program for adaptive control stored in the storage unit 24. Thereby, the processor 22 extracts data necessary for adaptive control from the command value transmitted from the numerical controller 1 and the feedback data transmitted from the motor controller 3, and the extracted data and the sensor I / F circuit 23 are extracted. Based on the sensor data received from, an adaptive control calculation described later is performed to generate a command value for adaptive control. That is, the processor 22 receives a servo control command value that is a first command value received from the numerical control device 1, feedback data received from the motor control device 3 that controls the motor 4 based on the first command value, And adaptive control calculation is performed based on at least one of the sensor data received from the sensor. Furthermore, the processor 22 generates an application control command value that is a second command value for the motor 4 based on the adaptive control calculation. The processor 22 transmits a command value for adaptive control to the numerical controller 1 via the communication circuit 21.
  • the storage unit 24 is a memory that can store programs, data, and the like, and is, for example, a ROM (Read Only Memory), a RAM (Random Access Memory), a semiconductor memory such as a flash memory, or a magnetic disk.
  • FIG. 2 is a diagram illustrating a functional configuration example of the adaptive control device 2 according to the present embodiment.
  • the adaptive control device 2 includes a relay unit 51, an extraction unit 52, an adaptive control calculation unit 53, a command value generation unit 54, a communication unit 55, and a sensor data reception unit 56.
  • the relay unit 51 is realized by the signal relay circuit 20 shown in FIG. 1
  • the communication unit 55 is realized by the communication circuit 21 and the processor 22 shown in FIG. 1
  • the sensor data receiving unit 56 is shown in FIG. This is realized by the sensor I / F circuit 23.
  • the extraction unit 52, the adaptive control calculation unit 53, and the command value generation unit 54 are realized by the processor 22 shown in FIG.
  • the processor 22 reads and executes a program stored in the storage unit 24 for realizing a part of the communication unit 55, the extraction unit 52, the adaptive control calculation unit 53, and the command value generation unit 54. A part of the communication unit 55, the extraction unit 52, the adaptive control calculation unit 53, and the command value generation unit 54 are realized.
  • the relay unit 51 passes the command value transmitted from the numerical control device 1 as it is and transmits it to the motor control device 3, and passes the feedback data transmitted from the motor control device 3 as it is and transmits it to the numerical control device 1.
  • the communication unit 55 receives the command value transmitted from the numerical control device 1 and outputs the command value to the extraction unit 52.
  • the communication unit 55 receives the feedback data transmitted from the motor control device 3 and outputs the feedback data to the extraction unit 52.
  • the sensor data receiving unit 56 receives the sensor data and passes the received sensor data to the extracting unit 52.
  • the extraction unit 52 extracts data necessary for adaptive control calculation described later from the input command value, feedback data, and sensor data, and passes the extracted data to the adaptive control calculation unit 53.
  • the adaptive control calculation unit 53 performs an adaptive control calculation using the data input from the extraction unit 52 and determines that the command value needs to be changed by the adaptive control calculation, the adaptive control calculation unit 53 notifies the command value generation unit 54 to that effect.
  • the command value generation unit 54 generates a command value for adaptive control based on the notification from the adaptive control calculation unit 53 and outputs the command value to the communication unit 55.
  • the notification from the adaptive control calculation unit 53 is generated based on at least one of the first command value, feedback data, and sensor data transmitted from the numerical controller 1.
  • the command value generation unit 54 determines a command value for adaptive control, which is a second command value for the motor, based on at least one of the first command value, feedback data, and sensor data received from the sensor. Will be generated.
  • the communication unit 55 transmits the command value for adaptive control (hereinafter referred to as the command value for adaptive control) input from the command value generation unit 54 to the numerical controller 1.
  • the adaptive control calculation is a calculation for adaptive control.
  • the sensor 5 detects the acceleration of the tool or workpiece.
  • the adaptive control calculation unit 53 performs FFT (Fast Fourier Transform) on the sensor data detected by the acceleration sensor.
  • FFT Fast Fourier Transform
  • the adaptive control calculation unit 53 can detect the vibration frequency of the tool or the workpiece and its intensity, that is, the amplitude.
  • the adaptive control calculation unit 53 detects whether chatter vibration has occurred by performing threshold determination on at least one of the frequency and intensity of vibration obtained by FFT.
  • the adaptive control calculation unit 53 determines that the command value needs to be changed, and notifies the command value generation unit 54 that the command value is to be changed due to the occurrence of chatter vibration. Notice.
  • the command value generation unit 54 is notified that chatter vibration is occurring, for example, the command value generation unit 54 generates and generates a command value instructing to change the rotation speed of the motor 4 corresponding to the spindle of the machine tool.
  • the command value is output to the communication unit 55. Note that what command value is generated when chatter vibration is detected may be predetermined or set by the user.
  • Adaptive control includes control such as collision prevention using the detection result of the vision sensor in addition to the above-described chatter vibration suppression.
  • the content of the adaptive control calculation performed by the adaptive control calculation unit 53 may be determined according to the type of adaptive control to be performed, and the calculation content is not limited.
  • the adaptive control calculation unit 53 detects a plurality of types of events and the change contents of the command value differ depending on the detected events, for example, the detected event and the change contents of the command value are associated with each other and determined in advance. .
  • FIG. 3 is a diagram illustrating a functional configuration example of the numerical control device 1.
  • the numerical controller 1 includes a communication unit 61, a servo control calculation unit 62, and an adaptive control reflection unit 63.
  • the communication unit 61 is realized by the communication circuit 11 and the processor 12 illustrated in FIG.
  • the servo control calculation unit 62 and the adaptive control reflection unit 63 are realized by the processor 12 shown in FIG. Specifically, the processor 12 reads out and executes a program for realizing a part of the communication unit 61, the servo control calculation unit 62, and the adaptive control reflection unit 63 stored in the storage unit 13, thereby executing the communication unit 61.
  • a servo control calculation unit 62 and an adaptive control reflection unit 63 are realized.
  • the communication unit 61 When the communication unit 61 receives the feedback data transmitted from the motor control device 3, the communication unit 61 passes the feedback data to the servo control calculation unit 62.
  • the communication unit 61 transmits a servo control command value, which will be described later, received from the adaptive control reflecting unit 63 to the motor control device 3.
  • the servo control calculation unit 62 performs a servo control calculation that is a calculation for generating a command value for servo control based on the feedback data received from the communication unit 61 for each control cycle.
  • the servo control calculation unit 62 passes the generated servo control command value to the adaptive control reflection unit 63.
  • the content of the servo control calculation performed by the servo control calculation unit 62 is not limited, and any calculation may be used as long as it is a calculation in servo control for controlling the motor 4.
  • the adaptive control reflecting unit 63 reflects the command value for adaptive control from the adaptive control device 2 to the command value to be transmitted next to the motor control device 3. That is, when receiving the adaptive control command value from the adaptive control device 2, the adaptive control reflection unit 63 corrects the servo control command value based on the received adaptive control command value. For example, when receiving the adaptive control command value from the adaptive control device 2, the adaptive control reflecting unit 63 receives the adaptive control command value and then receives the adaptive control command value to the command value first received from the servo control calculation unit 62. Reflect the command value.
  • the adaptive control reflection unit 63 receives the command received first from the servo control calculation unit 62 after receiving the command value for adaptive control. A value obtained by subtracting 100 rpm from the rotation speed indicated by the value is output to the communication unit 61 as a command value.
  • the adaptive control reflection unit 63 outputs the command value received from the servo control calculation unit 62 to the communication unit 61 as it is while the adaptive control command value is not received from the adaptive control device 2.
  • the command value reflecting the command value for adaptive control is controlled by the same communication protocol as when adaptive control is not performed. Is transmitted to the device 3.
  • the adaptive control command value may indicate a change amount from the servo control command value as in the above-described example, or may indicate a changed command value, for example, a changed rotation speed. May be.
  • the adaptive control reflection unit 63 outputs the command value received from the servo control calculation unit 62 to the communication unit 61 as it is. Therefore, the motor control device 3 may control the motor 4 based on the command value transmitted from the numerical control device 1 by the same procedure regardless of the presence or absence of the adaptive control device 2.
  • FIG. 4 is a sequence diagram showing an example of operation in the motor control system of the present embodiment.
  • an example of an operation procedure of each device in the motor control system of the present embodiment will be described with reference to FIGS. 2, 3, and 4.
  • the numerical controller 1 transmits a command value for servo control.
  • the adaptive control device 2 passes the servo control command value as it is and transmits it to the motor control device 3 (step S1).
  • the command value for servo calculation reflects the command value for adaptive control if the command value for adaptive control is received in the previous control cycle, and is used for adaptive control in the previous control cycle. If no command value has been received, the command value is generated by servo control calculation.
  • the adaptive control device 2 receives sensor data from the sensor 5 (step S2).
  • the motor control device 3 operates based on the command value received in the immediately preceding control cycle, and transmits feedback data.
  • the adaptive control device 2 When receiving the feedback data from the motor control device 3, the adaptive control device 2 passes the feedback data as it is and transmits it to the numerical control device 1 (step S3).
  • the adaptive control device 2 performs the adaptive control calculation described above (step S4), generates an adaptive control command value based on the adaptive control calculation (step S5), and transmits the adaptive control command value to the numerical control device 1. (Step S6).
  • the numerical controller 1 performs servo control calculation using the received feedback data (step S7), and reflects the command value for adaptive control received from the adaptive controller 2 to the command value generated by the servo control calculation. (Step S8).
  • the numerical controller 1 transmits the command value after reflecting the command value for adaptive control to the motor controller 3 (step S9).
  • FIG. 4 corresponds to one control cycle, that is, one servo control cycle, from when the command value at step S1 is transmitted until when the command value at step S9 is transmitted.
  • FIG. 4 is an example, and the timing at which the servo control command value, feedback data, and adaptive control command value are transmitted within the control cycle is not limited to the example of FIG.
  • Each device performs the above operation for each control cycle.
  • FIG. 4 shows an example in which the adaptive control command value is determined to be transmitted as a result of the adaptive control calculation. However, when it is determined not to transmit the adaptive control command value, the adaptive control command value is It does not have to be sent.
  • the adaptive control device 2 when it is determined not to transmit the command value for adaptive control, the adaptive control device 2 sets the command value for adaptive control indicating that it is not necessary to change the command value for servo calculation, for example, the change amount to 0.
  • the command value for adaptive control may be transmitted.
  • the period for receiving sensor data and the period for performing adaptive control calculation may not be the same as the control period for servo calculation.
  • FIG. 4 the example in which the reflection to the command value for servo calculation is performed in the control cycle next to the control cycle in which the command value for adaptive control is transmitted is shown.
  • the command value for adaptive control may be reflected within the control cycle in which the command value for adaptive control is received.
  • the adaptive controller 2 uses this communication line to the numerical controller 1 for adaptive control.
  • the communication period of the command value for adaptive control it is necessary to determine the communication period of the command value for adaptive control within the communication cycle.
  • a downward direction that is a direction to be transmitted from the numerical control device 1 to the motor control device 3 and an upward direction that is a direction to be transmitted from the motor control device 3 to the numerical control device 1 It is assumed that a communication period corresponding to each data is determined.
  • the communication cycle and the control cycle are the same. From the above, if the communication period of the feedback data of the control cycle and the communication period of the command value for adaptive control are determined in the uplink communication, the numerical control device 1 is configured by the numerical control device 1, the motor control device 3, Both the feedback data and the command value for adaptive control can be received using the communication line between.
  • FIG. 5 is a diagram illustrating an example of a communication period for feedback data and a communication period for command values for adaptive control in a control cycle.
  • an adaptive control command value communication period which is a communication period of the adaptive control command value, is provided after the feedback communication period in the control period. Is not limited to this example, and any arrangement may be employed as long as each communication period is arranged so as not to overlap within the control cycle.
  • the adaptive control device 2 sends the command value for adaptive control to the numerical control device using the communication line. 1 may be transmitted. In this case, it is not necessary to determine the communication period of the command value for adaptive control in the control cycle.
  • the numerical control apparatus 1 has the adaptive control reflection part 63 as shown in FIG. 3 from the beginning, and the communication part 61 respond
  • the adaptive control device 2 is installed from the middle, it is not necessary to change the numerical control device 1.
  • the adaptive control device 2 of the present embodiment can also be applied to an existing motor control system.
  • the existing motor control system is a motor control system in which the numerical controller 1 does not include the adaptive control reflection unit 63 shown in FIG. 3 and has a servo control calculation function.
  • the adaptive control device 2 of the present embodiment is added to the existing motor control system, the numerical value is set so that the function of the adaptive control reflection unit 63 is realized and the reception process of each communication period illustrated in FIG. 5 can be performed.
  • the software of the control device 1 is changed. The increase in the load on the numerical control apparatus 1 due to this software change is slight.
  • the adaptive control device 2 performs adaptive control, transmits the command value for adaptive control to the numerical control device 1, and the numerical control device 1 transmits to the motor control device 3.
  • the command value for adaptive control is reflected in the command value.
  • Embodiment 2 a motor control system according to a second embodiment of the present invention will be described.
  • the configuration of the motor control system of the present embodiment is the same as that of the first embodiment.
  • the configuration of each device constituting the motor control system is the same as that of the first embodiment.
  • parts different from the first embodiment will be mainly described, and the description overlapping with the first embodiment will be omitted.
  • the adaptive control command value is transmitted from the adaptive control device 2 to the numerical control device 1, and the numerical control device 1 generates a servo control command value reflecting the adaptive control command value.
  • the adaptive control device 2 transmits the command value for adaptive control not only to the numerical control device 1 but also to the motor control device 3.
  • FIG. 6 is a sequence diagram showing an example of operation in the motor control system of the present embodiment.
  • Steps S1 to S5 are the same as in the first embodiment.
  • the communication unit 55 of the adaptive control device 2 transmits the command value for adaptive control to the numerical control device 1 (step S11) and transmits it to the motor control device 3 (step S12).
  • Steps S7 to S9 are the same as those in the first embodiment.
  • the motor control device 3 controls the motor 4 based on the received adaptive control command value and the servo control command value received in step S1.
  • both the command value for adaptive control and the command value for servo control are given priority, such as giving priority to the command value for adaptive control.
  • a control method is determined in advance. For example, when the servo control command value is a command with a rotational speed of 1000 rpm, but the adaptive control command value is a command with a rotational speed of 900 rpm, the motor control device 3 follows the adaptive control command value. The rotation speed is controlled to 900 rpm.
  • the command value for adaptive control is transmitted to the motor control device 3 without passing through the numerical control device 1, so the command value for adaptive control is transmitted to the motor control device 3 earlier than in the first embodiment.
  • adaptive control can be reflected more quickly than in the first embodiment.
  • the command value for adaptive control is reflected in the command value of the next control cycle. Therefore, in the control after the next period, the numerical control device 1 reflects the command value for adaptive control in the command value transmitted from the numerical control device 1. Inconsistency of command values can be prevented.
  • FIG. 7 is a diagram illustrating an example of the communication period of the servo control command value and the communication period of the adaptive control command value in the control cycle.
  • FIG. 7 as described in the example of FIG. 5 according to the first embodiment of the present embodiment, it is assumed that communication periods within the control period are determined in the uplink direction and the downlink direction, respectively. As shown in FIG.
  • the communication period of the command value for adaptive control is provided after the communication period of the command value for servo control within the control period.
  • Arrangement is not limited to this example, and any arrangement may be employed as long as the communication periods do not overlap within the control cycle.
  • the adaptive control device 2 sends the command value for adaptive control to the numerical control device using the communication line. 1 may be transmitted. In this case, it is not necessary to determine the communication period of the command value for adaptive control in the control cycle.
  • the motor control device 3 has a function of receiving the command value for adaptive control and a function of selecting one of the command value for adaptive control and the command value for servo control. Need to be. Therefore, when the motor control device 3 does not have these functions, these functions can be realized by changing the software. This software change is minor, and the load on the motor control device 3 is also slight.
  • the adaptive control device 2 transmits the command value for adaptive control not only to the numerical control device 1 but also to the motor control device 3. For this reason, the same effect as that of the first embodiment can be obtained, and the adaptive control command value can be transmitted to the motor control device at a higher speed than the motor control system according to the first embodiment.
  • FIG. 8 is a diagram illustrating a configuration example of a motor control system according to the third embodiment of the present invention.
  • the motor control system of the present embodiment is the same as the motor control system of the first embodiment except that an adaptive control device 2 a is provided instead of the adaptive control device 2.
  • the adaptive control device 2a has a configuration in which a data storage memory 25 is added to the adaptive control device 2 of the first embodiment.
  • Components having the same functions as those of the first embodiment are denoted by the same reference numerals as those of the first embodiment, and the description overlapping that of the first embodiment is omitted.
  • differences from the first embodiment will be mainly described.
  • the processor 22 selects data that needs to be saved from among the sensor data, feedback data, and servo control command value, and stores the selected data in the data saving memory 25 for a certain period of time.
  • the data storage memory 25 is a memory that stores at least one of a servo control command value, feedback data, and sensor data, which is a first command value.
  • the data that needs to be saved is data used for analysis based on past data, as will be described later.
  • the processor 22 performs an adaptive control calculation based on the data stored in the data storage memory 25.
  • the data storage memory 25 and the storage unit 24 may be realized by a single memory.
  • the data storage memory 25 is included in the adaptive control device 2a.
  • the adaptive control device 2a includes a USB (Universal Serial Bus) memory and an SD card.
  • An external storage medium I / F unit that transmits / receives data to / from the external storage medium, or an external storage medium may be used as the data storage memory 25.
  • the adaptive control device 2a includes a LAN (Local Area Network) I / F unit, and through these I / F units, the external HDD (Hard Disk Drive) of the adaptive control device 2, the data server memory, etc.
  • the storage memory 25 may be used.
  • the selected data may be stored in both the data storage memory 25 inside the adaptive control device 2a and an external memory such as a HDD (Hard Disk Drive) or a data server memory. That is, the adaptive control device 2a may store at least one of a servo control command value, feedback data, and sensor data in an external memory provided outside the adaptive control device 2a.
  • an external memory such as a HDD (Hard Disk Drive) or a data server memory. That is, the adaptive control device 2a may store at least one of a servo control command value, feedback data, and sensor data in an external memory provided outside the adaptive control device 2a.
  • each device of the present embodiment is the same as that of the first embodiment, but the adaptive control calculation unit 53 of the adaptive control device 2a of the present embodiment is not only the processor 22 and the storage unit 24 but also stores data. This is realized by using the memory 25. The operation of the adaptive control calculation unit 53 of this embodiment will be described.
  • the adaptive control calculation unit 53 When the adaptive control calculation unit 53 receives data necessary for the adaptive control calculation from the extraction unit 52, the adaptive control calculation unit 53 selects and stores data that needs to be stored. For example, in a machine tool, a robot, etc., the same trajectory may be repeatedly controlled. In such a case, the adaptive control calculation unit 53 stores the position command value and the corresponding position feedback data in the data storage memory 25. Then, the adaptive control calculation unit 53 calculates the error between the position command value in the past same locus stored in the data storage memory 25 and the position feedback data corresponding thereto, and sets the position command value so that the error becomes small. By correcting, the actual position of the controlled object can be brought close to the original command position.
  • the adaptive control calculation unit 53 stores the temperature data in the data storage memory 25 and stores the past data stored in the data storage memory 25.
  • the temperature data and position error data that is, the error between the position command value and the position feedback data corresponding thereto, more accurate thermal variation correction can be realized.
  • a data storage memory 25 may be added to realize adaptive control using past data as in the present embodiment.
  • the data storage memory 25 is provided in at least one of the inside and the outside of the adaptive control device 2a.
  • Embodiment 4 FIG. Next, a motor control system according to a fourth embodiment of the present invention will be described.
  • the configuration of the motor control system of the present embodiment is the same as that of the first embodiment.
  • the configuration of each device constituting the motor control system is the same as that of the first embodiment.
  • the operation of the present embodiment adds the operation described below to the operation of the motor control system of the first embodiment, but operations other than the points described below are the same as those of the first embodiment.
  • parts different from the first embodiment will be mainly described, and the description overlapping with the first embodiment will be omitted.
  • the motor control device 3 determines that some abnormality has occurred and normally decelerates the motor 4 urgently. However, in a mechanical system in which a plurality of axes operate in synchronization, if the motor 4 corresponding to each axis is decelerated urgently without considering the relationship with other axes, depending on the case, Certain tools, workpieces, robot arms, etc. may collide with each other and break.
  • the adaptive control calculation unit 53 of the adaptive control device 2 also has a function as an abnormality monitoring unit that performs abnormality monitoring processing, and a servo control command generated by the numerical control device 1.
  • a command value for deceleration is generated for the motor control device 3 so that the tool, workpiece, robot arm, etc. do not collide with each other, instead of the numerical control device 1.
  • the generated command value is transmitted to the motor control device 3 as a command value for adaptive control.
  • FIG. 9 is a flowchart illustrating an example of an abnormality monitoring process procedure according to the third embodiment.
  • the adaptive control calculation unit 53 receives the command value transmitted from the numerical controller 1, that is, the servo control command value from the extraction unit 52, and determines whether the command value is normally received (step S21).
  • the determination of whether or not the command value is normally received is, for example, determined that the command value is not received normally when the command value is not received from the numerical control device 1 for a certain time or more, and is determined to be normal otherwise. There is a way to do it. Further, even when the received command value deviates from the predetermined normal range, the adaptive control calculation unit 53 determines that the command value has not been received normally.
  • the adaptive control calculation unit 53 repeats step S21.
  • the adaptive control calculation unit 53 When the command value is not normally received (No at Step S21), that is, when an abnormality of the command value is detected, the adaptive control calculation unit 53 generates a command value for adaptive control that decelerates the motor 4 (Step S22). .
  • the command value for adaptive control transmitted when the abnormality of the command value is detected is the third command value.
  • the adaptive control calculation unit 53 transmits the command value for adaptive control, which is the third command value, to the motor control device 3 via the communication unit 55 (step S23), and ends the abnormality monitoring process.
  • step S23 when there are a plurality of motors 4, the command value for adaptive control is transmitted to the motor control device 3 so as to decelerate the plurality of motors 4.
  • the command value for decelerating the motor 4 includes a command value for stopping the motor 4.
  • the adaptive control calculation unit 53 may notify the user of an abnormality using a display unit (not shown), a buzzer (not shown), or the like.
  • the abnormality monitoring process is terminated after step S23, but the process may return to step S21.
  • the method described in the second embodiment can be used.
  • the adaptive control device 2 when the adaptive control device 2 detects that the servo control command value is not normally received, the adaptive control command value for decelerating the motor 4 to the motor control device 3 is obtained. I sent it. For this reason, the same effects as those of the first embodiment can be obtained, and when the numerical control device 1 cannot output the servo control command value due to a failure or the like, the tool, work, robot arm, etc., which are objects to be controlled, can be obtained. The motor of each axis can be stopped safely without being damaged.
  • the example of adding the abnormality monitoring processing procedure to the motor control system of the first embodiment has been described.
  • the abnormality monitoring processing procedure is added to the motor control system of the second or third embodiment. May be.
  • the configuration described in the above embodiment shows an example of the contents of the present invention, and can be combined with another known technique, and can be combined with other configurations without departing from the gist of the present invention. It is also possible to omit or change the part.

Abstract

本発明にかかる適応制御装置(2)は、数値制御装置(1)から受信したサーボ制御用の指令値、第1の指令値に基づいてモータ(4)を制御するモータ制御装置(3)から受信したフィードバックデータ、およびセンサ(5)から受信したセンサデータのうち少なくとも1つに基づいて、モータ(4)に対する第2の指令値を生成するプロセッサ(22)と、第2の指令値を数値制御装置(1)へ送信する通信回路(21)と、を備える。

Description

制御装置およびモータ制御システム
 本発明は、工作機械、ロボットをはじめとした数値制御される機械システムにおける制御装置およびモータ制御システムに関する。
 工作機械およびロボットといった機械システムでは、モータの回転方向および回転速度を制御することで制御対象物の位置、速度、回転数などを制御している。一般的には、数値制御装置が、一定時間周期毎に、位置、速度等の指令値を生成し、モータ制御装置がこの指令値を受け取り、モータの回転方向、回転速度等を制御する。これにより、制御対象物は、指令された位置に指令された速度で移動する。また、モータ制御装置は、モータ駆動電流、制御対象物の位置、速度といったフィードバックデータを受け取り、数値制御装置にこれらのフィードバックデータを送信する。数値制御装置は、これらのフィードバックデータを用いてフィードバック制御を行うことにより、次周期以降の指令値を生成している。このように、工作機械およびロボットといった機械システムでは、いわゆるサーボ制御が行われる。
 一方、工作機械およびロボットといった機械システムでは、制御対象物を高速かつ高精度に制御することが求められている。処理速度を向上させかつ制御精度を向上させるためには、数値制御装置のプロセッサは、単位時間当たりにより多くの演算を実行しなければならない。さらには、より高精度な制御を実現するため、通常のサーボ制御に加えて、温度、湿度、制御対象物の振動などをセンサで検出し、センサの検出結果に応じて、指令値を変更したり、追加で指令値を発行したりするという適応制御が行われている。適応制御の例としては、温度センサの検出結果を利用した機械端または工具端の熱変位補正、加速度センサの検出結果を利用したびびり振動抑制、ビジョンセンサの検出結果を利用した衝突防止などがある。このような適応制御を実行することで、ますます数値制御装置のプロセッサの負荷が増大する。
 数値制御装置のプロセッサの負荷の増大を回避する技術として、例えば、特許文献1には、数値制御装置に相当するホストコントローラの下にツリー構造で接続された複数の通信コントローラを設け、ホストコントローラと通信コントローラで分担してモータを制御することで、ホストコントローラの負荷を小さくする技術が開示されている。
特開2004-78895号公報
 しかしながら、特許文献1に記載の技術では、予め負荷を分散させることを前提に装置が構成されており、後から追加することは想定されていない。特許文献1に記載の技術では、通信コントローラは、ホストコントローラからのコマンドを解釈して、モータコントローラへの制御指令を計算している。下位のモータコントローラはホストコントローラのコマンドを解釈できず、通信コントローラからの制御指令のみを受け取ることができる。したがって、特許文献1に記載の技術では、通信コントローラが存在しない構成は成り立たないため、はじめから通信コントローラを設けるしかなく、通信コントローラを設けていない機械システムに、後から通信コントローラを追加することはできない。一方、機械システムに対する要求は、変化することが考えられ、例えば、機械システムの導入時には制御対象物に対する適応制御を行うことは想定しておらず後から適応制御を実施する必要が生じる可能性もある。また、数値制御装置、およびモータコントローラであるモータ制御装置の構成の変更の規模が大きいと運用停止時間なども大きくなることから数値制御装置およびモータコントローラの構成の変更は少ないことが望ましい。
 本発明は、上記に鑑みてなされたものであって、数値制御装置およびモータコントローラの構成の変更を抑制しつつ、制御対象物に対する適応制御を追加可能な制御装置を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明にかかる制御装置は、数値制御装置から受信した第1の指令値、第1の指令値に基づいてモータを制御するモータ制御装置から受信したフィードバックデータ、およびセンサから受信したセンサデータのうち少なくとも1つに基づいて、モータに対する第2の指令値を生成するプロセッサ、を備える。また、本発明にかかる制御装置は、第2の指令値を数値制御装置へ送信する通信回路と、を備える。
 本発明にかかる制御装置は、数値制御装置およびモータ制御装置の構成の変更を抑制しつつ、制御対象物に対する適応制御を追加可能であるという効果を奏する。
実施の形態1にかかるモータ制御システムの構成例を示す図 実施の形態の適応制御装置の機能構成例を示す図 実施の形態1の数値制御装置の機能構成例を示す図 実施の形態1のモータ制御システムにおける動作の一例を示すシーケンス図 実施の形態1の制御周期におけるフィードバックデータの通信期間と適応制御用指令値の通信期間との一例を示す図 実施の形態2のモータ制御システムにおける動作の一例を示すシーケンス図 実施の形態2の制御周期におけるサーボ制御用指令値の通信期間と適応制御用指令値の通信期間との一例を示す図 実施の形態3にかかるモータ制御システムの構成例を示す図 実施の形態4の異常監視処理手順の一例を示すフローチャート
 以下に、本発明の実施の形態にかかる制御装置およびモータ制御システムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
 図1は、本発明の実施の形態1にかかるモータ制御システムの構成例を示す図である。図1に示したモータ制御システムは、数値制御装置1、適応制御装置2、モータ制御装置3およびモータ4を備える。図1では、本発明にかかる制御装置である適応制御装置2が数値制御装置1とモータ制御装置3との間に接続された状態を示しているが、本実施の形態のモータ制御システムは、適応制御装置2が接続されていない状態でも動作可能である。すなわち、本実施の形態のモータ制御システムは、数値制御装置1が適応制御装置2を介さずにモータ制御装置3と接続されていても動作可能である。図1では、モータ4と該モータ4を駆動するモータ制御装置3との組を2組示しているが、モータ4と該モータ4を制御するモータ制御装置3との組の数は1以上であればよく、図1に示した例に限定されない。また、モータ4と該モータ4を制御するモータ制御装置3とは1対1でなくてもよく、1つのモータ制御装置3に複数のモータ4が接続されていてもよい。
 適応制御装置2は、モータ制御システムの運用開始時から図1に示すように数値制御装置1とモータ制御装置3との間に設けられていてもよいし、モータ制御システムの運用開始時には設けらずに後で追加されてもよい。さらには、モータ制御システムの運用開始時に適応制御装置2が設けられており、後で適応制御装置2が取り除かれてもよい。このように、適応制御装置2は、モータ制御システムへ追加されることが可能であり、またモータ制御システムから除去されることが可能である。
 本実施の形態のモータ制御システムは、例えば、工作機械、ロボットなどの機械システムに適用される。本実施の形態のモータ制御システムが機械システムに適用される場合、モータ4は、図示しない機械装置に接続され、回転トルクにより機械装置を駆動する。この場合、モータ制御システムの制御対象物は機械装置である。また、モータ制御システムの制御対象物は、機械装置および該機械装置を駆動するモータ4であるとも言える。一般に工作機械、ロボットなどの機械システムは複数の軸を有しており、各軸に対応する機械装置が設けられ、該機械装置をモータ4が駆動する。また、機械装置の位置、速度などを検出する図示しないセンサを設け、該センサにより検出された結果が数値制御装置1へ入力されてもよい。
 数値制御装置1は、通信回路11、プロセッサ12および記憶部13を備える。通信回路11は、適応制御装置2との間で、あらかじめ定められた通信プロトコルにしたがってデータの送受信を行う。通信回路11は、モータ制御装置3との間で、あらかじめ定められた通信プロトコルにしたがってデータの送受信を行うことも可能である。
 プロセッサ12は、例えばCPU(Central Processing Unit)であり、記憶部13に格納された数値制御用のプログラムまたは外部から入力される数値制御用のプログラムを実行する。具体的には、例えば、プロセッサ12は、記憶部13に格納された数値制御用のプログラムを解釈し、制御対象物を制御するために必要な各モータ4に対する指令値を一定周期ごとに生成し、通信回路11へ出力する。数値制御用のプログラムの例は、加工プログラム、ロボット制御用プログラムなどである。プロセッサ12は、指令値を生成する際に、後述するフィードバックデータを用いる。通信回路11は、指令値を対応するモータ制御装置3宛てに送信する。詳細には、例えば、通信回路11は、指令値に対応するモータ制御装置3の識別情報をフレーム内の宛先を示す領域に格納し、指令値をフレーム内のデータ領域に格納して、該フレームをモータ制御装置3との間の通信回線に送出する。
 記憶部13は、プログラム、データなどを記憶可能なメモリであり、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリなどの半導体メモリ、磁気ディスクなどである。
 モータ制御装置3は、数値制御装置1から適応制御装置2を経由して受信した指令値に基づいて、モータ4を駆動するための駆動信号を生成して、モータ4へ駆動信号を印加する。モータ4は、駆動信号に基づいて回転する。モータ4が機械装置を駆動する場合、モータ4の回転トルクにより機械装置が駆動される。また、モータ制御装置3は、モータ4の位置、速度、電流などのフィードバックデータを数値制御装置1へ送信する。詳細には、例えば、モータ制御装置3は、あらかじめ定められた通信プロトコルにしたがって、数値制御装置1の識別情報をフレーム内の宛先を示す領域に格納し、フィードバックデータをフレーム内のデータ領域に格納して、該フレームを数値制御装置1との間の通信回線に送出する。
 適応制御装置2は、信号中継回路20、通信回路21、プロセッサ22、センサI/F(InterFace)回路23および記憶部24を備える。信号中継回路20は、数値制御装置1とモータ制御装置3との間の通信回線に接続され、数値制御装置1から送信された指令値を電気的にそのまま通過させモータ制御装置3に伝達する。また、信号中継回路20は、モータ制御装置3から送信されたフィードバックデータを電気的にそのまま通過させ数値制御装置1に伝達する。通信回路21は、あらかじめ定められた通信プロトコルにしたがって、数値制御装置1との間でデータの送受信を行うことが可能である。センサI/F回路23は、センサ5により検出されたデータであるセンサデータをセンサ5から受信する。センサ5の種類はどのようなものであってもよく、後述する適応制御の内容に応じて設置される。センサ5の例は、温度センサ、加速度センサ、ジャイロセンサ、ビジョンセンサ等である。
 プロセッサ22は、CPUなどであり、記憶部24に格納された適応制御用のプログラムであるアプリケーションプログラムを読み出して実行する。これにより、プロセッサ22は、数値制御装置1から送信された指令値、およびモータ制御装置3から送信されたフィードバックデータから適応制御に必要なデータを抽出し、抽出したデータおよびセンサI/F回路23から受け取ったセンサデータに基づいて後述する適応制御演算を実施し、適応制御用の指令値を生成する。すなわち、プロセッサ22は、数値制御装置1から受信した第1の指令値であるサーボ制御用の指令値、第1の指令値に基づいてモータ4を制御するモータ制御装置3から受信したフィードバックデータ、およびセンサから受信したセンサデータのうち少なくとも1つに基づいて、適応制御演算を行う。さらに、プロセッサ22は、適応制御演算に基づいてモータ4に対する第2の指令値である適用制御用指令値を生成する。プロセッサ22は、通信回路21を介して適応制御用の指令値を数値制御装置1へ送信する。
 記憶部24は、プログラム、データなどを記憶可能なメモリであり、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリなどの半導体メモリ、磁気ディスクなどである。
 次に、本実施の形態の各装置の機能構成および動作について説明する。図2は、本実施の形態の適応制御装置2の機能構成例を示す図である。適応制御装置2は、中継部51、抽出部52、適応制御演算部53、指令値生成部54、通信部55およびセンサデータ受信部56を備える。中継部51は、図1に示した信号中継回路20により実現され、通信部55は、図1に示した通信回路21およびプロセッサ22により実現され、センサデータ受信部56は、図1に示したセンサI/F回路23により実現される。抽出部52、適応制御演算部53および指令値生成部54は、図1に示したプロセッサ22により実現される。詳細には、記憶部24に格納された、通信部55の一部、抽出部52、適応制御演算部53および指令値生成部54を実現するためのプログラムをプロセッサ22が読み出して実行することにより、通信部55の一部、抽出部52、適応制御演算部53および指令値生成部54が実現される。
 中継部51は、数値制御装置1から送信された指令値をそのまま通過させモータ制御装置3へ伝達し、モータ制御装置3から送信されたフィードバックデータをそのまま通過させ数値制御装置1へ伝達する。通信部55は、数値制御装置1から送信された指令値を受信し、指令値を抽出部52へ出力する。また、通信部55は、モータ制御装置3から送信されたフィードバックデータを受信し、フィードバックデータを抽出部52へ出力する。センサデータ受信部56は、センサデータを受信し、受信したセンサデータを抽出部52へ渡す。
 抽出部52は、入力された指令値、フィードバックデータおよびセンサデータのうち、後述する適応制御演算に必要なデータを抽出し、抽出したデータを適応制御演算部53へ渡す。適応制御演算部53は、抽出部52から入力されたデータを用いて適応制御演算を行い、適応制御演算により指令値を変更する必要があると判定した場合、指令値生成部54へその旨を通知する。指令値生成部54は、適応制御演算部53からの通知に基づいて適応制御用の指令値を生成し、通信部55へ出力する。適応制御演算部53からの通知は、数値制御装置1から送信された第1の指令値、フィードバックデータおよびセンサデータのうち少なくとも1つに基づいて生成されたものである。したがって、指令値生成部54は、第1の指令値、フィードバックデータ、およびセンサから受信したセンサデータのうち少なくとも1つに基づいて、モータに対する第2の指令値である適応制御用の指令値を生成することになる。通信部55は、指令値生成部54から入力された適応制御用の指令値(以下、適応制御用指令値という)を数値制御装置1へ送信する。
 適応制御演算は、適応制御のための演算である。例えば、本実施の形態のモータ制御システムが工作機械に適用されモータ4が工具を駆動するとし、びびり振動抑制のための適応制御を行う場合、センサ5に工具または被加工物の加速度を検出する加速度センサを含めておき、適応制御演算部53は、加速度センサにより検出されたセンサデータをFFT(Fast Fourier Transform:高速フーリエ変換)する。適応制御演算部53は、これにより、工具または被加工物の振動の周波数とその強度すなわち振幅を検出することができる。適応制御演算部53は、FFTにより得られた振動の周波数および強度のうちの少なくとも1つに対して閾値判定などを行うことにより、びびり振動が発生しているか否かを検出する。適応制御演算部53は、びびり振動が発生していると判定した場合、指令値を変更する必要があると判定し、びびり振動の発生により指令値を変更する旨を、指令値生成部54へ通知する。指令値生成部54は、びびり振動が発生していることを通知されると、例えば、工作機械の主軸に対応するモータ4の回転数を変更することを指示する指令値を生成し、生成した指令値を通信部55へ出力する。なお、びびり振動が検出された場合にどのような指令値を生成するかについては、あらかじめ定められていてもよいし、ユーザにより設定可能であってもよい。
 適応制御には上述したびびり振動抑制の他に、ビジョンセンサの検出結果を利用した衝突防止をはじめとした制御がある。適応制御演算部53が実施する適応制御演算の内容は、実施する適応制御の種別に応じて決定されればよく、演算内容に制約はない。適応制御演算部53が、複数の種類の事象を検出し、検出した事象により指令値の変更内容が異なる場合に、例えば、検出した事象と指令値の変更内容とを対応付けてあらかじめ定めておく。
 図3は、数値制御装置1の機能構成例を示す図である。図3に示すように、数値制御装置1は、通信部61、サーボ制御演算部62および適応制御反映部63を備える。通信部61は、図1に示した通信回路11およびプロセッサ12により実現される。サーボ制御演算部62および適応制御反映部63は、図1に示したプロセッサ12により実現される。詳細には、記憶部13に格納された、通信部61の一部、サーボ制御演算部62および適応制御反映部63を実現するためのプログラムをプロセッサ12が読み出して実行することにより、通信部61の一部、サーボ制御演算部62および適応制御反映部63が実現される。
 通信部61は、モータ制御装置3から送信されたフィードバックデータを受信すると、フィードバックデータをサーボ制御演算部62へ渡す。また、通信部61は、適応制御反映部63から受け取った後述するサーボ制御用の指令値をモータ制御装置3宛てに送信する。サーボ制御演算部62は、制御周期ごとに、通信部61から受け取ったフィードバックデータに基づいてサーボ制御用の指令値を生成する演算であるサーボ制御演算を行う。サーボ制御演算部62は、生成したサーボ制御用の指令値を適応制御反映部63へ渡す。サーボ制御演算部62が実施するサーボ制御演算の内容に制約はなく、モータ4を制御するサーボ制御における演算であればどのようなものを用いてもよい。
 適応制御反映部63は、適応制御装置2から適応制御用指令値を受信した場合、モータ制御装置3へ次に送信する指令値へ反映させる。すなわち、適応制御反映部63は、適応制御装置2から適応制御用指令値を受信すると、受信した適応制御用指令値に基づいて、サーボ制御用の指令値を補正する。例えば、適応制御反映部63は、適応制御装置2から適応制御用指令値を受信した場合、該適応制御用指令値を受信した後サーボ制御演算部62から最初に受け取った指令値に、適応制御用指令値を反映させる。例えば、適応制御用指令値が回転速度を100rpm下げることを意味するものであれば、適応制御反映部63は、該適応制御用指令値を受信した後サーボ制御演算部62から最初に受け取った指令値が示す回転速度から100rpmを減じた値を指令値として通信部61へ出力する。また、適応制御反映部63は、適応制御装置2から適応制御用指令値を受信していない間は、サーボ制御演算部62から受け取った指令値をそのまま通信部61へ出力する。これにより、適応制御装置2から適応制御用指令値が送信された場合には、適応制御用指令値が反映された指令値が、適応制御が行われていない場合と同様の通信プロトコルでモータ制御装置3に伝達される。なお、適応制御用指令値は、上述した例のようにサーボ制御用指令値からの変更量を示すものであってもよいし、変更後の指令値例えば変更後の回転速度を示すものであってもよい。
 また、適応制御装置2が設けられていない場合には、適応制御装置2から適応制御用指令値が送信されない。したがって、この場合、適応制御反映部63は、サーボ制御演算部62から受け取った指令値をそのまま通信部61へ出力する。したがって、モータ制御装置3は、適応制御装置2の有無にかかわらず同じ手順によって、数値制御装置1から送信された指令値に基づいてモータ4を制御すればよい。
 図4は、本実施の形態のモータ制御システムにおける動作の一例を示すシーケンス図である。以下、図2、図3および図4を用いて、本実施の形態のモータ制御システムにおける各装置の動作手順の一例を説明する。
 図4に示すように、数値制御装置1はサーボ制御用の指令値を送信する。適応制御装置2は、サーボ制御用の指令値を数値制御装置1から受信すると、サーボ制御用の指令値をそのまま通過させてモータ制御装置3へ伝達する(ステップS1)。このサーボ演算用の指令値は、1つ前の制御周期で適応制御用指令値を受信していれば適応制御用指令値が反映されたものであり、1つ前の制御周期で適応制御用指令値を受信していなければ、サーボ制御演算により生成された指令値である。適応制御装置2は、センサデータをセンサ5から受信する(ステップS2)。モータ制御装置3は、1つ前の制御周期において受信した指令値に基づいて動作し、フィードバックデータを送信する。適応制御装置2は、フィードバックデータをモータ制御装置3から受信すると、フィードバックデータをそのまま通過させて数値制御装置1へ伝達する(ステップS3)。適応制御装置2は、上述した適応制御演算を実施し(ステップS4)、適応制御演算に基づいて適応制御用指令値を生成し(ステップS5)、適応制御用指令値を数値制御装置1へ送信する(ステップS6)。
 数値制御装置1は、受信したフィードバックデータを用いてサーボ制御演算を実施し(ステップS7)、サーボ制御演算により生成された指令値に、適応制御装置2から受信した適応制御用指令値を反映させる(ステップS8)。数値制御装置1は、適応制御用指令値を反映させた後の指令値をモータ制御装置3へ送信する(ステップS9)。
 図4で示した、ステップS1の指令値が送信されてからステップS9の指令値が送信されるまでが、制御周期すなわちサーボ演算用の制御周期の1周期に相当する。図4は一例であり、制御周期内において、サーボ制御用指令値、フィードバックデータおよび適応制御指令値が送信されるタイミングは図4の例に限定されない。各装置は上記の動作を制御周期ごとに実施する。なお、図4では、適応制御演算の結果、適応制御用指令値を送信すると判定された例を示しているが、適応制御用指令値を送信しないと判定された場合、適応制御用指令値は送信されなくてもよい。または、適応制御用指令値を送信しないと判定された場合に、適応制御装置2は、サーボ演算用の指令値を変更する必要がないことを示す適応制御用指令値、例えば変更量を0とした適応制御用指令値を送信するようにしてもよい。
 なお、センサデータを受信する周期、および適応制御演算を実施する周期は、サーボ演算用の制御周期と同一でなくてもよい。また、図4に示した例では、適応制御用指令値が送信された制御周期の次の制御周期でサーボ演算用の指令値への反映が行われる例を示したが、数値制御装置1は、適応制御用指令値を受信するタイミングによっては、該適応制御用指令値を受信した制御周期内で適応制御用指令値の反映が行われてもよい。
 次に、適応制御装置2から数値制御装置1への適応制御用指令値の送信方法の具体例について説明する。数値制御装置1とモータ制御装置3との間の通信回線が周期的な通信を行う通信プロトコルの通信回線である場合、適応制御装置2がこの通信回線を用いて数値制御装置1へ適応制御用指令値を送信するには、通信周期内の適応制御用指令値の通信期間を定めておく必要がある。ここでは、数値制御装置1からモータ制御装置3へ送信する方向である下り方向とモータ制御装置3から数値制御装置1へ送信する方向である上り方向との2つの方向ごとに、通信周期内の各データに対応する通信期間が定められるとする。また、一般には、モータ制御システムでは、通信周期と制御周期とは同一である。以上のことから、上り方向の通信における制御周期のフィードバックデータの通信期間と適応制御用指令値の通信期間とを定めておけば、数値制御装置1は、数値制御装置1とモータ制御装置3との間の通信回線を用いて、フィードバックデータと適応制御用指令値との両方を受信することができる。
 図5は、制御周期におけるフィードバックデータの通信期間と適応制御用指令値の通信期間との一例を示す図である。図5に示した例では、制御周期内で、フィードバック通信期間の後に適応制御用指令値の通信期間である適応制御用指令値通信期間を設けているが、各通信期間の制御周期内の配置はこの例に限定されず、各通信期間が制御周期内で重複しないように配置されればどのような配置であってもよい。
 なお、数値制御装置1と適応制御装置2との間で、図示しない別の通信回線が存在する場合には、該通信回線を用いて、適応制御装置2が適応制御用指令値を数値制御装置1へ送信するようにしてもよい。この場合、制御周期における適応制御用指令値の通信期間を定めておく必要はない。
 なお、数値制御装置1が、はじめから、図3に示したように適応制御反映部63を有し、かつ通信部61が図5に例示した各通信期間の受信処理に対応している場合には、適応制御装置2が途中から設置された場合に、数値制御装置1に対する変更を行う必要はない。
 一方で、本実施の形態の適応制御装置2を、既存のモータ制御システムに適用することもできる。ここでいう、既存のモータ制御システムとは、数値制御装置1が図3に示した適応制御反映部63を備えずサーボ制御演算の機能を有するモータ制御システムである。既存のモータ制御システムに、本実施の形態の適応制御装置2を追加する場合、適応制御反映部63の機能を実現し、図5に例示した各通信期間の受信処理が実施できるように、数値制御装置1のソフトウェアを変更する。このソフトウェア変更による数値制御装置1への負荷の増加は軽微である。
 以上のように、本実施の形態では、適応制御装置2が適応制御を実施して、適応制御用指令値を数値制御装置1へ送信し、数値制御装置1が、モータ制御装置3へ送信する指令値に適応制御用指令値を反映させるようにした。これにより、数値制御装置のプロセッサの負荷を大きく増やせないモータ制御システム、または既設のモータ制御システムであっても、数値制御装置1のプロセッサの負荷の増加を抑えつつ、モータ制御装置3の構成は変更せずに、センサデータ、フィードバックデータなどに基づく高度な適応制御を実現できる。すなわち、本実施の形態では、数値制御装置1およびモータ制御装置3の構成の変更を抑制しつつ、制御対象物に対する適応制御を追加可能となる。
実施の形態2.
 次に、本発明にかかる実施の形態2のモータ制御システムについて説明する。本実施の形態のモータ制御システムの構成は実施の形態1と同様である。また、モータ制御システムを構成する各装置の構成も実施の形態1と同様である。以下、実施の形態1と異なる部分を主に説明し、実施の形態1と重複する説明を省略する。
 実施の形態1では、適応制御装置2から数値制御装置1に対して、適応制御用指令値を送信し、数値制御装置1が適応制御用指令値を反映させたサーボ制御用の指令値を生成していた。実施の形態2では、適応制御装置2は、数値制御装置1だけでなく、モータ制御装置3に対しても、適応制御用指令値を送信する。
 図6は、本実施の形態のモータ制御システムにおける動作の一例を示すシーケンス図である。ステップS1からステップS5は実施の形態1と同様である。ステップS5の後、適応制御装置2の通信部55は、適応制御用指令値を数値制御装置1へ送信する(ステップS11)とともに、モータ制御装置3へ送信する(ステップS12)。ステップS7からステップS9は実施の形態1と同様である。モータ制御装置3は、適応制御用指令値を受信すると、受信した適応制御用指令値とステップS1で受信したサーボ制御用指令値とに基づいてモータ4を制御する。また、サーボ制御用指令値と適応制御用指令値とが異なる指令値である場合には適応制御用指令値を優先するなどのように、適応制御用指令値とサーボ制御用指令値との両方に基づくモータ4の制御方法については予め制御方法を決めておく。例えば、サーボ制御用指令値が回転速度1000rpmの指令であるのに対して、適応制御用指令値が回転速度900rpmの指令である場合、モータ制御装置3は、適応制御用指令値に従い、モータの回転速度が900rpmとなるよう制御する。
 本実施の形態では、適応制御用指令値が数値制御装置1を経由せずにモータ制御装置3へ伝達されるため、適応制御用指令値が実施の形態1より早くモータ制御装置3に伝達される。このため、実施の形態1より速やかに適応制御を反映させることができる。なお、数値制御装置1においても、次の制御周期の指令値に適応制御用指令値を反映する。したがって、数値制御装置1は、次周期以降の制御においては、数値制御装置1から送信する指令値は適応制御用指令値が反映されたものとなり、数値制御装置1とモータ制御装置3との間で指令値の不整合を防止することができる。
 適応制御装置2から数値制御装置1への適応制御用指令値の送信方法の具体例について説明する。実施の形態1と同様に、適応制御装置2から数値制御装置1への適応制御用指令値は、数値制御装置1とモータ制御装置3との間の通信回線を用いて行うことができる。図7は、制御周期におけるサーボ制御用指令値の通信期間と適応制御用指令値の通信期間との一例を示す図である。図7では、本実施の形態の実施の形態1の図5の例で説明したように、上り方向と下り方向とでそれぞれ制御周期内での通信期間が定められているとしている。図7に示すように、下り方向の通信では、制御周期内でサーボ制御用指令値の通信期間の後に適応制御用指令値の通信期間が設けられているが、各通信期間の制御周期内の配置はこの例に限定されず、各通信期間が制御周期内で重複しないように配置されればどのような配置であってもよい。
 なお、数値制御装置1と適応制御装置2との間で、図示しない別の通信回線が存在する場合には、該通信回線を用いて、適応制御装置2が適応制御用指令値を数値制御装置1へ送信するようにしてもよい。この場合、制御周期における適応制御用指令値の通信期間を定めておく必要はない。なお、本実施の形態では、モータ制御装置3が、適応制御用指令値を受信する機能と、適応制御用指令値とサーボ制御用指令値とのうちいずれかを選択する機能とを有している必要がある。したがって、モータ制御装置3がこれらの機能を有していない場合、ソフトウェアを変更することによりこれらの機能が実現できる。このソフトウェア変更は軽微であり、モータ制御装置3の負荷の増加も軽微である。
 以上のように、本実施の形態では、適応制御装置2が数値制御装置1だけでなくモータ制御装置3へも適応制御用指令値を送信するようにした。このため、実施の形態1と同様の効果が得られるとともに、実施の形態1にかかるモータ制御システムよりも高速にモータ制御装置に適応制御指令値を伝達することができる。
実施の形態3.
 図8は、本発明の実施の形態3にかかるモータ制御システムの構成例を示す図である。図8に示すように、本実施の形態のモータ制御システムは、適応制御装置2の代わりに適応制御装置2aを備える以外は、実施の形態1のモータ制御システムと同様である。適応制御装置2aは、実施の形態1の適応制御装置2にデータ保存用メモリ25を追加した構成を有する。実施の形態1と同様の機能を有する構成要素は、実施の形態1と同一の符号を付して実施の形態1と重複する説明を省略する。以下、実施の形態1と異なる点を主に説明する。
 本実施の形態では、プロセッサ22は、センサデータ、フィードバックデータおよびサーボ制御用指令値のうち、保存が必要なデータを選択して、選択したデータを一定時間、データ保存用メモリ25へ格納する。すなわち、データ保存用メモリ25は、第1の指令値であるサーボ制御用の指令値、フィードバックデータ、およびセンサデータのうち少なくとも1つを記憶するメモリである。保存が必要なデータとは、後述するように、過去のデータに基づく解析に使用されるデータである。プロセッサ22は、データ保存用メモリ25に格納されたデータに基づいて適応制御演算を実施する。なお、データ保存用メモリ25と記憶部24が1つのメモリにより実現されてもよい。
 また、図8では、データ保存用メモリ25は適応制御装置2aの中に含まれているが、この例に限定されず、適応制御装置2aが、USB(Universal Serial Bus)メモリ、SDカードをはじめとした外部記憶媒体とのデータの送受信を行う外部記憶媒体I/F部、外部記憶媒体をデータ保存用メモリ25として用いてもよい。また、適応制御装置2aが、LAN(Local Area Network)I/F部を備えこれらのI/F部を介して適応制御装置2の外部のHDD(Hard Disk Drive)、データサーバのメモリなどをデータ保存用メモリ25として用いてもよい。また、適応制御装置2aの内部のデータ保存用メモリ25と、HDD(Hard Disk Drive)、データサーバのメモリなどの外部のメモリとの両方に、上記の選択したデータを保存してもよい。すなわち、適応制御装置2aは、適応制御装置2aの外部に設けられた外部メモリに、サーボ制御用の指令値、フィードバックデータ、およびセンサデータのうち少なくとも1つを記憶させてもよい。
 本実施の形態の各装置の機能構成例は実施の形態1と同様であるが、本実施の形態の適応制御装置2aの適応制御演算部53は、プロセッサ22および記憶部24だけでなくデータ保存用メモリ25を用いて実現される。本実施の形態の適応制御演算部53の動作について説明する。
 適応制御演算部53は、抽出部52から適応制御演算に必要なデータを受け取ると、保存が必要なデータを選択して保存する。例えば、工作機械、ロボットなどにおいては、繰り返し同じ軌跡の制御を行うことがある。このような場合、適応制御演算部53は、位置指令値とそれに対応する位置フィードバックデータとをデータ保存用メモリ25に保存しておく。そして、適応制御演算部53はデータ保存用メモリ25に保存されている過去の同じ軌跡における位置指令値とそれに対応する位置フィードバックデータの誤差を計算し、その誤差が小さくなるように位置指令値を補正することで、制御対象物の実際の位置を本来の指令位置に近づけることができる。また、例えば、適応制御演算部53は、温度データを用いた熱変位補正を行う場合において、温度データをデータ保存用メモリ25に保存しておき、データ保存用メモリ25に保存されている過去の温度データと位置の誤差データ、すなわち位置指令値とそれに対応する位置フィードバックデータの誤差を用いることで、より高精度な熱変異補正を実現できる。
 なお、上記の例では、実施の形態1のモータ制御システムにデータ保存用メモリ25を追加する例を説明したが、実施の形態2のモータ制御システムにおいて、適応制御装置2の内部および外部の少なくとも一方にデータ保存用メモリ25を追加して、本実施の形態と同様に過去のデータを用いた適応制御を実現してもよい。
 このように、本実施の形態では、適応制御装置2aの内部および外部のうち少なくも一方にデータ保存用メモリ25を備えるようにした。これにより、実施の形態1と同様の効果が得られるとともに、過去のデータを用いたより高精度な適応制御を実現できる。
実施の形態4.
 次に、本発明にかかる実施の形態4のモータ制御システムについて説明する。本実施の形態のモータ制御システムの構成は実施の形態1と同様である。また、モータ制御システムを構成する各装置の構成も実施の形態1と同様である。また、本実施の形態の動作は、以下に述べる動作を実施の形態1のモータ制御システムの動作に追加するが、以下に述べる点以外の動作は実施の形態1と同様である。以下、実施の形態1と異なる部分を主に説明し、実施の形態1と重複する説明を省略する。
 数値制御装置1が正常であれば、正しいタイミングかつ正しい内容のサーボ制御用指令値を出力する。もし、数値制御装置1が故障などによりサーボ制御用指令値を出力できなくなった場合、モータ制御装置3は、何らかの異常が発生したと判断し、通常、モータ4を緊急に減速させる。しかし、複数の軸が同期して動作している機械システムでは、他の軸との関係を考慮せずに各々の軸に対応するモータ4を緊急に減速させると、場合によっては制御対象物である工具、ワーク、ロボットアームなどが互いに衝突し、破損する恐れがある。これを防ぐため、本実施の形態では、適応制御装置2の適応制御演算部53は、異常監視処理を実施する異常監視部としての機能も有し、数値制御装置1が生成するサーボ制御用指令値を監視し、サーボ制御用指令値の異常を確認すると、数値制御装置1に代わり、モータ制御装置3に対して、工具、ワーク、ロボットアームなどを互いに衝突させない減速の指令値を生成する。そして、生成した指令値を適応制御用指令値としてモータ制御装置3へ送信する。
 図9は、実施の形態3の異常監視処理手順の一例を示すフローチャートである。適応制御演算部53は、数値制御装置1から送信された指令値すなわちサーボ制御用指令値を抽出部52から受け取り、指令値を正常に受信しているか否かを判断する(ステップS21)。指令値を正常に受信しているか否かの判断は、例えば、一定時間以上数値制御装置1から指令値を受信しない場合に正常に受信していないと判断し、それ以外の場合に正常と判断する方法がある。また、受信した指令値が、あらかじめ定めた正常範囲を逸脱している場合にも、適応制御演算部53は、指令値を正常に受信していないと判断する。指令値を正常に受信している場合(ステップS21 Yes)、適応制御演算部53は、ステップS21を繰り返す。
 指令値を正常に受信していない場合(ステップS21 No)、すなわち指令値の異常を検出した場合、適応制御演算部53は、モータ4を減速させる適応制御用指令値を生成する(ステップS22)。指令値の異常を検出した場合に送信される適応制御用指令値は第3の指令値である。適応制御演算部53は、第3の指令値である適応制御用指令値を、通信部55を介してモータ制御装置3へ送信し(ステップS23)、異常監視処理を終了する。なお、ステップS23では、モータ4が複数存在する場合、複数のモータ4を減速させるようモータ制御装置3へ適応制御用指令値を送信する。なお、モータ4を減速させる指令値は、モータ4を停止させる指令値を含む。また、適応制御演算部53は、ステップS21でNoとなった場合、図示しない表示部、図示しないブザーなどを用いて異常であることをユーザに通知するようにしてもよい。また、図9では、ステップS23の後、異常監視処理を終了しているが、ステップS21へ戻るようにしてもよい。
 適応制御装置2からモータ制御装置3への適応制御用指令値の送信方法は、実施の形態2で述べた方法を用いることができる。
 以上のように、本実施の形態では、適応制御装置2が、サーボ制御用指令値を正常に受信していないことを検出すると、モータ制御装置3へモータ4を減速させる適応制御用指令値を送信するようにした。このため、実施の形態1と同様の効果が得られるとともに、数値制御装置1が故障等によりサーボ制御用指令値を出力できなくなった場合において、制御対象物である工具、ワーク、ロボットアーム等を破損することなく、かつ安全に各軸のモータを停止させることができる。
 なお、上記の例では、実施の形態1のモータ制御システムに異常監視処理手順を追加する例を説明したが、実施の形態2または実施の形態3のモータ制御システムにおいて、異常監視処理手順を追加してもよい。
 以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 1 数値制御装置、2,2a 適応制御装置、3 モータ制御装置、4 モータ、11,21 通信回路、12,22 プロセッサ、13,24 記憶部、20 信号中継回路、23 センサI/F回路、25 データ保存用メモリ、51 中継部、52 抽出部、53 適応制御演算部、54 指令値生成部、55,61 通信部、62 サーボ制御演算部、63 適応制御反映部。

Claims (8)

  1.  数値制御装置から受信した第1の指令値、前記第1の指令値に基づいてモータを制御するモータ制御装置から受信したフィードバックデータ、およびセンサから受信したセンサデータのうち少なくとも1つに基づいて、前記モータに対する第2の指令値を生成するプロセッサと、
     前記第2の指令値を前記数値制御装置へ送信する通信回路と、
     を備えることを特徴とする制御装置。
  2.  前記数値制御装置と前記モータ制御装置との間の通信回線に接続され、前記数値制御装置から前記モータ制御装置へ送信された前記第1の指令値をそのまま通過させ、前記モータ制御装置から前記数値制御装置へ送信された前記フィードバックデータをそのまま通過させる信号中継回路を備えることを特徴とする請求項1に記載の制御装置。
  3.  前記通信回路は、第2の指令値をさらに前記モータ制御装置へ送信することを特徴とする請求項1または2に記載の制御装置。
  4.  前記第1の指令値、前記フィードバックデータ、および前記センサデータのうち少なくとも1つを記憶するメモリ、
     を備えることを特徴とする請求項1から3のいずれか1つに記載の制御装置。
  5.  前記適応制御装置の外部に設けられた外部メモリに、前記第1の指令値、前記フィードバックデータ、および前記センサデータのうち少なくとも1つを記憶させることを特徴とする請求項1から4のいずれか1つに記載の制御装置。
  6.  前記プロセッサは、前記第1の指令値の異常を検出した場合、前記モータ制御装置に対して前記モータを減速させる第3の指令値を生成し、
     前記通信回路は、前記第3の指令値を前記モータ制御装置へ送信することを特徴とする請求項1から5のいずれか1つに記載の制御装置。
  7.  数値制御装置から受信した第1の指令値、前記第1の指令値に基づいてモータを制御するモータ制御装置から受信したフィードバックデータ、およびセンサから受信したセンサデータのうち少なくとも1つに基づいて、前記モータに対する第2の指令値を生成する指令値生成部と、
     前記第2の指令値を前記数値制御装置へ送信する通信部と、
     を備えることを特徴とする制御装置。
  8.  数値制御装置と、
     数値制御装置から受信した第1の指令値に基づいてモータを制御し、前記数値制御装置へフィードバックデータを送信するモータ制御装置と、
     前記数値制御装置と前記モータ制御装置との間に接続可能な制御装置と、
     を備え、
     前記制御装置は、
     前記数値制御装置から受信した前記第1の指令値、前記モータ制御装置から受信した前記フィードバックデータ、およびセンサから受信したセンサデータのうち少なくとも1つに基づいて、前記モータに対する第2の指令値を生成するプロセッサと、
     前記第2の指令値を前記数値制御装置へ送信する通信部と、
     を備え、
     前記数値制御装置は、
     前記第2の指令値を受信すると前記第2の指令値に基づいて前記第1の指令値を補正することを特徴とするモータ制御システム。
PCT/JP2017/013694 2017-03-31 2017-03-31 制御装置およびモータ制御システム WO2018179368A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/JP2017/013694 WO2018179368A1 (ja) 2017-03-31 2017-03-31 制御装置およびモータ制御システム
US16/463,853 US10599104B2 (en) 2017-03-31 2017-03-31 Control device and motor control system
DE112017005867.8T DE112017005867B4 (de) 2017-03-31 2017-03-31 Steuerungsvorrichtung und Motorsteuerungssystem
CN201780078137.0A CN110100210B (zh) 2017-03-31 2017-03-31 控制装置及电动机控制系统
JP2017558757A JP6272599B1 (ja) 2017-03-31 2017-03-31 制御装置およびモータ制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/013694 WO2018179368A1 (ja) 2017-03-31 2017-03-31 制御装置およびモータ制御システム

Publications (1)

Publication Number Publication Date
WO2018179368A1 true WO2018179368A1 (ja) 2018-10-04

Family

ID=61074887

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/013694 WO2018179368A1 (ja) 2017-03-31 2017-03-31 制御装置およびモータ制御システム

Country Status (5)

Country Link
US (1) US10599104B2 (ja)
JP (1) JP6272599B1 (ja)
CN (1) CN110100210B (ja)
DE (1) DE112017005867B4 (ja)
WO (1) WO2018179368A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021000711A (ja) * 2019-06-24 2021-01-07 株式会社ディスコ 被加工物の加工方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7087316B2 (ja) * 2017-09-27 2022-06-21 オムロン株式会社 情報処理装置、情報処理方法およびプログラム
WO2019162653A1 (en) * 2018-02-21 2019-08-29 Bae Systems Plc Actively damped robot
JP6901434B2 (ja) 2018-06-15 2021-07-14 ファナック株式会社 ロボットシステムおよびロボット
JP6898374B2 (ja) 2019-03-25 2021-07-07 ファナック株式会社 ロボット装置の動作を調整する動作調整装置およびロボット装置の動作を調整する動作調整方法
CN111367239B (zh) * 2020-03-17 2023-04-25 东菱技术有限公司 伺服驱动器的自动化控制方法、系统及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6239158A (ja) * 1985-08-15 1987-02-20 Niigata Eng Co Ltd 数値制御工作機械における適応制御方法
JPH09179623A (ja) * 1995-12-22 1997-07-11 Makino Milling Mach Co Ltd 数値制御による機械装置の制御方法および装置
JP2014140918A (ja) * 2013-01-23 2014-08-07 Hitachi Ltd 切削振動抑止方法、演算制御装置、および工作機械
JP2016052692A (ja) * 2014-09-02 2016-04-14 三菱電機株式会社 数値制御装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09269811A (ja) 1996-03-30 1997-10-14 Aisin Seiki Co Ltd ロボット制御装置
US6794842B2 (en) * 2000-12-19 2004-09-21 Mitsubishi Denki Kabushiki Kaisha Servomotor drive control system
JP2004078895A (ja) 2002-06-17 2004-03-11 Sanyo Electric Co Ltd 分散制御システムおよび分散制御方法
JP4174543B2 (ja) * 2007-01-29 2008-11-05 ファナック株式会社 サーボモータの制御装置
DE112010005994T5 (de) * 2010-11-11 2013-09-05 Mitsubishi Electric Corporation Motorsteuersystem und Sicherheitsüberwachungssystem dafür
JP5266412B2 (ja) 2011-08-10 2013-08-21 ファナック株式会社 マルチコアプロセッサを有する数値制御装置システム
JP5689494B2 (ja) 2013-03-28 2015-03-25 ファナック株式会社 位置制御ゲインを生成する上位制御装置
JP5863860B2 (ja) * 2014-03-20 2016-02-17 ファナック株式会社 加工時の軸間の干渉を低減するサーボ制御装置
JP6063016B1 (ja) 2015-09-29 2017-01-18 ファナック株式会社 電動機に対する動作指令を学習する機械学習方法および機械学習装置並びに該機械学習装置を備えた工作機械

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6239158A (ja) * 1985-08-15 1987-02-20 Niigata Eng Co Ltd 数値制御工作機械における適応制御方法
JPH09179623A (ja) * 1995-12-22 1997-07-11 Makino Milling Mach Co Ltd 数値制御による機械装置の制御方法および装置
JP2014140918A (ja) * 2013-01-23 2014-08-07 Hitachi Ltd 切削振動抑止方法、演算制御装置、および工作機械
JP2016052692A (ja) * 2014-09-02 2016-04-14 三菱電機株式会社 数値制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021000711A (ja) * 2019-06-24 2021-01-07 株式会社ディスコ 被加工物の加工方法
JP7242141B2 (ja) 2019-06-24 2023-03-20 株式会社ディスコ 被加工物の加工方法

Also Published As

Publication number Publication date
DE112017005867T5 (de) 2019-08-01
CN110100210B (zh) 2020-09-22
CN110100210A (zh) 2019-08-06
US10599104B2 (en) 2020-03-24
JP6272599B1 (ja) 2018-01-31
DE112017005867B4 (de) 2022-07-14
US20190302705A1 (en) 2019-10-03
JPWO2018179368A1 (ja) 2019-04-11

Similar Documents

Publication Publication Date Title
JP6272599B1 (ja) 制御装置およびモータ制御システム
EP2372478B1 (en) Motor driving system and motor controller
US9409295B2 (en) Method for controlling a robot
EP3388906B1 (en) Motor control system, motor controller, and method for setting safety function
US11613015B2 (en) Technique for providing reliable control in a cloud robotics system
KR102233373B1 (ko) 공작기계의 자동 커터교체장치 및 이의 제어방법
CN108886481B (zh) 通信控制系统以及通信控制方法
JP6441257B2 (ja) 数値制御装置および同期追従制御方法
WO2007115705A1 (en) Multi-input control of an industrial robot system
CN110268348B (zh) 控制装置、控制方法以及计算机可读取记录媒体
JP2018036713A (ja) 複数の製造設備からなる生産設備の稼働停止時に原因を特定する機能を備えた生産制御装置
JP5687302B2 (ja) 負荷駆動制御装置及び負荷駆動制御方法
JP5030628B2 (ja) 干渉チェックシステム
JP2005071086A (ja) モーションコントロールシステム
JP2012113473A (ja) 制御システムコントローラ
JP2009199155A (ja) 制御システム及び制御方法
US20230062371A1 (en) Robot system, method for controlling robot system, method for manufacturing article using robot system, system, method for controlling system, and recording medium
US20210080927A1 (en) Numerical control system with buffering of position setpoint values
US20220371197A1 (en) Stopping a production machine on a collision-free path
WO2023053343A1 (ja) 制御装置
EP4060492A1 (en) Method to generate safe control data for a local machine
WO2022264336A1 (ja) 制御装置及び制御システム
JP6966415B2 (ja) 制御方法、制御装置及びプログラム
JP2006227719A (ja) モーションコントロールシステム
US20220035330A1 (en) Control system, support apparatus and program

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2017558757

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 17903699

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17903699

Country of ref document: EP

Kind code of ref document: A1