現在、ちょっとした装置や医療用の装置にはタッチパネルやPLC(シーケンサ)が主流となっています。
でも正直、通信ってよくわからない!どうやってタッチパネルと繋げればいいの?とそもそもの基礎がわかっていないと何をどうしたらいいかわかりませんよね?
しかも、取扱説明書を読んでも『わかっている人向け』の用語や説明が並び、とっかかりすら掴めない!という人は大勢いるかと思います。
ということで、当記事ではそのとっかかりとなる解説をしてみようと思います。
あくまでこれから勉強していく人へのとっかかり基礎知識としての概念を説明する記事ですので、どこどこのタッチパネルとの詳しい繋ぎ方が知りたい!という方はちょっと違う記事になるかと思います。
これが参考になれば幸いです。
世の中には冷暖房のような温度、照明の明るさなど自動調節して調整してくれる機械が沢山あります。他には水の流れる量や圧力などもありますよね。しかし、その『調節』ってどのような制御構造でどのように行われているか知っていますか?温度制御とも[…]
いまや個人事業主や少人数の規模の企業が集客をするにはホームページは必須です。
しかし、ホームページの作り方がわからなかったり、作れてもなかなか検索順位が上がらなかったりと、
案外ホームページの作成・集客・運営は大変なもの。
そもそもSEO(エスイーオー)対策すらわからない、知らないという人が製作しても集客は難しいでしょう。
いまよりもっと、お客さんを増やしたいとお考えならブログ代行サービスがオススメです!!
最初に綿密な打ち合わせをしたら、基本丸投げでOKなサービスです!!
インターネットという、いまや誰もが見て検索する媒体は、日本中あるいは世界中が対象です。
つまり営業一人雇うよりも安く、宣伝効果は何倍、何十倍も高いのです!
そんなwebサイトの効果的運用を目指すなら、下記ブログ代行サイトをご検討ください。
通信ってどうやってするの?
さて、まず状況的に何がわからないのかわからないという状態の方も多いかと思います。
特にハードとソフトの組み方などを複雑に考えてしまうと、余計にわけわからなくなりますのでそれは後の話にしましょう。
最初にすることは、機器とタッチパネルあるいはPLC(便宜上、以下はタッチパネルのみとします)と通信ができるか環境を確認することになります。
タッチパネル側も多くの機器と繋げられるようになっていますが、さあ繋げといわれてもおそらく形の上での配線はできるかもしれませんが、通信はまずできないでしょう。
なぜなら、『通信インターフェイス』『通信速度』が合致していることが機器間の通信の絶対条件なのです。
まずはこの二つについて解説していきましょう。
【通信インターフェイスとは?】
タッチパネルなどのマニュアルを見ていると、通信インターフェイスの項目があるかと思います。
おそらく、
- RS-485
- RS-422A
- RS-232C
の三つのうちいずれかだったり、機種によってはCC-Linkとかそういった表記が見られるかと思います。
これが何かというと、通信の規格です。
パソコンでいえば、USBだったりHDMIだったりDVI端子だったりD-SUBだったりするヤツです。
異なるケーブルや端子間ではディスプレイに映像をうつせずに使用できませんよね。それと同じで、この通信の規格を合わせないとそもそも通信そのものができないのです。
ちなみに、上記であげた『RS-485』『RS-422A』『RS-232C』の三つは一般的ではありますが、CC-Linkのような高速通信を実現したような規格もあります。
とはいえ、機器にその通信規格を入れるのにライセンス料金がかかってくるので、採用していないメーカーも多くあります。
一般的に主流といえば『RS-485』です。
【通信速度】
通信インターフェイスを合わせたら、今度は通信の速度を合わせなければいけません。
機械的に高速でタッチパネルと機器の間でやりとりされる通信ですが、『bps』という単位であらわされ、数字が大きければ大きい程早い通信となります。
伝送速度と呼ばれるものです。
現在タッチパネルに搭載されているものは、
1152000 57600 38400 19200 9600 4800 bps
が多く、おそらくこのような形で説明書にも記載がされていることでしょう。
大抵は機器側にも、タッチパネル側にも通信速度の設定項目があり、選べることができます。
なので、この速度を合わせてあげることで通信が成立するのです。
いわば二人三脚のようなもので、タッチパネルだけでも早い方がいいじゃないか!と安易な考えで機器の方が対応できないのにタッチパネルのみの速度を上げてしまうと、うまくいきません。
なにごとも、歩調を合わせることが大事ということです。
ただ、タッチパネルが機器の情報を読むわけなのですが、読み込む項目が多いと表示の更新が遅くなることがしばしばあります。
一個を常にやりとりしているより、三十個を毎度見に行っているのとでは大違いですよね?
そういうときは、通信速度を合わせながら互いに上げる設定をした方がいいでしょう。ここは、そういった設定をするところです。
繋がった!ソフトはどうすればいいの?
さて、タッチパネルと繋がったからといって喜んではいられません。面倒なのはここからなのですから。
タッチパネルといっても、最初はサンプルのソフトくらいは入っているでしょうが図や配置に関しての作り方についてはタッチパネルのメーカーによって作り方なども違うので割愛します。
いずれにしても、製品として出すのでしたら何らかの画面作成はしないとなりませんね。この辺りはセンスが問われるかと思います。
とりあえず、今回は描画ソフトで簡易的にこのような画面を作ったとします。
しかし、残念ながら配置しただけで勝手に通信が繋がるほど甘いものではなく作成したアイコンの一つ一つにコマンドを振り分けることが必要になります。
しかし、このコマンドですが実はちょっと理解には頭をひねる必要があるんです。
ザっと言ってしまうと、
「通信プロトコルを設定し、それに合わせたコマンドを呼び出し、アイコンに登録する」
といった作業なのですがご理解はいただけるでしょうか?
つまり、上記図なら温度は温度の、湿度は湿度の読みだす項目を設定しておけば通信が繋がっている限り自動的にリアルタイムに状況をモニタしてくれるということです。
さて、ふたつの単語が出ましたよね。
- 通信プロトコル
- コマンド
この辺りはちょっと通信関係で複雑になっていく部分ですので、本記事のとっかかりという都合上大まかにではありますが、わかりやすくお伝え致します。
まず、この『通信プロトコル』ですが、通信規約ともいわれているものとなります。インターットのネットワークに詳しければIPとかDNSを聴いたことがあるかと思いますが、それも通信プロトコルの種類です。
ただ、こういったタッチパネルや機器間では、Modbus(モドバス)というプロトコルがどの機器でも搭載されており、標準的に使われるものとなっております。
他にはイーサネットやメーカー独自のプロトコルなどが存在し、タッチパネル各メーカーもこの独自の通信プロトコルを搭載している機種が存在します。
このModbusやイーサネットといったプロトコルが何かというと、簡単にいえば通信のルールのようなものです。
つまり、上記図のようにModbusでは『A=あ』だったものがイーサネットでは『1』となってしまうといった、プロトコル毎に違うルールがもたらされているんです。
「なんで一緒にしないの?面倒じゃん」
という疑問はあるかと思います。ぶっちゃけ、権利とお金が強いかと思います。
創られたものには著作権ができ、使用するにはお金が発生します。つまり、メーカーはこの通信プロトコルを導入して製品化するのに著作権料を支払わなければならないのです。
いちいちそんなのにお金を払いたくないということで、メーカーもまた独自のプロトコルを創り出して製品化したりするので、認知されていないのも含め独自の通信プロトコルは世の中にいくつかあるようです。
大手ですと、自社製品を使ってくれるユーザー、その客層目当てに類似製品を製作するメーカーがあるので優秀なプロトコルを一度作れば使用料でお金の生る木になってしまうでしょうね。三菱電機とかは代表例です。
さて、そんな通信プロトコルというルールですが上記図でいえば、
Modbusの『あ』というのを温度という文字に頭の中で置き換えてください。
ということは、『A』というコマンドを呼び出せば温度が表示される状態になるということです。
ならば、最初の図の温度のところにこの『A』を最初からアイコンに紐づけして割り振ってやれば、機器側から吸い上げた情報(温度)をこの温度のアイコンで表示できるということです。
ここまでが、概念ではありますがタッチパネル等との通信の基本となるやり方です。
通信の遅延とエラーについて
ここからは余談のようなものですが、先ほど通信速度のことを話したかと思いますが、読みだすコマンドの量が多いと明らかに遅いと目視でも感じることがあるんです。
多くの人や装置はそもそもある程度早いものなので気にしないとは思いますが、医療装置などは正確性と素早さが求められ、少しでも遅れないような仕組みが必要になってきます。
通信というのは、このように順々に読み込んでいくものです。
①を読みにいってデータを吸い上げ、タッチパネルに書き込み、エラーをチェックして今度は機器側に書き込みにいって……ということをして①を終了させたあと次に②という流れで同じように順番に読み込みと書き込みを繰り返していくんです。
図のように4つ程度ならともかく、この項目が50個あったら一項目わずか0.1秒でも5秒になってしまいますよね。
他にはこのように一斉に書き込みと読み込みをするする方式もあります。けど、これも全部一気にしているだけでさして時間に変わりはありません。
一個一個項目が変わっていくか、数秒ごとに一気に変わるかの違いです。
ですので、速度のあるプロトコルを導入したり通信速度を速めたりと調整することで素早い読み込みと書き込みを繰り返すことが求められることがあります。
なお、よく通信エラーで騒ぐ人もいますが大抵は動作中ならケーブルの断線で設定中ならコマンドの入れ間違いによるエラーのどちらかです。
焦らずに確認してみるといいでしょう。
まとめ
さて、装置の通信の基礎知識についてまとめてみました。
説明も難しく、半分は感覚でやるような作業にもなってくるのでわかり辛ければすみません。
大まかにこのような流れで構築するんだよという参考にしていただければ、とっかかりとなるのではないかと思います。
これが参考になるのであれば幸いです。