北の国から

忘れたことを思い出す為の記録

進捗状況とタイマ周りのやらかし

かくにんすること

LED
モーター
ブザー
スイッチ
赤外線センサ
ジャイロセンサ
エンコーダ

前回からの進歩

前回の投稿では

  • 基板到着
  • はんだ付けと仮組み

までが済んでいました.

あれ以降で行ったことは,

  • ジャイロ購入
  • モータ動作確認
  • エンコーダ動作確認
  • ブザー動作確認
  • ジャイロ動作確認

です. ジャイロはAmazonでアホほど安く売ってるMPU6050を買ってそのままポン付けしています.

I2CでWhoAmIとコンフィグの設定は確認しました.
そこらへんはまた別で記事にしたいと思います.

動作の様子

スイッチ押したらピピーって鳴ってモーターが回るようにしてます.

愉快ですね.

ここまでで引っかかったこと

モーターを回してブザーを鳴らすまでにやっちまったことの数々をお伝えします.

その①:クロック供給忘れ

__HAL_RCC_GPIOx_CLK_ENABLE(); を呼び忘れていたことでPWM出力用のpinにクロックが供給されておらず,
outputしても出力がされていませんでした(ブリュリュ)

その②:はんだ付け不良

PWM出力用のpinがかな~~り見づらい感じにはんだ不良で導通していませんでした.(ブリュリュ)

その③:ハンドラの初期化忘れ

TIM_HandleTypeDef 型で宣言される変数をクラスで所持する形にしていたのですが,コンストラクタでこいつを初期化するのを忘れていたために欲しい設定にできてませんでした(ブリュリュ)

終わりに

上記に示す各種やらかしをしましたが,今となっては動いたのでオールオッケーです.

今の悩みの種は,I2Cを扱うとPWM出力用のピンから謎の波形が出力されるです.

多分ピン設定とかだと思うので,原因を探らないとなぁ

MCP73831を用いたLiPoバッテリ充電器

イントロ

秋月で売っているLiPo充電コントローラMCP73831(商品ページ)を使って
LiPoの1cell用の充電器を作って充電できたのでここに記します.

1個50円のICでこんな簡単に充電器作れるんか…と感動しています.

回路図

f:id:r_u__r_u:20190628045144p:plain
LiPo充電器の回路図

回路図はこんな感じです.

注意点として,C1,C2は10nFではなく4.7μFです.
また,R1の抵抗を変更して充電電流を決めます.(以下図参照)

f:id:r_u__r_u:20190628045612p:plain
データシートp6より

私はUSBで充電するため,あまり充電電流を取りすぎないように100mAで設定しています.

実物の写真

f:id:r_u__r_u:20190628050053j:plain
作った充電器

結構ちっちゃく作れたので満足してます.

4.7μFが無かったので2.2μFを2個並列につけています.(よくない)

終わりに

最後になりますが,使っているバッテリは千石電商3.7V400mAhです.

最初はIndoor Airplaneで買おうと思っていたのですが,容量対値段的にこっちにしました.

仮組みのお披露目

基板が届いた

f:id:r_u__r_u:20190625235003j:plain
ガチャ結果は5枚→6枚

思ってたより好きな色味の赤でいい感じです.
上部に開いてる穴がいい感じです.

はんだ付けと仮組み

はんだ付けをして,モチベーションを上げるためにモーターとタイヤを取り付けました(かっこいい)

めちゃめちゃ後ろ重心なので前側が浮いてます.
滑り材でかさましたいですね…

f:id:r_u__r_u:20190625234958j:plain
nucleoと比較

f:id:r_u__r_u:20190626000822p:plain
迷路とのサイズ感

機体幅は90mm,長さは100mmです.
斜め走行するときには幅が110mm以下である必要があるのでそれを満たすサイズにしています.

迷路中でのその場回転も問題なくできるはず.

マイコンへの書き込みとLチカ

前回の記事で書いた環境でLチカを試しました.

ちゃんと動いて安心しました

今後の予定

モーター回します.
センサ回路一つ分を動作確認して残りを実装します.
あと,ジャイロセンサをまだ買ってないので買います.

ひとまず書き込めて安心 !