# RoBIOSオペレーションシステム

この章ではRoBIOS バージョン4.xのオペレーティングシステムの特徴と内蔵しているデモプログラムに関して説明します。さらに新しいRoBIOSのバージョンでは下記の説明とは機能が異なるかもしれません。

カメラと電源ケーブルを接続すると、EyeBotの準備は完了です。電源装置または充電池を使って約7.2Vを供給してください。電源をオンにすると、グラフィック画面に下記のようなメッセージが表示されます。：

    - RoBiOS  Vx.x -
    ----------------
    RobName 01 Cam:e
    25 MHz  512K ROM
     896Kf 1024K RAM
     Battery-Status
    @@@@@@@@@@@@@@@@
    <I> Hrd Usr Demo

EyeBotはオペレーティングシステムのバージョン番号を表示し、有効なメモリー容量を示します。最終行は４色の入力キーと小さなリセットキーの真上に表示されます。４色のキー（黄、赤、青、緑）はソフトキーとして機能します。すなわち、現在の使用可能な機能が常にグラフィック画面の最終行に表示されることになります。メインメニューにおける機能は下記の通りです。：

- Info EyeBotの関係者について
- Hrd パラメータ設定とカメラ、シリアル線、サーボ、DCモーターなどのテスト
- Usr プログラムのダウンロードと実行
- Demo カメラ機能（白黒またはカラー）、サウンドなどのデモ

EyeBotのRoBIOSオペレーティングシステムには多くの関数が用意されており、ユーザープログラムから直接呼出すことが可能です。それらの関数をコンパイルやダウンロードする必要はありません。詳細については ライブラリーの章を参照してください。

# ハードウェアーの設定'Hrd'

ハードウェアーの設定を行うとき、ハードウェアー特性を設定したり、ハードウェアー記述テーブル(HDT)で定義済みの接続されている全装置をテストするために２つの選択メニューがあります。

    Hardware:

    Set HDT IO  END

パラメータ設定用のサブメニュー'Set'は下記のようにさらに枝分かれます。一方、テスト用のサブメニュー'HDT'では接続されている装置を個々に選択してテストすることができます。

### パラメータの設定'Set'

パラメータ設定用メニュー'Set'によってカメラ（白黒またはカラー）またはシリアル線接続の設定が可能になります。

    Setup:

    Cam Ser Rmt END

### カメラの設定'Cam'

注意： カメラの設定は旧式QuickCamカメラに対してのみ行い、最新のカメラには行いません！

白黒とカラーのどちらのカメラが接続されているかによって、２種類のカメラ設定方法があります。ここでは白黒カメラの設定メニューについて示します。最新のカメラ画像が重ね書きされるため、パラメータ設定の効果を簡単に確認することができます。現在選択されているパラメータ("*"で表示されています)を変更するには＋または−ボタンを押します。"Nxt"を押すと次のパラメータが選択され、"END"を押すと一つ上のレベルのメニューに戻ります。

    CamSetup:

    Bright :   140 *
    Offset :    43
    Contr. :   104
    AutoBr.:   OFF
    Version:   $00
     +   -   Nxt END

### ダウンロード用パラメータの設定'Ser'

シリアル接続用パラメータの詳細については プログラムのダウンロードを参照してください。

### 接続されている装置のテスト'HDT'

HDTで定義済みの接続されている全装置のリストが表示され、個別に選択してテストすることができます。例えば、２つのDCモーター、２つのエンコーダー、３つのPSDセンサーなどで、下記のようなメニューが表示されます。：

     2Motors/ RIGHT*
     2Encodr/ RIGHT
     2Servos/ S11-C
     3  PSDs/  P0-L

    Tst  +   Nxt END

個々の装置は'Tst'で選択します。グループ内の切替は'+'で、異なるグループ間の切替は'Nxt'で行うことができます。

選択される装置に応じて、適切なテストプログラムが起動します。

### 例： サーボのテスト

テスト用サブメニューから個別のサーボを選択した後、そのサーボの角度を制御することができます。

    Servotest:
    Sem: S11-C(-361)

    Angle:  128

    +    -   max END

### 入出力ポートのテスト'I/O'

'I/O'メニューによって、デジタル入力ポート、デジタル出力ポート、パラレルポート、アナログ入力ポートの各ビットの読込み／設定を行うことができます。

    Select a PORT

    Dig Parl AD END

### 例： デジタル入力

すべての入力端子の現在の状態を表示します。

      Digital-In:
      -----------
    Port0 (76543210)
           11011111

                 END

# ユーザープログラム'Usr'

ユーザープログラムのダウンロード方法については プログラムのダウンロードを参照してください。

# デモプログラム'DEMO'

デモプログラムが"demos.hex"ファイルとしてROM内に書き込まれています。これは重ね書きすることも可能です。 メインメニューの"Demo"ボタンを押すことによって開始し、カメラ（白黒またはカラー）、音声、通信ネットワーク、移動ロボット駆動のデモを実行することができます。アスタリスク（＊）を目的のでもプログラムに移動し、"Sel"を押すことで選択します。

      Menu Select
    Camera         *
    Audio
    Network
    Drive

    +   -   Sel END

### カメラのデモ'Camera'

３種類のデモがあり、白黒またはカラーカメラ撮影、カラーカメラ撮影、ズーム効果を実演できます。白黒カメラのデモでは多くの簡単な画像処理を行うことができ、カラーカメラのデモでは画像の取り込みと読み出しを行うことができます。

ここでは白黒カメラのデモについて詳細に説明します。リアルタイムにカメラ画像が表示され、ユーザーは４つまでの画像処理操作を選択することができます。そのとき、操作は指定した順番に実行されます。操作のデフォルトは「処理なし'Norm.'」で、'＋'と'−'ボタンを押すごとに、「処理なし（'Norm.'）」、「ラプラスのエッジ検出（'Lapl.'）」、「ソーベルのエッジ検出（'Sobel'）」、「ディザリング（'Dith.'）」、「差分画像による動作検出（'Diff.'）」の順に切り替わります。また、'Nxt'を押すと操作順序を選択でき、'END'を押すと一つ上のレベルのメニューに戻ります。EyeBotの画面表示速度もフレーム／秒（fps）の単位で表示されます。

    ..........Norm.*
    ..........Norm.
    ..........Norm.
    ..........Norm.
    ..........
    ..........fps:
    ..........16.67
     +  -  Nxt  END

### 音声のデモ'Audio'

音声のデモプログラムが３種類用意されています。：

- 音楽の再生('Mus')
- マイク音量のテスト('Mic')
- 録音と再生('Wav')

    AudioDemos:

    Mus Mic Wav END

### 無線ネットワークのデモ'Network'

注意：このデモを実行するには無線通信モジュールがインストールされている必要があります。
ネットワークのデモプログラムでは下記のデモを行うことができます。：:

- 送信／受信機能のテスト 'Tst'
- テストデータの送信 'Snd'
- テストデータの受信 'Rec'

    Wireless Network

    Tst Snd Rec END

### 移動ロボット駆動のデモ'Drive'

注意：このデモを実行するにはEyeBotを取り付けた移動ロボットが必要です。
このデモプログラムは、移動ロボットをまず直進させ、次に180°回転し、最後に後退させます。

    Drive Demo

    Straight
    Pos:  0.0 x 0.0
    Heading: 0.0

Thomas Bräunl, 2003