WO2018179165A1 - 通信装置、通信システムおよび通信方法 - Google Patents

通信装置、通信システムおよび通信方法 Download PDF

Info

Publication number
WO2018179165A1
WO2018179165A1 PCT/JP2017/013002 JP2017013002W WO2018179165A1 WO 2018179165 A1 WO2018179165 A1 WO 2018179165A1 JP 2017013002 W JP2017013002 W JP 2017013002W WO 2018179165 A1 WO2018179165 A1 WO 2018179165A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
data
cycle
calculation
motion controller
Prior art date
Application number
PCT/JP2017/013002
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/013002 priority Critical patent/WO2018179165A1/ja
Priority to JP2018510131A priority patent/JPWO2018179165A1/ja
Publication of WO2018179165A1 publication Critical patent/WO2018179165A1/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
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter

Definitions

  • the present invention relates to a communication device, a communication system, and a communication method that perform synchronous communication.
  • a motion controller that is a master station and a plurality of servo amplifiers that are slave stations need to operate in synchronization with each other.
  • the motion controller is a control device that controls the servo amplifier and a communication device that performs synchronous communication.
  • the servo amplifier is a drive device that drives a motor and a communication device that performs synchronous communication.
  • the motion controller and the servo amplifier perform synchronous communication in accordance with the communication standard for synchronous communication.
  • the motion controller periodically delivers position commands and the like to a plurality of servo amplifiers at a preset communication cycle.
  • a conventional motion controller that performs synchronous communication calculates a command such as a position command and a velocity command at every calculation cycle and transmits the command to a servo amplifier. For this reason, the motion controller transmits a command every calculation cycle. That is, the calculation cycle and the communication cycle are the same. For this reason, when the calculation cycle is shortened in order to improve the temporal resolution of the command, it is necessary to shorten the communication cycle in accordance with the shortening of the calculation cycle. In order to shorten the communication cycle, it is necessary to change a communication circuit such as a communication LSI (Large-Scale Integration).
  • a motion controller that performs control by asynchronous communication may be used.
  • the motion controller buffers a specified number of position commands calculated by interpolation processing, and transmits these position commands to the servo amplifier at a time. Is disclosed.
  • the technique of Patent Document 1 aims at improving the control accuracy of the trajectory between target positions in asynchronous communication, and does not shorten the calculation cycle of the calculation for generating the control signal output to the motor.
  • the technique of Patent Document 1 is based on the assumption of asynchronous communication, the servo amplifier is stored in its own buffer and the reception confirmation of frequent position commands separately from the calculation for generating the control signal to be output to the motor. It is necessary to perform redundant processing for synchronous communication, such as flag processing for managing the number of position commands. For this reason, even if the technique described in Patent Document 1 is applied to synchronous communication, the processing becomes complicated.
  • the present invention has been made in view of the above, and in a communication device that performs synchronous communication, a communication device that can reduce the calculation cycle without depending on the communication cycle while suppressing the complexity of processing.
  • the purpose is to obtain.
  • a communication device is a communication device that performs synchronous communication, and a calculation unit that generates data for each calculation cycle shorter than the communication cycle in synchronous communication; And a communication unit that transmits a plurality of data generated by the calculation unit for each communication cycle.
  • the communication device has an effect that the calculation cycle can be shortened without depending on the communication cycle while suppressing complication of processing in the communication device that performs synchronous communication.
  • FIG. 3 illustrates a configuration example of a processing circuit according to the first embodiment.
  • the figure which shows the mode of the command data stored in the buffer of Embodiment 1. 7 is a flowchart illustrating an example of a processing procedure in the servo amplifier according to the first embodiment.
  • FIG. 8 is a flowchart illustrating an example of a processing procedure in the servo amplifier according to the second embodiment.
  • the flowchart which shows an example of the process sequence in the motion controller of Embodiment 2.
  • FIG. 1 is a diagram illustrating a configuration example of a motion control system according to the first embodiment of the present invention.
  • the motion control system 100 includes a motion controller 1 and servo amplifiers 2-1 to 2-m.
  • m is an integer of 2 or more.
  • the servo amplifiers 2-1 to 2-m drive the connected motors 3-1 to 3-m, respectively.
  • a motion control system 100 shown in FIG. 1 is an example of a communication system according to the present invention, and a motion controller 1 is an example of a communication apparatus according to the present invention.
  • the motion controller 1 and the servo amplifiers 2-1 to 2-m perform synchronous communication.
  • the motion controller 1 includes a calculation unit 11, a communication unit 12, a buffer 13, and a program storage unit 14.
  • the program storage unit 14 stores a motion control program.
  • the motion control program is a control program for performing position control of the motors 3-1 to 3 -m.
  • the calculation unit 11 reads the motion control program from the program storage unit 14 and calculates position commands corresponding to the motors 3-1 to 3-m according to the motion program.
  • the motors 3-1 to 3-m correspond to different axes of industrial machines such as machine tools, semiconductor manufacturing apparatuses, and industrial robots.
  • the motion controller 1 generates position commands corresponding to the motors 3-1 to 3-m so as to move the industrial machine to a desired position according to the motion control program.
  • the communication unit 12 performs synchronous communication with the servo amplifiers 2-1 to 2-m. Specifically, the communication unit 12 performs transmission / reception processing of data used for motion control control with the servo amplifiers 2-1 to 2-m.
  • the buffer 13 is storage means capable of storing position command data calculated for each calculation cycle.
  • the sensor 4-i is a sensor that detects the rotational position of the motor 3-i, and is, for example, a detector called an encoder or a pulse generator. The detection result by the sensor 4-i is output to the servo amplifier 2-i.
  • the servo amplifier 2-1 includes a communication unit 21, a calculation unit 22, and a drive circuit 23.
  • the communication unit 21 performs synchronous communication with the motion controller 1. Specifically, the communication unit 21 performs transmission / reception processing of data used for motion control control with the motion controller 1.
  • the calculation unit 22 generates a control signal to be output to the drive circuit 23 based on the position command received from the motion controller 1 via the communication unit 21 and the detection result by the sensor 4-1, and the generated control signal is generated by the drive circuit. To 23.
  • An example of the drive circuit 23 is an inverter circuit including a plurality of switching elements formed of a semiconductor, and an example of a control signal output from the arithmetic unit 22 to the drive circuit 23 is a PWM (Pulse Width Modulation) signal.
  • the drive circuit 23 applies an AC voltage to the motor 3-1 according to the control signal.
  • the configuration of the servo amplifiers 2-2 to 2-m is the same as that of the servo amplifier 2-1.
  • the servo amplifiers 2-1 to 2-m are shown without distinction, they are described as the servo amplifier 2
  • the motors 3-1 to 3-m are shown without distinction, they are described as the motor 3 and the sensor 4
  • -1 to 4-m are indicated without distinction, they are referred to as sensors 4.
  • the communication unit 12 is realized by a communication circuit such as a communication LSI.
  • the calculation unit 11 is a processing circuit.
  • This processing circuit is, for example, a processing circuit including the processor shown in FIG.
  • FIG. 2 is a diagram illustrating a configuration example of a processing circuit including a processor.
  • the processing circuit 200 illustrated in FIG. 2 includes a processor 201 and a memory 202.
  • the processor 201 is a CPU (Central Processing Unit), a microprocessor, or the like.
  • the memory 202 corresponds to, for example, a non-volatile or volatile semiconductor memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, or a magnetic disk.
  • each function of the arithmetic unit 11 is stored in the memory 202, and a program for realizing the function of the arithmetic unit 11 is stored in the processor 201. This is realized by being executed.
  • the memory 202 is also used as a storage area when a program is executed by the processor 201.
  • the calculation unit 11 may be realized by a processing circuit that is dedicated hardware.
  • the processing circuit that is dedicated hardware includes, for example, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a combination of these.
  • the program storage unit 14 and the buffer 13 shown in FIG. 1 are realized by a memory.
  • the memory corresponds to, for example, a nonvolatile or volatile semiconductor memory, a magnetic disk, or the like, such as a RAM, a ROM, or a flash memory.
  • the arithmetic unit 11 is realized by the processing circuit 200 shown in FIG. 2, at least one of the program storage unit 14 and the buffer 13 may be realized by a partial memory area of the memory 202.
  • the communication unit 21 is realized by a communication circuit such as a communication LSI.
  • the calculation unit 22 is a processing circuit. This processing circuit is, for example, a processing circuit including the processor shown in FIG. When the calculation unit 22 is realized by the processing circuit 200 illustrated in FIG. 2, each function of the calculation unit 22 is stored in the memory 202, and a program for realizing the function of the calculation unit 22 is stored in the processor 201. This is realized by being executed.
  • the arithmetic unit 22 may be realized by a processing circuit that is dedicated hardware.
  • the processing circuit which is dedicated hardware includes, for example, ASIC, FPGA, or a combination of these.
  • FIG. 3 is a flowchart showing an example of a processing procedure in the motion controller 1 of the present embodiment.
  • the motion controller 1 first analyzes the motion program (step S1). Specifically, the calculation unit 11 reads a motion program from the program storage unit 14.
  • the positioning control loop is started in step S1.
  • the end condition of the positioning control loop is that the target position has been reached.
  • the target position is defined by a motion program.
  • the calculation unit 11 determines whether or not it is the calculation cycle (step S2).
  • the calculation cycle indicates the calculation start timing in one calculation cycle.
  • calculation of position command calculation which will be described later, is started at every calculation cycle that is a fixed cycle. Therefore, if, for example, the beginning in each calculation cycle is determined as the calculation start timing, the calculation can be performed for each calculation cycle.
  • the calculation start timing within one calculation cycle is not limited to the top of one calculation cycle, and can be set to any timing within one calculation cycle.
  • Step S2 If it is not the calculation cycle (No at Step S2), the calculation unit 11 repeats Step S2.
  • the calculating part 11 calculates a position command according to a motion program (step S3).
  • the position command is calculated for each servo amplifier 2, that is, for each motor 3.
  • the computing unit 11 stores the calculated position command as command data in the buffer 13 (step S4). Note that data indicating a position command calculated by one position command calculation of each servo amplifier 2 is referred to as command data.
  • the calculation unit 11 determines whether or not it is a communication cycle (step S5).
  • the communication cycle indicates a transmission timing in one communication cycle.
  • a plurality of command data are transmitted together for each communication cycle that is a fixed cycle.
  • the timing at which transmission is performed in one communication cycle is determined in advance.
  • N is an integer of 2 or more.
  • the communication cycle may be a cycle that is twice or more the calculation cycle, and may not be an integer multiple of the calculation cycle. If the communication cycle is an integral multiple of the calculation cycle, the processing can be simplified.
  • step S5 If it is not a communication cycle (No in step S5), the motion controller 1 returns to the process in step S2 if the end condition of the positioning control loop is not satisfied. Also, the motion controller 1 ends the process when the end condition of the positioning control loop is satisfied instead of the communication cycle (No in step S5).
  • step S6 the motion controller 1 performs a transmission process (step S6). Specifically, the arithmetic unit 11 instructs the communication unit 12 to transmit the command data stored in the buffer 13 to the corresponding servo amplifier 2, and the communication unit 12 transmits the command data according to the instruction. . The transmitted command data is erased from the buffer 13. After the transmission process, the motion controller 1 returns to the process of step S2 when the positioning control loop end condition is not satisfied, and ends the processing when the positioning control loop end condition is satisfied.
  • FIG. 4 is a diagram showing a state of command data stored in the buffer 13 of the present embodiment.
  • FIG. 4 shows how the command data corresponding to one servo amplifier 2 is stored, and the command data is similarly stored for each servo amplifier 2.
  • the upper part of FIG. 4 shows a state after step S3 and step S4 are performed once, and stores command data # 1 which is one command data.
  • the command data # 1 is abbreviated as # 1, and similarly, each command data is abbreviated by # and a number.
  • step S3 and step S4 are performed twice, the command data # 2 is additionally stored in the buffer 13.
  • step S3 and step S4 are performed N times, N pieces of command data # 1 to command data #N are stored as shown in the lower part of FIG. Since N times the calculation cycle is the communication cycle, in step S5, transmission processing is performed in the state shown in the lower part of FIG. That is, in step S5, N command data are transmitted at once.
  • the processing shown in FIG. 3 is performed for each motion program.
  • positioning control a plurality of motion programs having different target positions may be used.
  • a plurality of controls such as single positioning control, continuous positioning control, and continuous trajectory control are performed according to the operation pattern
  • the target position is set as positioning data.
  • FIG. 5 is a flowchart showing an example of a processing procedure in the servo amplifier 2 of the present embodiment.
  • the servo amplifier 2 determines whether there is data received from the motion controller 1 (step S11). Specifically, when the communication unit 21 receives data from the motion controller 1, it passes the received data to the calculation unit 22. The arithmetic unit 22 determines that there is received data from the motion controller 1 when data is received from the communication unit 21.
  • the servo amplifier 2 repeats Step S11.
  • the servo amplifier 2 performs a reception process (step S12).
  • the reception data received by the servo amplifier 2 is data transmitted from the motion controller 1 by the transmission processing described above, that is, data including a plurality of command data.
  • the calculation unit 22 divides the received data into individual command data.
  • step S13 the servo amplifier 2 performs motor control based on the command data (step S13).
  • This command is unprocessed command data among a plurality of command data obtained by dividing received data.
  • the calculation unit 22 generates a control signal for controlling the drive circuit 23 based on the command data and the detection result by the sensor 4, and outputs the control signal to the drive circuit 23.
  • the drive circuit 23 generates an alternating voltage based on the control signal and applies it to the motor 3.
  • the servo amplifier 2 determines whether or not it is the calculation cycle (step S14), and if it is not the calculation cycle (step S14 No), repeats step S14. If it is the calculation cycle (step S14, Yes), the servo amplifier 2 determines whether or not the processing corresponding to all received command data has been completed (step S15).
  • the received all command data is all command data obtained by dividing the received data by the receiving process in step S12.
  • step S15 When the processing corresponding to all the received command data has been completed (step S15, Yes), the servo amplifier 2 performs the processing from step S11 again. If the processing corresponding to all received command data has not been completed (No at Step S15), the processing from Step S13 is performed again.
  • FIG. 6 is a diagram for explaining the difference between the operation of the present embodiment and the comparative example.
  • the upper part of FIG. 6 shows an example in which the calculation cycle and the communication cycle are the same as a comparative example.
  • the lower part of FIG. 6 shows an example using the calculation cycle and communication cycle of the present embodiment.
  • N 2.
  • each command data is abbreviated by # and number.
  • command data is transmitted every calculation cycle, whereas in the present embodiment, command data is transmitted every two calculation cycles. Therefore, two command data are transmitted in a lump.
  • the calculation unit 11 of the motion controller 1 generates a position command that is data for each calculation cycle shorter than the communication cycle in synchronous communication, and the communication unit 12 receives a plurality of data generated by the calculation unit 11. Transmit every communication cycle. That is, the motion controller 1 as the first communication device transmits a plurality of command data together. Then, the servo amplifier 2 as the second communication device divides the received data, that is, a plurality of command data into individual command data, and performs an operation using the divided command data. For this reason, it is not necessary to frequently check the reception of position commands, and there is no need for flag processing for managing the number of position commands stored in its own buffer 13, and the calculation cycle can be made shorter than the communication cycle. . That is, the motion control system 100 according to the present embodiment can shorten the calculation cycle without complicating the processing and without depending on the communication cycle.
  • FIG. 7 and 8 are diagrams for explaining the effect of the present embodiment.
  • FIG. 7 is a diagram illustrating an example of a locus in a comparative example in which the communication cycle and the calculation cycle are the same.
  • FIG. 8 is a diagram illustrating an example of a trajectory in the present embodiment.
  • 7 and 8 show an example in which motion control is performed using two motors 3 respectively corresponding to the two axes of the axes X and Y.
  • Black circles shown in FIGS. 7 and 8 indicate position commands, that is, command data. 7 and 8 have the same communication cycle, and the calculation cycle of the example shown in FIG. 8 is 1 ⁇ 2 of the calculation cycle of the example shown in FIG.
  • the trajectory is smoother than in the comparative example, and highly accurate trajectory control is possible. Thereby, it becomes possible to apply the motion control system 100 of this Embodiment to a precision processing machine.
  • the calculation cycle can be shortened without changing the communication circuit in the synchronous communication. If the communication circuit is changed, the cost increases due to the hardware change. However, in this embodiment, since it is not necessary to change the communication circuit, highly accurate trajectory control can be realized while suppressing the cost.
  • the motion controller 1 generates a position command and transmits the generated position command to the servo amplifiers 2-1 to 2-m has been described above.
  • the command generated by the motion controller 1 is not limited to the position command. , A torque command or a speed command, or two or more of a position command, a speed command, and a torque command.
  • the operation of the present embodiment can be applied. That is, the motion controller 1 may buffer commands generated every calculation cycle and transmit them collectively every communication cycle. Further, when the motion controller 1 generates data other than the command data for each calculation cycle, the operation of the present embodiment can also be applied.
  • the motion control system has been described as an example of the communication system according to the present invention.
  • any communication system including a communication device that transmits a calculation result to another device by synchronous communication can be applied to other than the motion control system. .
  • FIG. 9 is a diagram illustrating a configuration example of the motion control system according to the second embodiment of the present invention.
  • the motion control system 100a includes a motion controller 1a and servo amplifiers 2a-1 to 2a-m. Similar to the first embodiment, m is described as being an integer of 2 or more. However, when m is 1, the operation of the present embodiment can be applied.
  • the servo amplifiers 2a-1 to 2a-m control the connected motors 3-1 to 3-m, respectively.
  • a motion control system 100a shown in FIG. 9 is an example of a communication system according to the present invention, and a motion controller 1a and servo amplifiers 2-1a to 2a-m are examples of a communication apparatus according to the present invention.
  • the motion controller 1a is the same as the motion controller 1 of the first embodiment except that it includes a calculation unit 11a instead of the calculation unit 11.
  • the servo amplifiers 2a-1 to 2a-m are the same as the servo amplifiers 2-1 to 2-m of the first embodiment except that they include a calculation unit 22a instead of the calculation unit 22 and a buffer 24 is added.
  • the buffer 24 is a storage unit that can store feedback data to be described later.
  • the servo amplifiers 2a-1 to 2a-m are shown without distinction, they are referred to as a servo amplifier 2a.
  • the buffer 24 is realized by a memory.
  • the calculation unit 11a and the calculation unit 22a are realized by a processing circuit including a processor or a processing circuit that is dedicated hardware, similarly to the calculation unit 11 and the calculation unit 22 of the first embodiment. Since the hardware for realizing the other components is the same as that of the first embodiment, description thereof is omitted.
  • the motion controller 1a Similar to the motion controller 1 of the first embodiment, the motion controller 1a collectively transmits a plurality of command data.
  • the communication cycle is N times the calculation cycle.
  • a plurality of data is also transmitted in batches for data transmitted from the servo amplifiers 2a-1 to 2a-m to the motion controller 1a.
  • the data transmitted from the servo amplifiers 2a-1 to 2a-m to the motion controller 1a may be any data.
  • feedback data will be described as an example.
  • the feedback data is data indicating a control state in the servo amplifiers 2a-1 to 2a-m.
  • the feedback data is, for example, the current position of the motor 3 based on the detection result by the sensor 4.
  • the motion control system that performs synchronous communication generally has the same communication cycle and calculation cycle. Further, when feedback data is transmitted from the servo amplifier to the motion controller, the feedback data is calculated for each calculation cycle. In the present embodiment, even when feedback data is transmitted from the servo amplifier 2a to the motion controller 1a, the servo amplifier 2a receives a plurality of feedback data so that the calculation cycle can be shortened from the communication cycle. Send all at once.
  • FIG. 10 is a flowchart showing an example of a processing procedure in the servo amplifier 2a of the present embodiment. As shown in FIG. 10, steps S11 to S13 are the same as in the first embodiment. After step S13, the servo amplifier 2a calculates feedback data (step S16), and stores the feedback data in the buffer 24 (step S17).
  • the calculation unit 22a determines whether or not it is a communication cycle (step S18). When it is not a communication cycle (step S18, No), the servo amplifier 2a advances the process to step S14. If it is a communication cycle (step S18, Yes), the servo amplifier 2a performs a transmission process (step S19). Specifically, the arithmetic unit 22a instructs the communication unit 21 to transmit the feedback data stored in the buffer 24 to the motion controller 1a, and the communication unit 21 transmits the feedback data according to the instruction. The transmitted feedback data is erased from the buffer 24. After step S19, the servo amplifier 2a advances the process to step S14. Steps S14 and S15 are the same as in the first embodiment.
  • the feedback data may be transmitted from all the servo amplifiers 2a to the motion controller 1a or may be transmitted from some servo amplifiers 2a to the motion controller 1a.
  • the servo amplifier 2a corresponding to the main axis transmits feedback data to the motion controller 1a,
  • the corresponding serve amplifier 2a does not have to transmit feedback data to the motion controller 1a.
  • FIG. 11 is a flowchart showing an example of a processing procedure in the motion controller 1a of the present embodiment.
  • the motion controller 1a is the same as the processing of the motion controller 1 of the first embodiment except that step S7 and step S8 are performed at the beginning of the positioning control loop.
  • step S7 the motion controller 1a determines whether there is received data. Specifically, when the communication unit 12 receives data from the serve amplifier 2, it passes the received data to the calculation unit 11a. The arithmetic unit 11 a determines that there is received data from the servo amplifier 2 when data is received from the communication unit 12.
  • the motion controller 1a proceeds to Step S2.
  • the motion controller 1a performs reception processing (step S8).
  • the reception data received by the motion controller 1a is data transmitted from the servo amplifier 2 by the transmission processing in step S19 described above, that is, data including a plurality of feedback data.
  • the feedback data is displayed on a display device (not shown) of the motion controller 1 or a display device outside the motion controller 1, for example, as monitor data indicating the current state of the motor. For example, the latest feedback data among a plurality of feedback data included in the received data is displayed.
  • Step S4 and subsequent steps are the same as those in the first embodiment.
  • the calculation unit 22a of the servo amplifier 2a generates feedback data that is data for each calculation cycle shorter than the communication cycle in synchronous communication.
  • the buffer 24 stores feedback data generated by the calculation unit 22a.
  • the communication unit 21 transmits a plurality of command data stored in the buffer 24 once for each communication cycle. That is, in the present embodiment, a plurality of feedback data generated for each calculation cycle are collectively transmitted from the servo amplifier 2a. For this reason, it is not necessary to frequently check the reception of feedback data, and there is no need for flag processing for managing the number of position commands stored in its own buffer 24, so that the calculation cycle for generating feedback data is communicated. It can be shorter than the period. For this reason, it is possible to improve the temporal resolution of the feedback data without changing the communication cycle, and it can be applied to the control of a device requiring high-precision positioning control such as a high-speed rotary press. .
  • the servo amplifier 2a is the second communication device of the first embodiment in the transmission of command data, and a plurality of data are transmitted in the communication cycle in the transmission of feedback data. It is also the first communication device that transmits every time.
  • the motion controller 1a is the first communication device according to the first embodiment. In the transmission of feedback data, the motion controller 1a divides a plurality of received data into individual data and performs an operation using the divided data. It is also a second communication device.
  • 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.
  • 1, 1a motion controller 2-1 to 2-m, 2a-1 to 2a-m servo amplifier, 3-1 to 3-m motor, 4-1 to 4-m sensor, 11, 11a, 22, 22a calculation Unit, 12, 21 communication unit, 13, 24 buffer, 23 drive circuit, 100, 100a motion control system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Numerical Control (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

本発明にかかるモーションコントローラ(1)は、同期通信における通信周期より短い演算周期ごとに位置指令を生成する演算部(11)と、演算部(11)で生成される複数のデータを、通信周期ごとに送信する通信部(12)と、を備える。

Description

通信装置、通信システムおよび通信方法
 本発明は、同期通信を行う通信装置、通信システムおよび通信方法に関する。
 工作機械、半導体製造装置、産業用ロボットなどでは、複数の軸に対応する複数のモータを使用した高精度なモーション制御が必要とされる。複数のモータを使用した高精度なモーション制御を行うモーションコントロールシステムにおいては、マスタ局であるモーションコントローラと、スレーブ局である複数のサーボアンプとはお互いに同期して動作を行う必要がある。モーションコントローラは、サーボアンプを制御する制御装置であるとともに、同期通信を行う通信装置である。サーボアンプはモータを駆動する駆動装置であるとともに、同期通信を行う通信装置である。
 このため、モーションコントローラとサーボアンプとは、同期通信用の通信規格に従って同期通信を行っている。同期通信により、モーションコントローラは、複数のサーボアンプへ、あらかじめ設定された通信周期により、周期的に位置指令などの受渡しを行っている。
 同期通信を行う従来のモーションコントローラは、位置指令、速度指令などをはじめとした指令を演算周期ごとに算出しサーボアンプへ送信する。このため、モーションコントローラは指令を演算周期ごとに送信することになる。すなわち、演算周期と通信周期は同一である。このため、指令の時間的分解能を向上させるために演算周期を短縮する場合、演算周期の短縮に合わせて通信周期の短縮が必要となる。通信周期の短縮を図ろうとした場合には、通信LSI(Large-Scale Integration)などの通信用回路を変更する必要がある。
 一方、高精度なモーション制御が必要とされない場合には非同期通信により制御を行うモーションコントローラが用いられることがある。特許文献1では、非同期通信において軌跡制御を実現するために、モーションコントローラが、補間処理により算出した指定個数の位置指令をバッファリングしておき、これらの位置指令を一度にサーボアンプに送信する技術が開示されている。
特開2006-72399号公報
 しかしながら、特許文献1の技術は、非同期通信における目標位置間の軌跡の制御精度の向上を目的としており、モータへ出力する制御信号を生成する演算の演算周期を短縮させるものではない。また、特許文献1の技術では、非同期通信を前提としているため、サーボアンプは、モータへ出力する制御信号を生成する演算とは別に、頻繁な位置指令の受信確認、および自身のバッファに格納された位置指令の個数を管理するフラグ処理など、同期通信にとっては冗長な処理を実施する必要がある。このため、特許文献1に記載の技術を同期通信に適用したとしても、処理が煩雑となる。
 本発明は、上記に鑑みてなされたものであって、同期通信を行う通信装置において、処理の煩雑化を抑制しつつ、通信周期に依存せずに演算周期を短縮することができる通信装置を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明にかかる通信装置は、同期通信を行う通信装置であって、同期通信における通信周期より短い演算周期ごとにデータを生成する演算部と、演算部で生成される複数のデータを、通信周期ごとに送信する通信部と、を備えることを特徴とする。
 本発明にかかる通信装置は、同期通信を行う通信装置において、処理の煩雑化を抑制しつつ、通信周期に依存せずに演算周期を短縮することができるという効果を奏する。
実施の形態1にかかるモーションコントロールシステムの構成例を示す図 実施の形態1の処理回路の構成例を示す図 実施の形態1のモーションコントローラにおける処理手順の一例を示すフローチャート 実施の形態1のバッファに格納される指令データの様子を示す図 実施の形態1のサーボアンプにおける処理手順の一例を示すフローチャート 実施の形態1の動作と比較例との差を説明するための図 通信周期と演算周期とを同一とした比較例における軌跡の一例を示す図 実施の形態1における軌跡の一例を示す図 実施の形態2にかかるモーションコントロールシステムの構成例を示す図 実施の形態2のサーボアンプにおける処理手順の一例を示すフローチャート 実施の形態2のモーションコントローラにおける処理手順の一例を示すフローチャート
 以下に、本発明の実施の形態にかかる通信装置、通信システムおよび通信方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
 図1は、本発明の実施の形態1にかかるモーションコントロールシステムの構成例を示す図である。図1に示すように、モーションコントロールシステム100は、モーションコントローラ1と、サーボアンプ2-1~2-mとを備える。ここでは、mは2以上の整数であるとして説明するが、mが1の場合に本実施の形態の動作を適用することもできる。サーボアンプ2-1~2-mは、接続されるモータ3-1~3-mをそれぞれ駆動する。図1に示したモーションコントロールシステム100は、本発明にかかる通信システムの一例であり、モーションコントローラ1は本発明にかかる通信装置の一例である。モーションコントローラ1と、サーボアンプ2-1~2-mとは、同期通信を行う。
 図1に示すように、モーションコントローラ1は、演算部11、通信部12、バッファ13およびプログラム格納部14を備える。プログラム格納部14には、モーションコントロールプログラムが格納される。モーションコントロールプログラムは、モータ3-1~3-mの位置制御を行うための制御プログラムである。演算部11は、プログラム格納部14からモーションコントロールプログラムを読み出して、モーションプログラムにしたがってモータ3-1~3-mに対応する位置指令を算出する。例えば、モータ3-1~3-mは、工作機械、半導体製造装置、産業用ロボットなどの産業用機械の異なる軸に対応する。モーションコントローラ1は、モーションコントロールプログラムにしたがって産業用機械を所望の位置に移動させるように、モータ3-1~3-mに対応する位置指令を生成する。通信部12は、サーボアンプ2-1~2-mとの間で同期通信を行う。詳細には、通信部12は、サーボアンプ2-1~2-mとの間でモーションコントロール制御に用いるデータの送受信処理を行う。バッファ13は、後述するように、演算周期ごとに算出される位置指令のデータを格納可能な記憶手段である。
 なお、ここでは、モーションコントローラ1がモーションプログラムを格納するためのプログラム格納部14を備える例を説明するが、モーションプログラムは、モーションコントローラ1の外部から入力されてもよい。
 図1に示すように、サーボアンプ2-i(i=1,…,m)は、モータ3-iと接続される。センサ4-iは、モータ3-iの回転位置を検出するセンサであり、例えば、エンコーダまたはパルスジェネレータとよばれる検出器である。センサ4-iによる検出結果は、サーボアンプ2-iへ出力される。
 図1に示すように、サーボアンプ2-1は、通信部21、演算部22および駆動回路23を備える。通信部21は、モーションコントローラ1との間で同期通信を行う。詳細には、通信部21は、モーションコントローラ1との間でモーションコントロール制御に用いるデータの送受信処理を行う。演算部22は、通信部21を介してモーションコントローラ1から受信した位置指令とセンサ4-1による検出結果とに基づいて駆動回路23へ出力する制御信号を生成し、生成した制御信号を駆動回路23へ出力する。駆動回路23の一例は、半導体で形成された複数のスイッチング素子を備えるインバータ回路であり、演算部22から駆動回路23へ出力する制御信号の一例は、PWM(Pulse Width Modulation)信号である。駆動回路23は、制御信号にしたがって、モータ3-1へ交流電圧を印加する。サーボアンプ2-2~2-mの構成は、サーボアンプ2-1と同様である。以下、サーボアンプ2-1~2-mを区別せずに示すときには、サーボアンプ2と記載し、モータ3-1~3-mを区別せずに示すときには、モータ3と記載し、センサ4-1~4-mを区別せずに示すときには、センサ4と記載する。
 次に、モーションコントローラ1のハードウェア構成について説明する。通信部12は、通信LSIなどの通信回路により実現される。演算部11は、処理回路である。この処理回路は、例えば、図2に示したプロセッサを備える処理回路である。図2は、プロセッサを備える処理回路の構成例を示す図である。図2に示した処理回路200は、プロセッサ201およびメモリ202を備える。プロセッサ201は、CPU(Central Processing Unit)、マイクロプロセッサ等である。メモリ202は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリー、等の、不揮発性または揮発性の半導体メモリ、磁気ディスク等が該当する。
 演算部11が、図2に示した処理回路200により実現される場合、演算部11の各機能は、メモリ202に格納された、演算部11の機能が実現されるためのプログラムが、プロセッサ201により実行されることにより実現される。メモリ202は、プロセッサ201によりプログラムが実行される際の記憶領域としても用いられる。または、演算部11は専用のハードウェアである処理回路により実現されてもよい。専用のハードウェアである処理回路は、例えばASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせたものを含む。
 また、図1に示したプログラム格納部14、バッファ13はメモリにより実現される。メモリは、例えば、RAM、ROM、フラッシュメモリー、等の、不揮発性または揮発性の半導体メモリ、磁気ディスク等が該当する。なお、演算部11が図2に示した処理回路200で実現される場合、プログラム格納部14およびバッファ13のうちの少なくとも1つがメモリ202の一部のメモリ領域により実現されてもよい。
 次に、サーボアンプ2-1~2-mのハードウェア構成について説明する。通信部21は、通信LSIなどの通信回路により実現される。演算部22は、処理回路である。この処理回路は、例えば、図2に示したプロセッサを備える処理回路である。演算部22が、図2に示した処理回路200により実現される場合、演算部22の各機能は、メモリ202に格納された、演算部22の機能が実現されるためのプログラムが、プロセッサ201により実行されることにより実現される。または、演算部22は専用のハードウェアである処理回路により実現されてもよい。専用のハードウェアである処理回路は、例えばASIC、FPGA、またはこれらを組み合わせたものを含む。
 次に、本実施の形態の動作について説明する。まず、モーションコントローラ1の動作を説明する。図3は、本実施の形態のモーションコントローラ1における処理手順の一例を示すフローチャートである。モーションコントローラ1は、まず、モーションプログラムを解析する(ステップS1)。具体的には、演算部11が、プログラム格納部14からモーションプログラムを読出す。
 ステップS1により、位置決め制御のループが開始される。位置決め制御のループの終了条件は目標位置へ到達したことである。目標位置は、モーションプログラムにより規定される。位置決め制御のループが開始されると、演算部11は、演算周期であるか否かを判断する(ステップS2)。演算周期であるとは、1演算周期における演算の開始タイミングであることを示す。本実施の形態では一定周期である演算周期ごとに、後述する位置指令算出の演算を開始する。したがって、各演算周期内の例えば先頭を演算の開始タイミングと定めておけば、演算周期ごとに演算を実施することができる。1演算周期内の演算の開始タイミングは1演算周期の先頭に限定されず1演算周期内の任意のタイミングに設定可能である。
 演算周期でない場合(ステップS2 No)、演算部11は、ステップS2を繰り返す。演算周期である場合(ステップS2 Yes)、演算部11は、モーションプログラムにしたがって、位置指令を算出する(ステップS3)。位置指令は、サーボアンプ2ごと、すなわちモータ3ごとに算出される。演算部11は、算出した位置指令を指令データとしてバッファ13へ格納する(ステップS4)。なお、各サーボアンプ2の1回の位置指令算出の演算により算出された位置指令を示すデータを指令データと呼ぶ。
 次に、演算部11は、通信周期であるか否かを判断する(ステップS5)。通信周期であるとは、1通信周期における送信のタイミングであることを示す。本実施の形態では一定周期である通信周期ごとに、複数の指令データをまとめて送信する。1通信周期においてどのタイミングで送信を行うかについてはあらかじめ定められている。以下では、通信周期が演算周期のN倍である例について説明する。Nは2以上の整数である。通信周期は演算周期の2倍以上の周期であればよく、演算周期の整数倍でなくてもよい。通信周期が演算周期の整数倍であると処理を簡素化できる。
 通信周期でない場合(ステップS5 No)、モーションコントローラ1は、位置決め制御のループの終了条件が満たされていない場合、ステップS2の処理へ戻る。また、モーションコントローラ1は、通信周期でなく(ステップS5 No)、位置決め制御のループの終了条件が満たされた場合、処理を終了する。
 通信周期である場合(ステップS5 Yes)、モーションコントローラ1は、送信処理を実施する(ステップS6)。具体的には、演算部11が、通信部12へ、バッファ13に格納された指令データを、対応するサーボアンプ2へそれぞれ送信するよう指示し、通信部12が、指示に従って指令データを送信する。送信された指令データはバッファ13から消去される。送信処理の後、モーションコントローラ1は、位置決め制御のループの終了条件が満たされていない場合、ステップS2の処理へ戻り、位置決め制御のループの終了条件が満たされた場合、処理を終了する。
 図4は、本実施の形態のバッファ13に格納される指令データの様子を示す図である。図4は、1つのサーボアンプ2に対応する指令データの格納の様子を示しており、サーボアンプ2ごとに、同様に指令データが格納される。図4の上段は、ステップS3およびステップS4が1回実施された後の状態を示しており、1つの指令データである指令データ#1が格納される。なお、図4では、指令データ#1を#1と略しており、同様に各指令データは#と番号とで略して示されている。ステップS3およびステップS4が2回実施されると、指令データ#2がバッファ13に追加で格納される。これが繰り返されることにより、ステップS3およびステップS4がN回実施された後は、図4の下段に示すように、指令データ#1~指令データ#NのN個のデータが格納されている。演算周期のN倍が通信周期であることから、ステップS5では、図4の下段に示した状態で、送信処理が行われる。すなわち、ステップS5では、N個の指令データが一括して送信される。
 なお、モーションプログラムが複数存在する場合、モーションプログラムごとに、図3に示した処理を実施する。位置決め制御においては、目標位置が異なる複数のモーションプログラムが用いられることがある。例えば、運転パターンにより、単独位置決め制御、連続位置決め制御、連続軌跡制御といった複数の制御が実施される場合、これらの制御のうち目標位置が異なる制御がある。例えば、連続位置決め、連続軌跡制御では位置決めデータとしてそれぞれ目標位置を設定することになる。各制御に対応するモーションプログラムを運転パターンにしたがって実施することにより、連続位置決め、連続軌跡制御のように複数の種類の制御を行う場合にも、本実施の形態の動作を適用できる。
 図5は、本実施の形態のサーボアンプ2における処理手順の一例を示すフローチャートである。サーボアンプ2は、モーションコントローラ1からの受信データがあるか否かを判断する(ステップS11)。具体的には、通信部21が、モーションコントローラ1からデータを受信すると、受信したデータを演算部22へ渡す。演算部22は、通信部21からデータを受け取った場合にモーションコントローラ1からの受信データがあると判断する。
 モーションコントローラ1からの受信データがない場合(ステップS11 No)、サーボアンプ2は、ステップS11を繰り返す。モーションコントローラ1からの受信データがあった場合(ステップS11 Yes)、サーボアンプ2は、受信処理を実施する(ステップS12)。ここで、サーボアンプ2が受信する受信データは、上述した送信処理によりモーションコントローラ1から送信されたデータ、すなわち複数の指令データを含むデータである。ステップS12では、具体的には、演算部22が、受信データを個々の指令データに分割する。
 次に、サーボアンプ2は、指令データを基にモータ制御を実施する(ステップS13)。この指令では、受信データを分割して得られた複数の指令データのうちの未処理の指令データである。ステップS13では、詳細には、演算部22が指令データとセンサ4による検出結果とに基づいて駆動回路23を制御するための制御信号を生成して駆動回路23へ出力する。駆動回路23は、制御信号に基づいて交流電圧を生成してモータ3へ印加する。
 次に、サーボアンプ2は、演算周期であるか否かを判断し(ステップS14)、演算周期でない場合(ステップS14 No)、ステップS14を繰り返す。演算周期である場合(ステップS14 Yes)、サーボアンプ2は、受信した全指令データに対応する処理を終了したか否かを判断する(ステップS15)。受信した全指令データは、ステップS12の受信処理により受信データが分割されて得られた全指令データである。
 受信した全指令データに対応する処理を終了した場合(ステップS15 Yes)、サーボアンプ2は、再びステップS11からの処理を実施する。受信した全指令データに対応する処理を終了していない場合(ステップS15 No)、ステップS13からの処理を再び実施する。
 図6は、本実施の形態の動作と比較例との差を説明するための図である。図6の上段には、比較例として演算周期と通信周期を同一とした例が示されている。図6の下段には、本実施の形態の演算周期と通信周期を用いた例が示されている。図6の下段に示した例では、N=2である。なお、図6では、図4と同様に、各指令データは#と番号とで略して示されている。図6に示したように、比較例では、演算周期ごとに指令データが送信されるのに対し、本実施の形態では、2つの演算周期ごとに指令データが送信される。したがって、2つの指令データが一括して送信される。
 以上のように、モーションコントローラ1の演算部11は、同期通信における通信周期より短い演算周期ごとにデータである位置指令を生成し、通信部12は、演算部11で生成される複数のデータを、通信周期ごとに送信する。すなわち、第1の通信装置であるモーションコントローラ1は複数の指令データをまとめて送信する。そして、第2の通信装置であるサーボアンプ2は受信したデータすなわち複数の指令データを、個別の指令データに分割し、分割した指令データを用いて演算を実施する。このため、位置指令の受信確認を頻繁に行う必要はなく、また自身のバッファ13に格納された位置指令の個数を管理するフラグ処理なども必要なく、通信周期より演算周期を短くすることができる。すなわち、本実施の形態のモーションコントロールシステム100は、処理を煩雑化せずに、通信周期に依存せずに演算周期を短縮することができる。
 図7および図8は、本実施の形態の効果を説明するための図である。図7は、通信周期と演算周期とを同一とした比較例における軌跡の一例を示す図である。図8は、本実施の形態における軌跡の一例を示す図である。図7および図8では、軸Xと軸Yとの2軸にそれぞれ対応する2つのモータ3を用いたモーションコントロールが行われる例を示している。図7および図8に示した黒丸は、位置指令すなわち指令データを示す。図7と図8とでは、通信周期が同一であり、図8に示した例の演算周期は、図7に示した例の演算周期の1/2である。図7および図8に示すように、本実施の形態では比較例に比べ、軌跡がなめらかになり、高精度な軌跡制御が可能となる。これにより、本実施の形態のモーションコントロールシステム100を、精密加工機へ適用することが可能となる。
 位置決め制御においては、非同期通信を用いる例は現状では少なく、一般的に、同期通信が用いられる。本実施の形態では、同期通信における通信回路を変更せずに、演算周期を短縮することができる。通信回路を変更すると、ハードウェアの変更に伴うコスト増が生じるが、本実施の形態では、通信回路を変更する必要がないため、コストを抑えて高精度な軌跡制御を実現することができる。また、非同期通信を行う場合には、非同期通信の間隔が空いて位置指令が途切れることを抑制するためにはテストモーションプログラムを実施するなどが必要であるが、本実施の形態では、通信周期と演算周期をあらかじめ適切に定めておけばよいため位置指令が途切れることはないため、テストモーションプログラムなどの実施の必要はなく、モーションコントロールシステム100が稼働可能となるまでの立ち上げ時間を抑制することができる。
 以上、モーションコントローラ1が位置指令を生成して、生成した位置指令をサーボアンプ2-1~2-mへ送信する例を説明したが、モーションコントローラ1が生成する指令は位置指令に限定されず、トルク指令または速度指令であってもよく、位置指令、速度指令およびトルク指令のうちの2つ以上であってもよい。これらの場合にも、本実施の形態の動作を適用できる。すなわち、モーションコントローラ1が演算周期ごとに生成される指令をバッファリングし、通信周期ごとにまとめて送信するようにすればよい。また、モーションコントローラ1が、指令データ以外のデータを演算周期ごとに生成する場合に、本実施の形態の動作を適用することもできる。
 以上、本発明にかかる通信システムとしてモーションコントロールシステムを例に説明したが、演算結果を同期通信により他の装置へ送信する通信装置を備える通信システムであればモーションコントロールシステム以外にも適用可能である。
実施の形態2.
 図9は、本発明の実施の形態2にかかるモーションコントロールシステムの構成例を示す図である。図9に示すように、モーションコントロールシステム100aは、モーションコントローラ1aと、サーボアンプ2a-1~2a-mとを備える。実施の形態1と同様に、mは2以上の整数であるとして説明するが、mが1の場合に本実施の形態の動作を適用することもできる。サーボアンプ2a-1~2a-mは、それぞれ、接続されるモータ3-1~3-mを制御する。図9に示したモーションコントロールシステム100aは、本発明にかかる通信システムの一例であり、モーションコントローラ1aおよびサーボアンプ2-1a~2a-mは本発明にかかる通信装置の一例である。
 モーションコントローラ1aは、演算部11の代わりに演算部11aを備える以外は実施の形態1のモーションコントローラ1と同様である。サーボアンプ2a-1~2a-mは、演算部22の代わりに演算部22aを備え、バッファ24が追加される以外は実施の形態1のサーボアンプ2-1~2-mと同様である。バッファ24は、後述するフィードバックデータを格納可能な記憶手段である。以下、サーボアンプ2a-1~2a-mを区別せずに示すときには、サーボアンプ2aと記載する。センサ4-i(i=1,…,m)は、実施の形態1と同様である。センサ4-iによる検出結果は、サーボアンプ2a-iへ出力される。実施の形態1と同様の機能を有する構成要素は実施の形態1と同一の符号を付して重複する説明を省略する。以下、実施の形態1と異なる点を主に説明し、実施の形態1と同様の部分の説明は省略する。
 本実施の形態のハードウェア構成について説明する。バッファ24はメモリにより実現される。演算部11aおよび演算部22aは、実施の形態1の演算部11および演算部22と同様に、プロセッサを備える処理回路または専用のハードウェアである処理回路により実現される。その他の構成要素が実現するためのハードウェアは実施の形態1と同様であるため、説明を省略する。
 本実施の形態の動作について説明する。モーションコントローラ1aは、実施の形態1のモーションコントローラ1と同様に、複数の指令データを一括して送信する。ここでは、実施の形態1と同様に、通信周期が演算周期のN倍であるとする。本実施の形態では、さらに、サーボアンプ2a-1~2a-mからモーションコントローラ1aへ送信されるデータについても、複数のデータが一括して送信される。サーボアンプ2a-1~2a-mからモーションコントローラ1aへ送信されるデータは、どのようなデータであってもよいが、以下では、フィードバックデータを例に挙げて説明する。フィードバックデータは、サーボアンプ2a-1~2a-mにおける制御状態を示すデータである。フィードバックデータは、例えば、センサ4による検出結果に基づくモータ3の現在位置である。
 同期通信を行うモーションコントロールシステムは、一般的に、上述した通り、通信周期と演算周期が同一である。また、フィードバックデータがサーボアンプからモーションコントローラへ送信される場合には、フィードバックデータは演算周期ごとに算出される。本実施の形態では、フィードバックデータがサーボアンプ2aからモーションコントローラ1aへ送信される場合にも、演算周期を通信周期より短縮することが可能となるように、サーボアンプ2aは、複数のフィードバックデータをまとめて送信する。
 図10は、本実施の形態のサーボアンプ2aにおける処理手順の一例を示すフローチャートである。図10に示すように、ステップS11~ステップS13は実施の形態1と同様である。ステップS13の後、サーボアンプ2aは、フィードバックデータを算出し(ステップS16)、フィードバックデータをバッファ24へ格納する(ステップS17)。
 次に、演算部22aは、通信周期であるか否かを判断する(ステップS18)。通信周期でない場合(ステップS18 No)、サーボアンプ2aは、処理をステップS14へ進める。通信周期である場合(ステップS18 Yes)、サーボアンプ2aは、送信処理を実施する(ステップS19)。具体的には、演算部22aが、通信部21へ、バッファ24に格納されたフィードバックデータを、モーションコントローラ1aへ送信するよう指示し、通信部21が、指示に従ってフィードバックデータを送信する。送信されたフィードバックデータはバッファ24から消去される。ステップS19の後、サーボアンプ2aは、処理をステップS14へ進める。ステップS14およびステップS15は実施の形態1と同様である。
 なお、フィードバックデータは、全てのサーボアンプ2aからモーションコントローラ1aへ送信されてもよいし、一部のサーボアンプ2aからモーションコントローラ1aへ送信されてもよい。例えば、複数のモータ3により制御される軸が主軸と主軸に同期して制御される従軸とを含む場合、主軸に対応するサーボアンプ2aがフィードバックデータをモーションコントローラ1aへ送信し、従軸に対応するサーブアンプ2aはフィードバックデータをモーションコントローラ1aへ送信しなくてもよい。
 図11は、本実施の形態のモーションコントローラ1aにおける処理手順の一例を示すフローチャートである。図11に示すように、モーションコントローラ1aは、位置決め制御のループのはじめに、ステップS7およびステップS8を実施する以外は実施の形態1のモーションコントローラ1の処理と同様である。ステップS7では、モーションコントローラ1aは、受信データがあるか否かを判断する。具体的には、通信部12が、サーブアンプ2からデータを受信すると、受信したデータを演算部11aへ渡す。演算部11aは、通信部12からデータを受け取った場合にサーボアンプ2からの受信データがあると判断する。
 サーボアンプ2aからの受信データがない場合(ステップS7 No)、モーションコントローラ1aは、ステップS2へ進む。サーボアンプ2からの受信データがあった場合(ステップS7 Yes)、モーションコントローラ1aは、受信処理を実施する(ステップS8)。ここで、モーションコントローラ1aが受信する受信データは、上述したステップS19の送信処理によりサーボアンプ2から送信されたデータ、すなわち複数のフィードバックデータを含むデータである。ステップS8の後、フィードバックデータは、例えばモータの現在状態を示すモニタデータとして、モーションコントローラ1の図示しない表示装置またはモーションコントローラ1外の表示装置に表示される。例えば、受信したデータに含まれる複数のフィードバックデータのうち最新のフィードバックデータが表示される。また、モーションコントローラ1が、外部センサを使用し実現値をラッチする機能を使用している場合には、ラッチデータの精度向上のために、データに含まれる複数のフィードバックデータすなわち受信したデータを分割して得られるデータを用いて実現在値を算出する。フィードバックデータの分解能が高いほどラッチデータの精度が向上する。ステップS4以降は実施の形態1と同様である。
 以上のように、サーボアンプ2aの演算部22aは、同期通信における通信周期より短い演算周期ごとにデータであるフィードバックデータを生成する。バッファ24は、演算部22aにより生成されるフィードバックデータを格納する。通信部21は、通信周期ごとに、バッファ24に格納された複数の指令データを1回で送信する。すなわち、本実施の形態では、演算周期ごとに生成されるフィードバックデータが複数まとめてサーボアンプ2aから送信される。このため、フィードバックデータの受信確認を頻繁に行う必要はなく、また自身のバッファ24に格納された位置指令の個数を管理するフラグ処理なども必要なく、フィードバックデータを生成する演算の演算周期を通信周期より短くすることができる。このため、通信周期を変更せずに、フィードバックデータの時間的な分解能を向上させることができ、高速輪転機をはじめとした高精度な位置決め制御が要求される装置の制御に適用することができる。
 以上のように、本実施の形態ではサーボアンプ2aは、指令データの伝送においては、実施の形態の1の第2の通信装置であるとともに、フィードバックデータの伝送においては、複数のデータを通信周期ごとに送信する第1の通信装置でもある。また、モーションコントローラ1aは、実施の形態1の第1の通信装置であるとともに、フィードバックデータの伝送においては、受信した複数のデータを個別のデータに分割し、分割したデータを用いて演算を実施する第2の通信装置でもある。
 なお、本実施の形態では、実施の形態1と同様の指令データの一括送信と、フィードバックデータの一括送信の両方を実施する例を説明したが、指令データの一括送信は行わずに、フィードバックデータの一括送信だけを行ってもよい。この場合、モーションコントローラにおける位置指令の生成と、サーボアンプ2aにおける位置指令に基づくモータ制御との演算周期は通信周期と同一となるが、フィードバックデータの生成処理の演算周期を短縮することができる。
 以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 1,1a モーションコントローラ、2-1~2-m,2a-1~2a-m サーボアンプ、3-1~3-m モータ、4-1~4-m センサ、11,11a,22,22a 演算部、12,21 通信部、13,24 バッファ、23 駆動回路、100,100a モーションコントロールシステム。

Claims (7)

  1.  同期通信を行う通信装置であって、
     前記同期通信における通信周期より短い演算周期ごとにデータを生成する演算部と、
     前記演算部で生成される複数の前記データを、前記通信周期ごとに送信する通信部と、
     を備えることを特徴とする通信装置。
  2.  前記通信装置は、モータを駆動するサーボアンプを制御するモーションコントローラであり、
     前記データは、前記モーションコントローラから前記サーボアンプへ送信される位置指令であることを特徴とする請求項1に記載の通信装置。
  3.  前記通信装置は、モータを駆動するサーボアンプであり、
     前記データは、前記サーボアンプから前記サーボアンプを制御するモーションコントローラへ送信されるフィードバックデータであることを特徴とする請求項1に記載の通信装置。
  4.  同期通信を行う第1の通信装置および第2の通信装置を備える通信システムであって、
     前記第1の通信装置は、
     前記同期通信における通信周期より短い演算周期ごとにデータを生成する演算部と、
     前記演算部で生成される複数の前記データを、前記通信周期ごとに送信する通信部と、
     を備え、
     前記第2の通信装置は、
     受信した複数の前記データを個別の前記データに分割し、分割した前記データを用いて演算を実施することを特徴とする通信システム。
  5.  前記第2の通信装置は、モータを駆動するサーボアンプであり、
     前記第1の通信装置は、前記サーボアンプを制御するモーションコントローラであり、
     前記データは、前記モーションコントローラから前記サーボアンプへ送信される位置指令であることを特徴とする請求項4に記載の通信システム。
  6.  前記サーボアンプは、
     前記演算周期ごとにフィードバックデータを生成する演算部と、
     前記演算部で生成される複数の前記フィードバックデータを、前記通信周期ごとに送信する通信部と、
     を備えることを特徴とする請求項5に記載の通信システム。
  7.  同期通信を行う通信装置における通信方法であって、
     前記同期通信における通信周期より短い演算周期ごとにデータを生成する第1のステップと、
     前記第1のステップにより生成される複数の前記データを、前記通信周期ごとに送信する第2のステップと、
     を備えることを特徴とする通信方法。
PCT/JP2017/013002 2017-03-29 2017-03-29 通信装置、通信システムおよび通信方法 WO2018179165A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2017/013002 WO2018179165A1 (ja) 2017-03-29 2017-03-29 通信装置、通信システムおよび通信方法
JP2018510131A JPWO2018179165A1 (ja) 2017-03-29 2017-03-29 通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/013002 WO2018179165A1 (ja) 2017-03-29 2017-03-29 通信装置、通信システムおよび通信方法

Publications (1)

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

Family

ID=63674425

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/013002 WO2018179165A1 (ja) 2017-03-29 2017-03-29 通信装置、通信システムおよび通信方法

Country Status (2)

Country Link
JP (1) JPWO2018179165A1 (ja)
WO (1) WO2018179165A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216332A (ja) * 2002-01-18 2003-07-31 Alps Electric Co Ltd 座標データ送信システム
JP2006072399A (ja) * 2004-08-31 2006-03-16 Yaskawa Electric Corp モーションコントロールシステム
JP2006163601A (ja) * 2004-12-03 2006-06-22 Fanuc Ltd 産業機械のデータ転送装置
JP2006227717A (ja) * 2005-02-15 2006-08-31 Yaskawa Electric Corp モーション制御システムとその制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007025759A (ja) * 2005-07-12 2007-02-01 Hitachi Industrial Equipment Systems Co Ltd 電動機駆動装置および位置指令装置ならびに位置決め装置
JP6239434B2 (ja) * 2014-04-16 2017-11-29 株式会社日立産機システム モータ駆動装置の制御方法、モータ制御システムおよびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216332A (ja) * 2002-01-18 2003-07-31 Alps Electric Co Ltd 座標データ送信システム
JP2006072399A (ja) * 2004-08-31 2006-03-16 Yaskawa Electric Corp モーションコントロールシステム
JP2006163601A (ja) * 2004-12-03 2006-06-22 Fanuc Ltd 産業機械のデータ転送装置
JP2006227717A (ja) * 2005-02-15 2006-08-31 Yaskawa Electric Corp モーション制御システムとその制御方法

Also Published As

Publication number Publication date
JPWO2018179165A1 (ja) 2019-04-04

Similar Documents

Publication Publication Date Title
JP5314110B2 (ja) マスタ軸とスレーブ軸との同期制御を行うモータ制御装置
US7541763B2 (en) Servo control device
US10429815B2 (en) Motor control device, position control system, and motor control method
JP6724831B2 (ja) コントロールシステム、コントローラ及び制御方法
WO2012114435A1 (ja) 電動機制御システムおよび通信方法
JP6497331B2 (ja) 制御装置および同期制御方法
JP2005056171A (ja) 制御装置
EP3361635B1 (en) Control system and pulse output device
US20180264650A1 (en) Controller, control system, and control method
JP4044105B2 (ja) 系統毎に運転手段を切り替える機能を有する数値制御装置
JP2019216558A (ja) 駆動装置、駆動方法、及びプログラム
JP2014123188A (ja) 分散制御装置及び分散制御方法
JP5687302B2 (ja) 負荷駆動制御装置及び負荷駆動制御方法
US9622201B2 (en) Synchronization of control device
WO2018179165A1 (ja) 通信装置、通信システムおよび通信方法
JP5748126B2 (ja) 同期制御システム
US20200333762A1 (en) Machine control system, machine controller, and vibration suppression command generation method
CN103907070B (zh) 伺服控制装置
JP2008289312A (ja) 複数軸同期制御システムおよび複数軸同期制御方法
JP2002326267A (ja) 射出成形機におけるサーボモータの制御方法
JP2003330510A (ja) 数値制御装置の同期制御方法
JP2007025759A (ja) 電動機駆動装置および位置指令装置ならびに位置決め装置
WO2020012902A1 (ja) 制御装置、および制御方法
JP4638094B2 (ja) 複数軸制御装置及びその軸間同期方法
JP2013169063A (ja) モータ制御装置、ロボット装置及びモータ制御方法

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018510131

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17904304

Country of ref document: EP

Kind code of ref document: A1