(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024048202
(43)【公開日】2024-04-08
(54)【発明の名称】PLC装置
(51)【国際特許分類】
G06F 8/65 20180101AFI20240401BHJP
G05B 19/05 20060101ALI20240401BHJP
【FI】
G06F8/65
G05B19/05 Z
【審査請求】未請求
【請求項の数】2
【出願形態】OL
(21)【出願番号】P 2022154106
(22)【出願日】2022-09-27
(71)【出願人】
【識別番号】000006105
【氏名又は名称】株式会社明電舎
(74)【代理人】
【識別番号】100086232
【弁理士】
【氏名又は名称】小林 博通
(74)【代理人】
【識別番号】100092613
【弁理士】
【氏名又は名称】富岡 潔
(74)【代理人】
【識別番号】100104938
【弁理士】
【氏名又は名称】鵜澤 英久
(74)【代理人】
【識別番号】100210240
【弁理士】
【氏名又は名称】太田 友幸
(72)【発明者】
【氏名】藤木 裕之
【テーマコード(参考)】
5B376
5H220
【Fターム(参考)】
5B376CA34
5H220BB07
5H220BB09
5H220CC07
5H220CC09
5H220CX01
5H220CX04
5H220JJ12
5H220JJ22
5H220JJ26
(57)【要約】
【課題】揮発領域にFWイメージを格納することが困難なプログラマブルコントローラへのFWの展開することで、外部装置を要することなくプログラマブルコントローラの起動及びFWの更新を低コストに行う。
【解決手段】ファームウェアイメージの更新が可能なPLC装置1において、MPSoCボード2は当該ファームウェアイメージの更新処理を行う。SoCボード3は、前記ファームウェアイメージに基づく演算処理を行う。FPGA36は、MPSoC2とSoCボード3のボード間通信を可能とするFPGA回路37を備える。MPSoCボード2には、前記ファームウェアイメージを格納可能な不揮発メモリ23が実装される。SoCボード3には、このSoCボード3とMPSoCボード2の起動時にFPGA回路37を介して受けた前記ファームウェアイメージを展開するFW展開用メモリ33が実装される。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ファームウェアイメージの更新が可能なPLC装置であって、
前記ファームウェアイメージの更新処理を行う第一制御基板と、
前記ファームウェアイメージに基づく演算処理を行う第二制御基板と、
前記第一制御基板と前記第二制御基板との間の通信を可能とする通信回路と、
前記第一制御基板に実装され、前記ファームウェアイメージを格納可能な不揮発メモリと、
前記第二制御基板に実装され、この第二制御基板と前記第一制御基板の起動時に前記通信回路を介して受けた前記ファームウェアイメージを展開するファームウェア展開用メモリと、
を備えたことを特徴とするPLC装置。
【請求項2】
前記ファームウェアイメージのオンライン更新またはオフライン更新を選択するディップスイッチをさらに備えたことを特徴とする請求項1に記載のPLC装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、PLC(Programmable Logic Controller)装置の起動及び更新の手順に関する。
【背景技術】
【0002】
PLC装置が起動する際の動作モードの切替え(特許文献1)は、PLC装置の電源がオンとなった際の当該PLC装置の起動時に、オペレータにより操作される外部装置が接続されたPLC装置のFPGA(Field Programmable Gate Array)を含む通信回路が確立されると、PLC装置の外部の第2ストレージから引き出されたシステム起動用データ(システムプログラム)がPLC装置の第1ストレージに格納される(第1動作モード)。一方、前記回路が確立しない場合には、前記第1ストレージから引き出されたシステム起動用データがPLCの主記憶装置に格納される(第2動作モード)。以上のようにオペレータによるPLCユニットへの外部装置の着脱という簡単な操作によりPLCの起動時に上記の動作モードの切替えが行える。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
PLCの運転モードの切り替えはPLCのFPGAに接続される外部装置が必須となるので、当該切り替えのコストを許容する必要がある。また、PLCのFW(Firm Ware)の更新時にも前記外部装置の操作が必要となりコスト高の要因となる。
【0005】
本発明は、以上の事情を鑑み、不揮発領域にFWイメージを格納することが困難なプログラマブルコントローラへのFWの展開することで、外部装置を要することなくプログラマブルコントローラの起動及びFWの更新を低コストに行うことを課題とする。
【課題を解決するための手段】
【0006】
そこで、本発明の一態様は、ファームウェアイメージの更新が可能なPLC装置であって、前記ファームウェアイメージの更新処理を行う第一制御基板と、前記ファームウェアイメージに基づく演算処理を行う第二制御基板と、前記第一制御基板と前記第二制御基板との間の通信を可能とする通信回路と、前記第一制御基板に実装され、前記ファームウェアイメージを格納可能な不揮発メモリと、前記第二制御基板に実装され、この第二制御基板と前記第一制御基板の起動時に前記通信回路を介して受けた前記ファームウェアイメージを展開するファームウェア展開用メモリと、を備える。
【0007】
本発明の一態様は、前記PLC装置において、前記ファームウェアイメージのオンライン更新またはオフライン更新を選択するディップスイッチをさらに備える。
【発明の効果】
【0008】
以上の本発明によれば、揮発領域にFWイメージを格納することが困難なプログラマブルコントローラへのFWの展開することで、外部装置を要することなくプログラマブルコントローラの起動及びFWの更新を低コストに行える。
【図面の簡単な説明】
【0009】
【
図1】本発明の一態様であるPLC装置のブロック構成図。
【
図3】前記PLC装置のオフライン及びオンラインでのFWの更新のフローチャート。
【発明を実施するための形態】
【0010】
以下に図面を参照しながら本発明の実施形態について説明する。
【0011】
図1に示された本発明の一態様であるPLC装置1は、MPSoC(Multiprocessor System on Chip)ボード2、SoC(System on Chip)ボード3、LAN4、SDカード5及びDIP(Dual In-line Package)スイッチ6を備える。
【0012】
MPSoCボード2は、本発明の第一制御基板の一態様であって、PLC装置1の動作管理やFWイメージの更新処理を行う。
【0013】
SoCボード3は、本発明の第二制御基板の一態様であって、ファームウェアイメージ(以下、FWイメージ)に基づくPLC動作の演算処理を行う。
【0014】
LAN4は、オンラインでの前記FWイメージの更新に使用される通信インターフェースである。
【0015】
SDカード5は、オフラインでの前記FWイメージの更新に供される記録媒体である。
【0016】
DIPスイッチ6は、前記FWイメージのオンライン更新またはオフライン更新を選択するためのディップスイッチである。
【0017】
前記FWイメージとしては、例えば、後述のコア21,22に導入されるLinux(登録商標),RTOS、後述のFPGA26に適用されるマイクロコード、コア21,22を起動させるためのブートROMが挙げられる。
【0018】
(MPSoCボード2)
MPSoCボード2は、コア21,22、不揮発メモリ23、揮発メモリ24、主記憶装置25、FPGA26を実装する。
【0019】
コア21には、FWの更新機能を有するアプリケーションを実行させるLinuxが導入される。前記アプリケーションは、LAN(Local Area Network)経由で更新用のFWイメージの受信を行う。
【0020】
コア22は、PLC機能としての制御機能を有するRTOS(Real-time operating system)が導入される。
【0021】
不揮発メモリ23は、コア21,22の起動用のブートROM(Read Only Memory)やその他のFWイメージを格納する。
【0022】
揮発メモリ24は、コア21,22の起動時に実際に動作するFWイメージを展開する。
【0023】
主記憶装置25は、コア21のLinux上で動作するアプリケーションイメージを格納する。
【0024】
FPGA26は、SoCボード3とのボード間通信を可能とするFPGA回路27を備える。
【0025】
(SoCボード3)
SoCボード3は、コア31、不揮発メモリ32、ファームウェア展開用メモリ33(以下、FW展開用メモリ33)、揮発メモリ34、揮発メモリ35及びFPGA36を有する。
【0026】
コア31は、PLC機能を実行する。コア31には、前記PLC機能として、演算処理効率化のための、演算処理を専門的に実施するRTOSが導入される。
【0027】
不揮発メモリ32は、コア31の起動用のブートROM、FPGA36のマイクロコードを格納する。前記マイクロコードは、FPGA36内の演算装置が動作に必要とする命令処理を統合したコード情報を意味する。
【0028】
FW展開用メモリ33は、コア21から送信されるコア31の起動用のFWイメージを展開する。
【0029】
揮発メモリ34は、コア31の起動時に実際に動作する前記FWイメージを展開する。
【0030】
揮発メモリ35は、FPGA36のマイクロコードを格納する。
【0031】
FPGA36は、MPSoC2とのボード間通信を可能とする通信回路としてのFPGA回路37を備える。
【0032】
図2を参照してPLC装置1の動作例として起動について説明する。
【0033】
(PLC装置1の起動)
S101:PLC装置1の電源が投入されると、MPSoCボード2は、コア21の起動後、不揮発メモリ23のブートROMによりHW及びFPGA26の初期化処理を行う。
【0034】
S102:不揮発メモリ23から揮発メモリ24にFWイメージを展開する。
【0035】
S103:不揮発メモリ23と揮発メモリ24の比較診断処理を実施する。
【0036】
S104:FPGA26,36のボード間通信により、不揮発メモリ23からFW展開用メモリ33へコア31用のFWイメージが展開する。したがって、起動用のイメージを不揮発領域に保持できないSoCボード3に起動用のイメージを展開し、FWを動作できる。このように、FGPA26,36を使用したC2C通信によりFWイメージが格納できない基板上のコアに対するPLC装置の起動が実現する。
【0037】
S105:コア21、22のOSを起動させる。コア22はこのタイミングで起動して、OSも起動する。
【0038】
S106:SoC3はS101と同じPLC装置1の電源投入のタイミングでコア31を起動させ、不揮発メモリ32のブートROMにより、HW及びFPGA36の初期化処理を行う。すなわち、コア31からFWイメージを受理するために待ち受け処理を行うためにブートROMを稼働させる。ブートROMは、軽量のため、不揮発メモリ32に格納可能である。
【0039】
S107:不揮発メモリ32から揮発メモリ35へFPGA36のマイクロコードを展開する。
【0040】
S108:S104の展開完了後、FW展開用メモリ33から揮発メモリ34へFWイメージを展開する。
【0041】
S109:S103と同様にFW展開用メモリ33と揮発メモリ34の比較診断処理を実施する。
【0042】
S110:コア31のOSを起動する。
【0043】
図3を参照してPLC装置1の動作例としてオフライン及びオンラインでのPLC装置1のFWの更新について説明する。
【0044】
(オフラインでのPLC装置1のFW更新)
S201:DIPスイッチ6を操作し、SDカード5からブートする設定を行う。このようにMPSoCボード2の使用により、コア21にLinuxの更新用のアプリケーションを動作させることで、FWの更新に関してオフライン及びオンラインともに対応可能となる。
【0045】
S202:PLC装置1の電源を投入し、コア21の起動後、SDカード5のブートROMによりHW及びFPGA26初期化処理を実施する。
【0046】
S203:SDカード5から不揮発メモリ23へFWイメージを展開する。
【0047】
S204:SDカード5及び不揮発メモリ23のFWイメージの比較診断処理を実施する。
【0048】
S205:電源を落とし、DIPスイッチ6を通常起動用の設定に戻す。
【0049】
(オンラインでのPLC装置1のFW更新)
S301:コア21でLinuxの動作開始後、LAN経由でFWイメージをLinux上の更新用アプリケーションを介して揮発メモリ24へ展開する。このようにS201と同様にMPSoCボード2の使用により、コア21にLinuxの更新用のアプリケーションを動作させることで、FWの更新に関してオフライン及びオンラインともに対応可能となる。
【0050】
S302:Linux上の更新用アプリケーションにより揮発メモリ24から不揮発メモリ23へFWイメージを展開する。
【0051】
S303:PLC装置1を再起動する。
【0052】
以上の実施形態のPLC装置1によれば、揮発領域にFWイメージを格納することが困難なPLC装置1へのFWの展開することで、外部装置を要することなくPLC装置1の起動及びFWの更新を低コストに行える。
【0053】
特に、FWイメージの本体を不揮発メモリ23に確保し、起動中のOS動作環境を揮発メモリ24に保持することで、DIPスイッチ6の切り替え不要でオンラインによるFW更新に対応可能となる。
【0054】
また、DIPスイッチ6の利便性も保持できるように、従来手法となるオフライン更新も同様に実施可能となる。
【0055】
さらに、高集積のプリント板で大きな部品が配置できず、少ないピンパッケージで小容量の部品を使用する必要がある場合に、不揮発メモリが低容量(実施例では不揮発メモリ32)でFWイメージ全体を保持できない制御基板(SoCボード3)に対してFPGA26,36を介してFWイメージを展開してOSの起動を行える。
【符号の説明】
【0056】
1…PLC装置
2…MPSoCボード、21,22…コア、23…不揮発メモリ、24…揮発メモリ、25…主記憶装置、26…FPGA
3…SoCボード、31…コア、32…不揮発メモリ、33…FW展開用メモリ、34…揮発メモリ、35…揮発メモリ、36…FPGA
4…LAN
5…SDカード
6…DIPスイッチ