アプリ版:「スタンプのみでお礼する」機能のリリースについて

C++の単独のプログラミングの経験はあります。
今回、計測装置からの値をRS-232Cでパソコンに持ってきて、リアルタイムで計算を行うプログラムを書きたいのですが、周辺の知識がまったくありません。

マニュアルにある「制御コマンド」という言葉あたりから調べるべきなのでしょうか?そのコマンドをどうしたらよいのか、一般的な知識かと思うのですが、どこから勉強したらよいのか、キーワードだけでもよいので、教えていただきたく思います。

A 回答 (8件)

>あとシリアルポートの場合、ケーブルがストレートとクロスの2種類があったり



更につけ加えると、フロー制御(RS・CSやXON/XOFF)も確認しておいた方が
よいでしょう。フロー制御が合ってないと、データをこぼしたりするので
注意が必要。ターミナルで繋がっただけでは正常か判断出来ません。
    • good
    • 0

あとシリアルポートの場合、ケーブルがストレートとクロスの2種類があったり、またメーカー独自仕様が乱立してて配線接続バリエーションが極めて豊富なため、どんなケーブルを使うかというのも取説で十分に確認してください。

配線が違うケーブルだと、全く通信できないってことが普通に起きますので。ケーブルを自作するところから始まるってパターンがかなり多いです。

また、ソフトを書く前に通信プロトコルやコマンドが合っているかを検証するため、こういうツールで手動でコマンドを送って応答を確認する方が無難でしょう。いきなりソフトを書くと、通信できなかった場合に何が悪いのか区別がつかず、大ハマりしやすいので。

http://kuze.tsukaeru.jp/tsunezune/archives/2015/ …
    • good
    • 0
この回答へのお礼

ありがとうございます。
ケーブルはメーカーの付属品があるので大丈夫です。
teratermで通信が成功しました。

お礼日時:2018/05/28 17:12

RS-232Cで、調歩同期で無手順なら、COMポート読み書きするだけだから


たいして難しくないよ。

最近のパソコンにはCOMポートないので、USB―シリアル変換ケーブルとかが
必要。またRS―232Cといっても、パソコン用は普通9ピンだけど、
正式には25ピンDSUBなので、確認しておこう。

http://titech-ssr.blog.jp/archives/1048225188.html
    • good
    • 0
この回答へのお礼

調歩同期、無手順、調べました。
この前提が成り立つのかよく分かっておりませんが、そうであれば簡単なのですね。
とにかく参考ページを読んでプログラムを書いてしまおうと思います。

ありがとうございました。

お礼日時:2018/05/28 15:49

これは計測器ではなくて制御系メーカーの資料ですが、非常に参考になるはずです。

調べるキーワードとしては、「シリアルポート」ですね。

https://www.contec.com/jp/support/basic-knowledg …
    • good
    • 0
この回答へのお礼

ありがとうございます。
ちょっと難しそうですが、まずは、何かプログラムを書いてみようと思います。

お礼日時:2018/05/28 15:50

リアルタイムOSが、いるかも?

    • good
    • 0
この回答へのお礼

ありがとうございます。
リアルタイムOSがどのように関係しているのか今のところ理解できておりませんが、
これから参考にさせていただきます。

お礼日時:2018/05/28 15:50

>マニュアルにある「制御コマンド」という言葉あたりから調べるべきなのでしょうか?



んー・・・。
その計測装置の製造メーカーへ依頼することを*強く*お勧めします。

計測装置に「データのフォーマット」を指定して「データをください」と声をかけてデータをもらいます。
「取得したデータ」を「テキストファイル」に書き出します。
「データの最後になったらデータの要求を止める」まで基本はこの繰り返しです。

メーカーさんならサンプルプログラムを持っていると思いますので、
ちょっと値が張るかもしれませんが簡単に作ってくれると思います。
そのうえでそのプログラムを参考にしつつ手を加えるようにしてみましょう。


・・・余談・・・

通信を行うプログラムを作るときは「ターミナルソフト」で実際に通信を行って動作を確認すると良いでしょう。
Windowsパソコンなら「Telnet」が標準で付いていたと思います。
なお、Windows 7から初期設定では無効にされていたので、Windows 7以降を使う場合は有効にしてやる必要があります。
 http://www.atmarkit.co.jp/ait/articles/0207/06/n …
などの記事を参考に有効にしてください。
(RS232C通信を行う時は通信ポート…COM1とかCOM2に対してコマンドを送るようにしましょう)
    • good
    • 0
この回答へのお礼

ありがとうございます。
ターミナルソフトかどうかわからないですが、TeraTermなるものをインストールしてみました。まだ使い方はよく分かりません。
Telnetも、ホスト名が分からないですが、これから調べてみます。

ところで、前半の文脈が読み取れないのですが、

>計測装置に「データのフォーマット」を指定して「データをください」と声をかけてデータをもらいます。

計測装置に「データのフォーマット」を指定するのですか?
「データをください」と誰に、何に?声をかけるのでしょうか?

それとも計測装置に声をかける、ということでしょうか?
すると、製造メーカーには、何を依頼するのでしょうか?
データは誰がどこからもらう、ということでしょうか?

お礼日時:2018/05/28 15:47

該当計測機器とのシリアル通信を行うパソコンソフトを開発するための通信ライブラリー(DLL等)は無いのでしょうか?


該当機器のメーカーに確認ください。

あるいはメーカーがシリアル通信のインタフェースを公開しているのでしたらその仕様にしたがったシリアル通信を行う(ようはシリアルポートに対するopen / closeとread / writeを行う)ソフトを作成するだけです。

参考まで。
    • good
    • 0
この回答へのお礼

ありがとうございます。
ライブラリはないです。制御コマンド、というのがあるので、それで行うのかと思っています。
シリアル通信、という言葉を調べてみます。

お礼日時:2018/05/25 14:28

「COMポート通信」とか。

    • good
    • 0
この回答へのお礼

ありがとうございます。
COMポート通信、調べてみます。

お礼日時:2018/05/25 14:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!