ESP8266でWIFIラジコン試作

ESP8266でラジコンを作りました。

ESP8266はコントローラー側と本体とで2台使用。LANを使わずに直接通信させてます。車のボディとタイヤとピンポン玉キャスターは3Dプリンタ。電源はモバイルバッテリです。ギア付きのモーターはAliExpressで買いました。ほかにもUSBから5Vを取り出す小さい基盤と、モータードライバも使ってます。

 コントローラー側は、ボタン4つを使って、2個のモーターをそれぞれ前進後進回転させる信号を送るだけの単純なものです。ブレッドボードのままですが、そこそこ持ちやすいです。最初の計画ではアナログジョイスティックで回転数を制御できるようにと思ったのですが、ESP8266ってアナログ入力が1個しかない事に気が付いて妥協しました。

プログラムはここを参考に、いや参考というより、ほぼそのまま利用させていただきました。組み立てで接着が必要なものは両面テープなので耐久性はなく、特にモーターがとれちゃいます。

あ、そういえばこのESP8266、技適は大丈夫か?AliExpressで買ったやつだからなぁ。

ESP8266とAlexaで音声リモコン 

ArduinoIDEで開発できるESP8266の開発基盤NodeMCUの互換機で作りました。Alexaがある環境の人は作ってみて損はないです。なんせ、Alexa対応家電である必要ななく、赤外線リモコンで使える家電の大半を声で使えるようになるわけですから。

なお、この辺この辺りを見ればわかると思います。

まずはFauxmoESPというライブラリを入れます。これを入れると、ESP8266がAlexaのデバイスとして認識されます。 スケッチ例fauxmoESP_Basic で動作確認。

#define LED_WHITE 15

の15を16にすると、NodeMCU基板上のLEDが反応するので良いで動作試験でLEDを配線する必要がないです。

ただ、ここではまります。下のリンクを見てください。ArduinoIDEの書き込みの設定を書き換える必要があります。そうでないとアレクサアプリで認識されないのです。理由は私には分かりません。

https://i1.wp.com/electronic.tousekice.com/wp-content/uploads/2019/11/1234.png?w=679&ssl=1

それとIRremoteESP8266というライブラリを使います。これで、リモコンの送受信が可能になります。あとは、スケッチ例IRrecvDumpV2を使って受信したデーターをシリアルモニタで見て記録しておく。それで、それをスケッチ例IRsendDemoを参考に赤外線LEDで出す。これを、最初の FauxmoESP のスケッチ例を組み合わせたらできるわけです。

それで、作ったのはこれ。ESP8266にLEDの受信センサーを直結。データー取ったら、赤外線LEDを直結。抵抗の一本もつけないのか!って突っ込みは正しい。でも私の環境では動いたからよいとします。真似して壊れても私は責任取りませんよ。

送信側

受信側

マスク売ってないねえ

デマ情報で品薄になっているものが多い中ですが、マスクだけはどうにも無いですね。我が家には何枚かありますが、自分が風邪ひくなどしてせき込んだ時などに使えなくなると困るので、あまり着けていません。世の中にはかなりの割合でマスク着けてるけど、いったいどっから買っているのやら。

だって、専門家が言ってますよ。「マスクは人に感染させるのを減らす効果はあるけど、防御にはあまり効果がない。」でもまぁ、たまたま出たくしゃみやセキすると白い目で見られるからなぁ。

ビジネスの場でも、体温はかったりマスク着用が義務だったりするけど、ようは「自分の会社が感染源になるのは避けたい。」という思惑が大きいんだろうな。

マスク着用が入場の義務になっているような場所に言いたい。「マスクは、あなたのところで用意するのが筋だと。」

 そんななか、ふと気になって、中国通販はどうなんだろと思って AliExpressを見てみた。そしたら、あるじゃん。安くはないけど、少なくともamazonよりは安く売ってる。嘘でなければ在庫もある。ただし到着には3週間。それでも3週間でマスク不足が解消されるとは思えないので、とりあえずポチっておいた。もともと到着日は忘れたころと思っている AliExpress なので予定を過ぎても気長にまとう。忘れたころに到着して、そのころにはマスク不足が解消していて笑い話になれば、そのほうが良いのだから。

 なお、思いのほか順調に配達されたとすると、私一人の在庫としては多いので、今現在と同じような状況が続いているなら、仲間たちにも多少は配れるかなと思うぐらいの数を頼んだ。

 私は、症状がない限りマスクをするつもりはないので、多少の在庫を持っておけば十分。買い占める必要はないし転売する気もないです。1枚100万円で売れるなら考えますけどね(笑)

ESP8266でアレクサデバイスだと?

ESP32でネットラジオを作る記事を見ているうちに、アレクサ関係もできるかと思ってググっていたら、ESP8266でもアレクサデバイスが作れるとか。そういえば、NodeMCUとかいうESP8266開ボードの激安品は家に余ってるよな。

参考にした記事はここです。なお、 alexa-wemo-emulator ライブラリを使う記事が多いですが、私の環境では動きませんでした。ご注意を。 fauxmoESP のライブラリを使う記事をググりましょう。

実施に試したのは、上記のk字のサンプルコードと、 fauxmoESP のサンプルコードを参考にして、ボード上のLED(PIN16)のON-OFFを、アレクサに音声で指示して制御すること。 (ArduinoIDEで使えます) これだけ動けば、ソリッドステートリレーつけて100VのON-OFFとか、赤外線LEDでリモコン送信とか、実用的に遊べそうです。

そうは言ってもリビングの照明・エアコン・テレビは、GoogleHomeとなんとか経由ですでに音声で動くし、階段やトイレ、脱衣場の照明は人感センサーで動いているし、金魚やメダカの照明はタイマー入れてるし・・・はて、何に使うか?

クジラはイルカ IN 八丈島 5年越しリベンジ

 クジラが八丈島で見れるというニュースを聞いて、即出発したものの、「数日前まで見れた」という情報のもと玉砕したのは2015年。今は2020年、リベンジするべく行ってきた。

元旦の夜に出発

出発は元旦の夜。いつものように竹芝桟橋から出向。東海汽船の乗船の乗船手続きは慣れたもの。ってここで、「わくさん!」っと声を掛けられる???、こんな所で声を掛けられるって・・・・と思ったら神津島のおばちゃんではないか。神津島には、ほぼ毎年キャンプに行っているが、そのうち3年ぐらい連続でキャンプ場でお世話になった人。とても感じのいい明るい人で、いつの間にか名前を覚えてもらって、ってその後は島の役場で働いているらしいのだが、島に行くと、いや本土で伊豆7島のイベントがある時などで何度か顔を合わせていたが、なんとまぁ、ここでも。名前を覚えてくれていることがうれしい。年末に本土にいて、今夜の船で神津島に戻るそうです。でも私は神津島ではなく八丈島、別の船だし残念です。夏は神津に行くからね。

クジラを訪ねて74里(292キロ)

船に乗ってしまえば寝るだけです。朝になれば船はつく。

 八丈島についたら、観光案内所へ。ぶしつけに「クジラは見れますか?」と聞いた。すると「見れますよ」と最高の返答が返ってくるではないか。5年前の「えーっと数日前までは見えたようですけど・・・」ってとは全然違う。よっしゃ、ならば、「ネットで双眼鏡を貸してくれるって聞いたんだけけど貸してくれますか?」と聞いたら、それは観光案内所ではなく観光協会って言われた・・・違うんかいそれ・・・。

 まぁいい、レンタカーを調達して、島の中心部の観光協会へ行く。入るなりぶしつけに「クジラは見れますか?」と言ってみる「見れますよ」とうれしい返事。地図を出してくれて、優良な場所を示してくてる。そしてツイッターで情報を出してるから確認してほしいとも。それによると、数十分前の情報もある。双眼鏡も借りて、いざ行くぜ、クジラウォッチング。

 ツイッターの情報に翻弄されるように車を運転(ペーパードライバーだけど)するも、〇〇港とか、〇〇岬とか言われても、それ何処やねん?って感じで苦労した。良く分からないけど、ツイッターに出ていた足湯のある場所というのに到着。太平洋を一望しながら足湯。最高じゃないですか!しかも無料!これでクジラが見えたらと温まっていたけど、それれしい物は見れない。周囲の人に聞くと1時間前には見れたとか・・・もしやこのパターンは・・・。と5年前の悪夢がよみがえる。

 すると、地元の人が観光客を引き連れて足湯に来た。そして「すごい遠くでブロー(潮吹き)してるようだけなぁ」と双眼鏡見ながら呟くではないか。慌てて同じ方向を見るけど、さっぱり不明。もう足はふにゃふにゃです。

 新しいツイッター情報で、大潟浦で確認との情報、しかも「今から来ても見れるかも」と挑発的な書き込み。よっしゃ行くぜ。行ってみると何人かが双眼鏡&望遠カメラを構えている。状況を訪ねようとしたとき、おもむろに「でたっ、ブロー」って声、焦って海を見ても良く分からない。でも、それを数回繰り返して、ようやく見えた!クジラのブロー(潮吹き)だ!ついに見つけたぞクジラ野郎。

クジラは15分ぐらい潜って浮上することが多いらしい。それから断続的に肉眼でブローを確認して双眼鏡で付近を見るというのを繰り返す。すると海面に黒い物体が・・・そして、それが沈んだ後に尾びれ。断じて魚のひれではない。ゆったりとした動き、まさにクジラだと実感した瞬間でした。

 いると分かればヤル気倍増。しばらく見れなかったのでツイッターを確認して、元の足湯へ。ほどなくブローを確認。しばらく粘った時である、ブローした場所を注意深く見ていた時、突然、海面に大しぶき、ばっしゃーんって(音は聞こえないけど)間違いないです、クジラが跳ねたんですよ。私はクジラ本体は見れなかったけど、波しぶきとかそういうモノじゃない。明らかに巨大な物体が跳ねたしぶきです。そして、その数分後、その瞬間が来ました。黒い「おっとっと」のような物体が海中から飛び出したんです。この時、双眼鏡は未使用です。結構な距離があったはずですが、それでも全身の形が解るってことは、かなりの巨体です。間違いありません、10mを余裕で超えるザトウクジラです。地元でクジラの写真を狙ってる人に聞いても、全身が飛び出すシーンは滅多に無く、はっきり写真で捉えられていないとのこと。カメラどころか双眼鏡を構える余裕すらなかったけど、すごいもの見た。この後、夕陽を見て、おしまい。

 翌日もクジラが見たい!

 昨日の感動をもう一度、いやもっと近くで見たい。観光パンフレットで一番気になったポットホールという場所(いやこれもすごい良かったです)を散策したほかはクジラ探し。ほぼ一日中、ツイッターの情報に振り回されて場所を移動し海を見続けるという異様な行動。でもね、時折すれちがう観光客は同類、島マニアとかクジラマニアとか、〇〇島はどうだったとか、〇〇島でクジラを見たとか、そんな会話が普通に成り立つ・・・小笠原なんて当然の場所らしい・・・そんな人ばっかり・・・普通の人からいたら私なんて変人だけど、会話に着いていけなかった・・・(笑)

 結局のところ、2日目はブローは多数も、胴体らしきもの1回、尾びれ1回にとどまった。朝から夕方まで、ずーっと海を見ていたのである。我ながら凄い執念である。そして夕陽を見てから温泉。ふわぁー、気持ちえぇ。風呂が好きではない私としては、温泉なんか何が楽しいと思っていたけど、40も半ばになると解るわぁ。温泉最高、露天風呂もっと最高!。もうビールのんで寝れば今日は終わり。

帰る前にビーチコーミング

 あとは帰るだけだが、今回は釣りも磯遊びも観光名所巡りもしていない。出向前の60分、初めて波打ち際まで来て海を見る。やっぱ透明度すごいわぁ、なんと思っていたら、波打ち際に、やけに薄くて光を通す巻貝のカラを見つけた!なんだこれ、普通の巻貝じゃない。どっちかっていうと、カタツムリみたいな・・・ってかアンモナイトみたいな・・・。グーグルレンズで検索すると、どうやらアオイ貝というタコ(貝ではない)の貝殻と思われる。ビーチの漂流物を見る(ビーチコーミング)のは嫌いじゃないが、持って帰ろうと思ったのは初めてかもしれない。

 そして、出向予定時間・・・20分前に出向・・・んなバカな。波の状況とか、いろいろ説明はあるのだが公共交通機関が遅れることがあっても早めに出るって聞いたことねぇ。山手線なら困らないけど、1日1便の船。絶対乗り遅れる人いるよなぁ。(島の人に聞いたら、普通だよって言ってたけど)

 というか、船はかなり揺れました。しかも、「到着時間は未定です」って放送が流れる。帰りの経由地の御蔵島は接岸困難のため通り過ぎることに、三宅島も早々に到着後速やかに・出航。そして放送「本日は東京湾で大型船が通る為の通行管制があって、その前に通れれば、19時到着、後になれば20:30以降の到着になる」とか言いやがる。確かに浦賀水道あたりは狭くて、いつも船で混雑している。だからと言って、定期便を1時間半も規制するような大型船って、どんな船だよ!要人の船か?超巨大船か?潜水艦を踏めた軍事関係か?・・・。

 結果的には19時に到着、これは予定よりも早いので結果オーライだけどなぁ。

 

ネットラジオを作るESP32

 前回、使ってないrasipberrypi-Zeroとpifi基盤(サイズ的にゼロ用ではない)+余り物+100均モノでネットラジオ作って、良かったのですが、そういえば、ESP32の怪しい勢い余ってESP32の基盤も持ってたような。最初からwifi機能あったような。

てなわけで、勢い余ってググってみるとESP32でネットラジオをDIYしている人がいるようだ。いつものように遠慮なく真似して作ったけど???ArduinoIDEではなく、ESP-IDFなる開発環境が必要?、この導入がうまくいかない。やっとコンパイルして書き込んでと思ったけど、うまく動かない???。まったく解らない英語サイトをGoogle先生に翻訳してもらいながら似たようなことを繰り返すけど・・・・。

んでもって、今後忘れると困るので参考にしたサイトを書いておく

まずは開発環境ですが、ここから、簡単なインストーラーとか、最新がどうかとか、考えてはいけない(うまく動かなかった)英語サイトだけど頑張ろう。なれないコマンドはコピペが(だから覚えないという説もある)大事なのはパスを通すところ。

我が家の環境では

export IDF_PATH=/home/ユーザーネーム/esp/esp-idf

homeが、usersだったり、ようは環境によって間違いやすい。

次に今回のメインのプログラム、ESP32_MP3_Decoderだけど、これの導入は、こっちから、環境の導入の内容もあるけどね。M8403を使った極小激安アンプボードに出力して、秋月電子の100円スピーカーから鳴らしている。ネットラジオなのに、古いAMラジオみたいな音がする(笑)。

追記

これを視聴しているときに、ふと思い立って、秋月100円スピーカーを下向き(テーブル側)にひっくり返した。すると、音がものすごく小さくなった。当たり前と思う人が多いかもしれないが、普通のスピーカーユニットは裏からも音が出ていて、ひっくり返すことで音が出る向きが分散して無指向性になったりする。(これを使ってスピーカーBOXを作ったことあるけど、見た目はともかく良い感じだったのだ。)そして、一般的には裏側の音をコントロールするのがスピーカーボックスなのだ。

改めてユニットの裏側を見ていると音の出るコーン部分が全部鉄板で覆われている。つまり容積の小さい密閉型になっている。(磁石が外付けになってる)実にへんな作りだった。サブウーハー加えて 2.1ch 構成でDIY的に面白いシステムも作れそうだが・・・。たぶんやらない。

コネクタ付きのケーブルもついてるし、今回のような、電子工作のお試し音出し用にはコスパ最高かもしれない。

ネットラジオ局の選択の問題か?

上記のESP32ラジオは、ディフォルトのSomaFMになっている。でも、聞きたいのはLINNのラジオなので、プレイリストを書き換えると・・・あ、これ、ダメ、ならない。そっか、高音質のネットラジオ局だと通信か内臓DACかが落ちてたのかな?

DACに関しては外部にする予定です。

ネットラジオ用オーディオを作った

 スピーカーボックスを作った。ずっと前から持ってた7cmぐらいのユニット、買ったときは段ボールで箱を作って鳴らしていたけど、そのままお蔵入りになっていたもの。をれをダイソーで売ってたMDFの板で作ったバフレフ箱に入れた。

 真ん中の100均の箱に入ってる基盤、手前が12Vの電源基盤、その先が2020のIC(いまやプレミアICらしい)を使ったアンプキット、右上の箱のフタに付いている緑の基盤がラズベリーパイゼロWH、それに刺さってる青い基盤はラズパイ用オーディオボードPIFI基盤、OSはオーディオ用OSのVolmio。これらはみんな数か月前~数年前に買ったもの。wifiにつないで、ネットラジオを高音質で聞こうって魂胆。

 一つ失敗したのは12Vの基盤からアンプへ、分岐したのをダウンコンバート基盤を通してラズパイに入れてダイソー箱にまとめたのだが、出力にノイズが乗って使い物にならなかった。そこで不便だけどモバイルバッテリーでラズパイを駆動したら奇麗な音が出た。でも箱に入らなくなった(泣)

量子力学は神様が決めた

最近、初心者向けの物理学の本をアマゾンで読んだ。物理学って計算とか関係なしに、 こんなもんだよーって内容。 難しい話は極力省いて、身近な内容から宇宙の創造まで書いてあった。

それと、たまたま最近、Google先生が量子コンピューターが、すげー結果を出したって報道もあったので、量子コンピューターをググってみた。

そんで、両方を受け止めて思ったこと。ほぼ哲学?宗教?。量子は、あれもこれも同じもので違いがないが、観測できた結果は確定するから・・・っていう・・・。途中経過は確率?

ようは、途中経過は、なんでもアリだけど結果は確定するからOK、それが並列処理であってもだ!

私的には、「1+1の答えは2だけど、田んぼの田っていう理論もありえるわけで、でもそれは途中経過で、結果は2」っていう話で理解しているが、やっぱり意味が解らん

そういえば、学生時代の物理の先生は量子力学が専門だった。そして、先生が言ってた衝撃の言葉は、

「神様が決めたんだよ」

最近、忘れかけてたけど思い出したよ。絶対忘れないセリフだ。

3Dプリンタの設定について

3Dプリンタ(ALUNAR508)を買ってから、いろいろと苦労したことをまとめておこう。

①いきなりだが、オートレベリングがないもので、改造の余地があるなら改造はしたほうが良い。ググるとでてくるので、是非ともチャレンジしてほしい。

②印刷物を固定するための最大のポイントはZ軸とベッドをいかに近づけるかです。ヘッドがベッドにぶつからないぎりぎりの範囲をセッティングできれば、ほとんどの苦労は軽減できます。そのためにも①はあったほうが良いのです。

③上記を使った場合、オフセット値を追い込みが大切。Z軸のオフセット値が設定できると思いますので、印刷したものを見て1層目が甘いと思ったら(印刷物の底の状態が悪いときは、これが原因です)、0.1ミリ以下のレベルで追い込みましょう。ベッドの多少のゆがみは、①が調整してくれるので、ぎりぎりまで近づけます。もう、これが決まると、いろいろ解決します。

④長方形型など、直線が多いものは、ちょっと回転させて印刷。これは私の経験則ですが、直線が多いものは、印刷時に回転させてX軸Y軸に平行なラインを外します。スライサーにもよると思いますが、反りが減るような気がします。3Dモデルを作る時も、XY平面の角を丸めるなどするのも、やらないよりいいです。

⑤囲うなら、徹底的にやりましょう。調べてるとプリンタを囲って、それなりの温度で安定させると効果が高いと出てきますが、隙間風とかあると、温度の均一性が逆に悪くなって失敗します。寒いのはだめなので、暖房の利用は効果があります。なにはともあれ、プリンタ周辺に温度ムラが出るのを避けるべきです。

⑥ベッドに養生テープを貼ると、マジックで場所をマーキングできるほか、整髪料やスティックのりを使っても、後でふき取る必要がなくなる。両面テープでも剥がせる。

⑦フィラメントの巻きが小さくなると折れる。寒いほどに起きやすいと思うが、夏でも折れる。フィラメントのスプールの直径が小さくなると折れやすくなる。頑張って使おうとすると、エクストルーダーの中で折れたりして分解する必要がある。そして、そのフィラメントを使って・・・・繰り返し。しかも、そのたびに各軸の調整もやりなおし・・・。時間ばかりかかるので、そうなる前にあきらめるのが得策。もったいないので、スプールから外して、ぶらぶらさせて使うのもあり。見てないと危なっかしいが、小さいものなら大丈夫でした。

※PLAなら、順調にできてますが、最近使おうと思ったABSはまだ駄目です。なんとも、ちゃんちゃな玩具です。

天気の子の予期せぬ聖地巡礼

どうやら知っている場所が聖地になっているというので見てきた映画「天気の子」、本人の意思と関係なく聖地巡礼してしまったお話。

映画に出てくる主人公の出身地関連のシーンですが、神津島の風景が描かれている。神津島は毎年のようにキャンプに行っているのだが、今年は大夫の影響でキャンプ場が使えなくなり民宿に宿泊。その民宿の近くに主人公の高校と海の見える道と東屋がある。なお東海汽船ももちろん乗船している。さらに代々木駅の廃墟ですが、2週間ほど前に仕事でごく近いところの出向いており、駅前のこんなところに廃ビルがあるなぁと思っていた場所。近いうちに再度行くので屋上に社があるか確認してみよう。

 一つの映画で、これだけ知っている場所(しかも最近訪問した場所)が出てくると言うのは変な気分だ。しかも天気の子を見て聖地巡礼したわけではなく、訪問した場所が聖地だったという偶然である。

 今まで、聖地巡礼する人の気持ちはさっぱりわからなかったが、解るような気がした。

わくさんの忘備録です