JP7446537B1 - プログラマブルロジックコントローラ、制御方法及びプログラム - Google Patents
プログラマブルロジックコントローラ、制御方法及びプログラム Download PDFInfo
- Publication number
- JP7446537B1 JP7446537B1 JP2023550654A JP2023550654A JP7446537B1 JP 7446537 B1 JP7446537 B1 JP 7446537B1 JP 2023550654 A JP2023550654 A JP 2023550654A JP 2023550654 A JP2023550654 A JP 2023550654A JP 7446537 B1 JP7446537 B1 JP 7446537B1
- Authority
- JP
- Japan
- Prior art keywords
- program
- memory
- execution
- update
- unit
- 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
Links
- 238000000034 method Methods 0.000 title claims description 17
- 230000015654 memory Effects 0.000 claims abstract description 522
- 230000006870 function Effects 0.000 claims description 7
- 102100030288 Phospholipid phosphatase-related protein type 1 Human genes 0.000 description 33
- 102100030368 Phospholipid phosphatase-related protein type 4 Human genes 0.000 description 32
- 102100030383 Phospholipid phosphatase-related protein type 3 Human genes 0.000 description 28
- 101000818014 Homo sapiens Ferroptosis suppressor protein 1 Proteins 0.000 description 25
- 101001123334 Homo sapiens Proteoglycan 3 Proteins 0.000 description 25
- 101000999079 Homo sapiens Radiation-inducible immediate-early gene IEX-1 Proteins 0.000 description 20
- 101000879840 Homo sapiens Serglycin Proteins 0.000 description 20
- 238000010586 diagram Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 101001095043 Homo sapiens Bone marrow proteoglycan Proteins 0.000 description 6
- 101001131990 Homo sapiens Peroxidasin homolog Proteins 0.000 description 6
- 101000582986 Homo sapiens Phospholipid phosphatase-related protein type 3 Proteins 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000013467 fragmentation Methods 0.000 description 4
- 238000006062 fragmentation reaction Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005401 electroluminescence Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Landscapes
- Programmable Controllers (AREA)
Abstract
Description
本開示の実施の形態に係るプログラム開発支援システム1は、デバッグの作業を行うことでプログラムの開発を支援するシステムである。図1に示すように、プログラム開発支援システム1は、プログラムを実行するPLC100、プログラムを生成、更新するエンジニアリングツール200を備える。PLC100及びエンジニアリングツール200は、情報を送受信可能なネットワークによって接続されている。
図2に示すように、PLC100は、プログラムを受信するプログラム受信部110を含む。また、PLC100は、プログラムを格納可能なプログラム格納メモリ120、プログラムを実行するときに用いられるプログラム実行メモリ130、プログラムの実行を管理する情報である管理情報を記憶する管理情報記憶部140を含む。プログラム格納メモリ120は、第1プログラム格納メモリ121、第2プログラム格納メモリ122を含む。また、プログラム実行メモリ130は、第1プログラム実行メモリ131、第2プログラム実行メモリ132を含む。また、管理情報記憶部140は、第1管理情報記憶部141、第2管理情報記憶部142を含む。
図2に示すように、エンジニアリングツール200は、プログラムを生成するプログラム生成部210、プログラムを記憶するプログラム記憶部220、プログラムを送信するプログラム送信部230を含む。プログラム生成部210は、プログラムのコンパイルを行うコンパイル実行部211を含む。
図3に示すように、PLC100は、制御プログラム59に従って処理を実行する制御部51を備える。制御部51は、CPU(Central Processing Unit)を備える。制御部51は、制御プログラム59に従って、図2に示す、プログラム格納管理部151、プログラム実行管理部152、管理情報記憶管理部153、プログラム書込制御部154、プログラム展開制御部155、管理情報生成部156、プログラム実行部157、更新プログラム切替制御部158として機能する。
また、図3に示すように、エンジニアリングツール200もPLC100と同様に、制御部51、主記憶部52、外部記憶部53、操作部54、表示部55、送受信部56を備える。制御部51は、制御プログラム59に従って、図2に示す、プログラム生成部210、コンパイル実行部211として機能し、外部記憶部53は、プログラム記憶部220として機能し、送受信部56は、プログラム送信部230として機能する。図3に戻り、エンジニアリングツール200は、制御部51が主記憶部52、外部記憶部53、操作部54、表示部55及び送受信部56を資源として用いることによって、図2に示す上記の各部210、211、220、230の機能を実現する。例えば、エンジニアリングツール200は、プログラム生成部210が行うプログラム生成ステップ、コンパイル実行部211が行うコンパイル実行ステップ、プログラム送信部230が行うプログラム送信ステップを実行する。
図2に戻り、プログラム生成部210は、ユーザが操作部54を用いてプログラムを記述する操作を行った場合、プログラムを記述する。ここで、プログラムの記述の形式には、文字データの形式だけでなく図形データの形式も含まれる。例えば、プログラムの記述の形式は、ST言語であればソースコードであり、ラダー言語であればラダー・ダイアグラムである。また、プログラム生成部210は、ユーザが操作部54を用いてプログラムをコンパイルする操作を行った場合、コンパイル実行部211にプログラムのコンパイルを行わせる。また、プログラム生成部210は、生成したプログラムのソースファイルと、コンパイルを行った後のプログラムの実行ファイルとをプログラム記憶部220に記憶させる。
プログラム受信部110は、エンジニアリングツール200からプログラムの実行ファイルを受信する。また、プログラム受信部110は、プログラムの実行中にユーザがプログラムを修正、更新した場合、エンジニアリングツール200から更新プログラムの実行ファイルを受信する。以下、プログラムの実行ファイルを単に「プログラム」と記載し、更新プログラムの実行ファイルを単に「更新プログラム」と記載する。
次に、フローチャートを用いてプログラム開発支援システム1がプログラムの開発を支援する制御について説明する。ここで、エンジニアリングツール200が生成、又は、更新したプログラムをPLC100に送信する処理については、プログラム生成部210がユーザの操作に基づいてプログラムを生成、又は、更新してプログラム記憶部220に記憶させた後、プログラム送信部230が生成、又は、更新したプログラムをPLC100に送信するだけである。
これに対して、本実施の形態に係るPLC100は、特許文献1に記載されたPLC用機器よりも更新するプログラムの数が増大したときのこれらの期間を短縮できる。
なお、上記実施の形態では、プログラム書込制御部154は、プログラム受信部110が更新プログラムを受信した後、第1プログラム格納メモリ121と第2プログラム格納メモリ122とが記憶しているプログラムの情報を同期させているが、プログラムの情報を同期させるタイミングについてはこれに限定されない。例えば、プログラム書込制御部154は、プログラム実行部157がプログラム、更新プログラムを実行した後、第1プログラム格納メモリ121と第2プログラム格納メモリ122とが記憶しているプログラムの情報を同期させてもよい。
Claims (8)
- プログラムを格納可能なプログラム格納メモリと、
前記プログラムを実行するときに用いられるプログラム実行メモリと、
前記プログラム格納メモリに格納された前記プログラムを前記プログラム実行メモリに展開する制御を行うプログラム展開制御部と、
前記プログラム実行メモリに展開された前記プログラムを実行するプログラム実行部と、
前記プログラムの実行中に更新された前記プログラムである更新プログラムを前記プログラム格納メモリに格納させる書き込み制御を行うプログラム書込制御部と、
を備え、
前記プログラム格納メモリは、第1プログラム格納メモリと、前記第1プログラム格納メモリとは異なる第2プログラム格納メモリとを含み、
前記プログラム実行メモリは、第1プログラム実行メモリと、前記第1プログラム実行メモリとは異なる第2プログラム実行メモリとを含み、
前記プログラム書込制御部は、実行中の前記プログラムの展開に用いられた前記プログラム格納メモリを前記第1プログラム格納メモリとした場合、前記更新プログラムを前記第2プログラム格納メモリに格納させ、
前記プログラム展開制御部は、実行中の前記プログラムが展開されている前記プログラム実行メモリを前記第1プログラム実行メモリとした場合、前記第2プログラム格納メモリが前記更新プログラムの格納に成功したとき、前記更新プログラムを前記第2プログラム格納メモリから前記第2プログラム実行メモリに展開し、
前記プログラム実行部が前記第1プログラム実行メモリに展開された前記プログラムを実行している場合、前記プログラム実行部に前記第2プログラム実行メモリに展開された前記更新プログラムを実行させる切り替え制御を行う更新プログラム切替制御部を更に備え、
前記更新プログラム切替制御部は、前記切り替え制御において、前記プログラム実行部が用いる前記プログラム実行メモリを前記第1プログラム実行メモリから前記第2プログラム実行メモリに変更させる制御を行い、
前記プログラム実行部は、前記切り替え制御に基づく前記プログラム実行メモリの変更によって結果的に前記第1プログラム実行メモリに展開された実行中の前記プログラムの実行を終了するとともに前記第2プログラム実行メモリに展開された前記更新プログラムの実行を開始する、
プログラマブルロジックコントローラ。 - 前記プログラムの実行を管理する情報である管理情報を生成する管理情報生成部と、
前記管理情報を記憶する管理情報記憶部と、
を更に備え、
前記プログラム実行部は、前記管理情報記憶部が記憶している前記管理情報を用いて前記プログラム実行メモリに展開された前記プログラムを実行し、
前記管理情報記憶部は、第1管理情報記憶部と、前記第1管理情報記憶部とは異なる第2管理情報記憶部とを含み、
前記管理情報生成部は、前記更新プログラムの実行を管理する前記管理情報を生成するとともに、実行中の前記プログラムにおいて用いられている前記管理情報を記憶している前記管理情報記憶部を前記第1管理情報記憶部とした場合、生成した前記更新プログラムの実行を管理する前記管理情報を前記第2管理情報記憶部に記憶させ、
前記更新プログラム切替制御部は、前記プログラム実行部が前記第1管理情報記憶部に記憶されている前記管理情報を用いて前記第1プログラム実行メモリに展開された前記プログラムを実行している場合、前記プログラム実行部に前記第2管理情報記憶部が記憶している前記管理情報を用いて前記第2プログラム実行メモリに展開された前記更新プログラムを実行させる前記切り替え制御を行う、
請求項1に記載のプログラマブルロジックコントローラ。 - 実行中の前記プログラムの展開に用いられた前記プログラム格納メモリが前記第1プログラム格納メモリであるか、又は、前記第2プログラム格納メモリであるかを判定するプログラム格納判定部と、
実行中の前記プログラムが展開されている前記プログラム実行メモリが前記第1プログラム実行メモリであるか、又は、前記第2プログラム実行メモリであるかを判定するプログラム実行判定部とを更に備える、
請求項1に記載のプログラマブルロジックコントローラ。 - 前記プログラムは、第1プログラムと、前記第1プログラムとは異なる第2プログラムとを含み、
前記更新プログラムは、更新された前記第1プログラムである第1更新プログラムと、更新された前記第2プログラムである第2更新プログラムとを含み、
前記プログラム書込制御部は、実行中の前記第1プログラム及び前記第2プログラムの展開に用いられた前記プログラム格納メモリを前記第1プログラム格納メモリとした場合、前記第1更新プログラム及び前記第2更新プログラムを前記第2プログラム格納メモリに格納させ、
前記プログラム展開制御部は、実行中の前記第1プログラム及び前記第2プログラムが展開されている前記プログラム実行メモリを前記第1プログラム実行メモリとした場合、前記第2プログラム格納メモリが前記第1更新プログラム及び前記第2更新プログラムの格納に成功したとき、前記第1更新プログラム及び前記第2更新プログラムを前記第2プログラム格納メモリから前記第2プログラム実行メモリに展開し、
前記更新プログラム切替制御部は、前記プログラム実行部が前記第1プログラム実行メモリに展開された前記第1プログラム及び前記第2プログラムを実行している場合、前記プログラム実行部に前記第2プログラム実行メモリに展開された前記第1更新プログラム及び前記第2更新プログラムを実行させる、
請求項1に記載のプログラマブルロジックコントローラ。 - 前記プログラムは、第1プログラムと、前記第1プログラムとは異なる第2プログラムとを含み、
前記更新プログラムは、更新された前記第1プログラムである第1更新プログラムであり、
前記プログラム書込制御部は、実行中の前記第1プログラム及び前記第2プログラムの展開に用いられた前記プログラム格納メモリを前記第1プログラム格納メモリとした場合、前記第1更新プログラムを前記第2プログラム格納メモリに格納させ、
前記プログラム展開制御部は、実行中の前記第1プログラム及び前記第2プログラムが展開されている前記プログラム実行メモリを前記第1プログラム実行メモリとした場合、前記第2プログラム格納メモリが前記第1更新プログラムの格納に成功したとき、前記第1更新プログラムを前記第2プログラム格納メモリから前記第2プログラム実行メモリに展開するとともに、前記第2プログラムを前記第1プログラム実行メモリから前記第2プログラム実行メモリに展開し、
前記更新プログラム切替制御部は、前記プログラム実行部が前記第1プログラム実行メモリに展開された前記第1プログラム及び前記第2プログラムを実行している場合、前記プログラム実行部に前記第2プログラム実行メモリに展開された前記第1更新プログラム及び前記第2プログラムを実行させる、
請求項1に記載のプログラマブルロジックコントローラ。 - 前記プログラム展開制御部は、前記第1更新プログラムを前記第2プログラム実行メモリの第1メモリ領域に展開した後、前記第2プログラムを前記第2プログラム実行メモリの前記第1メモリ領域の後に連続する第2メモリ領域に展開する、
請求項5に記載のプログラマブルロジックコントローラ。 - プログラマブルロジックコントローラの制御方法であって、
前記プログラマブルロジックコントローラが、プログラムを格納可能なプログラム格納メモリに格納された前記プログラムを、当該プログラムを実行するときに用いられるプログラム実行メモリに展開する制御を行うプログラム展開制御ステップと、
前記プログラマブルロジックコントローラが、前記プログラム実行メモリに展開された前記プログラムを実行するプログラム実行ステップと、
前記プログラマブルロジックコントローラが、前記プログラムの実行中に更新された前記プログラムである更新プログラムを前記プログラム格納メモリに格納させる書き込み制御を行うプログラム書込制御ステップと、
を含み、
前記プログラム格納メモリは、第1プログラム格納メモリと、前記第1プログラム格納メモリとは異なる第2プログラム格納メモリとを含み、
前記プログラム実行メモリは、第1プログラム実行メモリと、前記第1プログラム実行メモリとは異なる第2プログラム実行メモリとを含み、
前記プログラム書込制御ステップにおいて、実行中の前記プログラムの展開に用いられた前記プログラム格納メモリを前記第1プログラム格納メモリとした場合、前記更新プログラムを前記第2プログラム格納メモリに格納させ、
前記プログラム展開制御ステップにおいて、実行中の前記プログラムが展開されている前記プログラム実行メモリを前記第1プログラム実行メモリとした場合、前記更新プログラムを前記第2プログラム格納メモリから前記第2プログラム実行メモリに展開し、
前記プログラマブルロジックコントローラが、前記第1プログラム実行メモリに展開された前記プログラムを実行している場合、前記第2プログラム実行メモリに展開された前記更新プログラムを実行する切り替え制御を行う更新プログラム切替制御ステップを更に含み、
前記更新プログラム切替制御ステップで行われる前記切り替え制御において、前記プログラマブルロジックコントローラが、前記プログラム実行ステップにおいて用いられる前記プログラム実行メモリを前記第1プログラム実行メモリから前記第2プログラム実行メモリに変更させる制御を行い、
前記プログラム実行ステップにおいて、前記プログラマブルロジックコントローラが、前記切り替え制御に基づく前記プログラム実行メモリの変更によって結果的に前記第1プログラム実行メモリに展開された実行中の前記プログラムの実行を終了するとともに前記第2プログラム実行メモリに展開された前記更新プログラムの実行を開始する、
制御方法。 - プログラマブルロジックコントローラを、
プログラムを格納可能なプログラム格納メモリに格納された前記プログラムを、当該プログラムを実行するときに用いられるプログラム実行メモリに展開する制御を行うプログラム展開制御部、
前記プログラム実行メモリに展開された前記プログラムを実行するプログラム実行部、
前記プログラムの実行中に更新された前記プログラムである更新プログラムを前記プログラム格納メモリに格納させる書き込み制御を行うプログラム書込制御部、
として機能させ、
前記プログラム格納メモリは、第1プログラム格納メモリと、前記第1プログラム格納メモリとは異なる第2プログラム格納メモリとを含み、
前記プログラム実行メモリは、第1プログラム実行メモリと、前記第1プログラム実行メモリとは異なる第2プログラム実行メモリとを含み、
前記プログラム書込制御部は、実行中の前記プログラムの展開に用いられた前記プログラム格納メモリを前記第1プログラム格納メモリとした場合、前記更新プログラムを前記第2プログラム格納メモリに格納させ、
前記プログラム展開制御部は、実行中の前記プログラムが展開されている前記プログラム実行メモリを前記第1プログラム実行メモリとした場合、前記第2プログラム格納メモリが前記更新プログラムの格納に成功したとき、前記更新プログラムを前記第2プログラム格納メモリから前記第2プログラム実行メモリに展開し、
前記プログラム実行部が前記第1プログラム実行メモリに展開された前記プログラムを実行している場合、前記プログラム実行部に前記第2プログラム実行メモリに展開された前記更新プログラムを実行させる切り替え制御を行う更新プログラム切替制御部として更に機能させ、
前記更新プログラム切替制御部は、前記切り替え制御において、前記プログラム実行部が用いる前記プログラム実行メモリを前記第1プログラム実行メモリから前記第2プログラム実行メモリに変更させる制御を行い、
前記プログラム実行部は、前記切り替え制御に基づく前記プログラム実行メモリの変更によって結果的に前記第1プログラム実行メモリに展開された実行中の前記プログラムの実行を終了するとともに前記第2プログラム実行メモリに展開された前記更新プログラムの実行を開始する、
プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023009904 | 2023-03-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP7446537B1 true JP7446537B1 (ja) | 2024-03-08 |
Family
ID=90105481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023550654A Active JP7446537B1 (ja) | 2023-03-14 | 2023-03-14 | プログラマブルロジックコントローラ、制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7446537B1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016099899A (ja) | 2014-11-25 | 2016-05-30 | 富士電機株式会社 | コントロールシステム、その支援装置、プログラマブルコントロール装置 |
JP2019036043A (ja) | 2017-08-10 | 2019-03-07 | オムロン株式会社 | 制御装置 |
JP2020052668A (ja) | 2018-09-26 | 2020-04-02 | 横河電機株式会社 | プロセス制御システム、プロセス制御装置、及びプログラム更新方法 |
-
2023
- 2023-03-14 JP JP2023550654A patent/JP7446537B1/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016099899A (ja) | 2014-11-25 | 2016-05-30 | 富士電機株式会社 | コントロールシステム、その支援装置、プログラマブルコントロール装置 |
JP2019036043A (ja) | 2017-08-10 | 2019-03-07 | オムロン株式会社 | 制御装置 |
JP2020052668A (ja) | 2018-09-26 | 2020-04-02 | 横河電機株式会社 | プロセス制御システム、プロセス制御装置、及びプログラム更新方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101539866B (zh) | 信息处理设备和信息处理设备的启动方法 | |
CN106095620B (zh) | 一种嵌入式Linux存储分区的开发方法 | |
US8453138B2 (en) | Method and apparatus for generating an update package | |
EP1934727B1 (en) | Method and system for in-place updating content stored in a storage device | |
KR100415371B1 (ko) | 컴퓨터 | |
CN102165418A (zh) | 涡轮引导***和方法 | |
EP2329368B1 (en) | Updating content without using a mini operating system | |
JP2007052519A (ja) | 情報処理装置および方法、並びにプログラム | |
CN109840105A (zh) | 一种不停服的热更新方法 | |
CN113641378A (zh) | 光模块程序升级方法、装置、设备及可读存储介质 | |
JP7446537B1 (ja) | プログラマブルロジックコントローラ、制御方法及びプログラム | |
CN111158734A (zh) | 一种cpld-fpga的无缝升级方法、***及设备 | |
JP5084853B2 (ja) | ファームウエア更新装置、通信装置、電子機器、ファームウエア更新システム、ファームウエア更新方法及びプログラム | |
US20040015943A1 (en) | Embedded computer system equipped with an upgradeable software library | |
KR102434126B1 (ko) | Plc 프로그램 처리 장치 | |
JP5158883B2 (ja) | ファームウェア更新方法及びファームウェア更新装置 | |
JP5521437B2 (ja) | 携帯端末装置、ソフトウェア更新方法及びプログラム | |
JP2008217202A (ja) | ディスクアレイ装置及びファームウェア更新方法 | |
JP6149624B2 (ja) | ファームウェア実行装置、ファームウェア実行方法、コンピュータ・プログラム、および、コンピュータ装置 | |
JP2007122399A (ja) | 制御装置、そのプログラムおよび記録媒体 | |
WO2022269793A1 (ja) | 制御装置、及び、アドレス管理方法 | |
JP5484641B1 (ja) | プログラマブル表示器 | |
US20080320447A1 (en) | Method of accessing web parameters | |
JP2002063046A (ja) | 制御装置、および、そのプログラムが記録された記録媒体 | |
JPH11161484A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230822 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230822 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20230822 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230926 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231117 |
|
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: 20240130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240227 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7446537 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |