Open5
Rust-embedding
Motivation
- 組み込みとRust の相性がいいらしい
- ハードウェア楽しそう
- arduno や ラズパイ は △
Short Term Goal
- とりあえず 使えそうな OSS のコードを探す(ザっと見た感じ一発屋で更新が止まっているのが多い😇)(Rust & 組み込みやってる人が少ないから OSS のメリットが活かせない印象🙄)
- Rust で motor をイイ感じに制御する
- Lチカだと使い道がわからないがモーター動かせるとだいぶ夢が広がる
現在の知識&memo
- hardware driver がハードによって結構違うっぽい?
- hardware abstraction layer を挟むとヨサソウ?
- 非同期処理・並列処理つらそう
- 組み込みの類型: Embedded Linux / RTOS / Bare Metal
- Bare metal は OS なしの実装を指しているっぽい. ハードウェアが抽象化されてないのでツラそう
- Rust の 組み込み OSだと Drone OS というのがある. ドキュメントもそこそこ充実している
- tock os がデファクトぽい
ユーザーランドは libtock-c と libtock-rs で c 実装と Rust 実装がある.
デバッガ
むずかしいぽよ~😇
golang の gobot というプロジェクトがあるようだ.
ググラビリティ
- rust マイコン
モーターについて
- パルスの間隔で回転速度を制御するらしい
- 回転方向・速度・現在の状態などが手に入ると嬉しい
- DC モーター
https://github.com/Robotics-BUT/DCMotor-firmware
robotics sdk and simulator
c interface