WO2018150544A1 - 多重通信システム及び作業用ロボット - Google Patents
多重通信システム及び作業用ロボット Download PDFInfo
- Publication number
- WO2018150544A1 WO2018150544A1 PCT/JP2017/005933 JP2017005933W WO2018150544A1 WO 2018150544 A1 WO2018150544 A1 WO 2018150544A1 JP 2017005933 W JP2017005933 W JP 2017005933W WO 2018150544 A1 WO2018150544 A1 WO 2018150544A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- communication
- multiplex communication
- encoder
- encoder signal
- data
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D5/00—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
- G01D5/12—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
- G01D5/244—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains
- G01D5/249—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains using pulse code
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C25/00—Arrangements for preventing or correcting errors; Monitoring arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K13/00—Apparatus or processes specially adapted for manufacturing or adjusting assemblages of electric components
- H05K13/04—Mounting of components, e.g. of leadless components
Definitions
- the present invention relates to a multiplex communication system and a work robot that transmits data related to work by the multiplex communication system.
- a working robot disclosed in Patent Document 1 includes a multiplex communication device in a movable part.
- the multiplex communication apparatus multiplexes the encoder signal output from the rotary encoder of the movable part into multiplexed data and transmits / receives the multiplexed signal.
- the multiplex communication apparatus assigns bits of the encoder signal to bit positions of the multiplexed data and corresponding to each of the plurality of rotary encoders. In this configuration, the encoder signal is transmitted at an arbitrary determined bit position.
- the type of the movable part (for example, the mounting head) in the work robot is changed according to the purpose of use.
- the type of encoder incorporated in the movable part may be changed.
- the communication speed of the encoder signal is changed according to the type of encoder. Further, even if the encoder type is not changed, one encoder may switch the communication speed of the encoder signal during the communication. In such a case, it is desired that the multiplex communication system appropriately multiplex the encoder signal even if the communication speed of the encoder signal is switched.
- the present invention has been made in view of the above problems, and an object of the present invention is to provide a multiplex communication system and a working robot capable of multiplexing encoder signals having different communication speeds.
- the present specification describes a transmission-side multiplex communication apparatus that samples and multiplexes encoder signals that are communicated while switching at two or more different communication speeds, and transmits the multiplexed signals as multiplexed data.
- a receiving-side multiplex communication device that demultiplexes the multiplexed data received from the communication device and separates the encoder signal, and the transmitting-side multiplex communication device, when multiplexing the encoder signal, At least one of the encoder signals communicated at two or more different communication speeds using a value of the same period that can sample an integer multiple of the communication speed in each of the encoder signals communicated at two or more different communication speeds as a sampling period.
- a multiple communication system for sampling one is disclosed.
- the present specification describes a transmission-side multiplex communication apparatus that samples and multiplexes encoder signals communicated by switching at two or more different communication speeds at a sampling period and transmits the multiplexed signals as multiplexed data.
- a receiving-side multiplex communication device that demultiplexes the multiplexed data received from the transmitting-side multiplex communication device, separates the encoder signal, and outputs one data of the separated encoder signal for each output duration time
- the transmission-side multiplex communication device receives the control command for changing the communication speed of the encoder signal, and then changes the communication speed of the encoder signal after the change after a predetermined time has elapsed.
- the sampling cycle is set in accordance with the control command to change the communication speed of the encoder signal.
- the multiplex communication system are disclosed.
- this specification discloses the working robot provided with not only a multiplex communication system but a multiplex communication system.
- encoder signals with different communication speeds can be multiplexed.
- FIG. 1 is a schematic diagram showing the configuration of a multiplex communication system applied to the work robot 10.
- the working robot 10 includes an apparatus main body 20 that is fixedly provided at a place where the working robot 10 is installed, and a movable unit 30 that moves relative to the apparatus main body 20.
- the apparatus main body 20 includes a controller 21, a Y-axis linear servo amplifier 22, an X-axis linear servo amplifier 23, and three-axis rotary servo amplifiers 24 and 25.
- the movable unit 30 includes a Y-axis linear motor 31, an X-axis linear motor 32, and six rotary servomotors 33, 34, 35, 36, 37, and 38.
- the movable unit 30 is, for example, a robot arm and is driven to be displaced with a degree of freedom in each direction of the X axis, the Y axis, and the Z axis in accordance with driving of the motors 31 to 38.
- the work robot 10 Based on the control of the controller 21, the work robot 10 performs, for example, work such as attaching a work held by the movable unit 30 (robot arm) to an object conveyed on the production line.
- the controller 21 is mainly composed of a computer having a CPU, a RAM and the like.
- the controller 21 is connected to slave circuits (not shown) of the amplifiers 22 to 25 by a field network cable 41.
- the field network is, for example, MECHATRLINK (registered trademark) -III, which is a network in which the controller 21 serves as a master and transmits / receives data to / from the amplifiers 22 to 25 connected to the slave circuit.
- the network construction costs are reduced by implementing integration (reduction) of wiring and the like.
- Each of the amplifiers 22 to 25 is connected to the multiplex communication device 29 by an encoder cable 42.
- a multiplex communication device 29 provided in the apparatus main body 20 is connected to a multiplex communication device 39 provided in the movable unit 30 by a multiplex communication cable 11.
- the multiplex communication cable 11 is, for example, a LAN cable conforming to the communication standard of Gigabit Ethernet (registered trademark) or a USB cable conforming to the communication standard of USB (Universal Serial Bus) 3.0.
- the work robot 10 multiplexes encoder signals of the motors 33 to 38 provided in the movable unit 30 into frame data FRMD (an example of multiplexed data) by the multiplex communication device 39 and multiplexes the frame data via the multiplex communication cable 11. It transmits to the communication apparatus 29.
- the multiplex communication device 29 demultiplexes the received frame data FRMD and separates encoder signals corresponding to the motors 33 to 38.
- the multiplex communication device 29 transmits the separated individual encoder signals to the corresponding
- the controller 21 controls the motors 31 to 38 of the movable unit 30 via the amplifiers 22 to 25.
- the Y-axis linear servo amplifier 22 controls the Y-axis linear motor 31 of the movable unit 30.
- the movable unit 30 is provided with a linear scale 51 that detects the position of the movable unit 30 (robot arm) that moves on the guide rail along the Y-axis direction in accordance with the drive of the Y-axis linear motor 31.
- the linear scale 51 converts an encoder signal such as a position in the Y-axis direction (Y coordinate value) of the movable unit 30 in accordance with inquiry information (encoder signal) received from the Y-axis linear servo amplifier 22 into a communication protocol converter.
- inquiry information encoder signal
- the communication protocol converter 52 is connected to the multiplex communication device 39 by an encoder cable 61.
- the communication protocol converter 52 transmits the encoder signal of the linear scale 51 to the Y-axis linear servo amplifier 22 via the multiplex communication devices 29 and 39.
- the Y-axis linear servo amplifier 22 transfers the encoder signal received from the communication protocol converter 52 to the controller 21 via the field network cable 41.
- the controller 21 determines the rotational position and the like of the Y-axis linear motor 31 (position of the movable portion 30 in the Y-axis direction), and the determined control content is determined based on the Y-axis linear servo amplifier. 22 is notified.
- the Y-axis linear servo amplifier 22 is connected to, for example, a Y-axis linear motor 31 through a power line (not shown), and can control the power supplied to the Y-axis linear motor 31.
- the Y-axis linear servo amplifier 22 controls the power supplied to the Y-axis linear motor 31 based on the control content received from the controller 21 and controls the Y-axis linear motor 31.
- the robot arm is driven in the Y-axis direction according to the drive of the Y-axis linear motor 31.
- the X-axis linear servo amplifier 23 controls the X-axis linear motor 32 of the movable unit 30.
- the movable unit 30 is provided with a linear scale 53 that detects the position of the movable unit 30 that moves on the guide rail along the X-axis direction in accordance with the drive of the X-axis linear motor 32.
- the encoder signal of the linear scale 53 is output to the multiplex communication device 39 via the communication protocol converter 54 and the encoder cable 61.
- the controller 21 controls the X-axis linear motor 32 via the X-axis linear servo amplifier 23 based on the encoder signal of the linear scale 53.
- the linear scale 51 of the present embodiment performs communication using a communication protocol different from the communication protocol supported by the amplifier 22, for example.
- the communication protocol converter 52 converts input / output data of the linear scale 51 into input / output data that can be processed by the amplifier 22 and performs transmission / reception.
- the communication protocol converter 54 converts input / output data of the linear scale 53 into input / output data that can be processed by the amplifier 23, and performs transmission / reception.
- the linear scale 51 and the amplifier 22 may be devices corresponding to the same communication standard.
- the rotary servo motors 33 to 35 (hereinafter sometimes referred to as “servo motors”) have, for example, three output shafts corresponding to the respective motors. Drive in each direction of Y axis and Z axis.
- the servomotors 36 to 38 have, for example, three output shafts corresponding to each motor, and rotate the hand of the robot arm. Since the servo motors 36 to 38 have the same configuration as the servo motors 33 to 35, the description thereof will be omitted as appropriate.
- the rotary encoder 55 provided in each of the servo motors 33 to 35 outputs an encoder signal such as the rotational position of each servo motor 33 to 35 to the multiplex communication device 39 via the encoder cable 61.
- a three-axis rotary servo amplifier (hereinafter also referred to as “servo amplifier”) 24 controls each of the servo motors 33 to 35 based on the encoder signal transferred through the multiplex communication devices 29 and 39.
- the servo motor 33 is a servo motor that is driven by a three-phase alternating current having coils of each phase of U phase, V phase, and W phase.
- the coils of each phase of the servo motor 33 are connected to the servo amplifier 24 via a power line (not shown).
- the servo motor 33 is driven according to the three-phase alternating current supplied from the servo amplifier 24 through the power line.
- each of the other servo motors 34 and 35 is driven according to a three-phase alternating current supplied from the servo amplifier 24 through a power line.
- the rotary encoder 57 provided in each of the servo motors 36 to 38 outputs the encoder signal of each servo motor 36 to 38 to the multiplex communication device 39 via the encoder cable 61.
- the servo amplifier 25 controls each of the servo motors 36 to 38 based on the encoder signal transferred via the multiplex communication devices 29 and 39.
- the encoder signals of the linear scales 51 and 53 and the rotary encoders 55 and 57 corresponding to the eight motors 31 to 38 will be described as encoder signals ENCD1 to ENCD8.
- the encoder signal in the present application refers to, for example, position information transmitted from the linear scales 51 and 53 and the rotary encoders 55 and 57 to the Y-axis linear servo amplifier 22 and the linear signals from the amplifiers 22, 23, 24, and 25. It includes both control commands (initial setting information and inquiry information for acquiring the rotation position) transmitted to the scale 51 and the like.
- FIG. 2 is a block diagram showing a transmission part of the multiplex communication device 39.
- FIG. 3 is a block diagram showing a reception part of the multiplex communication device 29.
- the transmission data composition processing unit 201 of the multiplex communication device 39 shown in FIG. 2 performs error correction code addition processing on the encoder signals ENCD1 to ENCD8 output from each device.
- the encoder signal ENCD1 output from the linear scale 51 via the communication protocol converter 52 (see FIG. 1) is temporarily captured by the data capturing unit 203, and the FEC appending unit 211 performs the forward error correction code FEC of the Hamming code. (7, 4) is given.
- the data capturing unit 203 captures the encoder signal ENCD1 from the linear scale 51 (communication protocol converter 52) by communication based on a predetermined communication standard.
- the frame dividing unit 221 divides the encoder signal ENCD1 provided with the FEC by the FEC adding unit 211 according to the communication speed, transmission cycle, data length, etc. of the frame data FRMD.
- the frame division unit 221 outputs the divided encoder signal ENCD1 to the multiplexing unit 219 (“MUX” in FIG. 2).
- the counting unit 234 counts the number of times that the multiplexing unit 219 has transmitted the frame data FRMD.
- the frame dividing unit 221 performs processing for reading the next data from the FEC adding unit 211 in accordance with the count value output from the counting unit 234.
- the FEC adding unit 211 adds a forward error correction code FEC (7, 4) of the Hamming code after adding information (see FIG.
- the multiplexing unit 219 of the transmission data synthesis processing unit 201 multiplexes the input encoder signals ENCD1 to ENCD8 according to, for example, a predetermined time (time slot) assigned to the input port.
- the data multiplexed by the multiplexing unit 219 is multiplexed as frame data FRMD via, for example, an external terminal 242 (“GigE PHY-IC” in FIG. 2) compliant with the communication protocol of Gigabit Ethernet (registered trademark). It is sent to the communication cable 11.
- the multiplex communication device 29 shown in FIG. 3 receives the frame data FRMD through the multiplex communication cable 11 to the external terminal 342 (“GigE PHY-IC” in FIG. 3).
- the reception data separation processing unit 301 of the multiplex communication device 29 includes a demultiplexing unit 319 (“DEMUX” in FIG. 3).
- the demultiplexer 319 separates the encoder signals ENCD1 to ENCD8 from the frame data FRMD.
- the reception data separation processing unit 301 performs error detection / correction processing on the separated encoder signals ENCD1 to ENCD8.
- the demultiplexer 319 outputs the separated encoder signal ENCD1 to the frame synthesizer 311.
- the frame synthesis unit 311 synthesizes the encoder signal ENCD1 from the data divided into a plurality of frame data FRMD.
- the counting unit 332 counts the number of times the frame data FRMD is received by the demultiplexing unit 319.
- the frame synthesizing unit 311 synthesizes the encoder signal ENCD1 according to the count value output from the counting unit 332, and outputs the synthesized encoder signal ENCD1 to the decoding correction processing unit 312.
- the decoding correction processing unit 312 performs error detection on the synthesized encoder signal ENCD1 according to the forward error correction code (FEC) of the Hamming code, and executes data correction according to the error detection.
- FEC forward error correction code
- the decoding correction processing unit 312 outputs the encoder signal ENCD1 corrected as necessary to the data output unit 303.
- the data output unit 303 temporarily accumulates the input encoder signal ENCD 1 and transmits it to the Y-axis linear servo amplifier 22.
- the encoder signal ENCD1 has been mainly described. Since the processing of the other encoder signals ENCD2 to ENCD8 is the same as that of the encoder signal ENCD1, the description thereof is omitted.
- the configuration and operation of the reception data separation processing unit 202 provided in the multiplex communication device 39 shown in FIG. Similarly, the configuration and operation of the transmission data composition processing unit 302 included in the multiplex communication device 29 shown in FIG. 3 are the same as those of the transmission data composition processing unit 201 of the multiplex communication device 39 shown in FIG. Omitted.
- FIG. 4 shows a data structure of frame data FRMD which is an example of multiplexed data of the present application.
- frame data FRMD for example, one frame is composed of 8 bits.
- the multiplex communication devices 29 and 39 construct a communication line of 1 Gbps (8 bits ⁇ 125 MHz). This communication line is, for example, half-duplex communication.
- FIG. 4 shows data transmitted every clock (for example, 8 nsec) for transmitting the frame data FRMD. Transmission / reception of the frame data FRMD is switched every half cycle with 20 clocks as one cycle (one cycle). FIG. 4 shows 0 to 10 clocks of a half cycle (1/2 cycle). Therefore, in the example shown in FIG. 4, the multiplex communication devices 29 and 39 switch transmission and reception in synchronization with each other at the 10th clock.
- control information such as header information is set in 3 clocks (clocks 0 to 2 in FIG. 4) before transmitting encoder signals ENCD1 to ENCD8 in 1/2 cycle (10 clocks). Yes.
- data related to the encoder signals ENCD1 to ENCD8 is set in 7 clocks (clocks 3 to 9 in FIG. 4) in 1/2 cycle (10 clocks).
- Each bit from the first bit (bit position 0) to bit position 7 of the frame data FRMD corresponds to the encoder signals ENCD1 to ENCD8 in this order.
- Encoder signals ENCD1 to ENCD8 (“E1D to E8D” in the figure) are bit-assigned to each bit position in clocks 3 and 5 of frame data FRMD. Further, information indicating the presence / absence of data of the encoder signals ENCD1 to ENCD8 (“E1D present to E8D present” in the figure) is assigned to each bit position in the clocks 4 and 6 of the frame data FRMD. For example, when the data transfer rate of the encoder signals ENCD1 to ENCD8 is low compared to the data transfer rate of the frame data FRMD, the low-speed encoder signals ENCD1 to ENCD8 indicate that the data presence / absence of the data is at bit positions 0 to 0. 7 is information for indicating whether it is set to 7. The encoder signals ENCD1 to ENCD8 and the information indicating the presence or absence of the encoder signals ENCD1 to ENCD8 are alternately set for each cycle.
- a 3-bit code bit added as a correction code FEC (7, 4) is set at a bit position in the clocks 7 to 9 of the frame data FRMD.
- the encoder signals ENCD1 to ENCD8 are divided by the frame dividing unit 221 shown in FIG. 2 according to the bit width assigned to the frame data FRMD, and transmitted to the multiplexing unit 219 after the division.
- the multiplex communication devices 29 and 39 transmit the frame data FRMD in which the correction code FEC (7, 4) is set continuously for 3 clocks, and then switch between transmission and reception in synchronization with each other with 10 clocks.
- the configuration of the frame data FRMD shown in FIG. 4 is an example, and is changed as appropriate.
- the configuration of the frame data FRMD shown in FIG. 4 is a case where the linear scales 51 and 53 and the rotary encoders 55 and 57 are configured as encoders of a system (serial transmission system) that transmits data such as position information as serial signals. Illustrated.
- the configuration of the frame data FRMD may appropriately change the data at each bit position when an encoder other than the serial transmission method is used.
- FIG. 5 shows a state flow of the working robot 10.
- the encoder signal ENCD3 corresponding to the servo motor 33 is mainly described as an example among the plurality of encoder signals ENCD1 to ENCD8.
- the processing of other encoder signals is the same as that of encoder signal ENCD3, and thus the description thereof is omitted.
- the amplifier 24 and the rotary encoder 55 that process the encoder signal ENCD3 among a plurality of amplifiers (such as the Y-axis linear servo amplifier 22) and encoders (such as the linear scale 51) will be described.
- the work robot 10 is in a non-energized state.
- the working robot 10 is in a state where the main power switch is turned off.
- the amplifier 24, the rotary encoder 55, the servo motor 33, the multiplex communication devices 29 and 39, and the like are in a non-energized state where the power is not turned on.
- the work robot 10 turns on the main power switch. Accordingly, the amplifier 24 and the like are supplied with power and are activated (S13).
- the multiplex communication devices 29 and 39 are in an initialized state.
- the communication speed of the encoder signal ENCD3 may be changed during the communication depending on the specifications of the amplifier 24 and the rotary encoder 55, for example.
- the communication speed of the encoder signal ENCD3 is changed by changing the type of the rotary encoder 55 built in the movable unit 30 as the movable unit 30 is changed.
- the amplifier 24, the rotary encoder 55, and the multiplex communication devices 29 and 39 of the present embodiment have two types of modes, a high speed mode for communicating the encoder signal ENCD3 at high speed and a low speed mode for communicating at low speed. I have.
- the multiplex communication devices 29 and 39 are in a low speed mode for performing low speed communication.
- the multiplex communication devices 29 and 39 enter, for example, a high speed mode (S15, S17) in which high speed communication is performed or a state in which the low speed mode is maintained (S21) according to a predetermined condition.
- the predetermined condition is a condition for detecting a control command transmitted from the amplifier 24 to the rotary encoder 55, for example.
- the multiplex communication devices 29 and 39 detect a speed switching command for instructing switching of the speed transmitted from the amplifier 24 to the rotary encoder 55 as a control command in the communication of the encoder signal ENCD3.
- the amplifier 24 communicates with the rotary encoder 55 by low-speed communication, and executes an inquiry as to whether or not the rotary encoder 55 is compatible with the high-speed mode.
- the amplifier 24 inquires about the version of the rotary encoder 55 and determines whether the high-speed mode can be supported (S13).
- the amplifier 24 transmits a speed switching command for switching from the low speed mode to the high speed mode (S15).
- S15 the amplifier 24 performs initialization processing in the high-speed mode.
- the amplifier 24 when the amplifier 24 receives a normal response from the rotary encoder 55 in response to the transmission of the speed switching command, the amplifier 24 sets initial values necessary for executing high-speed communication to the rotary encoder 55. (S15). The amplifier 24 starts high-speed communication after finishing the initialization process (S17).
- the multiplex communication devices 29 and 39 shift to the high speed mode and start the initialization process (S15).
- the multiplex communication devices 29 and 39 detect the speed switching command and shift to the high speed mode after a predetermined time has elapsed (S15).
- This predetermined time is, for example, the time from when the speed switching command is transmitted from the amplifier 24 to the rotary encoder 55 until the response of the rotary encoder 55 reaches the amplifier 24. That is, the multiplex communication devices 29 and 39 according to the present embodiment perform processing for waiting for the amplifier 24 to shift from the low speed mode to the high speed mode for the time necessary for the amplifier 24 to shift from the low speed communication to the high speed communication. .
- the multiplex communication devices 29 and 39 can shift to high-speed communication appropriately by suppressing the occurrence of garbled data by matching the timing for starting high-speed communication with the amplifier 24 and the like.
- the multiplex communication devices 29 and 39 shift to the high speed mode (S15), they set the sampling period corresponding to the communication speed of the high speed communication.
- the data capturing unit 203 illustrated in FIG. 2 captures the encoder signal ENCD1 from the rotary encoder 55 by communication based on a predetermined communication standard.
- the data capturing unit 203 samples and captures the encoder signal ENCD3 transmitted from the rotary encoder 55 based on a predetermined sampling period.
- the sampling period needs to be shortened with an increase in speed.
- the multiplex communication devices 29 and 39 perform control to shorten the sampling period used in the data capturing unit 203 that captures the encoder signal ENCD3 in accordance with the transition from the low speed mode to the high speed mode.
- the multiplex communication devices 29 and 39 can sample the encoder signal ENCD3 transmitted / received at high speed communication by the data capturing unit 203 and appropriately multiplex it by the multiplexing unit 219.
- the output continuation time corresponding to the communication speed of the high speed communication is set.
- the data output unit 303 shown in FIG. 3 temporarily stores the encoder signal ENCD3 and transmits it to the servo amplifier 24. At this time, the data output unit 303 outputs one data of the encoder signal ENCD3 for each output duration time.
- the one-data output continuation time referred to here is, for example, necessary for transmitting the high-level signal from the data output unit 303 when the 1-bit data of the encoder signal ENCD3 is represented by a high-level signal. It's time. For example, the output continuation time of one data decreases in proportion to an increase in communication speed. A specific example of the output duration time of one data will be described later.
- the multiplex communication devices 29 and 39 perform control to shorten the output continuation time used in the data output unit 303 that outputs the encoder signal ENCD3 in accordance with the shift from the low speed mode to the high speed mode. Thereby, the multiplex communication devices 29 and 39 can appropriately transmit the encoder signal ENCD3 transmitted / received by high-speed communication from the data output unit 303 to the servo amplifier 24.
- the timeout time is, for example, that no input is abnormal (input error) when the multiplex communication device 39 cannot input the encoder signal ENCD3 from the rotary encoder 55 for a certain period of time due to communication data errors due to noise or the like. This is the time used as a criterion for detection. This time-out time is shortened as the communication speed is increased. As a result, the timeout time can be optimized according to the communication speed, such as when a short timeout time is required in the high-speed communication standard.
- the required error detection processing speed is different between the low speed mode and the high speed mode, and the content and method of the optimum error detection processing may be different. That is, if the communication speed is different, the error detection process to be used may be different.
- the error detection process here is a process that only detects an error in the encoder signal ENCD3, or a process that performs correction in addition to error detection.
- a CRC check cyclic redundancy check
- a parity check or a checksum
- the multiplex communication devices 29 and 39 may change at least one of the above-described timeout time and error detection processing according to the change in the communication speed of the encoder signal ENCD3. Further, the multiplex communication devices 29 and 39 can use preset values or the like for each of the sampling cycle, output duration, timeout time, and error detection processing described above. As the preset values, values corresponding to the low speed mode and the high speed mode are set. Further, the multiplex communication devices 29 and 39 may detect the communication speed (communication mode) based on the rising edge and the falling edge of the encoder signal ENCD3, and set the sampling period and the like according to the detected communication speed. The detection of the communication speed based on this rising edge will be described later.
- the multiplex communication devices 29 and 39 set the sampling period and the output duration in accordance with the transition from the low speed mode to the high speed mode in S15, while the amplifier 24 and the rotary encoder 55 are appropriately shifted to the high speed mode. Determine whether or not.
- the multiplex communication devices 29 and 39 can confirm the contents of communication transmitted and received between the servo amplifier 24 and the rotary encoder 55 and can set initial values necessary for executing high-speed communication. By determining whether or not, it is determined whether or not the mode can be appropriately shifted to the high speed mode. If the multiplex communication devices 29 and 39 determine that the servo amplifier 24 or the like has appropriately shifted to the high speed mode, the multiplex communication devices 29 and 39 start high speed communication (S17).
- the working robot 10 is in an operating state.
- the work robot 10 rotates the servo motor 33 while executing high speed communication between the amplifier 24 and the rotary encoder 55, and executes torque, speed, position control, and the like. That is, the work robot 10 performs work such as attaching a work held by the movable unit 30 (robot arm) to an object conveyed on the production line while transmitting and receiving the encoder signal ENCD3 by high-speed communication.
- the conditions for stopping the operation here include, for example, a stop instruction from the user, an error detection during the work of attaching the workpiece, and the like.
- the user performs an operation to stop the working robot 10 on the controller 21 in order to change the type of the movable unit 30.
- the controller 21 transmits a RESET command to the amplifier 23 via the field network cable 41 in response to a stop instruction from the user.
- the RESET command is a command for notifying the stop from the master (controller 21) used in MECHATRLINK (registered trademark) -III to the slave (servo amplifier 24), for example.
- the working robot 10 puts various devices in a non-operating state in this way (S19).
- the user changes the movable part 30 after the working robot 10 is set to the non-operating state (S19). Further, when the main power switch is turned off in the non-operating state (S19), the working robot 10 enters the above-described non-energized state of S11.
- the work robot 10 enters the operation state in the low speed mode when maintaining the low speed mode (S21). For example, as a result of the confirmation work from the amplifier 24 to the rotary encoder 55, if the rotary encoder 55 does not support high-speed communication, the work robot 10 proceeds to S21.
- the amplifier 24, the rotary encoder 55, and the multiplex communication devices 29 and 39 are in the low speed mode.
- the work robot 10 rotates the servo motor 33 while executing low speed communication between the amplifier 24 and the rotary encoder 55, and executes torque, speed, position control, and the like. That is, the work robot 10 performs work such as attaching a work held by the movable unit 30 (robot arm) to an object conveyed on the production line while transmitting and receiving the encoder signal ENCD3 by low-speed communication.
- the working robot 10 enters the non-operating state when the operation stop condition is satisfied in the operating state of S21 in the same manner as the high-speed mode operating state (S17) (S23).
- the work robot 10 puts various devices into a non-operating state (S23).
- the main power switch is turned off in the non-operating state (S23)
- the working robot 10 enters the above-described non-energized state of S11.
- the multiplex communication devices 29 and 39 change the sampling period and the output duration in response to the reception of the switching command, so that the encoder signal ENCD3 communicated at two or more different communication speeds can be obtained. Can be sampled and multiplexed appropriately.
- the multiplex communication devices 29 and 39 switch between the low speed mode and the high speed mode in accordance with the detection of the speed switching command and change the sampling period.
- the multiplex communication devices 29 and 39 may use the same sampling period in the low speed mode and the high speed mode.
- FIG. 7 and FIG. 8 show a case where the encoder signal ENCD3 is communicated by the synchronous communication method.
- Case 1 shows an example of a conventional method.
- Case 2 shows the low-speed mode of the present embodiment.
- Case 3 shows the high-speed mode of the present embodiment.
- Cases 1, 2 and 3 transmit / receive data “1” and “0” (same encoder signal ENCD3) as an example, as shown in the item “data” in FIGS.
- the portion corresponding to the high level signal is hatched.
- Cases 1, 2, and 3 perform communication conforming to a communication standard of HDLC (High level data Link control) procedure as a synchronous communication method, for example.
- HDLC High level data Link control
- Case 1 has a communication speed of 2 Mbps in both the initialization state and the operation state.
- the output continuation time 71 is a time for the data capturing unit 203 to capture one data when sampling is performed by the data capturing unit 203 described above.
- the output duration 71 is the time for the data output unit 303 to output one data when the data output unit 303 outputs one data.
- the sampling period of case 1 is 16 MHz.
- the resolution for dividing one data at the sampling period is 8 divisions.
- one data is processed (captured, etc.) every 8 samples, and as shown in the item of “signal level” in FIGS. 7 and 8, a high level signal (H), a low level signal (L), a low level signal
- the level signal (L) and the high level signal (H) are processed in this order. Accordingly, as shown in the item “data” in FIGS.
- the multiplex communication devices 29 and 39 may use both the detection of the speed switching command and the detection of the edge of the encoder signal ENCD3 as a method of detecting a change in the communication speed. Further, the horizontal arrow “ ⁇ ” in FIGS. 7 and 8 indicates a portion where the signal level does not change.
- each of the multiplex communication devices 29 and 39 of the present embodiment can execute the process of changing the timeout time and the error detection process independently of each other based on the edge period described above.
- the multiplex communication device 29 can detect the communication speed based on the edge of the encoder signal ENCD3 fetched from the amplifier 23 to the data fetch unit 203 and change the timeout time.
- the multiplex communication device 39 detects the communication speed based on the edge of the encoder signal ENCD3 fetched from the rotary encoder 55 to the data fetch unit 203, and sets a timeout time or the like according to the detected communication speed. Good.
- Case 2 (low speed mode) will be described. Note that the description of the same content as the case 1 described above is omitted. As shown in FIG. 6, Case 2 has a communication speed of 2 Mbps in both the initialization state and the operation state. The output continuation time 75 of one data is 500 ns (see FIG. 7).
- the sampling period of the case 2 is 32 MHz.
- the resolution for dividing one data at the sampling period is, for example, 8 divisions.
- Case 2 shows a case where the resolution is unified in the low speed mode (case 2) and the high speed mode (case 3) as an example. Therefore, the data capturing unit 203 and the data output unit 303 of the multiplex communication devices 29 and 39 capture or output two times (16 divisions) of the eight divided data as one data. Thereby, for example, the data capturing unit 203 captures one data (such as a high level signal) every 16 divisions (16 samples).
- case 3 high-speed mode
- 7 and 8 show the operation state of the case 3 (high-speed communication state).
- Case 3 has a communication speed of 2 Mbps in the initialized state as shown in FIG.
- the output duration of one data is 500 ns.
- the communication speed is 4 Mbps.
- the sampling period of case 3 is 32 MHz, the same as case 2. That is, in cases 2 and 3, the sampling period is the same at 32 MHz, although the communication speed in the operating state is different (case 3 is fast).
- the same sampling period (32 MHz) is 16 times the communication speed (2 Mbps) in the low speed mode.
- the same sampling period (32 MHz) is eight times the communication speed (4 Mbps) in the high speed mode. That is, the multiplex communication devices 29 and 39 of the present embodiment are integral multiples (16 times) of the communication speed (2 Mbps, 4 Mbps) in each of the encoder signals ENCD3 communicated at two or more different communication speeds (high speed mode, low speed mode). , 8 times) is used as the sampling period.
- the data capture unit 203 and the data output unit 303 of the multiplex communication devices 29 and 39 capture the data divided into eight (output duration 79) as one data, as shown in FIGS. Output. Thereby, for example, the data capturing unit 203 captures one data (such as a high-level signal) every 8 divisions (8 samples). That is, one data is taken in half the time of case 2 described above.
- the communication speed of the encoder signal ENCD3 is switched, and the communication speed (2 Mbps, 4 Mbps) before and after the switching is an integral multiple (16 times, 8) of the same period (32 MHz).
- the sampling period is not changed.
- the multiplex communication devices 29 and 39 of the present embodiment are configured such that when the communication speed of the encoder signal ENCD3 is switched and each of the communication speeds before and after the switching is an integer multiple of the same period, the ratio between the communication speed and the same period.
- output durations 75 and 79 which are times for outputting one data of the encoder signal ENCD3 separated from the frame data FRMD (multiplexed data), are set.
- encoder signals ENCD3 having different communication speeds can be multiplexed and separated.
- START bit (BIT-0)” and data bits “1”, “1”, “0” "(Encoder signal ENCD3).
- the START bit is a bit indicating the start of data in asynchronous communication, and in this example, a bit value “0” is set.
- Case 4 has a communication speed of 2.5 Mbps in both the initialization state and the operation state.
- the sampling period of case 4 is 20 MHz.
- the resolution is 8 divisions.
- one data is processed (taken in) every 8 samples, and processed in the order of low level signal (L), high level signal (H), high level signal (H), and low level signal (L). Yes.
- DATA-B1 the encoder signal ENCD3 having the bit value “0” (DATA-B2) represented by the low level signal (L) is fetched.
- the multiplex communication devices 29 and 39 detect the communication speed based on the rising edge of the encoder signal ENCD3 and the like even in the asynchronous communication method.
- Case 5 (low speed mode) will be described.
- Case 5 has a communication speed of 2.5 Mbps in both the initialization state and the operation state.
- the output duration of one data is 400 ns.
- the sampling period of the case 5 is 40 MHz.
- the resolution is, for example, 16 divisions.
- Case 5 shows a case where different resolutions are set in the low speed mode (case 5) and the high speed mode (case 6) as an example.
- the data capturing unit 203 and the data output unit 303 of the multiplex communication devices 29 and 39 capture or output 16-divided data as one data in the low-speed mode (case 5).
- the data capturing unit 203 captures one data (such as a high level signal) every 16 divisions (16 samples).
- case 6 high-speed mode
- 10 and 11 show the operation state of the case 6 (high-speed communication state).
- the communication speed is 2.5 Mbps in the initialized state.
- the output duration of one data is 400 ns.
- the communication speed is 4 Mbps.
- the sampling period of case 6 is 40 MHz, which is the same as case 5. That is, the cases 5 and 6 have the same sampling cycle of 40 MHz, although the communication speeds in the operating state are different (case 6 is fast).
- the same sampling period (40 MHz) is 16 times the communication speed (2.5 Mbps) in the low speed mode.
- this same sampling period (40 MHz) is 10 times the communication speed (4 Mbps) in the high-speed mode. That is, the multiplex communication devices 29 and 39 in this case are integer multiples (16 Mbps) of the encoder signal ENCD3 communicated at two or more different communication speeds (high-speed mode and low-speed mode) (16 Mbps).
- the value of the same period (40 MHz) that can sample (times 10 times) is used as the sampling period.
- the resolution is 10 divisions.
- the data capturing unit 203 and the data output unit 303 of the multiplex communication devices 29 and 39 capture or output 10 divided data as one data.
- the data capturing unit 203 captures one data (such as a high level signal) every 10 divisions (10 samples). That is, one data is taken in at a time different from the case 5 described above.
- the communication speeds of the encoder signal ENCD3 are switched and the communication speeds (2.5 Mbps, 4 Mbps) before and after the switching are each an integral multiple (16 times) of the same period (40 MHz). 10 times), the sampling period is kept unchanged.
- the multiplex communication devices 29 and 39 can change the ratio between the communication speed and the same period (16 times, when the communication speed of the encoder signal ENCD3 is switched and each of the communication speeds before and after the switching is an integral multiple of the same period. Is set to the output duration of the encoder signal ENCD3 separated from the frame data FRMD (multiplexed data). Thereby, encoder signals ENCD3 having different communication speeds can be multiplexed and separated.
- the multiplex communication devices 29 and 39 are examples of a transmission side multiplex communication device and a reception side multiplex communication device.
- the encoder signal ENCD3 is an example of an encoder signal.
- the frame data FRMD is an example of multiplexed data.
- the multiplex communication devices 29 and 39 use the same cycle value as a sampling cycle, and encoder signals communicated at two or more different communication speeds. At least one of the ENCD3, that is, the encoder signal ENCD3 actually in communication is sampled and multiplexed.
- This common sampling period is a value that can sample (divide) a value obtained by multiplying each of different communication speeds by an integer.
- the sampling period that satisfies the above condition is used.
- the encoder signal ENCD3 can be appropriately sampled. Therefore, encoder signals ENCD3 having different communication speeds can be multiplexed at the same sampling period. Also, with this configuration, processing blocks and processing circuits corresponding to each communication speed are not separately provided, and processing can be performed in a single processing block (FPGA, etc.). Reduction can be achieved.
- the signal ENCD3 can be multiplexed.
- the multiplex communication devices 29 and 39 (reception side multiplex communication devices) set the output continuation times 75 and 79 based on the ratio between the sampling period (same period) and the communication speed, for example. Even if the communication speed is switched, the multiplex communication devices 29 and 39 (reception side multiplex communication devices) are separated from the frame data FRMD (multiplexed data) by setting the output durations 75 and 79 based on the sampling period.
- the encoded encoder signal ENCD3 can be output to the amplifier 24, the rotary encoder 55, etc. at an appropriate communication speed.
- the multiplex communication devices 29 and 39 change the communication speed of the encoder signals ENCD1 to ENCD8 according to the control command received from the amplifier 24 or the like. To detect. As a result, the multiplex communication devices 29 and 39 (transmission side multiplex communication devices) can appropriately sample (multiplex) the encoder signals ENCD1 to ENCD8 by setting the sampling period corresponding to the communication speed. Further, the multiplex communication devices 29 and 39 (reception side multiplex communication devices) set the output continuation time of the encoder signals ENCD1 to ENCD8 in accordance with the control command received from the amplifier 24 or the like.
- the multiplex communication devices 29 and 39 (reception side multiplex communication devices) appropriately set the encoder signals ENCD1 to ENCD8 separated from the frame data FRMD (multiplexed data) by setting the output continuation time according to the communication speed. Can be output to the amplifier 24 and the like at a high communication speed.
- the multiplex communication system can be widely applied to, for example, encoders and amplifiers that support communication standards that define control commands for switching communication speeds.
- the control command here is, for example, a control command transmitted from the amplifier 24 or the like by communication conforming to the RS-485 standard (communication of encoder signals ENCD1 to ENCD8).
- the appropriate time-out time and error detection processing differ depending on the communication speed of the encoder signals ENCD1 to ENCD8. Therefore, in one aspect of the present embodiment, by using a timeout time corresponding to a change in communication speed, for example, when the communication speed increases, the timeout time is shortened to detect a communication error. Thereby, even when there is no reply response from the rotary encoder 55 or the like due to an error in communication data due to noise or the like, the return operation can be performed quickly and appropriately.
- error detection processing according to the change in communication speed is used.
- the communication standards of the encoder signals ENCD1 to ENCD8 for example, there are those that perform low-speed communication in the initial setting and perform high-speed communication in the communication after the initial setting.
- the time of initial setting there may be a case where there is a sufficient time and retransmission is possible.
- an error detection process in which only error detection is performed on the reception side and an error is notified to the transmission side (retransmission is requested) can be considered.
- the communication after the initial setting there is a case where it is difficult to retransmit as a result of the start of actual work and the need for quickness.
- the error detection process is preferably a process capable of correcting an error in addition to detecting an error.
- error detection processing it is possible to perform error detection appropriate for changing the communication speed.
- error detection it is possible to quickly and appropriately execute the return operation by detecting an error such as garbled encoder signal data.
- the reliability of the system can be improved in the multiplex communication system.
- the communication speed can be detected based on a change in edge.
- the timeout time and the error detection process can be appropriately set according to the communication speed, and the reliability of the system can be improved.
- each of the multiplex communication devices 29 and 39 independently executes detection of the communication speed and setting of the time-out time after detection and error detection processing. Thereby, for example, the process of notifying the change of the communication speed from one side (transmission side) to the other side (reception side) of the multiplex communication devices 29 and 39 becomes unnecessary.
- the multiplex communication via the multiplex communication cable 11 conforming to the communication standard of Gigabit Etherenet (registered trademark) has been described as an example, but the present application is not limited to this.
- the present invention can be similarly applied to multiplex communication via other wired communication (for example, an optical fiber cable, a USB cable, etc.), and can be similarly applied to wireless communication instead of wired communication.
- the configuration of the bit position of the frame data FRMD and the type of data multiplexed on the frame data FRMD may be changed as appropriate.
- the multiplex communication devices 29 and 39 may control only one of the sampling period and the output duration time. Further, the multiplex communication devices 29 and 39 may control only one of the timeout time and the error detection processing of the encoder signals ENCD1 to ENCD8. Further, the multiplex communication devices 29 and 39 may not control the timeout time or the like independently of each other, but may notify the timing by the frame data FRMD and control the timeout time or the like in cooperation with each other.
- the present invention is not limited to this. , High speed) may be employed.
- the linear scales 51 and 53 and the rotary encoders 55 and 57 may be encoders of a system (serial transmission system) that serially transmits data such as position information.
- the linear scale 51 or the like may be, for example, an encoder of a system (parallel transmission system) that transmits pulses of each phase of A, B, and Z in parallel.
- the working robot 10 that performs the production work has been described as an example.
- the multiplex communication system of the present application is not limited to this, and for example, an electronic component mounting apparatus that mounts electronic components on a circuit board It may be applied to data transmission. Moreover, you may apply to the machine tool which performs cutting etc., for example.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Manipulator (AREA)
- Transmission And Conversion Of Sensor Element Output (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
Abstract
異なる通信速度のエンコーダ信号を多重化できる多重通信システムを提供する。 多重通信装置29,39は、2以上の異なる通信速度(2Mbps、4Mbps)を切り替えて通信されるエンコーダ信号ENCD1~ENCD8をサンプリングして多重化しフレームデータFRMD(多重化データ)として送受信する。多重通信装置29,39は、エンコーダ信号ENCD1~ENCD8を多重化する際に、2以上の異なる通信速度の整数倍(16倍、8倍)をサンプリングできる同一周期(32MHz)の値をサンプリング周期として用いる。
Description
本発明は、多重通信システム及びその多重通信システムにより作業に拘わるデータを伝送する作業用ロボットに関するものである。
従来、電子部品実装装置などの作業用ロボットは、例えば、電子部品を吸着する吸着ノズルの位置や向き等を変更する駆動源として電磁モータを装着ヘッド(可動部)に内蔵している。また、作業用ロボットは、電磁モータの変位等を検出するエンコーダから出力されるエンコーダ信号に基づいて電磁モータを駆動制御するアンプ部を装置本体側に設けている。例えば、特許文献1に開示される作業用ロボットは、多重通信装置を可動部に備える。多重通信装置は、可動部のロータリエンコーダから出力されるエンコーダ信号を多重化データに多重化して送受信する。多重通信装置は、多重化データのビット位置であって、複数のロータリエンコーダの各々に対応するビット位置にエンコーダ信号をビット割り当てする。この構成では、エンコーダ信号は、決められた任意のビット位置で送信される。
ところで、作業用ロボットにおける可動部(例えば、装着ヘッド)は、使用目的などに応じて種類を変更される。可動部を変更すると、可動部に内蔵されるエンコーダの種類は、変更される虞がある。そして、エンコーダ信号の通信速度は、エンコーダの種類に応じて変更される。また、エンコーダの種類を変更せずとも、一台のエンコーダが、エンコーダ信号の通信速度を通信途中で切り替える可能性がある。このような場合、多重通信システムは、エンコーダ信号の通信速度が切り替えられたとしても、エンコーダ信号を適切に多重化することが望まれる。
本発明は、上記の課題に鑑みてなされたものであり、異なる通信速度のエンコーダ信号を多重化できる多重通信システム及び作業用ロボットを提供することを目的とする。
上記課題を解決するために、本明細書は、2以上の異なる通信速度を切り替えて通信されるエンコーダ信号をサンプリングして多重化し多重化データとして送信する送信側多重通信装置と、前記送信側多重通信装置から受信した前記多重化データの多重化を解除して前記エンコーダ信号を分離する受信側多重通信装置と、を備え、前記送信側多重通信装置は、前記エンコーダ信号を多重化する際に、2以上の異なる通信速度で通信される前記エンコーダ信号の各々における通信速度の整数倍をサンプリングできる同一周期の値をサンプリング周期として用いて、2以上の異なる通信速度で通信される前記エンコーダ信号の少なくとも一つをサンプリングする、多重通信システム、を開示する。
また、上記課題を解決するために、本明細書は、2以上の異なる通信速度を切り替えて通信されるエンコーダ信号を、サンプリング周期でサンプリングして多重化し多重化データとして送信する送信側多重通信装置と、前記送信側多重通信装置から受信した前記多重化データの多重化を解除して前記エンコーダ信号を分離し、分離した前記エンコーダ信号の1データを出力継続時間ごとに出力する受信側多重通信装置と、を備え、前記送信側多重通信装置は、前記エンコーダ信号の通信速度を変更する旨の制御コマンドを受信したことに応じて、所定時間経過した後に、変更後の前記エンコーダ信号の通信速度に応じた前記サンプリング周期を設定し、前記受信側多重通信装置は、前記エンコーダ信号の通信速度を変更する旨の制御コマンドを受信したことに応じて、所定時間経過した後に、変更後の前記エンコーダ信号の通信速度に応じた前記出力継続時間を設定する、多重通信システム、を開示する。
なお、本明細書は、多重通信システムだけでなく、多重通信システムを備える作業用ロボットを開示する。
本開示の多重通信システム等によれば、異なる通信速度のエンコーダ信号を多重化できる。
以下、本発明の実施形態について図を参照して説明する。初めに、本願の多重通信システムを適用する装置の一例として作業用ロボットについて説明する。
(作業用ロボット10の構成)
図1は、作業用ロボット10に適用される多重通信システムの構成を示す模式図である。図1に示すように、作業用ロボット10は、作業用ロボット10を設置する場所に固定的に設ける装置本体20と、装置本体20に対して相対的に移動する可動部30とを備える。装置本体20は、コントローラ21と、Y軸リニア用サーボアンプ22と、X軸リニア用サーボアンプ23と、3軸ロータリ用サーボアンプ24,25とを備える。可動部30は、Y軸用リニアモータ31と、X軸用リニアモータ32と、6つのロータリ型サーボモータ33,34,35,36,37,38とを備える。
図1は、作業用ロボット10に適用される多重通信システムの構成を示す模式図である。図1に示すように、作業用ロボット10は、作業用ロボット10を設置する場所に固定的に設ける装置本体20と、装置本体20に対して相対的に移動する可動部30とを備える。装置本体20は、コントローラ21と、Y軸リニア用サーボアンプ22と、X軸リニア用サーボアンプ23と、3軸ロータリ用サーボアンプ24,25とを備える。可動部30は、Y軸用リニアモータ31と、X軸用リニアモータ32と、6つのロータリ型サーボモータ33,34,35,36,37,38とを備える。
可動部30は、例えば、ロボットアームであり、各モータ31~38の駆動に応じてX軸、Y軸及びZ軸の各方向への自由度を有して変位駆動される。作業用ロボット10は、コントローラ21の制御に基づいて、例えば、生産ラインを搬送される対象物に可動部30(ロボットアーム)に保持されたワークの取り付けなどの作業を実行する。コントローラ21は、CPU、RAM等を備えたコンピュータを主体として構成されている。コントローラ21は、フィールドネットワーク用ケーブル41により各アンプ22~25のスレーブ回路(図示略)と接続されている。ここでいうフィールドネットワーク(制御用ネットワーク)とは、例えば、MECHATROLINK(登録商標)-IIIであり、コントローラ21がマスターとなり、スレーブ回路に接続されたアンプ22~25とのデータの送受信を行うネットワークを構築し、配線の統合(削減)等を実現してネットワーク構築のコスト低減を図るものである。
アンプ22~25の各々は、エンコーダ用ケーブル42により多重通信装置29に接続されている。装置本体20に設けられた多重通信装置29は、可動部30に設けられた多重通信装置39と多重通信用ケーブル11で接続されている。多重通信用ケーブル11は、例えばGigabit Etherenet(登録商標)の通信規格に準拠したLANケーブルやUSB(Universal Serial Bus)3.0の通信規格に準拠したUSBケーブルである。作業用ロボット10は、可動部30に設けられた各モータ33~38のエンコーダ信号を多重通信装置39によりフレームデータFRMD(多重化データの一例)に多重化し、多重通信用ケーブル11を介して多重通信装置29に送信する。多重通信装置29は、受信したフレームデータFRMDの多重化を解除し、各モータ33~38に対応するエンコーダ信号を分離する。多重通信装置29は、分離した個々のエンコーダ信号を対応するアンプ22~25に送信する。
コントローラ21は、アンプ22~25を介して可動部30の各モータ31~38を制御する。Y軸リニア用サーボアンプ22は、可動部30のY軸用リニアモータ31を制御する。可動部30には、Y軸用リニアモータ31の駆動に応じてY軸方向に沿ったガイドレール上を移動する可動部30(ロボットアーム)の位置を検出するリニアスケール51が設けられている。リニアスケール51は、例えば、Y軸リニア用サーボアンプ22から受信した問い合わせ情報(エンコーダ信号)に応じて、可動部30のY軸方向の位置(Y座標値)等のエンコーダ信号を通信プロトコル変換器52に出力する。通信プロトコル変換器52は、多重通信装置39とエンコーダ用ケーブル61で接続されている。通信プロトコル変換器52は、多重通信装置29,39を介してリニアスケール51のエンコーダ信号をY軸リニア用サーボアンプ22に送信する。Y軸リニア用サーボアンプ22は、通信プロトコル変換器52から受信したエンコーダ信号を、フィールドネットワーク用ケーブル41を介してコントローラ21に転送する。
コントローラ21は、リニアスケール51のエンコーダ信号に基づいて、Y軸用リニアモータ31の回転位置等(可動部30のY軸方向の位置)を決定し、決定した制御内容をY軸リニア用サーボアンプ22に通知する。Y軸リニア用サーボアンプ22は、例えば、Y軸用リニアモータ31と図示しない電源線で接続されており、Y軸用リニアモータ31に供給する電力を制御可能となっている。Y軸リニア用サーボアンプ22は、コントローラ21から受信した制御内容に基づいてY軸用リニアモータ31に供給する電力を制御し、Y軸用リニアモータ31を制御する。可動部30は、Y軸用リニアモータ31の駆動に応じて例えば、ロボットアームがY軸方向に駆動する。
同様に、X軸リニア用サーボアンプ23は、可動部30のX軸用リニアモータ32を制御する。可動部30には、X軸用リニアモータ32の駆動に応じてX軸方向に沿ったガイドレール上を移動する可動部30の位置を検出するリニアスケール53が設けられている。リニアスケール53のエンコーダ信号は、通信プロトコル変換器54、エンコーダ用ケーブル61を介して多重通信装置39に出力される。コントローラ21は、リニアスケール53のエンコーダ信号に基づいてX軸リニア用サーボアンプ23を介してX軸用リニアモータ32を制御する。
また、本実施形態のリニアスケール51は、例えば、アンプ22が対応する通信プロトコルと異なる通信プロトコルで通信を行う。通信プロトコル変換器52は、リニアスケール51の入出力データを、アンプ22が処理可能な入出力データに変換し送受信を行う。同様に、通信プロトコル変換器54は、リニアスケール53の入出力データを、アンプ23が処理可能な入出力データに変換し送受信を行う。なお、リニアスケール51とアンプ22とは、同一の通信規格に対応した装置でもよい。
ロータリ型サーボモータ33~35(以下、「サーボモータ」という場合がある)は、例えば、各モータに対応する3つの出力軸を有しており、ワークを保持するロボットアームのハンドをX軸、Y軸、Z軸の各方向に駆動させる。同様に、サーボモータ36~38は、例えば、各モータに対応する3つの出力軸を有しており、ロボットアームのハンドを回転等させる。サーボモータ36~38は、サーボモータ33~35と同様の構成であるため、その説明を適宜省略する。
サーボモータ33~35の各々に設けられたロータリエンコーダ55は、各サーボモータ33~35の回転位置などのエンコーダ信号を、エンコーダ用ケーブル61を介して多重通信装置39に出力する。3軸ロータリ用サーボアンプ(以下、「サーボアンプ」という場合がある)24は、多重通信装置29,39を介して転送されたエンコーダ信号に基づいて、サーボモータ33~35の各々を制御する。例えば、サーボモータ33は、U相,V相,W相の各相のコイルを有する三相交流で駆動するサーボモータである。サーボモータ33の各相のコイルは、図示しない電源線を介してサーボアンプ24に接続されている。サーボモータ33は、サーボアンプ24から電源線を通じて供給される三相交流に応じて駆動する。
同様に、他のサーボモータ34,35の各々は、サーボアンプ24から電源線を通じて供給される三相交流に応じて駆動する。なお、サーボモータ36~38の各々に設けられたロータリエンコーダ57は、各サーボモータ36~38のエンコーダ信号を、エンコーダ用ケーブル61を介して多重通信装置39に出力する。サーボアンプ25は、多重通信装置29,39を介して転送されたエンコーダ信号に基づいて、サーボモータ36~38の各々を制御する。
次に、多重通信システムで伝送されるエンコーダ信号に対する処理について説明する。なお、以下の説明では、多重通信装置39を送信側、多重通信装置29を受信側とした場合を主に説明する。また、8つのモータ31~38に対応するリニアスケール51,53及びロータリエンコーダ55,57の各々のエンコーダ信号を、エンコーダ信号ENCD1~ENCD8と称して説明する。また、本願におけるエンコーダ信号とは、例えば、リニアスケール51,53やロータリエンコーダ55,57からY軸リニア用サーボアンプ22等に送信される位置情報、及び各アンプ22,23,24,25からリニアスケール51等に対して送信される制御コマンド(初期設定情報や、回転位置を取得する問い合わせ情報など)の両方を含んでいる。
図2は多重通信装置39の送信部分を示すブロック図である。また、図3は多重通信装置29の受信部分を示すブロック図である。図2に示す多重通信装置39の送信データ合成処理部201は、各装置から出力されるエンコーダ信号ENCD1~ENCD8に対し誤り訂正符号の付加処理を行う。
(送信データ合成処理部201の構成)
リニアスケール51から通信プロトコル変換器52(図1参照)を介して出力されたエンコーダ信号ENCD1は、データ取込部203に一時的に取り込まれ、FEC付与部211によりハミング符号の前方誤り訂正符号FEC(7,4)が付与される。データ取込部203は、リニアスケール51(通信プロトコル変換器52)からエンコーダ信号ENCD1を、所定の通信規格に準拠した通信で取り込む。
リニアスケール51から通信プロトコル変換器52(図1参照)を介して出力されたエンコーダ信号ENCD1は、データ取込部203に一時的に取り込まれ、FEC付与部211によりハミング符号の前方誤り訂正符号FEC(7,4)が付与される。データ取込部203は、リニアスケール51(通信プロトコル変換器52)からエンコーダ信号ENCD1を、所定の通信規格に準拠した通信で取り込む。
フレーム分割部221は、FEC付与部211によってFECを付与されたエンコーダ信号ENCD1を、フレームデータFRMDの通信速度、送信サイクル、データ長等に応じて分割する。フレーム分割部221は、分割したエンコーダ信号ENCD1を、多重化部219(図2中の「MUX」)に出力する。計数部234は、多重化部219によってフレームデータFRMDを送信した回数を計数する。フレーム分割部221は、計数部234から出力される計数値に応じて次のデータをFEC付与部211から読み出す処理を行う。なお、FEC付与部211は、エンコーダ信号ENCD1の入力に応じてデータの有無を示す情報(図4参照)を付加した上でハミング符号の前方誤り訂正符号FEC(7,4)を付与する。また、他の装置(リニアスケール53、ロータリエンコーダ55,57)から出力されるエンコーダ信号ENCD2~ENCD8の処理については、エンコーダ信号ENCD1と同様であるため、説明を省略する。
送信データ合成処理部201の多重化部219は、入力されたエンコーダ信号ENCD1~ENCD8を、例えば、入力ポートに対して割り当てた一定時間(タイムスロット)に応じて多重化する。多重化部219により多重化されたデータは、例えば、Gigabit Etherenet(登録商標)の通信規格に準拠した外部端子242(図2中の「GigE用PHY-IC」)を介してフレームデータFRMDとして多重通信用ケーブル11に送出される。
(受信データ分離処理部301の構成)
図3に示す多重通信装置29は、多重通信用ケーブル11を通じてフレームデータFRMDを外部端子342(図3中の「GigE用PHY-IC」)に受信する。多重通信装置29の受信データ分離処理部301は、非多重化部319(図3中の「DEMUX」)を備える。非多重化部319は、フレームデータFRMDから各エンコーダ信号ENCD1~ENCD8を分離する。受信データ分離処理部301は、分離した各エンコーダ信号ENCD1~ENCD8に対して誤り検出・訂正処理を行う。
図3に示す多重通信装置29は、多重通信用ケーブル11を通じてフレームデータFRMDを外部端子342(図3中の「GigE用PHY-IC」)に受信する。多重通信装置29の受信データ分離処理部301は、非多重化部319(図3中の「DEMUX」)を備える。非多重化部319は、フレームデータFRMDから各エンコーダ信号ENCD1~ENCD8を分離する。受信データ分離処理部301は、分離した各エンコーダ信号ENCD1~ENCD8に対して誤り検出・訂正処理を行う。
非多重化部319は、分離したエンコーダ信号ENCD1をフレーム合成部311に出力する。フレーム合成部311は、複数のフレームデータFRMDに分割されたデータからエンコーダ信号ENCD1を合成する。計数部332は、非多重化部319によってフレームデータFRMDを受信した回数を計数する。フレーム合成部311は、計数部332から出力される計数値に応じてエンコーダ信号ENCD1を合成し、合成したエンコーダ信号ENCD1を復号訂正処理部312に出力する。復号訂正処理部312は、合成されたエンコーダ信号ENCD1に対しハミング符号の前方誤り訂正符号(FEC)に応じて誤り検出を実行し、誤りの検出に応じてデータの訂正を実行する。
復号訂正処理部312は、必要に応じて訂正等したエンコーダ信号ENCD1をデータ出力部303に出力する。データ出力部303は、入力したエンコーダ信号ENCD1を一時的に蓄積しY軸リニア用サーボアンプ22に送信する。なお、上記説明では、主にエンコーダ信号ENCD1について説明した。他のエンコーダ信号ENCD2~ENCD8の処理については、エンコーダ信号ENCD1と同様であるため、その説明を省略する。また、図2に示す多重通信装置39が備える受信データ分離処理部202の構成及び動作については、上記した多重通信装置29の受信データ分離処理部301と同様であるため、その説明を省略する。同様に、図3に示す多重通信装置29が備える送信データ合成処理部302の構成及び動作については、図2に示す多重通信装置39の送信データ合成処理部201と同様であるため、その説明を省略する。
図4は、本願の多重化データの一例であるフレームデータFRMDのデータ構造を示している。フレームデータFRMDは、例えば1フレームが8ビットで構成されている。例えば1フレーム当りの周期を8nsec(周波数が125MHz)に設定した場合、多重通信装置29,39は、1Gbps(8ビット×125MHz)の通信回線を構築する。この通信回線は、例えば半2重通信である。
図4は、フレームデータFRMDを送信する1クロック(例えば8nsec)ごとに送信されるデータを示している。フレームデータFRMDは、20クロックを1サイクル(1周期)として、半周期ごとに送受信が切り替えられる。図4は半周期(1/2サイクル)の0~10クロックを示している。従って、図4に示す例では、多重通信装置29,39は、10クロック目で互いに同期を取って送受信を切り替える。
フレームデータFRMDは、1/2サイクル(10クロック)のうち、エンコーダ信号ENCD1~ENCD8を送信する前の3クロック(図4中のクロック0~2)において、ヘッダ情報などの制御情報を設定されている。また、フレームデータFRMDは、1/2サイクル(10クロック)のうち、7クロック(図4中のクロック3~9)にエンコーダ信号ENCD1~ENCD8に係るデータを設定されている。フレームデータFRMDの先頭ビット(ビット位置0)~ビット位置7までの各ビットが、この順にエンコーダ信号ENCD1~ENCD8に対応している。
フレームデータFRMDのクロック3,5における各ビット位置には、エンコーダ信号ENCD1~ENCD8(図中の「E1D~E8D」)がビット割り当てされている。また、フレームデータFRMDのクロック4,6における各ビット位置には、エンコーダ信号ENCD1~ENCD8のデータの有無を示す情報(図中の「E1D有~E8D有」)がビット割り当てされている。このデータの有無を示す情報は、例えば、フレームデータFRMDのデータ転送レートに比べてエンコーダ信号ENCD1~ENCD8のデータ転送レートが低速である場合に、低速なエンコーダ信号ENCD1~ENCD8が各ビット位置0~7に設定されているか否かを示すための情報である。エンコーダ信号ENCD1~ENCD8とエンコーダ信号ENCD1~ENCD8の有無を示す情報とは、サイクルごとに交互に設定されている。
また、フレームデータFRMDのクロック7~9におけるビット位置には、訂正符号FEC(7,4)として付加される3ビットの符号ビットが設定されている。エンコーダ信号ENCD1~ENCD8は、図2に示すフレーム分割部221によって、フレームデータFRMDにビット割り当てされたビット幅に応じて分割され、分割後に多重化部219に送信される。
そして、多重通信装置29,39は、3クロック続けて訂正符号FEC(7,4)を設定したフレームデータFRMDを送信した後、10クロックで互いに同期を取って送受信を切り替える。なお、図4に示すフレームデータFRMDの構成は一例であり、適宜変更される。例えば、図4に示すフレームデータFRMDの構成は、リニアスケール51,53及びロータリエンコーダ55,57を、位置情報などのデータをシリアル信号で伝送する方式(シリアル伝送方式)のエンコーダとして構成した場合について例示している。しかしながら、フレームデータFRMDの構成は、シリアル伝送方式以外の方式のエンコーダを用いた場合には各ビット位置のデータを適宜変更してもよい。
(作業用ロボット10の動作について)
次に、本実施形態の作業用ロボット10の動作、特にアンプ(Y軸リニア用サーボアンプ22など)、エンコーダ(リニアスケール51など)、及び多重通信装置29,39の動作について説明する。図5は、作業用ロボット10の状態フローを示している。
次に、本実施形態の作業用ロボット10の動作、特にアンプ(Y軸リニア用サーボアンプ22など)、エンコーダ(リニアスケール51など)、及び多重通信装置29,39の動作について説明する。図5は、作業用ロボット10の状態フローを示している。
なお、以下の説明では、複数のエンコーダ信号ENCD1~ENCD8のうち、一例として、サーボモータ33に対応するエンコーダ信号ENCD3について主に説明する。他のエンコーダ信号(エンコーダ信号ENCD1など)の処理については、エンコーダ信号ENCD3と同様であるため、その説明を省略する。これに対応し、複数のアンプ(Y軸リニア用サーボアンプ22など)やエンコーダ(リニアスケール51など)のうち、エンコーダ信号ENCD3を処理するアンプ24及びロータリエンコーダ55について説明する。
まず、図5に示すステップ(以下、「S」と表記する)11に示す状態では、作業用ロボット10は、非通電状態となっている。例えば、作業用ロボット10は、主電源スイッチをオフした状態である。この状態では、アンプ24、ロータリエンコーダ55、サーボモータ33、及び多重通信装置29,39などは、電源が入っていない非通電状態となる。S11において、例えば、作業用ロボット10は、主電源スイッチをオンされる。これにともないアンプ24等は、電力を供給され、起動する(S13)。多重通信装置29,39等は、初期化状態となる。
ここで、エンコーダ信号ENCD3の通信速度は、例えば、アンプ24やロータリエンコーダ55の仕様によっては通信の途中で変更される可能性がある。あるいは、可動部30を変更するのにともなって当該可動部30に内蔵されるロータリエンコーダ55の種類等を変更されることで、エンコーダ信号ENCD3の通信速度は変更される。これに対し、例えば、本実施形態のアンプ24、ロータリエンコーダ55、多重通信装置29,39は、エンコーダ信号ENCD3を高速で通信する高速モードと、低速で通信する低速モードとの2種類のモードを備えている。
S13の初期化状態では、多重通信装置29,39は、低速な通信を行う低速モードとなる。多重通信装置29,39は、所定条件に従って、例えば、高速な通信を行う高速モード(S15,S17)、又は低速モードを維持した状態(S21)となる。ここでいう、所定条件とは、例えば、アンプ24からロータリエンコーダ55へ送信される制御コマンドを検出する条件である。多重通信装置29,39は、エンコーダ信号ENCD3の通信において、制御コマンドとしてアンプ24からロータリエンコーダ55へ送信される速度の切り替えを指示する速度切り替えコマンドを検出する。
例えば、アンプ24は、起動した後、低速な通信でロータリエンコーダ55と通信を行い、ロータリエンコーダ55が高速モードに対応可能であるか否かの問い合わせを実行する。アンプ24は、ロータリエンコーダ55のバージョン等を問い合わせて高速モードに対応可能か判定する(S13)。アンプ24は、ロータリエンコーダ55が高速モードに対応可能であることを検出すると(S13)、低速モードから高速モードに切り替える速度切り替えコマンドを送信する(S15)。S15において、アンプ24は、高速モードでの初期化処理を行う。具体的には、アンプ24は、速度切り替えコマンドの送信に対して、ロータリエンコーダ55から正常な応答を受信すると、高速な通信を実行するのに必要な初期値の設定等をロータリエンコーダ55に対して行う(S15)。アンプ24は、初期化処理を終了させると高速な通信を開始する(S17)。
また、多重通信装置29,39は、S13において、アンプ24から送信された速度切り替えコマンドを検出すると、高速モードへ移行し初期化処理を開始する(S15)。この際、多重通信装置29,39は、速度切り替えコマンドを検出し、所定時間だけ経過した後に高速モードへ移行する(S15)。この所定時間は、例えば、上記したアンプ24からロータリエンコーダ55へ速度切り替えコマンドを送信した時点から、ロータリエンコーダ55の応答がアンプ24に到達するまでの時間である。即ち、本実施形態の多重通信装置29,39は、アンプ24が低速な通信から高速な通信へ移行するのに必要な時間だけ、自身も低速モードから高速モードへ移行するのを待つ処理を行う。これにより、多重通信装置29,39は、高速な通信を開始するタイミングをアンプ24等と合わせることで、データ化け等の発生を抑制し、適切に高速な通信へ移行することができる。
また、多重通信装置29,39は、高速モードへ移行すると(S15)、高速な通信の通信速度に応じたサンプリング周期を設定する。上記したように図2に示すデータ取込部203は、ロータリエンコーダ55からエンコーダ信号ENCD1を、所定の通信規格に準拠した通信で取り込む。この際に、データ取込部203は、ロータリエンコーダ55から送信されるエンコーダ信号ENCD3を所定のサンプリング周期に基づいてサンプリングして取り込む。このサンプリング周期は、エンコーダ信号ENCD3のデータを適切に検出するために、例えば、速度の高速化にともなって周期を短くする必要がある。
そこで、多重通信装置29,39は、例えば、低速モードから高速モードへ移行するのに応じて、エンコーダ信号ENCD3を取り込むデータ取込部203で使用するサンプリング周期を短くする制御を行う。これにより、多重通信装置29,39は、高速な通信で送受信されるエンコーダ信号ENCD3を、データ取込部203でサンプリングし、多重化部219によって適切に多重化することができる。
また、多重通信装置29,39は、高速モードへ移行すると(S15)、高速な通信の通信速度に応じた出力継続時間を設定する。上記したように図3に示すデータ出力部303は、エンコーダ信号ENCD3を一時的に蓄積してからサーボアンプ24へ送信する。この際に、データ出力部303は、エンコーダ信号ENCD3の1データを出力継続時間ごとに出力する。ここでいう1データの出力継続時間とは、例えば、エンコーダ信号ENCD3の1ビットのデータをハイレベルの信号で表わした場合に、そのハイレベルの信号をデータ出力部303から送出するのに必要な時間である。この1データの出力継続時間は、例えば、通信速度が速くなるのに比例して短くなる。なお、この1データの出力継続時間の具体例については後述する。
そこで、多重通信装置29,39は、例えば、低速モードから高速モードへ移行するのに応じて、エンコーダ信号ENCD3を出力するデータ出力部303で使用する出力継続時間を短くする制御を行う。これにより、多重通信装置29,39は、高速な通信で送受信されるエンコーダ信号ENCD3を、データ出力部303からサーボアンプ24へ適切に送信することができる。
また、多重通信装置29,39は、高速モードへ移行すると(S15)、タイムアウト時間及び誤り検出処理を変更する。ここでいうタイムアウト時間とは、例えば、ノイズ等による通信データの誤り等により、多重通信装置39がロータリエンコーダ55からエンコーダ信号ENCD3を一定時間だけ入力できない場合に、無入力を異常(入力エラー)として検出する判断基準となる時間である。このタイムアウト時間は、通信速度を速くするのにともなって時間を短くする。これにより、高速通信の規格で短いタイムアウト時間を要求されている場合など、通信速度に応じてタイムアウト時間を最適化できる。
また、例えば、低速モードと、高速モードでは要求される誤り検出の処理速度が異なり、最適な誤り検出処理の内容、方式が異なる場合がある。即ち、通信速度が異なれば、使用すべき誤り検出処理も違う場合がある。ここでいう誤り検出処理とは、エンコーダ信号ENCD3の誤りを検出するだけの処理、あるいは誤りの検出に加えて訂正も行う処理である。誤り検出は、例えば、CRCチェック(巡回冗長検査)、パリティチェック、あるいはチェックサムを用いてもよい。
なお、多重通信装置29,39は、上記したタイムアウト時間及び誤り検出処理のうち、少なくとも一方をエンコーダ信号ENCD3の通信速度の変更に応じて変更してもよい。また、多重通信装置29,39は、上記したサンプリング周期、出力継続時間、タイムアウト時間及び誤り検出処理の各々について、予め設定された値等を用いることができる。この予め設定された値等は、低速モード及び高速モードのそれぞれに対応したものが設定される。また、多重通信装置29,39は、エンコーダ信号ENCD3の立ち上がりエッジ及び立ち下がりエッジに基づいて通信速度(通信モード)を検出し、検出した通信速度に応じてサンプリング周期等を設定してもよい。この立ち上がりエッジ等に基づく通信速度の検出については後述する。
多重通信装置29,39は、S15において低速モードから高速モードへの移行に合わせてサンプリング周期及び出力継続時間を設定する一方で、アンプ24とロータリエンコーダ55とが高速モードへ適切に移行できているか否かを判定する。多重通信装置29,39は、例えば、サーボアンプ24とロータリエンコーダ55との間で送受信される通信の内容を確認し、高速な通信を実行するのに必要な初期値の設定等を実行できているか否かを判定することで、高速モードへ適切に移行できているか否かを判定する。多重通信装置29,39は、サーボアンプ24等が高速モードへ適切に移行できていると判定すると、高速な通信を開始する(S17)。
S17において、作業用ロボット10は、運転状態となる。作業用ロボット10は、アンプ24とロータリエンコーダ55との間で高速通信を実行しながら、サーボモータ33を回転させ、トルク、速度、位置制御等を実行する。即ち、作業用ロボット10は、エンコーダ信号ENCD3を高速な通信で送受信しながら、生産ラインを搬送される対象物に可動部30(ロボットアーム)に保持されたワークの取り付けなどの作業を実行する。
作業用ロボット10は、運転状態において、運転を停止する条件を満たすと、非可動状態となる(S19)。ここでいう運転を停止する条件とは、例えば、ユーザからの停止指示、ワークの取り付け作業中のエラー検出などである。例えば、ユーザは、可動部30の種類を変更するため、コントローラ21に対して作業用ロボット10を停止する旨の操作を実行する。コントローラ21は、ユーザからの停止指示に応じて、フィールドネットワーク用ケーブル41を介してアンプ23にRESETコマンドを送信する。このRESETコマンドとは、例えば、MECHATROLINK(登録商標)-IIIで用いられるマスター(コントローラ21)からスレーブ(サーボアンプ24)への停止を通知するコマンドである。
作業用ロボット10は、このようにして各種装置を非稼動状態とする(S19)。ユーザは、作業用ロボット10を非稼動状態(S19)とした後、可動部30の交換などを行う。また、作業用ロボット10は、非稼動状態(S19)において、主電源スイッチをOFFされると、上記したS11の非通電状態となる。
一方で、S13において、作業用ロボット10は、低速モードを維持する場合には、低速モードで運転状態となる(S21)。例えば、アンプ24からロータリエンコーダ55への確認作業の結果、ロータリエンコーダ55が高速な通信に対応していない場合、作業用ロボット10は、S21へ移行する。
S21において、アンプ24、ロータリエンコーダ55、多重通信装置29,39は、低速モードとなる。作業用ロボット10は、アンプ24とロータリエンコーダ55との間で低速通信を実行しながら、サーボモータ33を回転させ、トルク、速度、位置制御等を実行する。即ち、作業用ロボット10は、エンコーダ信号ENCD3を低速な通信で送受信しながら、生産ラインを搬送される対象物に可動部30(ロボットアーム)に保持されたワークの取り付けなどの作業を実行する。
作業用ロボット10は、S21の運転状態において、高速モードの運転状態(S17)と同様に、運転を停止する条件を満たすと、非稼動状態となる(S23)。作業用ロボット10は、ユーザからの停止指示等を受け付けると、各種装置を非稼動状態とする(S23)。また、作業用ロボット10は、非稼動状態(S23)において、主電源スイッチをOFFされると、上記したS11の非通電状態となる。このようにして、本実施形態の多重通信装置29,39は、切り替えコマンドの受信に応じてサンプリング周期や出力継続時間を変更することで、2以上の異なる通信速度で通信されるエンコーダ信号ENCD3を適切にサンプリング及び多重化できる。
(同一のサンプリング周期によるサンプリング)
上記した説明では、多重通信装置29,39は、S13において、速度切り替えコマンドの検出に応じて低速モードと高速モードとを切り替え、サンプリング周期を変更していた。しかしながら、多重通信装置29,39は、低速モードと高速モードとで同一のサンプリング周期を用いてもよい。
上記した説明では、多重通信装置29,39は、S13において、速度切り替えコマンドの検出に応じて低速モードと高速モードとを切り替え、サンプリング周期を変更していた。しかしながら、多重通信装置29,39は、低速モードと高速モードとで同一のサンプリング周期を用いてもよい。
図6,図7及び図8は、エンコーダ信号ENCD3を同期通信方式で通信する場合を示している。ケース1は、従来の方法の一例を示している。ケース2は、本実施形態の低速モードを示している。ケース3は、本実施形態の高速モードを示している。ケース1,2,3は、図7及び図8の「データ」の項目に示すように、一例として「1」「0」のデータ(同一のエンコーダ信号ENCD3)を送受信している。なお、図7及び図8の「波形」の項目では、ハイレベル信号に該当する部分にハッチングを付している。
ケース1,2,3は、同期通信方式として例えば、HDLC(High level Data Link Control procedure)の通信規格に準拠した通信を行う。データの符号化としては、例えば、マンチェスタ符号を用いる。また、ケース1は、初期化状態及び運転状態ともに2Mbpsの通信速度である。カッコ内の数字は、図7に示すように、1データの出力継続時間71であり、500ns(=1/2Mbps)である。なお、出力継続時間71は、上記したデータ取込部203によってサンプリングする場合は、データ取込部203が1データを取り込む時間となる。また、出力継続時間71は、上記したデータ出力部303が1データを出力する場合は、データ出力部303が1データを出力する時間となる。
また、ケース1のサンプリング周期は、16MHzである。カッコ内の数字は、図7に示すように、1clock(1サンプル)の時間73であり、62.5ns(=1/16MHz)である。また、1データをサンプリング周期で分割する分解能は、8分割である。ケース1では、8サンプルごとに1データを処理(取り込み等)し、図7及び図8の「信号レベル」の項目に示すように、ハイレベル信号(H)、ローレベル信号(L)、ローレベル信号(L)、ハイレベル信号(H)の順に処理している。これにより、図7及び図8の「データ」の項目に示すように、ハイレベル信号(H)、ローレベル信号(L)の順で処理した信号で表すビット値「1」と、ローレベル信号(L)、ハイレベル信号(H)の順で処理した信号で表すビット値「0」とのエンコーダ信号ENCD3を取り込み等している。
また、ケース1の8サンプルの先頭(Clockカウンタ「0」)では、エンコーダ信号ENCD3の立ち上がり(図中の波形の項目の「↑」)や、エンコーダ信号ENCD3の立ち下がり(図中の「↓」)が発生している。上記したように、多重通信装置29,39は、このエンコーダ信号ENCD3の立ち上がりエッジ(図中の「↑」)及び立ち下がりエッジ(図中の「↓」)に基づいて通信速度を検出してもよい。具体的には、多重通信装置29,39は、例えば、この立ち上がりエッジが何サンプルごとにくるのかを検出し、サンプル数(8サンプル)とサンプリング時間(例えば、62.5ns)を乗算して、通信速度2Mbps(500ns=8*62.5ns)を検出してもよい。なお、多重通信装置29,39は、通信速度の変更を検出する方法として、上記した速度切り替えコマンドの検出と、エンコーダ信号ENCD3のエッジの検出とを併用してもよい。また、図7及び図8中の横向き矢印「→」は、信号レベルの変化がない部分を示している。
また、本実施形態の多重通信装置29,39の各々は、上記したエッジの周期に基づいて、タイムアウト時間及び誤り検出処理を変更する処理を、互いに独立して実行することもできる。この場合、例えば、多重通信装置29は、アンプ23からデータ取込部203に取り込むエンコーダ信号ENCD3のエッジに基づいて通信速度を検出しタイムアウト時間等を変更できる。また、例えば、多重通信装置39は、ロータリエンコーダ55からデータ取込部203に取り込むエンコーダ信号ENCD3のエッジに基づいて通信速度を検出し、検出した通信速度に応じたタイムアウト時間等を設定してもよい。
次に、ケース2(低速モード)について説明する。なお、上記したケース1と同様の内容については、その説明を省略する。ケース2は、図6に示すように、初期化状態及び運転状態ともに2Mbpsの通信速度である。1データの出力継続時間75は、500ns(図7参照)である。
また、ケース2のサンプリング周期は、ケース1とは異なり32MHzである。1サンプルの時間77は、31.25ns(=1/32MHz)である。また、1データをサンプリング周期で分割する分解能は、例えば、8分割である。ケース2では、一例として低速モード(ケース2)と、高速モード(ケース3)とで分解能を統一した場合を示している。このため、多重通信装置29,39のデータ取込部203及びデータ出力部303は、8分割されたデータの2回分(16分割)を1データとして取り込み、又は出力する。これにより、例えば、データ取込部203は、16分割(16サンプル)ごとに、1データ(ハイレベル信号など)を取り込むこととなる。
ケース2では、図7及び図8の「信号レベル」の項目に示すように、16サンプルごとに1データを処理(取り込み等)し、ハイレベル信号(H)、ローレベル信号(L)、ローレベル信号(L)、ハイレベル信号(H)の順に処理している。これにより、図7及び図8の「データ」の項目に示すように、ビット値「1」と、ビット値「0」とのエンコーダ信号ENCD3を取り込み等している。
次に、ケース3(高速モード)について説明する。なお、図7及び図8は、ケース3の運転状態(高速な通信状態)を示している。ケース3は、図6に示すように、初期化状態では2Mbpsの通信速度である。1データの出力継続時間は、500nsである。一方で、運転状態では、4Mbpsの通信速度である。1データの出力継続時間79は(図7参照)、250ns(=1/4Mbps)である(図6参照)。
また、ケース3のサンプリング周期は、ケース2と同じ32MHzである。即ち、ケース2,3は、運転状態の通信速度が異なる(ケース3が速い)にも係わらず、サンプリング周期が32MHzで同一となっている。そして、この同一のサンプリング周期(32MHz)は、低速モードの通信速度(2Mbps)の16倍である。また、この同一のサンプリング周期(32MHz)は、高速モードの通信速度(4Mbps)の8倍である。即ち、本実施形態の多重通信装置29,39は、2以上の異なる通信速度(高速モード、低速モード)で通信されるエンコーダ信号ENCD3の各々における通信速度(2Mbps、4Mbps)の整数倍(16倍、8倍)をサンプリングできる同一周期(32MHz)の値をサンプリング周期として用いている。
ケース3の1サンプルの時間81は、ケース2と同様に、31.25ns(=1/32MHz)である。また、1データをサンプリング周期で分割する分解能は、例えば、8分割である。この場合、多重通信装置29,39のデータ取込部203及びデータ出力部303は、図7及び図8に示すように、8分割されたデータ(出力継続時間79)を1データとして取り込み、又は出力する。これにより、例えば、データ取込部203は、8分割(8サンプル)ごとに、1データ(ハイレベル信号など)を取り込むこととなる。即ち、上記したケース2の半分の時間で1データを取り込む。
ケース3では、8サンプルごとに1データを処理(取り込み等)し、ハイレベル信号(H)、ローレベル信号(L)、ローレベル信号(L)、ハイレベル信号(H)の順に処理している。これにより、ビット値「1」と、ビット値「0」とのエンコーダ信号ENCD3を取り込み等している。
従って、本実施形態の多重通信装置29,39は、エンコーダ信号ENCD3の通信速度が切り替えられ切り替えの前後における通信速度(2Mbps、4Mbps)の各々が同一周期(32MHz)の整数倍(16倍、8倍)である場合に、サンプリング周期を変更せずに維持する。また、本実施形態の多重通信装置29,39は、エンコーダ信号ENCD3の通信速度が切り替えられ切り替えの前後における通信速度の各々が同一周期の整数倍である場合に、通信速度と同一周期との比(16倍、8倍)に基づいて、フレームデータFRMD(多重化データ)から分離したエンコーダ信号ENCD3の1データを出力する時間である出力継続時間75,79を設定する。これにより、異なる通信速度のエンコーダ信号ENCD3を多重及び分離できる。
(非同期通信の場合)
次に、エンコーダ信号ENCD3を非同期通信方式(調歩同期方式)で通信する場合について説明する。図9,図10及び図11は、非同期通信方式の場合を示している。ケース4は、従来の方法の一例を示している。ケース5は、非同期通信方式の場合の低速モードを示している。ケース6は、非同期通信方式の場合の高速モードを示している。なお、以下の説明では、上記した同期通信方式と同様の内容についてはその説明を適宜省略する。
次に、エンコーダ信号ENCD3を非同期通信方式(調歩同期方式)で通信する場合について説明する。図9,図10及び図11は、非同期通信方式の場合を示している。ケース4は、従来の方法の一例を示している。ケース5は、非同期通信方式の場合の低速モードを示している。ケース6は、非同期通信方式の場合の高速モードを示している。なお、以下の説明では、上記した同期通信方式と同様の内容についてはその説明を適宜省略する。
ケース4,5,6は、図10及び図11の「データ」の項目に示すように、一例として「STARTビット(BIT-0)」、及びデータビットとして「1」,「1」,「0」のデータ(エンコーダ信号ENCD3)を送受信している。STARTビットは、非同期通信におけるデータの開始を示すビットであり、本例ではビット値「0」を設定されている。
また、図9に示すように、データの符号化としては、例えば、NRZ(Non Return to Zero)方式を用いる。また、ケース4は、初期化状態及び運転状態ともに2.5Mbpsの通信速度である。1データの出力継続時間は、400ns(=1/2.5Mbps)である。また、ケース4のサンプリング周期は、20MHzである。1サンプルの時間は、50ns(=1/20MHz)である。また、分解能は、8分割である。ケース4では、8サンプルごとに1データを処理(取り込み等)し、ローレベル信号(L)、ハイレベル信号(H)、ハイレベル信号(H)、ローレベル信号(L)の順に処理している。これにより、ローレベル信号(L)で表すSTARTビット(1BIT-0)、ハイレベル信号(H)で表すビット値「1」(DATA-B0)、ハイレベル信号(H)で表すビット値「1」(DATA-B1)、ローレベル信号(L)で表すビット値「0」(DATA-B2)のエンコーダ信号ENCD3を取り込み等している。
また、図10及び図11の「波形」の項目に示すように、上記した同期式通信方式と同様に、ケース4の8サンプルの先頭(Clockカウンタ「0」)では、エンコーダ信号ENCD3の立ち上がり(図中の波形の項目の「↑」)や、エンコーダ信号ENCD3の立ち下がり(図中の「↓」)が発生している。このため、多重通信装置29,39は、非同期通信方式の場合にも、エンコーダ信号ENCD3の立ち上がりエッジ等に基づいて通信速度を検出てきる。
次に、ケース5(低速モード)について説明する。ケース5は、図9に示すように、初期化状態及び運転状態ともに2.5Mbpsの通信速度である。1データの出力継続時間は、400nsである。また、ケース5のサンプリング周期は、ケース4とは異なり40MHzである。1サンプルの時間は、25ns(=1/40MHz)である。また、分解能は、例えば、16分割である。ケース5では、一例として低速モード(ケース5)と、高速モード(ケース6)とで異なる分解能を設定した場合を示している。このため、多重通信装置29,39のデータ取込部203及びデータ出力部303は、低速モード(ケース5)では、16分割されたデータを1データとして取り込み、又は出力する。これにより、例えば、データ取込部203は、16分割(16サンプル)ごとに、1データ(ハイレベル信号など)を取り込むこととなる。
次に、ケース6(高速モード)について説明する。なお、図10及び図11は、ケース6の運転状態(高速な通信状態)を示している。ケース6は、図9に示すように、初期化状態では2.5Mbpsの通信速度である。1データの出力継続時間は、400nsである。一方で、運転状態では、4Mbpsの通信速度である。1データの出力継続時間は、250ns(=1/4Mbps)となる。
また、ケース6のサンプリング周期は、ケース5と同じ40MHzである。即ち、ケース5,6は、運転状態の通信速度が異なる(ケース6が速い)にも係わらず、サンプリング周期が40MHzで同一となっている。そして、この同一のサンプリング周期(40MHz)は、低速モードの通信速度(2.5Mbps)の16倍である。また、この同一のサンプリング周期(40MHz)は、高速モードの通信速度(4Mbps)の10倍である。即ち、この場合の多重通信装置29,39は、2以上の異なる通信速度(高速モード、低速モード)で通信されるエンコーダ信号ENCD3の各々における通信速度(2.5Mbps、4Mbps)の整数倍(16倍、10倍)をサンプリングできる同一周期(40MHz)の値をサンプリング周期として用いている。
ケース6の1サンプルの時間は、ケース5と同様に、25ns(=1/40MHz)である。また、分解能は、10分割である。この場合、多重通信装置29,39のデータ取込部203及びデータ出力部303は、図10及び図11に示すように、10分割されたデータを1データとして取り込み、又は出力する。これにより、例えば、データ取込部203は、10分割(10サンプル)ごとに、1データ(ハイレベル信号など)を取り込むこととなる。即ち、上記したケース5とは異なる時間で1データを取り込む。
従って、この場合の多重通信装置29,39は、エンコーダ信号ENCD3の通信速度が切り替えられ切り替えの前後における通信速度(2.5Mbps、4Mbps)の各々が同一周期(40MHz)の整数倍(16倍、10倍)である場合に、サンプリング周期を変更せずに維持する。また、多重通信装置29,39は、エンコーダ信号ENCD3の通信速度が切り替えられ切り替えの前後における通信速度の各々が同一周期の整数倍である場合に、通信速度と同一周期との比(16倍、10倍)に基づいて、フレームデータFRMD(多重化データ)から分離したエンコーダ信号ENCD3の出力継続時間を設定する。これにより、異なる通信速度のエンコーダ信号ENCD3を多重及び分離できる。
因みに、多重通信装置29,39は、送信側多重通信装置及び受信側多重通信装置の一例である。エンコーダ信号ENCD3は、エンコーダ信号の一例である。フレームデータFRMDは、多重化データの一例である。
以上、詳細に説明した本実施形態によれば以下の効果を奏する。
(効果1)本実施形態の一態様では、多重通信装置29,39(送信側多重通信装置)は、同一周期の値をサンプリング周期として用いて、2以上の異なる通信速度で通信されるエンコーダ信号ENCD3のうち少なくとも一つ、即ち、実際に通信中のエンコーダ信号ENCD3をサンプリングし多重化する。この共通のサンプリング周期は、異なる通信速度の各々を整数倍した値を、サンプリングできる(割り切れる)値である。これにより、エンコーダ信号ENCD3の通信途中で通信速度を変更される場合や、可動部30の変更にともなってエンコーダ信号ENCD3の通信速度が変更された場合に、上記条件を満たすサンプリング周期を用いることで、エンコーダ信号ENCD3のサンプリングが適切にできる。従って、異なる通信速度のエンコーダ信号ENCD3を同一のサンプリング周期で多重化できる。また、この構成では、各通信速度に対応した処理ブロックや処理回路を別々に設けず、1つの処理ブロック(FPGAなど)に統一して処理を行うことができ、装置の小型化や製造コストの削減を図ることができる。
(効果1)本実施形態の一態様では、多重通信装置29,39(送信側多重通信装置)は、同一周期の値をサンプリング周期として用いて、2以上の異なる通信速度で通信されるエンコーダ信号ENCD3のうち少なくとも一つ、即ち、実際に通信中のエンコーダ信号ENCD3をサンプリングし多重化する。この共通のサンプリング周期は、異なる通信速度の各々を整数倍した値を、サンプリングできる(割り切れる)値である。これにより、エンコーダ信号ENCD3の通信途中で通信速度を変更される場合や、可動部30の変更にともなってエンコーダ信号ENCD3の通信速度が変更された場合に、上記条件を満たすサンプリング周期を用いることで、エンコーダ信号ENCD3のサンプリングが適切にできる。従って、異なる通信速度のエンコーダ信号ENCD3を同一のサンプリング周期で多重化できる。また、この構成では、各通信速度に対応した処理ブロックや処理回路を別々に設けず、1つの処理ブロック(FPGAなど)に統一して処理を行うことができ、装置の小型化や製造コストの削減を図ることができる。
(効果2)また、本実施形態の一態様では、通信速度が切り替わったとしても、サンプリング周期を変更する不要な処理を実行せずに、同一のサンプリング周期を用いたまま、通信速度の異なるエンコーダ信号ENCD3を多重化できる。また、多重通信装置29,39(受信側多重通信装置)は、例えば、出力継続時間75,79を、サンプリング周期(同一周期)と通信速度との比に基づいて設定する。多重通信装置29,39(受信側多重通信装置)は、通信速度が切り替わったとしても、サンプリング周期に基づいて出力継続時間75,79を設定することで、フレームデータFRMD(多重化データ)から分離したエンコーダ信号ENCD3を適切な通信速度でアンプ24やロータリエンコーダ55等に出力できる。
(効果3)本実施形態の一態様では、多重通信装置29,39(送信側多重通信装置)は、アンプ24等から受信した制御コマンドに応じて、エンコーダ信号ENCD1~ENCD8の通信速度の変更を検出する。これにより、多重通信装置29,39(送信側多重通信装置)は、通信速度に応じたサンプリング周期を設定することで、エンコーダ信号ENCD1~ENCD8を適切にサンプリング(多重化)できる。また、多重通信装置29,39(受信側多重通信装置)は、アンプ24等から受信した制御コマンドに応じて、エンコーダ信号ENCD1~ENCD8の出力継続時間を設定する。これにより、多重通信装置29,39(受信側多重通信装置)は、通信速度に応じた出力継続時間を設定することで、フレームデータFRMD(多重化データ)から分離したエンコーダ信号ENCD1~ENCD8を適切な通信速度でアンプ24等に出力できる。その結果、当該多重通信システムは、例えば、通信速度を切り替える制御コマンドを規定している通信規格に対応したエンコーダやアンプに対して広く適用できる。なお、ここでいう制御コマンドとは、例えば、アンプ24等からRS-485規格に準拠した通信(エンコーダ信号ENCD1~ENCD8の通信)によって送信される制御コマンドである。
(効果4)タイムアウト時間や誤り検出処理は、エンコーダ信号ENCD1~ENCD8の通信速度に応じて適切なものが異なる。そこで、本実施形態の一態様では、通信速度の変更に応じたタイムアウト時間を用いることで、例えば、通信速度が速くなった場合にはタイムアウト時間を短くして通信エラーを検出する。これにより、ノイズ等による通信データの誤り等でロータリエンコーダ55等から返信応答がない場合でも復帰動作を迅速且つ適切に実行できる。
また、当該多重通信システムでは、通信速度の変更に応じた誤り検出処理を用いる。エンコーダ信号ENCD1~ENCD8の通信規格の中には、例えば、初期設定では低速な通信を実行し、初期設定後の通信では高速な通信を行うものがある。そして、例えば、初期設定時には、時間に余裕があり再送が可能である場合が考えられる。この場合、受信側で誤り検出だけを実施し、誤りを送信側に通知する(再送を要求する)誤り検出処理が考えられる。一方、初期設定後の通信では、実際の作業が開始され迅速性を求められる結果、再送が困難な場合が考えられる。この場合、誤り検出処理は、誤りの検出に加え、誤りの訂正が可能な処理が好ましい。このような誤り検出処理の使い分けにより、通信速度の変更に対して適切な誤り検出を実行できる。これにより、エンコーダ信号のデータ化けなどについて誤りを検出し復帰動作を迅速且つ適切に実行できる。その結果、当該多重通信システムでは、システムの信頼性を高めることができる。
(効果5)また、本実施形態の一態様では、エッジの変化に基づいて通信速度を検出できる。その結果、タイムアウト時間及び誤り検出処理を、通信速度に応じて適切に設定でき、システムの信頼性を高めることができる。
(効果6)また、本実施形態の一態様において多重通信装置29,39の各々は、通信速度の検出と、検出後のタイムアウト時間や誤り検出処理の設定を独立に実行する。これにより、例えば、多重通信装置29,39のうち、一方側(送信側)から他方側(受信側)へ通信速度の変更を通知する処理が不要となる。
なお、本発明は上記の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内での種々の改良、変更が可能であることは言うまでもない。
例えば、本実施形態では、Gigabit Etherenet(登録商標)の通信規格に準拠した多重通信用ケーブル11(LANケーブル)を介した多重通信を例に説明したが、本願はこれに限定されるものではない。他の有線通信(例えば、光ファイバーケーブル、USBケーブルなど)を介した多重通信においても同様に適用でき、有線ではなく無線通信においても同様に適用することができる。
また、フレームデータFRMDのビット位置の構成やフレームデータFRMDに多重化するデータの種類(エンコーダ信号ENCD1~ENCD8以外のセンサ信号など)を適宜変更してもよい。
例えば、本実施形態では、Gigabit Etherenet(登録商標)の通信規格に準拠した多重通信用ケーブル11(LANケーブル)を介した多重通信を例に説明したが、本願はこれに限定されるものではない。他の有線通信(例えば、光ファイバーケーブル、USBケーブルなど)を介した多重通信においても同様に適用でき、有線ではなく無線通信においても同様に適用することができる。
また、フレームデータFRMDのビット位置の構成やフレームデータFRMDに多重化するデータの種類(エンコーダ信号ENCD1~ENCD8以外のセンサ信号など)を適宜変更してもよい。
また、多重通信装置29,39は、サンプリング周期及び出力継続時間のうち、どちらか一方のみを制御してもよい。
また、多重通信装置29,39は、タイムアウト時間及びエンコーダ信号ENCD1~ENCD8の誤り検出処理のうち、どちらか一方のみを制御してもよい。
また、多重通信装置29,39は、互いに独立してタイムアウト時間等を制御せず、例えば、フレームデータFRMDによってタイミングの通知を行い互いに協調してタイムアウト時間等を制御してもよい。
また、上記実施形態では、2以上の異なる通信速度として、高速モードと低速モードの2つの通信速度を採用した場合について説明したが、これに限らず、3以上の異なる通信速度(低速、中速、高速)を採用してもよい。
また、多重通信装置29,39は、タイムアウト時間及びエンコーダ信号ENCD1~ENCD8の誤り検出処理のうち、どちらか一方のみを制御してもよい。
また、多重通信装置29,39は、互いに独立してタイムアウト時間等を制御せず、例えば、フレームデータFRMDによってタイミングの通知を行い互いに協調してタイムアウト時間等を制御してもよい。
また、上記実施形態では、2以上の異なる通信速度として、高速モードと低速モードの2つの通信速度を採用した場合について説明したが、これに限らず、3以上の異なる通信速度(低速、中速、高速)を採用してもよい。
また、上記実施形態では特に言及していないが、リニアスケール51,53及びロータリエンコーダ55,57は、例えば、位置情報などのデータをシリアルで伝送する方式(シリアル伝送方式)のエンコーダでもよい。あるいは、リニアスケール51等は、例えばA,B,Zの各相のパルスをパラレルに伝送する方式(パラレル伝送方式)のエンコーダでもよい。
また、上記実施形態では生産作業を実施する作業用ロボット10を例に説明したが、本願の多重通信システムはこれに限定されることなく、例えば電子部品を回路基板に実装する電子部品装着装置のデータ伝送に適用してもよい。また、例えば切削等を行う工作機械に適用してもよい。
また、上記実施形態では生産作業を実施する作業用ロボット10を例に説明したが、本願の多重通信システムはこれに限定されることなく、例えば電子部品を回路基板に実装する電子部品装着装置のデータ伝送に適用してもよい。また、例えば切削等を行う工作機械に適用してもよい。
10 作業用ロボット、29,39 多重通信装置、75,79 出力継続時間、ENCD1~ENCD8 エンコーダ信号、FRMD フレームデータ。
Claims (7)
- 2以上の異なる通信速度を切り替えて通信されるエンコーダ信号をサンプリングして多重化し多重化データとして送信する送信側多重通信装置と、
前記送信側多重通信装置から受信した前記多重化データの多重化を解除して前記エンコーダ信号を分離する受信側多重通信装置と、を備え、
前記送信側多重通信装置は、前記エンコーダ信号を多重化する際に、2以上の異なる通信速度で通信される前記エンコーダ信号の各々における通信速度の整数倍をサンプリングできる同一周期の値をサンプリング周期として用いて、2以上の異なる通信速度で通信される前記エンコーダ信号の少なくとも一つをサンプリングする、多重通信システム。 - 前記送信側多重通信装置は、前記エンコーダ信号の通信速度が切り替えられ切り替えの前後における通信速度の各々が前記同一周期の整数倍である場合に、前記サンプリング周期を変更せずに維持し、
前記受信側多重通信装置は、前記エンコーダ信号の通信速度が切り替えられ切り替えの前後における通信速度の各々が前記同一周期の整数倍である場合に、通信速度と前記同一周期との比に基づいて、前記多重化データから分離した前記エンコーダ信号の1データを出力する時間である出力継続時間を設定する、請求項1に記載の多重通信システム。 - 2以上の異なる通信速度を切り替えて通信されるエンコーダ信号を、サンプリング周期でサンプリングして多重化し多重化データとして送信する送信側多重通信装置と、
前記送信側多重通信装置から受信した前記多重化データの多重化を解除して前記エンコーダ信号を分離し、分離した前記エンコーダ信号の1データを出力継続時間ごとに出力する受信側多重通信装置と、を備え、
前記送信側多重通信装置は、前記エンコーダ信号の通信速度を変更する旨の制御コマンドを受信したことに応じて、所定時間経過した後に、変更後の前記エンコーダ信号の通信速度に応じた前記サンプリング周期を設定し、
前記受信側多重通信装置は、前記エンコーダ信号の通信速度を変更する旨の制御コマンドを受信したことに応じて、所定時間経過した後に、変更後の前記エンコーダ信号の通信速度に応じた前記出力継続時間を設定する、多重通信システム。 - 前記エンコーダ信号を一定時間だけ入力できない異常を検出するためのタイムアウト時間、及び前記エンコーダ信号の誤りを検出するための誤り検出処理のうち、少なくとも一方を前記エンコーダ信号の通信速度の変更に応じて変更する、請求項1乃至請求項3の何れかに記載の多重通信システム。
- 前記エンコーダ信号の立ち上がりエッジ及び立ち下がりエッジのうち、少なくとも一方のエッジの周期に基づいて、前記エンコーダ信号の通信速度を検出し、前記タイムアウト時間及び前記誤り検出処理のうち、少なくとも一方を、検出した前記エンコーダ信号の通信速度に応じて変更する、請求項4に記載の多重通信システム。
- 前記送信側多重通信装置及び前記受信側多重通信装置の各々は、前記少なくとも一方のエッジの周期に基づいて、前記タイムアウト時間及び前記誤り検出処理のうち、少なくとも一方を変更する処理を、互いに独立して実行する、請求項5に記載の多重通信システム。
- 可動部によりワークを保持して作業を実施する作業用ロボットであって、
前記作業に拘わるデータの伝送を請求項1乃至請求項6の何れかに記載の多重通信システムにより伝送する、作業用ロボット。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/005933 WO2018150544A1 (ja) | 2017-02-17 | 2017-02-17 | 多重通信システム及び作業用ロボット |
JP2019500133A JP6742497B2 (ja) | 2017-02-17 | 2017-02-17 | 多重通信システム及び作業用ロボット |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/005933 WO2018150544A1 (ja) | 2017-02-17 | 2017-02-17 | 多重通信システム及び作業用ロボット |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018150544A1 true WO2018150544A1 (ja) | 2018-08-23 |
Family
ID=63170166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/005933 WO2018150544A1 (ja) | 2017-02-17 | 2017-02-17 | 多重通信システム及び作業用ロボット |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6742497B2 (ja) |
WO (1) | WO2018150544A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113204221A (zh) * | 2021-04-29 | 2021-08-03 | 中电科机器人有限公司 | 基于光通信的多关节电机驱控与通信系统 |
JPWO2020136705A1 (ja) * | 2018-12-25 | 2021-09-09 | 株式会社Fuji | 多重通信装置、及び作業機 |
CN113867430A (zh) * | 2020-06-30 | 2021-12-31 | 日本电产三协株式会社 | 电动机放大器及电动机放大器控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016151851A (ja) * | 2015-02-17 | 2016-08-22 | 富士機械製造株式会社 | 多重化通信装置 |
JP2016225942A (ja) * | 2015-06-03 | 2016-12-28 | 富士機械製造株式会社 | 多重化通信装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62125405A (ja) * | 1985-11-26 | 1987-06-06 | Toshiba Corp | ロボツト信号多重化方式 |
JP2810617B2 (ja) * | 1993-06-23 | 1998-10-15 | 株式会社三協精機製作所 | 多重シリアル信号の伝送方法 |
JP2906361B2 (ja) * | 1993-09-01 | 1999-06-21 | 富士通株式会社 | 多重化制御方式 |
JPH0918461A (ja) * | 1995-06-26 | 1997-01-17 | Atsumi Electron Corp Ltd | データ受信装置 |
JP4254321B2 (ja) * | 2003-04-15 | 2009-04-15 | 株式会社ニコン | エンコーダ装置、ロボットシステム |
JP5495580B2 (ja) * | 2009-02-20 | 2014-05-21 | 三菱重工業株式会社 | 光伝送システム及び光伝送方法 |
WO2014049815A1 (ja) * | 2012-09-28 | 2014-04-03 | 富士機械製造株式会社 | 駆動装置 |
EP3056868B1 (en) * | 2013-10-09 | 2023-12-20 | FUJI Corporation | Multiplexing communication system and working robot |
JP6203121B2 (ja) * | 2014-05-28 | 2017-09-27 | 株式会社東芝 | 信号変換装置および方法、信号復元装置および方法、ならびに情報処理装置 |
WO2016042636A1 (ja) * | 2014-09-18 | 2016-03-24 | 株式会社安川電機 | エンコーダシステム及びセンサシステム |
-
2017
- 2017-02-17 JP JP2019500133A patent/JP6742497B2/ja active Active
- 2017-02-17 WO PCT/JP2017/005933 patent/WO2018150544A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016151851A (ja) * | 2015-02-17 | 2016-08-22 | 富士機械製造株式会社 | 多重化通信装置 |
JP2016225942A (ja) * | 2015-06-03 | 2016-12-28 | 富士機械製造株式会社 | 多重化通信装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2020136705A1 (ja) * | 2018-12-25 | 2021-09-09 | 株式会社Fuji | 多重通信装置、及び作業機 |
JP7209014B2 (ja) | 2018-12-25 | 2023-01-19 | 株式会社Fuji | 作業機 |
CN113867430A (zh) * | 2020-06-30 | 2021-12-31 | 日本电产三协株式会社 | 电动机放大器及电动机放大器控制方法 |
CN113867430B (zh) * | 2020-06-30 | 2024-04-16 | 日本电产三协株式会社 | 电动机放大器及电动机放大器控制方法 |
CN113204221A (zh) * | 2021-04-29 | 2021-08-03 | 中电科机器人有限公司 | 基于光通信的多关节电机驱控与通信系统 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2018150544A1 (ja) | 2019-11-07 |
JP6742497B2 (ja) | 2020-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6169715B2 (ja) | 多重化通信システム及び作業用ロボット | |
JP6319749B2 (ja) | 対基板作業機 | |
WO2018150544A1 (ja) | 多重通信システム及び作業用ロボット | |
JP4898187B2 (ja) | 低ジッタ同期によるモジュラー方式数値制御装置 | |
CN107409151B (zh) | 多路复用通信系统及作业机 | |
JP4212372B2 (ja) | エンコーダ信号処理装置およびサーボドライバ | |
JP5177297B2 (ja) | インターフェース回路、インバータ装置、インバータシステム及び送受信方法 | |
EP3703024B1 (en) | Multiplex device, robot, and method for switching connection of multiplex device | |
JP6466732B2 (ja) | 多重化通信装置 | |
JP6596239B2 (ja) | 多重化通信装置 | |
CN111602371B (zh) | 多路复用装置、作业机及通信的切断方法 | |
JP4980292B2 (ja) | 異なる通信周期で複数のアンプと通信する数値制御システム | |
JP6615018B2 (ja) | 多重化通信システム及び作業機 | |
JP4118695B2 (ja) | 数値制御システム | |
CN116009484A (zh) | 多轴伺服控制系统 | |
US9208011B2 (en) | Synchronous serial interface circuit and motion control function module | |
WO2016038685A1 (ja) | 多重通信装置 | |
WO2002093394A3 (de) | Verfahren zur datenübertragung zwischen einem master und wenigstens einem slave | |
JP2017005415A (ja) | 通信装置 | |
JP2007195350A (ja) | 多チャンネルパルス列伝送装置 | |
JP2007219602A (ja) | 通信処理方法 | |
JP2011205491A (ja) | シリアルデータ通信回路、それを備えたモータ駆動装置、およびシリアルデータ通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17896969 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2019500133 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17896969 Country of ref document: EP Kind code of ref document: A1 |