- ベストアンサー
PLCとPCの通信
PLC経験者ですが、VBはまったくの初心者です。 "VB上のボタンが押されたらPLCのデータメモリに10を格納する" というプログラムを作るには、どうすればよいのでしょうか? PLCはキーエンスKV5000でイーサネットで通信しようと考えています。 VBの参考書にPLCのことは一言も書いてないので、 何か専用の関数、命令語があるのでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>VBの参考書にPLCのことは一言も書いてないので、 >何か専用の関数、命令語があるのでしょうか? PLCメーカーが、開発言語用にコンポーネント(API)の提供を行っていない限り、専用の関数というものはありません。 プログラムとして「相手が何か」というのは一切関係ないのです。 「相手と通信するためのI/Fとプロトコル」に合わせるということが重要で、実装が必要な部分になります。 まず、質問者さんが行わなければいけないのは、 >"VB上のボタンが押されたらPLCのデータメモリに10を格納する" から ・GUIの作成 >イーサネットで通信しようと考えています。 から、 ・PLCのプロトコルの確認 ・VBでのイーサネット通信の実装 を行う必要があります。
その他の回答 (2)
- kiki_s
- ベストアンサー率59% (147/248)
VBなどのアプリケーションからPLCに対してデータのやり取りをする場合、 直接やり取りする事は可能ですが、命令、取得のやり取りが複雑で現実的ではありません。 また、VBなどの開発環境はパソコン上でのスタンドアローン動作を主に作られていますので、 一般的でないPLCとの通信などは考慮されていません。 この様な場合には、各メーカから提供されているFA通信ソフトウェアと呼ばれるミドルウェアを使用するのが普通です。 キーエンスの場合は、「DATA BUILDER」というソフトウェアですが、 このソフトは基本的にエクセルのアドインです。 ただし、同価格でVBやCなどから利用できるOCXもあります。 キーエンス「DATA BUILDER Excel」 http://www.keyence.co.jp/seigyo/plc/data_builder/ 組み込み開発用のOCXは営業担当に問い合わせるといいでしょう。 各メーカのFA通信ソフトウェアについてはそれなりに保証がありますが、 PLCメーカごとにミドルウェアを購入する必要があります。 逆にPLCメーカの制限がほとんど無いFA通信ソフトウェアもあります。 ロボティクスウェア http://www.roboticsware.co.jp/index.htm メーカに無いコマンドなどもある(らしい)ので場合によっては便利かも? ちなみに、私はキーエンスのPLCを使った事はありませんが、 この手のソフトウェアは、通信パラメータなど考えなくてもデータの書き込み、読み出しが簡単に出来ます。 開発費用などを考えるとFA通信ソフトウェアを購入した方が安価になる場合がほとんどです。
お礼
ご回答ありがとうございます。 DATA BUILDERなどはデータ収集に便利ですね。 VB上のボタンとPLCをつなぐ場合は FA通信ソフトウェアを使うのが推奨とのことですので、 まずFA通信ソフトウェアについて調査してみます。 ありがとうございました。
- mitarashi
- ベストアンサー率59% (574/965)
VisualBasic.NETではじめる計測制御入門 熊谷英樹著 日刊工業新聞社という本に、WindowsAPIによるPLCとのシリアル通信制御という項があり、「データメモリを読み書きするプログラム」というサンプルコード(三菱電機製PLC)が載っています。数年前、マイコンボードと通信しようと購入したのですが、途中で別言語に浮気して、ほとんど手を付けてありませんが、記事が印象に残っていたので、引っ張り出してみました。検索してみると、現在も販売されています。ご参考まで。
お礼
ご回答ありがとうございます。 まさに探しているプログラムがのってそうですね。 ご紹介いただいた本早速探してみます。 ありがとうございました。
お礼
ご回答ありがとうございます。 まず、コンポーネントについて、PLCメーカーに聞いてみます。 ありがとうございました。