JP6789458B1 - プログラム提供装置、プログラム提供方法およびプログラム提供システム - Google Patents

プログラム提供装置、プログラム提供方法およびプログラム提供システム Download PDF

Info

Publication number
JP6789458B1
JP6789458B1 JP2020541598A JP2020541598A JP6789458B1 JP 6789458 B1 JP6789458 B1 JP 6789458B1 JP 2020541598 A JP2020541598 A JP 2020541598A JP 2020541598 A JP2020541598 A JP 2020541598A JP 6789458 B1 JP6789458 B1 JP 6789458B1
Authority
JP
Japan
Prior art keywords
program
unit
search
simulation module
control device
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.)
Active
Application number
JP2020541598A
Other languages
English (en)
Other versions
JPWO2021161534A1 (ja
Inventor
孝行 山岡
孝行 山岡
千智 牛田
千智 牛田
健司 三根
健司 三根
宏和 菊田
宏和 菊田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6789458B1 publication Critical patent/JP6789458B1/ja
Publication of JPWO2021161534A1 publication Critical patent/JPWO2021161534A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41835Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by programme execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41885Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32361Master production scheduling

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

プログラム提供装置であるサーバ(1)は、制御機器にて実行されるプログラムである制御プログラムを構成するプログラム部品を提供する提供処理部(19)と、プログラム部品に従った動作を模擬的に実行するためのプログラムである動作模擬モジュールについて、プログラム部品を実行することによる制御機器の動作を模擬可能か否かの検証結果に基づいて動作模擬モジュールに認証を与える認証部(16)と、認証が与えられた動作模擬モジュールを使用してプログラム部品の動作確認を行う動作確認部(15)と、を備える。

Description

本開示は、制御プログラムを構成するプログラム部品を提供するプログラム提供装置、プログラム提供方法およびプログラム提供システムに関する。
生産設備を制御するための制御プログラムを作成する際に、過去に作成されたプログラム部品を再利用することによって、プログラム作成のための作業の効率化が図られることがある。制御プログラムを作成する作業者が、過去に作成されたプログラム部品の中から所望のプログラム部品を取得するためのシステムとして、作成されたプログラム部品を蓄積し、蓄積されたプログラム部品の中からのプログラム部品の検索と、検索されたプログラム部品の提供とを行うプログラム提供システムが提案されている。
プログラム提供システムの形態の1つとして、プログラム部品の売り手によるプログラム部品の出品を募り、プログラム部品の買い手にプログラム部品を販売するマーケットプレイスの形態が挙げられる。以下の説明にて、プログラム提供システムを運用する人または組織をプラットフォーマー(platformer)、プログラム提供システムへプログラム部品を出品する人または組織をプロデューサー(producer)、プログラム提供システムからプログラム部品を購入する人または組織をコンシュマー(consumer)と称することがある。プロデューサーは、出品するプログラム部品を作成する人または組織でもある。コンシュマーは、購入したプログラム部品を利用して制御プログラムを作成する人または組織でもある。なお、プラットフォーマー、プロデューサーおよびコンシュマーとは、マーケットプレイスにおいて担う役割をそれぞれ称したものとする。
プログラム提供システムを適正に機能させるために、プログラム提供システムには、コンシュマーへ提供されるプログラム部品について正常な動作を保証することが求められる。コンシュマーは、提供されるプログラム部品が正常に動作することを確認する。
特許文献1には、プログラムの配信サービスを提供するシステム管理者のサーバにプログラム実行部が設けられている配信システムが開示されている。特許文献1の技術によると、コンシュマーは、プログラム実行部にてプログラム部品を実行することによって、プログラム部品の動作を確認する。
特開2002−312506号公報
上記特許文献1にかかる従来技術の場合、サーバに設けられているプログラム実行部が、プログラム部品を実行する制御機器と同じ動作をすることが保証されていない可能性がある。従来技術の場合、コンシュマーは、サーバにて確認された動作が制御機器においても実現可能か否かを、実際の制御機器、または制御機器の動作を模擬するシミュレータを用いて確認する必要があった。このため、従来技術の場合、コンシュマーが取得するプログラム部品の各々について、プログラム部品の取得時あるいは制御プログラムの作成時にコンシュマーによる動作確認が必要となることで、コンシュマーの作業負担が大きくなる。コンシュマーの作業負担を低減するために、プログラム提供システムに出品されるプログラム部品の各々についての動作確認をプラットフォーマーまたはプロデューサーが行うこととした場合、プラットフォーマーまたはプロデューサーの作業負担が大きくなる。このように、上記従来技術によると、プログラム部品の動作確認のための作業負担が大きくなるという問題があった。
本開示は、上記に鑑みてなされたものであって、プログラム部品の動作確認のための作業負担を低減可能とするプログラム提供装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本開示にかかるプログラム提供装置は、制御機器にて実行されるプログラムである制御プログラムを構成するプログラム部品を提供する提供処理部と、プログラム部品に従った動作を模擬的に実行するためのプログラムである動作模擬モジュールについて、プログラム部品を実行することによる制御機器の動作を模擬可能か否かの検証結果に基づいて動作模擬モジュールに認証を与える認証部と、認証が与えられた動作模擬モジュールを使用してプログラム部品の動作確認を行う動作確認部と、を備える。
本開示にかかるプログラム提供装置は、プログラム部品の動作確認のための作業負担を低減することができるという効果を奏する。
実施の形態1にかかるプログラム提供装置であるサーバのブロック図 実施の形態1にかかるプログラム提供装置であるサーバを含むプログラム提供システムの構成図 図2に示すプログラム提供システムを構成するサーバおよび各クライアントPC(Personal Computer)の動作手順を示す図 図1に示すサーバが有する部品管理部に格納される属性情報の例を示す図 図1に示すサーバの認証部が実施する試験の第1の例を説明するためのフローチャート 図1に示すサーバの認証部による照合の結果の表示例を示す図 図1に示すサーバの認証部が実施する試験の第2の例を説明するための図 実施の形態2にかかるプログラム提供装置であるサーバの動作手順の例を示すフローチャート 実施の形態3にかかるプログラム提供装置であるサーバのブロック図
以下に、実施の形態にかかるプログラム提供装置、プログラム提供方法およびプログラム提供システムを図面に基づいて詳細に説明する。なお、この実施の形態により本開示が限定されるものではない。
実施の形態1.
図1は、実施の形態1にかかるプログラム提供装置であるサーバのブロック図である。図2は、実施の形態1にかかるプログラム提供装置であるサーバを含むプログラム提供システムの構成図である。
プログラム提供システムの概要について説明する。プログラム提供システムは、プログラム部品を提供するシステムである。プログラム提供システムは、プログラム部品を作成するプロデューサーによるプログラム部品の出品を募り、コンシュマーにプログラム部品を販売するマーケットプレイスの形態のシステムである。プログラム部品は、制御機器にて実行される制御プログラムを構成するプログラムである。また、プログラム提供システムは、動作模擬モジュールを作成するプロデューサーによる動作模擬モジュールの出品を募る。動作模擬モジュールは、プログラム部品に従った動作を模擬的に実行するためのプログラムである。実施の形態1にかかるプログラム提供装置であるサーバ1では、動作模擬モジュールの認証が行われる。サーバ1では、出品された動作模擬モジュールのうち認証が与えられた動作模擬モジュールの使用によって、プログラム部品の動作確認が行われる。
プログラム部品には、プログラム部品の動作仕様についての記述と、制御機器上にて実行可能なモジュールとが含まれる。モジュールはソースコードであっても良い。制御機器は、制御プログラムを実行することによって生産設備を制御する機器である。プログラマブルロジックコントローラ(Programmable Logic Controller:PLC)は、制御機器の1つの例である。制御機器の図示は省略する。
プログラム提供システムは、サーバ1と、クライアントPC2,3,4とを有する。プラットフォーマーは、サーバ1を使用してプログラム提供システムを運用する。サーバ1は、作成されたプログラム部品を蓄積し、蓄積されたプログラム部品の検索と、検索されたプログラム部品の提供とを行う。動作模擬モジュールを作成するプロデューサーは、クライアントPC2を使用して動作模擬モジュールを作成する。プログラム部品を作成するプロデューサーは、クライアントPC3を使用してプログラム部品を作成する。コンシュマーは、クライアントPC4を使用して制御プログラムを作成する。
サーバ1と、各クライアントPC2,3,4とは、ネットワーク5を介して互いに接続されている。ネットワーク5には、有線または無線を問わず、インターネット(Internet)、LAN(Local Area Network)またはVPN(Virtual Private Network)などの、任意の種類の通信網を採用できる。
なお、マーケットプレイスには、動作模擬モジュールを作成する複数のプロデューサーと、プログラム部品を作成する複数のプロデューサーと、複数のコンシュマーとが参加する。プログラム提供システムには、複数のクライアントPC2と、複数のクライアントPC3と、複数のクライアントPC4とが含まれる。
次に、サーバ1の構成について説明する。実施の形態1において、サーバ1は、PCなどのコンピュータである。サーバ1には、プログラム提供システムを運用するためのプログラムがインストールされる。図1には、サーバ1が有する機能構成と、サーバ1の機能構成を実現するためのハードウェア構成とを示している。
サーバ1は、各種処理を実行する処理部であるプロセッサ10と、情報を記憶する記憶部であるメモリ11と、サーバ1の外部の装置との間における情報の送受信を担う通信装置13と、情報を表示する表示装置14とを有する。なお、図1に示すプロセッサ10とメモリ11とは、互いに別のハードウェア構成に備えられても良い。
プロセッサ10は、CPU(Central Processing Unit)である。プロセッサ10は、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、又はDSP(Digital Signal Processor)であっても良い。メモリ11は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)またはEEPROM(登録商標)(Electrically Erasable Programmable Read Only Memory)、HDD(Hard Disk Drive)またはSSD(Solid State Drive)を含む。プログラム提供システムを運用するためのプログラムは、メモリ11に格納される。プロセッサ10は、メモリ11に格納されているプログラムを実行する。
サーバ1は、動作確認部15、認証部16、部品登録処理部17、モジュール登録処理部18、提供処理部19および検索処理部20を備える。動作確認部15、認証部16、部品登録処理部17、モジュール登録処理部18、提供処理部19および検索処理部20の各々は、プロセッサ10を使用することによって実現される機能部である。これらの機能部の各機能は、プロセッサ10およびソフトウェアの組み合わせによって実現される。各機能は、プロセッサ10およびファームウェアの組み合わせによって実現されても良く、プロセッサ10、ソフトウェアおよびファームウェアの組み合わせによって実現されても良い。ソフトウェアまたはファームウェアは、プログラムとして記述され、メモリ11に格納される。プロセッサ10は、ソフトウェアまたはファームウェアを読み出す。プロセッサ10は、ソフトウェアまたはファームウェアを実行する。
プログラム提供システムを運用するためのプログラムは、コンピュータによる読み取りが可能とされた記憶媒体に記録されたものであっても良い。サーバ1は、記憶媒体に記録されたプログラムをメモリ11へ格納しても良い。記憶媒体は、フレキシブルディスクである可搬型記憶媒体、あるいは半導体メモリであるフラッシュメモリであっても良い。プログラム提供システムを運用するためのプログラムは、他のコンピュータから通信ネットワークを介してサーバ1へインストールされても良い。
通信装置13は、各クライアントPC2,3,4から送信される情報を受信し、かつ、各クライアントPC2,3,4へ情報を送信する。表示装置14は、画面にて情報を表示するディスプレイである。
メモリ11は、サーバ1に登録されたプログラム部品を管理する部品管理部24と、サーバ1に登録された動作模擬モジュールを管理するモジュール管理部25とを有する。部品管理部24には、クライアントPC3によって作成されたプログラム部品が蓄積される。また、部品管理部24には、プログラム部品の属性を表す属性情報が格納される。モジュール管理部25には、クライアントPC2によって作成された動作模擬モジュールが蓄積される。
動作確認部15は、認証が与えられた動作模擬モジュールを使用して、プログラム部品の動作確認を行う。動作確認部15は、動作模擬モジュールを実行する実行処理部21と、制御機器の動作環境を示す情報を動作模擬モジュールに設定する動作環境設定部22とを有する。動作確認部15は、動作模擬モジュールに設定された動作環境においてプログラム部品を実行することによる制御機器の動作を模擬する。また、動作確認部15は、動作確認の結果を表示するための処理を実行する表示処理部23を有する。
認証部16は、クライアントPC2によって作成された動作模擬モジュールについて、プログラム部品を実行することによる制御機器の動作を模擬可能か否かの検証結果に基づいて、動作模擬モジュールに認証を与える。認証部16は、制御機器の動作を模擬することができると判定された動作模擬モジュールへ認証を与える。
また、認証部16は、動作模擬モジュールがセキュリティ対策機能を備えていることを認証の条件とする。セキュリティ対策機能は、プログラム部品におけるセキュリティ上の問題点の有無を判定する機能である。さらに、認証部16は、動作模擬モジュールにおけるセキュリティ上の問題点の有無をチェックし、問題点が無いことを認証の条件とする。
部品登録処理部17は、クライアントPC3からの登録指示に従って、プログラム部品の登録のための処理を実行する。モジュール登録処理部18は、クライアントPC2からの登録指示に従って、動作模擬モジュールの登録を行う。提供処理部19は、クライアントPC4へのプログラム部品を提供するための処理を実行する。検索処理部20は、部品管理部24にて管理されているプログラム部品の検索を実行する。なお、図1に示すサーバ1に備えられる機能部のうちの少なくとも一部は、クラウドサーバにより実現されるものであっても良い。
次に、各クライアントPC2,3,4の概略構成について説明する。各クライアントPC2,3,4の構成のうち、本開示の説明に必要な構成以外については説明を省略する。
クライアントPC2は、動作模擬モジュールを作成するモジュール作成部31と、作成された動作模擬モジュールをサーバ1へ登録するための登録指示を生成する登録指示部32とを有する。モジュール作成部31の機能は、クライアントPC2に備えられているプロセッサが、動作模擬モジュールを作成するためのプログラムを実行することによって実現される。クライアントPC2に備えられているプロセッサの図示は省略する。実施の形態1において、動作模擬モジュールは、制御機器の動作をシミュレーションするシミュレータである。
登録指示部32の機能は、クライアントPC2に備えられているプロセッサがプロデューサー用のアプリケーションを実行することによって実現される。プロデューサー用のアプリケーションは、動作模擬モジュールを出品するプロデューサーとしてプログラム提供システムに参加するためのアプリケーションであって、プラットフォーマーによって提供される。
クライアントPC3は、プログラム部品を作成する部品作成部33と、作成されたプログラム部品をサーバ1へ登録するための登録指示を生成する登録指示部34とを有する。部品作成部33の機能は、クライアントPC3に備えられているプロセッサが、エンジニアリングツールを実行することによって実現される。エンジニアリングツールは、制御プログラムを作成するためのプログラムである。クライアントPC3に備えられているプロセッサの図示は省略する。
登録指示部34の機能は、クライアントPC3に備えられているプロセッサがプロデューサー用のアプリケーションを実行することによって実現される。プロデューサー用のアプリケーションは、プログラム部品を出品するプロデューサーとしてプログラム提供システムに参加するためのアプリケーションであって、プラットフォーマーによって提供される。
クライアントPC4は、サーバ1からプログラム部品を取得するための処理を実行する取得処理部35と、部品管理部24にて管理されているプログラム部品を検索するための検索指示を生成する検索指示部36と、制御プログラムを作成するプログラム作成部37とを有する。プログラム作成部37の機能は、クライアントPC4に備えられているプロセッサがエンジニアリングツールを実行することによって実現される。エンジニアリングツールは、取得されたプログラム部品を制御プログラムに組み込む機能を備える。クライアントPC4に備えられているプロセッサの図示は省略する。
取得処理部35の機能と検索指示部36の機能とは、クライアントPC4に備えられているプロセッサがコンシュマー用のアプリケーションを実行することによって実現される。コンシュマー用のアプリケーションは、プログラム部品の提供を受けるコンシュマーとしてプログラム提供システムに参加するためのアプリケーションであって、プラットフォーマーによって提供される。
次に、サーバ1と各クライアントPC2,3,4との動作について説明する。図3は、図2に示すプログラム提供システムを構成するサーバおよび各クライアントPCの動作手順を示す図である。
ステップS1において、クライアントPC2は、動作模擬モジュールであるシミュレータをモジュール作成部31において作成する。例の1つとしては、モジュール作成部31は、サーバ1への登録を目的として開発された専用のシミュレータを作成する。モジュール作成部31によって作成されるシミュレータは、サーバ1へ登録される専用のシミュレータに限られず、製品として流通させるシミュレータとしてプロデューサーによって開発されたものであっても良い。
クライアントPC2の登録指示部32は、ステップS1にて作成されたシミュレータについての登録指示を生成する。ステップS2において、クライアントPC2は、登録指示をサーバ1へ送信することによって、シミュレータの登録をサーバ1へ依頼する。サーバ1のモジュール登録処理部18は、クライアントPC2から送信されたシミュレータをモジュール管理部25へ格納することによって、シミュレータを登録する。
ステップS3において、サーバ1は、登録されたシミュレータについて認証のための処理を認証部16によって行う。認証部16は、あらかじめ指定されているシステム試験を実施することによって、シミュレータが制御機器の動作を模擬可能か否かを検証する。すなわち、認証部16は、動作模擬モジュールが制御機器の動作を模擬可能か否かを検証するための試験を実施する。システム試験は、認証部16によって実施されなくても良く、シミュレータを作成したプロデューサーによって実施されても良い。この場合、クライアントPC2は、システム試験の結果を認証部16へ送信する。認証部16は、システム試験の結果を取得すると、取得された結果に基づいて、シミュレータが制御機器の動作を模擬可能か否かを検証する。システム試験の具体例については後述する。
認証部16は、検証により制御機器の動作を模擬可能と判定されたシミュレータに認証を与える。サーバ1は、認証部16により認証が与えられたシミュレータをネットワーク5上にて公開する。
ステップS4において、クライアントPC3は、部品作成部33においてプログラム部品を作成する。クライアントPC3の登録指示部34は、ステップS4にて作成されたプログラム部品についての登録指示を生成する。ステップS5において、クライアントPC3は、登録指示をサーバ1へ送信することによって、プログラム部品の登録をサーバ1へ依頼する。サーバ1の部品登録処理部17は、クライアントPC3から送信されたプログラム部品を部品管理部24へ格納することによって、プログラム部品を登録する。部品管理部24には、プログラム部品とともに、プログラム部品の属性情報が格納される。
図4は、図1に示すサーバが有する部品管理部に格納される属性情報の例を示す図である。部品管理部24には、「ID」、「部品種別」、「登録日時」、「作成者」、「用途」の各属性についての属性情報が格納される。
「ID」は、プログラム部品を識別するための情報である。「部品種別」は、プログラム部品の種別を表す情報である。「部品種別」の情報には、プログラム部品の作成において使用されるエンジニアリングツールを識別するための情報、または制御機器を識別するための情報と、制御プログラムにおけるプログラム部品の部品属性を表す情報とが含まれる。例を挙げると、「AAA_ファンクションブロック」の「AAA」は、エンジニアリングツールの名称、または制御機器の型名とする。「ファンクションブロック」は、部品属性の名称である。なお、エンジニアリングツールを識別するための情報、または制御機器を種別するための情報は、プログラム部品の動作確認において使用されるシミュレータを特定する際に使用される。
「登録日時」は、プログラム部品がサーバ1に登録された日時の情報である。「作成者」は、プログラム部品を作成したプロデューサーの情報である。「用途」は、プログラム部品の用途を表す情報である。「用途」の情報は、プログラム部品の検索の際に、プログラム部品を絞り込むための検索語として使用される。
「部品種別」、「作成者」および「用途」についての属性情報は、プログラム部品を作成したプロデューサーによって入力される。「ID」および「登録日時」についての属性情報は、プログラム部品が登録されたときに部品登録処理部17によって生成される。なお、部品管理部24に格納される属性情報は、図4に示すものに限られない。部品管理部24には、図4に示す属性以外についての属性情報が格納されても良い。
図3に示すステップS6において、クライアントPC4の検索指示部36は、サーバ1に登録されているプログラム部品を検索するための検索指示を生成する。検索指示には、指定された検索条件の情報が含まれる。
クライアントPC4には、検索条件を指定するための入力フォーマットが表示される。入力フォーマットは、マーケットプレイスによって提供される。入力フォーマットには、部品種別の情報と、用途を特定するための検索語を入力するための欄が設けられている。入力フォーマットには、プログラム部品の作成者を指定するための欄、または、プログラム部品が登録された日時を指定するための欄などが設けられていても良い。コンシュマーは、クライアントPC4を操作することによって、所望のプログラム部品についての条件を入力フォーマットへ入力する。
ステップS7において、クライアントPC4は、指定された検索条件の情報を含む検索指示をサーバ1へ送信する。ステップS8において、サーバ1の検索処理部20は、検索指示に従って検索処理を実行する。ステップS9において、サーバ1は、クライアントPC4へ検索結果を送信する。
ステップS10において、クライアントPC4の取得処理部35は、検索によってヒットしたプログラム部品の中からコンシュマーによって選定されたプログラム部品をサーバ1へ通知し、選定されたプログラム部品についての動作確認をサーバ1へ要求する。
サーバ1の実行処理部21は、クライアントPC4からの通知に従って、選定されたプログラム部品に対応するシミュレータをモジュール管理部25から読み出す。実行処理部21は、選定されたプログラム部品の「部品種別」を基に、モジュール管理部25に格納されているシミュレータの中から、選定されたプログラム部品に対応するシミュレータを特定する。
ステップS11において、サーバ1は、実行処理部21にてプログラム部品を実行することによって、プログラム部品の動作確認を行う。動作確認部15は、制御機器の動作についての動作環境を動作環境設定部22にて設定しても良い。動作環境設定部22は、例えば、動作環境として、制御機器の型名、または、作成済みのプログラムといった事項を設定する。ステップS12にて、サーバ1は、動作確認の結果をクライアントPC4へ通知する。
クライアントPC4は、サーバ1から通知された動作確認の結果をコンシュマーに提示する。コンシュマーは、クライアントPC4への操作によって、プログラム部品の購入を指示する。ステップS13において、クライアントPC4は、コンシュマーの指示に従って取得処理部35がプログラム部品を取得することにより、プログラム部品の購入手続きを行う。このように、コンシュマーは、プログラム部品を購入する前に、制御機器におけるプログラム部品の動作確認を行うことができる。
次に、認証部16による検証の具体例について説明する。認証部16は、あらかじめ設定された命令に対してシミュレータが動作仕様どおりに正常に動作するか否かを、システム試験によって検証する。システム試験には、あらかじめ設定された項目についての試験が含まれる。項目の数は任意であるものとする。ここでは、2つの項目についての試験の例について説明する。
図5は、図1に示すサーバの認証部が実施する試験の第1の例を説明するためのフローチャートである。第1の例にかかる試験では、認証部16は、シミュレータに書き込まれる検証用のプログラムと、書き込み後にシミュレータから読み出される検証用のプログラムとが一致するか否かを検証する。認証部16は、かかる検証によって、シミュレータへプログラムが書き込まれる前から、シミュレータからプログラムが読み出されるまでの間に、プログラムに余計な書き換えが生じないことを確認する。図5では、第1の例にかかる試験における認証部16および表示装置14の動作手順を示している。
ステップS21において、認証部16は、モジュール管理部25から読み出されたシミュレータへ、検証用のプログラムを書き込む。ステップS22において、認証部16は、ステップS21にて書き込まれた検証用のプログラムをシミュレータから読み出す。ステップS23において、認証部16は、ステップS21にて書き込まれた検証用のプログラムと、ステップS22にて読み出された検証用のプログラムとを照合する。認証部16は、照合の結果を表示装置14へ送信する。ステップS24において、表示装置14は、照合の結果を表示する。
認証部16は、ステップS23における照合において双方のプログラムが一致していた場合、検証用のプログラムに書き換えが生じておらず、本項目についての試験は合格と判定する。一方、認証部16は、ステップS23における照合において双方のプログラムにおいて一致しない部分があった場合、本項目についての試験は不合格と判定する。
図6は、図1に示すサーバの認証部による照合の結果の表示例を示す図である。ここで、照合元のデータとは、シミュレータへの書き込み前に保存された検証用のプログラムとする。照合先のデータとは、シミュレータから読み出された後に保存された検証用のプログラムとする。図6では、プログラムファイルごとの照合結果を表示する例を示している。データ名とは、プログラムファイルの名称とする。表示装置14は、プログラムファイルごとに、「一致」または「不一致」の照合結果を表示する。図6に示す例では、プログラムファイル「ABCD」について「一致」の照合結果と、プログラムファイル「EFGH」について「一致」の照合結果とが表示されている。
図7は、図1に示すサーバの認証部が実施する試験の第2の例を説明するための図である。第2の例にかかる試験では、認証部16は、シミュレータにおいて試験対象プログラムを実行した結果が、実際の制御機器が試験対象プログラムを実行した場合における動作結果と同じであるか否かを検証する。図7には、試験対象プログラムであるラダープログラムの例を示している。
ラダー言語で作成されたプログラムコードは、基本的な構成要素である回路記号および変数を含む。回路記号には制御機器での処理を表す接点およびコイルが含まれる。変数は、制御プログラム上における制御の対象であって、回路記号で示された処理の対象を表している。変数は、構成要素の種別を表すアルファベットと、構成要素の識別のための数字との組み合わせにより記述される。変数は、制御機器のメモリ内における作業領域の各データ領域に対応付けられている。各データ領域には、構成要素ごとにおける演算データが格納される。演算データには、ONとOFFとの区別を表現するビットデータと、数値を表現するワードデータとが含まれる。処理の対象ごとに、変数に含まれる数字が任意に割り当てられる。
図7に示す「No.1」のラダープログラムにおいて、「X0」は、ビットデータが入力されるデバイスであって、「X0」のONおよびOFFに連動して「Y10」のデバイス値が切り換わるものとする。認証部16は、「No.1」のラダープログラムについて、「X0」をONにする入力操作によって「Y10」がONになるという制御機器の動作を、シミュレータが再現可能か否かを検証する。認証部16は、「No.1」と同じ「No.2」のラダープログラムについて、「X0」をOFFにする入力操作によって「Y10」がOFFになるという制御機器の動作を、シミュレータが再現可能か否かを検証する。認証部16は、「No.3」以降のラダープログラムについても、「No.1」、「No.2」のラダープログラムの場合と同様に、入力操作に対する出力結果を検証する。
認証部16は、実際の制御機器の動作をシミュレータが再現可能である場合、本項目についての試験は合格と判定する。一方、認証部16は、実際の制御機器の動作をシミュレータが再現できなかった場合、本項目についての試験は不合格と判定する。
さらに、認証部16は、試験として、シミュレータにセキュリティ対策機能が備わっていることの確認と、シミュレータにセキュリティ上の問題が無いことの確認とを行う。認証部16は、セキュリティ対策機能として、プログラム部品におけるコンピュータウィルスを検知する機能がシミュレータに備えられていることを確認する。また、認証部16は、シミュレータにセキュリティ上の問題が無いことを確認するために、シミュレータにコンピュータウィルスが検知されないことを確認する。
認証部16は、すべての項目について試験に合格したシミュレータに対し、認証を与える。なお、認証部16が行う試験は、実施の形態1にて説明する試験に限られない。認証部16が実施する試験は、プログラム部品を実行することによる制御機器の動作を動作模擬モジュールが模擬可能か否かを検証することが可能な試験であれば良く、上述する試験以外であっても良い。
サーバ1は、動作確認部15においてプログラム部品の動作確認を行うことによって、コンシュマーへ提供されるプログラム部品について正常な動作を保証することができる。また、動作確認に使用される動作模擬モジュールには認証が与えられているため、制御機器の動作を模擬可能であることが保証される。このため、コンシュマーは、サーバ1から取得されたプログラム部品を安心して購入することができる。コンシュマーが取得するプログラム部品の各々について、プログラム部品の取得時あるいは制御プログラムの作成時にコンシュマー側での動作確認が不要となることによって、コンシュマーによる動作確認のための作業負担の低減が可能となる。また、プログラム提供システムに出品されるプログラム部品の動作確認をプラットフォーマーまたはプロデューサーが個別に行う必要も無いため、プラットフォーマーおよびプロデューサーにおいても動作確認のための作業負担が大きくなることが無い。
実施の形態1によると、プログラム提供装置は、制御機器の動作を模擬可能か否かの検証結果に基づいて動作模擬モジュールに認証を与える認証部と、認証が与えられた動作模擬モジュールを使用してプログラム部品の動作確認を行う動作確認部とを備えることによって、プログラム部品の動作確認のための作業負担を低減することができるという効果を奏する。
実施の形態2.
実施の形態2では、プログラム部品の動作確認におけるサーバ1の動作例について説明する。図8は、実施の形態2にかかるプログラム提供装置であるサーバの動作手順の例を示すフローチャートである。実施の形態2では、上記の実施の形態1と同一の構成要素には同一の符号を付し、実施の形態1とは異なる構成について主に説明する。
図8に示す手順の前提として、クライアントPC4の取得処理部35は、サーバ1の部品管理部24からプログラム部品を取得しているものとする。クライアントPC4は、サーバ1へプロジェクトファイルを送信する。プロジェクトファイルは、プログラム作成部37において作成された制御プログラムと、取得されたプログラム部品を含むデータファイルである。
サーバ1の動作環境設定部22は、クライアントPC4から送信されたプロジェクトファイルを読み込む。ステップS31において、サーバ1は、動作環境設定部22において、制御機器の動作環境を示す設定情報をプロジェクトファイルから取得する。設定情報には、制御機器の型名、制御機器の接続情報、制御機器に設定されている各種パラメータなどが含まれる。動作環境設定部22は、実行処理部21にて実行される動作模擬モジュールへ設定情報を提供する。
ステップS32において、サーバ1は、実行処理部21にて仮想の制御機器を起動し、仮想の制御機器による制御を実行する。実行処理部21は、クライアントPC4からの指示に従って仮想の制御機器を起動する。実行処理部21は、動作環境設定部22から提供された制御プログラムとプログラム部品とに従って制御を実行する。ステップS33において、サーバ1は、仮想の制御機器による制御の結果である実行結果を実行処理部21から表示処理部23へ出力する。
ステップS34において、サーバ1は、表示処理部23において、制御プログラムおよびプログラム部品の実行による実行情報を基に、仮想の制御機器の動作状態を表示するための表示情報を生成する。サーバ1は、生成された表示情報をクライアントPC4へ送信する。
クライアントPC4は、仮想の制御機器による制御の実行開始と、仮想の制御機器による実行の停止とをサーバ1へ指示する。また、クライアントPC4は、サーバ1から送信された表示情報に従って、クライアントPC4の表示装置にて実行結果を表示する。クライアントPC4は、動作環境設定部22にて設定された設定情報をサーバ1から読み出して、クライアントPC4の表示装置にて設定情報の内容を表示しても良い。コンシュマーは、動作環境設定部22に設定された設定情報の内容を確認し、クライアントPC4の操作によって設定情報を追加しても良い。クライアントPC4は、追加の設定情報をサーバ1へ送信する。動作環境設定部22では、プロジェクトファイルから取得された設定情報に、クライアントPC4から送信された設定情報が追加される。
仮想の制御機器の動作状態が、コンシュマーが意図した動作状態と異なる場合に、コンシュマーは、プログラム作成部37において制御プログラムを修正しても良い。クライアントPC4は、修正後の制御プログラムをサーバ1へ送信する。動作環境設定部22は、クライアントPC4から送信された制御プログラムを基に、設定情報を更新する。動作環境設定部22は、更新された設定情報を動作模擬モジュールへ提供する。
サーバ1は、更新された設定情報に基づいて、上記のステップS32からステップS34の動作を繰り返す。サーバ1とクライアントPC4とは、仮想の制御機器の動作状態が、コンシュマーが意図した動作状態と同じになるまで、制御プログラムの修正と、設定情報の更新と、上記のステップS32からステップS34の動作とを繰り返しても良い。このようにして、コンシュマーは、所望の動作を可能とする制御プログラムを作成することができる。
実施の形態2によると、プログラム提供装置は、制御機器の動作環境を示す設定情報に基づく動作確認を動作確認部15が行うことによって、制御機器の動作環境に適合した動作確認が可能となるという効果を奏する。
実施の形態3.
実施の形態3では、サーバ1におけるプログラム部品の検索において、人工知能(Artificial Intelligence:AI)を適用する例を説明する。図9は、実施の形態3にかかるプログラム提供装置であるサーバのブロック図である。実施の形態3では、上記の実施の形態1および2と同一の構成要素には同一の符号を付し、実施の形態1および2とは異なる構成について主に説明する。
サーバ1は、プロセッサ10を使用することによって実現される機能部である類似語検索部40を有する。類似語検索部40は、プログラム部品の検索において過去に使用された検索語の中から、入力された検索語に類似する検索語を検索する。類似語検索部40の機能は、プロセッサ10およびソフトウェアの組み合わせによって実現される。類似語検索部40の機能は、プロセッサ10およびファームウェアの組み合わせによって実現されても良く、プロセッサ10、ソフトウェアおよびファームウェアの組み合わせによって実現されても良い。
類似語検索部40は、検索語同士の類似度を算出する類似度学習部42を有する。類似度学習部42は、単語同士の共起関係に基づく類似度の算出方法等を適用して、検索語同士の類似度を算出する。
メモリ11は、プログラム部品の検索についての情報が蓄積される検索データベース41を有する。検索データベース41は、検索語とプログラム部品とが対応付けられた検索結果データが蓄積される検索結果データベース43と、類似度学習部42にて算出された類似度が蓄積される類似度データベース44とを有する。検索結果データベース43は、プログラム部品が提供される際のプログラム部品の検索において入力された検索語と、提供されたプログラム部品とが対応付けられた検索結果データを保持する検索結果データ保持部である。類似度データベース44は、検索語の組み合わせと、組み合わせにおける検索語同士の類似度とを保持する類似度保持部である。
クライアントPC4は、コンシュマーによって入力された検索語を含む検索指示をサーバ1へ送信する。クライアントPC4には、1つ以上の検索語が入力される。例えば、「a」、「b」、「c」の3つの検索語がクライアントPC4に入力されたとする。以下の説明にて、入力された検索語の組み合わせを、入力検索語セットと称することがある。検索処理部20は、クライアントPC4から送信された入力検索語セット「a,b,c」を類似語検索部40へ出力する。
類似語検索部40は、検索結果データベース43に蓄積されている検索結果データから、入力検索語セットと完全に一致する検索語の組み合わせを含む検索結果データを検索する。類似語検索部40は、入力検索語セットと完全に一致する検索語の組み合わせを含む検索結果データがあった場合、かかる検索結果データを第1の候補と設定する。
類似語検索部40は、入力検索語セットの要素である各検索語について、類似度データベース44に保持されている検索語の中で最も類似度が高い検索語を類似度データベース44から読み出す。例えば、入力検索語セットの要素の1つである「c」との類似度が最も高い検索語が「d」であるとすると、類似語検索部40は、類似度データベース44から「d」を読み出す。
次に、類似語検索部40は、入力検索語セットの要素である検索語を、類似度データベース44から読み出された検索語で置き換えて、検索語が置き換えられた入力検索語セットと一致する検索語の組み合わせを含む検索結果データを検索する。類似語検索部40は、検索語が置き換えられた入力検索語セットと一致する検索語の組み合わせを含む検索結果データがあった場合、かかる検索結果データを第2の候補と設定する。上記の例の場合、検索語を置き換えた入力検索語セットは、「a,b,d」である。なお、類似語検索部40は、類似度データベース44から複数の検索語を読み出して、検索語が置き換えられた複数の入力検索語セットの各々について、検索結果データを検索しても良い。類似語検索部40は、類似度データベース44に保持されている検索語のうち、類似度が最も高い複数の検索語を読み出す。
検索処理部20は、各候補である検索結果データを通信装置13へ出力する。通信装置13は、検索結果データをクライアントPC4へ送信する。クライアントPC4は、検索結果データを表示する。クライアントPC4の取得処理部35は、コンシュマーの操作に従って、表示された検索結果データの各々に含まれるプログラム部品についての動作確認をサーバ1へ要求する。サーバ1の動作確認部15は、クライアントPC4からの通知に従って、各プログラム部品の動作確認を行う。サーバ1は、各プログラム部品についての動作確認の結果をクライアントPC4へ通知する。
クライアントPC4は、サーバ1から通知された動作確認の結果をコンシュマーに提示する。コンシュマーは、クライアントPC4への操作によって、プログラム部品の購入を指示する。検索処理部20は、コンシュマーによって購入されたプログラム部品についての検索結果データを検索結果データベース43に追加する。
類似度学習部42は、検索結果データベース43に追加された検索結果データについて、検索語同士の類似度を算出する。類似度学習部42は、算出された類似度の値を類似度データベース44に格納することによって、当該検索語同士についての類似度を更新する。
例えば、コンシュマーによって入力された入力検索語セットが「a,b,c」であって、検索結果データベース43にて「a,b,d」の検索語と対応付けられている「プログラム部品α」がコンシュマーによって購入されたとする。検索処理部20は、「a,b,d」の検索語と「プログラム部品α」とが対応付けられた検索結果データを検索結果データベース43に格納する。また、類似度学習部42は、検索結果データにおける「a」、「b」、「プログラム部品α」の3つの要素と同じ共起関係を持つ「c」および「d」の類似度として、「c」および「d」について類似度データベース44に格納されている類似度よりも高い値を算出する。すなわち、類似度学習部42は、「c」および「d」の類似度を増加させる更新を行う。なお、サーバ1によるプログラム部品の検索は、AIの適用によるものに限られない。サーバ1は、AIを用いずにプログラム部品を検索しても良い。
実施の形態3によると、プログラム提供装置は、入力検索語セットと完全に一致する検索語の組み合わせを含む検索結果データが無い場合でも、入力検索語セットと類似度が高い検索語の組み合わせに対応付けられたプログラム部品を検索することができる。プログラム提供装置は、コンシュマーが所望するプログラム部品の的確な検索が可能となることで、プログラム部品の再利用のための作業を効率化させることができる。
以上の各実施の形態に示した構成は、本開示の内容の一例を示すものである。各実施の形態の構成は、別の公知の技術と組み合わせられることが可能である。各実施の形態の構成同士が適宜組み合わせられても良い。本開示の要旨を逸脱しない範囲で、各実施の形態の構成の一部を省略、変更することが可能である。
1 サーバ、2,3,4 クライアントPC、5 ネットワーク、10 プロセッサ、11 メモリ、13 通信装置、14 表示装置、15 動作確認部、16 認証部、17 部品登録処理部、18 モジュール登録処理部、19 提供処理部、20 検索処理部、21 実行処理部、22 動作環境設定部、23 表示処理部、24 部品管理部、25 モジュール管理部、31 モジュール作成部、32,34 登録指示部、33 部品作成部、35 取得処理部、36 検索指示部、37 プログラム作成部、40 類似語検索部、41 検索データベース、42 類似度学習部、43 検索結果データベース、44 類似度データベース。

Claims (6)

  1. 制御機器にて実行されるプログラムである制御プログラムを構成するプログラム部品を提供する提供処理部と、
    前記プログラム部品に従った動作を模擬的に実行するためのプログラムである動作模擬モジュールについて、前記プログラム部品を実行することによる前記制御機器の動作を模擬可能か否かの検証結果に基づいて前記動作模擬モジュールに認証を与える認証部と、
    前記認証が与えられた前記動作模擬モジュールを使用して前記プログラム部品の動作確認を行う動作確認部と、を備えることを特徴とするプログラム提供装置。
  2. 前記動作確認部は、前記制御機器の動作環境を示す情報を前記動作模擬モジュールに設定する動作環境設定部を有し、前記動作環境において前記プログラム部品を実行することによる前記制御機器の動作を模擬することを特徴とする請求項1に記載のプログラム提供装置。
  3. 前記認証部は、前記動作模擬モジュールが前記制御機器の動作を模擬可能か否かを検証するための試験を実施することを特徴とする請求項1または2に記載のプログラム提供装置。
  4. 前記プログラム部品が提供される際の前記プログラム部品の検索に使用された検索語と、提供された前記プログラム部品とが対応付けられた検索結果データを保持する検索結果データ保持部と、
    過去に使用された検索語の組み合わせと、前記組み合わせに含まれる検索語同士の類似度とを保持する類似度保持部と、
    入力された検索語と前記類似度保持部に保持されている前記類似度とに基づいて、前記検索結果データ保持部に保持されている検索結果データの中から、前記入力された検索語と類似する検索語を含む検索結果データを検索する類似語検索部と、を備えることを特徴とする請求項1から3のいずれか1つに記載のプログラム提供装置。
  5. 制御機器にて実行されるプログラムである制御プログラムを構成するプログラム部品の提供をコンピュータによって実行するプログラム提供方法であって、
    前記プログラム部品に従った動作を模擬的に実行するためのプログラムである動作模擬モジュールについて、前記プログラム部品を実行することによる前記制御機器の動作を模擬可能か否かの検証結果に基づいて前記動作模擬モジュールに認証を与える工程と、
    前記認証が与えられた前記動作模擬モジュールを使用して、前記プログラム部品の動作確認を行う工程と、を含むことを特徴とするプログラム提供方法。
  6. 制御機器にて実行されるプログラムである制御プログラムを構成するプログラム部品を提供するプログラム提供装置を含むプログラム提供システムであって、
    前記プログラム提供装置は、
    前記プログラム部品に従った動作を模擬的に実行するためのプログラムである動作模擬モジュールについて、前記プログラム部品を実行することによる前記制御機器の動作を模擬可能か否かの検証結果に基づいて前記動作模擬モジュールに認証を与える認証部と、
    前記認証が与えられた前記動作模擬モジュールを使用して前記プログラム部品の動作確認を行う動作確認部と、を備えることを特徴とするプログラム提供システム。
JP2020541598A 2020-02-14 2020-02-14 プログラム提供装置、プログラム提供方法およびプログラム提供システム Active JP6789458B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/005898 WO2021161534A1 (ja) 2020-02-14 2020-02-14 プログラム提供装置、プログラム提供方法およびプログラム提供システム

Publications (2)

Publication Number Publication Date
JP6789458B1 true JP6789458B1 (ja) 2020-11-25
JPWO2021161534A1 JPWO2021161534A1 (ja) 2021-08-19

Family

ID=73452908

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020541598A Active JP6789458B1 (ja) 2020-02-14 2020-02-14 プログラム提供装置、プログラム提供方法およびプログラム提供システム

Country Status (4)

Country Link
US (1) US11703833B2 (ja)
JP (1) JP6789458B1 (ja)
CN (1) CN115104088B (ja)
WO (1) WO2021161534A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007213404A (ja) * 2006-02-10 2007-08-23 Canon Inc 組込機器、ダウンロード方法、記憶媒体、プログラム
JP2013235504A (ja) * 2012-05-10 2013-11-21 Toyota Motor Corp ソフトウェア配信システム、ソフトウェア配信方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312506A (ja) 2001-04-18 2002-10-25 Hitachi Ltd アプリケーションプログラムの配信方法及び配信システム
JP5404463B2 (ja) 2010-02-12 2014-01-29 三菱電機株式会社 制御装置及び管理装置
CN109791398B (zh) 2017-06-27 2020-12-18 三菱电机株式会社 调试装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007213404A (ja) * 2006-02-10 2007-08-23 Canon Inc 組込機器、ダウンロード方法、記憶媒体、プログラム
JP2013235504A (ja) * 2012-05-10 2013-11-21 Toyota Motor Corp ソフトウェア配信システム、ソフトウェア配信方法

Also Published As

Publication number Publication date
JPWO2021161534A1 (ja) 2021-08-19
US20230011646A1 (en) 2023-01-12
WO2021161534A1 (ja) 2021-08-19
CN115104088A (zh) 2022-09-23
CN115104088B (zh) 2024-02-06
US11703833B2 (en) 2023-07-18

Similar Documents

Publication Publication Date Title
CN110851167B (zh) 容器环境更新方法、装置、设备及存储介质
US8843878B1 (en) Quality software development process
Desai et al. Software testing: A practical approach
US20140113257A1 (en) Automated evaluation of programming code
Ismail et al. Black-Box Testing: Analisis Kualitas Aplikasi Source Code Bank Programming
US20170139702A1 (en) Method of cloud engineering services of industrial process automation systems
CN112053166A (zh) 一种基于区块链的商务云平台管理方法及系统
JP6789458B1 (ja) プログラム提供装置、プログラム提供方法およびプログラム提供システム
US20150020072A1 (en) Content space environment representation
Chou et al. Virtual teaching assistant for grading programming assignments: Non-dichotomous pattern based program output matching and partial grading approach
Tureczki et al. Interdisciplinary optimization of security operations centers with digital assistant
JP6366811B2 (ja) 検査装置、検査方法、及び、プログラム
Papazoglou A hybrid simulation platform for learning microprocessors
Hagar IoT Test Design: Frameworks, Techniques, Attacks, Patterns, and Tours
Friedland et al. Conducting a model based systems engineering tool trade study using a systems engineering approach
CN107656942B (zh) 产品原材质信息共享系统以及其方法
CN116306591B (zh) 流程表单生成方法、装置、设备及介质
JP7049534B1 (ja) デバッグ支援プログラム、デバッグ支援装置、デバッグ支援方法および機械学習装置
Hochstein et al. Computational engineering in the cloud: Benefits and challenges
JP2024068829A (ja) 情報処理方法、情報処理装置及びプログラム
JP7179600B2 (ja) アイソレーション管理装置、方法及びプログラム
Saeed et al. Conceptions of software testing as a service
Lilli A modeling and verification framework for security protocols
JP4630640B2 (ja) 設計情報検証装置および設計情報検証方法
JPH11212825A (ja) 組み込みシステムテスト方法及び組み込みシステムテスト装置並びに記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200729

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200729

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200817

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

Effective date: 20201006

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201102

R150 Certificate of patent or registration of utility model

Ref document number: 6789458

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250