LabVIEWでESP8266を操作する
LabVIEWでArduinoを操作するなら LINX が 便利だけど、ESP8266は残念ながらLINXで対応できていない (2017年6月時点でαバージョン)。そこでLINXの内部を修正してとりあえずWiFi経由でLチカが動くようにしてみた。
あらかじめやっておくこと
LabVIEW Home Bundle, NI-VISA, VIPM, およびLINXのインストール。
(参考: LabVIEW+LINX+BeagleBoneBlack
を試してみた)
ESP8266 core for Arduinoのインストール。
(参考: ESP-
WROOM-02開発ボードをArduino IDEで開発する方法)
ESPr Developerの準備と、4番ピンでLチカができるようにしておく。
プログラミングの準備
1.Ken SharpさんのGitHUBに行く。
2.右上の"Clone or download" → "Download ZIP" を選択してファイルを保存する。
3.ダウンロードしたファイルを解凍して、その中に入っている
LINX-dev-esp8266-cfg-2.1\LabVIEW\vi.lib\MakerHub\LINX\Firmware\Source
のフォルダを次のフォルダへ上書き保存する。
C:\Program Files (x86)\National Instruments\LabVIEW
2014\vi.lib\MakerHub\LINX\Firmware\Source
4.LabVIEW2014を起動して、ツール(T) → MakerHub → LINX → Generate Firmware Libraries... を選ぶ。
5.C:\Users\(自分のフォルダ)\ドキュメント\Arduino\libraries を選択して、左側の"Generate"
ボタンを押す。
"Done !"
のメッセージが出ればOK。指定したArduino\librariesフォルダにLinx○○○○というフォルダがいっぱい作られているはす。
6. 先ほど作成したLibraries/LinxESP8266WifiListener
フォルダの中にLinxESP8266WifiListener.cpp と LinxESP8266WifiListener.h
が入っているので、それぞれを以下のファイルに置き換える。右クリックで保存してね。
LinxESP8266WifiListener.cpp
[MOD]
LinxESP8266WifiListener.h
[MOD]
ESP8266へ接続
1.次のファイルをダウンロードしてArduinoで開く。
ESP8266_Wifi_DHCP_Configuration.ino
2.ESPr DeveloperをPCにつないで、4番ピンのLチカ回路を準備する。
3.ツール → ボード:"○○" → Generic ESP8266 Module を選択する。選択項目が表示されない無い場合は「ESP8266 core for Arduino」でググって。
4.上図のように、Flash mode: "QIO" 以下の項目を設定する。シリアルポートは環境ごとに合わせる。
5.ESPr Developerを接続するルーターのSSIDとパスワードを以下の通りスケッチに書き込む。他はいじらない。
LinxWifiConnection.SetSsid("○○"); ←○○の部分にSSIDを入力
LinxWifiConnection.SetPassphrase("○○"); ←○○の部分にパスワードを入力
7. ESPr Developerにスケッチを書き込み、シリアルモニタを開く(Ctrl + Shift + M)。しばらくするとDHCPで接続したIPアドレスとPortが表示される。
8. LabVIEWを起動し、ヘルプ(H) → サンプルを検索(E)... を開く。検索タブに移り"LINX"で検索し、LINX - Blink (Simple) (TCP).viを開く。
9. 先ほど表示されたIP AddressとPort を入力し、DO Channel に4番を入力して、プログラムを実行する。^^ Click Here ^^ の緑ボタンをクリックすると、これに連動してLチカができる。
10.
ESPr DeveloperをPCから外し、モバイルルーター等で動作させる。ESPr Developper
がPCと物理的に接続されていなくても、WiFi経由でLabVIEWからLチカできる。
memo
https://www.labviewmakerhub.com/forums/viewtopic.php?f=12&t=1099https://www.labviewmakerhub.com/forums/viewtopic.php?f=12&t=1813
https://www.labviewmakerhub.com/forums/viewtopic.php?f=12&t=2241
https://www.labviewmakerhub.com/forums/viewtopic.php?f=4&t=2389