ロボットに動きかたを命令するためには、プログラムを作成(プログラミング)する必要があります。
本書ではLEGO Mindstorms NXT を用いて、ロボットプログラミングの方法を解説します。まったくの初心者でも、準備編・基礎編・応用編の順に学習を進めていくことで、ロボットの作りかたを段階的にマスターできるように構成されています。さらに、ライントレース競技編・サッカー競技編では、ロボット競技大会に参加するためのロボット作りの方法を紹介します。
この本には、他のテキストにはない特徴があります。
それは、プログラムの表記方法を工夫したことです。
LEGO Mindstorms NXT では,初心者向けにレゴロボット特有のプログラミング言語、
中・上級者向けにC 言語の開発環境が用意されています。そこで本書では、
(1) 目標となるプログラムのアルゴリズム(PAD)、(2) PAD に対応するC 言
語プログラム(NXC)、(3) GUI プログラム(NXT-SW) の3つを併記することにしました。
初心者から上級者まで、3つのソースを相互参照しながら,ロ
ボットプログラミングを効率よくマスターすることができます。
この本では、「プログラムを初めて学ぶ人」、「LEGOプログラミング(NXT-SW)の経験がある人」、
「ロボット競技大会を目指す人」、「ロボットプログラムを教える先生」それぞれ使い方が異なります。
次に使い方を説明しますので、是非参考にしていただき、ロボットプログラミングの世界を楽しんでください。
まずは、NXTソフトウェア(NXT-SW)でプログラミングを始めましょう。その際は、2章のC言語の文法と、4章、5章、6章で出てくるNXCプログラムは読み飛ばして問題ありません。NXT-SWを駆使して、WROやRoboCup等のロボット競技大会にチャレンジしてみて下さい。 NXT-SWを一通り学んだ後、さらに高度なプログラミングを取得したい人は、再度4章以降の同じ課題をNXC(C言語)で取り組んでみましょう。
LEGO Mindstormsに付属するNXT-SWやROBOLAB等のプログラミング経験者は、次のステップとして並列タスクのような高度なプログラムが作成可能なNXC(C言語)にチャレンジしてみましょう。その際には、PADとNXT-SWを比べながらNXCを理解すると良いでしょう。NXCで学んだプログラミングの知識は、LEGOロボットだけではなく、幅広く応用する事が可能です。
プログラムを理解できるようになったら、6章と7章を参考にロボット競技会にチャレンジしましょう。ロボット競技会は一人ではなく、チームで参加することが多くあります。その際には、8章ロボット作り上達のために、9章コース攻略法を考えよう、10章リフレクションをしようを読んで下さい。きっと、プログラミングだけでなく、ロボット競技会に向けて、役に立つヒントを見つけることができるはずです。
各章のはじめに具体的な学習目標をまとめました。また、各章の最後に演習問題を用意しました。指導の際に適宜ご利用いただければと思います。プログラミングのための環境設定につきましては、付録や本ウェブページを参考にしてください。
『実践ロボットプログラミング』まえがきより抜粋