Visual Basic Ver.6 for Professional Edition および Microsoft Excel2013 13(VBA VBA)による 天 びん 通 信 プログラム の 作 成 要 領 島 津 製 作 所 天 びんビジネスユニット 0.はじめに 電 子 天 びんとパソコンとを 接 続 し 計 測 データをパソコンに 取 り 込 みたい あるいは パソコン から 電 子 天 びんを 制 御 したい という 声 がパソコンの 普 及 に 伴 い 増 えつつあります 当 社 では Windows 7, Windows 8 で 動 作 可 能 な 天 びんデータ 収 集 ソフト BalanceKeys がありますが お 客 様 の 運 用 されているソフトウェア およびマクロプログラムに 組 み 込 みたいといった 要 求 事 項 も あります 連 続 計 測 天 びん 多 重 接 続 等 の 応 用 機 能 をお 使 いの 場 合 は 何 らかの 通 信 プログラムの 作 成 が 必 要 となります こういった 状 況 にお 答 えするため 天 びん パソコン 間 の 通 信 の 確 認 方 法 と 簡 単 なプログラム 作 成 要 領 を 本 書 にまとめました なお 本 書 は 最 小 限 のプログラム 操 作 でも って 通 信 を 確 認 することを 目 的 としております 本 書 をもとにプログラム 作 成 を 構 築 し より 応 用 的 な 計 測 制 御 を 実 現 されますことを 願 っております よろしくご 査 収 の 程 お 願 い 申 し 上 げます 本 書 で 紹 介 するハードウェア ソフトウェアは 以 下 のとおりの 環 境 を 前 提 としています ハードウェア USB-シリアル 変 換 器 (P/N:S321-62520)により シリアル(RS-232C) 通 信 ポート(COM?)が 既 にセットアップされていること ソフトウェア OS:Windows 7 開 発 言 語 :Visual Basic Ver.6 for Professional Edition アフ リケーション:Microsoft Excel 2013 1. Windowsの 通 信 チェック PCの 設 定 により シリアル 通 信 ができなくなっていることがありますので まず 使 用 しているWindowsが 通 信 可 能 であるかを 確 認 することが 必 要 です そのためには Windows 上 で 動 作 可 能 なフリーウェアのひとつである Teraterm をご 紹 介 します インターネットから Teraterm を 検 索 し インストールファイルをダウンロ ードします 参 照 例 : https://osdn.jp/projects/ttssh2/ ダウンロードされたファイルを 解 凍 し teraterm-x.xx フォルダをデスクトップ 上 にコピ ーします そのフォルダの 中 に ttermpro.exe というプログラムファイルがあるので これ をダブルクリックして 起 動 すると 次 頁 のような 画 面 があらわれます 1
この 画 面 で Serial を 選 択 し 通 信 可 能 な COM 番 号 が 右 のリストに 表 示 されますので 実 際 に 天 びんに 接 続 されている COM 番 号 を 選 択 します OK ボタンを 押 して 次 の 設 定 を 行 ないます 下 図 のとおりメニューバーから Setup Terminal を 選 択 すると 次 頁 のような 画 面 があらわれます 2
ここで 下 図 のとおり 1Receive: CR+LF を 設 定 する 2Local echo: チェック ON を 設 定 する 3 最 後 に OK ボタンを 押 して 確 定 する 次 にメニューバーから Setup Serial port を 選 択 すると 次 頁 のような 画 面 が あらわれます 3
ここで 下 図 のとおり 1Baud rate: 1200 を 設 定 する 2 最 後 に OK ボタンを 押 して 確 定 する これにて Teraterm の 設 定 は 終 了 で いよいよ 天 びんの 通 信 テストに 入 ります 通 信 ケーブルを 天 びんに 正 しく 接 続 してください 4
問 合 せ1 回 出 力 のコマンドである D05 をキー 入 力 し 最 後 に Enter キーを 押 します 天 びんの 通 信 設 定 が 工 場 出 荷 時 と 同 じであれば 下 図 のとおり 天 びんからのひょう 量 データが 表 示 されます また 風 袋 引 きコマンド TARE あるいは T をキー 入 力 して ゼロ 表 示 に POWER ボタンコマンド Q をキー 入 力 してスタンバイ 表 示 に 校 正 実 行 コマンド CAL をキー 入 力 して 校 正 作 業 が 実 行 されるかを 確 認 してください 天 びんから 上 図 のように ひょう 量 データが 返 ってきたら 使 用 しているWindowsが 通 信 可 能 であることが 確 認 できます 5
通 信 できない 場 合 上 記 のとおり 通 信 できない 原 因 としては 以 下 の 要 因 が 考 えられます (1) 通 信 設 定 (ホ ーレート ハ リティ 等 )があっていない (2) 接 続 している RS-232C 通 信 ケーブル(クロス)の 結 線 状 態 に 問 題 がある 少 なくとも 次 の 結 線 の 状 態 にあるか 確 認 下 さい (PC 側 がオス D-Sub25Pin の 場 合 RD,SD が 逆 になります ) (3) パソコン Windows のシステム 設 定 で 通 信 ポートのデバイスが 正 常 に 動 作 してい ない スタート 設 定 (S) コントロール ハ ネル(C) システム を 選 択 し テ ハ イス マネーシ ャ のタグをクリックして ポート(COM / LPT)をクリックすると 左 図 のように 表 示 されます (COM?)で あるかを 確 認 して 下 さい これで 通 信 しない 限 り どのように Teraterm の 設 定 されても 正 常 に 通 信 しませんので まず 最 初 に 確 認 して 下 さい PC 側 RD (2) SD (3) SG (5) メス D-Sub9Pin 天 びん 側 (2) RD (3) SD (7) SG オス D-Sub25Pin データをファイルに 保 存 したい 場 合 天 びんから 取 り 込 んだデータをファイルに 保 存 したい 場 合 はメニューバーにある File Log... をクリックして 次 のような 画 面 が 表 示 されますので ファイル 名 を 確 認 し 開 始 ボタンを 押 すと 入 力 されたファイル 名 のファイルが 生 成 され 転 送 されたデータがそのまま 追 加 保 存 されます ここをチェックすると データを 取 り 込 んだ 日 時 も 同 時 に 記 録 することができます 6
2. VBの 立 ち 上 げ セットアップしたVBを スタート フ ロク ラム(P) Microsoft Visual Basic 6.0 Visual Basic 6.0 を 選 択 し VBを 立 ち 上 げる 下 図 のような 画 面 が 表 示 されます ここで そのまま 新 規 作 成 標 準 EXE を 選 択 すると 次 のような 画 面 が 表 示 されます 7
3. 通 信 用 コントロール(MsComm32.ocx)の 組 み 込 み 上 図 のメニューから フ ロシ ェクト(P) コンホ ーネント(O) を 選 択 し 通 信 用 コントロール MsComm32.ocx を 追 加 します (なお Visual Basic for Learning Edition には このコントロールはありません ) OK ボタンを 押 すと 左 のツールボックス 内 に 下 図 のような コントロールボタンが 表 示 されます 4. 各 種 コントロールの 貼 り 付 け フォームに 最 低 限 必 要 な 3ケのコントロール(ラヘ ル,コマント ホ タン, 通 信 用 )を 下 図 のよう に 貼 り 付 けます 8
5. 各 コントロールのプロパティの 設 定 ラヘ ル,コマント ホ タンのコントロールのプロパティは 右 にあるプロパティウィンドウで 設 定 し 通 信 用 (MsComm32)コントロールはプロパティページを 下 図 のとおり 開 きます (コントロール 上 で 右 クリック フ ロハ ティ(R) 選 択 ) 設 定 (S) の 欄 で 天 びんのボーレートが 1200 bps であれば 1200,n,8,1 で 入 力 し OK ボタンを 押 します 6.プログラムの 作 成 フォームと 2つのコントロール(コマント ホ タン, 通 信 用 (MsComm32))のプログラムを 作 成 します まず コマント ホ タン 上 で 左 ダブルクリックし 次 のようにプログラムを 作 成 します Private Sub Command1_Click() 'データ 要 求 コマンドを 送 信 する MSComm1.Output = "D05" & vbcr 'D05 を 送 信 End Sub 次 に 通 信 用 (MsComm32)コントロール 上 で 左 ダブルクリックし 次 のようにプログラムを 作 成 します Private Sub MSComm1_OnComm() Select Case MSComm1.CommEvent 'イベント Case comevreceive ' 受 信 (Receive,=2)イベント ' 受 信 処 理 ( 受 信 したデータをラベルに 表 示 する) D$ = MSComm1.Input ' 受 信 データを 文 字 列 (D$)に 格 納 Label1.Caption = D$ 'ラベルに 表 示 End Select End Sub 9
最 後 にフォーム 上 で 左 ダブルクリックし 次 のようにプログラムを 作 成 します Private Sub Form_Load() 'ポートをオープンする MSComm1.PortOpen = True ' 天 びんデータ(12 ハ イト)を 受 信 するごとに OnComm イヘ ント を 発 生 させる MSComm1.RThreshold = 12 End Sub 7.プログラムの 実 行 これで f 5 ボタンを 押 して プログラムを 実 行 します 天 びんとパソコンとに RS-232C クロスケーブルを 接 続 し コマンドボタンを 押 して 下 さい 下 図 のようにラベルに 天 びんのデータが 表 示 されたら 正 常 に 動 作 しています フォーム 右 上 の ボタンを 押 すとプログラムは 終 了 します なお コンパイルして EXE 形 式 の 実 行 ファイルを 作 成 したいときは ファイル(F).EXE の 作 成 (K) を 押 し 実 行 して 下 さい 10
8.Excel2013 での VBA 通 信 プログラム 作 成 方 法 について 下 の 手 順 のとおり 作 成 下 さい 1Excel2013 VBA の 起 動 および 設 定 Excel2013 を 立 ち 上 げ Alt + F11 キーを 押 すか あるいは ファイル オプション リボンのユーザー 設 定 にて 右 図 のとおり 開 発 にチェックすると メニュー 項 目 に 開 発 が 表 示 されますので 開 発 Visual Basic を 選 択 し Excel2013 の VBA を 立 ち 上 げる 2フォームの 作 成 挿 入 (I) ユーザーフォーム(U) を 選 択 すると 下 図 のようにユーザーフォームが 表 示 されますので それに 2~6 項 で 前 述 した 通 信 用 コントロール(MsComm32.ocx) 等 の 各 種 コントロールを 貼 り 付 けます 11
3VBA 上 での 通 信 用 コントロール(MsComm32.ocx)の 組 み 込 み ツール(T) その 他 のコントロール(A) を 選 択 すると 下 図 のように コントロールの 追 加 画 面 が 表 示 されますので それに 2~6 項 で 前 述 した 通 信 用 コントロール (MsComm32.ocx) 等 各 コントロールを 貼 り 付 けます 4 通 信 用 コントロール(MsComm32.ocx)の 確 認 上 図 の OK ボタンを 押 すと 左 のツールボックス 内 に 下 図 のような コントロールボタンが 表 示 されます 以 降 は 前 述 の 3~6 項 を 参 考 に 作 成 下 さい 12
5フォームの 作 成 ( 連 続 取 り 込 み 制 御 ボタンの 追 加 ) 2のユーザーフォームに 連 続 取 り 込 み 制 御 ボタン 開 始 停 止 を 貼 り 付 けます プログラムは 添 付 ファイルの Excel ファイルをご 参 照 ください 通 信 用 コントロール(MSComm32.ocx)は Visual Basic for Pro をインストールして いないと 開 けない 可 能 性 があります ご 了 承 ください 通 信 コントロールの 設 定 内 容 としては ボーレート:1200 パリティ:なし データ 長 :8ビット ストップビット:1ビット ハンドシェーク:なし とすれば 問 題 ありません 以 上 13