RS232CデータをEXCELに取込みたい

このQ&Aのポイント
  • RS232Cを経由してパソコンのEXCELに計測データを取り込む方法を教えてください。
  • 10個の計測器から同時にRS232Cを通じてデータを取り込み、EXCELでデータ収集したいです。
  • Windows XPを使用しており、通信ソフトやVBAでソフトを作成する方法があれば教えてください。
回答を見る
  • 締切済み

RS232CのデータをEXCELに取込みたい

設定時間ごとに10個の計測器から同時にRS232Cを経由してパソコンの EXCELに計測データを取込みデータ収集したいと考えています。 PC環境はWINDOWS XPを使用しています。 10個のデータを通信ソフト(ハイパーターミナル以外でも可)を経由して EXCELに取込むソフトがありましたら教えてください。 またEXCEL VBAでソフトを作成できるソースプログラムをお持ちで したらこれを改造すればいいという指摘でもありがたいです。 宜しくお願いします。

noname#230358
noname#230358
  • 開発
  • 回答数4
  • ありがとう数0

みんなの回答

noname#230359
noname#230359
回答No.4

1:1なら簡単ですが1:10となると、232Cでは単純に無理でしょう。 232Cは1:1が基本ですから電気的接続がまず無理です。 すべての機器を485に変換して送信側が局番を添付するプロトコルに変換する必要があると思うけど 計測器側は変更できないだろうから、485変換を単純にしても無理でしょう。 たとえばPLCの通信増設ユニットが10ch可能なものがあれば 各chに1:1で計測器を接続し、PLC内部で送信するプログラムをPLC側で作成し エクセルで受信すれば、何とかなると思います。 エクセル側はフリーでありますが、10個のデーターを受信した順番で 縦に並べるだけになるので簡単ではありません。 PLC内部でデーターを整列させて秒単位のバッチで出すとか 使用するPLCメーカーによって作りかたが変わります。

参考URL:
http://www.vector.co.jp/soft/win95/hardware/se216073.html
noname#230359
noname#230359
回答No.3

やり方はいろいろ有りますが 回答2のようにVBを使うのが一番簡単そうです VBで収集 収集したデータを テキストで保存 エクセルで テキストを読む エクセルのVBAから読み出すには APIを駆使しなければなりません http://spectrum123.at.infoseek.co.jp/vb/vb_menu.htm ↑ VBからAPIを呼び出していますがVBAからも同じ手法で読み出せます http://spectrum123.at.infoseek.co.jp/vb/vb_3/vb_3.htm リンク先より抜粋 'シリアルポートのオープン関数の定義 Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, ByVal lpSecurityAttributes As Long, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long 'シリアルポートのクローズ関数の定義 Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long 'シリアルポートの設定関数の定義 Declare Function SetCommState Lib "kernel32" (ByVal hCommDev As Long, lpDCB As DCB) As Long 'タイムアウトの設定関数の定義 Declare Function SetCommTimeouts Lib "kernel32" (ByVal hFile As Long, lpCommTimeouts As COMMTIMEOUTS) As Long 'データの送信関数の定義 Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Long) As Long 'データの受信関数の定義 Declare Function WriteFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, lpOverlapped As Long) As Long ↑ APIの宣言 ' DCB構造体の定義 Type DCB     DCBlength As Long     BaudRate As Long     fBitFields As Long     wReserved As Integer     XonLim As Integer     XoffLim As Integer     ByteSize As Byte     Parity As Byte     StopBits As Byte     XonChar As Byte     XoffChar As Byte     ErrorChar As Byte     EofChar As Byte     EvtChar As Byte End Type ' COMMTIMEOUTS構造体の定義 Type COMMTIMEOUTS     ReadIntervalTimeout As Long     ReadTotalTimeoutMultiplier As Long        ReadTotalTimeoutConstant As Long        WriteTotalTimeoutMultiplier As Long        WriteTotalTimeoutConstant As Long    End Type ↑ 構造体の宣言 したの プログラムの記述(フォームモジュール) を参考にしてプログラムは組んでください サンプルで付いている LHZはVBAでは使えないはず ただ、通信プロトコルは自分で考えないといけませんよ

noname#230359
noname#230359
回答No.2

↓辺りでマクロ機能付きで且つファイルダウンロード機能付きを選べば可能です http://www.vector.co.jp/vpack/filearea/win/net/term/ どれが使えるのかはご自分で試して下さい 但し、通信は出来ても実用になるかどうかは別問題です (実用とは実プラントで無人運転で使うと言う意味で) 恐らくは、オペレータが専属で付きっきりでないと通信しないだろうから しかも、受信したファイルはエクセルで開けると言うだけで それがそのまんまデータとして有効かどうかは別問題ですし それでも良ければ問題ありませんが 常識的にVB http://www.microsoft.com/japan/msdn/vstudio/express/ Visual Basic 2008 Express Edition(無料です) エクセルに付属してるVBAにはRS232Cアクセス機能が無かったと思う VBExpressには気前よく標準で付属してます >設定時間ごとに10個の計測器から同時にRS232Cを経由してパソコンの 回答(1)さんのように単純にポートを増やすか さもなくばマルチプレクサを使うか http://www.gpnet.co.jp/Japanese/CATALOG/GPNETmpx.htm http://www.data-link.co.jp/products/products-01/DMX900.htm http://www.leccompany.co.jp/mp.htm http://sacom.adsmarket.jp/item_list.html?m=USB&s=USBMPREXS 最近の流行はイーサネット-シリアル変換 http://sine.ni.com/nips/cds/view/p/lang/ja/nid/12350 http://japan.moxa.com/product/Serial_to_Ethernet_Products.htm http://fpc.misumi.co.jp/catalogue/vol9/html/v9q20.html

関連するQ&A

  • RS232Cを経由してEXCELにデータを取込みたい

    設定時間ごとに10個の計測器から同時にRS232Cを経由してパソコンの EXCELに計測データを取込みデータ収集したいと考えています。 PC環境はWINDOWS XPを使用しています。 10個のデータを通信ソフト(ハイパーターミナル以外でも可)を経由して EXCELに取込むソフトがありましたら教えてください。 できればEXCEL VBAでソフトを作成したいのですが、叩き台と なるソースプログラムをお持ちでしたらこれを改造すればいいという 指摘がありがたいです。 宜しくお願いします。

  • RS232cデーターをエクセルに落とす

    RS232cデーターをエクセルに落とす 始めまして RS232c出力基盤を持つ秤から データーを収集出来ないかと依頼を受け困ってます 当方ソフトにはド素人でして 試作でなるべく安くとの事で 232エクセルロガー というソフトを見つけまして使用を考えています スクリプトの組み方が判りません 判る方お手数ですが指導をお願いできませか ハード的には 1つの製品のロッドが完了したときに 総生産数  NG製品数 OK製品数等が 出力されます 出力される時間は決まってってません  生産が終わり次第出力されます 信号を受け取るスクリプトを組みたいです 信号は1日に大体5~6回出力されます VBとか使えれば、簡単に出来るのでしょうが いかんせ ソフト関係ド素人で エクセルのマクロも組めませんので どうか指導をよろしくお願いいたします

  • RS-232Cのコマンドについて

    はじめまして。 RS-232C通信にて計測器からデータを取得します。 計測器の仕様では、 『呼び出しコマンドが「0x08」でデータが吐き出されます。 ハイパーターミナルで言えば、Ctrl + H のコマンドです。』 と記載されています。 VB6.0のMSCommコントロールを使用して、コマンドを送出して、データを得たいです。 この場合、コマンド送出はどのように記述すればよいのかわかりません。 MSComm.Output = "H" ← Hですか?? コマンドの意味を理解できていなくて、困っています。 初心者でお恥ずかしい質問ですが、教えてください。 宜しくお願いします。

  • RES232Cからのデーターを読み込むフリーソフト

    検査機器からRS232Cを経由してPCにデーターを取り込みたいと考えています。 ハイパーターミナルがあるそうなのですが、ベクターをみるとフリーソフトで沢山あります。(有料も)   1.設定が楽なもの   2.表(ロータスやエクセル)に移行できる 1番が絶対条件ですが、使いやすいソフトありますか?有料ではWinWedgeがよさそうですが、使っている人はいますか? WINXP よろしくお願いします。

  • エクセルVBAでRS232Cへ

    エクセルVBAでRS232Cへデータを送ることは出来ますか? 出来るならその方法を教えてください。 はっきりいってVBAまったくの初心者です。

  • VB EXPRESSで RS-232C扱えますか

    趣味でPICを使って色々小物を作って楽しんでいます。 パソコンとPICをつないでいろいろやりたいんですが、いまのところ RS-232C経由でハイパーターミナルで送受信するだけでいまいちです。 そこで質問ですがVB EXPRESSで作ったプログラムで RS-232C通信経由でPICと送受信できるんでしょうか? 尚、VB EXPRESSはつい最近はじめたばっかりで入門段階です。

  • WIN XP ハイパーターミナルでのRS232C送信について

    WIN XP ハイパーターミナルでのRS232C送信について パソコンWIN XPでハイパーターミナルを使用してRS2323C通信のテストを行っております。 データの送信についてですが、16バイト分のデータを、まとめて送信したいのですが、どの様にしたら良いでしょうか? 送信するデータは、ASCIIコードで適当な文字を送る予定です。 宜しくお願いします。

  • RS232Cの特殊な信号処理について

    海外製のポータブルの計測機器で、RS232C出力のみ(垂れ流し)出来る機器があります。 仕様は、出力はイアホンジャックで、センターピンは、PC側D-SUB4ピン接続、シールドは D-SUB2ピン接続,D-SUBの2ピンと5ピンは2.2KΩで接続となっています。 PC側は、RS-USB変換ケーブルを用いて接続し、WINXPのハイパーターミナルを起動しますと 確かに、計測のデータが読み取れてきます。 質問:この仕様で、どうして受信が可能なのでしょうか? ご存知の方、ご教授いただきたく。

  • RS232Cからの出力で日本語が化けてしまいます。

    測定装置のRS232Cからパソコンにデータを入力したいんですが、ハイパーターミナル経由では日本語が化けてしまいます。数字・英語・カタカナは大丈夫です。先日Tera Termというソフトを紹介して頂きさっそくためしてみましたが上手くいきません。入力データをシフトJISやJISに変えても全く同じ様にに出力されてきます。変更できそうなところは色々変えてみたんですが駄目でした。日本語は例えば!c%]%s%W$NN.NL@_DjCM!dの様に表示されます。 何とか認識させたいんですが、どう言うところを気をつけたらいいでしょうか?後は化けたものは変換できないんでしょうか?出力は25ピンからパラレルで出ていることも考えられるのでしょうか?

  • Excelのセルに計測器のデータを取り込みたいのですが…

    現在、ある部品の開発部門で働いております。私どもの開発した製品の評価において測長器(長さを測定する)や電子天秤、電圧計といった計器で測定したデータを Excelに手入力して、統計計算したり、グラフ化したりしております。昨今は パソコンも計測器も高性能でありながら、安価になってきており、実際の開発現場 に測定器とパソコンを設置し、データを直接、(キーボードから手作業で入力するのではなく)Excelのセルに直接入力しようと考えております。計測器を調べてみると、RS232Cに接続できることはわかりました。そこでExcel上のVBA で簡単に入力するプログラムが作成できないでしょうか?計器メーカからも各種の ソフトが出てはいるのですが、パソコン1台にメーカの異なる計測器が何台かを接続することもあるので、VBAで作りたいのですが、。作り方がわかりません