FROG30代後半のエンジニアが日々の出来事、感じたことをつらつらと書いています。2023昨日は私の実家に行ってきました。私の妹がマンションに住んでいるのですが、どうも騒音トラブルに発展しそうな勢いで、驚きを隠せません・・・。数か月前に当事者同士で一度話し合い、一旦は収まったそうです。発生源は妹の隣の部屋と思われる模様。似たような年齢の子がいるそうです。落ち着いたところで、1週間前くらいに再発。文書と、騒音発生時刻と内容を事細かに記された表がきたそうです。私も写真で確認しました。少なくとも妹家の隣人に子どものいる家庭があるのですが、妹以外のご家庭にはそのような文書は投函されていないとのこと。文書からいろいろとヤバ目の雰囲気を醸し出しており、全文を通すには若干きつい(怒りがこみ上げてきそうという意味で)内容でした。早いうちに自治体の無料弁護士相談に行くそうです。私からはなるべく旦那さんに対応してもらったほうがいい旨を伝えてきました。経験上、男女での対応差の存在は拒めないので・・・。あとは、文書差出人が誰かは明確に分かる記述はなかったので、怪文書として通報するとか。マンションの騒音トラブルは、私もまったく無縁というわけではないですが、直接注意を受けたり、逆にしたり、というところまでには至っていません。一軒家も騒げば騒音トラブルに発展しますからねぇ。窓を開ける時期になると、マンション玄関の向かいの一軒家からピアノの練習音が鳴りだすし。精神状態が悪いと怒りに変わる・・・。半分近くは過去使われていた教材での解説だったので、動画再生はスキップしました。残りはセントラルからの値書き換えの実装が残っているので、ループバックテスト的なコードを実装しようと思います。今後はクローズに向けていきたいですが、やはり何かシステム構築してみたいなというところ。システムモデリングはやらない予定・・・。隣の部屋の状態をモニタリングできるような機能かなぁ。ループバックテストの実装を終えたら、ドーターボードの製作をしようと思います。実施内容おもちゃの整理、洗面台清掃(現時点では未完。5/21~5/27で5日間chocoZAPに通った。ランニングマシンとエアロバイクで、合計45分の有酸素運動を実施。月曜は疲労を感じて休み、金曜と土曜は実家に行く関係で休み。●5/23(火)信玄餅のアイスを食す。気温が高くなってきたからか、食欲が増してきている感がある・・・。●5/26(金)イオンで肉厚のあるハンバーガーを発見!買ってしまった・・・。2023chocoZAPに通い始めてから1週間経ちました。毎日通うことができました!来週が鬼門ですね。タスク●BLE通信の学習Udemyの講座で学習中。この講座は動画再生時間がバラバラなので、項目数で進捗率を測るのは何とも難しいところです。「NUCLEO-F411RE」と「X-NUCLEO-BNRG2A1」を使ってハンズオンで受講しています。コーディング楽しいですwいい感じに進んでいるので、引き続き進めていきたいと思います。来月中には終わるといいなぁ。5/14~5/20で7日間すべてchocoZAPに通った。ランニングマシンとエアロバイクで、合計45分の有酸素運動を実施。●5/21(日)カップ焼きそばの新作があったので、買ってしまった・・・。妻とシェアして食べることにし、少しでもカロリーを抑えますw先週分はこちらです。2023TIマイコンおよびTI-RTOSの使い方を学ぶ企画の続きです!一番最後の記事は・・・2022/12/01の記事のようでした。この記事からの進捗としては、TCPで通信可能になった、というところです。2022/12/25の記事で一旦TIマイコンの使い方の学習は区切りをつけたのですが、着手できそうになってきたので、再開したいなと思っています。残した項目は、何かしら成果物として形に残すこと。要素技術の学習をしていたので、何か形に残っているわけではないのです。そこで、成果物としてシステム設計、実装を行っていきます。ハードウェア構成について振り返ります。LaunchPad」を使用します。LANポートが出ていることが特徴です。CDC/TCPでの通信が可能になった。・温湿度センサBME280の制御をできるようになった。・I2C接続キャラクタLCDをできるようになった。これらを組み合わせて温湿度ロガー製作を行います。今時は無線があったほうがいいんでしょうけど・・・。無線はまた別の機会に・・・。最終的にどうシステムとして組み上げていくかを検討します。例によって、記事を書きながら考えていきます。その前に、TI-RTOSの機能で、ソフトウェア割り込み(Swi)の機能についてまだ未学習だったため、Swiの学習を先に行います。その後、ハードウェア製作、ファームウェア製作と進めていきます。これは以前ドーターボードをユニバーサル基板で作ろうとしましたが、製作途中で設計ミスに気付いて、心が折れた経緯があります。二度目の失敗は再起不能になりかねないので、慎重に進めていかねば・・・。ハードウェア製作にあたり、Pmodを使って製作するか、専用設計にするかを検討します。ちなみに、これまではブレッドボードを使って要素技術の学習をしてきましたが、ブレッドボードでは配線が多くなり、片付けも面倒なので、何かしらのドーターボードは製作します。Pmod化のメリットは以下のように考えています。・デバイス周りの配線の設計はしなくて済む。・ブレッドボードを使用する必要がなくなる。・Pmodに対応した評価ボードを使用する際に、挿し込めば使用可能。(最近はルネサスの評価ボードがPmodに対応している)デメリットは、Pmod対応モジュールの製作に時間がかかること。Pmodの規格を調べて、配線設計して・・・となると、専用設計よりは時間がかかるであろう。今後のことを考えると、Pmod化しておくほうがよいか・・・。今回使用するデバイスについてはPmod化して、ドーターボードもPmodで受けられるように設計しよう。次にファームウェア製作。基本的にはシステムモデリングの結果に従って実装していきます。TIのSDKは複雑で容量も結構食うので、できればEthernet以外は必要な部分だけ取り出したい・・・。問題は時間がかかること。ここは割り切ってSDKに完全にべったりにするしかないかなぁ・・・。結局時間がかかりすぎると飽きたり別のテーマに着手したくなったりと、収拾がつかなくなるからなぁ。改良については一旦組み上げてからにしよう。Swiの学習をしたので、まとめてみます。使用した文献は以下の通りです。Interrupts)(Youtube。TI公式ではなさそうです。DSP/BIOSユーザーズ・ガイド(DSP/BIOSの日本語マニュアル。TI-RTOSではないですが、似ている。英文を読む参考にはなりそう。)Swiはソフトウェア割り込みで、ソフトウェアで起動する割り込み処理です。優先度はHwi(ハードウェア割り込み)より低く、Task(タスク)より高いです。文献Bによると、「Hwiスレッドの続きの処理を行うイメージで用いられます。」とのことで、使用イメージが示されています。ハードウェア割り込みで静的変数に対する排他制御を行う際、ハードウェア割り込み禁止を行うことで排他制御を実現します。ハードウェア割り込み禁止を長い時間行うと、ハードウェア割り込みによるリアルタイム制御に影響を及ぼしてしまいます。そこで割り込み禁止期間を極力短くします。この短くする手法の1つとしてソフトウェア割り込みを使用する、というものがあります。上記に関する内容は文献Cの4.3.6章にも記載があります。「SWIハンドラが完了するまではブロックされているタスクを実行することはできません。状況によっては追加のオーバーヘッドが必要になるとしても、タスクを使用する方が総合的なシステム設計から見れば効果的な場合もあります。個人的には文献Bを読んで、Swiでなくタスクでもいいんじゃないかなぁ・・・と思っていましたが、逆にSwiを使ってブロックしておくのも1つのやり方かと思ったので、状況に応じてSwiを使うのかTaskを使うのか、判断すればよいのかなと思いました。2023毎週末は息子の自転車の練習を行うようになりました。1日当たり30~60分程度。最初にハンドルだけ持って周辺を歩きます。ハンドル操作の練習です。降水確率が高いとマンションの駐車場でのみ練習ですが、あまり面白くなさそうです・・・。今日は降水のリスクが低かったので、ハンドル操作の散歩に行ってきました。これが終わると、ペダルを漕ぐ練習。回す感覚ができていないので、私が押しながら練習します。今日は少しだけ回すことができるようになりました!まだ心が折れていないので、少しずつ進めていきたいと思います。自分がイライラしない、本当に危ないときだけ強めに注意するようにする、というところが自分への課題ですかねぇ。自分のほうは、今週は何となく気力が湧かない1週間でした。なんだろうなぁ・・・。本日夜に整体に行くことにしました。3カ月くらい空いているので疲れが溜まっているのかも・・・。これで改善できるといいなぁ。現在着手中のタスク●BLE通信の学習BLE-UART変換基板のパケット解析について、仕様書も確認しながら資料をまとめ終えた。座学ばかりなのでだいぶモチベーションが下がっているのを感じました。中身自体をちゃんと理解できたかというと、まだまだかなと思います。調べてまとめた、ざっくりとどんなパケットをやり取りしているか理解できたというところまででした。これ以上この題材での取り組みは精神的に難しいと感じたため、一旦区切ります。詳細の理解については別題材に先送りします。続いてUdemyの講座で学習を継続します。受講講座ではハンズオン形式のパートもあり、これを活用して詳細を学んでいきます。必要となる器材は「NUCLEO-F411RE」と「X-NUCLEO-BNRG2A1」です。前者のマイコンボードは持っている(はず、捨てていなければ)ので、BLE拡張ボードの購入のみ行いました。動画を見つつ、到着次第再開します。今週もほとんど触りませんでした・・・。本日コワーキングスペースに来ていますが、今日はこの検討を少し進めようかと思っています。このタスクについての前回までの進捗は、4/1に温湿度ロガーの製作を決め、システムモデリングまで行った状況です。実装のフェーズに入っていく予定です。別記事を立てて、どう進めるか検討します。継続できなかったorz娘を迎えに行き、少し娘の思うがままに散歩していたら、chocoZAPが開店していた!2022年8月にもchocoZAPの入会を検討しましたが、この時は隣駅にしかなかったので、入会しませんでした。3日ほど、利用イメージを検討していました。結果、子どもたちの入浴の対応が終わり、落ち着いたところでchocoZAPに行こうと考えました。妻からOKが出たので、本日付けで入会しました。●5/9(火)肉漬けの夕食にしてみた。●5/13(土)奥多摩駅の駅ハイで買ってきたボタン肉を食した。缶詰だし、こんなもんかなぁ。2023GWがついに終わりを迎えてしまいます・・・。今度は7月3連休をモチベーションに、明日からの業務に取り組んでいきます!現在着手中のタスク●BLE通信の学習BLE-UART変換基板のパケット解析に取り組み中。一通りパケット解析は完了。あとはBLEの仕様書を確認しながら文書にまとめるのみ。今週もほとんど触りませんでした・・・。ID-01左アームのエラーが消えず。分解してみないと分からなさそうなので、分解してみます。途中、ハーネスを外そうとしたところ、コネクタまで抜けそうに。固く差さっていて、このままだとコネクタまで抜けてしまう。他の箇所のハーネスを外そうとしたら、線が抜けてしまった・・・。これ以上時間を費やすのはメリットがなさそうなので、諦めることにしました。そのまま処分はできないので、極力分解することにします。分解している途中で、左アームのエラーの原因と疑われる個所を見つけた。ねじ穴で挟み込むところにハーネスが巻き込まれていて、断線が疑われるものがあった。