WO2020003393A1 - ロジックアナライザ - Google Patents

ロジックアナライザ Download PDF

Info

Publication number
WO2020003393A1
WO2020003393A1 PCT/JP2018/024296 JP2018024296W WO2020003393A1 WO 2020003393 A1 WO2020003393 A1 WO 2020003393A1 JP 2018024296 W JP2018024296 W JP 2018024296W WO 2020003393 A1 WO2020003393 A1 WO 2020003393A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
data
speed
logic analyzer
unit
Prior art date
Application number
PCT/JP2018/024296
Other languages
English (en)
French (fr)
Inventor
伸夫 長坂
佐藤 武
英和 金井
憲司 渡邉
Original Assignee
株式会社Fuji
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 株式会社Fuji filed Critical 株式会社Fuji
Priority to JP2020526765A priority Critical patent/JP7082197B2/ja
Priority to PCT/JP2018/024296 priority patent/WO2020003393A1/ja
Publication of WO2020003393A1 publication Critical patent/WO2020003393A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits

Definitions

  • the present disclosure relates to a logic analyzer that processes communication data.
  • Patent Document 1 there is a logic analyzer that switches a signal path for processing a digital signal to be analyzed (for example, Patent Document 1).
  • the logic analyzer of Patent Literature 1 includes a connection switching circuit that switches a signal path.
  • the connection switching circuit switches the connection of a comparator that determines the logical level of the digital signal, a sampling circuit that samples the output signal of the comparator, and a large-capacity information storage device that stores the output signal of the comparator.
  • the logic analyzer is desired to execute a process according to the characteristics of the communication data to be analyzed.
  • the present disclosure has been made in view of the above problems, and has as its object to provide a logic analyzer that can execute processing according to characteristics of communication data to be analyzed.
  • the present disclosure has, as a first aspect, an input module for inputting communication data of serial communication in which a communication speed is changed during communication, and an input module for switching a communication speed used in the serial communication. Detecting a speed switching command from the communication data of the serial communication, and changing the communication speed of the serial communication based on at least one of a pulse width time of one pulse included in the pulse signal of the serial communication.
  • a logic analyzer comprising: a detection unit that detects a signal;
  • communication data of another communication standard which is a communication standard other than the RS-232C standard and the RS-485 standard is input, and a signal level of the communication data of the other communication standard is input.
  • the logic analyzer of the first aspect of the present disclosure it is possible to execute processing such as starting to save communication data in response to detection of a change in communication speed. As a result, processing according to the characteristics of the communication data to be analyzed can be performed.
  • communication data can be analyzed by the processing circuit for the RS-232C standard and the RS-485 standard.
  • the processing circuit for the RS-232C standard and the RS-485 standard For communication data of a communication standard other than the RS-232C standard and the RS-485 standard, only signal level conversion processing can be executed and output from an external interface to an external device. As a result, processing according to the characteristics of the communication data to be analyzed can be performed.
  • FIG. 3 is a block diagram of a detection unit of the FPGA.
  • FIG. 3 is a diagram illustrating a connection form of a logic analyzer.
  • FIG. 4 is a diagram illustrating a connection form of a logic analyzer when a through output unit is used.
  • FIG. 10 is a diagram illustrating a connection form of another example of a logic analyzer.
  • FIG. 10 is a diagram illustrating a connection form of another example of a logic analyzer.
  • FIG. 1 shows a block diagram of a logic analyzer 10 of the present embodiment.
  • the logic analyzer 10 includes various power supply circuits 11, an input module 13, an FPGA 15, a DDR memory 17, a nonvolatile memory 19, and the like.
  • the various power supply circuits 11 are circuits that function as power supplies for the logic analyzer 10.
  • the various power supply circuits 11 include, for example, an AC / DC conversion circuit and the like, and receive power from a commercial power supply or the like via the power supply connector 21.
  • the various power supply circuits 11 supply the received power to various devices of the logic analyzer 10.
  • the configuration of the power supply of the logic analyzer 10 is not particularly limited.
  • the logic analyzer 10 may include a rechargeable battery, or may be configured to receive wireless power supply.
  • the input module 13 is provided with various interfaces for connecting to a device to be analyzed and a communication cable.
  • the input module 13 has RS-485 driver ICs 23 and 24, RS-232C driver IC 25, CAN driver IC 26, LVDS driver ICs 27 and 28, and TTL input circuit IF (abbreviation of interface) 29.
  • IF abbreviation of interface
  • the RS-485 driver IC 23 and the like are interfaces for connecting to an analysis target device and the like (see FIG. 3) described later.
  • the method for connecting the input module 13 and the device to be analyzed and the like is not particularly limited.
  • the RS-485 driver IC 23 or the like may be configured to include a connection unit (input connector or output connector) for bypassing a communication cable to be analyzed.
  • the RS-485 driver IC 23 and the like may be configured to include a probe, a grounder, and the like for connecting to a terminal of the device to be analyzed.
  • the RS-485 driver IC 23 is a driver circuit that performs communication conforming to the RS-485 communication standard, and can be connected to a two-wire RS-485 communication cable or the like that performs half-duplex communication.
  • the RS-485 driver IC 24 is a driver circuit that performs communication conforming to the RS-485 communication standard, and can be connected to a 4-wire RS-485 communication cable or the like that performs full-duplex communication.
  • the RS-232C driver IC 25 is a driver circuit that performs communication conforming to the RS-232C communication standard, and can be connected to, for example, a communication cable for three channels (communication line).
  • the CAN driver IC 26 is a driver circuit for performing communication conforming to the CAN (Controller Area Network) data communication standard, and can be connected to, for example, a communication cable for three channels (communication lines).
  • the LVDS driver ICs 27 and 28 are interfaces for executing serial communication using LVDS (Low voltage differential signaling) technology.
  • the LVDS driver IC 27 is an input interface, and has, for example, four input terminals (RX terminals).
  • the LVDS driver IC 28 is an output interface, and has, for example, four output terminals (TX terminals).
  • the TTL input circuit IF29 is an interface that executes communication using Transistor-transistor-logic.
  • the TTL input circuit IF 29 converts the level of the input signal and outputs it to the FPGA 15.
  • the TTL input circuit IF29 converts, for example, a signal whose power supply voltage (Vdd) is 5V into a signal of 3.3V and outputs the signal to the FPGA 15.
  • the LVDS driver ICs 27 and 28 and the TTL input circuit IF29 are interfaces for inputting, for example, a trigger signal for instructing start of analysis and the like. Note that the LVDS driver ICs 27 and 28 and the TTL input circuit IF29 may be used as an interface for inputting communication data to be analyzed. Further, the above-described RS-485 communication, RS-232C communication, CAN communication, communication using LVDS technology, and communication using TTL are examples of the serial communication of the present disclosure.
  • the FPGA 15 includes a programmable logic device such as a Field Programmable Gate Array and a CPU, for example.
  • the FPGA 15 has a detection unit 31 and a reception unit 33 as circuit blocks.
  • the FPGA 15 is an example of a processing circuit according to the present disclosure.
  • the FPGA 15 constructs a circuit block based on, for example, configuration information (configuration data) stored in the nonvolatile memory 19.
  • the processing circuit according to the present disclosure is not limited to the FPGA, and may be, for example, a programmable logic device (PLD) or a composite programmable logic device (CPLD).
  • PLD programmable logic device
  • CPLD composite programmable logic device
  • the processing circuit of the present disclosure is not limited to a logic circuit such as an FPGA, but may be an integrated circuit for a specific application such as an ASIC. Further, the processing circuit of the present disclosure may be realized by software instead of hardware.
  • the detection unit 31 is a circuit block that analyzes communication data acquired via the input module 13, and detects a communication speed and the like.
  • the analysis of communication data is a concept that includes not only detection of communication speed but also detection of data, determination of a data format, detailed analysis of data contents, and the like.
  • the receiving unit 33 is a circuit block that receives setting information for performing analysis.
  • the method for receiving the setting information is not particularly limited.
  • the configuration information may be received via a JTAG connector 35 described later and the setting may be changed by changing the logic circuit of the FPGA 15, and the setting information may be received from an external device (PC 51) via the LAN connector 37.
  • the settings may be changed.
  • the method of receiving the setting information may be a method of reading data set in advance in the configuration information stored in the nonvolatile memory 19.
  • the DDR memory 17 is, for example, a DDR-SDRAM, and is used as a working memory in the processing of the FPGA 15.
  • the working memory is not limited to the DDR-SDRAM, but may be, for example, an SDRAM that uses one edge of a clock.
  • the nonvolatile memory 19 stores, for example, configuration information for constructing a circuit block of the FPGA 15.
  • the nonvolatile memory 19 is, for example, a nonvolatile memory such as an EEPROM, a FLASH memory, an FRAM (registered trademark), and an MRAM.
  • the logic analyzer 10 has a JTAG connector 35, a LAN connector 37, a USB connector 39, and an external interface 41 as interfaces for connecting to the outside in addition to the input module 13.
  • the JTAG connector 35 is connected to the FPGA 15.
  • the JTAG connector 35 is a connector that executes communication conforming to the standard proposed by JTAG (Joint European Test Action Group), for example.
  • the FPGA 15 inputs, via the JTAG connector 35, configuration information and the like corresponding to setting information for performing analysis.
  • the LAN connector 37 is connected to the FPGA 15 via the Ethernet PHY 43.
  • the USB connector 39 is connected to the FPGA 15 via a USB PHY 45.
  • the Ethernet PHY 43 and the USB PHY 45 are, for example, ICs that function as interfaces between a logical layer and a physical layer of each communication standard.
  • the LAN connector 37 is an interface for performing communication conforming to the Ethernet (registered trademark) communication standard.
  • the USB connector 39 is an interface for performing communication conforming to the USB standard.
  • the Ethernet (registered trademark) standard is not particularly limited, but is, for example, a gigabit Ethernet (registered trademark) standard.
  • the USB standard is not particularly limited, but is, for example, the USB 2.0 standard or the USB 3.0 standard.
  • the LAN connector 37 is connected to the PC 51 via the LAN cable 47.
  • the PC 51 is a personal computer and includes, for example, a monitor, a keyboard, a mouse, and the like.
  • the PC 51 is a device that changes setting information of the logic analyzer 10 and instructs the logic analyzer 10 to start analysis.
  • the PC 51 displays data received from the logic analyzer 10 and data received from an external logic analyzer 53 described later. Thereby, the analyst operating the PC 51 can check the analysis result.
  • the logic analyzer 10 may display the analysis result on a monitor connected to the USB connector 39, for example.
  • the external interface 41 is connected to the FPGA 15.
  • the external interface 41 is connected to an external logic analyzer 53 via a connection cable 49.
  • the external logic analyzer 53 analyzes various communication data.
  • the types of communication standards that can be analyzed by the external logic analyzer 53 are not particularly limited.
  • the external logic analyzer 53 may be configured to be able to analyze communication data of a communication standard that cannot be analyzed by the logic analyzer 10.
  • the FPGA 15 of the logic analyzer 10 may be configured to analyze communication data of at least one of the RS-232C standard and the RS-485 standard, and may not be configured to analyze communication data of the CAN communication standard.
  • the external logic analyzer 53 may analyze the communication data of the CAN communication standard transferred by performing signal level conversion or the like by the logic analyzer 10, for example. Further, the external logic analyzer 53 may execute a process of inputting a result of analyzing the communication data such as the RS-485 communication standard by the FPGA 15 and displaying the result on its own monitor.
  • the external interface 41 is an interface that executes communication using, for example, Transistor-transistor-logic.
  • the external logic analyzer 53 has, for example, a channel for inputting a plurality of types of digital signals. Note that the method of increasing the number of input channels is not limited to the method of increasing the number of physical terminals, but may be a method of increasing the number of communication ports realized by executing a program.
  • the external interface 41 can output a plurality of types of digital signals to the external logic analyzer 53 via the connection cable 49, for example.
  • the PC 51 is connected to an external logic analyzer 53 via a USB cable 55.
  • the PC 51 can acquire data analyzed by the external logic analyzer 53 and display it on its own monitor.
  • FIG. 2 is a block diagram illustrating a configuration of the detection unit 31.
  • the detection unit 31 includes a low-speed communication processing unit 61, a high-speed communication processing unit 62, and a common unit 63.
  • FIG. 3 shows an example of a connection form of the logic analyzer 10.
  • the logic analyzer 10 is connected between a servo amplifier 101 and an ABS (absolute type) encoder 102.
  • the servo amplifier 101 issues a command such as output of position information to the ABS encoder 102. Further, the servo amplifier 101 executes feedback control for changing the power supplied to the servo motor 103 based on the position information acquired from the ABS encoder 102. Thereby, the servo amplifier 101 can control the rotation operation of the servo motor 103 according to the position information.
  • the servo amplifier 101, the ABS encoder 102, and the servo motor 103 can be used as drive mechanisms for various working machines.
  • the working machine referred to here is, for example, a component mounting machine for mounting an electronic component on a board, a solder printing apparatus for applying solder to a board, an articulated robot for performing an assembling operation, a machine tool for performing cutting and the like.
  • the working machine is not limited to an industrial machine used in the factory automation (FA) field, but may be a nursing robot or the like. Therefore, various machines and devices that perform data communication can be targeted as analysis targets of the present disclosure.
  • FA factory automation
  • the servo amplifier 101 executes communication with the ABS encoder 102 by communication using a communication protocol of HDLC (High-Level Data Link Control), for example, in communication of the RS-485 standard. Therefore, the logic analyzer 10 connects the RS-485 driver ICs 23 and 24 to the servo amplifier 101, the ABS encoder 102, or a communication cable for connecting the two, and acquires communication data.
  • HDLC High-Level Data Link Control
  • some communication data to be analyzed may have a communication speed that changes during the course of communication.
  • the servo amplifier 101 performs low-speed communication when performing the initial setting for the ABS encoder 102.
  • the servo amplifier 101 acquires position information and the like by high-speed communication.
  • the low communication speed is, for example, 4 Mbps.
  • the high-speed communication is, for example, 8 Mbps.
  • the detection unit 31 can execute parallel processing by the low-speed communication processing unit 61 and the high-speed communication processing unit 62. Then, the detection unit 31 can more accurately determine the communication speed of the communication data by comparing, for example, whether the analysis results of the two processing units are correct.
  • the low-speed communication processing unit 61 can analyze the communication data of the above-mentioned communication speed of 4 Mbps, for example.
  • the high-speed communication processing unit 62 can analyze communication data having a communication speed of 8 Mbps, for example.
  • the setting of the communication speed at which the low-speed communication processing unit 61 and the high-speed communication processing unit 62 can analyze may be changed based on the setting information received by the reception unit 33.
  • the detecting unit 31 may include processing units such as an ultra-low speed, a medium speed, and an ultra-high speed in addition to the low-speed communication processing unit 61 and the high-speed communication processing unit 62. Further, the detection unit 31 may be configured to include only one of the low-speed communication processing unit 61 and the high-speed communication processing unit 62. In this case, the low-speed communication processing unit 61 or the high-speed communication processing unit 62 may automatically detect the communication speed by the communication speed automatic recognition unit 73, as described later. Further, the detection unit 31 may be configured to detect the communication speed in one processing unit and automatically change a sampling cycle for sampling communication data and the like.
  • the high-speed communication processing unit 62 analyzes high-speed communication as compared with the low-speed communication processing unit 61, but has the same configuration as a processing block as the low-speed communication processing unit 61. Therefore, in the following description, the same reference numerals are given to the processing blocks of the low-speed communication processing unit 61 and the high-speed communication processing unit 62. Processing blocks denoted by the same reference numerals perform the same processing except for a difference in communication speed, for example.
  • communication data is input to the detection unit 31 via the input module 13 (see FIG. 1).
  • the detection unit 31 is capable of analyzing communication data input via the input module 13.
  • the communication data input to the detection unit 31 is input to each of the low-speed communication processing unit 61, the high-speed communication processing unit 62, and the common unit 63.
  • the communication data input to the low-speed communication processing unit 61 and the high-speed communication processing unit 62 are transmitted in the order of the transmission line code analysis unit 71, the processing unit for each communication method 72, and the automatic communication speed recognition unit 73.
  • the communication data output from the communication speed automatic recognition unit 73 is a command recognition and timer value setting unit (hereinafter, sometimes referred to as a setting unit) 74, a communication direction recognition and data separation unit (hereinafter, referred to as a recognition separation unit). ) 75 and the FCS calculation unit 76.
  • the types and order of the processing units are examples.
  • the transmission line code analysis unit 71 analyzes the encoding method of the input communication data.
  • the transmission line code analysis unit 71 analyzes which coding method, such as the NRZ (non-return-to-zero) method or the Manchester method, is used for the communication data.
  • the transmission line code analysis unit 71 may perform a detailed analysis for classifying each of the NRZ methods, such as the NZR (L) method and the NZR (I) method.
  • the analysis method by the transmission line code analysis unit 71 is not particularly limited.
  • the transmission line code analysis unit 71 performs pattern analysis on a group of high-level and low-level signals included in communication data to determine whether or not the pattern matches a pattern according to each scheme, and analyzes the group. good.
  • the communication method-specific processing unit 72 analyzes the communication method of the input communication data.
  • the communication method-specific processing unit 72 analyzes which communication method is used, such as the start-stop synchronization method and the synchronous communication method, for example.
  • As the communication using the start-stop synchronization method for example, there is UART communication using UART (Universal Asynchronous Receiver Receiver).
  • As communication using the synchronous communication method for example, there is HDLC communication using HDLC.
  • the analysis method by the communication method-specific processing unit 72 is not particularly limited.
  • the communication method-specific processing unit 72 may analyze the communication method by detecting a specific bit string such as a flag sequence, a start bit, and a stop bit included in the communication data.
  • the communication speed automatic recognition unit 73 analyzes the communication speed of the input communication data.
  • the communication speed automatic recognition unit 73 detects the communication speed based on, for example, the time of the pulse width of one pulse included in the pulse signal of the input communication data pulse signal.
  • the communication speed automatic recognition unit 73 detects, for example, the time from the rise to the high level to the fall to the low level as the time of the pulse width, and calculates the communication speed from the time of the pulse width. If the change time of one pulse can be detected, the change time of one bit can be detected. For this reason, the communication speed automatic recognition unit 73 can calculate the communication speed from the change time of one bit.
  • the communication speed automatic recognition unit 73 may calculate the communication speed using the analysis result of the transmission line code analysis unit 71 or the processing unit 72 for each communication method. For example, the communication speed automatic recognition unit 73 uses the width of one pulse when the start bit detected by the communication system-specific processing unit 72 is encoded based on the encoding system detected by the transmission line code analysis unit 71. Alternatively, the time of the pulse width may be detected. The communication speed automatic recognition unit 73 outputs the detected value of the communication speed to the trigger condition recognition unit 82 of the common unit 63 (see the broken line in FIG. 2).
  • the trigger condition recognition unit 82 can detect a change in the communication speed of the communication data to be analyzed based on a change in the communication speed value input from the communication speed automatic recognition unit 73.
  • the trigger condition recognizing unit 82 executes a process triggered by detecting a change in the communication speed.
  • the common unit 63 has a data processing unit 83.
  • the data processing unit 83 is a circuit block that stores data in the DDR memory 17 (see FIG. 1), reads data from the DDR memory 17, transfers data to another device, and the like.
  • the trigger condition recognizing unit 82 analyzes only the position information at the time of high-speed communication without storing the analysis result at the initial setting.
  • a command is issued to the data processing unit 83 to save the result.
  • the data processing unit 83 can save only communication data at the time of high-speed communication based on the command (trigger) input from the trigger condition recognition unit 82.
  • the data processing unit 83 stores, for example, communication data as an analysis result in the DDR memory 17.
  • the data processing unit 83 may transfer the analysis result to the external logic analyzer 53 or the PC 51.
  • communication data (such as a pulse waveform) at the time of high-speed communication can be displayed on the PC 51 or the external logic analyzer 53 side.
  • the detecting unit 31 does not have to execute data storage or the like triggered by a change in the communication speed.
  • the detection unit 31 may output, for example, the analysis result and information on the communication speed to an external device.
  • the external interface 41 of the present embodiment can output a plurality of types of digital signals via the connection cable 49.
  • the data processing unit 83 of the detection unit 31 outputs communication data (such as position information) as an analysis result using one of the plurality of digital signals, and uses the other signals to determine the communication speed. Output information. That is, the data processing unit 83 outputs information on the communication speed to the external logic analyzer 53 in addition to the analysis result.
  • the external logic analyzer 53 can execute not only the analysis result of the communication data input from the logic analyzer 10 but also the analysis and display using the information of the communication speed. For example, a digital signal of the analysis result is output from the logic analyzer 10 to the channel 1 of the external logic analyzer 53, and a digital signal indicating communication speed information is output from the logic analyzer 10 to the channel 2 of the external logic analyzer 53. Then, the external logic analyzer 53 or the PC 51 connected to the external logic analyzer 53 may display the communication speed or the like based on the data acquired from the logic analyzer 10. Further, the external logic analyzer 53 may output the analysis result to the PC 51 only at a high speed, for example.
  • the setting unit 74 executes a command recognition process and a timer value determination process. It is assumed that among the serial communications to be analyzed, a command for instructing a speed switch (hereinafter, sometimes referred to as a speed switch command) is transmitted when the communication speed is changed during the communication.
  • the nonvolatile memory 19 stores, for example, bit value information of a speed switching command used in each communication standard.
  • the setting unit 74 refers to the bit values and the like stored in the nonvolatile memory 19 and determines whether or not the speed switching command has been transmitted. When detecting the speed switching command, the setting unit 74 notifies the trigger condition recognition unit 82 of the detection (see the broken line in FIG. 2).
  • the trigger condition recognizing unit 82 can detect a change in the communication speed of the communication data to be analyzed, similarly to the case where the communication speed value is input from the automatic communication speed recognizing unit 73 described above. Specifically, for example, the trigger condition recognizing unit 82 stores the position information at the time of high-speed communication as an analysis result based on the detection information of the speed switching command input from the setting unit 74 so as to store the analysis result. May be issued.
  • the setting unit 74 may determine the response time of the speed switching command, and may detect an abnormality when the time-out time has elapsed.
  • the non-volatile memory 19 (see FIG. 1) stores reference information 91 in which a first time is associated with assumed data that is data to be detected after the first time has elapsed.
  • the communication speed switching process includes a case where the speed change is executed immediately after the reception of the speed switch command, and a case where the next second stage command is received after the speed switch command is received and the speed change is executed. is there.
  • the first time and the assumed data according to the processing sequence of the speed change are set in the reference information 91 in advance according to the communication standard and the like.
  • the first time is, for example, the maximum time during which a response can be made to a speed switching command or a second-stage command transmitted next to the speed switching command.
  • the assumed data is, for example, data assumed in a processing sequence such as a response command to the speed switching command.
  • the assumed data is a command responding that the speed switching has been completed, or a command responding that the speed switching has failed.
  • the time from the speed switching command to the response of the second-stage command switching completion
  • the setting unit 74 detects an abnormality based on the reference information 91, after a lapse of the first time from the detection of the speed switching command, when the assumption data cannot be detected from the communication data.
  • the setting unit 74 outputs, for example, the detection of an abnormality to the trigger condition recognition unit 82.
  • the trigger condition recognition unit 82 can transfer the analysis result to the external logic analyzer 53 or the like, for example, in response to the detection of the abnormality.
  • the trigger condition recognition unit 82 can execute a process of storing the analysis result in the data processing unit 83 as a log at the time of abnormality, a process of notifying the PC 51 of the detection of the abnormality, and the like.
  • the setting unit 74 determines the timeout of a command other than the speed switching command included in the communication data.
  • a communication command used for serial communication to be analyzed and a timeout time of the communication command are set in association with each other. .
  • a bit value capable of identifying each communication command is set as data of the communication command.
  • the processing time differs for each type of command, and thus the timeout time for the command differs. Therefore, the timeout time is set in the reference information 91 in advance for each type of command.
  • the setting data in which the bit value of the command and the timeout time are described in the CSV format may be created in the PC 51 in advance, and may be stored in the nonvolatile memory 19 from the PC 51.
  • the setting unit 74 detects a communication command from the input communication data based on the bit value of the communication command set in the reference information 91.
  • the setting unit 74 sets a timeout period associated with the detected communication command based on the reference information 91. Then, the setting unit 74 detects an abnormality in response to a failure to detect a response to the detected communication command before a time-out period elapses after the detection of the communication command.
  • the setting unit 74 outputs, for example, the detection of an abnormality to the trigger condition recognition unit 82. Thereby, the trigger condition recognition unit 82 can output an analysis result to the external logic analyzer 53 or the like in response to, for example, detection of an abnormality.
  • the separating unit 75 recognizes the communication direction of the input communication data and separates the communication data according to the communication direction.
  • serial communication to be analyzed not only full-duplex communication but also half-duplex communication in which the transmission direction is switched is assumed.
  • the separating unit 75 transmits communication data transmitted from the servo amplifier 101 to the ABS encoder 102 and servo data transmitted from the ABS encoder 102.
  • the communication data to be transmitted to the amplifier 101 is separated.
  • the logic analyzer 10 is connected to, for example, communication lines in each direction.
  • the separation unit 75 can separate the communication line to be input and the communication direction in one-to-one correspondence.
  • the method of determining the communication direction is not particularly limited.
  • the user may input the communication direction as setting information to the logic analyzer 10.
  • the separating unit 75 may analyze the contents of the communication data and detect the communication direction. Specifically, when a command for initial setting or position information acquisition transmitted from the servo amplifier 101 to the ABS encoder 102 is detected from the communication data, the separating unit 75 disconnects the communication line from the servo amplifier 101 to the ABS encoder 102. May be determined as the communication line in the communication direction toward.
  • the separating unit 75 detects control information such as header information transmitted every half cycle in which the transmission direction is switched, for example. Then, the separating unit 75 detects a cycle in which the control information is detected, that is, a half cycle in which the communication direction is switched. Thereby, the separating unit 75 can detect the communication direction of the input communication data and separate the communication data according to the communication direction. The separation unit 75 outputs the communication data separated for each communication direction to the FCS calculation unit 76.
  • the separating unit 75 outputs information on the detected communication direction to the trigger condition recognizing unit 82 (see the broken line in FIG. 2).
  • the trigger condition recognition unit 82 can detect the switching of the communication direction in the communication data to be analyzed, similarly to the notification from the communication speed automatic recognition unit 73 and the setting unit 74 described above. Then, the trigger condition recognition unit 82 can execute a process triggered by switching of the communication direction. For example, the trigger condition recognition unit 82 can instruct the data processing unit 83 to save only communication data transmitted from the servo amplifier 101 to the ABS encoder 102.
  • the FCS calculation unit 76 performs error detection and error correction on communication data for each communication direction input from the separation unit 75.
  • the receiving unit 33 (see FIG. 1) of the FPGA 15 receives setting information for performing analysis.
  • the receiving unit 33 receives, for example, a communication direction of serial communication to be analyzed, a type of an error detection code added to communication data in each communication direction, and a threshold for determining the number of times of detection of an error based on the error detection code.
  • the receiving unit 33 receives the setting information from the PC 51 before starting the analysis, for example.
  • the FCS calculation unit 76 detects an abnormality in the communication data received by the reception unit 33 that matches the communication direction, in response to detecting the error detection by the error detection code the number of times equal to the threshold. Therefore, the FCS calculation unit 76 detects an error in each communication direction according to the condition received by the reception unit 33, and detects an error when it detects an error the number of times (threshold) that matches the condition. For example, in serial communication of encoder information, an error code may not be added when transmitting a command requesting position information, but may be added only when transmitting position information (when responding). Therefore, the process of adding the error detection code to the communication data may not be executed in two-way communication but may be executed only in one-way communication.
  • the receiving unit 33 sets the target communication direction, the type of error detection code (CRC code, parity code, etc.) given to communication data in the communication direction, and the number of times of error detection. A threshold to be determined is received. Then, the FCS calculating unit 76 detects an error when detecting an error the number of times of the threshold value received by the receiving unit 33.
  • CRC code CRC code, parity code, etc.
  • the FCS calculation unit 76 when detecting an abnormality, notifies the trigger condition recognition unit 82 of the detection.
  • the trigger condition recognizing unit 82 can execute processing (storing, displaying, and the like) triggered by the notification of the abnormality, similarly to the notification from the communication speed automatic recognizing unit 73 and the like.
  • ⁇ FCS calculation section 76 outputs communication data for each communication direction to data processing section 83.
  • the data processing unit 83 can store communication data for each communication direction in response to an instruction from the trigger condition recognition unit 82 and the like.
  • the FCS calculation unit 76 may execute not only error detection but also error correction, and output the corrected communication data to the data processing unit 83.
  • the data processing unit 83 may be configured to store communication data that is not separated for each communication direction, that is, the acquired data as it is.
  • the detection unit 31 includes the low-speed communication processing unit 61 and the high-speed communication processing unit 62, and can execute parallel processing by the two processing units.
  • the detecting unit 31 can determine the communication speed of the communication data by determining whether the analysis results of the two processing units are correct, for example. For example, a case is considered where the communication speed automatic recognition unit 73 of the low-speed communication processing unit 61 and the communication speed automatic recognition unit 73 of the high-speed communication processing unit 62 sample communication data based on preset setting information.
  • the communication speed automatic recognition unit 73 of the low-speed communication processing unit 61 can normally sample communication data, but the communication speed automatic recognition unit 73 of the high-speed communication processing unit 62 cannot sample communication data correctly. For this reason, the detection unit 31 can detect the communication speed of the communication data by determining whether the sampling results of the two automatic communication speed recognition units 73 are correct.
  • the common unit 63 has a through output unit 81.
  • the through output unit 81 outputs, for example, communication data whose level has been converted by each driver IC of the input module 13 from the external interface 41 to the external logic analyzer 53.
  • FIG. 4 shows a connection configuration when the through output unit 81 is used.
  • the logic analyzer 10 is connected between the host controller 104 and the servo amplifier 101.
  • the host controller 104 is, for example, a control unit of a working machine that uses the servo motor 103 as a drive source.
  • the host controller 104 controls the servo amplifier 101 by CAN communication.
  • the logic analyzer 10 is used for analyzing CAN communication between the host controller 104 and the servo amplifier 101.
  • the detection unit 31 of the logic analyzer 10 has a configuration capable of analyzing only communication data of the communication standards of the RS-232C standard and the RS-485 standard. In this case, as described above, the detection unit 31 inputs communication data of the RS-232C standard or the like, and stores the communication data according to the communication speed.
  • the detection unit 31 has a configuration in which communication data of the CAN communication standard cannot be analyzed.
  • the external logic analyzer 53 can analyze the communication data of the CAN communication standard transferred by performing signal level conversion or the like by the CAN driver IC 26 of the logic analyzer 10.
  • the through output unit 81 illustrated in FIG. 2 outputs, for example, communication data of the CAN communication in which the signal level conversion has been performed by the CAN driver IC 26 from the external interface 41 to the external logic analyzer 53.
  • the communication data can be analyzed by the detection unit 31 for the RS-232C standard and the RS-485 standard.
  • a CAN communication standard an example of another communication standard
  • the communication standard such as CAN differs from the RS-232C standard and the RS-485 standard, and a dedicated logic analyzer is sold.
  • the detection unit 31 while the CAN communication standard for which the logic analyzer 10 is commercially available is dedicated from the external interface 41.
  • the external logic analyzer 53 for analysis. As a result, processing according to the characteristics of the communication data to be analyzed can be performed.
  • FIG. 5 shows a connection form of another example of the logic analyzer 10.
  • the logic analyzer 10 is connected between the PC 105 and the linear scale 107 and analyzes communication data of UART communication (communication according to the RS-485 standard).
  • the PC 105 is, for example, a maintenance terminal that controls the linear motor 109 and adjusts the speed based on the position information of the linear scale 107.
  • the user can execute adjustment work on the linear scale 107 and the linear motor 109. In such adjustment work of the linear scale 107 and the linear motor 109, analysis by the logic analyzer 10 may be performed.
  • the linear motor 109 can be used, for example, as a drive source of a mechanism that slides a working machine.
  • the logic analyzer 10 can be used when adjusting the linear scale 107 and the linear motor 109 in the work equipment design stage.
  • the logic analyzer 10 shown in FIG. 5 analyzes communication data conforming to, for example, the RS-485 standard, and stores and outputs data.
  • the PC 105 and the linear scale 107 are connected via multiplex communication devices 110 and 111.
  • the multiplex communication devices 110 and 111 are connected via, for example, an optical fiber cable, and execute time division multiplex communication.
  • the multiplex communication devices 110 and 111 multiplex and transmit / receive the communication data of the linear scale 107 with other data, for example.
  • the logic analyzer 10 may analyze communication data of the linear scale 107 before being multiplexed by the multiplex communication device 111, for example.
  • the logic analyzer 10 may receive communication data from the PC 105 to the multiplex communication device 111 and analyze communication data demultiplexed by the multiplex communication device 111.
  • the logic analyzer 10 may be connected between the PC 105 and the multiplex communication device 110 as shown in FIG. In the connection form shown in FIG. 6, the logic analyzer 10 is connected between the PC 105 and the linear scale 107, for example, and analyzes communication data of UART communication (communication of the RS-232C standard).
  • the logic analyzer 10 may analyze a plurality of communication data simultaneously.
  • the logic analyzer 10 may simultaneously execute the analysis of the HDLC communication of FIG. 3 and the transfer of communication data of the CAN communication of FIG.
  • the PC 105 shown in FIGS. 5 and 6 may be a controller for controlling a work machine and the like. That is, the logic analyzer 10 may be connected between the controller that controls the working machine and the like and the linear scale 107 that is controlled by the controller.
  • the communication data to be analyzed is not limited to the above.
  • the logic analyzer 10 may analyze communication data of an industrial network.
  • the “industrial network” is, for example, a relay or a relay using communication standards such as CC-Link (registered trademark), EtherCAT (registered trademark), MECHATROLINK (registered trademark) -III, and Profinet (registered trademark).
  • CC-Link registered trademark
  • EtherCAT registered trademark
  • MECHATROLINK registered trademark
  • Profinet registered trademark
  • This is a network for transmitting control data for controlling switches and the like.
  • the input module 13 may include an interface that performs conversion between parallel communication and serial communication in addition to signal level conversion.
  • RS-485 communication, RS-232C communication, CAN communication, communication using LVDS technology, and communication using TTL are examples of serial communication according to the present disclosure.
  • the CAN driver IC 26 is an example of a driver circuit.
  • the detection unit 31 is an example of a processing circuit.
  • the external logic analyzer 53 is an example of an external device.
  • the reference information 91 is an example of first reference information and second reference information.
  • the detecting unit 31 performs communication of serial communication based on detection of a speed switching command for switching the communication speed used in serial communication such as RS-485 standard from communication data by the setting unit 74. Detect changes in speed.
  • the communication speed automatic recognition unit 73 of the detection unit 31 detects a change in the communication speed of the serial communication based on the time of one pulse width included in the pulse signal of the serial communication. Note that the detection unit 31 may be configured to execute only one of detection of a change in the communication speed by the speed switching command and detection of a change in the communication speed by the pulse width.
  • the detection unit 31 can change the analysis processing content in response to, for example, detection of a change in the communication speed. Specifically, the detection unit 31 can start saving the analysis result, for example, triggered by a change in the communication speed. Further, the detection unit 31 may change, for example, a sampling period for sampling communication data of serial communication according to the communication speed. Thereby, sampling can be appropriately performed. Then, the detection unit 31 can execute a process according to the characteristics of the communication data to be analyzed.
  • the detection unit 31 of the present embodiment uses the processing result of the low-speed communication processing unit 61 and the processing result of the high-speed communication processing unit 62 in accordance with the communication speed, so that an appropriate processing Can be executed.
  • the detection unit 31 analyzes communication data of the RS-232C standard and the RS-485 standard.
  • the detection unit 31 may be configured to analyze communication data of at least one of the RS-232C standard and the RS-485 standard.
  • the CAN driver IC 26 receives communication data of another communication standard (CAN data communication standard) which is a communication standard other than the RS-232C standard and the RS-485 standard, and outputs the signal level of the communication data of the CAN data communication standard. Perform the conversion. Then, the through output unit 81 of the detection unit 31 outputs, from the external interface 41, communication data of the CAN data communication standard whose signal level has been converted by the CAN driver IC 26 (see FIG. 4).
  • CAN data communication standard a communication standard other than the RS-232C standard and the RS-485 standard
  • the communication data can be analyzed by the detection unit 31 for the RS-232C standard and the RS-485 standard.
  • a communication standard other than the RS-232C standard and the RS-485 standard only the signal level conversion processing is executed and output from the external interface 41 to an external device (such as the external logic analyzer 53).
  • the CAN data communication standard is different from the RS-232C standard and the RS-485 standard, and a general-purpose logic analyzer is commercially available.
  • communication data that requires unique analysis such as the RS-232C standard and the RS-485 standard is analyzed by the logic analyzer 10, while other communication standards for which a general-purpose logic analyzer is commercially available are transmitted from the external interface 41.
  • the communication data is output to the external logic analyzer 53 or the like for analysis.
  • processing according to the characteristics of the communication data to be analyzed can be performed.
  • other communication standards of the present disclosure are not limited to the CAN data communication standard.
  • the detection unit 31 does not have to output the communication speed information. Further, the detecting unit 31 does not have to execute the process triggered by detecting the change of the communication speed. Further, the detection unit 31 does not have to execute the processing based on the reference information 91. In this case, the reference information 91 does not have to be stored in the nonvolatile memory 19. Further, the detection unit 31 may acquire the reference information 91 from an external server device or the like. Further, the receiving unit 33 may not receive the communication direction of the serial communication, the type of the error detection code added to the communication data of the serial communication for each communication direction, and the threshold.
  • ⁇ 10 ⁇ logic analyzer 13 ⁇ input module, 31 ⁇ detection unit (processing circuit), 33 ⁇ reception unit, 41 ⁇ external interface, 91 ⁇ reference information (first reference information, second reference information).

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

分析対象の通信データの特性に応じた処理を実行できるロジックアナライザを提供すること。 ロジックアナライザは、通信の途中で通信速度が変更されるシリアル通信の通信データを入力する入力モジュールと、シリアル通信で用いる通信速度を切り換えるための速度切替コマンドをシリアル通信の通信データから検出すること、及びシリアル通信のパルス信号に含まれる1パルスのパルス幅の時間、のうち少なくとも一方に基づいて、シリアル通信の通信速度の変更を検出する検出部と、を備える。

Description

ロジックアナライザ
 本開示は、通信データを処理するロジックアナライザに関するものである。
 従来、分析対象のデジタル信号を処理する信号経路を切り替えるロジックアナライザがある(例えば、特許文献1など)。特許文献1のロジックアナライザは、信号経路を切り替える接続切換え回路を備えている。接続切換え回路は、デジタル信号の論理レベルを判断するコンパレータ、コンパレータの出力信号をサンプリングするサンプリング回路、コンパレータの出力信号を記憶する大容量情報記憶装置の接続を切り替える。
特開昭62-255883号公報
 ところで、ロジックアナライザの分析対象である通信データには、様々なデータがある。このため、ロジックアナライザには、分析対象の通信データの特性などに応じた処理の実行を望まれている。
 本開示は、上記の課題に鑑みてなされたものであり、分析対象の通信データの特性に応じた処理を実行できるロジックアナライザを提供することを目的とする。
 上記課題を解決するために、本開示は、第1側面として、通信の途中で通信速度が変更されるシリアル通信の通信データを入力する入力モジュールと、前記シリアル通信で用いる通信速度を切り換えるための速度切替コマンドを前記シリアル通信の通信データから検出すること、及び前記シリアル通信のパルス信号に含まれる1パルスのパルス幅の時間、のうち少なくとも一方に基づいて、前記シリアル通信の通信速度の変更を検出する検出部と、を備えるロジックアナライザを開示する。
 また、本開示は、第2側面として、RS-232C規格及びRS-485規格以外の通信規格である他の通信規格の通信データを入力し、前記他の通信規格の前記通信データの信号レベルの変換を実行するドライバ回路と、外部インタフェースと、前記RS-232C規格及び前記RS-485規格のうち少なくとも一方の通信規格の通信データを処理し、前記ドライバ回路で信号レベルの変換を実行した前記他の通信規格の前記通信データを前記外部インタフェースから出力する処理回路と、を備えるロジックアナライザを開示する。
 本開示の第1側面のロジックアナライザによれば、通信速度の変更の検出に応じて、通信データの保存を開始するなどの処理を実行できる。これにより、分析対象の通信データの特性に応じた処理を実行できる。
 また、本開示の第2側面のロジックアナライザによれば、RS-232C規格及びRS-485規格については、処理回路によって通信データを分析できる。また、RS-232C規格及びRS-485規格以外の他の通信規格の通信データに対しては、信号レベルの変換処理のみを実行し、外部インタフェースから外部装置へ出力することができる。これにより、分析対象の通信データの特性に応じた処理を実行できる。
本実施形態のロジックアナライザのブロック図である。 FPGAの検出部のブロック図である。 ロジックアナライザの接続形態を示す図である。 スルー出力部を用いる場合のロジックアナライザの接続形態を示す図である。 別例のロジックアナライザの接続形態を示す図である。 別例のロジックアナライザの接続形態を示す図である。
 以下、本開示のロジックアナライザの一実施形態について図面を参照しながら説明する。図1は、本実施形態のロジックアナライザ10のブロック図を示している。図1に示すように、ロジックアナライザ10は、各種電源回路11と、入力モジュール13と、FPGA15と、DDRメモリ17と、不揮発性メモリ19などを備えている。各種電源回路11は、ロジックアナライザ10の電源として機能する回路である。各種電源回路11は、例えば、AC/DC変換回路等を備え、電源コネクタ21を介して商用電源等から電力を受電する。各種電源回路11は、受電した電力をロジックアナライザ10の各種装置へ供給する。なお、ロジックアナライザ10の電源の構成は、特に限定されない。例えば、ロジックアナライザ10は、充電式のバッテリを備えても良く、無線による給電を受ける構成でも良い。
 入力モジュール13は、分析対象の装置や通信ケーブルと接続するための各種のインタフェースを備えている。入力モジュール13は、RS-485ドライバIC23,24、RS-232CドライバIC25、CANドライバIC26、LVDSドライバIC27,28、TTL入力回路IF(インタフェースの略)29を有している。なお、入力モジュール13が備えるIFの種類は一例であり、サポートしたい通信規格に応じて適宜変更される。
 RS-485ドライバIC23等は、後述する分析対象の装置等(図3参照)に接続するためのインタフェースである。なお、入力モジュール13と分析対象の装置等を接続する方法は、特に限定されない。例えば、RS-485ドライバIC23等は、分析対象の通信ケーブルをバイパスするための接続部(入力コネクタや出力コネクタ)を備える構成でも良い。あるいは、RS-485ドライバIC23等は、分析対象の装置の端子に接続するためのプローブやグランパーなどを備える構成でも良い。
 RS-485ドライバIC23は、RS-485通信規格に準拠した通信を行うドライバ回路であり、半二重通信を行う2線式のRS-485の通信ケーブル等に接続可能となっている。RS-485ドライバIC24は、RS-485通信規格に準拠した通信を行うドライバ回路であり、全二重通信を行う4線式のRS-485の通信ケーブル等に接続可能となっている。RS-232CドライバIC25は、RS-232C通信規格に準拠した通信を行うドライバ回路であり、例えば、3チャンネル(通信回線)分の通信ケーブル等に接続可能となっている。CANドライバIC26は、CAN(Controller Area Network)データ通信の規格に準拠した通信を行うドライバ回路であり、例えば、3チャンネル(通信回線)分の通信ケーブル等に接続可能となっている。
 LVDSドライバIC27,28は、LVDS(Low voltage differential signaling)技術を用いたシリアル通信を実行するインタフェースである。LVDSドライバIC27は、入力用のインタフェースであり、例えば、4つの入力端子(RX端子)を有している。LVDSドライバIC28は、出力用のインタフェースであり、例えば、4つの出力端子(TX端子)を有している。TTL入力回路IF29は、Transistor-transistor-logicを用いた通信を実行するインタフェースである。TTL入力回路IF29は、入力した信号のレベルを変換してFPGA15へ出力する。TTL入力回路IF29は、例えば、電源電圧(Vdd)が5Vの信号を、3.3Vの信号に変換してFPGA15へ出力する。LVDSドライバIC27,28,TTL入力回路IF29は、例えば、分析の開始等を指示するトリガ信号を入力するためのインタフェースである。なお、LVDSドライバIC27,28,TTL入力回路IF29を、分析対象の通信データを入力するインタフェースとして用いても良い。また、上記したRS-485通信、RS-232C通信、CAN通信、LVDS技術を用いた通信、TTLを用いた通信は、本開示のシリアル通信の一例である。
 FPGA15は、例えば、Field Programmable Gate Arrayなどのプログラム可能なロジックデバイスやCPUなどを備えている。FPGA15は、検出部31と、受付部33とを回路ブロックとして有している。FPGA15は、本開示の処理回路の一例である。FPGA15は、例えば、不揮発性メモリ19に保存されたコンフィグ情報(コンフィグレーションデータ)に基づいて、回路ブロックを構築する。なお、本開示の処理回路は、FPGAに限らず、例えば、プログラマブルロジックデバイス(PLD)や複合プログラマブルロジックデバイス(CPLD)でも良い。また、本開示の処理回路は、FPGAなどの論理回路に限らず、ASICなどの特定用途向けの集積回路でも良い。また、本開示の処理回路を、ハードウェアではなく、ソフトウェアで実現しても良い。
 検出部31は、入力モジュール13を介して取得した通信データを分析する回路ブロックであり、通信速度の検出などを行う。なお、通信データの分析とは、通信速度の検出だけでなく、データの検出、データ形式の判断、データの内容の詳細な分析などを含む概念である。受付部33は、分析を行うための設定情報を受け付ける回路ブロックである。設定情報の受け付け方法は、特に限定されない。例えば、後述するJTAGコネクタ35を介してコンフィグ情報を受信しFPGA15の論理回路を変更することで設定を変更してもよく、外部の装置(PC51)からLANコネクタ37を介して設定情報を受信し設定を変更しても良い。あるいは、設定情報の受け付け方法は、不揮発性メモリ19に保存されたコンフィグ情報に予め設定されたデータを読み込み方法でも良い。
 DDRメモリ17は、例えば、DDR-SDRAMであり、FPGA15の処理における作業用のメモリとして使用される。なお、作業用のメモリは、DDR-SDRAMに限らず、例えば、クロックの片エッジを使用するSDRAMでも良い。不揮発性メモリ19は、例えば、FPGA15の回路ブロックを構築するコンフィグ情報を保存する。不揮発性メモリ19は、例えば、EEPROM、FLASHメモリ、FRAM(登録商標)、MRAM等の不揮発性メモリである。
 また、ロジックアナライザ10は、入力モジュール13の他に外部と接続するためのインタフェースとして、JTAGコネクタ35、LANコネクタ37、USBコネクタ39、外部インタフェース41を有する。JTAGコネクタ35は、FPGA15に接続されている。JTAGコネクタ35は、例えば、JTAG(Joint European Test Action Group)によって提案された規格に準拠した通信を実行するコネクタである。FPGA15は、分析を行う設定情報に応じたコンフィグ情報などを、JTAGコネクタ35を介して入力する。
 LANコネクタ37は、イーサ用PHY43を介してFPGA15と接続されている。USBコネクタ39は、USB用PHY45を介してFPGA15と接続されている。イーサ用PHY43及びUSB用PHY45は、例えば、各通信規格の論理層と物理層のインタフェースとして機能するICである。LANコネクタ37は、イーサネット(登録商標)の通信規格に準拠した通信を行うインタフェースである。USBコネクタ39は、USB規格に準拠した通信を行うインタフェースである。なお、イーサネット(登録商標)規格は、特に限定されないが、例えば、ギガビットイーサネット(登録商標)規格である。また、USB規格は、特に限定されないが、例えば、USB2.0規格やUSB3.0規格である。
 LANコネクタ37は、LANケーブル47を介してPC51と接続されている。PC51は、パーソナルコンピュータであり、例えば、モニター、キーボード、マウスなどを備えている。PC51は、ロジックアナライザ10の設定情報の変更、ロジックアナライザ10に対する分析の開始指示を行う装置である。また、PC51は、ロジックアナライザ10から受信したデータや、後述する外部ロジックアナライザ53から受信したデータを表示する。これにより、PC51を操作する分析者は、分析結果を確認することができる。なお、ロジックアナライザ10は、例えば、USBコネクタ39に接続されたモニターに分析結果を表示しても良い。
 外部インタフェース41は、FPGA15と接続されている。また、外部インタフェース41は、接続ケーブル49を介して外部ロジックアナライザ53と接続されている。外部ロジックアナライザ53は、各種の通信データを分析する。なお、外部ロジックアナライザ53が分析可能な通信規格の種類は特に限定されない。例えば、外部ロジックアナライザ53は、ロジックアナライザ10で分析できない通信規格の通信データを分析可能な構成でも良い。この場合、ロジックアナライザ10のFPGA15は、RS-232C規格及びRS-485規格のうち少なくとも一方の通信規格の通信データを分析可能な構成で、CAN通信規格の通信データを分析できない構成でも良い。そして、外部ロジックアナライザ53は、例えば、ロジックアナライザ10で信号レベルの変換等を実施して転送されたCAN通信規格の通信データを分析しても良い。また、外部ロジックアナライザ53は、RS-485通信規格等の通信データをFPGA15で分析した結果を入力し、自身のモニターに表示する処理を実行しても良い。
 外部インタフェース41は、例えば、Transistor-transistor-logicを用いた通信を実行するインタフェースである。外部ロジックアナライザ53は、例えば、複数の種類のデジタル信号を入力するチャンネルを有している。なお、入力チャンネルを増やす方法は、物理的な端子を増やす方法に限らず、プログラムを実行することで実現する通信ポートを増やす方法でも良い。外部インタフェース41は、例えば、複数の種類のデジタル信号を、接続ケーブル49を介して外部ロジックアナライザ53へ出力可能となっている。
 PC51は、USBケーブル55を介して外部ロジックアナライザ53と接続されている。PC51は、外部ロジックアナライザ53で分析等したデータを取得して自身のモニターに表示可能となっている。
 次に、FPGA15の検出部31の構成について図2及び図3を参照しつつ説明する。図2は、検出部31の構成を示すブロック図である。図2に示すように、検出部31は、低速通信処理部61、高速通信処理部62、共通部63を有している。 
 図3は、ロジックアナライザ10の接続形態の一例を示している。図3に示す接続例では、ロジックアナライザ10は、サーボアンプ101と、ABS(アブソリュート型)エンコーダ102との間に接続されている。サーボアンプ101は、ABSエンコーダ102に対して位置情報の出力などの指令を実行する。また、サーボアンプ101は、ABSエンコーダ102から取得した位置情報に基づいてサーボモータ103に供給する電力を変更するフィードバック制御を実行する。これにより、サーボアンプ101は、位置情報に応じてサーボモータ103の回転動作を制御できる。
 このようなサーボアンプ101、ABSエンコーダ102、及びサーボモータ103は、様々な作業機の駆動機構として用いることができる。ここでいう作業機とは、例えば、基板に電子部品を装着する部品装着機、基板にはんだを塗布するはんだ印刷装置、組み立て作業を行う多関節ロボット、切削等を行う工作機械などである。また、作業機は、FA(Factory Automation)分野に用いられる産業用の機械に限らず、介護用のロボットなどでも良い。従って、本開示の分析対象としては、データの通信を行う様々な機械や装置を対象とすることができる。
 サーボアンプ101は、例えば、RS-485規格の通信で、HDLC(High-Level Data Link Control)の通信プロトコルを用いた通信により、ABSエンコーダ102と通信を実行する。このため、ロジックアナライザ10は、例えば、RS-485ドライバIC23,24を、サーボアンプ101、ABSエンコーダ102、あるいは、2つを接続する通信ケーブル等に接続され、通信データを取得する。
 ここで、分析対象の通信データの中には、通信の途中で通信速度が変更されるものも想定される。具体的には、例えば、サーボアンプ101は、ABSエンコーダ102に対する初期設定を実行する際に、低速な通信を実行する。また、サーボアンプ101は、例えば、初期設定を完了させ、ABSエンコーダ102が高速通信に対応する機種であると判断すると、高速な通信により位置情報の取得などを実行する。低速な通信速度は、例えば、4Mbpsである。高速な通信は、例えば、8Mbpsである。
 このような通信速度が変更される通信データを分析する場合に、検出部31は、低速通信処理部61と高速通信処理部62とによる並列処理を実行可能となっている。そして、検出部31は、例えば、2つの処理部の分析結果が正しいのかを比較等することで通信データの通信速度をより正確に判断できる。低速通信処理部61は、例えば、上記した4Mbpsの通信速度の通信データを分析可能となっている。高速通信処理部62は、例えば、8Mbpsの通信速度の通信データを分析可能となっている。なお、低速通信処理部61及び高速通信処理部62の分析可能な通信速度の設定を、受付部33で受け付けた設定情報に基づいて変更しても良い。また、検出部31は、低速通信処理部61、高速通信処理部62、以外に超低速、中速、超高速などの処理部を備えても良い。また、検出部31は、低速通信処理部61又は高速通信処理部62の一方のみを備える構成でも良い。この場合、低速通信処理部61又は高速通信処理部62は、後述するように、通信速度自動認識部73により自動で通信速度を検出しても良い。また、検出部31は、1つの処理部において通信速度を検出し、通信データをサンプリングするサンプリング周期等を自動で変更する構成でも良い。
 図2に示すように、高速通信処理部62は、低速通信処理部61に比べて高速な通信を分析するものの、処理ブロックとしては低速通信処理部61と同様の構成となっている。このため、以下の説明では、低速通信処理部61と高速通信処理部62との処理ブロックに同一符号を付して説明する。同一符号を付した処理ブロックは、例えば通信速度の違いを除いて同様の処理を実行する。
 まず、検出部31には、入力モジュール13(図1参照)を介して通信データが入力される。例えば、検出部31には、図3のサーボアンプ101からABSエンコーダ102へ送信された通信データや、ABSエンコーダ102からサーボアンプ101へ送信された通信データが入力される。検出部31は、入力モジュール13を介して入力した通信データに対する分析を行うことが可能となっている。
 検出部31に入力された通信データは、低速通信処理部61、高速通信処理部62、共通部63のそれぞれに入力される。低速通信処理部61及び高速通信処理部62に入力された通信データは、伝送路符号分析部71、通信方式別処理部72、通信速度自動認識部73の順に伝送される。次いで、通信速度自動認識部73から出力された通信データは、コマンド認識及びタイマー値設定部(以下、設定部という場合がある)74、通信方向認識及びデータ分離部(以下、認識分離部という場合がある)75、FCS計算部76の順に伝送される。なお、各処理部の種類や順番は一例である。
 伝送路符号分析部71は、入力された通信データの符号化の方式を分析する。伝送路符号分析部71は、例えば、NRZ(non-return-to-zero)方式、マンチェスタ方式などのどの符号化方式を用いた通信データであるのかを分析する。また、伝送路符号分析部71は、NRZ方式の中でもNZR(L)方式やNZR(I)方式など、各方式の中で分類分けする詳細な分析を実行しても良い。なお、伝送路符号分析部71による分析方法は、特に限定されない。例えば、伝送路符号分析部71は、通信データに含まれるハイレベルとローレベルの信号群に対し、各方式に応じたパターンと一致するか否かを判断するパターンマッチングを実行し分析しても良い。
 通信方式別処理部72は、入力された通信データの通信方式を分析する。通信方式別処理部72は、例えば、調歩同期方式、同期通信方式などのどの通信方式を用いた通信データであるのかを分析する。調歩同期方式を用いる通信としては、例えば、UART(Universal Asynchronous Receiver Transmitter)を用いたUART通信がある。また、同期通信方式を用いる通信としては、例えば、HDLCを用いたHDLC通信がある。なお、通信方式別処理部72による分析方法は、特に限定されない。例えば、通信方式別処理部72は、通信データに含まれるフラグシーケンス、スタートビット、ストップビットなどの特定のビット列を検出することで、通信方式を分析しても良い。
 通信速度自動認識部73は、入力された通信データの通信速度を分析する。通信速度自動認識部73は、例えば、入力した通信データのパルス信号に対し、パルス信号に含まれる1パルスのパルス幅の時間に基づいて通信速度を検出する。通信速度自動認識部73は、例えば、ハイレベルへの立ち上がりからローレベルへの立ち下がりまでの時間をパルス幅の時間として検出し、パルス幅の時間から通信速度を演算する。1パルスの変化時間が検出できれば、1ビットの変化時間を検出できる。このため、通信速度自動認識部73は、1ビットの変化時間から通信速度を演算できる。
 また、通信速度自動認識部73は、伝送路符号分析部71や通信方式別処理部72の分析結果を用いて通信速度を演算しても良い。例えば、通信速度自動認識部73は、通信方式別処理部72で検出したスタートビットを、伝送路符号分析部71で検出した符号化方式に基づいて符号化した場合の1パルスの幅を用いて、パルス幅の時間を検出しても良い。通信速度自動認識部73は、検出した通信速度の値を共通部63のトリガ条件認識部82へ出力する(図2の破線参照)。
 トリガ条件認識部82は、通信速度自動認識部73から入力される通信速度の値の変化に基づいて、分析対象の通信データの通信速度の変化を検出できる。トリガ条件認識部82は、通信速度の変更を検出することをトリガとして処理を実行する。図2に示すように、共通部63は、データ処理部83を有する。データ処理部83は、DDRメモリ17(図1参照)へのデータの保存、DDRメモリ17からのデータの読み出し、他の装置へのデータの転送等を実行する回路ブロックである。例えば、初期設定を低速で行い、位置情報の転送を高速で行うABSエンコーダ102に対して、トリガ条件認識部82は、初期設定では分析結果を保存せず、高速通信時の位置情報のみを分析結果として保存するようにデータ処理部83へ指令を出す。これにより、データ処理部83は、トリガ条件認識部82から入力した指令(トリガ)に基づいて、高速通信時の通信データのみを保存等できる。データ処理部83は、例えば、分析結果である通信データをDDRメモリ17に保存する。あるいは、データ処理部83は、分析結果を、外部ロジックアナライザ53やPC51へ転送しても良い。これにより、PC51や外部ロジックアナライザ53側において、高速通信時の通信データ(パルス波形など)を表示できる。
 また、検出部31は、通信速度の変更をトリガとしてデータの保存等を実行しなくとも良い。検出部31は、例えば、分析結果と、通信速度の情報を外部の装置へ出力しても良い。本実施形態の外部インタフェース41は、接続ケーブル49を介して、複数の種類のデジタル信号を出力可能となっている。検出部31のデータ処理部83は、例えば、この複数のデジタル信号のうち、1のデジタル信号を用いて分析結果の通信データ(位置情報など)を出力し、他の信号を用いて通信速度の情報を出力する。即ち、データ処理部83は、分析結果の他に、通信速度の情報を外部ロジックアナライザ53に出力する。
 これによれば、外部ロジックアナライザ53は、ロジックアナライザ10から入力した通信データの分析結果だけでなく、通信速度の情報を用いた分析や表示などを実行できる。例えば、外部ロジックアナライザ53のチャンネル1にロジックアナライザ10から分析結果のデジタル信号を出力し、外部ロジックアナライザ53のチャンネル2にロジックアナライザ10から通信速度の情報を示すデジタル信号を出力する。そして、外部ロジックアナライザ53や外部ロジックアナライザ53に接続されたPC51は、ロジックアナライザ10から取得したデータに基づいて、通信速度の表示等を実行しても良い。また、外部ロジックアナライザ53は、例えば、高速時のみPC51へ分析結果の出力を実行しても良い。
 図2に戻り、設定部74は、コマンドの認識処理やタイマー値の判断処理を実行する。分析対象のシリアル通信の中には、通信の途中で通信速度を変更する際に、速度切替を指示するコマンド(以下、速度切替コマンドという場合がある)を送信するものが想定される。不揮発性メモリ19(図1参照)には、例えば、各通信規格で用いられる速度切替コマンドのビット値の情報等が保存されている。設定部74は、この不揮発性メモリ19に保存されたビット値等を参照して、速度切替コマンドが送信されたか否かを判断する。設定部74は、速度切替コマンドを検出すると、検出した旨をトリガ条件認識部82へ通知する(図2の破線参照)。
 これにより、トリガ条件認識部82は、上記した通信速度自動認識部73から通信速度の値が入力された場合と同様に、分析対象の通信データの通信速度の変化を検出できる。具体的には、例えば、トリガ条件認識部82は、設定部74から入力される速度切替コマンドの検出情報に基づいて、高速通信時の位置情報のみを分析結果として保存するようにデータ処理部83へ指令を出しても良い。
 また、設定部74は、速度切替コマンドの応答時間を判断し、タイムアウト時間となった場合に異常を検出しても良い。例えば、不揮発性メモリ19(図1参照)には、第1時間と、第1時間の経過後に検出すべきデータである想定データとが関連付けられた参照情報91が保存されている。例えば、通信速度の切り替え処理としては、速度切替コマンドの受信後直ぐに速度変更を実行する場合や、速度切替コマンドを受信した後に次の2段階目のコマンドを受信して速度変更を実行する場合がある。こうした速度変更の処理シーケンスに応じた第1時間と想定データとを、通信規格等に応じて予め参照情報91に設定しておく。
 従って、第1時間は、例えば、速度切替コマンド、あるいは速度切替コマンドの次に送信される2段階目のコマンドに対して応答することが可能な最大時間である。換言すれば、この第1時間が経過すると、送信側は、タイムアウトとして認識する。想定データとは、例えば、速度切替コマンドに対する応答コマンドなどの処理シーケンスで想定されるデータである。具体的には、例えば、想定データは、速度の切り替えを完了したことを応答するコマンド、あるいは速度の切り替えに失敗したことを応答するコマンドである。また、例えば、速度切替コマンドを送信して応答コマンドを送信した後、さらに次の2段階目のコマンドの送信から速度を切り替える可能性もある。この場合、速度切替コマンドから2段階目のコマンドの応答(切り替え完了)までの時間を第1時間として設定しも良い。
 設定部74は、参照情報91に基づいて、速度切替コマンドを検出してから第1時間だけ経過した後に、通信データから想定データを検出できないことに応じて異常を検出する。設定部74は、例えば、異常を検出した旨をトリガ条件認識部82へ出力する。これにより、トリガ条件認識部82は、例えば、異常の検出に応じて外部ロジックアナライザ53等へ分析結果を転送できる。あるいは、トリガ条件認識部82は、分析結果を異常時のログとしてデータ処理部83へ保存させる処理や、異常の検出をPC51に通知する処理などを実行できる。
 また、設定部74は、通信データに含まれる速度切替コマンド以外のコマンドについてタイムアウトの判断を実行する。不揮発性メモリ19(図1参照)の参照情報91には、上記した想定データの他に、分析対象のシリアル通信に用いられる通信コマンドと、その通信コマンドのタイムアウト時間とが関連付けて設定されている。参照情報91には、通信コマンドのデータとして、例えば、各通信コマンドを識別可能なビット値が設定されている。例えば、UART通信では、コマンドの種類ごとで処理時間が異なるため、コマンドに対するタイムアウト時間が異なってくる。そこで、コマンドの種類ごとにタイムアウト時間を予め参照情報91に設定しておく。例えば、コマンドのビット値とタイムアウト時間とをCSV形式で記述した設定データを予めPC51で作成しておき、PC51から不揮発性メモリ19に保存しても良い。
 設定部74は、参照情報91に設定された通信コマンドのビット値に基づいて、入力された通信データから通信コマンドを検出する。設定部74は、参照情報91に基づいて、検出した通信コマンドと関連付けられたタイムアウト時間を設定する。そして、設定部74は、通信コマンドを検出してからタイムアウト時間だけ経過するまでに、検出した通信コマンドに対する応答を検出できないことに応じて異常を検出する。設定部74は、例えば、異常を検出した旨をトリガ条件認識部82へ出力する。これにより、トリガ条件認識部82は、例えば、異常の検出に応じて外部ロジックアナライザ53等へ分析結果を出力等できる。
 また、分離部75は、入力された通信データの通信方向の認識、及び通信方向に応じた通信データの分離を実行する。分析対象のシリアル通信の中には、全二重通信だけでなく、送信方向の切り替わる半二重通信も想定される。分離部75は、例えば、図3のサーボアンプ101とABSエンコーダ102との間で半二重通信が実行される場合、サーボアンプ101からABSエンコーダ102へ送信する通信データと、ABSエンコーダ102からサーボアンプ101へ送信する通信データを分離する。
 全二重通信の場合、ロジックアナライザ10は、例えば、各方向の通信線に接続される。このため、分離部75は、入力する通信線と、通信方向を1対1で対応付けて分離できる。なお、通信方向の判別方法は、特に限定されない。例えば、ユーザが、ロジックアナライザ10に対して設定情報として通信方向を入力しても良い。あるいは、分離部75は、通信データの内容を分析し、通信方向を検出しても良い。具体的には、サーボアンプ101からABSエンコーダ102へ送信する初期設定や位置情報の取得を行うコマンドを通信データから検出した場合、分離部75は、その通信線を、サーボアンプ101からABSエンコーダ102に向かう通信方向の通信線として判断しても良い。
 また、半二重通信の場合、通信方向は、例えば、一定の周期で送信方向が切り替わる。このため、分離部75は、例えば、送信方向の切り替わる半周期毎に送信されるヘッダ情報などの制御情報を検出する。そして、分離部75は、制御情報を検出した周期、即ち、通信方向の切り替わる半周期を検出する。これにより、分離部75は、入力された通信データの通信方向を検出し、通信方向に応じて通信データを分離できる。分離部75は、通信方向ごとに分離した通信データをFCS計算部76へ出力する。
 また、分離部75は、検出した通信方向の情報をトリガ条件認識部82へ出力する(図2中の破線参照)。これにより、トリガ条件認識部82は、上記した通信速度自動認識部73や設定部74からの通知と同様に、分析対象の通信データにおける通信方向の切り替えを検出できる。そして、トリガ条件認識部82は、通信方向の切り替えをトリガとした処理を実行できる。例えば、トリガ条件認識部82は、サーボアンプ101からABSエンコーダ102へ送信される通信データのみを保存するようにデータ処理部83へ指令できる。
 FCS計算部76は、分離部75から入力した通信方向ごとの通信データに対し、誤り検出や誤り訂正を実行する。上記したように、FPGA15の受付部33(図1参照)は、分析を行うための設定情報を受け付ける。受付部33は、例えば、分析対象のシリアル通信の通信方向、通信方向ごとの通信データに付与される誤り検出符号の種類、及び誤り検出符号により誤りを検出した検出回数を判断する閾値を受け付ける。受付部33は、例えば、分析を開始する前に、PC51から設定情報を受信する。
 FCS計算部76は、受付部33で受け付けた通信方向に一致する通信データにおいて、誤り検出符号による誤り検出を、閾値の回数だけ検出したことに応じて異常を検出する。従って、FCS計算部76は、受付部33で受け付けた条件に従って、各通信方向の誤りを検出し、条件に一致した回数(閾値)だけ誤りを検出すると異常を検出する。例えば、エンコーダ情報のシリアル通信では、位置情報を要求するコマンドの送信時には誤り符号を付加せず、位置情報の送信時(応答時)のみ誤り符号を付加する場合がある。従って、通信データに誤り検出符号を付与する処理を、双方向の通信で実行せず、一方向の通信のみで実行する場合がある。このような場合に、受付部33は、例えば、対象とする通信方向、その通信方向の通信データに対して付与される誤り検出符号の種類(CRC符号、パリティ符号など)、誤りの検出回数を判断する閾値を受け付ける。そして、FCS計算部76は、受付部33で受け付けた閾値の回数だけ誤りを検出すると異常として検出する。
 これにより、例えば、FCS計算部76は、異常を検出すると、その旨をトリガ条件認識部82へ通知する。トリガ条件認識部82は、上記した通信速度自動認識部73等からの通知と同様に、異常の通知をトリガとした処理(保存や表示など)を実行できる。
 また、FCS計算部76は、通信方向ごとの通信データをデータ処理部83へ出力する。これにより、データ処理部83は、トリガ条件認識部82からの指示等に応じて通信データを、通信方向ごとに保存できる。なお、FCS計算部76は、誤りの検出だけでなく、誤りの訂正を実行し、訂正後の通信データをデータ処理部83へ出力しても良い。また、データ処理部83は、通信方向ごとに分離されていない通信データ、即ち、取得したそのままのデータを保存する構成でも良い。
 ここで、上記したように、検出部31は、低速通信処理部61と高速通信処理部62を備え、2つの処理部による並列処理を実行可能となっている。検出部31は、例えば、2つの処理部の分析結果が正しいのかを判断することで、通信データの通信速度を判断することができる。例えば、低速通信処理部61の通信速度自動認識部73と、高速通信処理部62の通信速度自動認識部73とが、予め設定された設定情報に基づいて通信データをサンプリングする場合について考える。低速通信の場合、低速通信処理部61の通信速度自動認識部73が正常に通信データをサンプリングできる一方、高速通信処理部62の通信速度自動認識部73は通信データを正しくサンプリングできなくなる。このため、検出部31は、2つの通信速度自動認識部73のサンプリングの結果が正しいのかを判断することで、通信データの通信速度を検出できる。
 また、図2に示すように、共通部63は、スルー出力部81を有している。スルー出力部81は、例えば、入力モジュール13の各ドライバICでレベル変換等された通信データを外部インタフェース41から外部ロジックアナライザ53へ出力する。図4は、スルー出力部81を用いる場合の接続構成を示している。図4に示すように、ロジックアナライザ10は、上位コントローラ104と、サーボアンプ101との間に接続されている。上位コントローラ104は、例えば、サーボモータ103を駆動源とする作業機の制御部である。上位コントローラ104は、CAN通信によってサーボアンプ101を制御する。このような構成において、上位コントローラ104とサーボアンプ101との間のCAN通信の分析にロジックアナライザ10を用いる。
 例えば、ロジックアナライザ10の検出部31は、RS-232C規格及びRS-485規格の通信規格の通信データのみを分析可能な構成である。この場合、上記したように、検出部31は、RS-232C規格等の通信データを入力し、通信速度に応じて通信データの保存等を実行する。
 図4に示す例では、検出部31は、CAN通信規格の通信データを分析できない構成となっている。一方、外部ロジックアナライザ53は、ロジックアナライザ10のCANドライバIC26で信号レベルの変換等を実施して転送されたCAN通信規格の通信データを分析可能となっている。図2に示すスルー出力部81は、例えば、CANドライバIC26で信号レベルの変換を実行したCAN通信の通信データを外部インタフェース41から外部ロジックアナライザ53へ出力する。
 これによれば、RS-232C規格及びRS-485規格については、検出部31によって通信データを分析できる。また、RS-232C規格及びRS-485規格以外のCAN通信規格(他の通信規格の一例)の通信データに対しては、信号レベルの変換処理のみを実行し、外部インタフェース41から外部ロジックアナライザ53(外部装置の一例)へ出力できる。例えば、CANなどの通信規格は、RS-232C規格やRS-485規格とは異なり、専用のロジックアナライザが販売されている。このため、RS-232C規格及びRS-485規格などの独自の分析が必要なものを検出部31で分析する一方、ロジックアナライザ10が市販されているCAN通信規格などについては、外部インタフェース41から専用の外部ロジックアナライザ53へ出力して分析できる。これにより、分析対象の通信データの特性に応じた処理を実行できる。
 また、分析対象の接続構成は、図3や図4の構成に限らない。図5は、別例のロジックアナライザ10の接続形態を示している。図5に示す接続形態では、ロジックアナライザ10は、PC105とリニアスケール107との間に接続され、UART通信(RS-485規格の通信)の通信データを分析する。PC105は、例えば、リニアスケール107の位置情報に基づいて、リニアモータ109の制御や速度の調整を実行するメンテナンス用の端末である。ユーザは、PC105を操作することで、リニアスケール107やリニアモータ109に対する調整作業を実行できる。このようなリニアスケール107やリニアモータ109の調整作業において、ロジックアナライザ10による分析を実行しても良い。また、リニアモータ109は、例えば、作業機のスライド移動する機構の駆動源として用いることができる。このため、作業機の設計段階において、リニアスケール107やリニアモータ109の調整作業を実施する際に、ロジックアナライザ10を用いることができる。
 図5に示すロジックアナライザ10では、例えば、RS-485規格に準拠した通信データを分析し、データの保存、データの出力を実行する。また、図5に示すように、PC105とリニアスケール107とは、多重通信装置110,111を介して接続されている。多重通信装置110,111は、例えば、光ファイバーケーブルを介して接続され、時分割多重通信を実行する。多重通信装置110,111は、例えば、リニアスケール107の通信データを他のデータと多重化して送受信する。このような構成において、ロジックアナライザ10は、例えば、多重通信装置111で多重化される前のリニアスケール107の通信データを分析しても良い。あるいは、ロジックアナライザ10は、PC105から多重通信装置111に受信し、多重通信装置111によって多重化を分離した通信データを分析しても良い。
 また、図6に示すように、ロジックアナライザ10を、PC105と多重通信装置110との間に接続しても良い。図6に示す接続形態では、ロジックアナライザ10は、例えば、PC105とリニアスケール107との間に接続され、UART通信(RS-232C規格の通信)の通信データを分析する。
 なお、図3~図6に示す接続形態や分析対象の構成は、一例である。例えば、ロジックアナライザ10は、複数の通信データを同時に分析しても良い。例えば、ロジックアナライザ10は、図3のHDLC通信の分析と、図4のCAN通信の通信データの転送とを同時に実行しても良い。また、図5及び図6に示すPC105は、作業機等を制御するコントローラでも良い。即ち、作業機等を制御するコントローラと、コントローラによって制御されるリニアスケール107との間にロジックアナライザ10を接続しても良い。また、分析対象の通信データは、上記したものに限らない。例えば、ロジックアナライザ10は、産業用ネットワークの通信データを分析しても良い。ここでいう「産業用ネットワーク」とは、例えば、CC-Link(登録商標)、EtherCAT(登録商標)、MECHATROLINK(登録商標)-III、Profinet(登録商標)等の通信規格を用いて、リレーやスイッチ等を制御する制御データを伝送するネットワークである。また、入力モジュール13は、信号レベルの変換以外に、パラレル通信とシリアル通信との変換を行うインタフェースを備えても良い。
 因みに、RS-485通信、RS-232C通信、CAN通信、LVDS技術を用いた通信、TTLを用いた通信は、本開示のシリアル通信の一例である。CANドライバIC26は、ドライバ回路の一例である。検出部31は、処理回路の一例である。外部ロジックアナライザ53は、外部装置の一例である。参照情報91は、第1参照情報、及び第2参照情報の一例である。
 以上、上記した本実施例によれば以下の効果を奏する。
 本実施例の一態様では、検出部31は、RS-485規格等のシリアル通信で用いる通信速度を切り換えるための速度切替コマンドを設定部74によって通信データから検出ことに基づいて、シリアル通信の通信速度の変更を検出する。また、検出部31の通信速度自動認識部73は、シリアル通信のパルス信号に含まれる1パルスのパルス幅の時間に基づいて、シリアル通信の通信速度の変更を検出する。なお、検出部31は、速度切替コマンドによる通信速度の変更の検出、パルス幅による通信速度の変更の検出のうち、どちらか一方のみを実行する構成でも良い。
 これによれば、通信途中で通信速度が変更されるシリアル通信において、通信速度の変更を検出できる。そして、検出部31は、例えば、通信速度の変更の検出に応じて分析の処理内容を変更できる。具体的には、検出部31は、例えば、通信速度の変更をトリガとして分析結果の保存を開始できる。また、検出部31は、例えば、シリアル通信の通信データをサンプリングするサンプル周期を、通信速度に応じて変更しても良い。これにより、適切にサンプリングを行うことができる。そして、検出部31は、分析対象の通信データの特性に応じた処理を実行できる。
 ここで、一般的なロジックアナライザでは、分析前に通信速度を設定するのみで、分析を開始した後ではサンプリング周期等を変更しない。このため、この種のロジックアナライザでは、分析を開始した後、即ち、通信の途中で通信速度が変更された場合に、適切にサンプリングできない虞がある。これに対し、本実施形態の検出部31は、例えば、通信速度に応じて低速通信処理部61と高速通信処理部62との処理結果を使い分けることで、通信速度の変更に応じた適切な処理を実行できる。
 また、本実施例の一態様では、検出部31は、RS-232C規格及びRS-485規格の通信データを分析する。なお、検出部31は、RS-232C規格及びRS-485規格のうち少なくとも一方の通信規格の通信データを分析する構成でも良い。また、CANドライバIC26は、RS-232C規格及びRS-485規格以外の通信規格である他の通信規格(CANデータ通信規格)の通信データを入力し、CANデータ通信規格の通信データの信号レベルの変換を実行する。そして、検出部31のスルー出力部81は、CANドライバIC26で信号レベルの変換を実行したCANデータ通信規格の通信データを外部インタフェース41から出力する(図4参照)。
 これによれば、RS-232C規格及びRS-485規格については、検出部31によって通信データを分析できる。また、RS-232C規格及びRS-485規格以外の他の通信規格の通信データに対しては、信号レベルの変換処理のみを実行し、外部インタフェース41から外部装置(外部ロジックアナライザ53など)へ出力できる。例えば、CANデータ通信規格は、RS-232C規格やRS-485規格とは異なり、汎用のロジックアナライザが市販されている。このため、RS-232C規格及びRS-485規格などの独自の分析が必要な通信データはロジックアナライザ10で分析する一方、汎用のロジックアナライザが市販されている他の通信規格については外部インタフェース41から外部ロジックアナライザ53等へ通信データを出力して分析させる。これにより、分析対象の通信データの特性に応じた処理を実行できる。なお、本開示の他の通信規格は、CANデータ通信規格に限らない。
 尚、本開示は上記の実施例に限定されるものではなく、本願の趣旨を逸脱しない範囲内での種々の改良、変更が可能であることは言うまでもない。
 例えば、検出部31は、通信速度の情報を出力しなくとも良い。
 また、検出部31は、通信速度の変更を検出したことをトリガとして処理を実行しなくとも良い。
 また、検出部31は、参照情報91に基づいた処理を実行しなくとも良い。この場合、参照情報91を不揮発性メモリ19に保存しなくとも良い。
 また、検出部31は、参照情報91を外部のサーバ装置等から取得しても良い。
 また、受付部33は、シリアル通信の通信方向、通信方向ごとのシリアル通信の通信データに付与される誤り検出符号の種類、閾値を受け付けなくとも良い。
 10 ロジックアナライザ、13 入力モジュール、31 検出部(処理回路)、33 受付部、41 外部インタフェース、91 参照情報(第1参照情報、第2参照情報)。

Claims (8)

  1.  通信の途中で通信速度が変更されるシリアル通信の通信データを入力する入力モジュールと、
     前記シリアル通信で用いる通信速度を切り換えるための速度切替コマンドを前記シリアル通信の通信データから検出すること、及び前記シリアル通信のパルス信号に含まれる1パルスのパルス幅の時間、のうち少なくとも一方に基づいて、前記シリアル通信の通信速度の変更を検出する検出部と、
     を備えるロジックアナライザ。
  2.  前記検出部は、
     前記入力モジュールを介して入力した前記シリアル通信の前記通信データに対する分析を行う、請求項1に記載のロジックアナライザ。
  3.  複数の信号の通信が可能な外部インタフェースを備え、
     前記検出部は、
     前記複数の信号のうち、1の信号を用いて分析結果の前記シリアル通信の通信データを出力し、他の信号を用いて検出結果の前記シリアル通信の通信速度の情報を出力する、請求項2に記載のロジックアナライザ。
  4.  前記検出部は、
     前記シリアル通信の通信速度の変更を検出したことをトリガとして処理を実行する、請求項1乃至請求項3の何れか1項に記載のロジックアナライザ。
  5.  第1時間と、前記第1時間の経過後に検出すべきデータである想定データとが関連付けられた第1参照情報を有し、
     前記検出部は、
     前記速度切替コマンドを前記シリアル通信の通信データから検出し、
     前記第1参照情報に基づいて、前記速度切替コマンドを検出してから前記第1時間だけ経過した後に、前記シリアル通信の通信データから前記想定データを検出できないことに応じて異常を検出する、請求項1乃至請求項4の何れか1項に記載のロジックアナライザ。
  6.  前記シリアル通信の通信方向、前記通信方向ごとの前記シリアル通信の通信データに付与される誤り検出符号の種類、及び前記誤り検出符号により誤りを検出した検出回数を判断する閾値を受け付け可能な受付部を備え、
     前記検出部は、
     前記受付部で受け付けた前記通信方向に一致する前記シリアル通信の通信データにおいて、前記誤り検出符号による誤り検出を、前記閾値の回数だけ検出したことに応じて異常を検出する、請求項1乃至請求項5の何れか1項に記載のロジックアナライザ。
  7.  前記シリアル通信に用いられる通信コマンドと、前記通信コマンドのタイムアウト時間とが関連付けられた第2参照情報を有し、
     前記検出部は、
     前記通信コマンドを前記シリアル通信の通信データから検出し、
     前記第2参照情報に基づいて、検出した前記通信コマンドと関連付けられた前記タイムアウト時間を設定し、
     前記通信コマンドを検出してから前記タイムアウト時間だけ経過するまでに、検出した前記通信コマンドに対する応答を検出できないことに応じて異常を検出する、請求項1乃至請求項6の何れか1項に記載のロジックアナライザ。
  8.  RS-232C規格及びRS-485規格以外の通信規格である他の通信規格の通信データを入力し、前記他の通信規格の前記通信データの信号レベルの変換を実行するドライバ回路と、
     外部インタフェースと、
     前記RS-232C規格及び前記RS-485規格のうち少なくとも一方の通信規格の通信データを処理し、前記ドライバ回路で信号レベルの変換を実行した前記他の通信規格の前記通信データを前記外部インタフェースから出力する処理回路と、
     を備えるロジックアナライザ。
PCT/JP2018/024296 2018-06-27 2018-06-27 ロジックアナライザ WO2020003393A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020526765A JP7082197B2 (ja) 2018-06-27 2018-06-27 ロジックアナライザ
PCT/JP2018/024296 WO2020003393A1 (ja) 2018-06-27 2018-06-27 ロジックアナライザ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/024296 WO2020003393A1 (ja) 2018-06-27 2018-06-27 ロジックアナライザ

Publications (1)

Publication Number Publication Date
WO2020003393A1 true WO2020003393A1 (ja) 2020-01-02

Family

ID=68986674

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/024296 WO2020003393A1 (ja) 2018-06-27 2018-06-27 ロジックアナライザ

Country Status (2)

Country Link
JP (1) JP7082197B2 (ja)
WO (1) WO2020003393A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240204762A1 (en) * 2022-12-19 2024-06-20 Applied Materials, Inc. HDLC Data Reception Using Signal Pulse Widths

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05227258A (ja) * 1992-02-07 1993-09-03 Kokusai Electric Co Ltd プロトコルテスト装置及びその制御方式
JPH0683762A (ja) * 1992-08-31 1994-03-25 Fujitsu Ltd バスシステム及び通信用ボード
JPH07264264A (ja) * 1990-10-31 1995-10-13 Ando Electric Co Ltd 通信プロトコル解析装置および解析方法
JP2001333139A (ja) * 2000-05-23 2001-11-30 Nec Corp Piafsプロトコルモニタ装置およびpiafsプロトコルモニタ方法
JP2016218781A (ja) * 2015-05-21 2016-12-22 日本信号株式会社 データ処理装置及びシステム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4425643A (en) * 1981-06-08 1984-01-10 Tektronix, Inc. Multi-speed logic analyzer
JP3428195B2 (ja) * 1994-12-27 2003-07-22 安藤電気株式会社 プロトコルアナライザによる受信データの記録方法
JP2007259094A (ja) * 2006-03-23 2007-10-04 Fuji Electric Holdings Co Ltd シリアル通信装置
JP2008141253A (ja) * 2006-11-29 2008-06-19 Sharp Corp 通信機器、通信方法、通信回路、通信システム、プログラム、およびプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2014216806A (ja) * 2013-04-25 2014-11-17 株式会社日立製作所 半導体装置および情報処理システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07264264A (ja) * 1990-10-31 1995-10-13 Ando Electric Co Ltd 通信プロトコル解析装置および解析方法
JPH05227258A (ja) * 1992-02-07 1993-09-03 Kokusai Electric Co Ltd プロトコルテスト装置及びその制御方式
JPH0683762A (ja) * 1992-08-31 1994-03-25 Fujitsu Ltd バスシステム及び通信用ボード
JP2001333139A (ja) * 2000-05-23 2001-11-30 Nec Corp Piafsプロトコルモニタ装置およびpiafsプロトコルモニタ方法
JP2016218781A (ja) * 2015-05-21 2016-12-22 日本信号株式会社 データ処理装置及びシステム

Also Published As

Publication number Publication date
JP7082197B2 (ja) 2022-06-07
JPWO2020003393A1 (ja) 2021-02-25

Similar Documents

Publication Publication Date Title
US8457003B2 (en) Controller that instructs data to be held when a network abnormality is detected
JP3841762B2 (ja) サーボモータ制御システム
JP6140459B2 (ja) センサーデータ伝送装置
EP1789858B1 (en) Safety control device, safety control system, and method for detecting communication error
JP5876240B2 (ja) インターフェース信号を操作する装置及び制御装置
CN103941625B (zh) Can总线数据传输监控系统
WO2020003393A1 (ja) ロジックアナライザ
CN101206480B (zh) 外部信号输入输出单元的诊断方法及系统
CN110995533A (zh) 一种以太网打流测试系统
CN110914769A (zh) 过程控制
WO2020003439A1 (ja) ロジックアナライザ
CN106610911B (zh) 主控电子装置及其通信方法
KR101084060B1 (ko) Bms 제어기 간의 극성 자동판단에 의한 데이터 전송이 가능한 무극성 rs-485통신장치
US20080021575A1 (en) Safety control device, safety control system, and method for detecting communication error
JP2016054367A (ja) マスター・スレーブネットワーク装置
CN203722640U (zh) 一种电环回光模块
CN211296735U (zh) 控制器内部延时测试装置
JP2019511776A (ja) ロボット用データ通信バス
JP7021649B2 (ja) カメラ制御装置およびカメラシステム
KR101439149B1 (ko) 외부 전자 기기 제어 장치
CN103051736B (zh) 一种控制信息的处理方法和i2c总线设备
CN112166582A (zh) 发送设备、发送方法、接收设备和接收方法
KR101492452B1 (ko) 외부 전자 기기 제어 장치
CN112765065B (zh) 主从系统及其数据传输方法
CN212364442U (zh) 一种WiFi模组测试系统

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020526765

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

Country of ref document: EP

Kind code of ref document: A1