PC_PLC FAQ

1.製品概要

1-1 PC_PLCとは?

メカトロニクス機器、ロボット、工作機械などのシーケンス制御装置は、以前は固定したロジック回路で構成されていましたが、最近はほとんどがマイコン化されており、容易にプログラミングできるようになっています。 これをPLC(Programmable Logic Controller)といい、メーカー各社はそれぞれ特徴のある製品を発売しています。PC_PLCとはこのPLC機能をパソコンで実現したものです。 制御プログラムにはラダー言語を使えるため、PLCに習熟したプログラマーにもなじみやすく、一方複雑な制御を行いたい場合はC/C++言語で開発したアプリケーションプログラムも実行できます。

1-2 特徴は?

各社のハードウェア、ソフトウェアはかなり類似性がありますが、完全な標準化や互換性はなく、制御の対象装置ごとにPLCを選定する必要があります。 その結果、開発員・保守員の技能育成には特別な教育が必要であること、機種ごとに部品の在庫管理が必要なこと、メーカーが長期にわたって部品供給を保証する必要があること、などの問題が提起されています。 PC_PLCはこの問題に対応すべく開発されました。 オープン化です。 PLCやシーケンサ機能を専用ハードウェアではなく、汎用のパソコンを使って実現したソフトウェア製品です。 DeFact Standard(事実上の標準)ともいうべきWindowsPCおよびその周辺機器を使うことによって、早く、安価に開発でき、長期的には部品供給の面でも要員の面でもトータル保守コストが有利になると期待できます。

1-3 パソコンPLCの短所は?

外国では応用例が多数あり従来のPLCを圧倒しつつありますが、国内では歴史が新しく実績が少ないことです。 パソコンと聞けばデスク上のPCを連想し、すぐハングアップするのではないかと誤解する人も多くいます。 その結果、実績のリスクとコストのリスクとを比較するという落とし穴にはまります。 重要なのは信頼性とTCO(Total Cost of Ownership:保有総コスト)の観点だと考えています。 パソコンを使うということは、ハードおよび周辺機器のメーカー・機種が多数あって選択に迷うこと、高信頼性の機器を選択するにはそれなりの知識が求められることです。 エンドユーザーからは、ハードウェア・ソフトウェアが一般品の単なる組み合わせとしか見えず、システムベンダーとしては設計の知的価値を評価してもらいにくいことです。 実際には工業仕様のパソコンや周辺ボードのハードウェアはきわめて高い信頼性を持っていますし、メーカーのサポートも十分に行われています。 マイクロネットはお客様の環境に適したハードウェア・ソフトウェアの選定、システム設計・運用保守に関するソリューションサービスを提供して、こういった問題をお客様と一緒に解決しています。

1-4 納入実績を教えてください。

マイクロネットでは3社で約50システムの実績があります。 尼崎市の尼崎競艇場の正面入口に設置してある、入場ゲートにそれぞれ使用されていて、すでに7年以上の実績があり、ハードディスクの経年劣化以外にはノートラブルです(約1350ステップ)。 その他多くが、入退場、入退室ゲート・扉管理のアプリケーションに使われています。

1-5 パソコンを使うとキーボード・ディスプレイがあり小型機器への組み込みが難しいですか?

パソコンといっても、ワンボードパソコンや組み込み型のコンパクトなOS(Windows XP Embeddedなど)が豊富に市販されているので、容易に組み込むことができます。 キーボードなし・ディスプレイなしのシステムもごく普通に使われています。

2.アプリケーションの開発

2-1 PC_PLCの開発環境とは?

PC_PLCのアプリケーションを開発するためのPCおよびソフトウェア群のことです。 通常PC/ATパソコンを使います。 もちろんキーボード・マウス・ディスプレイが必要です。 ラダー言語のプログラミングをWindows NT/2000/XP OSのもとで開発します。 Windows OSのほか、INtime開発キットと、PC_PLC開発キット、Microsoft Developers StudioおよびMicrosoft Visual C/C++が必要です。 INtime開発キット、PC_PLC開発キットはマイクロネットまたは代理店から購入いただきますが、Microsoft Developers Studio、Microsoft Visual C/C++はMicrosoft社またはその代理店からご購入いただくことになります。 開発したアプリケーションは他のコンピュータに導入して実稼動させますが、開発マシンに対してこれをターゲットマシンともいいます。

2-2 ターゲットマシンにはどんなコンピュータを使いますか?

通常のPC/ATパソコン(デスクトップ・ノート型)でも、ボードタイプのパソコンでも対応できます。 ターゲットマシンにはINtimeのOSが必要です。 WindowsOSとINtimeOSが共存する方式も、INtimeOSのみの方式も可能です。 ただし、シングルプロセッサタイプに限定されており、マルチプロセッサ(デュアルプロセッサ)には対応していません。 これはパソコンのOSの一部であるHAL(Hardware AbstractionLayer)というソフトウェアの形式によるものです。 マルチプロセッサタイプでもCPUが1つの機種はHALを入れ替えることによって対応可能なものもあります。 詳細はマイクロネットWEBページhttp://www.mnc.co.jp/INtime/INtimeFAQ.htmを参照ください。 ターゲットマシンにはINtimeランタイムシステムとPC_PLCランタイムシステムが必要です。 これらランタイムシステムはターゲットマシンパソコン1台ごとにライセンスを購入していただきます。

2-3 シミュレーション機能はありますか?

特に「シミュレータ」と名前の付いたソフトはありません。 ラダーモニター上でディジタル入出力を実装ボードから切り離してメモリー上で入出力をシミュレートする機能があります。

2-4 デバッグはどのような方法で行いますか?

ラダーモニターでリレーの状態を表示させながら、制御周期の1サイクル毎に動作を止めながらのデバッグが可能です。 ラダーの1ステップ毎デバッグはできません。 その他、ラダー回路上のリレーの動作状況のトレンド表示機能が使えます。

2-5 複数のPCにPC_PLCを導入してネットワークができますか?

複数台のPCにPC_PLCを導入し、これら装置間を結ぶコンベア装置にもパソコンPC_PLCを導入し、コンベア用PLCが複数台の装置用PLCとの連携を保ちながら搬送装置を制御する場合を考えているのですが? PC_PLCをネットワーク構成で実行することはできません。 各PC上のPC_PLC間で同期制御やデータ交換をする場合は、C言語で作成したアプリケーションでプログラム間通信を介入させることによって実現できます。

2-6 ターゲットマシンの実行状態をネットワークを介して別のPC上のラダーモニターで監視できますか?

出来ません。 ラダーモニターはターゲットマシン上でしか実行できません。

3.ラダー言語

3-1 ラダー言語プログラムとC言語プログラムの共存とは?

ラダー言語で書いたプログラムとC言語プログラムとが同じコンピュータの中でマルチタスクで走るということです。 ラダープログラムとCプログラムとは別々にコンパイルしなければなりません。 ラダーを一定の制御周期で実行する一方、何らかのイベント(割り込み)で通常のCプログラムを実行するのです。 ラダープログラムの中でCプログラムをサブルーチンとしてコールすることもできます。

3-2 ラダー言語で記述されたアプリケーションプログラムをC言語でメンテナンスできますか?

いいえ、出来ません。 ラダー言語がC言語ソースコードに変換されるのではなく、直接オブジェクトコードに変換されるためです。 ラダー言語プログラムとC言語プログラムとは別々にコンパイルしなければなりません。

3-3 ラダー言語とC言語の共存とは、それぞれのアプリケーションがマルチタスク(マルチスレッド)で走るということですか?

そうです。 ラダープログラムもCプログラムもINtimeアプリケーションの1つとして実行されます。 1台のパソコンでラダー言語プログラムを複数走らせることが可能です。 例えば、複数台の装置を制御するためラダーアプリケーションを複数導入するといった構成が可能です。 ただし、外部装置やデータのリソース共有・競合には注意しなければなりません。 例えば同一のディジタル出力を別々のラダーアプリケーションやC言語アプリケーションで制御するには、マルチプログラミングに伴う競合を排除する処理が必要です。

3-4 ラダー言語のみ使用する場合でもINtime環境が必要ですか?

はい、必要です。 INtime開発環境はAPIライブラリ提供、コンパイル・リンクなどを処理します。

3-5 システムハウスからPC_PLCによる制御装置を購入しましたが、年間数回ラダーシーケンスの変更をシステムハウスに発注しなければなりません。 自社でメンテナンスしたいのですが、INtime開発キットとPC_PLC開発キットを購入しなければなりませんか? 一時的に使用するだけなので、短期間レンタルの制度はありませんか?

現在そのようなサービスは提供していません。

3-6 ラダープログラムとC言語プログラムを同時にデバッグできますか? 複数のラダープログラムを同期的にデバッグできますか?

デバッグの内容によりますが、INtime開発環境の1つであるSoftScopeやINscopeでCプログラムをデバッグする傍ら、同じ画面上でラダープログラムのデバッグをすることは可能です。 ラダープログラムモニターのウィンドウを同時に開いて同時にデバッグをすることができます。

3-7 ラダープログラムの実行形式はコンパイル方式ですか? インタープリター方式ですか?

コンパイル方式とインタープリター方式があります。

3-8 コンパイル方式では、プログラム修正後すぐに結果を見たいというニーズには不便ではないですか?

インタープリター方式では確かに修正後すぐ結果を確認することができますが、コンパイル方式の開発マシンといっても普通のPCですから、現場に持ち込んでコンパイルができるので、修正後の結果はわりに早く確認することができます。

3-9 ラダープログラムとC言語で記述したプログラム間のデータの受け渡しは?

INtimeのメールボックス機能で行うか、あるいはデータセグメントを定義してデータ交換します。

3-10 C言語コンパイラーは何を使いますか?

INtimeの開発キットに含まれるIntel製の32ビットCコンパイラー、MS VisualC、C++が使えます。Unix等で使われているANSI-Cと互換です。

3-11 ランタイムシステム上でのラダー編集は出来ますか?

PC_PLCのインタープリター実行方式で編集が可能となります。

4.周辺機器

4-1 開発マシンとターゲットマシンの接続について教えてください。

開発マシンもターゲットマシンもPC/ATパソコンですから、開発マシンをそのままターゲットマシンとして使えます。 一方開発マシンで開発したラダープログラムをターゲットマシンにダウンロードすることもできます。 ダウンロードの場合はTCP/IPを使います。 開発マシン自体をターゲットマシンとして使うことができるので、必要に応じて開発マシンを現場に持ち込んで開発と実行を同時進行させることも可能です。

4-2 装置と接続する入出力機器にはどんなものが使えますか?

DIO:パソコン用に市販されているほとんどのボードが使用できます。 PCIバス、ISAバス、PC104バス接続可能です。 ノート型ではPCカード(PCMCIA)が使えます。 ただしCardBusは使えません。 これらのDIOはINtimeOSから直接アクセスするため、ドライバーソフトは不要です。 詳細はマイクロネットWebページPC_PLC/外部入出力を参照してください。 ネットワーク機器:ボード、カード形式のもの、PCにないそうされたデバイス形式のものなど外形の異なるものがありますが、Intel855Xシリーズ、RealTech社製製品などがあります。 ネットワークインターフェースカードはWindowsが使用するカードとは別のカードが必要です。 詳細はマイクロネットWEBページINtimeFAQを参照してください。 INtime用としてマイクロネットが推奨(動作確認済み)する機器と同じです。 フィールドバスとしてFL-net、DeviceNet、EC-net、CAN、Profibus、Interbus、MELSECS8が使えます。 マイクロネットはこれらのバスをボード製品およびドライバソフトのキットとして販売していますので、安心してお使いいただけます。

4-3 標準で提供されていないI/Oドライバーはユーザーで開発できますか?

はい、出来ます。

4-4 I/Oドライバーを開発する場合、開発用ソフトが別途必要ですか?

I/Oドライバーの開発にはINtime開発ツールが必要です。