FAの世界では、PLCなる言葉が少なからず出てきますが、PLCとは一体どのようなものなのでしょうか。
この記事では、PLCについて分かりやすく解説していきます。
※今までPLCに関し、情報配信していたものを整理した上で再編集し、新たに投稿しました。
PLC≒シーケンサ
PLCとは、Programmable Logic Controllerの略語で、シーケンサと言う人もいますが、三菱の名称が広まったためシーケンサと言われるようになったようです。
しかし、シーケンサは、三菱の商標なので、PLCというのが正しいのだという人も。
こちらのブログでは、実際に「シーケンサ」の商標登録について調べたそうで、現在三菱の商標ではないそうなので、どうやら商標を更新しなかった模様です。
2017年に調べたところ、三菱のシーケンサの商標はないものの、「日立シーケンサ」なる商標は見つかりました。
三菱が「シーケンサ」の商標を持っていたので、日立は便乗して「日立シーケンサ」と名付けたのかも知れませんね。
PLCのメリット・デメリット
PLCのメリットというのは、
- 簡単に配線ができる(PLCへの配線は、はんだ付け不要)。電源内蔵のタイプを使えば、更に回路が簡単になる。
- ラダーという概念でプログラミングでき、比較的敷居は低い(と思われる)。
- 大抵、動作チェック用のランプも付いているので、動作チェックもしやすい。
以上の3つに尽きるでしょう。
デメリットはというと、
- PLCが大きいため、用途は大型の機器に限定されてしまう(FA機器の用途に多く使われているので、大きさはあまり問題にならない?)。
- プログラミングするアプリが高価(販売店によっては、過去PLCとアプリを抱き合わせで安価で販売していたこともあり)。
- 用途によっては、マイコンボードを使う方が安価なケースもあり(PLCは、端子を圧着してPLCの端子盤に接続する所が、こちらは、プログラミング+はんだ付けできる人向け)高価な場合も。
- 高度な演算が苦手
高価というデメリットはあるものの、環境が許せば、オークションなどで安く仕入れることも可能だったりします。
オークションなどで中古を購入する場合、故障していたり、PLCの内部に入っているファームウェアのバージョンが古く、最新のメーカーオプションが使えないケースもありますから、くれぐれも注意してくださいね!
昔はマイコンに関しては、今よりも敷居が高く、簡単に手に入らない時代だったので、プログラミングできるPLCというのが、FAの世界では、もてはやされました。
PLCは、今の物と違い、結構大きかったと記憶していますが、FA関連の機器は、そもそも大きな制作物が多いので、大きさは然程気にならなかったようです。
技術革新に伴い、PLCは小型化し、更には高機能化しており、FA機器も更に進化を遂げるようになります。
しかも、今では、ネット接続できるだけでなく、タッチパネルも簡単に扱えるようになりました。
PLCを使った実例紹介
よく、PLCは大したことができないと仰る方がおられるようですが、PLCには、マイコンが搭載されているので、高度な演算などを除いてはできないことはあまりないのではないかと思います。
ある程度の限界はあれど、PLCは意外と色々なことができるのだという事例を一部お見せします。
PLCで7セグLEDを表示させる
YouTubeで公開していますので、是非ご覧ください。
今回、オムロンのCP1E型の中でも、入出力数が多く、RS-232Cシリアルポートまで付いているという ちょっぴり贅沢なN30型(トランジスタ出力)というものを使用しました。
N30には、半固定抵抗が2個付いており、それを回して、お手製の7セグLED治具の表示を変化させるというものです。
2個の半固定抵抗の値は、それぞれアドレスA642・A643に格納されます。
その値を7セグのデータに変換し、それを出力ポートのアドレスに転送するだけで、0~9/A/B/C/D/E/Fと表示されるようになります。
これだけのものであれば、凄く簡単なプログラムでできてしまったので、ラダー言語も捨てたものではないなと思っています。
作成したラダーからニモニックを生成させても、意外と行数は少なく簡単でした。
同じことをワンチップマイコン(C言語)でやらせようとすると多分…
- 半固定抵抗から出てきた電圧をA/D変換する。
- A/D変換をした値をif文などを使って16パターンの表示処理のいずれかに振り分ける。
…なんて処理になるのですが、プログラムを書くと結構な行数になるかと思います。
使うマイコン、7セグの個数によっては、ダイナミック表示することになり、更に処理が大変かも。
使う用途によっては、PLCの方が断然使いやすいようです。
Yahoo!知恵袋を見て
調べ物をしていて、面白い例題を見つけてしまいました。
出所は、Yahoo!知恵袋で1秒ごとにカウントして、1番目と5番目はON、2~4番目はOFFとなるような回路を組みたいというもの。
そこに実例をニモニックで出してくれた人がいました。
それをラダープログラムにすると↓
これは、データメモリーD0へ初め0を格納して、足し算をしていき、1番目と5番目に出力100.00がONになる。6回目にD0をリフレッシュして、0とするという方法です。
他にもやり方がある
他にもやり方があるのでは、と考えてみたのが下記の方法です。
私の場合は、カウンタを使ってみました。
出力結果は同じで、カウンタが0になったら、カウンタにリセットを掛けて、5に戻すという方法です。
カウンタ(CNT)は、カウントダウン動作するようになっています。
つまり、画像のように、数値を5と入力しておけば、5,4,3,2,1,0というようにカウントダウンしていくのです。
動作を詳しく見ていきますと、カウント5(1回目)の時に出力100.00はONとなり、カウント4,3,2(2~4回目)の時は出力100.00はOFFとなります。
続いて、カウント1(5回目)になると再び出力100.00はONとなり、カウント0(6回目)の時はカウンターをリセットすることにより、カウント5に戻します。
PLCの出力は何がいいの?
PLCを始めると、PLCの出力は、リレーがいいの?トランジスタがいいの?と迷うことがあるかと思います。
その違いとは一体なんでしょうか。
リレー出力
- 電流はある程度しか流せない(PLCに内蔵されているリレーに依存)ものの、DC・AC問わず使えます。
- ON/OFFするものの電流が大きい場合、外付けでリレーを付ければOK。
- リレーを使っている関係上、どうしても高速パルスを出力させることができません。
トランジスタ出力
- ステッピングモーターで多くのパルスが必要となる場合、使いやすい。
- ON/OFFするものの電流が大きい場合、外付けでリレーを付ければOK。
- トランジスター出力であるため、DC向きであり、ACでは使用不可。
- ロジック回路との融和性が高いものの、電圧に注意する必要がある
制作物の用途に合ったものを選択しましょう!
PLCをマスターするには?
PLCのプログラミングを習得したいと思ってる人も中にはいらっしゃることでしょう。
各メーカー及びセミナー開催業者が、10000円以下から数万円までの範囲で受講できるセミナーを実施していますので、受講されるとよいと思います。
自己啓発でセミナーが受講できる会社にお勤めの方は、是非!
時間のない人向けに、eラーニング(動画を見ながら独学する)という方法もあるんですよ!
基本は一緒ではありますが、自分が使おうとしているか既に使っているPLCメーカーのセミナーがよいと思います。
これらのセミナーは、プログラミングするためのアプリの操作方法をマスターするための物が多いからです(中にはそうではない場合も)。
論理回路がお分かりになる方なら、プログラムに用いるラダー(図)の習得は早いと思いますので、簡単なプログラムなら、すぐにできてしまうことでしょう。
メモリーのアクセスをするなどして高度な物を実現しようとする場合は、マイコンのプログラミング知識は多少持っていると理解度は早いですよ!
ラダーの基礎について
ラダーの基礎が分かれば、簡単なプログラミングが可能です。
書籍を見ると、難しく書いてありますが、簡単に考えると、下記のようになります。
【入力=サブスイッチ】
1.ON:スイッチになっていて、通常は切れている状態。スイッチを入れると、繋がる。
2.OFF:こちらもスイッチになっていて、通常は繋がった状態。スイッチを入れると、切れる。
【出力=メインスイッチ】
3.OFF→ON:スイッチになっていて、通常は切れている状態。入力が全て繋がった時、出力端子が繋がる。
4.ON→OFF:スイッチになっていて、通常は繋がっている状態。入力が全て繋がった時、出力端子が切れる。
小学校の理科の実験で使った、スイッチと乾電池・豆電球をイメージすればよいでしょうか。
通常は豆電球は光らないが、スイッチを入れると、豆電球が光る。
考え方は、それと一緒ですが、実際は、入力と出力、それぞれスイッチに相当するものが入っていて、入力(サブスイッチ)が全て繋がると、出力(メインスイッチ)が繋がる/切れる仕組みになっています。
例1.通常出力OFF。2つの入力をONすると、出力がOFF→ONする。
例2.通常出力OFF。2つある入力のいずれかをONすると、出力がOFF→ONする。
例3.通常出力ON。2つの入力をONすると、出力がON→OFFする。
例4.通常出力ON。2つある入力のいずれかをONすると、出力がON→OFFする。
例1はAND回路、例2はOR回路、例3はNAND回路、例4はNOR回路といい、これらを論理回路と呼んでいます。
回路図にマンボーのような記号を使うヤツです。
これらを組み合わせれば、取りあえずはPLCで簡単な動作ができるようになりますが、他の命令と組み合わせることにより、もっと高度な機能を持たせることができます。
メーカーが配布しているPLCのマニュアルを熟読して、更に使いこなしてくださいね!
ラダーにも方言がある
方言と言っても、大阪弁とか福岡弁といか言うのとは違います。
PLCは、何社からか発売されており、基本的なラダーは一緒ですが、一部記述の仕方が異なりますし、メーカーによっては全くない命令系もあります。
そのことを、「方言」と表現させていただきました。
そう考えると、PCのプログラミングだって、方言がありますよね。
VBやらCやら、何やらでも記述のお作法が異なります。
私が好んで使っているオムロンでは、他のメーカーのユーザーの取り込みを計るためか、数社のラダーを自社向けに変換するアプリを配布しています。
100%変換できるというわけではないものの、いちからプログラムを考えることを考えると、作業効率は良くなるのかも知れませんね。
PLCを扱う初心者にお勧め!
PLCを扱うようになって困ってしまうのが、どのような回路にしたらよいか、私も結構苦労しました。
経験が物を言う世界ではありますが、PLCは仕事で扱う向きが多いでしょうから、早くマスターしたい所です。
そこで、PLCを扱う初心者に、ぜひお勧めしたい書籍があります。
日刊工業新聞社発行の「必携 PLCを使ったシーケンス制御プログラム定石集 装置を動かすラダー図作成のテクニック」という本で、実例を交えていくつかの回路を分かりやすく紹介していますよ!
読んでいて、今更ではありますが、私の時代にあったらよかったのに…などと思ってしまいます。
今から始める方が羨ましいです。
FBDとはいったい何?
FBDについて
PLC(Programmable Logic Controller)では、ニモニックやラダーが結構使われていますが、たまにST言語だのFBDだの聞きますが、これって一体何?という方のために書きたいと思います。
ここは段落ブロックです。文章をここに入力してください。
- ST言語:Structured Textの略で、高級言語に似通った内容です。
- FBD:Function Block Diagramの略で、ラダーに似ていますが、役割を持ったブロックを繋ぎ合わせて作るプログラムのことです。最近流行りのLabViewに近い感じがします。
一例として、私が作成したFBDを使った一例をご紹介いたします。
このFBDは、EN端子をONにすると、1秒パルスを出力するという単純な物で、ST言語で書いてみましたが、ラダーでもFBDへの記述は可能です。
FBDのメリット
ラダーで記述すると、どうしても可読性が悪くなりがちですが、FBDにすると、1つの命令系として、プログラム上で何度も使いまわしすることが可能となり、(上記画像の通り)すっきりとしたプログラムになるというわけです。
ちなみに、今回の例の場合は、凄く単純な物なので、ラダーで書く方が見やすいプログラムとなりますから、簡単なプログラムでは、全くメリットがありません。
複雑であればあるほど、FBDのメリットが生かされることでしょう。
PCのプログラムからPLCの世界に入った人は、結構ラダーが戸惑われることと思いますが、ST言語だと、高級言語と似通った命令体系ですので(Visual BasicとC++の愛の子?)移行しやすいかも知れませんね。
便利そうなST言語ではありますが、CX-Programmerだと、FBDを作成する以外に使えず、実際のプログラム上では使えません。
インラインSTと言って、実際のプログラム上でもST言語が使えるような環境が整いつつあり、オムロンでは、統合開発環境SysmacStudioを使えば、インラインSTが使えます。
FBDは、対応機種が限られており、開発環境は非常に高価になるのがネックとなっています。
どうしても対応機種を使わなければならないなど余程のことがなければ、インラインSTのために移行するのは難しいかも知れませんね。
【2025年版】現行PLCのレビュー
ここでは、現行のPLCの一例として、OMRONの現行機種であるCP2Eのレビューを紹介しています。
RS232C端子が標準装備
CP1Eは、RS232Cのオプションを接続することにより、タッチパネルが使えたのだけれど、オプションが付けられるのは限られた機種だけでした。
スタンダード(S)・エッセンシャル(E)と呼ばれるシリーズは、標準で手前左側にRS232Cが標準装備されるようになりました(ネットワーク(N)シリーズは除く)。
タッチパネルは使いたいけれど、PLCはそれほどポート数は要らない向きもあったかと思いますが、そういった場合、適切な物をチョイスできるようになったのは嬉しい限り。
「万歳!」と言いたい限りではありますが、RS232Cのコネクタは線を差し込むタイプの物なのです。しっかりとした硬い線でないと外れてしまい、閉口します。
早くメーカーから何か便利グッズを出してくれるとよいのですが…と思っていたら、タッチパネル用にちゃんと専用ケーブルが出ていたのですね、見逃していました。
外見は旧型CP1シリーズとあまり変わらず
外見は、ご覧の通り、CP1Eと変わらずですが、スタンダード(S)・エッセンシャル(E)は本体正面にオプションが付かなくなりました(こちらも、ネットワーク(N)シリーズは除きます)。
コスト削減のためではないでしょうか。
PCとはUSBで接続
従来通り、PCとはUSBでのみ接続する方法となりました。
しかし、CP1Eの場合は、タッチパネルのUSB経由で接続する方法もあったので、いちいちUSBコネクタを外さなければならないので不便です。
タッチパネルのUSB経由で接続する方法は、タッチパネルとPLCのプログラムを同時に修正する際は、結構重宝していたので、是非改良していただきたいですね。
CP2E-Nシリーズは、イーサネットが使えます。
FBDも使えるようになった
上記は、CX-Programmerでファンクションブロック(FBD)を使った例です。
FBDは、プログラムをカプセル(モジュール)化して、流用しやすくしたものです。
プログラムをしてきた人が、いつもの間隔でプログラムができるメリットがFBDにはあります。
今まで、C言語などの高級言語と呼ばれる言語を使ってきた人がラダーに移行すると「????」の連続になると思いますね。
この言語、ラダー以外に使われる二モニック(アセンブラ)ではなく、Visual Basicに似ているので、バリバリとプログラムをしてきた人ならラダーを覚えるよりはずっと早いかも知れませんね。
逆に、ちょっぴりプログラムをかじったことがあり、論理回路が理解できる人ならば、ラダーの方が取っつきやすいのではないかと思います。
PLCのプログラミングするのに、色々な人が扱えるようになったということなので、喜ばしいことではありませんか。
ただ、FBDを流用するには、ラダーか二モニックを使わなくてはなりませんので、中途半端なのが非常に残念です。
供給状態もよくなった
ここ何年か、コロナや立て続けに起こった半導体工場の火災により、様々な部品・製品が供給できない状況に陥っていました。各社PLCも同様です。
しかし、ここに来て、ようやっと供給状態が改善され、以前のように安心して使える状態になりました。楽天でも購入できるまでに。しかも、定価よりもお得に購入できますので、大変喜ばしいことです。
↑エッセンシャルモデル(RS232Cのみ)の格安タイプです。
↑Ethernetが使えるタイプ。このN20とピン数が少ないN14はEthernet端子が1個。それより、ピン数が多いのはEthernet端子が2個付いています。
OMRON PLC情報
Windows8で使えていたのにも関わらず、Windows10以上にした際、OMRON CP1シリーズなどのPLCでUSB接続できない事例が発生しました。
こちらの手持ちのPCを使って調査した所、次のようなことが分かりました。
- Windows8の32ビットOSでは動いた。
- Windows10の32ビットOSで動くものもあった。
- WIndows10の64ビットOSでは動かない。
まれにWindows10の32ビットOSで動くケースもあるようですが、こちらの環境では、動かない場合も多いです。64ビットOSは当然でしょう。それは、なぜか…
CX-ONEのバージョンが古いとダメ
古いCX-ONEはどうも32ビット対応のようで、64bit PC用のドライバーが入っておらず、USB接続しても、全くデバイスとして認識されないのです。
そのため、CX-ONEのバージョンアップを行うのが正解です。
バージョンアップするのが面倒くさくて、どうしても32ビットの古いバージョンを使い続けたい向きは、オムロンにメールして、Windows10用USBドライバーアップデートをもらってください。
注意したいのは、古いバージョンですと、Windows10のバージョン変更に伴い、トラブルが発生していることです。
CX-ONEの2017年4月のアップデートパッチの適用、またはCX-ONEのver4.42をインストールすると、CJ/CP及びNSシリーズとUSB接続できなくなる事象が発生しているようです。
- :CX-Oneオートアップデート(V4向け_2017年10月)
機能改善
[CX-Server]Windows 10 バージョン1607以降のパソコンで、USBドライバの電子署名が要求され、PLCまたはNSとUSB接続できない問題を解決しました。
Ver.4:各ソフトウェア更新内容詳細(日):CX-One バージョンアップ プログラム:サポートツール:オムロン (omron.co.jp)
最近ですと、Windows10絡みの問題で
- :CX-Oneオートアップデート(V4向け_2022年01月)
機能改善
一部のWindows10パソコンにおいて、PLC/NS USBドライバが正常にインストールまたは使用できない場合がある問題を解決しました。
Ver.4:各ソフトウェア更新内容詳細(日):CX-One バージョンアップ プログラム:サポートツール:オムロン (omron.co.jp)
- :CX-Oneオートアップデート(V4向け_2022年04月)
機能改善
一部のWindows10パソコンにおいて、CS1W-CIF31用 USBドライバが正常にインストールまたは使用できない場合がある問題を解決しました。
Ver.4:各ソフトウェア更新内容詳細(日):CX-One バージョンアップ プログラム:サポートツール:オムロン (omron.co.jp)
動作が思わしくない場合を除き、CX-ONEは、古いバージョンのアプリではなく、極力最新のものをバージョンアップしてお使いください。
PLCまとめ
PLCは、古くから存在するものですが、簡単な配線で実験ができるアイテムとして今でも非常に有用です。
FA用の制作物の作成を生業としている人ならば、ぜひ活用していってほしいと思います。