Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Javaでレゴロボットを動かしてみよう! 1-おためし編

Javaによるレゴロボットの制御

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2008/03/21 12:00

皆さんは、Javaでも組込み機器のソフトウェア開発ができることをご存知でしょうか? Javaを搭載したデジタル機器・家電製品には、コピーやFAXなどの複合機、携帯電話、カーナビなどがあります。本稿では、レゴロボット「教育用レゴ マインドストームRCX」を使って、組込みソフト開発を一緒に体験してみたいと思います。ディスプレイ上ではなく、実物をプログラムで制御する感動をぜひ味わってみてください。

目次

はじめに

 皆さん、こんにちは! 突然ですが、組込み機器におけるソフトウェア開発(以下、組込みソフト開発)には、どんな開発言語を使用していると思いますか? そうです、一番多いのがC言語です。その他、C++やアセンブリ言語なども使用されています。

 ところで、Javaでも組込みソフトの開発ができることをご存知でしょうか? Javaを搭載したデジタル機器・家電製品には、コピーやFAXなどの複合機、携帯電話、カーナビなどがあります。Javaの開発と言うとWebアプリケーションが多いですが、組込みソフトはどのように開発していくのでしょうか……。

 ここではレゴロボット「教育用レゴ マインドストームRCX」を使って、組込みソフト開発の入り口を一緒に体験してみましょう!

レゴロボットについて

 今回はこのレゴロボットを使用します。

図1 レゴロボット
図1 レゴロボット

 ここがレゴロボットの頭脳にあたる部分で、RCXと言います。

図2 RCX
図2 RCX

 RCXには8ビットのマイコンが内蔵されています。メモリは16KbyteのROMと32KbyteのRAMを搭載していて、実際にユーザープログラムが使用できるのは、11Kbyteです。組込み機器はメモリが少ないです。入力ポートや出力ポートもあり、入力ポートには外部から情報を受け取る光センサーやタッチセンサーなどを接続し、出力ポートにはモーターやランプなどを接続します。

 レゴロボットの制御プログラムは、「LeJOS」というプログラミング環境を使用し、PC上で開発します。コンパイルしてできあがったクラスファイルは、PCに接続しているIRタワーから赤外線通信でRCXに転送します(RCXは前面の黒い部分が赤外線ポートになっています)。組込みソフト開発では、このように開発環境と実行環境が異なる「クロス開発」が一般的です。

図3 赤外線ポートの図
図3 赤外線ポートの図

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • ちば やちよ(チバ ヤチヨ)

    ソフト開発によるジプシー生活を経験後、エンジニア育成に力を注ぐ。組込みの世界にJavaが普及する事を切に願っている。ロッテ・大塚明選手の応援振り付けがまだ半人前の為、日々精進している。

バックナンバー

連載:Javaでレゴロボットを動かしてみよう!
All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5