VBプログラムを用いた自動計測システムの構築
著者 三浦 真佳, 村中 健
著者別名 MIURA Masayosi, MURANAKA Takeshi
雑誌名 八戸工業大学異分野融合科学研究所紀要
巻 2
ページ 51‑56
発行年 2004‑02‑27
URL http://id.nii.ac.jp/1078/00002411/
Creative Commons : 表示 ‑ 非営利 ‑ 改変禁止 http://creativecommons.org/licenses/by‑nc‑nd/3.0/deed.ja
三 浦 真 佳*・ 村 中
健
**
Construction of the Automatic WIeasurement Systenl cOntrolled byヽ
「B Programふ7笙
asayosi
Ⅳ【IuRA,Takeshi h′ IuRANAKA Abstract
IVe have prepared several kinds of automatic measurement system using NEC PC‑98 computer until noⅥ
ア Ho、、アever,it is becoming di■lcult to use the measured data by Excel or PoM/er Point recently Then,、、アe improved
the progranl so that it can be used by Window/s OS in both the systein for the electric resistance measurement with the fOur―point probe technique and for the PCT characteristic measurement of hydrogen storage a■ oy ln this paper,郡/e introduce the construction procedure of the automatic measurement system controned byヽ/B program Key words:
ヽ「B,Progranl,Automatic lvleasurement System
1.は じ め に
現 在 で も計 測 シ ス テ ム に NECネ 土製 の PC 9800シ
リー ズ を用 いてい る研究室 や企業 は以外 に多 い。我 々 の 研 究 室 で も PC 98が 主力 を担 っていた。 しか しなが ら
,PC 98フ ォー マ ッ ト (125M)で フ ォーマ ッ トさ れ た
FDは Windowsで
利 用 す る こ とが で きず
,測定 した デー タ を Excelで グ ラ フ化 した り ,PowerPointに 貼 り 付 け る とい った作業 が 困難 にな って い る。 この よ うな点 か ら世界 的標準機 として一般 に広 く利 用 され
,今後 もし ば ら くは標準機 で あ り続 けるで あ ろ う
Windowsマシ ン の利 用 は有効 で ある と考 える。そ こで ,従 来
N88BASICで行 っていた コンピュー タ計測 を ,Visual Basic(VB)
を用 いて
Windows環境 で計 測 機 器 とシ リアル通信 を行 う方法 を幾 つか試 みたいの。それ らの方法 について紹介 す る。
2.PCと 計 測機器 の シ リアル通信
シ リアル通信 とは
,一般 に コ ンピュー タ機器 を接続 す る方法 の一 つで
,接続 す る線 の本 数 を減 らし
,かつ遠距 離 まで信 号 が送 れ る よ うに した方式 を指 す。 この とき信 号 が
1ビッ トご とにシ リアル
(直列
)に送 られ るた め シ
リアル通信 と呼 ばれ る。 VBで シ リアル イ ンター フェイ ス を制御 す る場合 ,プ ログ ラ ミングの仕方 には下記 の よ
うな方法 が あ る。
平成
15年
12月 26日 受理*大学院工学研究科機械 システムエ学専攻博 士前期課程・2
**大
年学院工学研究科機械 システムエ学専攻/生物環境化学工 学科・ 教授・ 異分野融合科学研究所併任(1)WindOws API関
数 を使 用 す る方法
Windowsが
標 準 で サ ポー トして い る API(Apphca―
tion PrOgram lnterface)関 数 を呼 び出 して制御 す る方 式。もともと
C言語 の為 に提供 され た とい う経緯 が ある た め
,多少 の専門的知識 が必要。
(2)Act市
eX MSCommを 使 用 す る方法
MSCommは VB40か ら標 準 で組 み込 まれた機 能 で
,コ ンポーネ ン トをフォーム に貼 り付 けるだ けで シ リアル 通信機能 が使 えるようにな るた め
,非常 に簡 単 にシ リア ル通信 のプ ログラ ミングが 出来 る。ただ し Leaming Edi―
tionで は ActiveXが サ ポー トされ て い ない。
本研 究 で は
,初心者 で も簡単 にシ リアル通信 のプログ ラム の製 作 が 出来 る MSCommを 使 用 す る方 法 を採 用 し , こ こに紹介 す る。
2.1.MSCommコ ンポーネン トの追加
VBを 起 動 す る とデ フォル トで は ツール ボ ックス に
MSCommコ
ンポーネ ン トが表示 されていないので
,ま ず使用で きる環境 に設定す る必要がある。 「プロジェク ト
(P)」
か ら「コンポーネ ン ト
(0)」を選択す ると ,Fig l に示す ように追加可能 なコンポーネ ン トの一覧表が表示 され る。ここで
,Microsoft Comm COntr01 6.0(VisualBasic 6 0の 場合
)にチェックを入れて「 OK」 をク リッ クす る。
す ると
,Fig 2に示す ようにツールボックスの下欄 に
,電話の絵の
MSCommコンポーネン トが表示 され る。
次 に
,フォームウィン ドウをデザインし
,そのフォー ム上 に MSCommコ ンポーネン トを貼 り付 ける。この と き
,MSCommコンポーネン トはプログラムの実行時 に は表示 はされないので
,貼り付 ける場所 はフォーム内で
‑51‑
八戸工業大学異分野融合研究所紀要 第 2巻 第 1号
Fig l The additional dialog of a component(in the case Of Visual Basic 6 0)
埓 醒
A団
却 」
臣 0 目 団
」 」
」
」
⑤ 国 ヨ 圃
∪ \
□ 理
│:Ш
Fig 2 The addition of theゝ ′
![SConュIn icOn to toolbox
あればどこで も構わない。
2.2.MSCommコ ー ドの言己述夕」
① 通信 ポー トとの接続
MSCommを 使 って最初 に行 う処理 は,シ リアル ポー
ト(COMポー ト)へ接続 す る こ とで あ り, この処理 は下 言己例 の ように記述 す る。
《イ′ア」》
Ⅳ笙
SComm l CommPOrt=1
Ⅲ征SConlln l Settings= 9600,N,8,1"
ⅢISComm l POrtOpen=True
CommPortプロパ テ ィで は計 測 機 器 と接 続 したCOM
ポー トの番号 を指定 す る。Settingsプロパ テ ィで は
,通
信速 度,パリテ ィ,デー タ長,およびス トップ ビッ ト長 を設定 し, ここでの値 は計測機器 の設定 と一致 させ る必 要 が あ る。シ リアル ポー トの接続 には,PortOpenプ ロパ
テ ィをTrueに して接続 を確立 す る。
② データの受信
受信バ ッフ ァか らデー タを取得す るには,Inputプロ
パ テ ィを使 用す る。 た とえば
,受
信バ ッフ ァか らデー タ を取得 して,テキス トボ ックスに表示 す る場合 は,下
記 の よ うに言己述 す る。《lアl》
h′ISComm l.InputLen=0
Text l.Text=ⅢISComml lnput
受 信 バ ッフ ァの 内 容 全 体 を読 み 取 る に は,その 前 に InputLenプ ロパ テ ィの値 を0に設定 す る必 要 が あ る。逆 にInputLenプ ロパ テ ィに値 を設定 す る とそのバ イ ト数 単位 でバ ッフ ァか らデー タ を取 り出す こ とが 出来 る。
③ 通信 ポー トとの接続 を解除す る。
アプ リケーシ ョンを終了 し
,使
っていたCOMポー ト を開放す るためには,PortOpenプロパ ティを Falseに す る。《膠可》
ⅢISCornm l PortOpen=False
2.3 デー タの記録及 び図示
測 定 した デー タ は順 次Excelに取 り込 め る よ う に出 来 れ ば
,デ
ー タ補正 や フ ァイル を管理 す るの に便利 で あ る。 また,測定 中 のグ ラフ表 示 もVBでプ ログラ ミング を して表示 させ る方法 もあ るが,さ まざ まな種類 のグラ フを表示 で き,高度 な機能 を持 ったExcelに任 せ るのが 賢明 で あ る。 そ こで,こ こで はVBプログ ラムでExcelを利 用す る方法 を紹介 す る。
中
標準 │
図 画 ヨ
︑ A 上
\ 哩 鰯 螂 圏 轍
o 幽
∃
□ 圃
『
國則
⑬
」
―
‑ 52 ‑一Miefosoイ(Cttmm Cont子(,160
Microsolt OoΠキn Contfo 60
場Ptt CVIAINDOWSVSンSten32VMSCOWM320CX コントロール
│テリィナ1挿入可能なオフラ七クト
│
「
選択された項 目のみ
O
キャシセル 適用〈高l
醸け∝ofい折n,,9on(瀾 6a FtノLCaS' M EI('eetお E19 фd,E CO白ヤDI
と照l旦) │
荘』群
硼 庁 亀 帯 国 面
lvどげos (∞ nmDnいnにE Cantlc 6n
lィビ│∝§Ft t,stる 口oun疱6r a●9洵(ャぐ,I Mげos証(υぶL Bau脳とヽt ttDttrJほう0 MEloぢす1とo、ね6【憎◆げ]サD SOIL∩LED9J MEギ〔eaIくCぅに∩」J ttmrt′l oD 朧EICSO((つ ha,19oィ、t,ol
唱 Forml
Fig 3 The form window of Visual Basic
①
Excelの
参照設定まず,プロジェク ト→参照設定で
Microsoft Excel**
ObjectLibrary にチェックを入れてお く。
②
Excelの
立ち上げ実行 させたいプロシージャに下記の Excelを 立 ち上 げるコー ドを入力する。
《l夕ll》
On Error Resume Next
Dim xlApp As Excel Application Dim xlBook As Excel.ヽ
Vorkbook
Dim xlSheet As Excelヽ Vorksheet
Set xlApp=CreateObiect(
Excel Application") Set xlBookttExlApp ヽ 「 ヽ orkbooks Add
Set xlSheet=xlBook ヽ ヽ 「orksheets(1)
xlApp.Visible=True
まず
,2〜4行 目でオ ブ ジ ェク トヘ の参 照 を格 納 す る変 数 を宣 言 し
,5〜7行 日で変数 にオ ブ ジ ェク トの参 照 を代 入 す る。最後 の行 の Visibleプ ロパ テ ィで
,アプ リケー
シ ョンの表 示 また は非 表 示 を設 定 す る。 ち な み に この コー ドは
Excelを新 規 に立 ち上 げ る命 令 にな って い る が
,既存 の
Excelファイ ル を指 定 して立 ち上
tデる場 合
は ,6行 目 の Addメ ソ ッ ド を Open(
Ci¥Sample.xls")(こ
の 場 合 Cド ラ イ ブ の Sampleと い う Excel フ ァイル を開 く)に 書 き変 える。
③ データをセルヘ入力
データをセルヘ格納する場合セルア ドレスを,
xlSheet̲Cells(イ
〒, ア」)̲ Value
の よ うに指定 す る。 こ にカ ウ ンタ変数 を用 い デー タ をセル に格納 す
,列
を固定 し下記 の ように行
,次
々 と MSComm lか らの とが 出来 る①
で と こ レ﹂ る る
xlSheet̲Cells(j,1)Value=MSComml lnput
④
ファイルの保存
Excelフ
ァイル を名前 を付 けて保存す る場合
,下記の ように記述す る。
蕉夕」 》
xlSheet SaveAs
c:¥Sample xls''
⑤
終了処理
まず Quitメ ソッ ドを使 って
Excelを終了す る。次 に
,2〜 4行 目でオブジェク トの開放 を行 う。
Power supply
PC
H bridge circuit Digital muitimeter
Sample folder
Chrome卜alumet thermocouple
Fig 4 The equipment for electric resistance measurement、 、アith standard four― point probe technique
一
‑ 53
0
田 〓冨冨〓冨
□ 〓〓〓〓〓
軍=l
八戸工業大学異分野融合研究所紀要
第
2巻第
1号Reservolr
cylinder
Mass flow controllerP「essure gauge
Resistancc
H2gaS CViinder
Controller
RS‑232C
Digitai muttimeter
Fig 5 The equipment for PCT characteristic measurement
Vacuum pump
PC
《イタ」》 xlApp Quit
Set xlSheet=Nothing Set xlBook=Nothing Set xlApp=Nothing
3.測 定 装 置
今 回我 々 は
,上
記 の方法 を使 って超 伝 導転 移 温 度Tcを測定 す るための4端子 法 を用 いた抵抗測定装 置 (Fig
4)と
,水
素 吸蔵合金 のPCT特性 測 定 装 置 (Fig 5)の 自動計 測 システムの製作 を行 った。 ここで使用 した ソフトはVB6 0 Professional Editionであ る。
3.1,4端子法抵抗測定装置
本装置 で採 用 した4端子 法 とは
,試
料 に4本の電極 を直線上 に置 き
,外
側 の2端子 間 に一定電流 を流 し,内側 の2端子 間 に生 じる電位差 を測定 し抵抗 を求 め る方法 で あ る。 内側2端子 間 の電 位 差 はデ ジタル マル チ メータ(ADVANTEST R6451)を 用 い て 測 定 を行 ヤh,RS―
232Cを介 して
PCヘ
デー タ を転送 す る。この とき同時 に クロメル ーアル メル熱電対 を用 いて熱起電力 をデジタル マルチメー タで測定 し,同じよ うにPCヘ
デー タが送 ら れ温度 に変換 され る。Fig 6に Hブ リッジ回路 を示 す。Ql
Fig 6 H bridge circuit
この回路 は
,試
料 内 に一定 方 向 に電 流 を流 し続 ける こと に よ り発生 す る熱起電力 に起 因す る測定誤差 を避 けるた め,試料 に流れ る電流 の向 きを変 えるた めの回路 で ある。この回路 はパ ランル ポー トを介 してPCと接続 され,PC
か らのパ ルス電圧 の組 み合 わせ によ り回路 内部 の半導体 リレー の制御 が行 われ る。
3.2.電気抵抗測定プ ログラム
電気抵抗 測定 プ ログ ラム の フ ローチャー トを Fig 7 に示す。まず,プログラムを起動 し測定条件 を入力する。
この とき試料のサイズ及び端子間距離 を入力 し
,グ
ラフ の縦軸 を抵抗率で表示で きるようにしている。次 に計測十
Q3
一‑ 54 ‑―
Sampl Heater
FIlter
I
Vatve l
囲 回
日 □
酔 目
̲
Sanaple
Q4 Q2
入 力 OK No
T>77k
測定条件
電流反転
温度測定
抵抗測定
Excelへ 出 力
END
START
Yes
No
YesFig 7 Flow chart Of the electric resistance program
Yes
Yes
Fig 9 Flo都′chart of the PCT characteristic program
入力 OK
圧力測定
測定終了
START
測定条件
END
Excelへ 出力
いE O
▼ 6 B t
Fig 8 NIeasurement screen of the electric resistance program
‑ 55 ‑
吸思崎聞 仲つ。 m市
故tLa寺間
│'49 nh
サンフリンケ間隔1馘
sec
′ Fttt PO cc/mh 吸顧
'〓
底
PO℃ 政出
,=属に つ
℃ 室
'=PO℃
体積博 ' mm〕
′βl定条件
潮 罐
│
回駒顔堅O,cォ ートンニイブ鯉
'マ\ ` □ 回 0
◆吸思
。ルタこと
j
日 0 哺 出
I二
tttu l
郎71八戸工業大学異分野融合研究所紀要 第 2巻 第 1号
Fiё
σ
10ふ Ieasurement screen of the PCT characteristic program
を行 う毎 に電流 を反転 させ
,温
度・ 抵抗率 を測定 し,指
定 したExcelフ ァイルヘデータを出力す る。このループ は液体窒素温度 (77K)ま で達 す る とプ ログ ラムが終 了す るFig 8に測定の一例 を示す。
3.3,PCT特性測定装 置
PCT特性 測 定 装 置 で は,マス フ ロー コ ン トロー ラ
(SEC 400MK3)を用 いて水 素 ガス流量 を調節 し
,試
料 シ リング容器 内の圧力 を徐 々 に高 めてい く① この とき圧 力計 を用 いて シ リング内圧 力 を測 定 し,次
にA/Dコ ン バ ー タを介 してデジタル変換 され,デ
ジタルマルチメー タ (ADVANTEST R6451)で電 圧 測 定 後,PCへ の デー タ転送 を行 ってい る。放 出特性測定 で は,マ ス フロー コ ン トロー ラを用 いて吸蔵時 とは逆 に,シ リング内の水素 ガ ス を徐 々 に排気 し
,デ
ジタルマルチメー タを用 いて デー タの取 り込 み を行 ってい る。3.4.PCT特性測定プ ログラム
PCT特性測定 プログラムの フローチャー トを Fig̲9 に示す。まず,プログラムを起動 し測定条件 を入力する。
この とき
,測
定時間 をサ ンプ リング間隔で割 ると測定回 数が算出されるので,その回数サ ンプ リングを行 うとプ ログラムが終了する仕組みになっている。次に,サンプリング間隔毎 にデジタルマルチメータで電圧 を測定 し,
Excelヘデータを転送後
,電
圧 (V)か ら圧 力 (MPa) へ変換 される。Fig 10に PCT特性測定例 を示す。4。 ま と め
今 回VBを用いて 自動計測 システム を構築 す る こと で,本研究室のシステムを全てPC 98か らWindOwsヘ
移行す ることがで き,それによ り測定データの保存や他 のアプ リケーションでの利用が容易 に出来 るようになっ た。 また
,市
販 の計測 ソフ トと違い新たに機能 を追加 し た り,更
に使い易いようにカスタマイズ した り出来 ると いつた点 もメ リッ トの一つである。自動計浪」システムを構築する場合
,温
度や圧力等 さま ざまなパ ラメーターの計測が考 えられ るが,それ らのア ナログ値 はすべて電圧値へ とデジタル変換す ることが出 来 る。 そこでデジタルマルチメータ とここで紹介 したプ ログラムを用いれば,さまざまな計測 に応用す る事が出 来 る と考 えられ る。 その際に,本
レポー トが少 しで も役 に立つ ことが出来れば幸 いである。参 考 文 献
1)横
山直隆
:Visual Basicによる制御実習入門
,シータス ク (1999)
2)金
藤
仁
:自動計測 システムのた めの
VB6,技術評論社
(2000)
3)和
田公人 :Visual Basic 5 0に よるプ ログラ ミング入門 偏
,オーム社
(1997)―‑ 56 ‑―