スタジオ ミュウ

エクセル(VBA)で計測

LED計測制御 | LEDグループ学習 | メロディのプログラム | RCサーボの制御 | モーターのPWM制御
MYUロボ-II | MYU-USB転送ソフト | MYU USB BASIC | USBドリトル | C アセンブラMYUUSB-1基板 | MYUUSB命令一覧
転送ソフト(232C) | MYU BASIC(232C) | 構造化ドリトル | エクセルで制御 | エクセルで計測 | MYUアセンブラ | MYUROBO-1A基板 | MYUロボ(232C)命令一覧 | ドリトル命令一覧

■MYU-527 ミュウロボ基本セット(RS-232C) 3,456円(8%税込)
■MYU-528 ミュウロボベルト基本セット(RS-232C) 3,456円(8%税込)
■MYU-529 3軸ミュウロボ基本セット(RS-232C) 4,212円(8%税込)
■MYU-530 ミュウロボ制御基板(RS-232C・2モーター用) 2,376円(8%税込)
■MYU-531 ミュウロボ制御基板(RS-232C・3モーター用) 2,592円(8%税込)

●エクセルのVBA
エクセルのVBA(Visual Basic for Aplication)を使い基板の計測値を表示するソフトです。
リアルタイムに計測したり、一定間隔で自動計測したりできます。エクセルなので簡単に結果をグラフなどに加工できます。
また、RCサーボをリモコンで操作する機能もあります。
※最新のミュウロボ制御基板688タイプミュウロボ2制御基板専用ソフトです。また、MYU-516 ICクリップ付き転送ケーブルが別に必要です。

エクセルで計測(excel.zip)はここからダウンロード(44K)できます。(2009/7/9版)

●よくある質問
Q、パソコンにRS-232Cポートがありません?
A、変換ケーブルが必要です。Googleで"USB RS232 変換"と検索してみてください。
変換ケーブルは1,000円-5,000円ぐらいです。
※変換ケーブルは付属の専用ドライバをインストールする必要があります。

●VBAの起動
excel.zipを展開してmyuexcelホルダーを開き'エクセルで計測.xls'をダブルクリックするとエクセルが立ち上がります。
エクセル2000の場合、ツール>マクロ>Visual Basicで立ち上げ、F-5で動作します。
エクセル2007の場合、[開発]タグ、Visual Basicをクリックして立ち上げ、F-5で動作します。
※エクセル2007は、Excelオプションの基本設定で[開発]タブをリボンに表示するにチェックを入れ、[開発]タブを押した後、マクロのセキュリティの設定ですべてのマクロを有効にするにチェックを入れる必要があります。


[デジタル入力(PA)]ボタン
  16F688のポートAの値を16進表記で表示します。688基板のIn1-In4の状態を判断できます。
[デジタル入力(PB)]ボタン
  16F88のポートBの値を16進表記で表示します。ミュウロボ2基板のIn1-In6の状態を判断できます。
[AN(0-4)A/D計測]ボタン
  アナログポート(AN0-AN4)の値を10進表記で表示します。
[AN(0-4)A/D記録]ボタン
  アナログポート(AN0-AN4)の値を1秒間隔で計測し計測時間とともにエクセルの表に反映させます。
COMポート設定ドロップダウンリスト
  COMポートを設定します。
アナログポート設定ドロップダウンリスト
  A/D計測のポートを設定します。
サーボ番号設定ドロップダウンリスト
  リモコン操作するサーボを設定します。
スクロールバー
  サーボの角度をリモコン操作します。


■エクセルで計測
688タイプミュウロボ2基板のアナログ入力は、光センサー(CDS)や温度・距離センサーなどに接続して値を計測できます。
エクセルは、転送ケーブルを通して基板に計測信号を送り、計測結果を基板から受け取り表示します。
基板からデータを受取るためには、ICクリップ付き転送ケーブルが必要です。また、基板との配線は下のようにします。
※古い688タイプやミュウロボ2基板は、リアルタイム計測には対応していません。
MYU-516 ICクリップ付き転送ケーブル
630円(税込)


【ミュロボ制御基板688タイプ】
抵抗線(RA5)と接続

【ミュロボ2制御基板タイプ】
抵抗線(RB0)と接続

■アナログ値の自動計測
[A/D記録]ボタンを押すと自動計測が始まり表に計測したアナログ値が表示されます。
下は、VBAのコードです。コードを変更すると計測間隔や回数を変えることができます。
VBAの動作を中止して(UserForm)上の[A/D記録]ボタンをダブルクリックするか、[A/D記録]ボタン上で右ボタンを押しコードの表示を選ぶとコード(プログラム)が表示されます。

Private Sub Cmd_2_Click()
    Dim n, c As Variant
    
    Range("A:B").Clear                  '表のクリア
    For n = 1 To 12                     '12は計測回数
        cmd_1_Click                     'アナログ計測
        c = "A" & n
        Range(c).Value = Time           'A欄に計測時刻を反映
        c = "B" & n
        Range(c).Value = Txt_x.Text     'B欄に計測結果を反映
        Sleep 1000                      '計測間隔、1mSec単位で変えられる
    Next
End Sub

■デジタル入力
デジタル入力ポートはポートの電圧が High(高い) か Low(低い)で判断されます。High は 1 Low は 0 で表されますが各ポートはプルアップされていますので通常は High となっています。
688基板の入力ポート(In1-In4)はPIC16F688のポートAに、ミュウロボ2基板の(In1-In6)は16F88のポートBに接続されています。[デジタル入力]ボタンを押すことによりポートAやポートBの値を読みとり結果を16進表記で表示します。
下の図は、各ポートの値を2進数で表しています。右表からポートAは、16進表記では(17H)、ポートBは(7EH)となります。
※各デジタルポートは通常、Higt=1 ですが入力があると Low=0 に変化します。
※16進表記では10進数と区別するため末尾に'H'をつけます。