昨日の記事はコヒロさんの「ぼくのかんがえたさいきょうのSTM32開発環境」でした。
AIやC++のライブラリなど、便利なものを積極的に使っていくことは大事だと思います。VSCodeのSTM32向け拡張機能はどうしようもないという記憶でしたが、最近使えるものが出ていたことは知りませんでした(普段はubuntu+gccで開発するので...)。
はじめに
今年はいろいろとバタバタしていてマウス開発がほとんど出来ていないので、どうしようかなと思っていたのですが、某Hさんから登録してないよと脅さrリマインドされたので、個人的に良かったと思う技術書について紹介しようと思います。
コーディング関係、ロボット関係、番外編の3つに分けて書きました。体系的なレビュー記事ではないので、偏りや私見を多く含みますが、それを含めて読み進めてもらえたらと思います。
コーディング関係(C/C++)
- Cの絵本
中学生の頃にお世話になったC言語の本です。概念を説明するためのイラストが豊富で、内容も絞ってあり、はじめてC言語を勉強したときによく読み返した覚えがあります。
プログラミングは初めてで正直どこから手を付けていいのかわからないという人は、こういう本から入ってみるのも良いと思います。
- C言語 ポインタ完全制覇
- C++実践プログラミング
C++をはじめて学んだ際に読んだ本です。言語仕様だけでなくコーディングをする際に意識することなどについても書いてあり、勉強になった部分が多かったように思います。似た感じの分厚い本は他にもいくつかあるので、好みはわかれるかも知れません。
補足説明
ここまで紹介しておいてなんですが、はっきり言うと別にこういった本を読んだらたちまちマウスのコードが書けるようになるというわけではないという点は誤読しないように補足しておきます。
あくまでこれらは言語についての理解をするための本であって、実際に自分でプログラミングが書けるようになりたいなら、実際にコーディングをしていくのが一番だと思います。先輩のサンプルコードとかがもしあるのであれば、手元にこういった本を置きながら1行1行解読するといったこともはじめのうちは効果的だと思います。
ロボット関係
- ROS 2ではじめよう 次世代ロボットプログラミング
ROS 2を使うことになったときに読んだ本です。ROSとは何かという話からそのコードの書き方まで、内容がまとまっていて分かりやすかったです。内容が必要十分というか要点を抑えて解説してあるので、どういったものなのかを理解する際に助けになりました。
- SLAM入門: ロボットの自己位置推定と地図構築の技術
補足説明
マイクロマウス関係ない、と言われそうですね。確かに、直接的にはあまり関係ないです。
ここで紹介した意図は2つあって。1つは普通にマイクロマウスに興味を持つ層であればこういった本も興味を持つのではないかなと。そしてもう1つは、マイクロマウス以外のロボットの話を知っておくことで、他と比べたマイクロマウスの特徴が見えやすくなると思うからです。ある程度マウスの経験があって煮詰まっている感じのある人は、こういう他の視点を入れてみても良いと思います(と、過去の自分に聞かせてやりたい...)。
番外編
- 新・物理入門
ついに技術書ですらなくなったし、紹介するか迷いましたが、これは個人的に出会えてよかったと思う本なので勢いで紹介してしまいます。受験生時代にお世話になった本です。高校物理と大学物理の橋渡しとなるような参考書ですね。これのおかげで古典物理について、よく理解できた覚えがあります。
補足説明
力と運動の関係や、エネルギーの扱いといった基本的な話を理解していることは、マイクロマウスを考えていく上で(というよりものづくり全般において)非常に助けになります。そして色々見聞きしていく中でわかってきたのですが、意外とこのあたりの話を正しくわかっている人は少ないです。
ロボットを作っていく上で、現物をよく観察して手を動かすことと、考えるベースとなる話を学ぶことは、両輪のような関係であると思います。どちらかというと前者寄りの話はよく言われますが、後者の話はあまり聞かないので、今回紹介してみました。
終わりに
個人的に良かったと思う技術書についてや、その使い方や考え方について示しました。
「どうやって技術を身につけるのか」という相談をラボやマウス関係の人から受けることが多いので、そういった人は参考にしてもらえると良いかなと思います。
(まぁ、とはいっても結局1つ1つ経験を積み重ねていくしかない気もしますが...)
明日は今年のロボトレース学生チャンピオンMasAさんの「2022年度のロボトレーサ」です。お楽しみに~。





