WO2016181548A1 - Communication simulation device and communication simulation program - Google Patents

Communication simulation device and communication simulation program Download PDF

Info

Publication number
WO2016181548A1
WO2016181548A1 PCT/JP2015/063886 JP2015063886W WO2016181548A1 WO 2016181548 A1 WO2016181548 A1 WO 2016181548A1 JP 2015063886 W JP2015063886 W JP 2015063886W WO 2016181548 A1 WO2016181548 A1 WO 2016181548A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
information processing
simulation
processing apparatus
procedure
Prior art date
Application number
PCT/JP2015/063886
Other languages
French (fr)
Japanese (ja)
Inventor
智洋 大貫
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2015/063886 priority Critical patent/WO2016181548A1/en
Priority to TW104120462A priority patent/TW201640241A/en
Publication of WO2016181548A1 publication Critical patent/WO2016181548A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Definitions

  • the present invention relates to a technique for simulating communication of one information processing apparatus and communicating with the other information processing apparatus.
  • a manufacturing apparatus for manufacturing is installed in the factory.
  • the main components of the manufacturing apparatus are a machine that performs processing and assembly, a sensor that detects the state of the manufacturing apparatus and the surrounding environment, and a programmable logic controller (PLC) that controls the machine and the sensor.
  • PLC programmable logic controller
  • a method of controlling machines and sensors is designed to produce an object, a control program based on the design is written into the PLC, and the PLC operates.
  • Information held by the manufacturing apparatus is reflected in an information system such as supply chain management or corporate resource management.
  • a manufacturing execution system MES
  • the MES receives an information collection instruction from the information system, acquires information from the manufacturing apparatus, and stores the acquired information so that it can be used from the information system. For this reason, communication for reading and writing data is performed between the manufacturing apparatus and the MES.
  • Patent Document 1 includes the same number of virtual devices as the actual devices constituting the production system, connects the actual devices and the virtual devices according to the connection relationship set by the setting unit, and synchronizes the actual devices and the virtual devices.
  • a technique for executing simulation is disclosed. With this technology, even when there is no real machine, it is possible to perform verification related to communication by replacing the real machine with a virtual device. However, the virtual device does not necessarily perform the same operation as the actual device. Therefore, even if communication can be performed correctly by verification using a virtual device, a problem may occur in communication between real machines. The reason why the virtual device does not perform the same operation as that of the actual machine is a case where a discrepancy in communication specifications occurs between the developer of the manufacturing apparatus and the developer of the MES.
  • the present invention there is a flaw in interpretation of communication specifications between the developer of the first information processing apparatus and the developer of the second information processing apparatus, resulting in a failure in communication between the apparatuses.
  • the purpose is to enable deterrence.
  • the communication simulation apparatus of the present invention is Simulating communication performed by the first information processing apparatus with the second information processing apparatus using a communication model indicating the contents of communication performed between the first information processing apparatus and the second information processing apparatus.
  • the first information processing apparatus communicates with the second information processing apparatus by executing the first simulation program.
  • a communication simulation unit that communicates with the first information processing apparatus by executing a second simulation program.
  • the first simulation program and the second simulation program are generated using the communication model. That is, it is not necessary for the developer of the first information processing apparatus and the developer of the second information processing apparatus to generate simulation programs separately. Therefore, there is no possibility that an erroneous simulation program is generated due to an error in interpretation of communication specifications between the developer of the first information processing apparatus and the developer of the second information processing apparatus. Therefore, it is possible to prevent a communication specification interpretation error between the developer of the first information processing apparatus and the developer of the second information processing apparatus, resulting in a failure in communication between the apparatuses. be able to.
  • FIG. 1 is a schematic diagram of a verification system 100 according to Embodiment 1.
  • FIG. 2 is a functional configuration diagram of a communication simulation device 200 according to Embodiment 1.
  • FIG. 3 is a configuration diagram of a communication model 292 according to the first embodiment.
  • 4 is a flowchart of a communication simulation method (first half) in the first embodiment.
  • FIG. 3 is a configuration diagram of a procedure input screen 310 (handshake communication) in the first embodiment.
  • FIG. 3 is a configuration diagram of a procedure input screen 310 (communication sequence) in the first embodiment.
  • 5 is a flowchart of communication model generation processing (S130) in the first embodiment.
  • 5 is a flowchart of communication model generation processing (S130) in the first embodiment.
  • FIG. 4 is a flowchart of a communication simulation method (second half) in the first embodiment.
  • FIG. 3 is a relationship diagram between the communication simulation device 200 and the information processing device 110 in the first embodiment.
  • FIG. 10 is a flowchart of a communication simulation method (first half) in the second embodiment.
  • the block diagram of the procedure template 291T (handshake communication) in Embodiment 2.
  • FIG. The block diagram of the procedure template 291T (communication sequence) in Embodiment 2.
  • FIG. FIG. 6 is a configuration diagram of a verification system 100 according to a third embodiment.
  • FIG. 10 is a functional configuration diagram of a communication simulation device 200 according to a third embodiment.
  • 10 is a flowchart of a communication simulation method (first half) in the third embodiment.
  • Embodiment 1 A verification system 100 in which the communication function of one information processing apparatus is simulated and the communication function of the other information processing apparatus is verified will be described with reference to FIGS.
  • the verification system 100 includes a communication simulation device 200 to which the first information processing device 110A or the second information processing device 110B is connected.
  • the first information processing apparatus 110A or the second information processing apparatus 110B is connected to the communication simulation apparatus 200 directly or via a network in a wired or wireless manner.
  • the first information processing apparatus 110A and the second information processing apparatus 110B are apparatuses that communicate with each other according to a communication procedure defined as a communication specification.
  • An example of the first information processing apparatus 110A is a manufacturing apparatus that performs manufacturing.
  • the manufacturing apparatus includes a machine that performs processing and assembly, a sensor that detects a state of the manufacturing apparatus and the surrounding environment, a programmable logic controller (PCL) that controls the machine and the sensor, and the like.
  • An example of the second information processing apparatus 110B is a manufacturing execution system (MES).
  • MES manufacturing execution system
  • communication performed between the first information processing apparatus 110A and the second information processing apparatus 110B is referred to as fixed communication.
  • the communication simulation device 200 performs communication between the first information processing device 110 ⁇ / b> A and the second information processing device 110 ⁇ / b> B based on information on the standard communication input by the user 101.
  • a second simulation program to be simulated is generated.
  • the communication simulation apparatus 200 communicates with the first information processing apparatus 110A by executing the second simulation program.
  • the communication simulation apparatus 200 communicates with the second information processing apparatus 110B by executing the first simulation program.
  • the first information processing apparatus 110A and the second information processing apparatus 110B are collectively referred to as the information processing apparatus 110.
  • the communication simulation apparatus 200 includes an area data generation unit 211, a procedure data generation unit 212, a communication model generation unit 220, and a simulation program generation unit 230.
  • the area data generation unit 211 includes first area data 291A indicating information of a first storage area that is a storage area provided in the first information processing apparatus 110A, and a storage area provided in the second information processing apparatus 110B.
  • the second area data 291B indicating the information of the second storage area is generated as follows.
  • the area data generation unit 211 displays an area input interface that is a user interface for inputting information on the first storage area and the second storage area. Then, the area data generation unit 211 generates the first area data 291A using the information on the first storage area input to the area input interface, and the information on the second storage area input to the area input interface. Is used to generate the second area data 291B.
  • the procedure data generation unit 212 generates procedure data 291C indicating the contents of the routine communication procedure as follows.
  • the procedure data generation unit 212 displays a procedure generation interface which is a user interface for generating a chart representing the contents of the routine communication procedure. Then, the procedure data generation unit 212 generates chart data generated using the procedure generation interface as procedure data 291C.
  • a chart means either a figure and a table, or a figure and a table.
  • the procedure data 291 ⁇ / b> C includes a processing subject, a processing condition, and a processing content of a communication process included in the routine communication procedure as the contents of the routine communication procedure.
  • the processing entity indicates an entity that executes communication processing.
  • the processing condition indicates a condition for executing the communication process.
  • the processing content indicates the content of communication processing excluding the processing subject and processing conditions.
  • the communication model generation unit 220 uses the procedure data 291C to generate a communication model 292 indicating the contents of the standard communication as follows.
  • the communication model generation unit 220 extracts the processing subject, processing condition, and processing content from the procedure data 291C, and generates data including the processing subject, processing condition, and processing content as the communication model 292.
  • the simulation program generating unit 230 generates the first simulation program 293A and the second simulation program 293B using the communication model 292 as follows.
  • the first simulation program 293A is a program for simulating communication performed by the first information processing apparatus 110A with the second information processing apparatus 110B.
  • the second simulation program 293B is a program for simulating communication performed by the second information processing apparatus 110B with the first information processing apparatus 110A.
  • the simulation program generation unit 230 determines whether the processing subject is the first information processing apparatus 110A or the second information processing apparatus 110B.
  • the simulation program generating unit 230 includes the processing code in the first simulation program 293A as a program code that is executed when the processing conditions are satisfied.
  • the process code is a program code for executing a communication process having the content indicated by the process content.
  • the program code is source code or object code.
  • the simulation program generating unit 230 includes the processing code in the second simulation program 293B as a program code that is executed when the processing condition is satisfied.
  • the communication simulation device 200 includes a device detection unit 241, a simulation region generation unit 242, a conversion program generation unit 250, a communication simulation unit 260, and a communication content output unit 270.
  • the device detection unit 241 detects any connection between the first information processing device 110A and the second information processing device 110B.
  • An example of the device detection unit 241 is a communication driver that detects a device connected to a communication port.
  • the connection of the first information processing apparatus 110A is detected.
  • the second information processing apparatus 110B is connected to the communication simulation apparatus 200, the connection of the second information processing apparatus 110B is detected.
  • the simulated region generation unit 242 provides the first simulated region 294A or the second simulated region 294B in the storage unit 290.
  • the first simulated area 294A is a storage area corresponding to the first storage area provided in the first information processing apparatus 110A.
  • the second simulation area 294B is a storage area corresponding to the second storage area provided in the second information processing apparatus 110B.
  • the simulation area generation unit 242 provides the first simulation area 294A in the storage unit 290 based on the first area data 291A.
  • the simulation area generation unit 242 provides the second simulation area 294B in the storage unit 290 based on the second area data 291B.
  • the conversion program generation unit 250 generates the first conversion program 295A or the second conversion program 295B.
  • the first conversion program 295A is a program for converting the address of the first storage area provided in the first information processing apparatus 110A into the address of the first simulated area 294A.
  • the second conversion program 295B is a program for converting the address of the second storage area provided in the second information processing apparatus 110B to the address of the second simulated area 294B.
  • the conversion program generation unit 250 When the second information processing apparatus 110B is connected to the communication simulation apparatus 200, the conversion program generation unit 250 generates the first conversion program 295A.
  • the conversion program generation unit 250 When the first information processing apparatus 110A is connected to the communication simulation apparatus 200, the conversion program generation unit 250 generates a second conversion program 295B.
  • the communication simulation unit 260 executes the first simulation program 293A and the first conversion program 295A, thereby providing the second information processing device. Communicate with 110B.
  • the communication simulation unit 260 executes the second simulation program 293B and the second conversion program 295B, thereby performing the first information processing apparatus. Communicate with 110A.
  • the communication content output unit 270 When the second information processing device 110B is connected to the communication simulation device 200, the communication content output unit 270 outputs communication content data 297 indicating the content of communication performed to the second information processing device 110B. .
  • the communication content output unit 270 When the first information processing device 110A is connected to the communication simulation device 200, the communication content output unit 270 outputs communication content data 297 indicating the content of communication performed on the first information processing device 110A. .
  • the communication simulation device 200 includes a storage unit 290.
  • the storage unit 290 stores data used, generated or input / output by the communication simulation device 200.
  • the first area data 291A, the second area data 291B, the first simulation program 293A, the second simulation program 293B, the first conversion program 295A, the second conversion program 295B, and the communication content data 297 are stored in the storage unit.
  • 3 is an example of data stored in H.290.
  • the first area data 291A and the second area data 291B are collectively referred to as area data 291.
  • the first simulation program 293A and the second simulation program 293B are collectively referred to as a simulation program 293.
  • the first conversion program 295A and the second conversion program 295B are collectively referred to as a conversion program 295.
  • the first simulation area 294A and the second simulation area 294B are collectively referred to as a simulation area 294.
  • the communication model 292 includes a processing object 292O for each communication process.
  • the processing object 292O includes a number, a processing subject, processing conditions, processing contents, and a next object name.
  • the number indicates the order of communication processing.
  • the next object name identifies the processing object 292O indicating the content of the next communication process.
  • the operation of the communication simulation device 200 corresponds to a communication simulation method.
  • the communication simulation method corresponds to the processing procedure of the communication simulation program.
  • the communication simulation apparatus 200 Based on Fig. 4, the first half of the communication simulation method will be described.
  • the communication simulation apparatus 200 generates a first simulation program 293A and a second simulation program 293B.
  • S110 is a region data generation process.
  • the region data generation unit 211 displays a region information input screen used as a region input interface on the display device.
  • Information on the storage area of the information processing apparatus 110 is input by the user 101 on the area information input screen.
  • Information on the storage area of the information processing apparatus 110 includes a device identifier for identifying the target information processing apparatus 110, an address range indicating the range of the storage area, an attribute value indicating an attribute of data stored in the storage area, and a storage area. For example, a data value set in stored data.
  • the area data generation unit 211 includes data including information input on the area information input screen. Is generated as the first area data 291A.
  • the region data generation unit 211 includes data including information input on the region information input screen. Is generated as the second area data 291B.
  • S120 is a procedure data generation process.
  • the procedure data generation unit 212 displays a procedure input screen 310 used as a procedure generation interface on the display device.
  • FIG. 5 shows a procedure input screen 310 for generating a communication procedure for handshake communication.
  • the procedure input screen 310 includes a diagram generation column 311, a table generation column 312, and an element selection column 313.
  • a timing chart representing the timing of communication processing is generated by the user 101. Elements constituting the timing chart are selected from the element selection field 313.
  • a processing table indicating the contents of the communication processing is generated by the user 101. Information shown in the processing table is input using a text box or a drop-down list. In the drop-down list, an address range, an attribute value, a data value, or the like indicated by the area data 291 is shown.
  • FIG. 6 shows a procedure input screen 310 for generating a communication procedure represented by a communication sequence.
  • the procedure input screen 310 includes a diagram generation column 311, a table generation column 312, and an element selection column 313.
  • a sequence diagram representing the flow of communication processing is generated by the user 101.
  • the sequence diagram shown in FIG. 6 is described in a unified modeling language (UML). Elements constituting the sequence diagram are selected from the element selection field 313.
  • UML unified modeling language
  • Elements constituting the sequence diagram are selected from the element selection field 313.
  • a processing table indicating the contents of the communication processing is generated by the user 101.
  • Information shown in the processing table is input using a text box or a drop-down list. In the drop-down list, an address range, an attribute value, a data value, or the like indicated by the area data 291 is shown.
  • the procedure data generation unit 212 generates the diagram data generated in the diagram generation column 311 of the procedure input screen 310 and the table data generated in the table generation column 312 of the procedure input screen 310 as the procedure data 291C.
  • S130 is a communication model generation process.
  • the communication model generation unit 220 generates a communication model 292 using the procedure data 291C.
  • the communication model generation process (S130) when the procedure data 291C indicates the communication procedure of the handshake communication will be described.
  • the procedure data 291C includes data of the timing chart shown in the figure generation column 311 of FIG. 5 and data of the processing table shown in the table generation column 312 of FIG.
  • the communication model generation unit 220 extracts an event from the procedure data 291C.
  • the processing table of FIG. 5 includes three communication processes of reading (1), writing (2), and writing (3).
  • Read (1) includes two events, the start of reading and the end of reading
  • Write (2) (3) includes two events, the start of writing and the end of writing. Therefore, the communication model generation unit 220 starts reading (1), ends reading (1), starts writing (2), ends writing (2), starts writing (3), and writes. Six events with the end of (3) are extracted.
  • the communication model generation unit 220 generates a processing object 292O for each extracted event, and assigns an object name to the generated processing object 292O.
  • the number, the processing subject, the processing condition, the processing content, and the next object name included in the generated processing object 292O indicate values that are not set.
  • generation part 220 produces
  • the communication model generation unit 220 selects one unselected event in order. As shown in the timing chart of FIG. 5, the six events are: start of write (2), start of write (3), start of read (1), end of read (1), end of write (2), Occurs in the order of completion of writing (3). Therefore, the communication model generation unit 220 starts writing (2), starts writing (3), starts reading (1), ends reading (1), ends writing (2), and ends writing (3). In this order, one unselected event is selected. Then, the communication model generation unit 220 sets a number indicating the order of the selected event in the processing object 292O of the selected event.
  • the communication model generation unit 220 extracts the processing subject of the selected event from the procedure data 291C.
  • the processing table of FIG. 5 includes processing subjects for each processing. Therefore, the communication model generation unit 220 extracts the processing subject of the processing corresponding to the selected event from the processing table. Then, the communication model generation unit 220 sets the extracted processing subject to the selected processing object 292O.
  • the communication model generation unit 220 extracts the processing conditions of the selected event from the procedure data 291C.
  • the selected event occurs after the previous event ends.
  • the start of writing (3) as the second event occurs after the bit value of the storage area whose address is M1000 has changed from 1 to 0 in writing (2) as the first event. . Therefore, the communication model generation unit 220 extracts a condition for determining that the previous event has ended as a processing condition. If the selected event is the first event, there is no processing condition to be extracted. Then, the communication model generation unit 220 sets the extracted processing condition in the processing object 292O of the selected event. However, when the selected event is the first event, it is not necessary to set processing conditions.
  • the communication model generation unit 220 extracts the processing content of the selected event from the procedure data 291C.
  • the extracted processing content is the content excluding the processing subject and processing conditions.
  • the processing table of FIG. 5 includes a type, a target address, a write value, and a storage address in addition to the processing subject. Therefore, the communication model generation unit 220 extracts the communication processing type, target address, write value, and storage address corresponding to the selected event as processing contents from the processing table. Then, the communication model generation unit 220 sets the extracted processing content in the processing object 292O of the selected event.
  • the communication model generation unit 220 determines whether there is a next event. If there is a next event, the process proceeds to S138h. If there is no next event, the communication model generation process (S130) ends.
  • the communication model generation unit 220 sets the object name of the next event processing object 292O as the next object name in the selected event processing object 292O. After S138h, the process returns to S133h.
  • the procedure data 291C includes the data of the sequence diagram shown in the diagram generation column 311 of FIG. 6 and the data of the processing table shown in the table generation column 312 of FIG.
  • the communication model generation unit 220 extracts a message from the procedure data 291C.
  • the sequence diagram of FIG. 6 includes four messages represented by arrows numbered from (1) to (4). Therefore, the communication model generation unit 220 extracts four messages of read (1), write (2), write (3), and write (4).
  • the communication model generation unit 220 generates a processing object 292O for each extracted message, and attaches the object name to the generated processing object 292O.
  • the number, the processing subject, the processing condition, the processing content, and the next object name included in the generated processing object 292O indicate values that are not set.
  • generation part 220 produces
  • the communication model generation unit 220 selects one unselected message in order. As shown in the sequence diagram of FIG. 6, four messages are generated in the order of read (1), write (2), write (3), and write (4). Therefore, the communication model generation unit 220 selects one unselected message in the order of reading (1), writing (2), writing (3), and writing (4). Then, the communication model generation unit 220 sets a number indicating the order of the selected message in the processing object 292O of the selected message.
  • the communication model generation unit 220 extracts the processing subject of the selected message from the procedure data 291C.
  • the sequence diagram of FIG. 6 includes a processing entity for each message.
  • the subject on the starting point side of the arrow representing the message is the processing subject.
  • the processing subject of the reading (1) is the first information processing apparatus 110A represented by “first”.
  • the communication model generation unit 220 sets the extracted processing subject to the selected processing object 292O.
  • the communication model generation unit 220 extracts the processing conditions of the selected message from the procedure data 291C.
  • the selected message occurs after communication of the previous message is completed. Therefore, the communication model generation unit 220 extracts a condition for determining that the communication of the previous message has ended as a processing condition. If the selected message is the first event, there is no processing condition to be extracted. Then, the communication model generation unit 220 sets the extracted processing condition in the processing object 292O of the selected message. However, when the selected message is the first message, it is not necessary to set processing conditions.
  • the communication model generation unit 220 determines whether the selected message is the first message in the combined fragment. When the selected message is the first message in the combined fragment, the communication model generation unit 220 extracts the conditional expression included in the combined fragment as a processing condition.
  • the sequence of FIG. 6 includes a binding fragment marked with “opt”.
  • the first message in this combined fragment is a write (2). Therefore, when the selected message is write (2), the communication model generation unit 220 extracts a conditional expression included in [Conditional Expression] written in the combined fragment as a processing condition. Then, the communication model generation unit 220 adds the extracted processing condition to the processing object 292O of the selected message.
  • the communication model generation unit 220 extracts the processing content of the selected message from the procedure data 291C.
  • the extracted processing content is the content excluding the processing subject and processing conditions.
  • the processing table of FIG. 6 includes a type, a target address, a write value, and a storage address. Therefore, the communication model generation unit 220 extracts the type, target address, write value, and storage address corresponding to the selected message as processing contents from the processing table. Then, the communication model generation unit 220 sets the extracted processing content in the processing object 292O of the selected message.
  • the communication model generation unit 220 determines whether there is a next message. If there is a next message, the process proceeds to S138s. If there is no next message, the communication model generation process (S130) ends.
  • the communication model generation unit 220 sets the object name of the processing object 292O of the next message as the next object name in the processing object 292O of the selected message. After S138s, the process returns to S133s.
  • S140 is a simulation program generation process.
  • the simulation program generation unit 230 generates the first simulation program 293A and the second simulation program 293B based on the procedure data 291C.
  • the simulation program generation process (S140) will be described.
  • the simulation program generation unit 230 selects one unselected processing object 292O from the communication model 292 in order.
  • the simulation program generation unit 230 determines whether the processing subject indicated by the selected processing object 292O is the first information processing apparatus 110A or the second information processing apparatus 110B. If the processing subject is the first information processing apparatus 110A, the process proceeds to S143. If the processing subject is the second information processing apparatus 110B, the process proceeds to S145.
  • the simulation program generation unit 230 generates a condition code that is a program code for determining the processing condition indicated in the selected processing object 292O.
  • a condition code is an if statement and a conditional expression. Then, the simulation program generation unit 230 adds the generated condition code to the template of the first simulation program 293A.
  • the simulation program generating unit 230 generates a processing code that is a program code for executing the content indicated by the processing content indicated in the selected processing object 292O. Then, the simulation program generating unit 230 adds the generated processing code to the template of the first simulation program 293A as a program code that is executed when the processing condition indicated by the condition code is satisfied.
  • the simulation program generation unit 230 generates a condition code that is a program code for determining the processing condition indicated in the selected processing object 292O.
  • a condition code is an if statement and a conditional expression. Then, the simulation program generation unit 230 adds the generated condition code to the template of the second simulation program 293B.
  • the simulation program generating unit 230 generates a processing code that is a program code for executing the content indicated by the processing content indicated in the selected processing object 292O. Then, the simulation program generation unit 230 adds the generated processing code to the template of the second simulation program 293B as a program code that is executed when the processing condition indicated by the condition code is satisfied.
  • the simulation program generation unit 230 determines whether there is a next processing object 292O. If there is a next process object 292O, the process returns to S141. If there is no next process object 292O, the process proceeds to S148.
  • the simulation program generation unit 230 generates the first simulation program 293A by compiling the template of the first simulation program 293A. In addition, the simulation program generation unit 230 generates the second simulation program 293B by compiling the template of the second simulation program 293B.
  • the second half of the communication simulation method will be described based on FIG.
  • the communication simulation device 200 communicates with a device connected to the communication simulation device 200 by executing the simulation program 293.
  • S210 is a device detection process.
  • the device detection unit 241 detects a connection device connected to the communication simulation device 200.
  • the device detection unit 241 detects the connection of the connection device by monitoring the communication port.
  • the device detection unit 241 determines whether the connection device is the first information processing device 110A or the second information processing device 110B.
  • the device detection unit 241 receives a device identifier for identifying a connection device from the connection device, and determines the connection device based on the received device identifier.
  • S220 is a simulation area generation process.
  • the simulation area generation unit 242 provides a simulation area 294 in the storage unit 290 according to the connection device. That is, when the connection device is the second information processing device 110B, the device detection unit 241 stores the first simulated region 294A having the same address range as the address range indicated by the first region data 291A. 290. Then, the device detection unit 241 sets the attribute value and the data value for each address range indicated by the first area data 291A in the first simulated area 294A.
  • the connecting device is the first information processing device 110A
  • the device detection unit 241 stores the second simulated region 294B having the same address range as the address range indicated by the second region data 291B. 290. Then, the device detection unit 241 sets the attribute value and the data value for each address range indicated by the second area data 291B in the second simulated area 294B.
  • S230 is a conversion program generation process.
  • the conversion program generation unit 250 generates a conversion program 295 corresponding to the connection device, and couples the generated conversion program 295 to the simulation program 293.
  • a simulation program 293 in an execution format is generated. That is, when the connecting device is the second information processing device 110B, the conversion program generating unit 250 converts the address within the address range indicated by the first region data 291A into the address of the first simulated region 294A. The conversion program 295A is generated. Then, the conversion program generation unit 250 links the first conversion program 295A and the first simulation program 293A.
  • the conversion program generating unit 250 converts the address within the address range indicated by the second region data 291B into the address of the second simulated region 294B.
  • the conversion program 295B is generated.
  • the conversion program generation unit 250 links the second conversion program 295B and the second simulation program 293B.
  • S240 is a communication simulation process.
  • the communication simulation unit 260 communicates with the connection device by executing the execution format simulation program 293. That is, when the connection device is the second information processing device 110B, the communication simulation unit 260 communicates with the second information processing device 110B by executing the first simulation program 293A. For example, the communication simulation unit 260 communicates with the second information processing apparatus 110B by a communication procedure as shown in the sequence diagram of FIG.
  • the communication simulation unit 260 communicates with the first information processing device 110A by executing the second simulation program 293B.
  • the communication simulation unit 260 communicates with the first information processing apparatus 110A by a communication procedure as shown in the sequence diagram of FIG.
  • S250 is a communication content output process.
  • the communication content output unit 270 generates communication content data 297 indicating the content of communication between the communication simulation unit 260 and the connection device, and outputs the generated communication content data 297.
  • the communication content output unit 270 displays the communication content indicated by the communication content data 297 on the display device.
  • the first simulation program 293A and the second simulation program 293B are generated using one communication model 292. That is, it is not necessary for the developer of the first information processing apparatus 110A and the developer of the second information processing apparatus 110B to generate the simulation program 293 separately. For this reason, there is a discrepancy in the interpretation of communication specifications between the developer of the first information processing apparatus 110A and the developer of the second information processing apparatus 110B, and an erroneous simulation program 293 is generated. There is no. Therefore, there is a problem in communication specifications between the developers of the first information processing apparatus 110A and the developers of the second information processing apparatus 110B, resulting in problems in communication between the apparatuses. Can be deterred.
  • FIG. A form in which the procedure data 291C is generated using the template of the procedure data 291C will be described with reference to FIGS. However, the description which overlaps with Embodiment 1 is abbreviate
  • the communication simulation device 200 includes a template selection unit 213 and a procedure data generation unit 212.
  • the storage unit 290 stores the procedure template group 291G.
  • the template selection unit 213 displays a template selection interface that is a user interface for selecting the procedure template 291T from the procedure template group 291G.
  • the procedure template 291T is a template that indicates a procedure for routine communication, and is a template in which processing contents of communication processing included in the routine for regular communication are set.
  • the procedure template group 291G is a plurality of procedure templates 291T.
  • the procedure data generation unit 212 displays the selected procedure template 291T, and indicates the routine communication procedure indicated by the displayed procedure template 291T and the processing contents set in the displayed procedure template 291T as the routine communication procedure contents. Data is generated as procedure data 291C.
  • S121 is a template selection process.
  • the template selection unit 213 displays a template selection screen used as a template selection interface on the display device.
  • the template selection screen includes a list column indicating a list of template names of the procedure template 291T, a preview column in which a chart indicated by the procedure template 291T is drawn, and the like.
  • the template selection unit 213 passes the procedure template 291T selected on the template selection screen to the procedure data generation unit 212.
  • FIG. 14 shows a procedure template 291T for handshake communication.
  • the procedure template 291T includes a generated timing chart and a processing table having a blank.
  • FIG. 15 shows a procedure template 291T for the communication sequence.
  • the procedure template 291T includes a generated sequence diagram and a processing table having a blank.
  • S122 is a procedure data generation process.
  • the procedure data generation unit 212 displays the procedure input screen 310 on the display device, and draws the chart indicated by the passed procedure template 291T in the diagram generation column 311 and the table generation column 312. Then, the procedure data generation unit 212 generates the diagram data generated in the diagram generation column 311 of the procedure input screen 310 and the table data generated in the table generation column 312 of the procedure input screen 310 as the procedure data 291C. To do.
  • the second half of the communication simulation method is the same as in the first embodiment.
  • Embodiment 3 A mode in which the communication model 292 is shared by a plurality of communication simulation apparatuses 200 will be described with reference to FIGS. However, the description which overlaps with Embodiment 1 and Embodiment 2 is abbreviate
  • the verification system 100 includes a plurality of communication simulation devices 200 and a communication model storage unit 120 in which a communication model group 292G is stored.
  • the communication model group 292G is a plurality of communication models 292.
  • one communication simulation device 200 is a communication simulation device 200 used by the developer of the first information processing device 110A
  • the other communication simulation device 200 is communication used by the developer of the second information processing device 110B. This is a simulation device 200.
  • the communication simulation device 200 stores the generated communication model 292 in the communication model storage unit 120 via the network 109. Further, the communication simulation device 200 acquires the communication model 292 from the communication model storage unit 120 via the network 109.
  • the communication model storage unit 120 may be provided in a device different from the communication simulation device 200, or may be provided in any one of the communication simulation devices 200.
  • the communication simulation device 200 includes a communication model generation unit 220, a communication model writing unit 281, a communication model selection unit 282, a communication model reading unit 283, and a simulation program generation unit 230.
  • the communication simulation device 200 may include a template selection unit 213 as in the second embodiment. Further, the communication simulation device 200 may include a communication model storage unit 120.
  • the communication model generation unit 220 generates a communication model 292 using the procedure data 291C.
  • the procedure data 291C may be generated without using the procedure template 291T as in the first embodiment, or may be generated using the procedure template 291T as in the second embodiment.
  • the communication model writing unit 281 writes the communication model 292 generated by the communication model generation unit 220 to the communication model storage unit 120. As a result, the communication model 292 is added to the communication model group 292G.
  • the communication model selection unit 282 displays a model selection interface that is a user interface for selecting the communication model 292 from the communication model group 292G.
  • the communication model reading unit 283 reads the selected communication model 292 from the communication model storage unit 120.
  • the simulation program generation unit 230 generates a first simulation program 293A and a second simulation program 293B using the read communication model 292.
  • the first half of the communication simulation method will be described with reference to FIG. S101 is a communication model selection process.
  • the communication model selection unit 282 displays a model selection screen used as a model selection interface on the display device.
  • the model selection screen includes a list field indicating a list of model names of the communication model 292, a confirmation field indicating the contents of the communication model 292, and the like.
  • S102 is a communication model reading process.
  • the communication model reading unit 283 reads the communication model 292 selected on the model selection screen from the communication model storage unit 120, and passes the read communication model 292 to the simulation program generation unit 230.
  • S140 is a simulation program generation process.
  • the simulation program generation unit 230 generates the first simulation program 293A and the second simulation program 293B using the transferred communication model 292.
  • the method for generating the simulation program 293 is the same as in the first embodiment.
  • the communication simulation apparatus 200 may generate the communication model 292 and write the generated communication model 292 to the communication model storage unit 120.
  • a plurality of communication simulation apparatuses 200 can share the communication model 292. Therefore, even when the developer of the first information processing device 110A and the developer of the second information processing device 110B use separate communication simulation devices 200, the developers have the same communication model. Can be used to verify the communication of the information processing apparatus 110.
  • the communication simulation device 200 is a computer including hardware such as a processor 901, an auxiliary storage device 902, a memory 903, a communication device 904, an input interface 905, and an output interface 906.
  • the processor 901 is connected to other hardware via a signal line 910.
  • the input interface 905 is connected to the input device 907 via a cable 911.
  • the output interface 906 is connected to the output device 908 via the cable 912.
  • the processor 901 is an IC that performs processing, and controls other hardware.
  • An example of the processor 901 is a CPU, DSP, or GPU.
  • IC is an abbreviation for Integrated Circuit.
  • CPU is an abbreviation for Central Processing Unit
  • DSP is an abbreviation for Digital Signal Processor
  • GPU is an abbreviation for Graphics Processing Unit.
  • the auxiliary storage device 902 stores data.
  • An example of the auxiliary storage device 902 is a ROM, a flash memory, and an HDD.
  • ROM is an abbreviation for Read Only Memory
  • HDD is an abbreviation for Hard Disk Drive.
  • the memory 903 stores data.
  • An example of the memory 903 is a RAM. RAM is an abbreviation for Random Access Memory.
  • the communication device 904 includes a receiver 9041 that receives data and a transmitter 9042 that transmits data.
  • An example of the communication device 904 is a communication chip or a NIC.
  • NIC is an abbreviation for Network Interface Card.
  • the input interface 905 is a port to which a cable 911 is connected, and an example of the port is a USB terminal.
  • USB is an abbreviation for Universal Serial Bus.
  • the output interface 906 is a port to which the cable 912 is connected, and the USB terminal and the HDMI terminal are examples of ports.
  • HDMI registered trademark
  • the input device 907 inputs data, instructions and requests.
  • An example of the input device 907 is a mouse, a keyboard, and a touch panel.
  • the output device 908 outputs data, results and responses.
  • An example of the output device 908 is a display or a printer.
  • An example of a display is an LCD. LCD is an abbreviation for Liquid Crystal Display.
  • the auxiliary storage device 902 stores an OS.
  • OS is an abbreviation for Operating System.
  • the auxiliary storage device 902 includes an area data generation unit 211, a procedure data generation unit 212, a template selection unit 213, a communication model generation unit 220, a simulation program generation unit 230, a device detection unit 241, a simulation region generation unit 242, and a conversion.
  • a program that realizes the function of “unit” such as the program generation unit 250, the communication simulation unit 260, and the communication content output unit 270 is stored.
  • At least a part of the OS is loaded into the memory 903, and the processor 901 executes a program that realizes the function of “unit” while executing the OS.
  • the communication simulation apparatus 200 may include a plurality of processors 901, and the plurality of processors 901 may execute a program that realizes the function of “unit” in cooperation with each other.
  • Data, information, signal values, variable values, and the like indicating the processing results of “unit” are stored in the memory 903, the auxiliary storage device 902, a register in the processor 901, or a cache memory in the processor 901.
  • circuitry may be implemented as “circuitry”. “Part” may be read as “circuit”, “process”, “procedure”, or “processing”. “Circuit” and “circuitry” are concepts including a processing circuit such as the processor 901, logic IC, GA, ASIC, and FPGA. GA is an abbreviation for Gate Array, ASIC is an abbreviation for Application Specific Integrated Circuit, and FPGA is an abbreviation for Field-Programmable Gate Array.
  • Each embodiment is an example of a preferred embodiment and is not intended to limit the technical scope of the present invention. Each embodiment may be implemented partially or in combination with other embodiments.
  • the processing procedure described using the flowchart and the like is an example of the processing procedure of the communication simulation device, the communication simulation method, and the communication simulation program.
  • 100 verification system 101 user, 109 network, 110 information processing device, 110A first information processing device, 110B second information processing device, 110C connection device, 120 communication model storage unit, 200 communication simulation device, 211 area data Generation unit, 212 procedure data generation unit, 213 template selection unit, 220 communication model generation unit, 230 simulation program generation unit, 241 device detection unit, 242 simulation region generation unit, 250 conversion program generation unit, 260 communication simulation unit, 270 communication Content output section, 281 communication model writing section, 282 communication model selection section, 283 communication model reading section, 290 storage section, 291 area data, 291A first area data, 291B second area data, 291C procedure data, 29 T procedure template, 291G procedure template group, 292 communication model, 292G communication model group, 292O processing object, 293 simulation program, 293A first simulation program, 293B second simulation program, 294 simulation area, 294A first simulation area 294B second simulation area, 295 conversion program, 295A first conversion program, 295B second conversion program, 297 communication content data,

Abstract

Using a communication model (292) which represents the content of a communication which is carried out between a first information processing device and a second information processing device, a simulation program generating unit (230) generates a first simulation program (293A) for simulating a communication which the first information processing device carries out with the second information processing device, and a second simulation program (293B) for simulating a communication which the second information processing device carries out with the first information processing device. If the second information processing device is connected to a communication simulation device (200), a communication simulation unit (260) carries out a communication with the second information processing device by executing the first simulation program. If the first information processing device is connected to the communication simulation device, the communication simulation unit carries out a communication with the first information processing device by executing the second simulation program.

Description

通信模擬装置および通信模擬プログラムCommunication simulation device and communication simulation program
 本発明は、一方の情報処理装置の通信を模擬して他方の情報処理装置と通信を行う技術に関するものである。 The present invention relates to a technique for simulating communication of one information processing apparatus and communicating with the other information processing apparatus.
 工場には、製造を行うための製造装置が設置される。製造装置の主な構成要素は、加工および組み立てを行う機械と、製造装置および周囲環境の状態を検知するセンサと、機械およびセンサを制御するプログラマブルロジックコントローラ(PLC)である。
 目的物を製造するために機械およびセンサを制御する方法が設計され、その設計に基づいた制御プログラムがPLCに書き込まれ、PLCが動作する。
A manufacturing apparatus for manufacturing is installed in the factory. The main components of the manufacturing apparatus are a machine that performs processing and assembly, a sensor that detects the state of the manufacturing apparatus and the surrounding environment, and a programmable logic controller (PLC) that controls the machine and the sensor.
A method of controlling machines and sensors is designed to produce an object, a control program based on the design is written into the PLC, and the PLC operates.
 稼働状況および製造実績など、製造装置が持つ情報は、サプライチェーンマネジメントまたは企業資源管理といった情報システムに反映される。その仕組みとして、製造実行システム(MES)が利用される。
 MESは、情報システムから情報収集の指示を受け付け、製造装置から情報を取得し、取得した情報を情報システムから利用できるように保管する。
 このため、製造装置とMESとの間では、データの読み書きを行うための通信が行われる。
Information held by the manufacturing apparatus, such as operating status and manufacturing results, is reflected in an information system such as supply chain management or corporate resource management. As the mechanism, a manufacturing execution system (MES) is used.
The MES receives an information collection instruction from the information system, acquires information from the manufacturing apparatus, and stores the acquired information so that it can be used from the information system.
For this reason, communication for reading and writing data is performed between the manufacturing apparatus and the MES.
 工場が建設される際、一般的に、製造装置およびMESは別々の開発者によって並行して開発される。
 製造装置とMESとのそれぞれの開発が完了すると、開発された実機同士による組合せ試験が行われる。この組合せ試験の段階で、製造装置とMESとの間の通信の不具合が検出される。
 通信の不具合が検出された場合、不具合の原因が製造装置とMESとのいずれであるか分析される。そして、不具合の原因について、修正作業が行われる。
 このような不具合分析および手戻り作業の発生を防ぐため、製造装置とMESとのそれぞれの開発過程において、通信に係る検証が行われる。
 しかし、開発過程に通信相手の実機が無いため、通信に係る検証をいかにして行うかが課題となる。
When a factory is built, typically the manufacturing equipment and MES are developed in parallel by separate developers.
When the development of each of the manufacturing apparatus and the MES is completed, a combination test between the developed actual machines is performed. At the stage of this combination test, a communication failure between the manufacturing apparatus and the MES is detected.
When a communication failure is detected, it is analyzed whether the cause of the failure is the manufacturing apparatus or the MES. And correction work is performed about the cause of a malfunction.
In order to prevent the occurrence of such trouble analysis and rework, verification related to communication is performed in the development process of each of the manufacturing apparatus and the MES.
However, since there is no actual machine as a communication partner in the development process, how to perform verification related to communication becomes a problem.
 特許文献1は、生産システムを構成する実在機器と同数の仮想機器を備え、設定手段によって設定された接続関係にしたがって実在機器と仮想機器とを接続し、実在機器と仮想機器との同期を図ってシミュレーションを実行する技術を開示している。この技術により、実機が無い状態であっても、実機を仮想機器に置き換えて、通信に係る検証を行うことが可能になる。
 しかし、仮想機器は必ずしも実機と同じ動作をするとは限らない。そのため、仮想機器を用いた検証で正しく通信できても、実機同士の通信で不具合が生じる可能性がある。
 仮想機器が実機と同じ動作をしない原因として、製造装置の開発者とMESの開発者との間で、通信仕様に関する解釈の齟齬が生じた場合が挙げられる。製造装置とMESとを別々に開発する過程で、通信手順またはインタフェース定義といった通信に係る仕様の変更が生じると、製造装置とMESとのそれぞれの開発で仕様変更の反映漏れが生じる可能性がある。そして、仕様変更の反映漏れを原因として、製造装置の開発者とMESの開発者との間で通信仕様に関する解釈の齟齬が生じる。その結果、製造装置の開発者が検証用に準備したMESの仮想機器、および、MESの開発者が検証用に準備した製造装置の仮想機器が、実機とは異なる動作をすることになってしまう。また、通信仕様に関する解釈の齟齬がなかったとしても、仮想機器の設定を誤れば、やはり、仮想機器は実機とは異なる動作をしてしまう。
 仮想機器が実機とは異なる動作をしてしまうと、製造装置とMESとの実機同士を用いた組合せ試験において、仮想機器を用いた検証では検出されなかった通信の不具合が生じてしまう。
Patent Document 1 includes the same number of virtual devices as the actual devices constituting the production system, connects the actual devices and the virtual devices according to the connection relationship set by the setting unit, and synchronizes the actual devices and the virtual devices. A technique for executing simulation is disclosed. With this technology, even when there is no real machine, it is possible to perform verification related to communication by replacing the real machine with a virtual device.
However, the virtual device does not necessarily perform the same operation as the actual device. Therefore, even if communication can be performed correctly by verification using a virtual device, a problem may occur in communication between real machines.
The reason why the virtual device does not perform the same operation as that of the actual machine is a case where a discrepancy in communication specifications occurs between the developer of the manufacturing apparatus and the developer of the MES. In the process of separately developing the manufacturing apparatus and the MES, if a change in specifications related to communication such as a communication procedure or interface definition occurs, there is a possibility that the specification change is not reflected in each development of the manufacturing apparatus and the MES. . Then, due to the omission of reflection of the specification change, there is a discrepancy between the developer of the manufacturing apparatus and the MES developer regarding the interpretation of the communication specification. As a result, the virtual device of the MES prepared for verification by the developer of the manufacturing apparatus and the virtual device of the manufacturing apparatus prepared for verification by the developer of the MES will operate differently from the actual machine. . Even if there is no interpretation error related to the communication specification, if the virtual device is misconfigured, the virtual device still operates differently from the actual device.
If the virtual device performs an operation different from that of the actual device, a communication failure that is not detected in the verification using the virtual device occurs in the combination test using the actual device of the manufacturing apparatus and the MES.
特開2000-330970号公報JP 2000-330970 A
 本発明は、第1の情報処理装置の開発者と第2の情報処理装置の開発者との間で通信仕様の解釈の齟齬が生じて装置間の通信に不具合が発生してしまうこと、を抑止できるようにすることを目的とする。 According to the present invention, there is a flaw in interpretation of communication specifications between the developer of the first information processing apparatus and the developer of the second information processing apparatus, resulting in a failure in communication between the apparatuses. The purpose is to enable deterrence.
 本発明の通信模擬装置は、
 第1の情報処理装置と第2の情報処理装置との間で行われる通信の内容を示す通信モデルを用いて、前記第1の情報処理装置が第2の情報処理装置と行う通信を模擬するための第1の模擬プログラムと、前記第2の情報処理装置が前記第1の情報処理装置と行う通信を模擬するための第2の模擬プログラムと、を生成する模擬プログラム生成部と、
 前記第2の情報処理装置が接続された場合、前記第1の模擬プログラムを実行することによって前記第2の情報処理装置と通信を行い、前記第1の情報処理装置が接続された場合、前記第2の模擬プログラムを実行することによって前記第1の情報処理装置と通信を行う通信模擬部とを備える。
The communication simulation apparatus of the present invention is
Simulating communication performed by the first information processing apparatus with the second information processing apparatus using a communication model indicating the contents of communication performed between the first information processing apparatus and the second information processing apparatus. A first simulation program for generating a second simulation program for simulating communication performed by the second information processing apparatus with the first information processing apparatus;
When the second information processing apparatus is connected, the first information processing apparatus communicates with the second information processing apparatus by executing the first simulation program. When the first information processing apparatus is connected, A communication simulation unit that communicates with the first information processing apparatus by executing a second simulation program.
 本発明によれば、第1の模擬プログラムおよび第2の模擬プログラムが通信モデルを用いて生成される。つまり、第1の情報処理装置の開発者と第2の情報処理装置の開発者とが別々に模擬プログラムを生成する必要がない。
 そのため、第1の情報処理装置の開発者と第2の情報処理装置の開発者との間で通信仕様の解釈の齟齬が生じて、誤った模擬プログラムが生成されてしまう、ということがない。
 したがって、第1の情報処理装置の開発者と第2の情報処理装置の開発者との間で通信仕様の解釈の齟齬が生じて装置間の通信に不具合が発生してしまうこと、を抑止することができる。
According to the present invention, the first simulation program and the second simulation program are generated using the communication model. That is, it is not necessary for the developer of the first information processing apparatus and the developer of the second information processing apparatus to generate simulation programs separately.
Therefore, there is no possibility that an erroneous simulation program is generated due to an error in interpretation of communication specifications between the developer of the first information processing apparatus and the developer of the second information processing apparatus.
Therefore, it is possible to prevent a communication specification interpretation error between the developer of the first information processing apparatus and the developer of the second information processing apparatus, resulting in a failure in communication between the apparatuses. be able to.
実施の形態1における検証システム100の概要図。1 is a schematic diagram of a verification system 100 according to Embodiment 1. FIG. 実施の形態1における通信模擬装置200の機能構成図。2 is a functional configuration diagram of a communication simulation device 200 according to Embodiment 1. FIG. 実施の形態1における通信モデル292の構成図。FIG. 3 is a configuration diagram of a communication model 292 according to the first embodiment. 実施の形態1における通信模擬方法(前半)のフローチャート。4 is a flowchart of a communication simulation method (first half) in the first embodiment. 実施の形態1における手順入力画面310(ハンドシェイク通信)の構成図。FIG. 3 is a configuration diagram of a procedure input screen 310 (handshake communication) in the first embodiment. 実施の形態1における手順入力画面310(通信シーケンス)の構成図。FIG. 3 is a configuration diagram of a procedure input screen 310 (communication sequence) in the first embodiment. 実施の形態1における通信モデル生成処理(S130)のフローチャート。5 is a flowchart of communication model generation processing (S130) in the first embodiment. 実施の形態1における通信モデル生成処理(S130)のフローチャート。5 is a flowchart of communication model generation processing (S130) in the first embodiment. 実施の形態1における模擬プログラム生成処理(S140)のフローチャート。The flowchart of the simulation program production | generation process (S140) in Embodiment 1. FIG. 実施の形態1における通信模擬方法(後半)のフローチャート。4 is a flowchart of a communication simulation method (second half) in the first embodiment. 実施の形態1における通信模擬装置200と情報処理装置110との関係図。FIG. 3 is a relationship diagram between the communication simulation device 200 and the information processing device 110 in the first embodiment. 実施の形態2における通信模擬装置200の機能構成図。The function block diagram of the communication simulation apparatus 200 in Embodiment 2. FIG. 実施の形態2における通信模擬方法(前半)のフローチャート。10 is a flowchart of a communication simulation method (first half) in the second embodiment. 実施の形態2における手順テンプレート291T(ハンドシェイク通信)の構成図。The block diagram of the procedure template 291T (handshake communication) in Embodiment 2. FIG. 実施の形態2における手順テンプレート291T(通信シーケンス)の構成図。The block diagram of the procedure template 291T (communication sequence) in Embodiment 2. FIG. 実施の形態3における検証システム100の構成図。FIG. 6 is a configuration diagram of a verification system 100 according to a third embodiment. 実施の形態3における通信模擬装置200の機能構成図。FIG. 10 is a functional configuration diagram of a communication simulation device 200 according to a third embodiment. 実施の形態3における通信模擬方法(前半)のフローチャート。10 is a flowchart of a communication simulation method (first half) in the third embodiment. 実施の形態における通信模擬装置200のハードウェア構成図。The hardware block diagram of the communication simulation apparatus 200 in embodiment.
 実施の形態1.
 一方の情報処理装置の通信機能が模擬されて他方の情報処理装置の通信機能が検証される検証システム100について、図1から図11に基づいて説明する。
Embodiment 1 FIG.
A verification system 100 in which the communication function of one information processing apparatus is simulated and the communication function of the other information processing apparatus is verified will be described with reference to FIGS.
***構成の説明***
 図1に基づいて、検証システム100の概要について説明する。
 検証システム100は、第1の情報処理装置110Aまたは第2の情報処理装置110Bが接続される通信模擬装置200を備える。第1の情報処理装置110Aまたは第2の情報処理装置110Bは、有線または無線で、直接またはネットワークを介して、通信模擬装置200に接続される。
*** Explanation of configuration ***
An overview of the verification system 100 will be described with reference to FIG.
The verification system 100 includes a communication simulation device 200 to which the first information processing device 110A or the second information processing device 110B is connected. The first information processing apparatus 110A or the second information processing apparatus 110B is connected to the communication simulation apparatus 200 directly or via a network in a wired or wireless manner.
 第1の情報処理装置110Aおよび第2の情報処理装置110Bは、通信仕様として定められた通信手順に従って、互いに通信する装置である。
 第1の情報処理装置110Aの一例は、製造を行う製造装置である。製造装置は、加工および組み立てを行う機械、製造装置および周辺環境の状態を検知するセンサ、機械およびセンサを制御するプログラマブルロジックコントローラ(PCL)などを備える。
 第2の情報処理装置110Bの一例は、製造実行システム(MES)である。
The first information processing apparatus 110A and the second information processing apparatus 110B are apparatuses that communicate with each other according to a communication procedure defined as a communication specification.
An example of the first information processing apparatus 110A is a manufacturing apparatus that performs manufacturing. The manufacturing apparatus includes a machine that performs processing and assembly, a sensor that detects a state of the manufacturing apparatus and the surrounding environment, a programmable logic controller (PCL) that controls the machine and the sensor, and the like.
An example of the second information processing apparatus 110B is a manufacturing execution system (MES).
 実施の形態において、第1の情報処理装置110Aと第2の情報処理装置110Bとの間で行われる通信を定型通信と呼ぶ。 In the embodiment, communication performed between the first information processing apparatus 110A and the second information processing apparatus 110B is referred to as fixed communication.
 通信模擬装置200は、利用者101によって入力される定型通信の情報に基づいて、第1の情報処理装置110Aの通信を模擬する第1の模擬プログラムと、第2の情報処理装置110Bの通信を模擬する第2の模擬プログラムとを生成する。
 そして、第1の情報処理装置110Aが通信模擬装置200に接続された場合、通信模擬装置200は、第2の模擬プログラムを実行することによって、第1の情報処理装置110Aと通信を行う。
 また、第2の情報処理装置110Bが通信模擬装置200に接続された場合、通信模擬装置200は、第1の模擬プログラムを実行することによって、第2の情報処理装置110Bと通信を行う。
The communication simulation device 200 performs communication between the first information processing device 110 </ b> A and the second information processing device 110 </ b> B based on information on the standard communication input by the user 101. A second simulation program to be simulated is generated.
When the first information processing apparatus 110A is connected to the communication simulation apparatus 200, the communication simulation apparatus 200 communicates with the first information processing apparatus 110A by executing the second simulation program.
When the second information processing apparatus 110B is connected to the communication simulation apparatus 200, the communication simulation apparatus 200 communicates with the second information processing apparatus 110B by executing the first simulation program.
 第1の情報処理装置110Aと第2の情報処理装置110Bとを総称して情報処理装置110という。 The first information processing apparatus 110A and the second information processing apparatus 110B are collectively referred to as the information processing apparatus 110.
 図2に基づいて、通信模擬装置200の機能構成について説明する。
 通信模擬装置200は、領域データ生成部211と、手順データ生成部212と、通信モデル生成部220と、模擬プログラム生成部230とを備える。
Based on FIG. 2, the functional configuration of the communication simulation apparatus 200 will be described.
The communication simulation apparatus 200 includes an area data generation unit 211, a procedure data generation unit 212, a communication model generation unit 220, and a simulation program generation unit 230.
 領域データ生成部211は、第1の情報処理装置110Aに設けられる記憶領域である第1の記憶領域の情報を示す第1の領域データ291Aと、第2の情報処理装置110Bに設けられる記憶領域である第2の記憶領域の情報を示す第2の領域データ291Bとを以下のように生成する。
 領域データ生成部211は、第1の記憶領域および第2の記憶領域の情報を入力するためのユーザインタフェースである領域入力インタフェースを表示する。そして、領域データ生成部211は、領域入力インタフェースに入力された第1の記憶領域の情報を用いて第1の領域データ291Aを生成し、領域入力インタフェースに入力された第2の記憶領域の情報を用いて第2の領域データ291Bを生成する。
The area data generation unit 211 includes first area data 291A indicating information of a first storage area that is a storage area provided in the first information processing apparatus 110A, and a storage area provided in the second information processing apparatus 110B. The second area data 291B indicating the information of the second storage area is generated as follows.
The area data generation unit 211 displays an area input interface that is a user interface for inputting information on the first storage area and the second storage area. Then, the area data generation unit 211 generates the first area data 291A using the information on the first storage area input to the area input interface, and the information on the second storage area input to the area input interface. Is used to generate the second area data 291B.
 手順データ生成部212は、定型通信の手順の内容を示す手順データ291Cを以下のように生成する。
 手順データ生成部212は、定型通信の手順の内容を表す図表を生成するためのユーザインタフェースである手順生成インタフェースを表示する。そして、手順データ生成部212は、手順生成インタフェースを用いて生成された図表のデータを手順データ291Cとして生成する。図表は、図と表との両方、または、図と表とのいずれかを意味する。
The procedure data generation unit 212 generates procedure data 291C indicating the contents of the routine communication procedure as follows.
The procedure data generation unit 212 displays a procedure generation interface which is a user interface for generating a chart representing the contents of the routine communication procedure. Then, the procedure data generation unit 212 generates chart data generated using the procedure generation interface as procedure data 291C. A chart means either a figure and a table, or a figure and a table.
 手順データ291Cは、定型通信の手順の内容として、定型通信の手順に含まれる通信処理の処理主体と処理条件と処理内容とを含んでいる。
 処理主体は、通信処理を実行する主体を示す。
 処理条件は、通信処理が実行される条件を示す。
 処理内容は、処理主体と処理条件とを除いた通信処理の内容を示す。
The procedure data 291 </ b> C includes a processing subject, a processing condition, and a processing content of a communication process included in the routine communication procedure as the contents of the routine communication procedure.
The processing entity indicates an entity that executes communication processing.
The processing condition indicates a condition for executing the communication process.
The processing content indicates the content of communication processing excluding the processing subject and processing conditions.
 通信モデル生成部220は、手順データ291Cを用いて、定型通信の内容を示す通信モデル292を以下のように生成する。
 通信モデル生成部220は、処理主体と処理条件と処理内容とを手順データ291Cから抽出し、処理主体と処理条件と処理内容とを含んだデータを通信モデル292として生成する。
The communication model generation unit 220 uses the procedure data 291C to generate a communication model 292 indicating the contents of the standard communication as follows.
The communication model generation unit 220 extracts the processing subject, processing condition, and processing content from the procedure data 291C, and generates data including the processing subject, processing condition, and processing content as the communication model 292.
 模擬プログラム生成部230は、通信モデル292を用いて、第1の模擬プログラム293Aと第2の模擬プログラム293Bとを以下のように生成する。
 第1の模擬プログラム293Aは、第1の情報処理装置110Aが第2の情報処理装置110Bと行う通信を模擬するためのプログラムである。
 第2の模擬プログラム293Bは、第2の情報処理装置110Bが第1の情報処理装置110Aと行う通信を模擬するためのプログラムである。
The simulation program generating unit 230 generates the first simulation program 293A and the second simulation program 293B using the communication model 292 as follows.
The first simulation program 293A is a program for simulating communication performed by the first information processing apparatus 110A with the second information processing apparatus 110B.
The second simulation program 293B is a program for simulating communication performed by the second information processing apparatus 110B with the first information processing apparatus 110A.
 模擬プログラム生成部230は、処理主体が第1の情報処理装置110Aと第2の情報処理装置110Bとのいずれであるか判定する。
 処理主体が第1の情報処理装置110Aである場合、模擬プログラム生成部230は、処理条件が満たされたときに実行されるプログラムコードとして処理コードを第1の模擬プログラム293Aに含める。処理コードは、処理内容が示す内容の通信処理を実行するためのプログラムコードである。プログラムコードは、ソースコードまたはオブジェクトコードである。
 処理主体が第2の情報処理装置110Bである場合、模擬プログラム生成部230は、処理条件が満たされたときに実行されるプログラムコードとして処理コードを第2の模擬プログラム293Bに含める。
The simulation program generation unit 230 determines whether the processing subject is the first information processing apparatus 110A or the second information processing apparatus 110B.
When the processing subject is the first information processing apparatus 110A, the simulation program generating unit 230 includes the processing code in the first simulation program 293A as a program code that is executed when the processing conditions are satisfied. The process code is a program code for executing a communication process having the content indicated by the process content. The program code is source code or object code.
When the processing subject is the second information processing apparatus 110B, the simulation program generating unit 230 includes the processing code in the second simulation program 293B as a program code that is executed when the processing condition is satisfied.
 通信模擬装置200は、装置検出部241と、模擬領域生成部242と、変換プログラム生成部250と、通信模擬部260と、通信内容出力部270とを備える。 The communication simulation device 200 includes a device detection unit 241, a simulation region generation unit 242, a conversion program generation unit 250, a communication simulation unit 260, and a communication content output unit 270.
 装置検出部241は、第1の情報処理装置110Aと第2の情報処理装置110Bとのいずれかの接続を検出する。装置検出部241の一例は、通信ポートに接続された装置を検出する通信ドライバである。
 第1の情報処理装置110Aが通信模擬装置200に接続された場合、第1の情報処理装置110Aの接続が検出される。また、第2の情報処理装置110Bが通信模擬装置200に接続された場合、第2の情報処理装置110Bの接続が検出される。
The device detection unit 241 detects any connection between the first information processing device 110A and the second information processing device 110B. An example of the device detection unit 241 is a communication driver that detects a device connected to a communication port.
When the first information processing apparatus 110A is connected to the communication simulation apparatus 200, the connection of the first information processing apparatus 110A is detected. When the second information processing apparatus 110B is connected to the communication simulation apparatus 200, the connection of the second information processing apparatus 110B is detected.
 模擬領域生成部242は、第1の模擬領域294Aまたは第2の模擬領域294Bを記憶部290に設ける。第1の模擬領域294Aは、第1の情報処理装置110Aに設けられる第1の記憶領域に対応する記憶領域である。第2の模擬領域294Bは、第2の情報処理装置110Bに設けられる第2の記憶領域に対応する記憶領域である。
 第2の情報処理装置110Bが通信模擬装置200に接続された場合、模擬領域生成部242は、第1の領域データ291Aに基づいて、第1の模擬領域294Aを記憶部290に設ける。
 第1の情報処理装置110Aが通信模擬装置200に接続された場合、模擬領域生成部242は、第2の領域データ291Bに基づいて、第2の模擬領域294Bを記憶部290に設ける。
The simulated region generation unit 242 provides the first simulated region 294A or the second simulated region 294B in the storage unit 290. The first simulated area 294A is a storage area corresponding to the first storage area provided in the first information processing apparatus 110A. The second simulation area 294B is a storage area corresponding to the second storage area provided in the second information processing apparatus 110B.
When the second information processing apparatus 110B is connected to the communication simulation apparatus 200, the simulation area generation unit 242 provides the first simulation area 294A in the storage unit 290 based on the first area data 291A.
When the first information processing apparatus 110A is connected to the communication simulation apparatus 200, the simulation area generation unit 242 provides the second simulation area 294B in the storage unit 290 based on the second area data 291B.
 変換プログラム生成部250は、第1の変換プログラム295Aまたは第2の変換プログラム295Bを生成する。第1の変換プログラム295Aは、第1の情報処理装置110Aに設けられる第1の記憶領域のアドレスを第1の模擬領域294Aのアドレスに変換するためのプログラムである。第2の変換プログラム295Bは、第2の情報処理装置110Bに設けられる第2の記憶領域のアドレスを第2の模擬領域294Bのアドレスに変換するためのプログラムである。
 第2の情報処理装置110Bが通信模擬装置200に接続された場合、変換プログラム生成部250は、第1の変換プログラム295Aを生成する。
 第1の情報処理装置110Aが通信模擬装置200に接続された場合、変換プログラム生成部250は、第2の変換プログラム295Bを生成する。
The conversion program generation unit 250 generates the first conversion program 295A or the second conversion program 295B. The first conversion program 295A is a program for converting the address of the first storage area provided in the first information processing apparatus 110A into the address of the first simulated area 294A. The second conversion program 295B is a program for converting the address of the second storage area provided in the second information processing apparatus 110B to the address of the second simulated area 294B.
When the second information processing apparatus 110B is connected to the communication simulation apparatus 200, the conversion program generation unit 250 generates the first conversion program 295A.
When the first information processing apparatus 110A is connected to the communication simulation apparatus 200, the conversion program generation unit 250 generates a second conversion program 295B.
 通信模擬部260は、第2の情報処理装置110Bが通信模擬装置200に接続された場合、第1の模擬プログラム293Aと第1の変換プログラム295Aとを実行することによって、第2の情報処理装置110Bと通信を行う。
 通信模擬部260は、第1の情報処理装置110Aが通信模擬装置200に接続された場合、第2の模擬プログラム293Bと第2の変換プログラム295Bとを実行することによって、第1の情報処理装置110Aと通信を行う。
When the second information processing device 110B is connected to the communication simulation device 200, the communication simulation unit 260 executes the first simulation program 293A and the first conversion program 295A, thereby providing the second information processing device. Communicate with 110B.
When the first information processing apparatus 110A is connected to the communication simulation apparatus 200, the communication simulation unit 260 executes the second simulation program 293B and the second conversion program 295B, thereby performing the first information processing apparatus. Communicate with 110A.
 通信内容出力部270は、第2の情報処理装置110Bが通信模擬装置200に接続された場合、第2の情報処理装置110Bに対して行われた通信の内容を示す通信内容データ297を出力する。
 通信内容出力部270は、第1の情報処理装置110Aが通信模擬装置200に接続された場合、第1の情報処理装置110Aに対して行われた通信の内容を示す通信内容データ297を出力する。
When the second information processing device 110B is connected to the communication simulation device 200, the communication content output unit 270 outputs communication content data 297 indicating the content of communication performed to the second information processing device 110B. .
When the first information processing device 110A is connected to the communication simulation device 200, the communication content output unit 270 outputs communication content data 297 indicating the content of communication performed on the first information processing device 110A. .
 通信模擬装置200は記憶部290を備える。
 記憶部290は、通信模擬装置200で使用、生成または入出力されるデータを記憶する。
 第1の領域データ291A、第2の領域データ291B、第1の模擬プログラム293A、第2の模擬プログラム293B、第1の変換プログラム295A、第2の変換プログラム295Bおよび通信内容データ297は、記憶部290に記憶されるデータの一例である。
The communication simulation device 200 includes a storage unit 290.
The storage unit 290 stores data used, generated or input / output by the communication simulation device 200.
The first area data 291A, the second area data 291B, the first simulation program 293A, the second simulation program 293B, the first conversion program 295A, the second conversion program 295B, and the communication content data 297 are stored in the storage unit. 3 is an example of data stored in H.290.
 第1の領域データ291Aと第2の領域データ291Bとを総称して領域データ291という。
 第1の模擬プログラム293Aと第2の模擬プログラム293Bとを総称して模擬プログラム293という。
 第1の変換プログラム295Aと第2の変換プログラム295Bとを総称して変換プログラム295という。
 また、第1の模擬領域294Aと第2の模擬領域294Bとを総称して模擬領域294という。
The first area data 291A and the second area data 291B are collectively referred to as area data 291.
The first simulation program 293A and the second simulation program 293B are collectively referred to as a simulation program 293.
The first conversion program 295A and the second conversion program 295B are collectively referred to as a conversion program 295.
The first simulation area 294A and the second simulation area 294B are collectively referred to as a simulation area 294.
 図3に基づいて、通信モデル292の構成について説明する。
 通信モデル292は、通信処理毎の処理オブジェクト292Oを含んでいる。
 処理オブジェクト292Oは、番号と処理主体と処理条件と処理内容と次オブジェクト名とを含んでいる。
 番号は、通信処理の順番を示す。
 次オブジェクト名は、次の通信処理の内容を示す処理オブジェクト292Oを識別する。
Based on FIG. 3, the structure of the communication model 292 is demonstrated.
The communication model 292 includes a processing object 292O for each communication process.
The processing object 292O includes a number, a processing subject, processing conditions, processing contents, and a next object name.
The number indicates the order of communication processing.
The next object name identifies the processing object 292O indicating the content of the next communication process.
***動作の説明***
 通信模擬装置200の動作は通信模擬方法に相当する。また、通信模擬方法は通信模擬プログラムの処理手順に相当する。
*** Explanation of operation ***
The operation of the communication simulation device 200 corresponds to a communication simulation method. The communication simulation method corresponds to the processing procedure of the communication simulation program.
 図4に基づいて、通信模擬方法の前半について説明する。通信模擬方法の前半において、通信模擬装置200は、第1の模擬プログラム293Aと第2の模擬プログラム293Bとを生成する。 Based on Fig. 4, the first half of the communication simulation method will be described. In the first half of the communication simulation method, the communication simulation apparatus 200 generates a first simulation program 293A and a second simulation program 293B.
 S110は、領域データ生成処理である。
 S110において、領域データ生成部211は、領域入力インタフェースとして用いる領域情報入力画面を表示装置に表示する。
 領域情報入力画面には、情報処理装置110の記憶領域の情報が利用者101によって入力される。
 情報処理装置110の記憶領域の情報は、対象とする情報処理装置110を識別する装置識別子、記憶領域の範囲を示すアドレス範囲、記憶領域に記憶されるデータの属性を示す属性値、記憶領域に記憶されるデータに設定されるデータ値などである。
S110 is a region data generation process.
In S110, the region data generation unit 211 displays a region information input screen used as a region input interface on the display device.
Information on the storage area of the information processing apparatus 110 is input by the user 101 on the area information input screen.
Information on the storage area of the information processing apparatus 110 includes a device identifier for identifying the target information processing apparatus 110, an address range indicating the range of the storage area, an attribute value indicating an attribute of data stored in the storage area, and a storage area. For example, a data value set in stored data.
 領域情報入力画面に入力された装置識別子によって識別される情報処理装置110が第1の情報処理装置110Aである場合、領域データ生成部211は、領域情報入力画面に入力された情報を含んだデータを第1の領域データ291Aとして生成する。
 領域情報入力画面に入力された装置識別子によって識別される情報処理装置110が第2の情報処理装置110Bである場合、領域データ生成部211は、領域情報入力画面に入力された情報を含んだデータを第2の領域データ291Bとして生成する。
When the information processing apparatus 110 identified by the apparatus identifier input on the area information input screen is the first information processing apparatus 110A, the area data generation unit 211 includes data including information input on the area information input screen. Is generated as the first area data 291A.
When the information processing device 110 identified by the device identifier input on the region information input screen is the second information processing device 110B, the region data generation unit 211 includes data including information input on the region information input screen. Is generated as the second area data 291B.
 S120は手順データ生成処理である。
 S120において、手順データ生成部212は、手順生成インタフェースとして用いる手順入力画面310を表示装置に表示する。
S120 is a procedure data generation process.
In S120, the procedure data generation unit 212 displays a procedure input screen 310 used as a procedure generation interface on the display device.
 図5に、ハンドシェイク通信の通信手順を生成するための手順入力画面310を示す。
 この手順入力画面310は、図生成欄311と表生成欄312と要素選択欄313とを含んでいる。
 図生成欄311において、通信処理のタイミングを表すタイミングチャートが利用者101によって生成される。タイミングチャートを構成する要素は要素選択欄313から選択される。
 表生成欄312において、通信処理の内容を示す処理表が利用者101によって生成される。処理表に示される情報は、テキストボックスまたはドロップダウンリストなどを用いて入力される。ドロップダウンリストには、領域データ291が示すアドレス範囲、属性値またはデータ値などが示される。
FIG. 5 shows a procedure input screen 310 for generating a communication procedure for handshake communication.
The procedure input screen 310 includes a diagram generation column 311, a table generation column 312, and an element selection column 313.
In the diagram generation column 311, a timing chart representing the timing of communication processing is generated by the user 101. Elements constituting the timing chart are selected from the element selection field 313.
In the table generation field 312, a processing table indicating the contents of the communication processing is generated by the user 101. Information shown in the processing table is input using a text box or a drop-down list. In the drop-down list, an address range, an attribute value, a data value, or the like indicated by the area data 291 is shown.
 図6に、通信シーケンスで表される通信手順を生成するための手順入力画面310を示す。
 この手順入力画面310は、図生成欄311と表生成欄312と要素選択欄313とを含んでいる。
 図生成欄311において、通信処理の流れを表すシーケンス図が利用者101によって生成される。図6に示すシーケンス図は統一モデリング言語(UML)で記述されている。シーケンス図を構成する要素は要素選択欄313から選択される。
 表生成欄312において、通信処理の内容を示す処理表が利用者101によって生成される。処理表に示される情報は、テキストボックスまたはドロップダウンリストなどを用いて入力される。ドロップダウンリストには、領域データ291が示すアドレス範囲、属性値またはデータ値などが示される。
FIG. 6 shows a procedure input screen 310 for generating a communication procedure represented by a communication sequence.
The procedure input screen 310 includes a diagram generation column 311, a table generation column 312, and an element selection column 313.
In the diagram generation column 311, a sequence diagram representing the flow of communication processing is generated by the user 101. The sequence diagram shown in FIG. 6 is described in a unified modeling language (UML). Elements constituting the sequence diagram are selected from the element selection field 313.
In the table generation field 312, a processing table indicating the contents of the communication processing is generated by the user 101. Information shown in the processing table is input using a text box or a drop-down list. In the drop-down list, an address range, an attribute value, a data value, or the like indicated by the area data 291 is shown.
 図4に戻り、S120の説明を続ける。
 手順データ生成部212は、手順入力画面310の図生成欄311で生成された図のデータと、手順入力画面310の表生成欄312で生成された表のデータとを手順データ291Cとして生成する。
Returning to FIG. 4, the description of S120 will be continued.
The procedure data generation unit 212 generates the diagram data generated in the diagram generation column 311 of the procedure input screen 310 and the table data generated in the table generation column 312 of the procedure input screen 310 as the procedure data 291C.
 S130は通信モデル生成処理である。
 S130において、通信モデル生成部220は、手順データ291Cを用いて、通信モデル292を生成する。
S130 is a communication model generation process.
In S130, the communication model generation unit 220 generates a communication model 292 using the procedure data 291C.
 図7に基づいて、手順データ291Cがハンドシェイク通信の通信手順を示す場合の通信モデル生成処理(S130)について説明する。
 説明する例において、手順データ291Cは、図5の図生成欄311に示したタイミングチャートのデータと、図5の表生成欄312に示した処理表のデータとを含んでいる。
Based on FIG. 7, the communication model generation process (S130) when the procedure data 291C indicates the communication procedure of the handshake communication will be described.
In the example to be described, the procedure data 291C includes data of the timing chart shown in the figure generation column 311 of FIG. 5 and data of the processing table shown in the table generation column 312 of FIG.
 S131hにおいて、通信モデル生成部220は、手順データ291Cから事象を抽出する。
 図5の処理表は、読取り(1)と書込み(2)と書込み(3)との3つの通信処理を含んでいる。
 読取り(1)は読取りの開始と読取りの終了との2つの事象を含み、書込み(2)(3)は書込みの開始と書込みの終了との2つの事象を含む。
 したがって、通信モデル生成部220は、読取り(1)の開始と、読取り(1)の終了と、書込み(2)の開始と、書込み(2)の終了と、書込み(3)の開始と、書込み(3)の終了との6つの事象を抽出する。
In S131h, the communication model generation unit 220 extracts an event from the procedure data 291C.
The processing table of FIG. 5 includes three communication processes of reading (1), writing (2), and writing (3).
Read (1) includes two events, the start of reading and the end of reading, and Write (2) (3) includes two events, the start of writing and the end of writing.
Therefore, the communication model generation unit 220 starts reading (1), ends reading (1), starts writing (2), ends writing (2), starts writing (3), and writes. Six events with the end of (3) are extracted.
 S132hにおいて、通信モデル生成部220は、抽出した事象毎に処理オブジェクト292Oを生成し、生成した処理オブジェクト292Oにオブジェクト名を付ける。生成された処理オブジェクト292Oに含まれる番号、処理主体、処理条件、処理内容および次オブジェクト名は未設定を意味する値を示す。
 そして、通信モデル生成部220は、生成した事象毎の処理オブジェクト292Oを含んだ通信モデル292を生成する。
In S132h, the communication model generation unit 220 generates a processing object 292O for each extracted event, and assigns an object name to the generated processing object 292O. The number, the processing subject, the processing condition, the processing content, and the next object name included in the generated processing object 292O indicate values that are not set.
And the communication model production | generation part 220 produces | generates the communication model 292 containing the processing object 292O for every produced | generated event.
 S133hにおいて、通信モデル生成部220は、未選択の事象を順番に1つ選択する。
 図5のタイミングチャートに示すように、6つの事象は、書込み(2)の開始、書込み(3)の開始、読取り(1)の開始、読取り(1)の終了、書込み(2)の終了、書込み(3)の終了の順番で発生する。
 したがって、通信モデル生成部220は、書込み(2)の開始、書込み(3)の開始、読取り(1)の開始、読取り(1)の終了、書込み(2)の終了、書込み(3)の終了の順番で、未選択の事象を1つ選択する。
 そして、通信モデル生成部220は、選択した事象の処理オブジェクト292Oに、選択した事象の順番を示す番号を設定する。
In S133h, the communication model generation unit 220 selects one unselected event in order.
As shown in the timing chart of FIG. 5, the six events are: start of write (2), start of write (3), start of read (1), end of read (1), end of write (2), Occurs in the order of completion of writing (3).
Therefore, the communication model generation unit 220 starts writing (2), starts writing (3), starts reading (1), ends reading (1), ends writing (2), and ends writing (3). In this order, one unselected event is selected.
Then, the communication model generation unit 220 sets a number indicating the order of the selected event in the processing object 292O of the selected event.
 S134hにおいて、通信モデル生成部220は、選択した事象の処理主体を手順データ291Cから抽出する。
 図5の処理表は処理毎の処理主体を含んでいる。したがって、通信モデル生成部220は、選択した事象に対応する処理の処理主体を処理表から抽出する。
 そして、通信モデル生成部220は、抽出した処理主体を、選択した処理オブジェクト292Oに設定する。
In S134h, the communication model generation unit 220 extracts the processing subject of the selected event from the procedure data 291C.
The processing table of FIG. 5 includes processing subjects for each processing. Therefore, the communication model generation unit 220 extracts the processing subject of the processing corresponding to the selected event from the processing table.
Then, the communication model generation unit 220 sets the extracted processing subject to the selected processing object 292O.
 S135hにおいて、通信モデル生成部220は、選択した事象の処理条件を手順データ291Cから抽出する。
 選択された事象は前回の事象が終了した後に発生する。図5において、2番目の事象である書込み(3)の開始は、1番目の事象である書込み(2)において、アドレスがM1000である記憶領域のビット値が1から0に変化した後に発生する。
 したがって、通信モデル生成部220は、前回の事象が終了したことを判定する条件を処理条件として抽出する。なお、選択した事象が1番目の事象である場合、抽出される処理条件はない。
 そして、通信モデル生成部220は、抽出した処理条件を、選択した事象の処理オブジェクト292Oに設定する。但し、選択した事象が1番目の事象である場合、処理条件の設定は不要である。
In S135h, the communication model generation unit 220 extracts the processing conditions of the selected event from the procedure data 291C.
The selected event occurs after the previous event ends. In FIG. 5, the start of writing (3) as the second event occurs after the bit value of the storage area whose address is M1000 has changed from 1 to 0 in writing (2) as the first event. .
Therefore, the communication model generation unit 220 extracts a condition for determining that the previous event has ended as a processing condition. If the selected event is the first event, there is no processing condition to be extracted.
Then, the communication model generation unit 220 sets the extracted processing condition in the processing object 292O of the selected event. However, when the selected event is the first event, it is not necessary to set processing conditions.
 S136hにおいて、通信モデル生成部220は、選択した事象の処理内容を手順データ291Cから抽出する。
 抽出される処理内容は処理主体と処理条件とを除いた内容である。図5の処理表は、処理主体の他に、種類、対象アドレス、書込み値および格納アドレスを含んでいる。したがって、通信モデル生成部220は、選択した事象に対応する通信処理の種類、対象アドレス、書込み値および格納アドレスを処理表から処理内容として抽出する。
 そして、通信モデル生成部220は、抽出した処理内容を、選択した事象の処理オブジェクト292Oに設定する。
In S136h, the communication model generation unit 220 extracts the processing content of the selected event from the procedure data 291C.
The extracted processing content is the content excluding the processing subject and processing conditions. The processing table of FIG. 5 includes a type, a target address, a write value, and a storage address in addition to the processing subject. Therefore, the communication model generation unit 220 extracts the communication processing type, target address, write value, and storage address corresponding to the selected event as processing contents from the processing table.
Then, the communication model generation unit 220 sets the extracted processing content in the processing object 292O of the selected event.
 S137hにおいて、通信モデル生成部220は、次の事象があるか判定する。
 次の事象がある場合、処理はS138hに進む。
 次の事象がない場合、通信モデル生成処理(S130)は終了する。
In S137h, the communication model generation unit 220 determines whether there is a next event.
If there is a next event, the process proceeds to S138h.
If there is no next event, the communication model generation process (S130) ends.
 S138hにおいて、通信モデル生成部220は、次の事象の処理オブジェクト292Oのオブジェクト名を、選択した事象の処理オブジェクト292Oに、次オブジェクト名として設定する。
 S138hの後、処理はS133hに戻る。
In S138h, the communication model generation unit 220 sets the object name of the next event processing object 292O as the next object name in the selected event processing object 292O.
After S138h, the process returns to S133h.
 図8に基づいて、手順データ291Cが通信シーケンスで表される通信手順を示す場合の通信モデル生成処理(S130)について説明する。
 説明の例において、手順データ291Cは、図6の図生成欄311に示したシーケンス図のデータと、図6の表生成欄312に示した処理表のデータとを含んでいる。
Based on FIG. 8, the communication model generation process (S130) when the procedure data 291C indicates a communication procedure represented by a communication sequence will be described.
In the example of the description, the procedure data 291C includes the data of the sequence diagram shown in the diagram generation column 311 of FIG. 6 and the data of the processing table shown in the table generation column 312 of FIG.
 S131sにおいて、通信モデル生成部220は、手順データ291Cからメッセージを抽出する。
 図6のシーケンス図は、(1)から(4)までの番号が付された矢印で表された4つのメッセージを含んでいる。
 したがって、通信モデル生成部220は、読取り(1)と、書込み(2)と、書込み(3)と、書込み(4)との4つのメッセージを抽出する。
In S131s, the communication model generation unit 220 extracts a message from the procedure data 291C.
The sequence diagram of FIG. 6 includes four messages represented by arrows numbered from (1) to (4).
Therefore, the communication model generation unit 220 extracts four messages of read (1), write (2), write (3), and write (4).
 S132sにおいて、通信モデル生成部220は、抽出したメッセージ毎に処理オブジェクト292Oを生成し、生成した処理オブジェクト292Oにオブジェクト名に付ける。生成された処理オブジェクト292Oに含まれる番号、処理主体、処理条件、処理内容および次オブジェクト名は未設定を意味する値を示す。
 そして、通信モデル生成部220は、生成したメッセージ毎の処理オブジェクト292Oを含んだ通信モデル292を生成する。
In S132s, the communication model generation unit 220 generates a processing object 292O for each extracted message, and attaches the object name to the generated processing object 292O. The number, the processing subject, the processing condition, the processing content, and the next object name included in the generated processing object 292O indicate values that are not set.
And the communication model production | generation part 220 produces | generates the communication model 292 containing the processing object 292O for every produced | generated message.
 S133sにおいて、通信モデル生成部220は、未選択のメッセージを順番に1つ選択する。
 図6のシーケンス図に示すように、4つのメッセージは、読取り(1)、書込み(2)、書込み(3)、書込み(4)の順番で発生する。
 したがって、通信モデル生成部220は、読取り(1)、書込み(2)、書込み(3)、書込み(4)の順番で、未選択のメッセージを1つ選択する。
 そして、通信モデル生成部220は、選択したメッセージの処理オブジェクト292Oに、選択したメッセージの順番を示す番号を設定する。
In S133s, the communication model generation unit 220 selects one unselected message in order.
As shown in the sequence diagram of FIG. 6, four messages are generated in the order of read (1), write (2), write (3), and write (4).
Therefore, the communication model generation unit 220 selects one unselected message in the order of reading (1), writing (2), writing (3), and writing (4).
Then, the communication model generation unit 220 sets a number indicating the order of the selected message in the processing object 292O of the selected message.
 S134sにおいて、通信モデル生成部220は、選択したメッセージの処理主体を手順データ291Cから抽出する。
 図6のシーケンス図はメッセージ毎の処理主体を含んでいる。メッセージを表す矢印の始点側の主体が処理主体である。例えば、読取り(1)の処理主体は、「第1」で表される第1の情報処理装置110Aである。
 そして、通信モデル生成部220は、抽出した処理主体を、選択した処理オブジェクト292Oに設定する。
In S134s, the communication model generation unit 220 extracts the processing subject of the selected message from the procedure data 291C.
The sequence diagram of FIG. 6 includes a processing entity for each message. The subject on the starting point side of the arrow representing the message is the processing subject. For example, the processing subject of the reading (1) is the first information processing apparatus 110A represented by “first”.
Then, the communication model generation unit 220 sets the extracted processing subject to the selected processing object 292O.
 S135s-1において、通信モデル生成部220は、選択したメッセージの処理条件を手順データ291Cから抽出する。
 選択されたメッセージは前回のメッセージの通信が終了した後に発生する。したがって、通信モデル生成部220は、前回のメッセージの通信が終了したことを判定する条件を処理条件として抽出する。なお、選択したメッセージが1番目の事象である場合、抽出される処理条件はない。
 そして、通信モデル生成部220は、抽出した処理条件を、選択したメッセージの処理オブジェクト292Oに設定する。但し、選択したメッセージが1番目のメッセージである場合、処理条件の設定は不要である。
In S135s-1, the communication model generation unit 220 extracts the processing conditions of the selected message from the procedure data 291C.
The selected message occurs after communication of the previous message is completed. Therefore, the communication model generation unit 220 extracts a condition for determining that the communication of the previous message has ended as a processing condition. If the selected message is the first event, there is no processing condition to be extracted.
Then, the communication model generation unit 220 sets the extracted processing condition in the processing object 292O of the selected message. However, when the selected message is the first message, it is not necessary to set processing conditions.
 S135s-2において、通信モデル生成部220は、選択したメッセージが結合フラグメントの中の1番目のメッセージであるか判定する。
 選択したメッセージが結合フラグメントの中の1番目のメッセージである場合、通信モデル生成部220は、結合フラグメントに含まれる条件式を処理条件として抽出する。
 図6のシーケンスは、「opt」が記された結合フラグメントを含んでいる。この結合フラグメントの中の1番目のメッセージは書込み(2)である。したがって、選択したメッセージが書込み(2)である場合、通信モデル生成部220は、結合フラグメントに記された[条件式]に含まれる条件式を処理条件として抽出する。
 そして、通信モデル生成部220は、抽出した処理条件を、選択したメッセージの処理オブジェクト292Oに追加する。
In S135s-2, the communication model generation unit 220 determines whether the selected message is the first message in the combined fragment.
When the selected message is the first message in the combined fragment, the communication model generation unit 220 extracts the conditional expression included in the combined fragment as a processing condition.
The sequence of FIG. 6 includes a binding fragment marked with “opt”. The first message in this combined fragment is a write (2). Therefore, when the selected message is write (2), the communication model generation unit 220 extracts a conditional expression included in [Conditional Expression] written in the combined fragment as a processing condition.
Then, the communication model generation unit 220 adds the extracted processing condition to the processing object 292O of the selected message.
 S136sにおいて、通信モデル生成部220は、選択したメッセージの処理内容を手順データ291Cから抽出する。
 抽出される処理内容は処理主体と処理条件とを除いた内容である。図6の処理表は、種類、対象アドレス、書込み値および格納アドレスを含んでいる。したがって、通信モデル生成部220は、選択したメッセージに対応する種類、対象アドレス、書込み値および格納アドレスを処理表から処理内容として抽出する。
 そして、通信モデル生成部220は、抽出した処理内容を選択したメッセージの処理オブジェクト292Oに設定する。
In S136s, the communication model generation unit 220 extracts the processing content of the selected message from the procedure data 291C.
The extracted processing content is the content excluding the processing subject and processing conditions. The processing table of FIG. 6 includes a type, a target address, a write value, and a storage address. Therefore, the communication model generation unit 220 extracts the type, target address, write value, and storage address corresponding to the selected message as processing contents from the processing table.
Then, the communication model generation unit 220 sets the extracted processing content in the processing object 292O of the selected message.
 S137sにおいて、通信モデル生成部220は、次のメッセージがあるか判定する。
 次のメッセージがある場合、処理はS138sに進む。
 次のメッセージがない場合、通信モデル生成処理(S130)は終了する。
In S137s, the communication model generation unit 220 determines whether there is a next message.
If there is a next message, the process proceeds to S138s.
If there is no next message, the communication model generation process (S130) ends.
 S138sにおいて、通信モデル生成部220は、次のメッセージの処理オブジェクト292Oのオブジェクト名を、選択したメッセージの処理オブジェクト292Oに、次オブジェクト名として設定する。
 S138sの後、処理はS133sに戻る。
In S138s, the communication model generation unit 220 sets the object name of the processing object 292O of the next message as the next object name in the processing object 292O of the selected message.
After S138s, the process returns to S133s.
 図4に戻り、S140から説明を続ける。
 S140は模擬プログラム生成処理である。
 S140において、模擬プログラム生成部230は、手順データ291Cに基づいて、第1の模擬プログラム293Aと第2の模擬プログラム293Bとを生成する。
Returning to FIG. 4, the description will be continued from S140.
S140 is a simulation program generation process.
In S140, the simulation program generation unit 230 generates the first simulation program 293A and the second simulation program 293B based on the procedure data 291C.
 図9に基づいて、模擬プログラム生成処理(S140)について説明する。
 S141において、模擬プログラム生成部230は、通信モデル292から未選択の処理オブジェクト292Oを順番に1つ選択する。
Based on FIG. 9, the simulation program generation process (S140) will be described.
In S141, the simulation program generation unit 230 selects one unselected processing object 292O from the communication model 292 in order.
 S142において、模擬プログラム生成部230は、選択した処理オブジェクト292Oに示される処理主体が第1の情報処理装置110Aと第2の情報処理装置110Bとのいずれであるか判定する。
 処理主体が第1の情報処理装置110Aである場合、処理はS143に進む。
 処理主体が第2の情報処理装置110Bである場合、処理はS145に進む。
In S142, the simulation program generation unit 230 determines whether the processing subject indicated by the selected processing object 292O is the first information processing apparatus 110A or the second information processing apparatus 110B.
If the processing subject is the first information processing apparatus 110A, the process proceeds to S143.
If the processing subject is the second information processing apparatus 110B, the process proceeds to S145.
 S143において、模擬プログラム生成部230は、選択した処理オブジェクト292Oに示される処理条件を判定するためのプログラムコードである条件コードを生成する。条件コードの一例はif文および条件式である。
 そして、模擬プログラム生成部230は、生成した条件コードを第1の模擬プログラム293Aのテンプレートに追加する。
In S143, the simulation program generation unit 230 generates a condition code that is a program code for determining the processing condition indicated in the selected processing object 292O. An example of a condition code is an if statement and a conditional expression.
Then, the simulation program generation unit 230 adds the generated condition code to the template of the first simulation program 293A.
 S144において、模擬プログラム生成部230は、選択した処理オブジェクト292Oに示される処理内容が示す内容を実行するためのプログラムコードである処理コードを生成する。
 そして、模擬プログラム生成部230は、条件コードが示す処理条件が満たされたときに実行されるプログラムコードとして、生成した処理コードを第1の模擬プログラム293Aのテンプレートに追加する。
In S144, the simulation program generating unit 230 generates a processing code that is a program code for executing the content indicated by the processing content indicated in the selected processing object 292O.
Then, the simulation program generating unit 230 adds the generated processing code to the template of the first simulation program 293A as a program code that is executed when the processing condition indicated by the condition code is satisfied.
 S145において、模擬プログラム生成部230は、選択した処理オブジェクト292Oに示される処理条件を判定するためのプログラムコードである条件コードを生成する。条件コードの一例はif文および条件式である。
 そして、模擬プログラム生成部230は、生成した条件コードを第2の模擬プログラム293Bのテンプレートに追加する。
In S145, the simulation program generation unit 230 generates a condition code that is a program code for determining the processing condition indicated in the selected processing object 292O. An example of a condition code is an if statement and a conditional expression.
Then, the simulation program generation unit 230 adds the generated condition code to the template of the second simulation program 293B.
 S146において、模擬プログラム生成部230は、選択した処理オブジェクト292Oに示される処理内容が示す内容を実行するためのプログラムコードである処理コードを生成する。
 そして、模擬プログラム生成部230は、条件コードが示す処理条件が満たされたときに実行されるプログラムコードとして、生成した処理コードを第2の模擬プログラム293Bのテンプレートに追加する。
In S146, the simulation program generating unit 230 generates a processing code that is a program code for executing the content indicated by the processing content indicated in the selected processing object 292O.
Then, the simulation program generation unit 230 adds the generated processing code to the template of the second simulation program 293B as a program code that is executed when the processing condition indicated by the condition code is satisfied.
 S147において、模擬プログラム生成部230は、次の処理オブジェクト292Oがあるか判定する。
 次の処理オブジェクト292Oがある場合、処理はS141に戻る。
 次の処理オブジェクト292Oがない場合、処理はS148に進む。
In S147, the simulation program generation unit 230 determines whether there is a next processing object 292O.
If there is a next process object 292O, the process returns to S141.
If there is no next process object 292O, the process proceeds to S148.
 S148において、模擬プログラム生成部230は、第1の模擬プログラム293Aのテンプレートをコンパイルすることによって、第1の模擬プログラム293Aを生成する。
 また、模擬プログラム生成部230は、第2の模擬プログラム293Bのテンプレートをコンパイルすることによって、第2の模擬プログラム293Bを生成する。
In S148, the simulation program generation unit 230 generates the first simulation program 293A by compiling the template of the first simulation program 293A.
In addition, the simulation program generation unit 230 generates the second simulation program 293B by compiling the template of the second simulation program 293B.
 図10に基づいて、通信模擬方法の後半について説明する。通信模擬方法の後半において、通信模擬装置200は、模擬プログラム293を実行することによって、通信模擬装置200に接続された装置と通信を行う。 The second half of the communication simulation method will be described based on FIG. In the second half of the communication simulation method, the communication simulation device 200 communicates with a device connected to the communication simulation device 200 by executing the simulation program 293.
 S210は装置検出処理である。
 S210において、第1の情報処理装置110Aまたは第2の情報処理装置110Bが通信模擬装置200に接続された場合、装置検出部241は、通信模擬装置200に接続された接続装置を検出する。例えば、装置検出部241は、通信ポートを監視することによって、接続装置の接続を検出する。
 そして、装置検出部241は、接続装置が第1の情報処理装置110Aと第2の情報処理装置110Bとのいずれであるか判定する。例えば、装置検出部241は、接続装置を識別する装置識別子を接続装置から受信し、受信した装置識別子によって接続装置を判定する。
S210 is a device detection process.
In S <b> 210, when the first information processing device 110 </ b> A or the second information processing device 110 </ b> B is connected to the communication simulation device 200, the device detection unit 241 detects a connection device connected to the communication simulation device 200. For example, the device detection unit 241 detects the connection of the connection device by monitoring the communication port.
Then, the device detection unit 241 determines whether the connection device is the first information processing device 110A or the second information processing device 110B. For example, the device detection unit 241 receives a device identifier for identifying a connection device from the connection device, and determines the connection device based on the received device identifier.
 S220は模擬領域生成処理である。
 S220において、模擬領域生成部242は、接続装置に応じた模擬領域294を記憶部290に設ける。
 つまり、接続装置が第2の情報処理装置110Bである場合、装置検出部241は、第1の領域データ291Aが示すアドレス範囲と同じ大きさのアドレス範囲を有する第1の模擬領域294Aを記憶部290に確保する。そして、装置検出部241は、第1の領域データ291Aが示すアドレス範囲毎の属性値およびデータ値を第1の模擬領域294Aに設定する。
 また、接続装置が第1の情報処理装置110Aである場合、装置検出部241は、第2の領域データ291Bが示すアドレス範囲と同じ大きさのアドレス範囲を有する第2の模擬領域294Bを記憶部290に確保する。そして、装置検出部241は、第2の領域データ291Bが示すアドレス範囲毎の属性値およびデータ値を第2の模擬領域294Bに設定する。
S220 is a simulation area generation process.
In S220, the simulation area generation unit 242 provides a simulation area 294 in the storage unit 290 according to the connection device.
That is, when the connection device is the second information processing device 110B, the device detection unit 241 stores the first simulated region 294A having the same address range as the address range indicated by the first region data 291A. 290. Then, the device detection unit 241 sets the attribute value and the data value for each address range indicated by the first area data 291A in the first simulated area 294A.
When the connecting device is the first information processing device 110A, the device detection unit 241 stores the second simulated region 294B having the same address range as the address range indicated by the second region data 291B. 290. Then, the device detection unit 241 sets the attribute value and the data value for each address range indicated by the second area data 291B in the second simulated area 294B.
 S230は変換プログラム生成処理である。
 S230において、変換プログラム生成部250は、接続装置に応じた変換プログラム295を生成し、生成した変換プログラム295を模擬プログラム293に結合する。これにより、実行形式の模擬プログラム293が生成される。
 つまり、接続装置が第2の情報処理装置110Bである場合、変換プログラム生成部250は、第1の領域データ291Aが示すアドレス範囲内のアドレスを第1の模擬領域294Aのアドレスに変換する第1の変換プログラム295Aを生成する。そして、変換プログラム生成部250は、第1の変換プログラム295Aと第1の模擬プログラム293Aとをリンクする。
 また、接続装置が第1の情報処理装置110Aである場合、変換プログラム生成部250は、第2の領域データ291Bが示すアドレス範囲内のアドレスを第2の模擬領域294Bのアドレスに変換する第2の変換プログラム295Bを生成する。そして、変換プログラム生成部250は、第2の変換プログラム295Bと第2の模擬プログラム293Bとをリンクする。
S230 is a conversion program generation process.
In S230, the conversion program generation unit 250 generates a conversion program 295 corresponding to the connection device, and couples the generated conversion program 295 to the simulation program 293. As a result, a simulation program 293 in an execution format is generated.
That is, when the connecting device is the second information processing device 110B, the conversion program generating unit 250 converts the address within the address range indicated by the first region data 291A into the address of the first simulated region 294A. The conversion program 295A is generated. Then, the conversion program generation unit 250 links the first conversion program 295A and the first simulation program 293A.
When the connecting device is the first information processing device 110A, the conversion program generating unit 250 converts the address within the address range indicated by the second region data 291B into the address of the second simulated region 294B. The conversion program 295B is generated. Then, the conversion program generation unit 250 links the second conversion program 295B and the second simulation program 293B.
 S240は通信模擬処理である。
 S240において、通信模擬部260は、実行形式の模擬プログラム293を実行することによって、接続装置と通信を行う。
 つまり、接続装置が第2の情報処理装置110Bである場合、通信模擬部260は、第1の模擬プログラム293Aを実行することによって、第2の情報処理装置110Bと通信を行う。例えば、通信模擬部260は、図11の(A)のシーケンス図に示すような通信手順で第2の情報処理装置110Bと通信する。
 また、接続装置が第1の情報処理装置110Aである場合、通信模擬部260は、第2の模擬プログラム293Bを実行することによって、第1の情報処理装置110Aと通信を行う。例えば、通信模擬部260は、図11の(B)のシーケンス図に示すような通信手順で第1の情報処理装置110Aと通信する。
S240 is a communication simulation process.
In S240, the communication simulation unit 260 communicates with the connection device by executing the execution format simulation program 293.
That is, when the connection device is the second information processing device 110B, the communication simulation unit 260 communicates with the second information processing device 110B by executing the first simulation program 293A. For example, the communication simulation unit 260 communicates with the second information processing apparatus 110B by a communication procedure as shown in the sequence diagram of FIG.
When the connection device is the first information processing device 110A, the communication simulation unit 260 communicates with the first information processing device 110A by executing the second simulation program 293B. For example, the communication simulation unit 260 communicates with the first information processing apparatus 110A by a communication procedure as shown in the sequence diagram of FIG.
 S250は通信内容出力処理である。
 S250において、通信内容出力部270は、通信模擬部260と接続装置との通信の内容を示す通信内容データ297を生成し、生成した通信内容データ297を出力する。
 例えば、通信内容出力部270は、通信内容データ297が示す通信の内容を表示装置に表示する。
S250 is a communication content output process.
In S250, the communication content output unit 270 generates communication content data 297 indicating the content of communication between the communication simulation unit 260 and the connection device, and outputs the generated communication content data 297.
For example, the communication content output unit 270 displays the communication content indicated by the communication content data 297 on the display device.
***効果の説明***
 第1の模擬プログラム293Aおよび第2の模擬プログラム293Bは、1つの通信モデル292を用いて生成される。つまり、第1の情報処理装置110Aの開発者と第2の情報処理装置110Bの開発者とが別々に模擬プログラム293を生成する必要がない。
 そのため、第1の情報処理装置110Aの開発者と第2の情報処理装置110Bの開発者との間で通信仕様の解釈の齟齬が生じて、誤った模擬プログラム293が生成されてしまう、ということがない。
 したがって、第1の情報処理装置110Aの開発者と第2の情報処理装置110Bの開発者との間で通信仕様の解釈の齟齬が生じて装置間の通信に不具合が発生してしまうこと、を抑止することができる。
*** Explanation of effects ***
The first simulation program 293A and the second simulation program 293B are generated using one communication model 292. That is, it is not necessary for the developer of the first information processing apparatus 110A and the developer of the second information processing apparatus 110B to generate the simulation program 293 separately.
For this reason, there is a discrepancy in the interpretation of communication specifications between the developer of the first information processing apparatus 110A and the developer of the second information processing apparatus 110B, and an erroneous simulation program 293 is generated. There is no.
Therefore, there is a problem in communication specifications between the developers of the first information processing apparatus 110A and the developers of the second information processing apparatus 110B, resulting in problems in communication between the apparatuses. Can be deterred.
 実施の形態2.
 手順データ291Cのテンプレートを用いて手順データ291Cを生成する形態について、図12から図15に基づいて説明する。但し、実施の形態1と重複する説明は省略する。
Embodiment 2. FIG.
A form in which the procedure data 291C is generated using the template of the procedure data 291C will be described with reference to FIGS. However, the description which overlaps with Embodiment 1 is abbreviate | omitted.
***構成の説明***
 図12に基づいて、通信模擬装置200の機能構成について説明する。
 通信模擬装置200は、テンプレート選択部213と手順データ生成部212とを備える。
 記憶部290は、手順テンプレート群291Gを記憶する。
*** Explanation of configuration ***
Based on FIG. 12, the functional configuration of the communication simulation apparatus 200 will be described.
The communication simulation device 200 includes a template selection unit 213 and a procedure data generation unit 212.
The storage unit 290 stores the procedure template group 291G.
 テンプレート選択部213は、手順テンプレート群291Gから手順テンプレート291Tを選択するためのユーザインタフェースであるテンプレート選択インタフェースを表示する。
 手順テンプレート291Tは、定型通信の手順を示すテンプレートであって定型通信の手順に含まれる通信処理の処理内容が設定されるテンプレートである。手順テンプレート群291Gは、複数の手順テンプレート291Tである。
The template selection unit 213 displays a template selection interface that is a user interface for selecting the procedure template 291T from the procedure template group 291G.
The procedure template 291T is a template that indicates a procedure for routine communication, and is a template in which processing contents of communication processing included in the routine for regular communication are set. The procedure template group 291G is a plurality of procedure templates 291T.
 手順データ生成部212は、選択された手順テンプレート291Tを表示し、表示した手順テンプレート291Tが示す定型通信の手順と表示した手順テンプレート291Tに設定された処理内容とを定型通信の手順の内容として示すデータを手順データ291Cとして生成する。 The procedure data generation unit 212 displays the selected procedure template 291T, and indicates the routine communication procedure indicated by the displayed procedure template 291T and the processing contents set in the displayed procedure template 291T as the routine communication procedure contents. Data is generated as procedure data 291C.
***動作の説明***
 図13に基づいて、通信模擬方法の前半について説明する。
 S110、S130およびS140は実施の形態1と同じである。
*** Explanation of operation ***
The first half of the communication simulation method will be described with reference to FIG.
S110, S130, and S140 are the same as those in the first embodiment.
 S121はテンプレート選択処理である。
 S121において、テンプレート選択部213は、テンプレート選択インタフェースとして用いるテンプレート選択画面を表示装置に表示する。
 テンプレート選択画面は、手順テンプレート291Tのテンプレート名のリストを示すリスト欄、手順テンプレート291Tが示す図表が描画されるプレビュー欄などを含む。
 そして、テンプレート選択部213は、テンプレート選択画面で選択された手順テンプレート291Tを手順データ生成部212に渡す。
 図14に、ハンドシェイク通信用の手順テンプレート291Tを示す。この手順テンプレート291Tは、生成済みのタイミングチャートと、空欄を有する処理表とを含んでいる。
 図15に、通信シーケンス用の手順テンプレート291Tを示す。この手順テンプレート291Tは、生成済みのシーケンス図と、空欄を有する処理表とを含んでいる。
S121 is a template selection process.
In S121, the template selection unit 213 displays a template selection screen used as a template selection interface on the display device.
The template selection screen includes a list column indicating a list of template names of the procedure template 291T, a preview column in which a chart indicated by the procedure template 291T is drawn, and the like.
Then, the template selection unit 213 passes the procedure template 291T selected on the template selection screen to the procedure data generation unit 212.
FIG. 14 shows a procedure template 291T for handshake communication. The procedure template 291T includes a generated timing chart and a processing table having a blank.
FIG. 15 shows a procedure template 291T for the communication sequence. The procedure template 291T includes a generated sequence diagram and a processing table having a blank.
 S122は手順データ生成処理である。
 S122において、手順データ生成部212は、手順入力画面310を表示装置に表示し、渡された手順テンプレート291Tが示す図表を図生成欄311および表生成欄312に描画する。
 そして、手順データ生成部212は、手順入力画面310の図生成欄311で生成された図のデータと、手順入力画面310の表生成欄312で生成された表のデータとを手順データ291Cとして生成する。
S122 is a procedure data generation process.
In S122, the procedure data generation unit 212 displays the procedure input screen 310 on the display device, and draws the chart indicated by the passed procedure template 291T in the diagram generation column 311 and the table generation column 312.
Then, the procedure data generation unit 212 generates the diagram data generated in the diagram generation column 311 of the procedure input screen 310 and the table data generated in the table generation column 312 of the procedure input screen 310 as the procedure data 291C. To do.
 通信模擬方法の後半は実施の形態1と同じである。 The second half of the communication simulation method is the same as in the first embodiment.
***効果の説明***
 手順テンプレート291Tが用いられることによって、手順データ291Cを生成する際の利用者101の負担を軽減させることができる。
*** Explanation of effects ***
By using the procedure template 291T, it is possible to reduce the burden on the user 101 when the procedure data 291C is generated.
 実施の形態3.
 複数の通信模擬装置200で通信モデル292を共有する形態について、図16から図18に基づいて説明する。但し、実施の形態1および実施の形態2と重複する説明は省略する。
Embodiment 3 FIG.
A mode in which the communication model 292 is shared by a plurality of communication simulation apparatuses 200 will be described with reference to FIGS. However, the description which overlaps with Embodiment 1 and Embodiment 2 is abbreviate | omitted.
***構成の説明***
 図16に基づいて、検証システム100の構成について説明する。
 検証システム100は、複数の通信模擬装置200と、通信モデル群292Gが保管された通信モデル保管部120とを備える。通信モデル群292Gは複数の通信モデル292である。
 例えば、一方の通信模擬装置200は第1の情報処理装置110Aの開発者が利用する通信模擬装置200であり、他方の通信模擬装置200は第2の情報処理装置110Bの開発者が利用する通信模擬装置200である。通信模擬装置200は3台以上であってもよい。
*** Explanation of configuration ***
Based on FIG. 16, the structure of the verification system 100 is demonstrated.
The verification system 100 includes a plurality of communication simulation devices 200 and a communication model storage unit 120 in which a communication model group 292G is stored. The communication model group 292G is a plurality of communication models 292.
For example, one communication simulation device 200 is a communication simulation device 200 used by the developer of the first information processing device 110A, and the other communication simulation device 200 is communication used by the developer of the second information processing device 110B. This is a simulation device 200. There may be three or more communication simulation apparatuses 200.
 通信模擬装置200は、ネットワーク109を介して、生成した通信モデル292を通信モデル保管部120に保管する。また、通信模擬装置200は、ネットワーク109を介して、通信モデル保管部120から通信モデル292を取得する。
 通信モデル保管部120は、通信模擬装置200とは異なる装置に備えられてもよいし、いずれかの通信模擬装置200に備えられてもよい。
The communication simulation device 200 stores the generated communication model 292 in the communication model storage unit 120 via the network 109. Further, the communication simulation device 200 acquires the communication model 292 from the communication model storage unit 120 via the network 109.
The communication model storage unit 120 may be provided in a device different from the communication simulation device 200, or may be provided in any one of the communication simulation devices 200.
 図17に基づいて、通信模擬装置200の機能構成について説明する。
 通信模擬装置200は、通信モデル生成部220と、通信モデル書出し部281と、通信モデル選択部282と、通信モデル読出し部283と、模擬プログラム生成部230とを備える。
 通信模擬装置200は、実施の形態2と同様に、テンプレート選択部213を備えてもよい。
 また、通信模擬装置200は、通信モデル保管部120を備えてもよい。
Based on FIG. 17, the functional configuration of the communication simulation device 200 will be described.
The communication simulation device 200 includes a communication model generation unit 220, a communication model writing unit 281, a communication model selection unit 282, a communication model reading unit 283, and a simulation program generation unit 230.
The communication simulation device 200 may include a template selection unit 213 as in the second embodiment.
Further, the communication simulation device 200 may include a communication model storage unit 120.
 通信モデル生成部220は、手順データ291Cを用いて通信モデル292を生成する。手順データ291Cは、実施の形態1のように手順テンプレート291Tを用いずに生成されてもよいし、実施の形態2のように手順テンプレート291Tを用いて生成されてもよい。
 通信モデル書出し部281は、通信モデル生成部220によって生成された通信モデル292を通信モデル保管部120に書き出す。これにより、通信モデル292が通信モデル群292Gに追加される。
The communication model generation unit 220 generates a communication model 292 using the procedure data 291C. The procedure data 291C may be generated without using the procedure template 291T as in the first embodiment, or may be generated using the procedure template 291T as in the second embodiment.
The communication model writing unit 281 writes the communication model 292 generated by the communication model generation unit 220 to the communication model storage unit 120. As a result, the communication model 292 is added to the communication model group 292G.
 通信モデル選択部282は、通信モデル群292Gから通信モデル292を選択するためのユーザインタフェースであるモデル選択インタフェースを表示する。
 通信モデル読出し部283は、選択された通信モデル292を通信モデル保管部120から読み出す。
 模擬プログラム生成部230は、読み出された通信モデル292を用いて、第1の模擬プログラム293Aと第2の模擬プログラム293Bとを生成する。
The communication model selection unit 282 displays a model selection interface that is a user interface for selecting the communication model 292 from the communication model group 292G.
The communication model reading unit 283 reads the selected communication model 292 from the communication model storage unit 120.
The simulation program generation unit 230 generates a first simulation program 293A and a second simulation program 293B using the read communication model 292.
***動作の説明***
 図18に基づいて、通信模擬方法の前半について説明する。
 S101は通信モデル選択処理である。
 S101において、通信モデル選択部282は、モデル選択インタフェースとして用いるモデル選択画面を表示装置に表示する。
 モデル選択画面は、通信モデル292のモデル名のリストを示すリスト欄、通信モデル292の内容を示す確認欄などを含む。
*** Explanation of operation ***
The first half of the communication simulation method will be described with reference to FIG.
S101 is a communication model selection process.
In S101, the communication model selection unit 282 displays a model selection screen used as a model selection interface on the display device.
The model selection screen includes a list field indicating a list of model names of the communication model 292, a confirmation field indicating the contents of the communication model 292, and the like.
 S102は通信モデル読出し処理である。
 S102において、通信モデル読出し部283は、モデル選択画面で選択された通信モデル292を通信モデル保管部120から読出し、読み出した通信モデル292を模擬プログラム生成部230に渡す。
S102 is a communication model reading process.
In S102, the communication model reading unit 283 reads the communication model 292 selected on the model selection screen from the communication model storage unit 120, and passes the read communication model 292 to the simulation program generation unit 230.
 S140は模擬プログラム生成処理である。
 S140において、模擬プログラム生成部230は、渡された通信モデル292を用いて、第1の模擬プログラム293Aと第2の模擬プログラム293Bとを生成する。模擬プログラム293を生成する方法は実施の形態1と同じである。
S140 is a simulation program generation process.
In S140, the simulation program generation unit 230 generates the first simulation program 293A and the second simulation program 293B using the transferred communication model 292. The method for generating the simulation program 293 is the same as in the first embodiment.
 通信模擬処理の前半において、通信模擬装置200は、通信モデル292を生成し、生成した通信モデル292を通信モデル保管部120に書き出してもよい。 In the first half of the communication simulation process, the communication simulation apparatus 200 may generate the communication model 292 and write the generated communication model 292 to the communication model storage unit 120.
***効果の説明***
 通信モデル保管部120が設けられることによって、複数の通信模擬装置200は通信モデル292を共有することができる。
 そのため、第1の情報処理装置110Aの開発者と第2の情報処理装置110Bの開発者とが別箇の通信模擬装置200を利用する場合であっても、それぞれの開発者は、同じ通信モデルを利用して情報処理装置110の通信を検証することができる。
*** Explanation of effects ***
By providing the communication model storage unit 120, a plurality of communication simulation apparatuses 200 can share the communication model 292.
Therefore, even when the developer of the first information processing device 110A and the developer of the second information processing device 110B use separate communication simulation devices 200, the developers have the same communication model. Can be used to verify the communication of the information processing apparatus 110.
 図19に基づいて、通信模擬装置200のハードウェア構成例について説明する。
 通信模擬装置200は、プロセッサ901、補助記憶装置902、メモリ903、通信装置904、入力インタフェース905、出力インタフェース906といったハードウェアを備えるコンピュータである。
 プロセッサ901は信号線910を介して他のハードウェアと接続されている。入力インタフェース905はケーブル911を介して入力装置907に接続されている。出力インタフェース906はケーブル912を介して出力装置908に接続されている。
A hardware configuration example of the communication simulation device 200 will be described with reference to FIG.
The communication simulation device 200 is a computer including hardware such as a processor 901, an auxiliary storage device 902, a memory 903, a communication device 904, an input interface 905, and an output interface 906.
The processor 901 is connected to other hardware via a signal line 910. The input interface 905 is connected to the input device 907 via a cable 911. The output interface 906 is connected to the output device 908 via the cable 912.
 プロセッサ901は、プロセッシングを行うICであり、他のハードウェアを制御する。プロセッサ901の一例は、CPU、DSP、GPUである。ICはIntegrated Circuitの略称である。CPUはCentral Processing Unitの略称であり、DSPはDigital Signal Processorの略称であり、GPUはGraphics Processing Unitの略称である。
 補助記憶装置902はデータを記憶する。補助記憶装置902の一例は、ROM、フラッシュメモリ、HDDである。ROMはRead Only Memoryの略称であり、HDDはHard Disk Driveの略称である。
 メモリ903はデータを記憶する。メモリ903の一例はRAMである。RAMはRandom Access Memoryの略称である。
 通信装置904は、データを受信するレシーバ9041と、データを送信するトランスミッタ9042とを備える。通信装置904の一例は、通信チップ、NICである。NICはNetwork Interface Cardの略称である。
 入力インタフェース905はケーブル911が接続されるポートであり、ポートの一例はUSB端子である。USBはUniversal Serial Busの略称である。
 出力インタフェース906はケーブル912が接続されるポートであり、USB端子およびHDMI端子はポートの一例である。HDMI(登録商標)はHigh Definition Multimedia Interfaceの略称である。
 入力装置907はデータ、命令および要求を入力する。入力装置907の一例は、マウス、キーボード、タッチパネルである。
 出力装置908はデータ、結果および応答を出力する。出力装置908の一例は、ディスプレイ、プリンタである。ディスプレイの一例はLCDである。LCDはLiquid Crystal Displayの略称である。
The processor 901 is an IC that performs processing, and controls other hardware. An example of the processor 901 is a CPU, DSP, or GPU. IC is an abbreviation for Integrated Circuit. CPU is an abbreviation for Central Processing Unit, DSP is an abbreviation for Digital Signal Processor, and GPU is an abbreviation for Graphics Processing Unit.
The auxiliary storage device 902 stores data. An example of the auxiliary storage device 902 is a ROM, a flash memory, and an HDD. ROM is an abbreviation for Read Only Memory, and HDD is an abbreviation for Hard Disk Drive.
The memory 903 stores data. An example of the memory 903 is a RAM. RAM is an abbreviation for Random Access Memory.
The communication device 904 includes a receiver 9041 that receives data and a transmitter 9042 that transmits data. An example of the communication device 904 is a communication chip or a NIC. NIC is an abbreviation for Network Interface Card.
The input interface 905 is a port to which a cable 911 is connected, and an example of the port is a USB terminal. USB is an abbreviation for Universal Serial Bus.
The output interface 906 is a port to which the cable 912 is connected, and the USB terminal and the HDMI terminal are examples of ports. HDMI (registered trademark) is an abbreviation for High Definition Multimedia Interface.
The input device 907 inputs data, instructions and requests. An example of the input device 907 is a mouse, a keyboard, and a touch panel.
The output device 908 outputs data, results and responses. An example of the output device 908 is a display or a printer. An example of a display is an LCD. LCD is an abbreviation for Liquid Crystal Display.
 補助記憶装置902にはOSが記憶されている。OSはOperating Systemの略称である。
 また、補助記憶装置902には、領域データ生成部211、手順データ生成部212、テンプレート選択部213、通信モデル生成部220、模擬プログラム生成部230、装置検出部241、模擬領域生成部242、変換プログラム生成部250、通信模擬部260、通信内容出力部270といった「部」の機能を実現するプログラムが記憶されている。
 OSの少なくとも一部はメモリ903にロードされ、プロセッサ901はOSを実行しながら「部」の機能を実現するプログラムを実行する。「部」の機能を実現するプログラムは、メモリ903にロードされ、プロセッサ901に読み込まれ、プロセッサ901によって実行される。
 なお、通信模擬装置200が複数のプロセッサ901を備えて、複数のプロセッサ901が「部」の機能を実現するプログラムを連携して実行してもよい。
The auxiliary storage device 902 stores an OS. OS is an abbreviation for Operating System.
The auxiliary storage device 902 includes an area data generation unit 211, a procedure data generation unit 212, a template selection unit 213, a communication model generation unit 220, a simulation program generation unit 230, a device detection unit 241, a simulation region generation unit 242, and a conversion. A program that realizes the function of “unit” such as the program generation unit 250, the communication simulation unit 260, and the communication content output unit 270 is stored.
At least a part of the OS is loaded into the memory 903, and the processor 901 executes a program that realizes the function of “unit” while executing the OS. A program that realizes the function of “unit” is loaded into the memory 903, read into the processor 901, and executed by the processor 901.
The communication simulation apparatus 200 may include a plurality of processors 901, and the plurality of processors 901 may execute a program that realizes the function of “unit” in cooperation with each other.
 「部」の処理の結果を示すデータ、情報、信号値および変数値などは、メモリ903、補助記憶装置902、プロセッサ901内のレジスタ、または、プロセッサ901内のキャッシュメモリに記憶される。 Data, information, signal values, variable values, and the like indicating the processing results of “unit” are stored in the memory 903, the auxiliary storage device 902, a register in the processor 901, or a cache memory in the processor 901.
 「部」は「サーキットリ」で実装してもよい。「部」は「回路」、「工程」、「手順」または「処理」に読み替えてもよい。
 「回路」及び「サーキットリ」は、プロセッサ901、ロジックIC、GA、ASIC、FPGAといった処理回路を包含する概念である。GAはGate Arrayの略称であり、ASICはApplication Specific Integrated Circuitの略称であり、FPGAはField-Programmable Gate Arrayの略称である。
The “part” may be implemented as “circuitry”. “Part” may be read as “circuit”, “process”, “procedure”, or “processing”.
“Circuit” and “circuitry” are concepts including a processing circuit such as the processor 901, logic IC, GA, ASIC, and FPGA. GA is an abbreviation for Gate Array, ASIC is an abbreviation for Application Specific Integrated Circuit, and FPGA is an abbreviation for Field-Programmable Gate Array.
 各実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。各実施の形態は、部分的に実施してもよいし、他の実施の形態と組み合わせて実施してもよい。
 フローチャート等を用いて説明した処理手順は、通信模擬装置、通信模擬方法および通信模擬プログラムの処理手順の一例である。
Each embodiment is an example of a preferred embodiment and is not intended to limit the technical scope of the present invention. Each embodiment may be implemented partially or in combination with other embodiments.
The processing procedure described using the flowchart and the like is an example of the processing procedure of the communication simulation device, the communication simulation method, and the communication simulation program.
 100 検証システム、101 利用者、109 ネットワーク、110 情報処理装置、110A 第1の情報処理装置、110B 第2の情報処理装置、110C 接続装置、120 通信モデル保管部、200 通信模擬装置、211 領域データ生成部、212 手順データ生成部、213 テンプレート選択部、220 通信モデル生成部、230 模擬プログラム生成部、241 装置検出部、242 模擬領域生成部、250 変換プログラム生成部、260 通信模擬部、270 通信内容出力部、281 通信モデル書出し部、282 通信モデル選択部、283 通信モデル読出し部、290 記憶部、291 領域データ、291A 第1の領域データ、291B 第2の領域データ、291C 手順データ、291T 手順テンプレート、291G 手順テンプレート群、292 通信モデル、292G 通信モデル群、292O 処理オブジェクト、293 模擬プログラム、293A 第1の模擬プログラム、293B 第2の模擬プログラム、294 模擬領域、294A 第1の模擬領域、294B 第2の模擬領域、295 変換プログラム、295A 第1の変換プログラム、295B 第2の変換プログラム、297 通信内容データ、310 手順入力画面、311 図生成欄、312 表生成欄、313 要素選択欄、901 プロセッサ、902 補助記憶装置、903 メモリ、904 通信装置、9041 レシーバ、9042 トランスミッタ、905 入力インタフェース、906 出力インタフェース、907 入力装置、908 出力装置、910 信号線、911 ケーブル、912 ケーブル。 100 verification system, 101 user, 109 network, 110 information processing device, 110A first information processing device, 110B second information processing device, 110C connection device, 120 communication model storage unit, 200 communication simulation device, 211 area data Generation unit, 212 procedure data generation unit, 213 template selection unit, 220 communication model generation unit, 230 simulation program generation unit, 241 device detection unit, 242 simulation region generation unit, 250 conversion program generation unit, 260 communication simulation unit, 270 communication Content output section, 281 communication model writing section, 282 communication model selection section, 283 communication model reading section, 290 storage section, 291 area data, 291A first area data, 291B second area data, 291C procedure data, 29 T procedure template, 291G procedure template group, 292 communication model, 292G communication model group, 292O processing object, 293 simulation program, 293A first simulation program, 293B second simulation program, 294 simulation area, 294A first simulation area 294B second simulation area, 295 conversion program, 295A first conversion program, 295B second conversion program, 297 communication content data, 310 procedure input screen, 311 diagram generation column, 312 table generation column, 313 element selection column , 901 processor, 902 auxiliary storage device, 903 memory, 904 communication device, 9041 receiver, 9042 transmitter, 905 input interface, 906 output interface, 907 input device , 908 output unit, 910 signal line, 911 cable, 912 cable.

Claims (9)

  1.  第1の情報処理装置と第2の情報処理装置との間で行われる通信の内容を示す通信モデルを用いて、前記第1の情報処理装置が第2の情報処理装置と行う通信を模擬するための第1の模擬プログラムと、前記第2の情報処理装置が前記第1の情報処理装置と行う通信を模擬するための第2の模擬プログラムと、を生成する模擬プログラム生成部と、
     前記第2の情報処理装置が接続された場合、前記第1の模擬プログラムを実行することによって前記第2の情報処理装置と通信を行い、前記第1の情報処理装置が接続された場合、前記第2の模擬プログラムを実行することによって前記第1の情報処理装置と通信を行う通信模擬部と
    を備える通信模擬装置。
    Simulating communication performed by the first information processing apparatus with the second information processing apparatus using a communication model indicating the contents of communication performed between the first information processing apparatus and the second information processing apparatus. A first simulation program for generating a second simulation program for simulating communication performed by the second information processing apparatus with the first information processing apparatus;
    When the second information processing apparatus is connected, the first information processing apparatus communicates with the second information processing apparatus by executing the first simulation program. When the first information processing apparatus is connected, A communication simulation apparatus comprising: a communication simulation unit that communicates with the first information processing apparatus by executing a second simulation program.
  2.  前記第1の情報処理装置と前記第2の情報処理装置との間で行われる通信である定型通信の手順の内容を示す手順データを用いて、前記通信モデルを生成する通信モデル生成部
    を備える請求項1に記載の通信模擬装置。
    A communication model generation unit configured to generate the communication model by using procedure data indicating the contents of a routine communication procedure that is communication performed between the first information processing apparatus and the second information processing apparatus; The communication simulation apparatus according to claim 1.
  3.  前記定型通信の手順の内容を示す図表を生成するためのユーザインタフェースである手順生成インタフェースを表示し、前記手順生成インタフェースを用いて生成された図表のデータを前記手順データとして生成する手順データ生成部
    を備える請求項2に記載の通信模擬装置。
    A procedure data generation unit that displays a procedure generation interface, which is a user interface for generating a diagram indicating the procedure contents of the routine communication, and generates diagram data generated using the procedure generation interface as the procedure data The communication simulation device according to claim 2.
  4.  前記手順データは、前記定型通信の手順に含まれる通信処理を実行する主体を示す処理主体と、前記通信処理が実行される条件を示す処理条件と、前記処理主体と前記処理条件とを除いた前記通信処理の内容を示す処理内容と、を含み、
     前記通信モデル生成部は、前記処理主体と前記処理条件と前記処理内容とを前記手順データから抽出し、前記処理主体と前記処理条件と前記処理内容とを含んだデータを前記通信モデルとして生成する
    請求項2に記載の通信模擬装置。
    The procedure data excludes a processing entity indicating an entity that executes a communication process included in the routine communication procedure, a processing condition indicating a condition for executing the communication process, and the processing entity and the processing condition. Processing content indicating the content of the communication processing,
    The communication model generation unit extracts the processing subject, the processing condition, and the processing content from the procedure data, and generates data including the processing subject, the processing condition, and the processing content as the communication model. The communication simulation apparatus according to claim 2.
  5.  前記模擬プログラム生成部は、前記処理主体が前記第1の情報処理装置と前記第2の情報処理装置とのいずれであるか判定し、前記処理主体が前記第1の情報処理装置である場合、前記処理内容が示す内容の通信処理を実行するためのプログラムコードである処理コードを前記処理条件が満たされたときに実行されるプログラムコードとして前記第1の模擬プログラムに含め、前記処理主体が前記第2の情報処理装置である場合、前記処理条件が満たされたときに実行されるプログラムコードとして前記処理コードを前記第2の模擬プログラムに含める
    請求項4に記載の通信模擬装置。
    The simulation program generation unit determines whether the processing entity is the first information processing apparatus or the second information processing apparatus, and when the processing entity is the first information processing apparatus, A processing code that is a program code for executing a communication process having the content indicated by the processing content is included in the first simulation program as a program code that is executed when the processing condition is satisfied, and the processing subject includes the processing code The communication simulation device according to claim 4, wherein in the case of the second information processing device, the processing code is included in the second simulation program as a program code executed when the processing condition is satisfied.
  6.  前記通信模擬装置は、
     前記第2の情報処理装置が接続された場合、前記第1の情報処理装置に設けられる第1の記憶領域に対応する記憶領域である第1の模擬領域が設けられ、前記第1の情報処理装置が接続された場合、前記第2の情報処理装置に設けられる第2の記憶領域に対応する記憶領域である第2の模擬領域が設けられる記憶部と、
     前記第2の情報処理装置が接続された場合、前記第1の記憶領域のアドレスを前記第1の模擬領域のアドレスに変換するための第1の変換プログラムを生成し、前記第1の情報処理装置が接続された場合、前記第2の記憶領域のアドレスを前記第2の模擬領域のアドレスに変換するための第2の変換プログラムを生成する変換プログラム生成部とを備え、
     前記通信模擬部は、前記第2の情報処理装置が接続された場合、前記第1の変換プログラムと前記第1の模擬プログラムとを実行し、前記第1の情報処理装置が接続された場合、前記第2の変換プログラムと前記第2の模擬プログラムとを実行する
    請求項1に記載の通信模擬装置。
    The communication simulator is
    When the second information processing apparatus is connected, a first simulated area that is a storage area corresponding to a first storage area provided in the first information processing apparatus is provided, and the first information processing apparatus A storage unit provided with a second simulation area, which is a storage area corresponding to a second storage area provided in the second information processing apparatus, when a device is connected;
    When the second information processing apparatus is connected, a first conversion program for converting the address of the first storage area into the address of the first simulation area is generated, and the first information processing is performed. A conversion program generating unit that generates a second conversion program for converting the address of the second storage area into the address of the second simulation area when an apparatus is connected;
    The communication simulation unit executes the first conversion program and the first simulation program when the second information processing apparatus is connected, and when the first information processing apparatus is connected, The communication simulation apparatus according to claim 1, wherein the second conversion program and the second simulation program are executed.
  7.  前記第1の情報処理装置と前記第2の情報処理装置との間で行われる通信である定型通信の手順を示すテンプレートであって前記定型通信の手順に含まれる通信処理の処理内容が設定されるテンプレートである手順テンプレートを選択するためのユーザインタフェースであるテンプレート選択インタフェースを表示するテンプレート選択部と、
     選択された手順テンプレートを表示し、表示した手順テンプレートが示す前記定型通信の手順と表示した手順テンプレートに設定された処理内容とを示す手順データを生成する手順データ生成部と、
     生成された手順データを用いて、前記通信モデルを生成する通信モデル生成部と
    を備える請求項1に記載の通信模擬装置。
    A template showing a procedure of fixed communication that is communication performed between the first information processing apparatus and the second information processing apparatus, and processing contents of communication processing included in the fixed communication procedure are set. A template selection unit that displays a template selection interface that is a user interface for selecting a procedure template that is a template to be selected;
    A procedure data generation unit for displaying the selected procedure template and generating procedure data indicating the routine communication procedure indicated by the displayed procedure template and the processing content set in the displayed procedure template;
    The communication simulation apparatus according to claim 1, further comprising: a communication model generation unit that generates the communication model using the generated procedure data.
  8.  前記通信模擬装置は、複数の通信モデルから通信モデルを選択するためのユーザインタフェースであるモデル選択インタフェースを表示するモデル選択部を備え、
     前記模擬プログラム生成部は、選択された通信モデルを用いて、前記第1の模擬プログラムと前記第2の模擬プログラムとを生成する
    請求項1に記載の通信模擬装置。
    The communication simulator includes a model selection unit that displays a model selection interface that is a user interface for selecting a communication model from a plurality of communication models.
    The communication simulation apparatus according to claim 1, wherein the simulation program generation unit generates the first simulation program and the second simulation program using a selected communication model.
  9.  第1の情報処理装置と第2の情報処理装置との間で行われる通信の内容を示す通信モデルを用いて、前記第1の情報処理装置が第2の情報処理装置と行う通信を模擬するための第1の模擬プログラムと、前記第2の情報処理装置が前記第1の情報処理装置と行う通信を模擬するための第2の模擬プログラムと、を生成する模擬プログラム生成処理と、
     前記第2の情報処理装置が接続された場合、前記第1の模擬プログラムを実行することによって前記第2の情報処理装置と通信を行い、前記第1の情報処理装置が接続された場合、前記第2の模擬プログラムを実行することによって前記第1の情報処理装置と通信を行う通信模擬処理と
    をコンピュータに実行させるための通信模擬プログラム。
    Simulating communication performed by the first information processing apparatus with the second information processing apparatus using a communication model indicating the contents of communication performed between the first information processing apparatus and the second information processing apparatus. A simulation program generation process for generating a first simulation program for generating a second simulation program for simulating communication performed by the second information processing apparatus with the first information processing apparatus;
    When the second information processing apparatus is connected, the first information processing apparatus communicates with the second information processing apparatus by executing the first simulation program. When the first information processing apparatus is connected, A communication simulation program for causing a computer to execute a communication simulation process for communicating with the first information processing apparatus by executing a second simulation program.
PCT/JP2015/063886 2015-05-14 2015-05-14 Communication simulation device and communication simulation program WO2016181548A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2015/063886 WO2016181548A1 (en) 2015-05-14 2015-05-14 Communication simulation device and communication simulation program
TW104120462A TW201640241A (en) 2015-05-14 2015-06-25 Communication simulation device and communication simulation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/063886 WO2016181548A1 (en) 2015-05-14 2015-05-14 Communication simulation device and communication simulation program

Publications (1)

Publication Number Publication Date
WO2016181548A1 true WO2016181548A1 (en) 2016-11-17

Family

ID=57249098

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/063886 WO2016181548A1 (en) 2015-05-14 2015-05-14 Communication simulation device and communication simulation program

Country Status (2)

Country Link
TW (1) TW201640241A (en)
WO (1) WO2016181548A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000322288A (en) * 1999-05-06 2000-11-24 Fujitsu Ltd Distributed object development system and computer readable recording medium for recording program for execution of distributed object development by computer
JP2008305003A (en) * 2007-06-05 2008-12-18 Nec Software Kyushu Ltd Method and system for verifying operation of program performing multi-task communication

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000322288A (en) * 1999-05-06 2000-11-24 Fujitsu Ltd Distributed object development system and computer readable recording medium for recording program for execution of distributed object development by computer
JP2008305003A (en) * 2007-06-05 2008-12-18 Nec Software Kyushu Ltd Method and system for verifying operation of program performing multi-task communication

Also Published As

Publication number Publication date
TW201640241A (en) 2016-11-16

Similar Documents

Publication Publication Date Title
US7908518B2 (en) Method, system and computer program product for failure analysis implementing automated comparison of multiple reference models
JP2013097436A (en) Error detection method, information processing circuit and program for error detection
US9122502B2 (en) Configurator with embedded firmware for offline instrument user settings implementation
CN110637521B (en) Data real-time storage method and system based on model simulation
JP6667733B2 (en) Simulation apparatus, simulation method, and simulation program
WO2016181548A1 (en) Communication simulation device and communication simulation program
JP2011039781A (en) Cooperative simulator and simulation method
JP2009104490A (en) Apparatus for testing program
JP2007226567A (en) Circuit simulator and circuit simulation program
JP2007286654A (en) Sequencer simulation device
US20090327988A1 (en) Methods, systems and computer program products for layout device matching driven by a schematic editor
CN114968751A (en) Program debugging method and program debugging device of code-free development platform
JP5545133B2 (en) Static analysis processing system, method, and program
JP5056493B2 (en) Virtual software generator
JP2020170403A (en) Simulation system, collection device, collection method, and simulation method
US8976378B2 (en) Pre-flight system for PDF/VT
TWI330772B (en)
JP5034867B2 (en) Software verification support program, recording medium recording the program, software verification support apparatus, and software verification support method
JP2009140028A (en) Programming description generation device for hardware verification, programming description generation method for hardware verification, control program, and readable recording medium
KR20240009773A (en) Port virtualization device and method for simulation of automotive software platform
JP2007156728A (en) Logic verification method and logic verification system
JP2006190150A (en) Field bus protocol testing equipment
KR20240009757A (en) Windows-based automotive software simulation device and method through autosar stack virtualization
JP2005346487A (en) Microcomputer software operation verification system
JP2010044577A (en) Debugging device and method

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15891872

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP