倒立振子こんにちは、かずタコです。セミの声が聞こえるようになってきました。最近趣味の電子工作の更新ができていませんが、実はセンサのところで詰まっています。資料の指示を無視して独自路線で行ったくせに何やってんだという感じですが、詰まってしまったことは仕方ないのでその辺のトラブルシューティングを記事にして市今いましょう。いう記事が、もしかしたら誰かの役に立つかもしれないのでね。́・ω・`)といったトラブルです。termで表示しようっていう超シンプルなものです。「あれ、表示ミスったかな?」と思ってSW4STM32のデバッグモードで変数を直接覗いてみました。そちらでも値は0のままで、そもそも通信ができていない疑いが出てきました。センサはI2Cでマイコンと通信していますが、今まで別の加速度/角速度センサと同じような通信をしたことがあったので、通信部分の書き方はおかしくないはず...そう思って、過去に使ったセンサとソースの一部(デバイスのアドレスとかレジスタのアドレスとか、センサの初期化部分とか)を、今回使う予定のマイコンで通信を試してみました。通信できない...うん...?怖くなって、過去に通信できていたマイコン・センサ・ソースで試しましたがこちらは通信できました。ここまでを整理すると、現マイコンで通信ができない原因として作った回路がおかしいマイコンの通信用ピンが死んでるCubeMXで吐いた設定用コードがおかしいセンサ(MPU6050)が壊れてる以上の4つを考え、一個ずつ潰していきました。1、2に関しては一度にまとめてチェックしました。やり方としては、通信が確認できた過去のセンサ、ソース(ピン設定も全部込み)を、今回使う予定のマイコンにぶち込んで動かどうかチェックします。結論を言うと普通に通信できました。これで1、2の可能性はなくなりました。ピンアサインが怪しいとにらみました。いうのも、今回は最終的な倒立振子で必要になる部品すべてを基板に実装したので、使う予定のペリフェラルを全部設定しておきました。変な信号が入ってICが壊れるかもしれないので。いうわけで、エンコーダの読み取りで使うタイマだったり、DACで使ってるタイマだったりがI2C用のタイマと競合したりGPIOの設定がまずかったりでエラー起こしてるのかなぁと睨んだわけです。確かめ方としては、マイコンのデフォルト設定状態から少しずつ倒立振子用のペリフェラルを追加していき、先のセンサと通信ができなくなるタイミングをエンコーダのタイマ...OKDAC...OKとなるとGPIO...?LED用のGPIOはOK,センサ電源用のGPIOもOKとなるとモータドライバの信号用...?あ、通信できなくなったどうも、たった一つGPIOをOUTPUTにするかしないかで通信できるかどうか変わってしまいました。具体的にどこのピンなのかとか、コードどんなんよ、みたいな意見はあると思うんですが、とりあえず今はメモ書きレベルで一旦公開します。う~んGPIOごときで...なぜ...まあピンの場所変えれば済む話なので、そこまで致命的な修正はなさそうで良かったです。4番はまだ試せてないですが、Amazonで2個入りを買っていたので片割れを試してみることにします。ほとんど文章で分かりにくいかと思いますが、最近また忙しくなってきてあまり時間が取れないのでこれくらいで勘弁願います。トラ技発売から一月以上経ってしまいましたが、自分のペースでゆるゆる進めていきたいです。いうわけで今回はここまで。皆さんお久しぶりです。part2:回路を作るトラ技2019年7月号の倒立振子を作っていくN番煎じの記事です。...2019-07-10雑記:ゼロプレッシャーピンソケットを見つけたこんばんは、お久しぶりです。part1:部品の選定と購入こんにちは、この前後輩がカブトムシを捕まえてきました。(6)月別アーカイブスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。