JP2011221772A - Debug support device, debug support method and debug support program - Google Patents
Debug support device, debug support method and debug support program Download PDFInfo
- Publication number
- JP2011221772A JP2011221772A JP2010089883A JP2010089883A JP2011221772A JP 2011221772 A JP2011221772 A JP 2011221772A JP 2010089883 A JP2010089883 A JP 2010089883A JP 2010089883 A JP2010089883 A JP 2010089883A JP 2011221772 A JP2011221772 A JP 2011221772A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- external device
- transmitted
- management process
- control
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24069—Diagnostic
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/33—Director till display
- G05B2219/33297—Diagnostic, test, debug
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、デバッグ支援装置、デバッグ支援方法及びデバッグ支援プログラムに関し、特に、外部機器を制御する制御アプリケーションのデバッグを支援するデバッグ支援装置に関する。 The present invention relates to a debugging support apparatus, a debugging support method, and a debugging support program, and more particularly to a debugging support apparatus that supports debugging of a control application that controls an external device.
製造装置や検査装置等を制御する制御アプリケーションの多くは、受注生産品である。
よって、客先の生産ラインを構成する前記装置にあわせて、受注を受けたプログラマが制御アプリケーションを開発する。
Many of the control applications that control manufacturing apparatuses, inspection apparatuses, and the like are made-to-order products.
Therefore, a programmer who has received an order develops a control application in accordance with the apparatus constituting the customer's production line.
その場合、客先のラインを停止させることが困難である場合が多い。そのため、プログラマは制御対象となる装置を用いて開発中の前記制御アプリケーションを検証することが困難であった。 In that case, it is often difficult to stop the customer's line. Therefore, it is difficult for a programmer to verify the control application under development using a device to be controlled.
また、客先に前記制御アプリケーションを導入した後に不具合が発生した場合であっても、生産ラインを停止させることは損失となるため、いち早く不具合を解決する必要がある。さらに、多くの装置とアプリケーションが組み合わされた制御アプリケーションは動作が非決定的となるため、不具合要因の切り分けが困難であった。 Even if a problem occurs after the control application is introduced to the customer, it is necessary to solve the problem promptly because stopping the production line is a loss. Furthermore, since the operation of a control application in which many devices and applications are combined becomes non-deterministic, it is difficult to isolate the cause of the failure.
従来、非決定的なプログラム向けのデバッグ装置による、デバッグ作業の効率化が試みられてきた。 Conventionally, attempts have been made to improve the efficiency of debugging work by using a debugging device for non-deterministic programs.
例えば特許文献1では、不具合発生時にデバッグ対象プログラムで発生した「イベント」の発生順序を、再現することが試みられている。
For example, in
しかしながら、特許文献1に記載のデバッグ装置は、計算機内で生成されたタスクについて、各タスク内で事前に定められた発生順序に従ってイベントが発生することを確認できるに留まる。
However, the debugging device described in
また、アプリケーションが制御対象である外部機器と制御信号を送受信するような機械制御システムのデバッグにおいては、送受信された制御信号の内容及び時刻によってアプリケーションの挙動が変わる。こうした場合、特許文献1のデバッグ装置では、デバッグを効率化することができないという問題があった。
In debugging a machine control system in which an application transmits / receives a control signal to / from an external device to be controlled, the behavior of the application changes depending on the content and time of the transmitted / received control signal. In such a case, the debugging device of
さらに、前述の通り、制御アプリケーションが制御の対象とする外部機器は一般に客先にしかなく、アプリケーションと外部機器とをつないで長期間のデバッグを行うことが困難であるという問題があった。 Furthermore, as described above, there is generally a customer as an external device to be controlled by the control application, and there is a problem that it is difficult to perform long-term debugging by connecting the application and the external device.
本発明は、上述の問題点を解決するためになされたものであり、外部機器を制御する制御アプリケーションの開発時において、制御対象である外部機器と接続せずに、制御信号の送受信まで考慮したデバッグが可能な、デバッグ支援装置を提供することを目的とする。 The present invention has been made in order to solve the above-described problems. In developing a control application for controlling an external device, transmission / reception of a control signal is considered without connecting to the external device to be controlled. An object is to provide a debugging support device capable of debugging.
上記問題点を解決するために、本発明の一態様であるデバッグ支援装置は、外部機器を制御する制御アプリケーションのデバッグを支援するデバッグ支援装置であって、前記制御アプリケーションは、前記外部機器の動作を制御する管理プロセスを含み、前記管理プロセスから前記外部機器へ送信される、前記外部機器の動作を指示する第1の制御信号を前記外部機器へ伝達し、前記外部機器から前記管理プロセスへ送信される、前記第1の制御信号に応答して前記外部機器が動作した結果を示す第1の応答信号を前記管理プロセスへ伝達する通常動作モードと、前記第1の制御信号を受信した場合に、前記第1の応答信号を生成し、生成した前記第1の応答信号を前記管理プロセスへ送信することにより、前記外部機器が接続されている場合と同じ動作を前記管理プロセスに擬似的に行わせるデバック動作モードと、を有する信号伝達部を備える。 In order to solve the above problems, a debugging support apparatus according to an aspect of the present invention is a debugging support apparatus that supports debugging of a control application that controls an external device, and the control application is an operation of the external device. A first control signal instructing the operation of the external device transmitted from the management process to the external device is transmitted to the external device and transmitted from the external device to the management process. A normal operation mode in which a first response signal indicating a result of operation of the external device in response to the first control signal is transmitted to the management process, and when the first control signal is received. When the external device is connected by generating the first response signal and transmitting the generated first response signal to the management process. With the same operation to the administrative process and debug operation mode for artificially performed, the signal transfer unit having a.
この構成によると、本発明の一態様であるデバッグ支援装置は、デバッグ動作モードを使用することで、制御アプリケーション内の管理プロセスと外部機器との信号の送受信を模擬することができる。従って、本発明の一態様であるデバッグ支援装置は、制御アプリケーションを外部機器と接続せずに、制御アプリケーションが行う制御信号の送受信処理までを考慮したデバッグを行うことができる。 According to this configuration, the debug support apparatus according to one aspect of the present invention can simulate signal transmission / reception between the management process in the control application and the external device by using the debug operation mode. Therefore, the debugging support apparatus according to an aspect of the present invention can perform debugging in consideration of control signal transmission / reception processing performed by the control application without connecting the control application to an external device.
また、前記デバッグ支援装置は、さらに、前記第1の制御信号の第1種別と、当該第1種別に対応する前記第1の応答信号の第2種別とを示す検証条件を保持する検証条件保持部を備え、前記信号伝達部は、前記デバック動作モードにおいて、前記検証条件に示される第1種別の前記第1の制御信号を前記管理プロセスから受信した場合、当該第1種別に対応する前記第2種別の前記第1の応答信号を生成し、生成した前記第1の応答信号を前記管理プロセスへ送信してもよい。 The debugging support apparatus further holds a verification condition holding a verification condition indicating a first type of the first control signal and a second type of the first response signal corresponding to the first type. And when the first transmission signal of the first type indicated by the verification condition is received from the management process in the debug operation mode, the signal transmission unit corresponds to the first type. Two types of the first response signals may be generated, and the generated first response signals may be transmitted to the management process.
この構成によると、事前に検証条件を与えることにより、本発明の一態様であるデバッグ支援装置は、制御アプリケーションと外部機器との間で送受信される信号のうち特定の信号の送受信を模擬することができる。したがって、例えば、外部機器と制御アプリケーションを実際に接続してデバッグを行う場合において、複数回の信号のうち、不具合が発生する信号と発生しない信号を容易に切り分けることができる。 According to this configuration, by providing a verification condition in advance, the debugging support apparatus according to an aspect of the present invention simulates transmission / reception of a specific signal among signals transmitted / received between the control application and the external device. Can do. Therefore, for example, when debugging is performed by actually connecting an external device and a control application, it is possible to easily separate a signal that causes a failure from a signal that does not occur among a plurality of signals.
また、前記検証条件は待機時間を含み、前記信号伝送部は前記デバック動作モードにおいて、前記検証条件に示される第1種別の前記第1の制御信号を前記管理プロセスから受信した場合、当該第1種別に対応する前記第2種別の前記第1の応答信号を生成し、前記第1種別の第1の制御信号を受信してから前記待機時間分待機した後、生成した前記第2種別の前記第1の応答信号を前記管理プロセスへ送信してもよい。 The verification condition includes a waiting time, and the signal transmission unit receives the first control signal of the first type indicated in the verification condition from the management process in the debug operation mode. Generating the first response signal of the second type corresponding to the type, waiting for the waiting time after receiving the first control signal of the first type, and then generating the second type of the generated second type A first response signal may be sent to the management process.
この構成によると、本発明の一態様であるデバッグ支援装置は、制御アプリケーションと外部機器との間で送受信される信号のうち特定の信号の送受信を模擬する際に、模擬信号の送信タイミングを変更することができる。 According to this configuration, the debugging support apparatus according to one aspect of the present invention changes the transmission timing of the simulation signal when simulating transmission / reception of a specific signal among signals transmitted / received between the control application and the external device. can do.
また前記デバック支援装置は、さらに、前記信号伝達部が伝達した前記第1の制御信号及び前記第1の応答信号の履歴を記録する伝達履歴記録部と、前記伝達履歴記録部に記録された前記履歴から、前記履歴に含まれる第1の制御信号及び前記第1の応答信号の送受信のパターンを再現するように前記検証条件を生成する検証条件生成部とを備えてもよい。 The debugging support apparatus further includes a transmission history recording unit that records a history of the first control signal and the first response signal transmitted by the signal transmission unit, and the recording history recording unit that records the transmission history recording unit. A verification condition generation unit that generates the verification condition so as to reproduce the transmission / reception pattern of the first control signal and the first response signal included in the history from the history may be provided.
この構成によると、制御アプリケーションと外部機器との間で過去に送受信された信号を模擬することができる。したがって、例えば制御アプリケーションや外部機器を変更した場合に、過去の稼働状態に基づいた動作テストを行うことができる。 According to this configuration, a signal transmitted and received in the past between the control application and the external device can be simulated. Therefore, for example, when a control application or an external device is changed, an operation test based on a past operation state can be performed.
また、前記検証条件生成部は、前記制御アプリケーションの実行に不具合が生じた時刻に応じた第1期間の前記履歴から、前記履歴に含まれる第1の制御信号及び前記第1の応答信号の送受信のパターンを再現するように前記検証条件を生成してもよい。 In addition, the verification condition generation unit transmits and receives the first control signal and the first response signal included in the history from the history of the first period according to the time when the execution of the control application has failed. The verification condition may be generated so as to reproduce the pattern.
この構成によると、本発明の一態様であるデバッグ支援装置は、制御アプリケーションと外部機器との間で過去に送受信された信号のうち前記制御アプリケーションの実行に不具合が生じた時刻に応じて選択された信号のみを、模擬することができる。 According to this configuration, the debugging support apparatus according to an aspect of the present invention is selected according to the time at which a failure occurs in execution of the control application among signals transmitted and received in the past between the control application and the external device. Only the received signal can be simulated.
また、前記検証条件生成部は、ユーザにより指定された前記第1期間を取得し、取得した前記第1期間の前記履歴から、前記履歴に含まれる第1の制御信号及び前記第1の応答信号の送受信のパターンを再現するように前記検証条件を生成してもよい。 The verification condition generation unit acquires the first period specified by the user, and from the acquired history of the first period, the first control signal and the first response signal included in the history The verification condition may be generated so as to reproduce the transmission / reception pattern.
この構成によると、本発明の他の一態様であるデバッグ支援装置は、ユーザにより指定された時刻に絞って、制御アプリケーションと外部機器との間で過去に送受信された信号を容易に模擬することができる。 According to this configuration, the debugging support apparatus according to another aspect of the present invention can easily simulate a signal transmitted and received in the past between the control application and the external device at a time specified by the user. Can do.
また、前記検証条件は、さらに、前記第1の制御信号及び前記第1の応答信号の送受信のパターンを示す異常条件を含み、前記信号伝達部は、前記第1の制御信号及び前記第1の応答信号を送受信したパターンが前記異常条件に一致する場合に、異常が発生したことをユーザに通知してもよい。 The verification condition further includes an abnormal condition indicating a transmission / reception pattern of the first control signal and the first response signal, and the signal transmission unit includes the first control signal and the first control signal. If the pattern in which the response signal is transmitted and received matches the abnormal condition, the user may be notified that an abnormality has occurred.
この構成によると、本発明の一態様であるデバッグ支援装置は、制御アプリケーションと外部機器との間で特定の異常パターンに一致する信号が送受信された場合には、ユーザに通知することができる。したがって、異常な信号の発生パターンを監視し、不具合要因の解明を効率化することができる。 According to this configuration, the debug support apparatus according to an aspect of the present invention can notify the user when a signal matching a specific abnormality pattern is transmitted and received between the control application and the external device. Therefore, it is possible to monitor the generation pattern of abnormal signals and improve the elucidation of the cause of the failure.
また、前記検証条件は、さらに、前記第1の制御信号又は前記第1の応答信号の第3種別と、当該第3種別に対応する受信回数とを含み、前記信号伝達部は、前記検証条件に含まれる第3種別の、前記第1の制御信号又は前記第1の応答信号を、前記受信回数分受信した場合に、異常が発生したことをユーザに通知してもよい。 The verification condition further includes a third type of the first control signal or the first response signal and the number of receptions corresponding to the third type, and the signal transmission unit includes the verification condition. When the third type of the first control signal or the first response signal included in the number of times of reception is received, the user may be notified that an abnormality has occurred.
この構成によると、本発明の他の一態様であるデバッグ支援装置は、例えば制御アプリケーションから制御信号を指定回数以上受信した場合に、ユーザに通知することができる。 According to this configuration, the debug support apparatus according to another aspect of the present invention can notify the user when, for example, a control signal is received from a control application a specified number of times or more.
また、前記検証条件は、さらに、前記第1の制御信号及び前記第1の応答信号の送受信のパターンを示す正常条件を含み、前記信号伝達部は、前記第1の制御信号及び前記第1の応答信号を送受信したパターンが前記正常条件に一致しない場合に、異常が発生したことをユーザに通知してもよい。 The verification condition further includes a normal condition indicating a transmission / reception pattern of the first control signal and the first response signal, and the signal transmission unit includes the first control signal and the first response signal. If the pattern in which the response signal is transmitted and received does not match the normal condition, the user may be notified that an abnormality has occurred.
この構成によると、本発明の他の一態様であるデバッグ支援装置は、事前に定められた、正常な制御信号の送信及び応答信号の受信パターンから逸脱した信号の送受信が生じた場合に、ユーザに通知することができる。 According to this configuration, the debugging support apparatus according to another aspect of the present invention allows a user to perform transmission / reception of signals that deviate from predetermined control signal transmission and response signal reception patterns. Can be notified.
また、前記制御アプリケーションは、前記管理プロセスを含む複数の第1のプロセスを含み、前記複数の第1のプロセスは、互いに前記信号伝達部を介して信号の送受信を行ってもよい。 The control application may include a plurality of first processes including the management process, and the plurality of first processes may transmit and receive signals to and from each other via the signal transmission unit.
これにより、制御アプリケーションを構成するプロセス毎に独立したプログラム開発を行うことができる。その結果、長期間にわたる開発及び保守作業を行っても、制御アプリケーションが、プログラム内の構造が複雑に入り組んだ「スパゲッティプログラム」となりにくい、という利点が生じる。 Thereby, independent program development can be performed for each process constituting the control application. As a result, there is an advantage that even if development and maintenance work is performed over a long period of time, the control application is unlikely to be a “spaghetti program” having a complicated structure in the program.
また、前記信号伝達部は、通常動作モード時には、前記複数の第1のプロセスに含まれる第2のプロセスから、前記複数の第1のプロセスに含まれる第3のプロセスへ送信される、前記第3のプロセスの処理を指示する第2の制御信号を前記第3のプロセスへ伝達し、前記第3のプロセスから前記第2のプロセスへ送信される、前記第2の制御信号に応答して前記第3のプロセスが処理した結果を示す第2の応答信号を前記第2のプロセスへ伝達し、デバッグモード時には、前記第2の制御信号を受信した場合に、前記第2の応答信号を生成し、生成した前記第2の応答信号を前記第2のプロセスへ送信することにより、前記第3のプロセスが停止している場合であっても、前記第3のプロセスが実行されている場合と同じ動作を前記第2のプロセスに擬似的に行わせてもよい。 In the normal operation mode, the signal transmission unit is transmitted from the second process included in the plurality of first processes to the third process included in the plurality of first processes. In response to the second control signal transmitted from the third process to the second process, the second control signal instructing the processing of the third process to be transmitted to the third process. A second response signal indicating a result processed by the third process is transmitted to the second process, and in the debug mode, the second response signal is generated when the second control signal is received. Even when the third process is stopped by transmitting the generated second response signal to the second process, the same as the case where the third process is executed The second operation It may be artificially made to the process.
これにより、制御アプリケーションが有する一部のプロセスがプログラムとして未実装であっても、そのプログラムが完成したものとして、制御アプリケーションのデバッグを行うことができるという利点が生じる。 As a result, even if some processes of the control application are not implemented as a program, there is an advantage that the control application can be debugged as the program is completed.
また、前記複数の第1のプロセスは、前記外部機器と通信する通信プロセスを含み、前記通常動作モードにおいて、前記信号伝達部は、前記管理プロセスから送信された前記第1の制御信号を前記通信プロセスへ伝達し、前記通信プロセスは、伝達された前記第1の制御信号を、前記外部機器が解釈可能な形式に変換し、変換された前記第1の制御信号を前記外部機器へ送信し、前記通信プロセスは、前記外部機器から送信される前記変換された第1の制御信号に応答して前記外部機器が動作した結果を示す第1の応答信号を、前記管理プロセスが解釈可能な形式に変換し、変換された前記第1の応答信号を前記信号伝達部へ送信し、前記信号伝達部は、前記通信プロセスから送信された前記変換された第1の応答信号を前記管理プロセスへ伝達してもよい。 The plurality of first processes include a communication process that communicates with the external device, and in the normal operation mode, the signal transmission unit communicates the first control signal transmitted from the management process with the communication. The communication process converts the transmitted first control signal into a format interpretable by the external device, and transmits the converted first control signal to the external device; In the communication process, a first response signal indicating a result of operation of the external device in response to the converted first control signal transmitted from the external device is converted into a format that can be interpreted by the management process. Converting, and transmitting the converted first response signal to the signal transmission unit, and the signal transmission unit transmits the converted first response signal transmitted from the communication process to the management process. It may be reached.
この構成によると、本発明の他の一態様であるデバッグ支援装置は、制御アプリケーションが外部機器との通信機能を別プロセスで実現している場合であっても、デバッグ動作モードにおいて、制御アプリケーションと外部機器との間で送受信される信号を模擬することができる。 According to this configuration, the debugging support apparatus according to another aspect of the present invention is configured so that, even when the control application implements a communication function with an external device in a separate process, A signal transmitted / received to / from an external device can be simulated.
また、前記複数の第1のプロセスは、ユーザが入力操作を行うための画面処理プロセスを含んでもよい。 The plurality of first processes may include a screen processing process for a user to perform an input operation.
この構成によると、本発明の他の一態様であるデバッグ支援装置は、制御アプリケーションが操作用GUI画面を別プロセスで実現している場合であっても、デバッグ動作モードにおいて、制御アプリケーションと外部機器との間で送受信される信号を模擬することができる。 According to this configuration, the debugging support apparatus according to another aspect of the present invention can control the control application and the external device in the debug operation mode even when the control application implements the operation GUI screen in a separate process. It is possible to simulate a signal transmitted to and received from.
本発明は、外部機器を制御する制御アプリケーションの開発時において、制御対象である外部機器と接続せずに、制御信号の送受信まで考慮した効率的なデバッグが可能な、デバッグ支援装置を提供できる。 The present invention can provide a debugging support device capable of efficient debugging in consideration of transmission / reception of control signals without being connected to an external device to be controlled when developing a control application for controlling the external device.
以下、本発明の実施の形態について図面を用いて説明する。
図1は、本発明に係るデバッグ支援装置を有する機械制御システム100の外観を示す。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 shows an appearance of a
機械制御システム100は、制御装置200及び外部機器280を備えている。
例えば、機械制御システム100は、半導体基板の生産ラインにおいて、組み付け作業を行う外部機器280を、制御装置200が所定の作業目標に従って制御することにより、半導体基板を生産するシステムである。
The
For example, the
制御装置200は計算機であり、例えば汎用のPC(Personal Computer)又は、制御装置の専用コントロール装置等である。
The
また、制御装置200は、制御アプリケーション220及びデバッグ支援装置300を含む。
The
例えば、制御装置200は、外部機器280の一部であるロボットアーム260に対して、制御信号を送信する。さらに、制御装置200は、ロボットアーム260から応答信号を受信する。このように、制御装置200は、外部機器280と信号の送受信を繰り返し行うことで、機械制御システム100の機能を実現する。
For example, the
外部機器280は、例えば半導体の生産ラインや、基板の実装ラインを構成する1台以上の生産装置等である。外部機器280は、ロボットアーム260や、ベルトコンペア270等、制御装置200との間で制御信号の送受信を行う機能を有する。
The
図2は、制御装置200が有するハードウェアの構成を示す概要図である。
制御装置200は、CPU201、メモリ202、表示装置203、ストレージ204、入力装置205及び通信I/F206を備えている。
FIG. 2 is a schematic diagram illustrating a hardware configuration of the
The
CPU201は、通常の計算機処理に用いられる数値演算装置等である。CPU201は、制御アプリケーション220及びデバッグ支援装置300の実行に必要な計算を行う。
The
メモリ202は、RAM(Random Access Memory)等の記憶装置である。メモリ202は、CPUの作業領域として使われる。具体的には、制御アプリケーション220及びデバッグ支援装置300を実行する際にCPU201が用いる他、後に述べるような、制御アプリケーション220とデバッグ支援装置300との間で行われるプロセス間通信においてCPU201が用いる。
The
なお、メモリ202には、制御アプリケーション220やデバッグ支援装置300のプログラム等、書き換え不要なデータについて保持するためのROM(Read Only Memory)を含んでも良い。
Note that the
表示装置203は、例えばLCD(Liquid Crystal Display)等であり、CPU201は、ユーザに対して制御アプリケーション220及びデバッグ支援装置300の動作状況を出力する。また、制御アプリケーション220及びデバッグ支援装置300を操作するGUI画面を表示するためにCPU201が使用する。
The
ストレージ204は、外部記憶装置であり、例えばハードディスクやCD−ROMドライブ等である。ストレージ204には、例えば制御アプリケーション220及びデバッグ支援装置300が使用するプログラムが記録されている。CPU201は、制御アプリケーション220及びデバッグ支援装置300の機能を実現するプログラムを実行する際には、ストレージ204から前記プログラムを読み込んだ後、メモリ202中のRAM領域に書き込み、前記RAM領域から前記プログラムを実行することができる。また、CPU201は、制御アプリケーション220やデバッグ支援装置300が生成するファイルの読み書きを行う場所として、ストレージ204を使用する。
The
入力装置205は、制御アプリケーション220やデバッグ支援装置300に対して、ユーザが指示を行うための入力装置であり、例えばマウスやキーボード、タッチパネル等である。
The
通信I/F206は、制御アプリケーション220と外部機器280との間で制御信号の送信や応答信号の受信を行うための通信インタフェースである。通信I/F206は、例えばLAN(Local Area Network)や、シリアルポート等である。
The communication I /
なお、制御装置200が有するCPU201の数が1の場合は、制御アプリケーション220とデバッグ支援装置300は、CPU201の計算時間を時分割して行うマルチタスク処理で動作することになる。また、CPU201が複数ある場合には、各CPUを制御アプリケーション220及びデバッグ支援装置300にそれぞれ割り当ててもよい。
When the number of
なお、本発明に係るデバッグ支援装置300は、制御装置200と異なる計算機が実行してもよい。その場合は、LAN等の通信インタフェースにより制御装置200と本発明に係るデバッグ支援装置300とを接続することで、制御装置200上で動作する制御アプリケーション220のデバッグを行うことになる。
Note that the
図3は、本実施の形態に係る、制御アプリケーション220及びデバッグ支援装置300が有する機能の概要を示したブロック図である。
FIG. 3 is a block diagram showing an outline of the functions of the
制御アプリケーション220は、画面処理プロセス222、管理プロセス224及び通信プロセス226を有する。また、デバッグ支援装置300は、信号伝達部310、伝達モード切替部320、伝達履歴記録部340、検証条件生成部360及び検証条件保持部380を有する。
The
画面処理プロセス222は、GUI(Graphical User Interface)等の、ユーザが制御アプリケーション220を操作するための操作画面を表示装置203に表示するとともに、入力装置205からのユーザの入力を受け取る。例えば、ロボットアーム260のアーム位置を原点に戻すための「原点復帰ボタン」を表示装置203に表示するとともに、ユーザが前記原点復帰ボタンをマウスでクリックした場合には、前記クリック信号を受け取り、管理プロセス224に通知する。
The
管理プロセス224は、制御アプリケーション220の動作ロジックを処理する。例えば、画面処理プロセス222から、前記原点復帰ボタンがクリックされた旨を通知する信号を受け取った場合には、ロボットアーム260のアーム位置を原点に戻すために必要な処理として、通信プロセスを介してロボットアーム260へ、原点復帰コマンドを送信する。
The
通信プロセス226は、制御アプリケーション220から外部機器280への制御信号の送信及び、外部機器280から制御アプリケーション220への応答信号の受信を行う。なお、制御アプリケーション220から外部機器280への制御信号及び外部機器280から制御アプリケーション220への応答信号の内容は、制御対象である外部機器280ごとに異なる。よって、通信プロセス226は、制御信号及び応答信号に関する情報を外部機器280ごとに保持している。
The
そのため、通信プロセス226は、信号伝達部310から伝達された制御信号である要受信信号3200を、必要に応じて外部機器280が解釈可能な制御コマンドに変換し、変換した制御コマンドを外部機器280へ送信する。
Therefore, the
さらに、通信プロセス226は、送信した制御コマンドに応答して外部機器280が動作した結果を示す応答コマンドを、必要に応じて管理プロセス224が解釈可能な応答信号に変換し、変換した応答信号を信号伝達部310へ要送信信号3100として送信する。
Further, the
さらに、信号伝達部310は、通信プロセス226から送信された応答信号を、要受信信号3200として管理プロセス224へ伝達する。
Further, the
なお、画面処理プロセス222、管理プロセス224及び通信プロセス226は、必ずしも個別のプロセスである必要はなく、1つのプロセス内で処理される複数のスレッドとして実行されてもよい。また、画面処理プロセス222、管理プロセス224及び通信プロセス226は、1つの制御装置200内で実行される必要はなく、ネットワーク接続された複数の制御装置200内で分散して実行されてもよい。
Note that the
信号伝達部310は、制御アプリケーション220が有する複数のプロセス間での信号の送受信を行う。制御アプリケーション220が有する各プロセスが他のプロセスと通信を行う場合には、必ず信号伝達部310を介して通信を行う。
The
信号伝達部310は、制御信号送信部311と制御信号受信部312とを有する。
制御信号受信部312は、制御アプリケーション220が有する一のプロセスから、要送信信号3100を受信する。要送信信号3100は、宛先として指定された別プロセスの名前及び伝達すべき制御信号の内容を含む。
The
The control
制御信号送信部311は、前記宛先として指定された前記別プロセスに対して、要受信信号3200を送信する。要受信信号3200は、前記要送信信号3100に含まれる、前記制御信号の内容を含む。
The control
例えば、画面処理プロセス222が原点復帰ボタンのクリック信号を受け取った場合には、画面処理プロセス222は、管理プロセス224を宛先とし、原点復帰ボタンが押されたことを内容とする要送信信号3100を信号伝達部310へ送る。前記要送信信号3100を受け取った信号伝達部310は、宛先として指定された管理プロセス224に対して、原点復帰ボタンが押されたことを内容とする要受信信号3200を送る。
For example, when the
以上の説明から明らかなように、制御アプリケーション220を実行する場合には、必ずデバッグ支援装置300も実行される。制御アプリケーション220の実行には、信号伝達部310が不可欠なためである。
As is clear from the above description, when the
なお、制御信号受信部312及び制御信号送信部311は、例えば共有メモリや、ネットワーク経由での遠隔関数呼び出し等により、実現することができる。
Note that the control
伝達モード切替部320は、伝達モードファイル322を読み込み、その内容に従って、デバッグ支援装置300の伝達モードを設定する。
The transmission
前記伝達モードには、通常動作モードとデバッグ動作モードの2種類があり、モードが違うと信号伝達部310の動作が異なる。詳細は後述する。
There are two types of transmission modes, a normal operation mode and a debug operation mode. The operation of the
伝達履歴記録部340は、信号伝達部310が行った処理を履歴ファイル342へと記録する。信号伝達部310が行った処理とは、例えば、要送信信号3100を受信した時刻、要受信信号3200を送信した時刻、及び、その内容等である。また、信号伝達部310が通信プロセス226を介さずに外部機器280へコマンドを送信し、又はコマンドの実行結果を受信した場合には、当該コマンドの送受信の時刻や内容等も、信号伝達部310が行った処理に含まれる。
The transmission
検証条件生成部360は、伝達履歴記録部340から取得した履歴ファイル342を元に、履歴に含まれる信号伝達部310が行った信号の送受信を再現するように検証条件ファイル382を生成し、検証条件保持部380へ書き込む。信号伝達部310が行った信号の送受信とは、例えば要送信信号3100の受信と、その要送信信号3100に対応する要受信信号3200の送信、又は、外部機器280へのコマンドの送信と、そのコマンドの送信に対応する外部機器280からのコマンド処理結果通知等である。
Based on the
詳細は後述するが、例えば制御アプリケーション220を使用中に不具合が発生した場合、当該不具合の原因を解明するために、検証条件生成部360により生成された検証条件ファイル382を用いることができる。
Although details will be described later, for example, when a problem occurs while using the
図4は、本発明の実施の形態における、デバッグ支援装置300の処理の概要を示したフローチャートである。
FIG. 4 is a flowchart showing an outline of processing of the
開始後、伝達モード切替部320は、デバッグ支援装置300の動作モードとして、通常動作モード又はデバッグ動作モードのいずれかの伝達モードを決定する(S312)。
After the start, the transmission
信号伝達部310は、前記伝達モード切替部320の決定結果が通常動作モードであれば(S314でYes)、通常動作を行う(S316)。一方、デバッグ動作モードであれば(S314でNo)、信号伝達部310は対応する検証条件ファイル382を読み込み(S317)、検証条件ファイル382に従ったデバッグ動作を行う(S318)。
If the determination result of the transmission
図5は、通常動作(S316)における制御信号の伝達の流れの一例を示したシーケンス図である。 FIG. 5 is a sequence diagram showing an example of the flow of control signal transmission in the normal operation (S316).
図5を用いて、画面処理プロセス222、信号伝達部310、管理プロセス224、通信プロセス226及び外部機器280の間における、通常動作モード時の制御信号の流れを説明する。
The flow of control signals in the normal operation mode among the
今、「原点復帰ボタン」が押されたことを画面処理プロセス222が検知したとする。画面処理プロセス222は、原点復帰ボタンが押されたことを示す「復帰ボタン要求」を、要送信信号3100として信号伝達部310に送る(S511)。要送信信号3100を受信した信号伝達部310は、「復帰ボタン要求」を要受信信号3200として管理プロセス224に送る(S512)。これにより、管理プロセス224は、原点復帰ボタンがおされたことを知る。
Assume that the
次に、管理プロセス224は、外部機器の原点復帰を指示する「原点復帰要求」を、要送信信号3100として信号伝達部310に送信する(S513)。要送信信号3100を受信した信号伝達部310は、「原点復帰要求」を要受信信号3200として通信プロセス226に送る(S514)。これにより、通信プロセス226は、外部機器を原点復帰させなければならないことを知る。
Next, the
次に、通信プロセス226は、外部機器280に対して、原点復帰コマンドに相当する「原点復帰コマンド要求」を送る(S515)。「原点復帰コマンド要求」を受けた外部機器280は、原点復帰動作を行う(S516)。外部機器280は、前記動作を完了した後、通信プロセス226に対して、原点復帰コマンドが完了したことを通知する「原点復帰コマンド応答」を送信する(S517)。
Next, the
次に、通信プロセス226は、原点復帰完了を通知する「原点復帰応答」を要送信信号3100として信号伝達部310に送る(S520)。要送信信号3100を受信した信号伝達部310は、原点復帰完了を通知する「原点復帰応答」を要受信信号3200として管理プロセス224に送る(S521)。これにより、管理プロセス224は、外部機器が原点復帰したことを知る。
Next, the
次に、管理プロセス224は、原点復帰ボタン処理の完了を通知する「復帰ボタン応答」を要送信信号3100として信号伝達部310に送る(S522)。要送信信号3100を受信した信号伝達部310は、原点復帰ボタン処理の完了を通知する「復帰ボタン応答」を要受信信号3200として画面処理プロセス222に送る(S523)。これにより、画面処理プロセス222は、原点復帰ボタンが押されたことに対する処理が完了したことを知り、例えばその旨を表示装置203に表示する。
Next, the
以上が、通常動作モードにおける信号伝達部310の伝達処理である。
なお、実際には、管理プロセス224は複数の原点復帰要求(S513)を発行する場合がある。例えば、X軸用原点復帰要求、Y軸用原点復帰要求、Z軸用原点復帰要求等を発行する場合が考えられる。
The above is the transmission processing of the
In practice, the
また、上記の信号伝達部310を介した制御信号のプロセス間通信の仕組みを、制御アプリケーション220に簡単に組み込む方法として、例えば、API(Application Programming Interface)としてメッセージを送受信する仕組みを提供することが考えられる。
Further, as a method for easily incorporating the above-described inter-process communication mechanism of the control signal via the
図6aは、要送信信号3100及び要受信信号3200を実装する、前記「復帰ボタン要求」及び前記「原点復帰要求」のAPIの例である、ReqApi3101を示す。
FIG. 6 a
このReqApi3101は、引数としてイベント種別3102、発行元ID3104、最終発行先ID3106及びイベント種別による引数3108(可変長)をとる。
The
イベント種別3102は、「ボタンが押された」「外部機器にコマンドを発行せよ」など、制御信号を用いて伝達したい内容を示す。
The
発行元ID3104は、制御信号の送り元である。発行元ID3104は、制御アプリケーション220内の一プロセスを示すIDである。
The
最終発行先ID3106は、制御信号の最終的な宛先である。最終発行先ID3106は、制御アプリケーション220内の別プロセスを示すIDである。
The final
イベント種別による引数3108は、必要に応じて、イベント種別3102固有の引数を指定する。例えば、「ボタンが押された」というイベント種別3102に対して、そのボタンが原点復帰ボタンであることを特定する場合等に用いる。
The
図6bは、要送信信号3100及び要受信信号3200を実装する、前記「復帰ボタン応答」及び前記「原点復帰応答」のAPIの例である、AnsApi3201を示す。
FIG. 6 b shows
このAnsApi3201は、引数としてイベント種別3202、発行元ID3204、最終発行先ID3206及びイベント種別による引数3208をとる。イベント種別3202、発行元ID3204、最終発行先ID3206及びイベント種別による引数3208は、ReqApi3101における、イベント種別3102、発行元ID3104、最終発行先ID3106及びイベント種別による引数3108と、それぞれ同じ意味を示す。
This
図7は、外部機器280が存在しない場合におけるデバッグ動作時(図4におけるS318)の制御信号の流れを示すシーケンス図である。
FIG. 7 is a sequence diagram showing the flow of control signals during the debugging operation (S318 in FIG. 4) when the
図7の動作シーケンスには、外部機器280が存在しない。よって、通常動作モードを用いると、信号伝達部310は通信プロセス226を介して外部機器280に対し原点復帰コマンドを発行することができない。そこで、制御アプリケーション220の開発者は、デバッグ動作モードを使用してデバッグを行うことができる。
The
図5同様に、「原点復帰ボタン」が押されたことを画面処理プロセス222が検知したとする。
Similarly to FIG. 5, it is assumed that the
画面処理プロセス222は、原点復帰ボタンが押されたことを通知する「復帰ボタン要求」を要送信信号3100として信号伝達部310に送る(S511)。要送信信号3100を受信した信号伝達部310は、原点復帰ボタンがおされたことを通知する「復帰ボタン要求」を要受信信号3200として管理プロセス224に送る(S512)。これにより、管理プロセス224は、原点復帰ボタンがおされたことを知る。
The
次に、管理プロセス224は、外部機器の原点復帰を指示する「原点復帰要求」を、要送信信号3100として信号伝達部310に送信する(S513)。 ここまでは、図5に示した通常動作モード同様の処理である。
Next, the
しかし、これ以降の通信プロセス226や外部機器280との通信はスキップされ(S514a、S515a、S517a、S520a)、従って外部機器280も原点復帰動作を行わない(S516)。
However, the
その後、信号伝達部310は、管理プロセス224に対して、原点復帰の完了を通知する「原点復帰応答」要受信信号3200として送る(S521)。以後、デバッグ支援装置300は、再び通常動作モードと同様の処理を行う(S522、S523)。
After that, the
以上のように、デバッグ動作モードでは、外部機器280と管理プロセス224との制御信号の送受信をスキップすることで、制御アプリケーション220の開発者は、手元に外部機器280が無くとも、制御アプリケーション220のプログラムを実行することができる。また必要があれば、制御アプリケーション220の開発者は、汎用のデバッガによる通常のデバッグ手法により、制御アプリケーション220をデバッグすることができる。
As described above, in the debug operation mode, by skipping transmission / reception of the control signal between the
デバッグ支援装置300は、伝達モードファイル322を参照し、通常動作モードとデバッグ動作モードの切り替えを行う。
The
図8は、本実施の形態における伝達モードファイル322のデータ構造の一例を示す図である。伝達モードファイル322の1列目には、検証条件ファイル382のファイル名が記載されている。伝達モードファイル322の2列目には、前記ファイル名が記載された検証条件ファイル382をデバッグ動作モードで用いるか否かを指定する。
FIG. 8 is a diagram showing an example of the data structure of the
本実施の形態では、検証条件ファイル名「第1ファイル」について、デバッグ動作モードが「1」と指定されている。よってデバッグ支援装置300は、「第1ファイル」をデバッグ動作モードの動作を決定するためのファイルとして使用する。具体的には、信号伝達部310が「第1ファイル」を読み込み(S317)使用する。なお、「デバッグ動作モード」の列が全て0に設定されていれば、デバッグ支援装置300は通常動作モードとして動作する。
In the present embodiment, the debug operation mode is designated as “1” for the verification condition file name “first file”. Therefore, the
図9は、検証条件ファイル382のデータ構造の一例を示す図である。検証条件ファイル382の各行には、要送信信号3100及び要受信信号3200のいずれか1つに対応するパターンが記載されている。
FIG. 9 is a diagram illustrating an example of the data structure of the
なお、信号伝達部310は通信プロセス226を介さずに外部機器280と通信を行っても良いが、その場合には、検証条件ファイル382の各行には、要送信信号3100及び要受信信号3200に加え、信号伝達部310から外部機器280へ送信される制御信号及び、信号伝達部310が外部機器280から受信する制御信号の、いずれか1つに対応するパターンが記載される。
Note that the
トリガ3822は、デバッグ動作モードにおける「トリガメッセージ」であるか否かを示す。トリガ3822に「1」が指定されれば、当該行はトリガメッセージのパターンを示す。
The
一方、応答3823には、デバッグ動作モードにおける「応答メッセージ」であるか否かを指定する。具体的には、応答3823に「1」が設定されれば、当該行は応答メッセージのパターンを示す。
On the other hand, the
デバッグ動作モードでは、信号伝達部310が管理プロセス224から要送信信号3100を受信した場合、受信した要送信信号3100がトリガメッセージのパターンに一致するかを信号伝達部310は確認する。
In the debug operation mode, when the
もし一致した場合には、トリガメッセージに対応する応答メッセージのパターンに相当する要受信信号3200を生成し、生成した要受信信号3200を管理プロセス224へ送信する。なお、一致しない場合には、信号伝達部310は、通常動作モードと同じ通常動作を行う。
If they match, a required
なお、トリガメッセージに対応する応答メッセージとは、例えば検証条件ファイル382において、1以上の連続したトリガメッセージの記載の直後に記載された、1以上の連続した応答メッセージのことである。
Note that the response message corresponding to the trigger message is, for example, one or more continuous response messages described immediately after the description of one or more continuous trigger messages in the
すなわち、トリガメッセージは要送信信号3100であり、応答メッセージは要受信信号3200である。
That is, the trigger message is a transmission required
種別3825は、該当する行が、要求信号であるか応答信号であるかを示す。
第1引数3824は、制御信号の送信元を示す。第2引数3826は、制御信号の送信先を示す。当該送信先には、制御信号の最終的な送り先を指定する。第3引数3828は、制御信号の内容を示す。例えば、図9の一行目は、管理プロセス224から信号伝達部310への、原点復帰の要求を内容とする要送信信号3100を示すパターンである。当該パターンは、トリガメッセージとして指定されている。
The
The
Log3830は、伝達履歴記録部340が信号の送受信履歴を記録するか否かを指定する。
Log3830に「1」が指定された場合には、「1」が指定された行以降の信号伝達部310が送受信する全ての要送信信号3100及び要受信信号3200について伝達履歴記録部340は、信号の送受信履歴を記録する。
When “1” is specified in the
また、Log3830に「1」が指定された行以降で、Log3830に「2」が指定された場合には、「2」が指定された行以降の信号伝達部310が送受信する全ての要送信信号3100及び要受信信号3200について伝達履歴記録部340は、信号の送受信履歴の記録は行わない。
In addition, when “1” is specified in
Log3830に「3」が設定された場合、当該「3」が設定された行に記載されたパターンに一致する要送信信号3100を信号伝達部310が受信した場合には、信号伝達部310は、その時刻等を伝達履歴記録部340に記録する。信号伝達部310が前記パターンに一致する要受信信号3200を送信した場合も同様に、信号伝達部310は、その時刻等を伝達履歴記録部340に記録する。
When “3” is set in the
なお、Log3830に「4」以上の数を指定することで、信号伝達部310が送受信する要送信信号3100及び要受信信号3200のうち伝達履歴記録部340が記録するものを、ユーザがプログラマブルに指定することも考えられる。
In addition, by specifying a number of “4” or more in
なお、Log3830に空白又は「0」を指定すると、伝達履歴記録部340は記録を行わない。
If a blank or “0” is specified for
実行3832は、デバッグ動作モードにおける制御信号の伝達可否を指定する。
トリガメッセージであれば、信号伝達部310が通常の処理を行うか(「1」が指定する)否か(「0」を指定する)を指定する。
If it is a trigger message, it is specified whether or not the
応答メッセージであれば、要受信信号3200を生成するか(「1」を指定する)否か(「0」を指定する)を指定する。 If it is a response message, it is specified whether to generate the reception required signal 3200 (specify “1”) or not (specify “0”).
Wait3834は、応答メッセージについて指定した場合には、トリガメッセージに一致する要送信信号3100を受信してから、対応する応答メッセージを要受信信号3200として送信するまでの待機時間を指定する。
When the response message is designated, the
一方、Wait3834をトリガメッセージについて指定した場合には、指定した時間以上待ってもトリガメッセージを受信しなかった場合には、信号伝達部310にデバッグイベントを発生させるために用いる。
On the other hand, when
図9の例では、デバッグ動作モードにおいて、信号伝達部310がトリガメッセージに一致する要送信信号3100を管理プロセス224から受信した場合、信号伝達部310は、通信プロセス226から管理プロセス224への要受信信号3200を生成する。さらに、要送信信号3100を受信してから3秒間待機した後、信号伝達部310は生成した要受信信号3200を管理プロセス224へ送信する。
In the example of FIG. 9, in the debug operation mode, when the
Debug3836から、第3比較3846については、引き続き、図10を用いて説明する。
From
図10は、図9と同様、検証条件ファイル382の記載例を示す。図10の各列の意味は、同じ符号が付けられた図9と同一である。なお、説明のために識別子3821を再左列に追加している。
FIG. 10 shows a description example of the
Debug3836は、当該行に記載のデバッグパターンに一致した場合に、ユーザにデバッグイベントの発生を通知するか(「1」を指定する)、否か(「0」を指定する)を指定する。また、「2」を指定すると、引数の内容を修正するダイアログボックスが表示される。デバッグパターンは、順序3837から第3比較3846を用いて指定する。
順序3837は、トリガメッセージの順序を指定する。順序の指定の仕方としては、正常条件として指定する方法と、異常条件として指定する方法の2つが考えられる。
正常条件として順序を指定した場合には、信号伝達部310が、指定した正常条件に一致しない順序で信号を送受信した場合には、ユーザに異常が発生したことをデバッグイベントとして知らせる。
When the order is designated as a normal condition, when the
一方、異常条件として順序を指定した場合には、信号伝達部310が、指定した異常条件に一致する順序で信号を送受信した場合には、ユーザに異常が発生したことをデバッグイベントとして知らせる。なお、「*」が指定されている場合には、順序は考慮されない。
On the other hand, when the order is specified as the abnormal condition, when the
連続性3838は、正常条件として、指定された信号の送受信が連続して行われるべきか(「1」を指定)否か(空欄)を指定する。
The
回数3840は、当該行の制御信号の送受信回数を指定する。具体的には、当該欄に指定された回数以上、信号伝達部310が信号の送受信を行った場合には、ユーザにデバッグイベントを通知する。
The number of
第1比較3842から第3比較3846は、比較方法及び比較内容を指定することで、要送信信号3100又は要受信信号3200にオプションとして指定されうる補足的引数と比較される。比較方法として「1」が指定されれば同値を、「2」が指定されれば小なりを、「3」が指定されれば大なりを、「4」が指定されれば以下を、「5」が指定されれば以上を、「6」が指定されれば不一致を、それぞれ表す。
The
上記のように数字で指定された比較方法により、信号伝達部310は、第1比較3842から第3比較3846に記載された比較内容と、要送信信号3100又は要受信信号3200にオプションとして指定されうる第4引数から第6引数とを、それぞれ比較する。条件を満たした場合には、ユーザにデバッグイベントを通知する。
As described above, the
なお、デバッグイベントの発生時には、ユーザに通知することに加え、信号伝達部310が事前に定められた内部処理や外部の関数を呼び出すことで付加的な処理を行うことも考えられる。例えば、デバッグパターンに一致した要送信信号3100に、第4引数としてポインタ情報(メモリ内のアドレス値)が含まれていた場合を考える。ポインタ情報はプログラムを実行時に動的に定まる値であるため、デバッグ目的で再実行した場合、前回のポインタ情報は意味をなさない。よって、デバッグイベントの発生時に、信号伝達部310が付加的な処理を実行することで、ポインタ情報で示されたアドレスに格納されているデータの実体(具体的には、画像データや測定データ)を、別途静的なメモリ領域やファイルに保存することが考えられる。
When a debug event occurs, in addition to notifying the user, the
図11は、図10に示した検証条件ファイル382に対応する、信号伝達部310の処理の流れを示すフローチャートである。なお、検証条件ファイル382は外部から設定することができる。
FIG. 11 is a flowchart illustrating a processing flow of the
まず、Log3830欄に1が指定されているため、伝達履歴記録部340は信号の送受信の記録を開始する(S604)。
First, since 1 is specified in the
次に、信号伝達部310は、トリガメッセージのパターンを待ち受ける。
仮に、識別子aのパターンをもつトリガメッセージを信号伝達部310が受信したとする(S608)。ここで、トリガメッセージa及びbの順序3837には、それぞれ1及び2が指定されている。また、トリガメッセージa及びbの連続性3838には、いずれも1が指定されている。よって、トリガメッセージaの次に、必ずトリガメッセージbが受信されなければならない。
Next, the
Suppose that the
従って、トリガメッセージaの次に、識別子bのトリガメッセージを信号伝達部310が受信すれば(S610でYes)、信号伝達部310は管理プロセス224を最終的な宛先として、応答メッセージcを送信する(S616)。さらに、信号伝達部310は管理プロセス224を最終的な宛先として、応答メッセージdを送信する(S618)。
Therefore, if the
その際、応答メッセージc及びdのWait3834に「3」が指定されているため、信号伝達部310は、応答メッセージc及びdの送信前に3秒間待つ(S614)。
At this time, since “3” is designated in the
また、トリガメッセージaの次に、トリガメッセージbを信号伝達部310が受信しなければ(S610でNo)、トリガメッセージbのDebug3836に「1」が指定されているため、信号伝達部310はユーザにデバッグイベントの発生を通知する(S612)。
If the
なお、トリガメッセージa及びbの実行3832には、いずれも「0」が指定されている。従って、信号伝達部310は、トリガメッセージa及びbを、その第2引数で指定された最終的な宛先である通信プロセス226へ送らない。
It should be noted that “0” is designated for the
また、応答メッセージc及びdの実行3832には、いずれも「1」が指定されている。従って、信号伝達部310は、応答メッセージc及びdを、その第2引数で指定された最終的な宛先である管理プロセス224へ、要受信信号3200として送る。
In addition, “1” is designated in the
以上説明したように、本実施の形態によると、デバッグ動作モードを使用することで、制御アプリケーション220内の管理プロセス224と外部機器280との信号の送受信を模擬することができる。従って、制御アプリケーション220を外部機器280と接続せずに、制御アプリケーション220が行う制御信号の送受信処理までを考慮したデバッグを行うことができる。
As described above, according to the present embodiment, signal transmission / reception between the
さらに、事前に検証条件を与えることにより、制御アプリケーション220と外部機器280との間で送受信される信号のうち、特定の信号の送受信を模擬することができる。したがって、例えば、外部機器280と制御アプリケーション220を実際に接続してデバッグを行う場合に、複数回の信号のうち、不具合が発生する信号と発生しない信号を容易に切り分けることができる。
Furthermore, by giving a verification condition in advance, transmission / reception of a specific signal among signals transmitted / received between the
また、制御アプリケーション220と外部機器280との間で特定の異常パターンに一致する信号が送受信された場合には、ユーザに通知することができる。したがって、異常な信号の発生パターンを監視し、不具合要因の解明を効率化することができる。
In addition, when a signal matching a specific abnormality pattern is transmitted and received between the
次に、本発明の第2の実施の形態について図面を用いて説明する。
図12は、本発明に係るデバッグ支援装置300の他の実施の形態における処理の流れを示すフローチャートである。
Next, a second embodiment of the present invention will be described with reference to the drawings.
FIG. 12 is a flowchart showing the flow of processing in another embodiment of the
本実施の形態では、通常動作モードであっても常に伝達履歴記録部340に信号伝達部310の処理を記録する(S704)。
In the present embodiment, the process of the
また、制御アプリケーション220からの不具合発生を通知するイベントである「例外イベント」が通知されたか否かを、デバッグ支援装置300は定期的に判定する(S706)。
Further, the
今、制御アプリケーション220の実行に不具合が発生したため、制御アプリケーション220からデバッグ支援装置300へ例外イベントが通知されたとする(S706でYes)。その場合、検証条件生成部360は、例外イベントが通知された時刻を取得し(S708)、伝達履歴記録部340から履歴ファイル342を読み込む(S710)。
Now, it is assumed that an exception event is notified from the
さらに、検証条件生成部360は、履歴ファイル342から、前記例外イベントが通知された時刻の前後適切な付近の履歴を切り出し、検証条件ファイル382の雛形を作成する(S711)。
Further, the verification
その結果、検証条件ファイル382の雛形は、例えば、信号伝達部310による要送信信号3100の受信と、その要送信信号3100に対応する要受信信号3200の送信のパターンを再現するように生成される。
As a result, the template of the
また、検証条件生成部360は表示装置203にGUI画面を表示し、ユーザから検証条件ファイル382の修正条件を取得する(S712)。
In addition, the verification
最後に、前記取得した修正条件を元に、前記検証条件ファイル382の雛形を修正し、最終的な検証条件ファイル382を生成する(S714)。
Finally, based on the acquired correction condition, the template of the
これにより、ユーザは自ら検証条件ファイル382を作成せずとも、不具合発生後直ちに作成される上記検証条件ファイル382を使用することで、不具合の効率的な再現及びデバッグを行うことができる。
As a result, the user can efficiently reproduce and debug the defect by using the
図13は、本発明の実施の形態における履歴ファイル342の一例を示す図である。
履歴ファイル342は、時刻802、第1引数806、第2引数808及び第3引数810を含む。
FIG. 13 is a diagram showing an example of the
The
時刻802は、信号伝達部310によって要送信信号3100又は要受信信号3200が処理された時刻を示す。時刻の表記形式は、例えば特定時刻からの経過時間又は日時等を用いることが考えられる。
A
第1引数806、第2引数808及び第3引数810は、それぞれ送信元、最終的な送信先、及び要送信信号3100又は要受信信号3200の内容を示す。
The
例えば、図13の第一行目は、デバッグ支援装置300の起動時から100秒経過後に、信号伝達部310が要送信信号3100を受信したことを示す。又、その送信元は画面処理プロセス222であり、最終的な宛先は管理プロセス224であり、内容は復帰ボタンが押されたことを通知するものである。
For example, the first line in FIG. 13 indicates that the
なお、要送信信号3100及び要受信信号3200が追加の引数をとった際には、履歴ファイル342も追加の引数を記録する。引数として想定されるものは、例えば、実行時の変数や関数の先頭アドレスを示すメモリ上のアドレス値や、プログラムの内部状態を示す変数値等が考えられる。
When the transmission required
図14は、本発明の実施の形態における検証条件ファイル382の雛形(図12、S711で作成されるもの)の一例を示す図である。 FIG. 14 is a diagram showing an example of a template of the verification condition file 382 (created in FIG. 12, S711) in the embodiment of the present invention.
当該雛形のうち、第1引数806から第3引数810の列は、図13に示した履歴ファイル342の同符号を付した列と同一である。
Among the templates, the columns from the
例えば、デバッグ支援装置300が起動して300秒経過後に不具合が発生し、発生時刻から300秒前までの履歴ファイル342から検証条件ファイルの雛形が作成されるとする。
For example, it is assumed that a failure occurs 300 seconds after the
検証条件生成部360は、まず図13に示す履歴ファイル342のうち、時刻802が300秒から0秒までに含まれる履歴を取り出す。
First, the verification
次に、履歴ファイル342を検証条件ファイル382の形式に整形する。具体的には、時刻802を削除し、トリガ3822、応答3823、及びLog3830から第3比較3846までを追加する。
Next, the
こうして生成されたファイルが、図14に示す、検証条件ファイル382の雛形である。
The file generated in this way is a template of the
図15は、検証条件ファイル382の雛形の修正条件をユーザから取得する(S712)GUI画面の一例である。
FIG. 15 is an example of a GUI screen for acquiring the template correction conditions of the
画面には、不具合の発生時刻を用いて履歴ファイル342から自動生成された(図12、S711)検証条件ファイル382の雛形が表示される。
On the screen, a model of the
これに加え、最左列に選択3820欄と時刻802が表示される。
In addition, a
選択3820欄は例えばチェックボックスとなっており、選択3820欄にチェックを付け、右下の出力ボタン3847を押すと、選択された行のデバッグパターンのみを含む検証条件ファイル382が生成される(S714)。
The
こうして、履歴ファイル342に記録された履歴のうち、ユーザにより指定された期間に含まれる履歴から、その履歴に含まれる、信号伝達部310による要送信信号3100及び要受信信号3200の送受信のパターンを再現するように、検証条件ファイル382を生成することができる。
Thus, from the history recorded in the
時刻802は、前記雛形を作成する際、履歴ファイル342を検証条件ファイル382の形式にあわせるために削除した(S711)時刻を再度追加したものである。具体的には、信号伝達部310によって要送信信号3100又は要受信信号3200が処理された時刻である。
トリガ3822欄から第3引数3846欄までは、例えばマウスで選択することにより、その内容を修正することができる。例えば、順序3837、連続性3838、回数3840等を各送受信パターンに指定し、又変更することができる。
The contents from the
以上の操作により、制御アプリケーション220の開発者は信号伝達部310における信号の送受信パターンを特定した検証条件ファイル382を容易に作成することができる。また制御アプリケーション220の開発者は、前記検証条件ファイル382を使用し、デバッグ支援装置300をデバッグモードで動作させることで、不具合箇所の特定を容易に行うことができる。
With the above operation, the developer of the
以上説明したように、本実施の形態に係るデバッグ支援装置300は、不具合発生時における制御アプリケーション220と外部機器280との間で送受信された信号に基づき、異常パターンを記載した検証条件ファイルを作成することができる。したがって、制御アプリケーション220の開発者は不具合の発生原因を効率的に切り分けることができる。
As described above, the
以上、本発明に係るデバッグ支援装置について、実施の形態を用いて説明したが、本発明は、本実施の形態に限定されるものではない。 As described above, the debugging support apparatus according to the present invention has been described using the embodiment, but the present invention is not limited to the present embodiment.
例えば、第1及び第2の実施の形態において、制御アプリケーション220上で動作する、管理プロセス224と、管理プロセス224以外の任意の1以上のプロセスとの通信を、信号伝達部310を介した要送信信号3100及び要受信信号3200を用いて行うこともできる。さらに、管理プロセス224以外の任意の2以上のプロセス間の通信を、信号伝達部310を介した要送信信号3100及び要受信信号3200を用いて行うこともできる。
For example, in the first and second embodiments, communication between the
これにより、制御アプリケーション220を構成するプロセス毎に独立したプログラム開発を行うことができる。その結果、長期間にわたる開発及び保守作業を行っても、制御アプリケーション220が、プログラム内の構造が複雑に入り組んだ「スパゲッティプログラム」となりにくい、という利点が生じる。
Thereby, independent program development can be performed for each process constituting the
また、第2の実施形態では伝達履歴記録部340から読み込んだ履歴ファイル342を修正して検証条件ファイル382を生成したが、読み込んだ履歴ファイル342をそのまま使用して、検証条件ファイル382を生成(図12において、S704、S706、S710、S714のみを実行)しても良い。その場合、制御アプリケーション220と外部機器280との間で過去に送受信された信号を模擬することができる。したがって、例えば制御アプリケーション220や外部機器280を変更した場合に、過去の稼働状態に基づいた動作テストを行うことができる。
In the second embodiment, the
また第2の実施形態では、履歴ファイル342から検証条件ファイル382を生成するために、ユーザはGUI画面に表示された選択用チェックボックスを用いて時刻を入力した(図15)。しかし、チェックボックスに替わり、ユーザがマウスによるドラッグ操作やキーボードによる数値入力を行うことにより、履歴ファイル342の一部を選択してもよい。
In the second embodiment, in order to generate the
また、履歴ファイル342からではなく別の方法で検証条件ファイル382を作成してもよい。
Further, the
なお、検証条件生成部360が、制御アプリケーション220の実行に不具合が生じた時刻に応じて、履歴から検証条件ファイルを生成する方法には、不具合が生じた時刻の前後を切り出す方法の他に、例えば、不具合が発生した時刻より一定時間前のみを切り出す方法や、不具合が発生した時刻より一定時間後のみを切り出す方法等が考えられる。
The verification
なお、検証条件ファイル382に記載するトリガメッセージ及びトリガメッセージに対応する応答メッセージの組は、1の検証条件ファイル382に1組のみ記載してもよく、複数記載してもよい。1の検証条件ファイル382に1組のみ記載する場合には、トリガメッセージに一致する要送信信号3100を受信した信号伝達部310は、指定時間が経過するか、別途指定したパターンの制御信号を受信するまで処理を停止してもよい。この場合、指定時間が経過した場合には、信号伝達部310はその旨をユーザに通知する。
Note that only one set or a plurality of sets of trigger messages and response messages corresponding to the trigger messages described in the
なお、デバッグ動作モードは、制御アプリケーション220内の、異なるプロセス間で行う信号の送受信に対して適用しても良い。例えば、原点復帰ボタンが押されていなくとも、当該ボタンが押されたことを内容とする要送信信号3100が画面処理プロセス222からあったものとして、信号伝達部310から管理プロセス224へ要受信信号3200を送っても良い。この場合、画面処理プロセス222が未完成であっても、管理プロセス224や通信プロセス226の動作検証を行うことができる。
The debug operation mode may be applied to transmission / reception of signals between different processes in the
また、上記実施の形態1から2に係るデバッグ支援装置300に含まれる各処理部は集積回路であるLSIとして実現されてもよい。これらは個別に1チップ化されてもよいし、一部又はすべてを含むように1チップ化されてもよい。
Further, each processing unit included in the
ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。 The name used here is LSI, but it may also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration.
また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。 Further, the circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor. An FPGA (Field Programmable Gate Array) that can be programmed after manufacturing the LSI or a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて各処理部の集積化を行ってもよい。バイオ技術の適用等が可能性として考えられる。 Further, if integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out integration of processing units using that technology. Biotechnology can be applied.
さらに、本発明はプログラムであってもよいし、上記プログラムが記録された記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。 Furthermore, the present invention may be a program or a recording medium on which the program is recorded. Needless to say, the program can be distributed via a transmission medium such as the Internet.
また、上記実施の形態1から2に係る、デバッグ支援装置及びその変形例の機能のうち少なくとも一部を組み合わせてもよい。 Moreover, you may combine at least one part among the functions of the debugging assistance apparatus which concerns on the said Embodiment 1-2, and its modification.
また、上記で用いた数字は、すべて本発明を具体的に説明するために例示するものであり、本発明は例示された数字に制限されない。また、構成要素間の接続関係は、本発明を具体的に説明するために例示するものであり、本発明の機能を実現する接続関係はこれに限定されない。 Moreover, all the numbers used above are illustrated to specifically describe the present invention, and the present invention is not limited to the illustrated numbers. In addition, the connection relationship between the components is exemplified for specifically explaining the present invention, and the connection relationship for realizing the function of the present invention is not limited to this.
さらに、以下の実施の形態は、ハードウェア及び/又はソフトウェアを用いて構成されるが、ハードウェアを用いる構成は、ソフトウェアを用いても構成可能であり、ソフトウェアを用いる構成は、ハードウェアを用いても構成可能である。 Furthermore, although the following embodiments are configured using hardware and / or software, the configuration using hardware can also be configured using software, and the configuration using software uses hardware. Can be configured.
また、上記デバッグ支援装置の構成は、本発明を具体的に説明するために例示するためのものであり、本発明に係るデバッグ支援装置は、上記構成の全てを必ずしも備える必要はない。言い換えると、本発明に係るデバッグ支援装置300は、本発明の効果を実現できる最小限の構成のみを備えればよい。
The configuration of the debug support apparatus is for illustrating the present invention in detail, and the debug support apparatus according to the present invention is not necessarily provided with all of the above configurations. In other words, the
例えば、第1及び第2の実施形態で、制御アプリケーション220は画面処理プロセス222を有さずとも良い。その場合、管理プロセス224は事前に定められたバッチファイルに従って、外部機器280の制御を行う。
For example, in the first and second embodiments, the
さらに、制御アプリケーション220は通信プロセス226を有さずとも良い。その場合、信号伝達部310は外部機器280と直接制御信号の送受信を行う。
Further, the
具体的には、信号伝達部310は、通常動作モードでは、管理プロセス224から外部機器280へ送信される、外部機器280の動作を指示する要送信信号3100を、原点復帰コマンドに相当する制御信号として外部機器280へ伝達する。
Specifically, in the normal operation mode, the
次に、信号伝達部310は、外部機器280から管理プロセス224へ送信される、外部機器280による原点復帰コマンドの完了通知を、外部機器280の原点復帰完了を通知する要受信信号3200として管理プロセス224へ伝達する。
Next, the
一方、デバッグ動作モードは、信号伝達部310は、管理プロセス224から外部機器280へ送信される、外部機器280の動作を指示する要送信信号3100を受信した場合に、外部機器280の原点復帰完了を通知する要受信信号3200を信号伝達部310は生成し、生成した要受信信号3200を管理プロセス224へ送信することにより、外部機器280が接続されている場合と同じ動作を信号伝達部310は管理プロセス224に擬似的に行わせることができる。
On the other hand, in the debug operation mode, when the
なお、デバッグ支援装置300は、さらに、伝達履歴記録部340、検証条件生成部360及び検証条件保持部380を有さずとも良い。その場合、デバッグ動作モード時に、外部機器280の制御を目的とする信号を管理プロセス224から信号伝達部310が受信した場合は常に、信号伝達部310は、当該信号を外部機器280には送らずに、当該信号に対応する外部機器280からの応答信号を、管理プロセス224に送信すること等が考えられる。
Note that the
さらに、デバッグ支援装置300は、伝達モード切替部320を有さずとも良い。その場合、デバッグ支援装置300は常に通常動作モード又はデバッグ動作モードで起動することが考えられる。
Furthermore, the
同様に、上記のデバッグ支援装置によるデバッグ支援方法は、本発明を具体的に説明するために例示するためのものであり、本発明に係るデバッグ支援装置によるデバッグ支援方法は、上記ステップの全てを必ずしも含む必要はない。言い換えると、本発明に係るデバッグ支援方法は、本発明の効果を実現できる最小限のステップのみを含めばよい。また、上記のステップが実行される順序は、本発明を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。 Similarly, the debug support method by the debug support apparatus is for illustrating the present invention in detail, and the debug support method by the debug support apparatus according to the present invention includes all of the above steps. It is not always necessary to include it. In other words, the debugging support method according to the present invention needs to include only the minimum steps that can realize the effects of the present invention. In addition, the order in which the above steps are executed is for illustration in order to specifically describe the present invention, and may be in an order other than the above. Also, some of the above steps may be executed simultaneously (in parallel) with other steps.
更に、本発明の主旨を逸脱しない限り、本実施の形態に対して当業者が思いつく範囲内の変更を施した各種変形例も本発明に含まれる。 Further, various modifications in which the present embodiment is modified within the scope conceivable by those skilled in the art are also included in the present invention without departing from the gist of the present invention.
本発明は、外部機器と制御用信号を送受信するアプリケーションにおけるデバッグ支援装置等に適用できる。 The present invention can be applied to a debugging support apparatus or the like in an application that transmits and receives control signals to and from an external device.
100 機械制御システム
200 制御装置
201 CPU
202 メモリ
203 表示装置
204 ストレージ
205 入力装置
206 通信I/F
220 制御アプリケーション
222 画面処理プロセス
224 管理プロセス
226 通信プロセス
280 外部機器
300 デバッグ支援装置
310 信号伝達部
320 伝達モード切替部
322 伝達モードファイル
340 伝達履歴記録部
342 履歴ファイル
360 検証条件生成部
380 検証条件保持部
382 検証条件ファイル
3100 要送信信号
3200 要受信信号
100
202
220
Claims (15)
前記制御アプリケーションは、前記外部機器の動作を制御する管理プロセスを含み、
前記管理プロセスから前記外部機器へ送信される、前記外部機器の動作を指示する第1の制御信号を前記外部機器へ伝達し、前記外部機器から前記管理プロセスへ送信される、前記第1の制御信号に応答して前記外部機器が動作した結果を示す第1の応答信号を前記管理プロセスへ伝達する通常動作モードと、
前記第1の制御信号を受信した場合に、前記第1の応答信号を生成し、生成した前記第1の応答信号を前記管理プロセスへ送信することにより、前記外部機器が接続されている場合と同じ動作を前記管理プロセスに擬似的に行わせるデバック動作モードと、を有する信号伝達部を備える
デバッグ支援装置。 A debugging support device that supports debugging of a control application that controls an external device,
The control application includes a management process for controlling the operation of the external device,
The first control transmitted from the management process to the external device is transmitted to the external device and a first control signal for instructing the operation of the external device is transmitted to the management process. A normal operation mode in which a first response signal indicating a result of the operation of the external device in response to the signal is transmitted to the management process;
When the first control signal is received, the first response signal is generated, and the generated first response signal is transmitted to the management process, whereby the external device is connected. A debugging support apparatus comprising: a signal transmission unit having a debug operation mode for causing the management process to perform the same operation in a pseudo manner.
前記第1の制御信号の第1種別と、当該第1種別に対応する前記第1の応答信号の第2種別とを示す検証条件を保持する検証条件保持部を備え、
前記信号伝達部は、前記デバック動作モードにおいて、前記検証条件に示される第1種別の前記第1の制御信号を前記管理プロセスから受信した場合、当該第1種別に対応する前記第2種別の前記第1の応答信号を生成し、生成した前記第1の応答信号を前記管理プロセスへ送信する
請求項1記載のデバック支援装置。 The debugging support device further includes:
A verification condition holding unit that holds verification conditions indicating a first type of the first control signal and a second type of the first response signal corresponding to the first type;
When the signal transmission unit receives the first control signal of the first type indicated in the verification condition from the management process in the debug operation mode, the second type of the second type corresponding to the first type The debugging support apparatus according to claim 1, wherein a first response signal is generated, and the generated first response signal is transmitted to the management process.
前記信号伝送部は、前記デバック動作モードにおいて、前記検証条件に示される第1種別の前記第1の制御信号を前記管理プロセスから受信した場合、当該第1種別に対応する前記第2種別の前記第1の応答信号を生成し、前記第1種別の第1の制御信号を受信してから前記待機時間分待機した後、生成した前記第2種別の前記第1の応答信号を前記管理プロセスへ送信する
請求項2記載のデバック支援装置。 The verification condition includes a waiting time;
When the signal transmission unit receives the first control signal of the first type indicated in the verification condition from the management process in the debug operation mode, the second type of the second type corresponding to the first type After generating the first response signal and waiting for the waiting time after receiving the first control signal of the first type, the generated first response signal of the second type is sent to the management process. The debugging support device according to claim 2 to be transmitted.
前記信号伝達部が伝達した前記第1の制御信号及び前記第1の応答信号の履歴を記録する伝達履歴記録部と、
前記伝達履歴記録部に記録された前記履歴から、前記履歴に含まれる第1の制御信号及び前記第1の応答信号の送受信のパターンを再現するように前記検証条件を生成する検証条件生成部とを備える
請求項2又は3に記載のデバッグ支援装置。 The debugging support device further includes:
A transmission history recording unit for recording a history of the first control signal and the first response signal transmitted by the signal transmission unit;
A verification condition generation unit that generates the verification condition so as to reproduce a transmission / reception pattern of the first control signal and the first response signal included in the history from the history recorded in the transmission history recording unit; The debugging support apparatus according to claim 2 or 3.
請求項4記載のデバッグ支援装置。 The verification condition generation unit is configured to transmit and receive a first control signal and a first response signal included in the history from the history in a first period corresponding to a time when the execution of the control application has failed. The debugging support apparatus according to claim 4, wherein the verification condition is generated so as to reproduce.
請求項5記載のデバック支援装置。 The verification condition generation unit acquires the first period specified by a user, and transmits and receives the first control signal and the first response signal included in the history from the acquired history of the first period. The debugging support apparatus according to claim 5, wherein the verification condition is generated so as to reproduce the pattern.
前記信号伝達部は、前記第1の制御信号及び前記第1の応答信号を送受信したパターンが前記異常条件に一致する場合に、異常が発生したことをユーザに通知する
請求項2〜6のいずれか1項に記載のデバッグ支援装置。 The verification condition further includes an abnormal condition indicating a transmission / reception pattern of the first control signal and the first response signal,
The signal transmission unit notifies the user that an abnormality has occurred when a pattern in which the first control signal and the first response signal are transmitted and received matches the abnormal condition. The debugging support device according to claim 1.
前記信号伝達部は、前記検証条件に含まれる第3種別の、前記第1の制御信号又は前記第1の応答信号を、前記受信回数分受信した場合に、異常が発生したことをユーザに通知する
請求項2〜6のいずれか1項に記載のデバック支援装置。 The verification condition further includes a third type of the first control signal or the first response signal, and the number of receptions corresponding to the third type,
The signal transmission unit notifies the user that an abnormality has occurred when the third type of the first control signal or the first response signal included in the verification condition is received for the number of times received. The debugging support apparatus according to any one of claims 2 to 6.
前記信号伝達部は、前記第1の制御信号及び前記第1の応答信号を送受信したパターンが前記正常条件に一致しない場合に、異常が発生したことをユーザに通知する
請求項2〜6のいずれか1項に記載のデバッグ支援装置。 The verification condition further includes a normal condition indicating a transmission / reception pattern of the first control signal and the first response signal,
The signal transmission unit notifies the user that an abnormality has occurred when a pattern in which the first control signal and the first response signal are transmitted and received does not match the normal condition. The debugging support device according to claim 1.
前記複数の第1のプロセスは、互いに前記信号伝達部を介して信号の送受信を行う、
請求項1〜9のいずれか1項に記載のデバッグ支援装置。 The control application includes a plurality of first processes including the management process;
The plurality of first processes transmit and receive signals to and from each other via the signal transmission unit.
The debugging support device according to any one of claims 1 to 9.
通常動作モード時には、前記複数の第1のプロセスに含まれる第2のプロセスから、前記複数の第1のプロセスに含まれる第3のプロセスへ送信される、前記第3のプロセスの処理を指示する第2の制御信号を前記第3のプロセスへ伝達し、前記第3のプロセスから前記第2のプロセスへ送信される、前記第2の制御信号に応答して前記第3のプロセスが処理した結果を示す第2の応答信号を前記第2のプロセスへ伝達し、
デバッグモード時には、前記第2の制御信号を受信した場合に、前記第2の応答信号を生成し、生成した前記第2の応答信号を前記第2のプロセスへ送信することにより、前記第3のプロセスが停止している場合であっても、前記第3のプロセスが実行されている場合と同じ動作を前記第2のプロセスに擬似的に行わせる、
請求項10に記載のデバッグ支援装置。 The signal transmission unit is
In the normal operation mode, the second process included in the plurality of first processes is instructed to process the third process transmitted to the third process included in the plurality of first processes. A result of processing by the third process in response to the second control signal transmitted to the third process from the third process and transmitted to the second process from the third process; Transmitting a second response signal indicative of: to the second process;
In the debug mode, when the second control signal is received, the second response signal is generated, and the generated second response signal is transmitted to the second process. Even if the process is stopped, the second process is caused to perform the same operation as when the third process is executed.
The debugging support apparatus according to claim 10.
前記通常動作モードにおいて、
前記信号伝達部は、前記管理プロセスから送信された前記第1の制御信号を前記通信プロセスへ伝達し、
前記通信プロセスは、伝達された前記第1の制御信号を、前記外部機器が解釈可能な形式に変換し、変換された前記第1の制御信号を前記外部機器へ送信し、
前記通信プロセスは、前記外部機器から送信される前記変換された第1の制御信号に応答して前記外部機器が動作した結果を示す第1の応答信号を、前記管理プロセスが解釈可能な形式に変換し、変換された前記第1の応答信号を前記信号伝達部へ送信し、
前記信号伝達部は、前記通信プロセスから送信された前記変換された第1の応答信号を前記管理プロセスへ伝達する、
請求項10又は11に記載のデバック支援装置。 The plurality of first processes includes a communication process for communicating with the external device,
In the normal operation mode,
The signal transmission unit transmits the first control signal transmitted from the management process to the communication process;
The communication process converts the transmitted first control signal into a format interpretable by the external device, and transmits the converted first control signal to the external device,
In the communication process, a first response signal indicating a result of operation of the external device in response to the converted first control signal transmitted from the external device is converted into a format that can be interpreted by the management process. Converting, and transmitting the converted first response signal to the signal transmission unit,
The signal transmission unit transmits the converted first response signal transmitted from the communication process to the management process;
The debugging support apparatus according to claim 10 or 11.
請求項10〜12のいずれか1項に記載のデバック支援装置。 The plurality of first processes include a screen processing process for a user to perform an input operation.
The debugging support apparatus according to any one of claims 10 to 12.
前記制御アプリケーションは、前記外部機器の動作を制御する管理プロセスを含み、
前記管理プロセスから前記外部機器へ送信される、前記外部機器の動作を指示する第1の制御信号を前記外部機器へ伝達し、前記外部機器から前記管理プロセスへ送信される、前記第1の制御信号に応答して前記外部機器が動作した結果を示す第1の応答信号を前記管理プロセスへ伝達する通常動作モードと、
前記第1の制御信号を受信した場合に、前記第1の応答信号を生成し、生成した前記第1の応答信号を前記管理プロセスへ送信することにより、前記外部機器が接続されている場合と同じ動作を前記管理プロセスに擬似的に行わせるデバック動作モードと、を有する信号伝達ステップを含む、
デバッグ支援方法。 A debugging support method for supporting debugging of a control application for controlling an external device,
The control application includes a management process for controlling the operation of the external device,
The first control transmitted from the management process to the external device is transmitted to the external device and a first control signal for instructing the operation of the external device is transmitted to the management process. A normal operation mode in which a first response signal indicating a result of the operation of the external device in response to the signal is transmitted to the management process;
When the first control signal is received, the first response signal is generated, and the generated first response signal is transmitted to the management process, whereby the external device is connected. A debugging operation mode for causing the management process to perform the same operation in a simulated manner,
Debugging support method.
前記制御アプリケーションは、前記外部機器の動作を制御する管理プロセスを含み、
前記管理プロセスから前記外部機器へ送信される、前記外部機器の動作を指示する第1の制御信号を前記外部機器へ伝達し、前記外部機器から前記管理プロセスへ送信される、前記第1の制御信号に応答して前記外部機器が動作した結果を示す第1の応答信号を前記管理プロセスへ伝達する通常動作モードと、
前記第1の制御信号を受信した場合に、前記第1の応答信号を生成し、生成した前記第1の応答信号を前記管理プロセスへ送信することにより、前記外部機器が接続されている場合と同じ動作を前記管理プロセスに擬似的に行わせるデバック動作モードと、を有する信号伝達ステップを、
コンピュータに実行させるためのプログラム。 A debugging support method program for supporting debugging of a control application for controlling an external device,
The control application includes a management process for controlling the operation of the external device,
The first control transmitted from the management process to the external device is transmitted to the external device and a first control signal for instructing the operation of the external device is transmitted to the management process. A normal operation mode in which a first response signal indicating a result of the operation of the external device in response to the signal is transmitted to the management process;
When the first control signal is received, the first response signal is generated, and the generated first response signal is transmitted to the management process, whereby the external device is connected. A debugging operation mode for causing the management process to perform the same operation in a simulated manner,
A program that causes a computer to execute.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010089883A JP4600601B1 (en) | 2010-04-08 | 2010-04-08 | Debug support device, debug support method, and debug support program |
PCT/JP2011/001103 WO2011125280A1 (en) | 2010-04-08 | 2011-02-25 | Debugging support device, debugging support method and debugging support program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010089883A JP4600601B1 (en) | 2010-04-08 | 2010-04-08 | Debug support device, debug support method, and debug support program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP4600601B1 JP4600601B1 (en) | 2010-12-15 |
JP2011221772A true JP2011221772A (en) | 2011-11-04 |
Family
ID=43425772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010089883A Active JP4600601B1 (en) | 2010-04-08 | 2010-04-08 | Debug support device, debug support method, and debug support program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP4600601B1 (en) |
WO (1) | WO2011125280A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015040736A1 (en) * | 2013-09-20 | 2015-03-26 | 三菱電機株式会社 | Program verification device, program verification method, and program |
JP2016106298A (en) * | 2016-01-06 | 2016-06-16 | 横河電機株式会社 | Process control device and system, and soundness determination method therefor |
JP7479188B2 (en) | 2020-05-07 | 2024-05-08 | 三菱電機エンジニアリング株式会社 | DEBUG SUPPORT DEVICE, DEBUG SUPPORT METHOD, AND PROGRAM |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102015222164A1 (en) * | 2015-11-11 | 2017-05-11 | Kuka Roboter Gmbh | Method and computer program for generating a graphical user interface of a manipulator program |
DE102015222168B4 (en) | 2015-11-11 | 2024-02-22 | Kuka Roboter Gmbh | METHOD AND COMPUTER PROGRAM FOR CORRECTING ERRORS IN A MANIPULATOR SYSTEM |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02118849A (en) * | 1988-10-28 | 1990-05-07 | Nec Corp | Simulation system for input output device |
JPH04349556A (en) * | 1991-05-28 | 1992-12-04 | Nippon Denki Joho Service Kk | Device and method for testing communication control program |
JPH0540507A (en) * | 1991-08-05 | 1993-02-19 | Nippon Telegr & Teleph Corp <Ntt> | Device controlling system in manufacturing line |
JPH0784901A (en) * | 1993-09-17 | 1995-03-31 | Fujitsu Ltd | Terminal operation reproducing device |
JP2001042907A (en) * | 1999-07-30 | 2001-02-16 | Ricoh Co Ltd | Sequence controller |
-
2010
- 2010-04-08 JP JP2010089883A patent/JP4600601B1/en active Active
-
2011
- 2011-02-25 WO PCT/JP2011/001103 patent/WO2011125280A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02118849A (en) * | 1988-10-28 | 1990-05-07 | Nec Corp | Simulation system for input output device |
JPH04349556A (en) * | 1991-05-28 | 1992-12-04 | Nippon Denki Joho Service Kk | Device and method for testing communication control program |
JPH0540507A (en) * | 1991-08-05 | 1993-02-19 | Nippon Telegr & Teleph Corp <Ntt> | Device controlling system in manufacturing line |
JPH0784901A (en) * | 1993-09-17 | 1995-03-31 | Fujitsu Ltd | Terminal operation reproducing device |
JP2001042907A (en) * | 1999-07-30 | 2001-02-16 | Ricoh Co Ltd | Sequence controller |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015040736A1 (en) * | 2013-09-20 | 2015-03-26 | 三菱電機株式会社 | Program verification device, program verification method, and program |
JP5992107B2 (en) * | 2013-09-20 | 2016-09-14 | 三菱電機株式会社 | Program verification apparatus, program verification method, and program |
JP2016106298A (en) * | 2016-01-06 | 2016-06-16 | 横河電機株式会社 | Process control device and system, and soundness determination method therefor |
JP7479188B2 (en) | 2020-05-07 | 2024-05-08 | 三菱電機エンジニアリング株式会社 | DEBUG SUPPORT DEVICE, DEBUG SUPPORT METHOD, AND PROGRAM |
Also Published As
Publication number | Publication date |
---|---|
JP4600601B1 (en) | 2010-12-15 |
WO2011125280A1 (en) | 2011-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6171386B2 (en) | Controller, information processing apparatus and program | |
JP4472615B2 (en) | Programmable device modeling method and apparatus | |
JP4600601B1 (en) | Debug support device, debug support method, and debug support program | |
JP2008282363A (en) | Programmable controller, program creation support device, computer program and programmable logic controller (plc) system | |
JP6481267B2 (en) | Programmable display | |
WO2012077704A1 (en) | Debug stub server, debugging method and program | |
JP6362821B2 (en) | Control device, control method and instruction set | |
JP2007086921A (en) | Machinery control program execution system | |
JP2009251936A (en) | Automatic testing system for picture program of programmable display unit | |
US7873498B2 (en) | Remote hardware inspection system and method | |
JP5314959B2 (en) | Information processing apparatus, control method therefor, computer program, and storage medium | |
US9298428B2 (en) | Graphical user interface editor that displays live data during editing | |
JP6322631B2 (en) | Embedded software development method, programming device and embedded device | |
CN101308648B (en) | Method of automatic test display apparatus and system thereof | |
WO2015136607A1 (en) | Software development assistance system, software development assistance method, and software development assistance program | |
JP7241931B2 (en) | Method, device, electronic device, storage medium and computer program for debugging mini-programs | |
JP2012155515A (en) | Source device driver and method for creating execution module | |
US11841691B2 (en) | Information processing device, information processing method, recording medium, and method of manufacturing product | |
TWI330772B (en) | ||
JP7323755B2 (en) | Information processing system, its control method and program | |
JP5921449B2 (en) | controller | |
JP2006293515A (en) | Os emulator time lapse controller | |
JP2009276985A (en) | Semiconductor integrated circuit device | |
WO2016181548A1 (en) | Communication simulation device and communication simulation program | |
JP2008077278A (en) | Test simulator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100913 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100913 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4600601 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S802 | Written request for registration of partial abandonment of right |
Free format text: JAPANESE INTERMEDIATE CODE: R311802 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |