コードの被覆修理
目次
はじめに
スマホとLEDライトのコードの被覆が破れてしまったため、その修理について記載いたします。
修理前の状態
LEDライトケーブル
このケーブルはコネクタとケーブルの接続部分が固いため、コネクタを曲げたりする際に外側の被覆がめくれてきてしまったようです。ジャック側、USB側の両方がめくれていました。
USBケーブル TYPE C 1つ目
ケーブルの曲げ等により、コネクタ付近の外部被覆が破れ、編組シールドが見える状態でした
USBケーブル TYPE C 2つ目
ケーブルの外部被覆が破れ、編組シールドが見える状態でした
最初に修理に用いた熱収縮チューブ
最初に用いたのはELPA 収縮チューブ Φ8mm ブラック PH-648H(BK)になります。内径は収縮前 Φ8.5±0.3mm、収縮後 Φ4.7mmです。
修理に用いた物
・ドライヤー
・ライター
修理に用いたのは家庭用のドライヤーとライターになります。
LEDライトケーブル
LEDライトケーブルはジャック側の径が Φ9mmのため、熱収縮チューブを通す事ができました。ドライヤーで温めていましたが、少し時間がかかるため、ライターの火で温める事にしました。
収縮後の出来上がりはジャックの部分はしっかり留まっておりましたが、ケーブル部分は少し緩くなっておりました。これはケーブルの径が Φ3mmであるため、収縮後の寸法以下になってしまうためです。
USB側はUSBコネクタ部分とケーブル部分の寸法差があるため、この熱収縮チューブでの修理を行いませんでした。
USBケーブル TYPE C 1つ目
USBケーブル TYPE C 1つ目はコネクタのサイズが13×7mmの角丸長方形なので、熱収縮チューブを通す事ができませんでした。熱収縮チューブに少し切れ目を入れても通す事はできませんでした。
そのため、熱収縮チューブを完全に切ってからケーブルを覆い、クリップで留めて、ドライヤーで温めてみることにしました。しかし、この方法でも収縮後の出来上がりは熱収縮チューブが開いてしまったり、動いてしまいました。そのため、熱収縮チューブの上からグルーガンで切れ目とチューブの端を留める事にしました。
引っ張ると動いてしまうことと、少し見た目が悪いので、別の熱収縮チューブでやり直すことにしました。
グルーガン塗布後
高収縮の熱収縮チューブ
一般的な熱収縮チューブの収縮前後の寸法比は1:2であり、コネクタ部が大きい物などはチューブを被せることができないため、熱収縮チューブの収縮前後の寸法差が大きい高収縮の熱収縮チューブが必要になります。高収縮の熱収縮チューブは高価であるため、安価な物を探すのが大変でした。今回はたまたま15cm×3本のバラ売りで安価に購入できるものがあり、そちらを購入しました。
内径は収縮前Φ12mm、収縮後Φ3mmでした。内部に高温になると溶ける接着剤もついていました。
収縮温度は125℃でした。
修理に用いた物
・ドライヤー
・ライター
・ホットエアー(130℃設定の熱風を出力)
LEDライトケーブル
USBコネクタ部分とケーブル部分の寸法差がありましたが、この熱収縮チューブでは修理をすることができました。
ドライヤーで最初に収縮を試みましたが、収縮温度が125℃であるため、収縮することができませんでした。そのため、ライターを使用して収縮を試みました。しかしこれだけではケーブルに少し隙間があり、完全に収縮することはできませんでした。
そのため、ホットエアーを使用して、130℃の熱風で収縮させることにしました。これにより、完全に収縮することができました。
USBケーブル TYPE C 1つ目
USBケーブル TYPE C 1つ目はコネクタのサイズが13×7mmの角丸長方形、ケーブルの径がΦ5mmのため、最初の熱収縮チューブではケーブルに熱収縮チューブを通すことができませんでしたが、この熱収縮チューブはケーブルに通すことができました。
ライターを使用して収縮を試み、完全に収縮することができました。
USBケーブル TYPE C 2つ目
USBケーブル TYPE C 2つ目はコネクタのサイズが13×6mmの角丸長方形、ケーブルの径がΦ3mmのため、この熱収縮チューブはケーブルに通すことができました。
ライターを使用して収縮を試み、完全に収縮することができました。接着材が塗布されているため、少し細いケーブルでしたが、収縮チューブがずれることはありませんでした。
まとめ
USBケーブルはコネクタ部が大きく、ケーブルが細いため、収縮前後の寸法差が大きい高収縮の熱収縮チューブを用いる必要がありました。今回使用した高収縮の熱収縮チューブは収縮温度が125℃であるため、ドライヤーでは収縮させることが困難でした。そのため、収縮にはライターやホットエアーを使用する必要がありました。ホットエアーを所有している場合はホットエアーで収縮させるのが一番良い仕上がりになります。
【自作】洗濯物 取り込み忘れ防止機器のまとめ
目次
- はじめに
- 洗濯物 取り込み忘れ防止機器の仕組みについて
- DC-DC降圧レギュレータ変更(【自作】洗濯物 取り込み忘れ防止機器)
- モバイルバッテリーの変更
- 【自作】洗濯物 取り込み忘れ防止機器の製作費用
- WIFIモジュール:ESP-WROOM-02 へのプログラム書き込み
- IFTTTの設定方法(【自作】洗濯物 取り込み忘れ防止機器)
- RSSIの取得(ThingSpeak使用)
- モバイルバッテリーの出力電圧計測値をexcel出力する方法
- おわりに
はじめに
これまでの洗濯物 取り込み忘れ防止機器の記事が複数になったため、まとめの記事を記載します。
洗濯物 取り込み忘れ防止機器の仕組みについて
仕組みについては下記の記事に詳細が記載されています。
WIFIルーターとWIFIモジュールの信号強度(RSSI)の値からWIFIモジュールが屋外にあるか、屋内にあるか判定します。屋外にあると判定されると、IFTTTを用いて、LINEに通知が来る仕組みにしています。
詳細な回路やプログラムコード等は下記の記事に記載しました。
DC-DC降圧レギュレータ変更(【自作】洗濯物 取り込み忘れ防止機器)
上記の記事の状態ではDC-DC降圧レギュレータの消費電流が大きく、モバイルバッテリーの充電が1ヶ月ももたないため、消費電力が少ないDC-DC降圧レギュレータへ変更しました。変更の詳細は下記の記事に記載しました。
モバイルバッテリーの変更
消費電流を少なくするとともにバッテリーを容量が大きい物に変更しました。
deep sleepモードでの消費電流が少ないため、この消費電流でもモバイルバッテリーが動作する必要がありました。モバイルバッテリー変更の初回の記事で購入したものは継続的に充電をすることができませんでしたが、2回目の記事で購入した10000mAhのバッテリーは継続的に充電をすることできました。
これにより、deep sleep時だけの電流では7183日起動できる計算になります。実際にはdeep sleep以外の動作が35分間隔で起こりますが、1年は動作し続けると思います。
モバイルバッテリーの変更の詳細は下記の記事に記載しました。
【自作】洗濯物 取り込み忘れ防止機器の製作費用
DC-DC降圧レギュレータとモバイルバッテリーを変更した後の製作費用は¥10418になりました。モバイルバッテリー、WIFIルーター、スライドスイッチが占める金額が大きく、それ以外はそれほど大きな割合ではありません。
モバイルバッテリー、スライドスイッチ等の構成部材の変更により¥6477まで安価にすることができます。さらにWIFIルーターは既に所有しているものを流用すると考え、WIFIルーターの費用を除くと¥3977になりました。
詳細な製作費用は下記の記事に記載しています。
WIFIモジュール:ESP-WROOM-02 へのプログラム書き込み
洗濯物 取り込み忘れ防止機器に搭載したWIFIモジュール:ESP-WROOM-02 へのプログラム書き込み方法は「USB to TTL シリアル コンバーター」と「双方向ロジックレベル変換モジュール」を使用して、ArduinoIDEにより書き込みを行いました。
詳細な部材の接続方法やArduinoIDEの書き込み方法は下記の記事に記載しました。
IFTTTの設定方法(【自作】洗濯物 取り込み忘れ防止機器)
洗濯物 取り込み忘れ防止機器内のWIFIモジュールから出力した信号をWebhooks、LINEを経由してスマートフォンへ通知するためにIFTTTを用いています。
IFTTTの設定方法は下記の記事に記載しました。
RSSIの取得(ThingSpeak使用)
屋外にあるか、屋内にあるか判別するため電波強度(RSSI)のしきい値を決めました。その際に屋内、屋外に機器がある状態のRSSI測定を行いました。この測定にはThingSpeakを用いました。グラフ表示もできるので、移動しながらのRSSIの測定には便利でした。
下記の記事にはThingSpeakの登録と使用方法について記載しました。
モバイルバッテリーの出力電圧計測値をexcel出力する方法
モバイルバッテリー変更の際に充電が継続しているか確認するため、出力電圧の測定を実施しました。その際の構成と測定方法について、下記の記事に記載しました。
おわりに
今後は洗濯物 取り込み忘れ防止機器を使用して、バッテリーの充電がどの程度もっているかや使用中の問題点、改善点について記載していこうと思います。
【自作】洗濯物 取り込み忘れ防止機器の製作費用
目次
はじめに
先日、製作した洗濯物 取り込み忘れ防止機器の製作費用とさらに安く製作するためにできることについて記載します。
洗濯物 取り込み忘れ防止機器の最終構成
・WIFIモジュール:ESP-WROOM-02 ピッチ変換済みモジュール
・降圧レギュレータ:XC6210A332MR-G(メーカー:TOREX )
・モバイルバッテリー:エレクサーモバッテリー10000mAh(BT100) (メーカー:イーブンリバー)
・レギュレータ入出力セラミックコンデンサ1.0μF 2個
・WIFIモジュール周辺 セラミックコンデンサ0.1μF 2個
・WIFIモジュール周辺 セラミックコンデンサ10μF 1個
・WIFIモジュール周辺抵抗10kΩ 3個
・スライドスイッチ 2個 CJS-1201B (メーカー:日本電産コパル電子)
・筐体:WP5-7-3 (メーカー:タカチ電機)
・ケーブルグランド:RM8L-4S(メーカー:タカチ電機)
・プラスなべ頭セルフタッピングネジM2x5mm
各部品の価格
プラスなべ頭セルフタッピングネジM2x5mmは50本入りで¥796でしたが、使用した分の費用としました。ユニバーサル基板についても、115×160mmですが、使用したのが20×30mmと20×15mmなので、その分の費用としました。
上記の表を見ると、モバイルバッテリー、WIFIルーター、スライドスイッチが占める金額が大きく、それ以外の部材はそれほど大きな割合ではありません。
安く製作するための部材変更
降圧レギュレータは3.3V出力、零入力電流0.1mA以下、出力電流500mA以上であれば、良いと思います。そのため、型式:AP7217A-33SPG-13(メーカー:DIODES INCORPORATED)で良いと思います。
モバイルバッテリーは10000mAhの物を用いましたが、降圧レギュレータの消費電力が少なければ、「cheero Canvas 3200mAh IoT 機器対応」でも良いと思います。このバッテリー容量でも半年くらいは起動できると考えています。
スライドスイッチは書き込み時に信号を切り替えるだけですので、 型式:SS-22SDP2(メーカー:NKKスイッチズ)で良いです。
筐体については防水防塵の物を選定していますが、防水防塵仕様でないものに変更すれば、安価になります。筐体を防水防塵にしていないので、筐体に穴を開けるだけにして、ケーブルグランドを用いなければさらに安価になります。
WIFIルーターは既に所有しているものを流用し、合計金額に含めなけれ¥4000以下で部材を揃えることができます。
おわりに
モバイルバッテリー、WIFIルーター、スライドスイッチが占める金額が大きく、それ以外はそれほど大きな割合ではありません。モバイルバッテリー、スライドスイッチの変更やWIFIルーターは既に所有しているものを流用すると、新たに購入する部材の購入価格を安価にすることができます。
RSSIの取得(ThingSpeak使用)
目次
はじめに
先日製作した洗濯物 取り込み忘れ防止機器を製作する際に屋外にあるか、屋内にあるか判別するため電波強度(RSSI)のしきい値を決めました。その際に屋内、屋外に機器がある状態のRSSI測定を行いました。今回はその時の構成と方法について説明していきます。
測定構成
場所を移動しながら、RSSIを記録し、スマホで確認したいと考えました。そこで、取得したRSSIをWIFI経由で何処かのクラウドデータサービスに送信しようと考えました。クラウドデータサービスについては、無料で使用でき、グラフ表示もできるため、ThingSpeakを用いました。
ThingSpeak
ThingSpeakはIoT向けのクラウドデータサービスです。デバイスから送られた来たデータを貯めて、グラフに表示したり、データをトリガに何かのアクションを起こすことができます。下記制限がありますが、無料で使用することができます。制限としては以下になります。
・メッセージ間隔15秒以上
・年間300万メッセージまで
・商用利用禁止
ThingSpeakの登録
①下記リンクをクリックし、「Get Started For Free」をクリックする
②ログインするかアカウントを作成するか を選択するので、左下の
「Create One!」をクリック
③下記画面の項目を記載し、登録する
・メールアドレス
・国
・パスワード
・名前
・名前(英字)
全項目を埋め、「Continue」をクリック
④入力したEmailアドレスが記載されているので、Continueをクリック
⑤メールが届いているので確認し、「Verify email」をクリック
⑥下記のContinueをクリック
⑦Passwordを入力し、「I accept theOnline Services Agreement Online Services Agreement」にチェックを入れ、Continueをクリックする
⑧「Sign-up successful」と表示されるので、「OK」をクリックする
⑨利用目的を聞かれているので、「Personal,non-commercial projects」を選択し、「OK」をクリックする
ThingSpeak Channel作成
①「New Channel」をクリックする
②Name:測定プロジェクト名, Field1:測定項目を入れて、右へチェックを付ける
その他の項目は入力しなくても大丈夫
「Save Channel」をクリック
③Channelが作成される
④「Channel Setting」タブを選択し、「Channel ID」を確認する
⑤「API Keys」タブを選択し、「Write API Key」を確認する
Arduinoプログラムコード
#include <ThingSpeak.h>
#include <ESP8266WiFi.h>
//ネットワーク情報
char* ssid = "********"; //””で囲まれた中にWiFiルーターのssid
char* password = "*******"; //””で囲まれた中にWiFiルーターのpassword
WiFiServer server(80);//webサーバーをポート80に設定する
String header;//HTTPリクエストのヘッダーを格納する変数
// ThingSpeak設定(チャンネルIDと書き込み用APIキーを変更してください)
const unsigned long myChannelNumber = ********; //********にChannel ID
const char * myWriteAPIKey = "********"; //””で囲まれた中にWriteAPIKey
// ThingSpeak接続用
WiFiClient client;
void setup(void)
{
Serial.begin(115200);
Serial.print("Connecting to ");
Serial.println(ssid);
//Wi-Fi接続を開始する
WiFi.begin(ssid, password);
//接続が開始するのを待つ
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
yield(); //WDTを動作させるために必要
}
//通信ができたら、ESP32に割り当てられたIPアドレスを表示する
Serial.println("");
Serial.println("WiFi connected.");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
//WiFiServer server(80);で作成したサーバーを開始
server.begin();
}
void loop(void)
{
//無線の強さ
long rssi = WiFi.RSSI();
// センサーデータアップロード開始
ThingSpeak.begin(client);
// フィードに値を設定
ThingSpeak.setField(1, rssi);
// ThingSpeakに送信
Serial.println();
Serial.print("Write fields...");
ThingSpeak.writeFields(myChannelNumber, myWriteAPIKey);
Serial.println("done");
}
ThingSpeak設定の部分にThingSpeak Channel作成の項で確認したチャンネルIDと書き込み用APIキーを入力して、ThingSpeakへデータを送信できます。
測定結果
上記のように測定結果が取得できました。
屋外にある場合は-67を下回り、屋内にある場合は-67を上回ったため、しきい値を-67としました。
おわりに
ThingSpeakは無料で使用することができ、グラフ表示もできるので、移動しながらのRSSIの測定には便利でした。
湯沸かし器の音声スイッチ(SwitchBot 使用)
目次
暮らしの問題点
我が家の浴室には湯沸かしのオンオフスイッチがなく、台所まで行かないと湯沸かし器を起動することができません。そのため、湯沸かし器の起動を忘れて、浴室に入ると、浴室を一回出て台所に行かなければなりません。冬場は裸で台所まで行くのは寒いですし、面倒でした。
対策方法
我が家にはGoogle Nest Mini(スマートスピーカー)があったため、これを生かして音声で湯沸かし器のオン、オフをしようと考えました。調べてみると、switcbotという製品があることが分かりました。SwitchBot ボットは無線信号により、物理的にスイッチを押せるというものでした。
全体構成は下記のようになります。
SwitchBot ボットとSwitchBot ハブミニは新規に購入する必要がありました。
使用したもの
・SwitchBot ボット
・SwitchBot ハブミニ
設置・設定方法
・SwitchBot ハブミニ
①ハブミニへUSBケーブルを経由して電源供給する
②SwitchBot アプリをダウンロード
③アプリのプロフィール画面からSwitchBot アカウントをログインもしくは作成します
④ハブミニを追加します
・SwitchBot ボット
①SwitchBot ボットの電池の絶縁シートを取り外し動作させます
③アプリを起動して、ホーム画面にSwitchBot ボットの画面が表示される。
④付属の両面テープでSwitchBot ボットを貼り付けます
⑤アプリのホーム画面でSwitchBot ボットを選択し、詳細設定ボタンから操作モードを変更する。私は「押す」モードにしました。
⑥詳細設定でパスワードを設定します。
⑦詳細設定からもどり、クラウドサービスをオンにします
湯沸かし器のオンオフボタンの部分にSwitchBot ボットを設置しました。
・Google Homeアプリの設定
①Google Homeアプリに入り、左上の「+」をタップし、
「デバイスのセットアップ」を選んで、「Googleと連携させる」を選択します
②「SwitchBot Smart 」で検索し、開いたSwitchBot画面にアカウントを入力します
問題点
この構成にして2日目くらいにSwitchBotが動作しない問題がありました。これはSwitchBotのサーバーエラーが生じたためでした。2日目だったので、故障したか、設定情報が消えてしまったのかと思いました。数時間程度だったと思いますが、ちょうど湯沸かし器を使用するタイミングだったので、少し不便さを感じました。しかし、それ以降はサーバーエラーで動作しないということは起こりませんでした。
また、SwitchBotボット近辺に電子レンジがあり、電子レンジが稼働しているときはボットが動作しないことが稀にあります。これは電子レンジの周波数が2.4GHz帯であるため、SwitchBotボットとハブミニ間の通信信号と電子レンジから漏れている電磁波が干渉したのだろうと考えています。
音声スイッチ(SwitchBot)にした感想
小さな問題点はありましたが、全体的にはswitchBotを購入して、湯沸かし器の音声スイッチ化をして大変便利になりました。浴室のためだけでなく、台所で汚れが食器等を洗う際にもシンクを離れずに音声で湯沸かし器をオンオフできるので、とても役に立ちました。また、外出時に湯沸かし器を消し忘れていないかGoogle Homeアプリで確認でき、消し忘れていた際は消すこともできるので、省エネにも役立ちました。
その他SwitchBot ハブミニの使い道
SwitchBot ハブミニは赤外線リモコンの信号も登録できるので、LED照明やエアコンの操作を登録することもできます。音声で照明をオンオフ出来たら良いなあと考えていますが、我が家のLED照明は照明側の赤外線受信機が故障しているようで、リモコンで動作させることができません。今度、LED照明については修理をしようと考えています。
電圧計測値をexcel出力する方法
目次
はじめに
先日製作した洗濯物 取り込み忘れ防止機器のモバイルバッテリー変更の際に使用した電圧計測構成について記載します。
計測電圧値の記録を行いたいため、下記に記す構成にしました。
使用したもの
・電圧計測モジュール:KEYESTUDIO 37 in1センサーキット37センサーモジュール for Arduino Raspberry Piプログラミングプロジェクト用スターターキットに入っていた電圧計測モジュール(メーカー:KEYESTUDIO)
・Arduino用 Nanoボード V3.0 CH340/ATmega328P、Nano V3.0互換(メーカー:ELEGOO)
電圧計測モジュールについては37個のセンサが入っているKEYESTUDIOのキットの中の物を使用しました。Arduino nanoより安価に手に入るため、ELEGOO製の互換品を使用しています。
全体構成
電圧計測モジュールは抵抗分圧をしており、測定点の電圧を1/5にしています。Arduino nano互換機内蔵のADコンバータを使用し、電圧計測モジュール出力のアナログ信号からデジタル信号へ変換しています。arduino nano互換機内で電圧計測値へ演算し、pcへ送信します。pc内ではpythonプログラムを用いて、電圧計測値をcsvファイルへ出力するようにしています。
回路図
電圧計測モジュールのs(出力信号線)はArduino nano互換品のアナログピンにを接続します。今回はA0にしました。NCはArduino nano互換品の5vに接続します。-はArduino nano互換品のGNDに接続します。電圧計測モジュールのVCCは測定点の+側に接続します。電圧計測モジュールのGNDは測定点の基準点に接続します。
電圧計測モジュールでは30kΩ、7.5kΩで分圧し、測定点の電圧を1/5にします。Arduino nano互換機にはATmega328Pが実装されており、こちらに内蔵している10bit ADコンバータにより、アナログ信号をデジタル信号へ変換しています。CH340Gでuartからusbへ信号変換しています。
Arduino nano互換品 書き込みプログラムコード
int analogpin=0; // analog port 0
int val;
float val1;
void setup()
{
Serial.begin(9600); //serial speed 9600
}
void loop()
{
val=analogRead(analogpin);
val1=val/1024*25;
Serial.println(val1);
delay(1000);
}
analogRead(analogpin)により、アナログ入力ピンに入力され、デジタル変換された値を読み取っています。
Arduino nano互換機に実装されているATmega328P内蔵のADコンバータは10bitなので、
1024(=2^10)で割っています。このADコンバータのデータ値1024の時、ADコンバータの入力ピンの電圧は5V であり、電圧計測モジュールは抵抗分圧で測定値を1/5しているので、25(=5×5)を掛けます。
pythonプログラムコード
import sys
import serial
import datetime
import csv
seri = serial.Serial("COM8",9600) #ポート情報
while(1):
measurevalue =float(seri.readline().decode('utf-8').rstrip('\n'))
datetime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
print(datetime,measurevalue)
with open('test.csv', 'a') as f:
print('{},{}'.format(datetime,measurevalue),file=f)
float(seri.readline().decode('utf-8').rstrip('\n'))でシリアル通信に入力された値を読み取っています。 datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') はその時の日時を取得しています。最後の2行でcsvへ日時とシリアル通信から読み取った値を出力しています。
実機写真
電圧計測部
モバイルバッテリー 出力電圧計測時
モバイルバッテリー 出力電圧計測時(計測部拡大)
モバイルバッテリーと洗濯物 取り込み忘れ防止機器のUSBケーブルの間には基板を設けて、ワニ口クリップで測定ポイントを掴めるようにしました。
入出力接続ジャンパー線の部分を電流計に変えて、電流測定もできるようにしています。
CSV出力結果
おわりに
電圧計測モジュールで使用している抵抗の誤差、ADコンバータの変換誤差があるため、正確な値を測定する場合はテスターを用いた方が良いかと思います。大まかな電圧を記録したい時は今回の方法であると安価に測定できるかと思います。
WIFIモジュール:ESP-WROOM-02 へのプログラム書き込み
目次
はじめに
先日製作した洗濯物 取り込み忘れ防止機器のWIFIモジュール:ESP-WROOM-02 へのプログラムについて記載がなかったため、記載します。
洗濯物 取り込み忘れ防止機器にはarduinoIDEで開発可能な事と入手しやすいということからWIFIモジュールにESP-WROOM-02を用いました。
プログラム書き込みに使用したもの
・USB to TTL シリアル コンバーター:FT232RLモジュール
・4チャンネル双方向ロジックレベル変換モジュール
・降圧レギュレータ:AMS1117-3.3 DC-DC降圧コンバータモジュール
・ブレッドボード:サンハヤト SAD-101 ニューブレッドボード
・ブレッドボード用ジャンパーワイヤー
回路図
IC1 WIFIモジュール:ESP-WROOM-02 ピッチ変換済みモジュール
IC2 USB to TTL シリアル コンバーター:FT232RLモジュール
IC3 4チャンネル双方向ロジックレベル変換モジュール
IC4 降圧レギュレータ:AMS1117-3.3 DC-DC降圧コンバータモジュール
※IC2のUSB to TTL シリアル コンバーターの使用していないピンは回路図では省略しています。
パソコン(PC)のポートはUSB、電圧レベルは5V系です。一方、WIFIモジュール:ESP-WROOM-02 のポートはUART、電圧レベルは3.3V系です。そのため、信号の種類と電圧レベルを変換する必要があります。
IC2はUSB→UARTへ信号変換しています。IC3はUART信号のレベルを5V系から3.3V系に変換しています。IC4は電源電圧を5Vから3.3Vへ降圧しています。
IC2 TXはIC4を経由して、IC1 RXDへ接続します。IC2 RXはIC4を経由して、IC1 TXDへ接続します。
実機 写真
ブレッドボード上にIC2~IC4の素子を配置し、ブレッドボード用ジャンパーワイヤーで配線しています。
上記の実機を用いることにより、PCからWIFIモジュールへ信号を送受信でき、プログラムコードが書き込める状態になりました。
ArduinoIDEを用いた書き込み方法
ArduinoIDEでESP-WROOM-02へ書き込む際の設定は下記にしました。
ボード:Generic ESP8266 Module
Upload Speed:115200
CPU Frequency:80MHz
Crystal Frequency:26MHz
Flash Size:2MB(FS:1MB OTA-512KB)
Flash Mode:QIO(fast)
Flash Frequency:40MHz
Reset Method:no dtr,no sync
Flash Sizeは古いものは4MBであり、途中から2MBに変更になったようです。
シリアルポートはデバイスマネージャーで確認し、USB to TTL シリアル コンバーターに接続しているポートを選択します。
ボード設定とシリアルポートの設定が終わりましたら、「マイコンボードに書き込む」ボタンを押して、書き込みを実行します。
書き込みが完了すると「マイコンボードへの書き込みが完了しました」と表示されます。
おわりに
ESP-WROOM-02の適切なボード設定が分からず、少し苦労しました。
ネット検索すると、Flash Sizeは4MBと2MBの設定の記事がありますが、私の購入したものは2MB品でした。