4/21 シリアル通信のコマンド(IAI:RCP2シリーズ)

20120421-003

相談をさせて頂いた制御屋さんの先輩方、メーカー(IAIさん)のおかげで、コントローラーとPCにて通信する事ができました。

有難うございました。

IAIさんも、とても親切に電話対応して頂けて感謝しています。

いやぁ~。難しかったです・・・・

けど、シリアル通信ができた。と言う事なので、現在値表示はこれからですが・・・・。また壁にぶちあたる事でしょう。

既に、ぶちあたっているから・・・

今までの進捗をササッと書いて、頭をリセットしよう。

siristerにて通信テストしていたけど、中々うまくいかない。

と言う事で、別のフリーソフト。Rs232cで試した。

設定後、送信したら。なんと!

応答があった!!

送受信できました♪

ヤッタ。超うれしい。

この感動を、また忘れないようにしよう♪

20120421-004

コマンド

STX_ 局 _o _org _0 _BCC _ETX

02 30 6F 30 37 30 30 30 30 30 30 30 30 37 41 03

何度も・・・何度も・・・何度も、打ち続けた原点復帰コマンド。

「送信」を、ポチッ。と押すと、

レスポンス

STX _u _局 _o _ステータス _アラーム _IN _OUT _PE _BCC _ETX

02 55 30 6F 30 46 30 30 30 30 45 30 30 33 31 03

が帰ってきた♪

20120421-006そして、手前に縦に設置しているロボシリンダーが、ジィ~~~~~と「原点復帰」した。

とても、感動しました。

私にとっては、ほんと。難しかった・・・

あっ!手前には。

DAI-PROJECTの、かとおsanから、プレゼントを頂いたAシリーズがあります。

あざーーーす!このご恩。忘れませんし、一生懸命勉強させて頂きます。

私が、Aシリーズにいけるとは。。。おかげで、また、少し前進できそうです。

CPUと、ベースは無いので、GETしてAシリーズも勉強しようと思います。

どこかに、落ちてない・・・???余っていないですかぁ???

(・_・ ) ( ・_・)キョロキョロ

将来の制御屋を育てると思って、安く譲って頂ける方。ドシドシご連絡して下さいませぇ~~~。

かとおsan。感謝です。ありがとうございました。

その後、他のコマンドも試してみました。ステータス照会、サーボON、

ポジションNo.指定移動、データ読出し、書き込みアドレス指定、ウィンドウ領域→不揮発性メモリ領域データ転送。

良し!レスポンス確認♪OK!!

今回、一番悩んだり、相談したりと難しかったのは、BCC(ブロックチェックキャラクタ)の求め方。

取説には、

ヘッダ(STX)、デリミタ(ETX)、及びBCCを除く12キャラクタのキャラクタコードを、8ビット長で全加算した結果の2の補数をとることにより生成する。

と書かれてあるが、意味がイッチョンわからんかった。

そこで、大分におられるY先生に何度相談した事か・・・有難うございました。

今後も、私のように電気を勉強される方はキットいると思う。

そして、IAIコントローラーと通信を試す方もいると思う。

そんな方の為に、参考で書き散らかしておきます。

私の思い出の為にもなるし。

≪「原点復帰」で言うと。≫

コマンド

STX_ 局 _”o”_ org _8バイト連続”0″_ BCC _ETX

02 6F 30 30 30 30 30 30 30 30 03

≪ココで、局、orgの設定を入れると、≫

STX_ 局_ “o”_ org _8バイト連続”0″_ BCC _ETX

02 0 6F 0 7 30 30 30 30 30 30 30 30 03

となる。

≪局と、orgのASCII文字を、16進数に変換。≫

STX _局 _o _org _0 _BCC _ETX

02 30 6F 30 37 30 30 30 30 30 30 30 30 03

取説に記載されている

「ヘッダ(STX)、デリミタ(ETX)、及びBCCを除く12キャラクタのキャラクタコードを、8ビット長で全加算」

局 o org 0

30 + 6F + 30 + 37 + 30 + 30 + 30 + 30 + 30 + 30 + 30 + 30 = 286H

286Hを2進数に変換。

1010000110

8ビットなので

10000110 を、

01111001 ←全ビット反転

+) 1 ←1を加算

 ̄ ̄ ̄ ̄ ̄ ̄

01111010 ←2の補数

↓16進数に変換

7A ←これが、BCCとなる。

↓16進数へ変換

BCC = 37 41

が答え。

この答えを導く為に、かなり頭悩ませました。

今回、現在値表示をさせたい。と言う事で試しており、まだタッチパネルに表示させる事はできていませんが、

この勉強を学べた。まさに、答えを導くまでの過程(プロセス)がほんと、大事だな。と最近ヒシヒシと感じています。

なんか、勉強したぁ。と言う優越感にひたっている私でございます♪

20120421-005

この調子で、他のコマンドを試す。

ポジションNo.指定移動。

No1へ移動コマンド。「送信」ポチッ!

ギュイィーーーン

と、No1へ移動♪

20120421-007

RMコマンド、レスポンス(データ読出し)

「送信」ポチッ!

受信データは、

02 55 30 52 4D 46 46 46 46 43 35 36 38 44 45 03

これの、46 46 46 46 43 35 36 38が位置情報と思うのだが・・・

ASCIIに変更すると、FFFFC568と思うのだが・・・10進数に変更しているのだが、なかなかうまくいかん・・・

また、チョイト悩み中。

最後の10進数への変更は、うまくいっていないが・・・・コマンドを使って動かすのは自分なりには、OKでしょう。

20120421-001

さて、次は、ラダーにいけるかな?

と言う事で、今度は、三菱232IFの取説と睨めっこ。

232IFの設置箇所は・・・・正しいのだろうか・・・なぞ。

しかし!!!

簡単には、動かないものだなぁ~。

20120421-002

ん~~~

中々難しくなってきた・・・・・

頭。。。。ショートしそう・・・・・・・

で、モチロン。

まだ、成功してません。

さて、本日も。継続して、お勉強するとします。

あの・・・・制御できた時の喜びを思いながら・・・

1個づつラダーと睨めっこしてみます。

カテゴリー: 04月 パーマリンク

コメントを残す

メールアドレスが公開されることはありません。