gokkunhebi

昔とった杵柄を若い世代につなぐ活動で地域貢献しています。 といえばかっこいいですが、定年後の「毎日が日曜日」が怖いのと、脳内にあるせっかくの「杵柄」を忘れていくのが悔しくて、プログラムと電子工作を始めたというのが本音です。

gokkunhebi

昔とった杵柄を若い世代につなぐ活動で地域貢献しています。 といえばかっこいいですが、定年後の「毎日が日曜日」が怖いのと、脳内にあるせっかくの「杵柄」を忘れていくのが悔しくて、プログラムと電子工作を始めたというのが本音です。

最近の記事

LINE Notifyサービス終了の衝撃!

代わりは LINE Messaging APIの PUSHけっこう便利に活用している LINE Notifyが 2025年3月31日にサービス終了します(LINEの発表はこちら)。 「プログラムと電子工作・LINEに通知」で紹介したほか、日常的に自身が便利に使っている工作でも LINE Notifyは多用しています。同様の通知は「Messaging API」で実現できるそうです。ただし無料で送信できるメッセージ数が 200通/月に制限されます。 私の用途としては、1日に

    • プログラムと電子工作・Bluetoothセンサを接続して、フィットネスバイクのクランク回転数を測る(2)

      「Bluetoothセンサを接続して、フィットネスバイクのクランク回転数を測る(1)」で、Bluetooth センサ・M5StickC Plus の通信ができたので、フィットネスバイクのクランク回転数計測はおおよそできそうです。残る機能は積算した値を LCDディスプレイに書くだけですが、いくつか懸念があります。 setup() や loop()関数と Bluetooth通信の Callback関数 notifyCD() で、変数を読み書きするとき不整合が発生しないか。 ケ

      • プログラムと電子工作・Bluetoothセンサを接続して、フィットネスバイクのクランク回転数を測る(1)

        高齢者の介護予防には下肢筋力を維持する運動が欠かせません。転倒リスクがなく、テレビを見ながら’ながら運動’するにはフィットネスバイク(エルゴメーター)が適しています。安価なエルゴメーターにサイクリング用のケイデンスセンサを取付け、1日の回転数を計測します。計測結果を LINEなどで共有すれば、本人の励みになるし、家族の見守りになります。 電子工作的には、フィットネスバイクのクランクに、クランクの回転数を計測するケイデンスセンサを取り付けるだけで、特段の工作はありません。

        • プログラムと電子工作・ラジコンカー(4)スマホで自在に走行

          さあ、やっと最後の第4段階です。スマートフォンのジョイスティック風アプリで、ラジコンカーを自在に操作しましょう。 第2段階で、プログラムした走行パターンどおりに、車体が走るようになっていますね。次は、第3段階のジョイスティック風アプリで操作できるように、第2段階のスケッチを改造します。 以前作成した「プログラムと電子工作・Webサーバ」を思い出してください。M5StickC Plus に実装した index.html と PCのブラウザで通信しました。 今度は、第3段階

        • LINE Notifyサービス終了の衝撃!

        • プログラムと電子工作・Bluetoothセンサを接続して、フィットネスバイクのクランク回転数を測る(2)

        • プログラムと電子工作・Bluetoothセンサを接続して、フィットネスバイクのクランク回転数を測る(1)

        • プログラムと電子工作・ラジコンカー(4)スマホで自在に走行

          電子工作ではちょっとした機械設計の必要なことがあります。プリント基板を組込むケースを加工するとか。3DCADはFusion360を試しています。プロ用なのに無料で使用できる。使い方はYoutubeに解説動画がゴロゴロ。やりたいことはほぼメニュー一発。なんちゅう時代になったもんだ!

          電子工作ではちょっとした機械設計の必要なことがあります。プリント基板を組込むケースを加工するとか。3DCADはFusion360を試しています。プロ用なのに無料で使用できる。使い方はYoutubeに解説動画がゴロゴロ。やりたいことはほぼメニュー一発。なんちゅう時代になったもんだ!

          プログラムと電子工作のラジコンカー・シリーズも残り 1回。だんだんネタが乏しくなってきたよお。先週、地元の中学校で出前体験会をやりました。GIGA端末のChromebookでジョイスティック風アプリが動くか挑戦したけど、時間切れで確認できず。うまく行ったらすげー楽しんだけど残念!

          プログラムと電子工作のラジコンカー・シリーズも残り 1回。だんだんネタが乏しくなってきたよお。先週、地元の中学校で出前体験会をやりました。GIGA端末のChromebookでジョイスティック風アプリが動くか挑戦したけど、時間切れで確認できず。うまく行ったらすげー楽しんだけど残念!

          プログラムと電子工作・ラジコンカー(3)ジョイスティック風アプリ

          第3段階は、スマートフォン・アプリを作ります。今回は M5StickC Plus の出番はありません。純粋に Webサーバとブラウザのお話です。 スマートフォンをジョイスティックにみたて、スマートフォンの画面を指でなぞって、右へ左へ自在にラジコンカーを操縦したいと思います。どんな操作が便利でしょうか。 指をタップした点から前に滑らせると、ロボットカーが前進し、右に滑らせると、右に旋回し、左に滑らせると、左に旋回する、タップした点から滑らせた距離が大きいほど、速度が上がる、

          プログラムと電子工作・ラジコンカー(3)ジョイスティック風アプリ

          プログラムと電子工作・ラジコンカー(2)プログラムどおりに走行

          第1段階で、写真1 のように車体が完成していると思います。 第2段階は、モーターをドライブするスケッチの作成です。スケッチでプログラムした走行パターンどおりに、左折、右折、直進...というように走らせるのが第2段階の目標です。 目標ラジコンカーをスケッチでプログラムした走行パターンどおりに走らせます。例えば、8の字にぐるぐる走行させます。 部品・機材使用する部品は次のとおりです。 電子部品 M5StickC Plus 1台 第1段階で製作したラジコンカー車体 開

          プログラムと電子工作・ラジコンカー(2)プログラムどおりに走行

          プログラムと電子工作・ラジコンカー(1)電子回路設計・製作

          第1段階は、ハードウェアの設計・製作です。 車体キットは、左右の車輪をそれぞれ独立したモーターで駆動する構造です。左右同じ回転数で駆動すれば直進し、差をつければ右や左に旋回します。 今回の設計では後退はできません。前進・後退の切替えは今後の課題とします。 ジャンプワイヤやリード線を切断したり、被膜を剥がしたり、ハンダ付けしたり、電気配線特有の技能が必要となります。ハンダゴテは 300℃以上の温度になります。溶けたハンダが眼に入れば視力低下や失明のリスクがあります。ケガや

          プログラムと電子工作・ラジコンカー(1)電子回路設計・製作

          プログラムと電子工作・ラジコンカーをスマホで操作

          自宅でおそらく10年以上眠っていたタミヤのおもちゃ「壁づたいねずみ」を発見したとき閃きました。「これを M5StickC Plus で操ればラジコンマウスが作れる!」ちなみにこのシリーズ、今でも販売されていますね。 左右の車輪をそれぞれ独立したモーターで駆動する構造です。左右同じ回転数で駆動すれば直進し、差をつければ右や左に旋回します。回転数は Pulse Width Modulation(PWM)で変えればいいはず。 M5StickC Plus とスマートフォンは Wi

          プログラムと電子工作・ラジコンカーをスマホで操作

          プログラムと電子工作・M5StickC Plus2が来た!

          M5StickC Plus2今さらですが、M5StickC Plus2 を買いました。 M5StickC Plus と何が変わったのかは、スイッチサイエンスの Webサイトに説明があります。ケースの色は明らかに異なりますね。 M5StickC(無印)、Plus、Plus2 のそれぞれでスケッチを書き換えるのは面倒です。スケッチを共通化できるのか調べてみました。 Arduino-IDE の準備Arduino-IDE のメニュー「ツール」→ライブラリを管理… で、M5Uni

          プログラムと電子工作・M5StickC Plus2が来た!

          プログラムと電子工作・楽曲演奏(5)SpeakerHATへPWM出力2

          楽曲演奏(2)では、五線譜の音符を一つひとつ鳴らして曲を奏でました。音階に対応する周波数を Pulse Width Modulation(PWM)出力機能を使用して出力しました。 楽曲演奏(3)では、WAVE形式の音楽ファイルのデータをデジタル・アナログ変換(DAC)して出力しました。 今回の楽曲演奏(5)では、WAVE形式の音楽ファイルのデータを Pulse Width Modulation(PWM)変換して出力します。M5StickC の PWM出力は、符号なし 8ビ

          プログラムと電子工作・楽曲演奏(5)SpeakerHATへPWM出力2

          プログラムと電子工作・楽曲演奏(4)割込み処理でDAC出力

          楽曲演奏(3)では、楽曲データを平場(loop() 関数内)でデジタル・アナログ変換(DAC)して出力しました。この方法では演奏速度が CPUクロック周波数によって変化します。 今回の楽曲演奏(4)では、DACの周期をタイマ割込みで発生し、割込み処理で DAC出力します。この方法では演奏速度が CPUクロック周波数などの処理系に依存しません。その他は、楽曲演奏(3)と同様です。 割込み処理とは、人の仕事を例に取ると、書類を作成中に電話がかかってきた時、書類作成を一時中断し

          プログラムと電子工作・楽曲演奏(4)割込み処理でDAC出力

          プログラムと電子工作・開発ツール wav2h.py

          「プログラムと電子工作・楽曲演奏(3)SpeakerHATへDAC出力」編で、WAVE形式の音楽ファイルのデータを const uint8_t wav[] = "・・・"; として埋め込みました。.wavファイルから .hファイルへの変換は python で行っています。 作業手順音楽ファイルは、著作権、著作隣接権ともに切れていると説明のある下記の Webサイト https://classix.sitefactory.info/ からダウンロードします。例では、ヴィヴァルデ

          プログラムと電子工作・開発ツール wav2h.py

          プログラムと電子工作・楽曲演奏(3)SpeakerHATへDAC出力

          楽曲演奏(2)では、五線譜の音符を一つひとつ鳴らして曲を奏でました。音階に対応する周波数を Pulse Width Modulation(PWM)出力機能を使用して出力しました。 今回の楽曲演奏(3)では、WAVE形式の音楽ファイルのデータをデジタル・アナログ変換(DAC)して出力します。M5StickC の DAC出力は、符号なし 8ビット整数を 0~3.3Vの電圧に変換します。 WAVE形式のファイルの構造は、「waveファイル 構造」でググって調べてください。ここで

          プログラムと電子工作・楽曲演奏(3)SpeakerHATへDAC出力

          プログラムと電子工作・楽曲演奏(2)SpeakerHATへPWM出力

          M5StickC(Plusなし)には、内蔵スピーカーがないので、音を鳴らすには SpeakerHAT を外部接続します。M5StickC Plus につないでもいいです。 とりあえず、内蔵スピーカーと SpeakerHAT でどのくらい異なるのか、やってみたいと思います。Pulse Width Modulation(PWM)出力を使用して、「どんぐりころころ」と「チューリップ」を演奏します。 目標外部接続した SpeakerHAT で音を鳴らします。 「どんぐりころころ

          プログラムと電子工作・楽曲演奏(2)SpeakerHATへPWM出力