ラスピコ(Rust x Pico)で使える情報・クレート集

Rust
Sponsored

概要

ラスピコ(Rust x Pico)とは、Rust言語でRaspberry Pi Picoを制御する電子工作のことを指します。艮電算術研究所ではラスピコロボット開発プロジェクトを進めており、それに関連して様々な情報ソースやクレートを作成しています。

ここでは、ラスピコに取り組む際に便利な、艮電算術研究所のリソースをまとめています。

書籍

Rust x Raspberry Pi Picoで実装するIMUからの姿勢情報の取得と応用

ラスピコで、BNO055という慣性計測装置(IMU)から姿勢情報を読み取ることをテーマとした書籍です。それに必要となる手順を一通り扱い、

  • 第1章で、ラスピコ開発のテンプレート・Lチカ
  • 第2章で、シリアル通信を用いて文字列や数値を出力する方法
  • 第3章で、BNO055モジュールの取り扱い方・Raspberry Pi Picoの外部フラッシュメモリに情報を保存する方法

を、それぞれ解説します。

【販売サイト】BOOTH

Rust x Raspberry Pi Picoで実装するIMUからの姿勢情報の取得と応用 - 艮電算術研究所 - BOOTH
Rustで書いたコードでRaspberry Pi Picoを動かし、BNO055というIMUからデバイスの姿勢情報を取得する方法と、そのTIPSのまとめです。 第1章で、Rust x Raspberry Pi Pico(ラスピコ)開発のテンプレート・Lチカ 第2章で、シリアル通信を用いて文字列や数値を出力する方法 第3...

【サポートページ】

Rust x Raspberry Pi Picoで実装するIMUからの姿勢情報の取得と応用 - サポートページ
書籍名 Rust x Raspberry Pi Picoで実装するIMUからの姿勢情報の取得と応用 (艮電算術研究所 - ラスピコロボット開発プロジェクト 進捗報告 Vol.1) 書影 購入 BOOTHからご購入いただけます。 サンプルコー...

記事

Rust x Raspberry Pi Picoで電子工作―実装例集

ラスピコの実装例集です。rp_halクレートが大幅改定される前の記事なので、情報が古くなっている箇所があります(現在、更新作業を進めています)。

組込みRust実装例集―Raspberry Pi Picoで電子工作
概要 この記事は、Raspberry Pi PicoにRust言語を使って組込みを行う際のTips集です。 各電子パーツを使って実現したいことから、対応するコードの記法を探せるようになっています。 適宜追加するので、ちょくちょく見に来てもら...

Rust x Raspberry Pi Pico で超音波測距

ラスピコで超音波測距センサを使用する実装例です。rp_halクレートが大幅改定される前の記事なので、情報が古くなっている箇所があります(現在、更新作業を進めています)。

Rust x Raspberry Pi Pico で超音波測距
概要 この記事では、 Raspberry Pi Pico に超音波測距モジュール HC-SR04 を接続し、それらを Rust 言語によって制御して、物体との距離を測る方法を説明する。 仕様 (※写真と回路図は、 超音波測距モジュールの向き...

クレート

rp_pico_template

ラスピコ開発のためのテンプレート。最低限必要なクレートやメモリ配置の設定を行い、プロジェクト名を書き換えるだけで開発を始められます。

GitHub - doraneko94/rp_pico_template: Template for developing Raspberry Pi Pico in Rust.
Template for developing Raspberry Pi Pico in Rust. - GitHub - doraneko94/rp_pico_template: Template for developing Raspberry Pi Pico in Rust.

serial_write

ラスピコに限らず、シリアル出力を容易にするためのクレートです。文字列はもちろん、浮動小数点数を含む数値の出力が可能です。また、浮動小数点数の指数形式や配列としての表示にも対応しています。

GitHub - doraneko94/serial_write: Simplifying serial output in a no_std environment, both string and numeric.
Simplifying serial output in a no_std environment, both string and numeric. - GitHub - doraneko94/serial_write: Simplifying serial output in a no_std environmen...

rp2040_wait

Raspberry Pi Pico (RP2040)において、時間が不正確なDelayの代わりに、Timerを用いた正確な待ち時間を実現するためのクレートです。その他、特定区間の実行時間を一定にするgate関数も利用可能で、制御プログラムの周期 \(\Delta t\) を一定にするために便利です。

GitHub - doraneko94/rp2040_wait: Crate for more accurate wait times than `Delay` using `rp2040_hal::timer::Timer`.
Crate for more accurate wait times than `Delay` using `rp2040_hal::timer::Timer`. - GitHub - doraneko94/rp2040_wait: Crate for more accurate wait times than `De...

oscillo_serial

シリアル通信の内容をそのまま表示したり、グラフとしてプロットするプログラムです。出力をCSVに保存する機能も備えています。

GitHub - doraneko94/oscillo_serial: Rust application that plots values received via serial communication like an oscilloscope.
Rust application that plots values received via serial communication like an oscilloscope. - GitHub - doraneko94/oscillo_serial: Rust application that plots val...

Comments