最近のArduinoや他の多数のマイクロコントローラーベースのボードの出現により、組み込みシステムへの関心が高まり、マイクロコントローラーの世界が非常に多くなりました。これにより、マイクロコントローラーのユーザー数が増えるだけでなく、マイクロコントローラーが使用される範囲とアプリケーションも増えました。そのため、過去数回の記事で、次のような優れた組み込みシステムデバイスを構築するために重要ないくつかの重要なトピックを取り上げてきました。プロジェクトに適したマイクロコントローラーの選択、マイクロコントローラーとマイクロプロセッサーの選択。同様に、今日の記事では、マイクロコントローラーをプログラマブルロジックコントローラー(PLC)と比較します。
プログラマブルロジックコントローラー
プログラマブルロジックコントローラ(PLC)は、単に、システムの信頼性が高い産業用制御システムや他のシステムで使用するために設計された特殊目的のコンピューティングデバイスです。
これらは当初、自動化業界で製造プロセスで使用されるハードワイヤードリレー、シーケンス、タイマーを置き換えるために開発されましたが、現在では拡張され、ロボットベースのラインを含むあらゆる種類の製造プロセスで使用されています。最近では、PLCで稼働する機械や設備を持たない工場はおそらく1つもありません。それらが広く採用され使用されている主な理由は、その頑丈さと製造現場に関連する乱暴な取り扱い/環境に耐える能力に深く根ざしています。また、リアルタイムオペレーティングシステムの良い例でもあります。 非常に短い時間枠内で特定の入力への出力を生成する高い能力を備えているため、2番目の遅延が操作全体を混乱させる可能性があるため、産業環境の重要な要件です。
マイクロコントローラー
一方、マイクロコントローラーは、1つ以上のプロセッシングコアを含むシングルチップ上の小さなコンピューティングデバイスであり、プログラム可能な特殊および汎用の入出力(I / O)ポートと一緒にメモリデバイスが組み込まれています。これらは、特に特定の反復タスクのみを実行する必要があるアプリケーションで、あらゆる種類の日常のデバイスで使用されます。それらは通常裸であり、必要な接続なしでスタンドアロンデバイスとして使用することはできません。PLCとは異なり、ディスプレイやスイッチなどのインターフェイスは組み込まれていません。通常、これらのコンポーネントを接続できるGPIOがあるだけです。
今日のチュートリアルでは、以下を含むさまざまな見出しの下でPLCとマイクロコントローラーシステムを比較することに焦点を当てます。
- 建築
- インターフェイス
- パフォーマンスと信頼性
- 必要なスキルレベル
- プログラミング
- アプリケーション
1.アーキテクチャ
PLCアーキテクチャ:
PLCは一般に高レベルのマイクロコントローラと呼ばれます。これらは基本的に、プロセッサモジュール、電源、およびI / Oモジュールで構成されています。プロセッサモジュールは、中央処理装置(CPU)とメモリで構成されています。マイクロプロセッサに加えて、CPUには、通信ネットワークとともにプログラムできるインターフェイス(USB、イーサネット、またはRS232)が少なくとも含まれています。通常、電源は別のモジュールであり、I / Oモジュールはプロセッサとは別です。I / Oモジュールのタイプには、ディスクリート(オン/オフ)、アナログ(連続変数)、およびモーションコントロールや高速カウンターなどの特殊モジュールが含まれます。フィールドデバイスはI / Oモジュールに接続されています。
PLCが所有するI / Oモジュールの量に応じて、PLCと同じエンクロージャーまたは別のエンクロージャーにある場合があります。ナノ/マイクロPLCと呼ばれる特定の小型PLCは、通常、電源、プロセッサなどを含むすべての部品を同じエンクロージャに収めています。
マイクロコントローラのアーキテクチャ
上記のPLCのアーキテクチャは、構成要素の点でマイクロコントローラにいくらか似ていますが、マイクロコントローラは、CPUからI / Oポート、および外界との通信に必要なインターフェイスまで、すべてをシングルチップに実装します。マイクロコントローラのアーキテクチャを以下に示します。
ラダーロジック/ダイアグラムベースのコードの例を上に示します。それは通常、その名前の背後にある理由であるはしごのように見えます。この簡素化された外観により、PLCのプログラミングが非常に簡単になり、回路図を分析できればPLCをプログラミングできます。
最近の高水準プログラミング言語の人気により、PLCは現在、C、C ++、基本などのこれらの言語を使用してプログラミングされていますが、すべてのPLCは通常、業界のIEC 61131/3制御システム標準に準拠しており、含む標準; ラダー図、構造化テキスト、機能ブロック図、命令リスト、およびシーケンシャルフローチャート。
現代のPLCは通常、上記の言語のいずれかに基づくアプリケーションソフトウェアを介してプログラムされ、USB、イーサネット、RS232、RS-485、RS-422のいずれかのインターフェイスを使用してPLCに接続されたPC上で実行されます。
一方、マイクロコントローラーは、アセンブリなどの低水準言語、またはCやC ++などの高水準言語を使用してプログラミングされます。通常、使用されているプログラミング言語に関する高度な経験と、ファームウェア開発の原則に関する一般的な理解が必要です。プログラマーは通常、データ構造などの概念を理解する必要があり、プロジェクトに非常に優れたファームウェアを開発するには、マイクロコントローラーアーキテクチャを深く理解する必要があります。
マイクロコントローラーは通常、PC上で実行されるアプリケーションソフトウェアを介してプログラムされ、通常、プログラマーと呼ばれる追加のハードウェアを介してそのPCに接続されます。
ただし、PLCでのプログラムの動作は、マイクロコントローラの動作と非常によく似ています。PLCは専用のコントローラを使用するため、1つのプログラムのみを何度も処理します。プログラムの1サイクルは スキャン と呼ばれ、マイクロコントローラーがループを通過するのと似ています。
PLCで実行されているプログラムの動作サイクルを以下に示します。
6.アプリケーション
PLCは、産業用制御システムで使用される主要な制御要素です。それらは、産業機械、コンベヤー、ロボット、およびその他の生産ライン機械の制御に応用されています。また、SCADAベースのシステムや、高レベルの信頼性と極端な条件に耐える能力を必要とするシステムでも使用されます。それらは以下を含む産業で使用されます。
1.連続ボトル充填システム
2.バッチ混合システム
3.ステージ空調システム
4.交通管制
一方、マイクロコントローラーは日常の電子機器に応用されています。これらは、いくつかの家電製品やスマートデバイスの主要な構成要素です。
産業用アプリケーションのPLCをマイクロコントローラーに置き換える
使いやすいマイクロコントローラーボードの出現により、マイクロコントローラーが使用される範囲が広がり、ミニDIYコンピューターからいくつかの複雑な制御システムまでマイクロコントローラーが不適切であると見なされた特定のアプリケーションに適応されています。これにより、PLCの代わりにマイクロコントローラーが使用されない理由について疑問が生じました。主な議論は、マイクロコントローラーと比較したPLCのコストです。産業用アプリケーションで使用する前に、通常のマイクロコントローラーに対して多くのことを行う必要があることが重要です。
この記事ですでに述べたポイントから答えを見つけることができますが、2つの重要なポイントを強調するだけで十分です。
1.マイクロコントローラーは、PLCのような極端な条件に耐える頑丈さと能力を備えて設計されていません。これにより、それらは産業用アプリケーションの準備ができていません。
2.産業用センサーとアクチュエーターは、通常、マイクロコントローラーと直接互換性がない可能性があり、コストを増加させる何らかのサポートハードウェアを必要とする電流/電圧およびインターフェースの範囲にあるIEC規格に従って設計されています。
他のポイントもありますが、この記事の範囲内にとどまるには、ここで停止する必要があります。
まとめると、これらの各制御デバイスは特定のシステムで使用するように設計されており、特定のアプリケーションに最適なものを決定する前に、十分に検討する必要があります。特定のメーカーがマイクロコントローラーベースのPLCを構築していることに注意することが重要です。たとえば、産業用シールドは現在、以下に示すArduinoベースのPLCを製造しています。