組み込みも、はじめの一歩はHello world

2011年6月6日(月)
吉田 彩花舟元 拓斗

図3:ETロボコンでは、開発で必要となる一連の作業を体験できる

新人たちの所属する永和システムマネジメントでは、2年目3年目と経験を積むにつれて、継続的なETロボコンへの参加を通して以下のような成長を期待しています。

年次 チームでの役割 身に付けて欲しいスキル
3年目以降 リーダー リーダーシップ
2年目以降 メンバー 問題解決 モデリング 組み込み初級 システムアーキテクチャ
1年目以降 メンバー 問題解決 プログラミング 組み込み基礎 文章・プレゼンテーション

組み込みソフトウェアって何だ?

  1. [吉田]研修では、Javaを使ってプログラミングを勉強しています。変数、配列、関数、クラス・・・といろいろと勉強しています。でも組み込みソフトウェアを作るのと、Javaでプログラミングするのでは何が違うのか分かりません。組み込みソフトウェアって何なんでしょう?
  2. [舟元]組み込みソフトウェアっていうのは車や電気製品、携帯電話など電子機器の中で動いているソフトウェアだよ。
  3. [吉田]へー。私の身の回りにあるものの中に組み込みソフトウェアってたくさんありそうですね!
  4. [舟元]そうだよー。テレビのリモコンだって、「ボタンが押されたら、赤外線を発信する」というソフトウェアが入っているだろうしね。
  5. [吉田]リモコンかぁ。ソフトウェアが入っているなんて考えたこともなかった。
  6. [舟元]あとは、センサーが接続されていて、自動的に動くものが多いのも組み込みソフトウェアの特徴かな。ETロボコンで使うロボットにも、触れたことに反応するタッチセンサ、光量を測定する光センサといったセンサや、指定した速度で回転させることができるモータといったアクチュエータが接続されているんだ。

図4:ロボットに繋がるセンサーとアクチュエータ
  1. [吉田]センサーとアクチュエータかぁ。人間だと五感と手足みたいな感じですね。ところで、ロボットにはキーボードもディスプレイもないですけど、どうやってプログラミングするのですか??研修で教わったJavaなら、パソコンに繋ったキーボードでプログラミングして、結果はパソコンのディスプレイに表示されるけど。。。
  2. [舟元]そうそう。ETロボコンで使うロボットにはディスプレイはあるけどキーボードはないし、炊飯器や電子レンジなんかは、ディスプレイもキーボードもないよね。こういった組み込みソフトウェアの開発では、パソコン上でソフトウェアを開発して、実際の機械に転送して実行するんだよ。

パソコン上で実行されるソフトウェアは、プログラミング、コンパイル、実行の全てがパソコン上で行うことができます。

図5:パソコン用ソフトウェアのコンパイルと実行

これに対して組み込みソフトウェアは、プログラミングとコンパイルをパソコン上で行い、コンパイル結果の実行ファイルをロボットなど対象のハードウェアに転送して実行します。

図6:ロボット用ソフトウェアムのコンパイルと実行
  1. [吉田]なるほど、プログラミングはJavaと同じようにパソコンでできるのですね。
  2. [舟元]うん。ロボコンではJavaじゃなくて、CやC++っていうプログラミング言語を使うことになるけど、Javaが分かれば、殆ど同じだから大丈夫だよ。
  3. [吉田]C。。。C++。。。大丈夫かな。。。

株式会社 永和システムマネジメント

永和システムマネジメントに2011年入社。文系出身で右も左もプログラミングも分からない中、ETロボコンへの参加を命じられ四苦八苦中。

株式会社 永和システムマネジメント

永和システムマネジメントに2011年入社。学生時代に二度ETロボコンに参戦。配属されてから役に立ちそうな技術・知識を盗むべく奮闘中。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています