JP7325658B2 - プログラム実行装置、及び、通信方法 - Google Patents

プログラム実行装置、及び、通信方法 Download PDF

Info

Publication number
JP7325658B2
JP7325658B2 JP2022556723A JP2022556723A JP7325658B2 JP 7325658 B2 JP7325658 B2 JP 7325658B2 JP 2022556723 A JP2022556723 A JP 2022556723A JP 2022556723 A JP2022556723 A JP 2022556723A JP 7325658 B2 JP7325658 B2 JP 7325658B2
Authority
JP
Japan
Prior art keywords
reception
execution device
program
processing unit
function
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
JP2022556723A
Other languages
English (en)
Other versions
JPWO2022079800A1 (ja
JPWO2022079800A5 (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
Publication of JPWO2022079800A1 publication Critical patent/JPWO2022079800A1/ja
Publication of JPWO2022079800A5 publication Critical patent/JPWO2022079800A5/ja
Application granted granted Critical
Publication of JP7325658B2 publication Critical patent/JP7325658B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Description

本開示は、プログラム実行装置、及び、通信方法に関する。
事前に序列付けられた手順を機械に実行させるPLC(Programmable Logic Controller)を制御するプログラムには、IEC61131-3で定義されたLD、FBD、ST、IL、SFCを含む5言語が存在している。その中でもFBDでは、入力パラメータと、出力パラメータと、入力パラメータに基づく演算結果を出力パラメータに出力するファンクションとを有するブロックが、FB(ファンクションブロック)としてグラフィカルに定義される。任意の機能を組み合わせて複数の処理が部品化されたファンクションブロックは、1コマンドのように表示される。
このようなプログラムに対して様々な技術が提案されている。例えば、特許文献1の技術では、ラダーロジックを解くことを含むコントローラ走査を実行する手段と、制御機能に関係するデータを収集するウェブサーバとが備えられ、ウェブサーバは、遠隔地のコンピュータからデータのリクエストに回答する機能を有する。
特表2004-511845号公報
特許文献1の技術では、コントローラが、コントローラ内のデータを収集する機能を有するが、外部のウェブサーバからデータを収集する機能を有していない。このため、ウェブサーバと通信するための機能を、コントローラに追加する必要があった。また、コントローラが、ラダープログラム及びFBを実行してウェブサーバのサービスを利用する場合、スキャン周期と非同期で、ウェブサーバとデータをやり取りするためには、FBの処理内でサービスの呼び出しと完了通知の待機とを行う必要がある。この結果、コントローラがウェブサーバのサービスを利用する場合には、コントローラの負荷が大きくなってしまうという問題があった。
そこで、本開示は、上記のような問題点を鑑みてなされたものであり、ラダープログラム及びFBを含むプログラムの実行時間を一定に保つことが可能な技術を提供することを目的とする。
本開示に係るプログラム実行装置は、サービスを提供するサービス実行装置と通信可能なプログラマブルコントローラを備え、前記プログラマブルコントローラは、ラダープログラム及びファンクションブロックを含むプログラムを定期的に実行するスキャン処理部と、前記スキャン処理部の実行と交互に、前記スキャン処理部の実行結果に基づいて、入出力機器とデータをやり取りするためのデータ処理を行うリフレッシュ処理部と、前記スキャン処理部及び前記リフレッシュ処理部とは非同期で、前記サービス実行装置へコマンドを送信する送信機能と、前記スキャン処理部及び前記リフレッシュ処理部とは非同期で、前記サービス実行装置からデータを受信データとして受信し、かつ、当該受信データをデバイスにセットするためにメモリ領域に格納する受信機能とを有する非同期外部通信処理部と含み、前記サービス実行装置と、前記プログラマブルコントローラと通信可能であり、前記プログラマブルコントローラで用いられる前記プログラムを生成するプログラム生成装置とをさらに備え、前記ファンクションブロック及び前記送信機能で用いられる送信パラメータは、前記サービス実行装置にアクセスするためのアクセス先を含み、前記プログラマブルコントローラは、前記サービス実行装置からの受信データの受信履歴に基づいて前記アクセス先を学習する。
本開示によれば、スキャン処理及びリフレッシュ処理とは非同期で、サービス実行装置へコマンドを送信する送信機能と、スキャン処理及びリフレッシュ処理とは非同期で、サービス実行装置からデータを受信データとして受信し、かつ、当該受信データをデバイスにセットするためにメモリ領域に格納する受信機能とを有する。これにより、ラダープログラム及びFBを含むプログラムの実行時間を一定に保つことができる。
本開示の目的、特徴、局面及び利点は、以下の詳細な説明と添付図面とによって、より明白となる。
実施の形態1に係るプログラム実行装置の全体構成を示すブロック図である。 実施の形態1に係るプログラム生成装置でのオフライン処理の手順を示すフローチャートである。 実施の形態1に係るラダープログラム及びFBを含むプログラムの一例を示す図である。 実施の形態1に係る非同期送信FBパラメータの一例を示す図である。 実施の形態1に係る非同期受信FBパラメータの一例を示す図である。 実施の形態1に係るプログラマブルコントローラでのオンライン処理の手順を示すフローチャートである。 実施の形態1に係るプログラマブルコントローラでのオンライン処理を示すタイミングチャートである。 実施の形態1に係る外部通信処理を示すフローチャートである。 実施の形態2に係るラダープログラム及びFBを含むプログラムの一例を示す図である。 実施の形態2に係る非同期送信FBパラメータの一例を示す図である。 実施の形態2に係る非同期受信FBパラメータの一例を示す図である。 実施の形態2に係るプログラマブルコントローラでのオンライン処理の手順を示すフローチャートである。 実施の形態2に係るプログラマブルコントローラでのオンライン処理を示すタイミングチャートである。 実施の形態3に係るプログラム生成装置で生成されるユーザ定義プログラムの一例を示す図である。 実施の形態3に係る外部通信処理を示すフローチャートである。 実施の形態4に係るプログラム生成装置で生成されるユーザ定義プログラムの一例を示す図である。 実施の形態4に係る非同期受信FBの一例を示す図である。 実施の形態4に係る非同期受信FBパラメータの一例を示す図である。 実施の形態5に係る非同期受信FBパラメータの一例を示す図である。 実施の形態5に係る外部通信処理を示すフローチャートである。 実施の形態6に係る非同期受信FBパラメータの一例を示す図である。 実施の形態6に係る外部通信処理を示すフローチャートである。 実施の形態7に係る外部通信処理を示すフローチャートである。 実施の形態7に係るプログラマブルコントローラでのオンライン処理の手順を示すフローチャートである。 その他の変形例に係るプログラマブルコントローラのハードウェア構成を示すブロック図である。 その他の変形例に係るプログラマブルコントローラのハードウェア構成を示すブロック図である。
<実施の形態1>
図1は、本実施の形態1に係るプログラム実行装置の全体構成を示すブロック図である。なお、後述される他の実施の形態に係るプログラム実行装置の全体構成も図1のプログラム実行装置の全体構成と同様である。
図1のプログラム実行装置は、プログラマブルコントローラ1と、プログラム生成装置51と、サービスを提供するサービス実行装置61とを備えており、入出力機器41と通信可能に接続されている。
プログラマブルコントローラ1は、サービス実行装置61と通信可能であり、サービス実行装置61のサービスを利用しながら、入出力機器41とデータをやり取りする。プログラマブルコントローラ1は、スキャン処理部11と、リフレッシュ処理部12と、非同期外部通信処理部13と、入出力制御部14、メモリ15と、通信機能部16とを備える。プロセッサ2がメモリ15などに格納された各種プログラムを実行することにより、スキャン処理部11、リフレッシュ処理部12、及び、非同期外部通信処理部13が実現される。
スキャン処理部11は、ラダープログラム及びFB(ファンクションブロック)を含むプログラムを定期的に実行する。以下の説明では、スキャン処理部11によって行われる処理を「スキャン処理」と記すこともある。
リフレッシュ処理部12は、スキャン処理部11の実行と交互に、スキャン処理部11の実行結果に基づいて、入出力機器41とデータをやり取りするためのデータ処理を行う。このデータ処理は、例えば、メモリ15とデータをやり取りする処理を含んでもよい。以下の説明では、リフレッシュ処理部12によって行われる処理を「リフレッシュ処理」と記すこともある。
非同期外部通信処理部13は、送信機能13aと受信機能13bとを有する。
送信機能13aは、スキャン処理部11及びリフレッシュ処理部12とは非同期で、サービス実行装置61へのリクエストに基づいてサービス実行装置61へコマンドを送信する。リクエストは、例えばリフレッシュ処理部12から取得される。以下では、リクエストとコマンドとは実質的に同じであり、両者を区別せずに説明する。
受信機能13bは、スキャン処理部11及びリフレッシュ処理部12とは非同期で、サービス実行装置61からデータを受信データとして受信し、かつ、当該受信データをデバイスにセットするためにメモリ15などに指定されたメモリ領域に格納する。このデバイスには、例えば完了通知のデバイス、入出力機器41などが含まれる。
以下の説明では、非同期外部通信処理部13によって行われる処理を「外部通信処理」と記すこともある。
入出力制御部14は、リフレッシュ処理部12の処理結果に基づいて入出力機器41へデータをセットしたり、入出力機器41とデータをやり取りしたりする。メモリ15には、プログラムと、サービス実行装置61から取得したデータとが格納される。通信機能部16は、プログラム生成装置51と、サービス実行装置61と通信する。
プログラム生成装置51は、プログラム生成機能部52と通信機能部53とを備える。プログラム生成機能部52は、ラダープログラム及びFBを含むプログラムを生成する。通信機能部53は、プログラム生成機能部52で生成されたプログラムをプログラマブルコントローラ1へ送信する。以上のように構成されたプログラム生成装置51は、プログラマブルコントローラ1と通信可能であり、プログラマブルコントローラ1で用いられるラダープログラム及びFBを含むプログラムを生成する。
サービス実行装置61は、例えば外部のサーバであり、通信機能部62とサービス処理実行部63とを備える。通信機能部62は、プログラマブルコントローラ1からのリクエスト(コマンド)を受信し、サービス処理実行部63で生成されたデータをプログラマブルコントローラ1に送信する。サービス処理実行部63は、通信機能部62で受信されたコマンドに応じてデータを生成する。以上のように構成されたサービス実行装置61は、プログラマブルコントローラ1からのリクエスト(コマンド)に応じてプログラマブルコントローラ1にデータを送信するサービスを提供する。以下の説明では、サービス実行装置61が提供するサービスを「外部サービス」と記すこともある。
本実施の形態1に係るプログラム実行装置は、ラダープログラム及びFBを含むプログラムの実行前に行うオフライン処理と、当該プログラムの実行中のオンライン処理とからなる2つのフェーズを有する。
図2は、本実施の形態1に係るプログラム生成装置51がラダープログラム及びFBを含むプログラムを生成するオフライン処理の手順を示すフローチャートである。
ステップS1にて、プログラム生成機能部52は、エンジニアリングツールを用いて、ラダープログラム及びFBを含むプログラムを記述する。
図3は、本実施の形態1に係るラダープログラム及びFBを含むプログラムの一例を示す図であり、具体的には、ラダープログラム及びFBを含み、実行時間を一定に保つプログラムの一例を示す図である。図3のプログラムは、入出力の値が真のときに後段のブロックの処理を実行できる入力接点(X0、X1、X2)と、FBの実行結果を保持するデバイス値(M0、M1、M2、D10)と、送信機能13aに関連する非同期送信FB(Send FB)と、受信機能13bに関連する非同期受信FB(Recv FB)とから構成される。
図3の非同期送信FBは、「enable」、「trigger」、「URL」、及び、「開始フラグ」の4つの入力と、「enout」の1つの出力とを有する。「enable」の値が真のときに、非同期送信FBが実行可能状態に許可される。「trigger」の値が真のときに、非同期送信FBが実行される。「URL」は、プログラマブルコントローラ1がサービス実行装置61にアクセスするためのアクセス先(アクセスポイント)を示す。「開始フラグ」は、非同期外部通信処理部13の送信機能13aの起動の有無を示すフラグであり、このフラグには、送信機能13aの起動を示す真(=1)及び停止を示す偽(=0)が選択的にセットされる。「開始フラグ」には任意のデバイスが割り当てられる。「enout」は実行完了時に真となる。
図3の非同期受信FBは、「enable」、及び、「完了フラグ」の2つの入力と、「enout」、「ready」、及び、「data」の3つの出力とを有する。「enable」の値が真のときに、非同期受信FBが実行可能状態に許可される。「完了フラグ」は、サービス実行装置61からのレスポンス(回答)の有無を示すフラグであり、このフラグには、レスポンスありを示す真(=1)及びレスポンスなしを示す偽(=0)が選択的にセットされる。「完了フラグ」には、任意のデバイスが割り当てられる。「enout」は実行完了時に真となる。「ready」は、サービス実行装置61からのレスポンスがあった場合に真となる。「data」には、サービス実行装置61からの受信データがセットされる。
図2のステップS1のプログラムの記述が完了すると、ステップS2にて、プログラム生成機能部52は、当該プログラムをプログラマブルコントローラ1が実行するための機械語に変換する。このとき、プログラム生成機能部52は、非同期送信FBから「URL」と「開始フラグ」とを取得して非同期送信FBパラメータとして保存し、非同期受信FBから「完了フラグ」と「data」とを取得して非同期受信FBパラメータとして保存する。
図4は、本実施の形態1に係る非同期送信FBパラメータの一例を示す図である。非同期送信FBパラメータは、非同期送信FB及び送信機能13aで用いられる送信パラメータである。図4の非同期送信FBパラメータは、「URL」のパラメータと、「開始フラグ」のパラメータ(M10)とを含む。
図5は、本実施の形態1に係る非同期受信FBパラメータの一例を示す図である。非同期受信FBパラメータは、非同期受信FB及び受信機能13bで用いられる受信パラメータである。図5の非同期受信FBパラメータは、「完了フラグ」のパラメータ(M11)と、「data」のパラメータ(D10)とを含む。
図2のステップS2の機械語への変換が完了すると、ステップS3にて、プログラム生成機能部52は、機械語に変換したプログラムと、非同期送信FBパラメータと、非同期受信FBパラメータとを、プログラマブルコントローラ1へ送信するダウンロードを行う。
図6は、本実施の形態1に係るプログラマブルコントローラ1がラダープログラム及びFBを含むプログラムを実行するオンライン処理の手順を示すフローチャートである。図7は、本実施の形態1に係るプログラマブルコントローラ1がラダープログラム及びFBを含むプログラムを実行するオンライン処理を示すタイミングチャートである。
<スキャン処理及びリフレッシュ処理>
図6及び図7に示すように、プログラマブルコントローラ1は、スキャン処理とリフレッシュ処理とを交互に繰り返して行う。
スキャン処理では、スキャン処理部11が、プログラム生成装置51で生成された機械語に基づいて、図3のようなラダープログラム及びFBを含むプログラムを実行する。
スキャン処理では、「trigger」が真である(「trigger」=1)場合、非同期送信FBが実行され、「開始フラグ」に関する非同期送信FBパラメータが真になる(M10=1)。
スキャン処理では、「完了フラグ」に関する非同期受信FBパラメータが真である(M11=1)場合、非同期受信FBが実行され、「ready」が真にセットされ(「ready」=1)、「data」が受信データにセットされる(「data」=受信データ)。図示しないが、これらがセットされた後には、「完了フラグ」に関する非同期受信FBパラメータが偽になる(M11=0)。
リフレッシュ処理では、リフレッシュ処理部12が入出力制御部14と協働して、スキャン処理部11の実行結果を入出力機器41に出力し、入出力機器41からセンサなどで検出された値を取得する。
<外部通信処理>
図6及び図7に示すように、プログラマブルコントローラ1は、スキャン処理及びリフレッシュ処理と非同期で、スキャン処理及びリフレッシュ処理と並列に外部通信処理を行う。
外部通信処理では、非同期外部通信処理部13が、送信機能13a及び受信機能13bを用いてサービス実行装置61とデータのやり取りを行う。なお、送信機能13aは、スキャン処理部11と非同期であるが、スキャン処理部11で実行される非同期送信FBで用いられる図4の非同期送信FBパラメータを、スキャン処理部11と共用する。同様に、受信機能13bは、スキャン処理部11と非同期であるが、スキャン処理部11で実行される非同期受信FBで用いられる図5の非同期受信FBパラメータを、スキャン処理部11と共用する。
図7のように、非同期外部通信処理部13は、「開始フラグ」に関する非同期送信FBパラメータが真になった(M10=1)場合に、サービス実行装置61へリクエストを送信機能13aによって送信する。図示しないが、このリクエストの送信と並行して、非同期外部通信処理部13は、「開始フラグ」に関する非同期送信FBパラメータを偽にする(M10=0)。
また、非同期外部通信処理部13は、サービス実行装置61からのレスポンスを受信機能13bによって受信した場合に、デバイス値である「data」に関する非同期受信FBパラメータへ、サービス実行装置61からの受信データをセットする(D10=受信データ)。またこの場合に、非同期外部通信処理部13は、「完了フラグ」に関する非同期受信FBパラメータを真にする(M11=1)。
なお図7の例では、スキャン処理及びリフレッシュ処理はスレッド[0]に割り当てられ、外部通信処理はスレッド[1]に割り当てられる。スレッド[0]とスレッド[1]とは、同一プロセッサ上で論理的に並列に実行されてもよいし、マルチコアプロセッサ上で物理的に並列に実行されてもよい。
図8は、本実施の形態1に係る非同期外部通信処理部13が行う外部通信処理を示すフローチャートである。なお、図8の外部通信処理は、図6の外部通信処理実行に対応している。
ステップS11にて、非同期外部通信処理部13は、「開始フラグ」に関する非同期送信FBパラメータを参照して、デバイスの「開始フラグ」のをチェックし、「開始フラグ」が真であるか否かを判定する。「開始フラグ」が真であると判定された場合には処理がステップS12に進み、「開始フラグ」が偽であると判定された場合にはステップS11の処理が再度行われる。
ステップS12にて、非同期外部通信処理部13の送信機能13aは、「URL」に関する非同期送信FBパラメータを参照し、当該パラメータに基づいてサービス実行装置61にアクセスし、データをリクエストする。また、非同期外部通信処理部13は、「開始フラグ」に関する非同期送信FBパラメータを偽にする。
ステップS13にて、非同期外部通信処理部13は、受信機能13bがサービス実行装置61からのレスポンスを受信したか否かを判定する。レスポンスを受信したと判定された場合には処理がステップS14に進み、レスポンスを受信しなかったと判定された場合にはステップS13の処理が再度行われる。なお、レスポンス待ちには、ポーリングが用いられてもよいし、スレッドを待ち状態へ遷移させ、サービス実行装置61からのレスポンスをトリガにした起動を行うことが用いられてもよい。
ステップS14にて、非同期外部通信処理部13の受信機能13bは、完了通知のデバイスの「完了フラグ」に関する非同期受信FBパラメータへ真をセットする。また、非同期外部通信処理部13の受信機能13bは、完了通知のデバイスの「data」に関する非同期受信FBパラメータへ、サービス実行装置61からの受信データをセットする。その後、処理がステップS11に戻る。
ステップS14の後には、図7に示すように、「完了フラグ」に関する非同期受信FBパラメータが真であることに基づいて、次のスキャン処理で非同期受信FBが実行される。これにより、「ready」が真にセットされ(「ready」=1)、「data」が受信データにセットされる(「data」=受信データ)。
<実施の形態1のまとめ>
以上のような本実施の形態1では、送信機能13aは、スキャン処理部11及びリフレッシュ処理部12とは非同期で、サービス実行装置61へコマンドを送信する。そして、受信機能13bは、スキャン処理部11及びリフレッシュ処理部12とは非同期で、サービス実行装置61から受信データを受信し、かつ、当該受信データをデバイスにセットするためにメモリ領域に格納する。このような構成によれば、サービス実行装置61へのアクセスからレスポンスまでの時間が一定でなくても、ラダープログラム及びFBを含むプログラムの実行時間を一定に保つことができる。このため、プログラマブルコントローラ1の負荷を低減することができる。
<実施の形態2>
図9は、本実施の形態2に係るラダープログラム及びFBを含むプログラムの一例を示す図である。図9のプログラムは、複数の非同期送信FB(第1及び第2非同期送信FB)と、複数の非同期受信FB(第1及び第2非同期受信FB)とを含む。
第1及び第2非同期送信FBのそれぞれは、実施の形態1に係る非同期送信FB(図3)に「関連ID」の入力が追加されたFBと概ね同じである。同様に、第1及び第2非同期受信FBのそれぞれは、実施の形態1に係る非同期受信FB(図3)に「関連ID」の入力が追加されたFBと概ね同じである。
図10は、本実施の形態2に係る非同期送信FBパラメータの一例を示す図であり、図11は、本実施の形態2に係る非同期受信FBパラメータの一例を示す図である。図10及び図11に示すように、本実施の形態2では、非同期送信FBパラメータと非同期受信FBパラメータとのそれぞれは、非同期送信FBパラメータと非同期受信FBパラメータとを互いに関連付ける「関連ID」を含む。
第1非同期送信FBで用いられる、図10の上側の第1非同期送信FBパラメータと、第1非同期受信FBで用いられる、図11の上側の第1非同期受信FBパラメータとは、「関連ID」のパラメータである「123」によって互いに関連付けられている。同様に、第2非同期送信FBで用いられる、図10の下側の第2非同期送信FBパラメータと、第2非同期受信FBで用いられる、図11の下側の第2非同期受信FBパラメータとは、「関連ID」のパラメータである「121」によって互いに関連付けられている。
このような構成によれば、送信機能13aが、一の非同期送信FBについてリクエストの送信を行った後に、受信機能13bが、当該一の非同期送信FBと「関連ID」で関連付けられた一の非同期受信FBについてレスポンスの受信を行うことができる。
図12は、本実施の形態2に係るプログラマブルコントローラ1がラダープログラム及びFBを含むプログラムを実行するオンライン処理の手順を示すフローチャートである。なお、図12では、非同期外部通信処理部13が第1非同期送信FBパラメータ及び第1非同期受信FBパラメータを用いる外部通信処理が、第1外部通信処理と記されている。非同期外部通信処理部13が第2非同期送信FBパラメータ及び第2非同期受信FBパラメータを用いる外部通信処理が、第2外部通信処理と記されている。
図13は、本実施の形態2に係るプログラマブルコントローラ1がラダープログラム及びFBを含むプログラムを実行するオンライン処理を示すタイミングチャートである。なお、図13では、送信機能13aが第1非同期送信FBパラメータを用いて送信を行うタイミングが、第1送信機能と記され、受信機能13bが第1非同期受信FBパラメータを用いて受信を行うタイミングが、第1受信機能と記されている。同様に、送信機能13aが第2非同期送信FBパラメータを用いて送信を行うタイミングが、第2送信機能と記され、受信機能13bが第2非同期受信FBパラメータを用いて受信を行うタイミングが、第2受信機能と記されている。
図12及び図13に示すように、外部通信処理を行うスレッドは、非同期送信FBパラメータの組の数だけ用いられる。図10のように非同期送信FBパラメータの組が2つである場合、1組の非同期送信FBパラメータを用いる1つの外部通信処理はスレッド[1]に割り当てられ、別の組の非同期送信FBパラメータを用いる別の外部通信処理はスレッド[2]に割り当てられる。スレッド[0]~スレッド[2]は、同一プロセッサ上で論理的に並列に実行されてもよいし、マルチコアプロセッサ上で物理的に並列に実行されてもよい。
第1非同期受信FBの「trigger」が真である場合、スキャン処理で第1非同期送信FBが実行され、「開始フラグ」に関する第1非同期送信FBパラメータが真になる(M10=1)。第2非同期受信FBの「trigger」が真である場合、スキャン処理で第2非同期送信FBが実行され、「開始フラグ」に関する第2非同期送信FBパラメータが真になる(M20=1)。
非同期外部通信処理部13は、「開始フラグ」に関する第1非同期送信FBパラメータが真になった(M10=1)場合に、サービス実行装置61へ第1リクエストを送信機能13aによって送信する。この第1リクエストの送信と並行して、非同期外部通信処理部13は、「開始フラグ」に関する第1非同期送信FBパラメータを偽にする(M10=0)。
また、非同期外部通信処理部13は、第1非同期受信FBパラメータと「関連ID」によって関連付けられた「URL」に関する第1非同期送信FBパラメータを読み出し、当該第1非同期送信FBパラメータが示すサービス実行装置61から第1レスポンスを受信機能13bによって受信したかを判定する。第1レスポンスを受信したと判定された場合、非同期外部通信処理部13は、デバイス値である「data」に関する第1非同期受信FBパラメータへ、サービス実行装置61からの受信データをセットする(D10=受信データ)。またこの場合に、非同期外部通信処理部13は、「完了フラグ」に関する第1非同期受信FBパラメータを真にする(M11=1)。
第2非同期送信FBパラメータ及び第2非同期受信FBパラメータについても第1非同期送信FBパラメータ及び第1非同期受信FBパラメータと同様の処理が行われる。
すなわち、非同期外部通信処理部13は、「開始フラグ」に関する第2非同期送信FBパラメータが真になった(M20=1)場合に、サービス実行装置61へ第2リクエストを送信機能13aによって送信する。この第2リクエストの送信と並行して、非同期外部通信処理部13は、「開始フラグ」に関する第2非同期送信FBパラメータを偽にする(M20=0)。
また、非同期外部通信処理部13は、第2非同期受信FBパラメータと「関連ID」によって関連付けられた「URL」に関する第2非同期送信FBパラメータを読み出し、当該第2非同期送信FBパラメータが示すサービス実行装置61から第2レスポンスを受信機能13bによって受信したかを判定する。第2レスポンスを受信したと判定された場合、非同期外部通信処理部13は、デバイス値である「data」に関する第2非同期受信FBパラメータへ、サービス実行装置61からの受信データをセットする(D20=受信データ)。またこの場合に、非同期外部通信処理部13は、「完了フラグ」に関する第2非同期受信FBパラメータを真にする(M21=1)。
以上のような本実施の形態2に係るプログラム実行装置によれば、1つのプログラムに複数の非同期送信FB及び複数の非同期受信FBが含まれる場合であっても、非同期送信FB及び非同期受信FBの組ごとに処理を行うことができる。このため、1つのサービス実行装置61から複数種類のデータを取得したり、複数のサービス実行装置61からデータを取得したりすることができる。
<実施の形態3>
図14は、本実施の形態3に係るプログラム生成装置51で生成されるユーザ定義プログラムの一例を示す図である。ユーザ定義プログラムは、非同期外部通信処理部13の処理、つまり外部通信処理を規定する。図14のユーザ定義プログラムでは、「開始フラグ」が真であるときに、非同期外部通信処理部13が以下のように外部通信処理を実行することが規定されている。
最初に、送信機能13aは、サービス実行装置61へsbuf内のデータを1024バイトで送信する。次に、受信機能13bは、サービス実行装置61からのレスポンスを待ち、レスポンスがあれば1024バイトのデータをrbufへセットし、「完了フラグ」へ真をセットする。
ユーザ定義プログラムは、図2のステップS3のダウンロードによってプログラマブルコントローラ1へ送信され、プログラマブルコントローラ1は、当該ユーザ定義プログラムをメモリ15へロードする。
図15は、本実施の形態3に係る非同期外部通信処理部13が行う外部通信処理を示すフローチャートである。この図15のフローチャートは、図6の外部通信処理実行の前に、ユーザ定義プログラム実行が追加されている。このユーザ定義プログラム実行は、システム起動時に実行される。この処理が行われると、ユーザ定義プログラムが実行され、外部通信処理のスレッドが生成される。その後、外部通信処理実行において図8の外部通信処理が行われる。
以上のような本実施の形態3に係るプログラム実行装置によれば、ユーザ定義プログラムを変更することによって、外部通信処理を変更することができる。
<実施の形態4>
図16は、本実施の形態4に係るプログラム生成装置51で生成されるユーザ定義プログラムの一例を示す図である。図16のユーザ定義プログラムは、図14のユーザ定義プログラムと概ね同じであるが、非同期外部通信処理部13が受信データを複数のデバイスに対応させて分割し、複数の受信データをセットすることが規定されている。
具体的には図16において、6行目では受信バッファの先頭から32バイトの受信データをパラメータ(D10)へセットすること、7行目では受信バッファの33バイト目から32バイトの受信データをパラメータ(D100)へセットすること、8行目では受信バッファの65バイト目から128バイトの受信データをパラメータ(D200)へセットすることが規定されている。つまり図16では、3つのデバイスに対応させて分割された3つの受信データのパラメータ(D10,D100,D200)が規定されている。
図17は、本実施の形態4に係る非同期受信FBの一例を示す図である。図17の非同期受信FBは、図3の非同期受信FBの「data」の代わりに、分割された3つの受信データがそれぞれセットされる「data1」、「data2」、「data3」の出力を有する。
図18は、本実施の形態4に係る非同期受信FBパラメータの一例を示す図である。図18の非同期受信FBパラメータは、図5の非同期受信FBパラメータの「data」の代わりに、「data1」、「data2」、「data3」のパラメータ(D10,D100,D200)を含む。
以上のような本実施の形態4に係るプログラム実行装置によれば、サービス実行装置61からの受信データを、複数のデバイスに対応させて分割してセットすることができる。これにより、データサイズの低減化、ラダープログラムからのデータの低減化、及び、それに伴うデータアクセス時間の短縮化が期待できる。
<実施の形態5>
図19は、本実施の形態5に係る非同期受信FBパラメータの一例を示す図である。図19の非同期受信FBパラメータは、実施の形態1で説明した図5の非同期受信FBパラメータに、受信機能13bでの受信データの通信エラーの有無を示す「エラーフラグ」が追加されており、通信エラーの有無がデバイスにセットされる。
図20は、本実施の形態5に係る外部通信処理のフローチャートである。図20のフローチャートは、実施の形態1で説明した図8のフローチャートにステップS21及びステップS22を追加したフローチャートと同様である。このため、以下ではステップS21及びステップS22について主に説明する。
ステップS13にて、レスポンスを受信したと判定された場合には処理がステップS21に進み、レスポンスを受信しなかったと判定された場合にはステップS13の処理が再度行われる。
ステップS21にて、非同期外部通信処理部13は、サービス実行装置61からレスポンスとともに受信されるべき受信データを待つ機能において、戻り値または受信ステータスにエラーがあるか否か、つまり通信エラーがあるか否かを判定する。通信エラーがあると判定された場合には処理がステップS22に進み、受信通信エラーがないと判定された場合には処理がステップS14に進む。
ステップS22にて、「エラーフラグ」に関する非同期受信FBパラメータを真にセットする。その後、処理がステップS11に戻る。
以上のような本実施の形態5に係るプログラム実行装置によれば、ラダープログラム及びFBを含むプログラムを実行するスキャン処理部11は、次のスキャン処理で受信データの通信エラーを検知することができる。したがって、エラーへの対応処理が可能となる。
<実施の形態6>
図21は、本実施の形態6に係る非同期受信FBパラメータの一例を示す図である。図21の非同期受信FBパラメータは、実施の形態5で説明した図19の非同期受信FBパラメータに、送信機能13aによるコマンドの送信開始から、受信機能13bによる受信データの受信までの時間の閾値を示す「タイムアウト時間」が追加されている。なお、タイムアウト時間は数値でセットされる。
図22は、本実施の形態6に係る外部通信処理のフローチャートである。図22のフローチャートは、実施の形態5で説明した図20のフローチャートにステップS26、ステップS27及びステップS28を追加したフローチャートと同様である。このため、以下ではステップS26~ステップS28について主に説明する。
ステップS11にて、「開始フラグ」が真であると判定された場合には処理がステップS26に進み、「開始フラグ」が偽であると判定された場合にはステップS11の処理が再度行われる。
ステップS26にて、非同期外部通信処理部13は、その時点の時刻を開始時刻として取得する。その後、処理がステップS12に進む。
ステップS12後のステップS27にて、非同期外部通信処理部13は、その時点の時刻を現在時刻として取得する。
ステップS28にて、非同期外部通信処理部13は、開始時刻と現在時刻との差が、タイムアウト時間以下であるか否かを判定する。差がタイムアウト時間以下であると判定された場合には処理がステップS13に進み、差がタイムアウト時間よりも大きいと判定された場合には処理がステップS22に進む。
ステップS13にて、レスポンスを受信したと判定された場合には処理がステップS21に進み、レスポンスを受信しなかったと判定された場合には処理がステップS27に戻る。
以上のような本実施の形態6に係るプログラム実行装置によれば、ラダープログラム及びFBを含むプログラムを実行するスキャン処理部11は、次のスキャン処理で受信データの受信におけるタイムアウトを検知することができる。したがって、エラーへの対応処理が可能となる。
<実施の形態7>
図23は、本実施の形態7に係る外部通信処理のフローチャートである。実施の形態1の外部通信処理(図8)のステップS14では、非同期外部通信処理部13は、非同期受信FBパラメータの完了通知のデバイスについて「完了フラグ」及び「data」に関する非同期受信FBパラメータをセットした。つまりステップS14にて、非同期外部通信処理部13は、スキャン処理で読み書きされる領域について「完了フラグ」及び「data」に関する非同期受信FBパラメータをセットした。これに対して、図23のステップS14では、非同期外部通信処理部13は、スキャン処理で読み書きされない一時的なデバイスに「完了フラグ」及び「data」に関する非同期受信FBパラメータをセットする。
図24は、本実施の形態7に係るプログラマブルコントローラ1がラダープログラム及びFBを含むプログラムを実行するオンライン処理の手順を示すフローチャートである。実施の形態1に係る図6のオンライン処理では、外部通信処理によってデバイスにセットされた「完了フラグ」及び「data」を用いてスキャン処理が行われた。これに対して、図24のオンライン処理では、フレッシュ処理実行前に、外部通信処理部によって一次的なデバイスにセットされた一時的なデバイス値である「完了フラグ」及び「data」が、スキャン処理で読み書きされるデバイスにセットされる。つまり、プログラマブルコントローラ1は、非同期外部通信処理部13によって一時的なデバイスにセットされた受信データを、スキャン処理部11で読み書きされるデバイスに、スキャン処理部11の実行が行われる期間以外の期間にセットする。
以上のような本実施の形態6に係るプログラム実行装置によれば、スキャン処理の途中に「完了フラグ」及び「data」が更新される可能性を低減することができる。これにより、スキャン処理で使用される「完了フラグ」及び「data」の原子性を高めることができる。
<変形例>
プログラマブルコントローラ1は、サービス実行装置61からの受信データの受信履歴に基づいてアクセス先である「URL」をバックグランドで学習してもよい。例えば、プログラマブルコントローラ1は、サービス実行装置61からの受信データの受信時期や受信頻度などの受信履歴に基づいて「URL」を学習してもよい。また例えば、学習には、AI(artificial intelligence)学習が用いられてもよい。
<その他の変形例>
上述した図1のスキャン処理部11、リフレッシュ処理部12、及び、非同期外部通信処理部13を、以下「スキャン処理部11等」と記す。スキャン処理部11等は、図25に示す処理回路81により実現される。すなわち、処理回路81は、ラダープログラム及びファンクションブロックを含むプログラムを定期的に実行するスキャン処理部11と、スキャン処理部の実行と交互に、スキャン処理部の実行結果に基づいて、入出力機器とデータをやり取りするためのデータ処理を行うリフレッシュ処理部12と、スキャン処理部及びリフレッシュ処理部とは非同期で、サービス実行装置へコマンドを送信する送信機能13aと、スキャン処理部及びリフレッシュ処理部とは非同期で、サービス実行装置からデータを受信データとして受信し、かつ、当該受信データをデバイスにセットするためにメモリ領域に格納する受信機能13bとを有する非同期外部通信処理部13と、を備える。処理回路81には、専用のハードウェアが適用されてもよいし、メモリに格納されるプログラムを実行するプロセッサが適用されてもよい。プロセッサには、例えば、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、DSP(Digital Signal Processor)などが該当する。
処理回路81が専用のハードウェアである場合、処理回路81は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせたものが該当する。スキャン処理部11等の各部の機能それぞれは、処理回路を分散させた回路で実現されてもよいし、各部の機能をまとめて一つの処理回路で実現されてもよい。
処理回路81がプロセッサである場合、スキャン処理部11等の機能は、ソフトウェア等との組み合わせにより実現される。なお、ソフトウェア等には、例えば、ソフトウェア、ファームウェア、または、ソフトウェア及びファームウェアが該当する。ソフトウェア等はプログラムとして記述され、メモリに格納される。図26に示すように、処理回路81に適用されるプロセッサ82は、メモリ83に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。すなわち、プログラマブルコントローラ1は、処理回路81により実行されるときに、ラダープログラム及びファンクションブロックを含むプログラムを定期的に実行するスキャン処理と、スキャン処理の実行結果に基づいてデータ処理を行うリフレッシュ処理とを交互に行うステップと、スキャン処理及びリフレッシュ処理とは非同期で、サービス実行装置へコマンドを送信する送信機能と、スキャン処理及びリフレッシュ処理とは非同期で、サービス実行装置からデータを受信データとして受信し、かつ、当該受信データをデバイスにセットするためにメモリ領域に格納する受信機能とを有する外部通信処理を行うステップと、が結果的に実行されることになるプログラムを格納するためのメモリ83を備える。換言すれば、このプログラムは、スキャン処理部11等の手順や方法をコンピュータに実行させるものであるともいえる。ここで、メモリ83は、例えば、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)、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD(Digital Versatile Disc)、そのドライブ装置等、または、今後使用されるあらゆる記憶媒体であってもよい。
以上、スキャン処理部11等の各機能が、ハードウェア及びソフトウェア等のいずれか一方で実現される構成について説明した。しかしこれに限ったものではなく、スキャン処理部11等の一部を専用のハードウェアで実現し、別の一部をソフトウェア等で実現する構成であってもよい。例えば、スキャン処理部11については専用のハードウェアとしての処理回路81、及び、インターフェースなどでその機能を実現し、それ以外についてはプロセッサ82としての処理回路81がメモリ83に格納されたプログラムを読み出して実行することによってその機能を実現することが可能である。
以上のように、処理回路81は、ハードウェア、ソフトウェア等、またはこれらの組み合わせによって、上述の各機能を実現することができる。また、以上で説明したプログラマブルコントローラ1の各機能あるいは各構成要素は、各機器に分散して配置されてもよいし、いずれかの機器に集中して配置されてもよい。
なお、各実施の形態及び各変形例を自由に組み合わせたり、各実施の形態及び各変形例を適宜、変形、省略したりすることが可能である。
上記した説明は、すべての局面において、例示であって、限定的なものではない。例示されていない無数の変形例が、想定され得るものと解される。
1 プログラマブルコントローラ、11 スキャン処理部、12 リフレッシュ処理部、13 非同期外部通信処理部、13a 送信機能、13b 受信機能、41 入出力機器、51 プログラム生成装置、61 サービス実行装置。

Claims (9)

  1. サービスを提供するサービス実行装置と通信可能なプログラマブルコントローラを備え
    前記プログラマブルコントローラは、
    ラダープログラム及びファンクションブロックを含むプログラムを定期的に実行するスキャン処理部と、
    前記スキャン処理部の実行と交互に、前記スキャン処理部の実行結果に基づいて、入出力機器とデータをやり取りするためのデータ処理を行うリフレッシュ処理部と、
    前記スキャン処理部及び前記リフレッシュ処理部とは非同期で、前記サービス実行装置へコマンドを送信する送信機能と、前記スキャン処理部及び前記リフレッシュ処理部とは非同期で、前記サービス実行装置からデータを受信データとして受信し、かつ、当該受信データをデバイスにセットするためにメモリ領域に格納する受信機能とを有する非同期外部通信処理部と
    含み、
    前記サービス実行装置と、
    前記プログラマブルコントローラと通信可能であり、前記プログラマブルコントローラで用いられる前記プログラムを生成するプログラム生成装置と
    をさらに備え、
    前記ファンクションブロック及び前記送信機能で用いられる送信パラメータは、前記サービス実行装置にアクセスするためのアクセス先を含み、
    前記プログラマブルコントローラは、
    前記サービス実行装置からの受信データの受信履歴に基づいて前記アクセス先を学習する、プログラム実行装置。
  2. 請求項に記載のプログラム実行装置であって、
    前記ファンクションブロック及び前記送信機能で用いられる送信パラメータは、前記送信機能の起動の有無を示す開始フラグをさらに含み、
    前記ファンクションブロック及び前記受信機能で用いられる受信パラメータは、前記サービス実行装置からのレスポンスの有無を示す完了フラグと、前記受信データとを含む、プログラム実行装置。
  3. 請求項に記載のプログラム実行装置であって、
    前記ファンクションブロック及び前記送信機能で用いられる送信パラメータと、前記ファンクションブロック及び前記受信機能で用いられる受信パラメータとのそれぞれは、前記送信パラメータと前記受信パラメータとを互いに関連付ける関連IDを含む、プログラム実行装置。
  4. 請求項に記載のプログラム実行装置であって、
    前記プログラム生成装置は、
    前記非同期外部通信処理部の処理を規定する定義プログラムを生成する、プログラム実行装置。
  5. 請求項に記載のプログラム実行装置であって、
    前記ファンクションブロック及び前記受信機能で用いられる受信パラメータは、複数の前記受信データを含む、プログラム実行装置。
  6. 請求項に記載のプログラム実行装置であって、
    前記ファンクションブロック及び前記受信機能で用いられる受信パラメータは、前記受信機能での前記受信データの通信エラーの有無を示すエラーフラグを含む、プログラム実行装置。
  7. 請求項に記載のプログラム実行装置であって、
    前記ファンクションブロック及び前記受信機能で用いられる受信パラメータは、前記送信機能による前記コマンドの送信から、前記受信機能による前記受信データの受信までの時間の閾値を示すタイムアウト時間を含む、プログラム実行装置。
  8. 請求項に記載のプログラム実行装置であって、
    前記プログラマブルコントローラは、
    前記スキャン処理部で読み書きされない一時的なデバイスにセットされた前記受信データを、前記スキャン処理部で読み書きされるデバイスに、前記スキャン処理部の実行が行われる期間以外の期間にセットする、プログラム実行装置。
  9. サービスを提供するサービス実行装置と通信可能なプログラマブルコントローラと、前記サービス実行装置と、プログラム生成装置とを備えるプログラム実行装置の通信方法であって、
    ラダープログラム及びファンクションブロックを含むプログラムを定期的に実行するスキャン処理と、前記スキャン処理の実行結果に基づいてデータ処理を行うリフレッシュ処理とを交互に行い、
    前記スキャン処理及び前記リフレッシュ処理とは非同期で、前記サービス実行装置へコマンドを送信する送信機能と、前記スキャン処理及び前記リフレッシュ処理とは非同期で、前記サービス実行装置からデータを受信データとして受信し、かつ、当該受信データをデバイスにセットするためにメモリ領域に格納する受信機能とを有する外部通信処理を行い、
    前記プログラム生成装置は、前記プログラマブルコントローラで用いられる前記プログラムを生成し、
    前記ファンクションブロック及び前記送信機能で用いられる送信パラメータは、前記サービス実行装置にアクセスするためのアクセス先を含み、
    前記サービス実行装置からの受信データの受信履歴に基づいて前記アクセス先を学習する、通信方法。
JP2022556723A 2020-10-13 2020-10-13 プログラム実行装置、及び、通信方法 Active JP7325658B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/038620 WO2022079800A1 (ja) 2020-10-13 2020-10-13 プログラマブルコントローラ、プログラム実行装置、及び、通信方法

Publications (3)

Publication Number Publication Date
JPWO2022079800A1 JPWO2022079800A1 (ja) 2022-04-21
JPWO2022079800A5 JPWO2022079800A5 (ja) 2023-01-04
JP7325658B2 true JP7325658B2 (ja) 2023-08-14

Family

ID=81207871

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022556723A Active JP7325658B2 (ja) 2020-10-13 2020-10-13 プログラム実行装置、及び、通信方法

Country Status (2)

Country Link
JP (1) JP7325658B2 (ja)
WO (1) WO2022079800A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276508A (ja) 1999-03-26 2000-10-06 Omron Corp ツール装置及びネットワークシステム構築方法並びに記録媒体
JP2005293310A (ja) 2004-03-31 2005-10-20 Omron Corp ノードおよびツールならびにネットワークシステムおよび共有データの通信方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002006907A (ja) * 2000-06-26 2002-01-11 Omron Corp I/oユニット及びプログラマブルコントローラシステム
JP5230545B2 (ja) * 2009-06-26 2013-07-10 三菱電機株式会社 制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276508A (ja) 1999-03-26 2000-10-06 Omron Corp ツール装置及びネットワークシステム構築方法並びに記録媒体
JP2005293310A (ja) 2004-03-31 2005-10-20 Omron Corp ノードおよびツールならびにネットワークシステムおよび共有データの通信方法

Also Published As

Publication number Publication date
JPWO2022079800A1 (ja) 2022-04-21
WO2022079800A1 (ja) 2022-04-21

Similar Documents

Publication Publication Date Title
US20060155960A1 (en) Programmable controller
CN111641669A (zh) 以网络为中心的进程控制系统中的动态负载平衡
CN100587678C (zh) 外部设备访问装置和系统大规模集成电路
CN113741166B (zh) 一种基于多cpu工业系统控制器的工控逻辑冗余实现方法
JP7325658B2 (ja) プログラム実行装置、及び、通信方法
CN112131174A (zh) 支持在多个芯片之间通信的方法、装置、电子设备和计算机存储介质
JP3651573B2 (ja) ファクトリーオートメーションシステムの制御方法、ファクトリーオートメーションシステムの中央制御装置
JP2024024607A (ja) メモリーアクセスのための集積回路、処理方法、電子機器及び媒体
JP6419400B1 (ja) Plc、ネットワークユニット、cpuユニット、及びデータ転送方法
JP2011070259A (ja) データ転送装置及びデータ転送方法
JP2020087179A (ja) コントローラ、およびコントローラの制御方法
JP7435521B2 (ja) コントローラ、制御方法及び制御プログラム
JP7304833B2 (ja) 情報処理装置、情報処理方法、および、情報処理プログラム
JP7416296B1 (ja) 情報処理装置、情報処理方法、情報処理プログラム及び分散制御システム
JP6626216B2 (ja) コントローラ
JP5045168B2 (ja) 周辺デバイス制御装置及び方法
JP2584903B2 (ja) 外部装置制御方式
JP2002373156A (ja) クラスタ制御システム及びクラスタ制御システムにおけるシナリオ実行方法
KR20160035446A (ko) 공장 자동화 시스템의 제어방법
JP2001229136A (ja) 制御装置及び制御システム並びにデータ転送装置
KR20230082352A (ko) 복수의 프로세서들 사이에서 데이터를 공유하기 위한 장치 및 방법
JP3599099B2 (ja) 電子ディスク装置用シーズ制御回路
JP2010061193A (ja) 制御システムおよび制御方法
CN100511163C (zh) 修改周边装置控制器的参数的方法及系统
CN115033186A (zh) 双端口NVMe控制器及读写命令处理方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221012

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221012

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230801

R150 Certificate of patent or registration of utility model

Ref document number: 7325658

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150