本項目では、VstoneMagic(以下「本ソフトウェア」と記述)のメインウィンドウの機能、及び環境設定について説明します。
1. メニュー・ツールバー †
メインウィンドウに備わったメニュー・ツールバーの各項目の機能を説明します。ツールバーはメニューの特定の項目と同じ機能が割り当てられたもので、メニューの項目に該当するツールバーのボタンアイコンを項目名の後のカッコに表示します。
ファイル †
- ワークスペースの新規作成( ) … 新しいワークスペースを作成します。
- ワークスペースの読み込み( ) … ファイルからワークスペースを読み込みます。
- 最近使用したワークスペース…最近使用したワークスペースの一覧が表示され、クリックしたワークスペースを開きます。
- ワークスペースの保存 … ワークスペースの設定を保存します。なお、本項目をクリックしなくても、ワークスペースの設定はソフトウェアで都度行われます。
- (現在開いているクラスファイル)の保存( ) … 現在編集しているクラスファイルを保存します。
- 全て保存( ) … 現在開いている全てのクラスファイルを保存します。
- 終了 … 本ソフトウェアを終了します。
デバッグ †
- ビルド( ) … プログラムをビルドします。前回のビルドからプログラムが変更されていない場合、ビルドは行われません。
- リビルド … 前回のビルドからプログラムが変更されていない場合でも、全てビルドを行います
- デバッグ( ) … プログラムをビルドし、デバッグ実行します
- 中断( ) … ビルド・実行中のプログラムを中断します。
- ステップイン … (現在のバージョンでは対応していません)
- ステップオーバー( ) … (現在のバージョンでは対応していません) )
- ステップアウト( ) … (現在のバージョンでは対応していません)
設定/通信 †
- 接続設定 … ロボット本体の接続設定画面を開きます。
- 接続(選択した接続先) ( ) … 現在選択している接続先のロボットに対して、通信開始・終了を行います。通信中は項目にチェックが付きます
- 仮想ロボットビューアの表示( ) … 仮想ロボットビューアを開きます
- Javaの環境設定 … Javaの環境設定画面を開きます。
- コマンドブロックの追加 … ツールボックスに新しい命令ブロックを追加します
- 環境設定の初期化 … 現在の環境設定を初期化します。初期化すると、独自に追加した命令ブロックなどが削除される場合がありますのでご注意ください。
- アプリケーションの管理 … 現在作成しているプログラムをロボット本体にアプリケーションとして登録するための設定画面を開きます。
ウィンドウ †
- 基準ポーズ … 基準ポーズのウィンドウを開きます。既に開いている場合、ウィンドウをアクティブにします。また、開いている場合、項目にチェックが付きます
- ポーズエリア … 上記の操作をポーズウィンドウに対して行います。
- ウォッチ … 上記の操作をウォッチウィンドウに対して行います。
- プロパティ … 上記の操作をプロパティウィンドウに対して行います。
- エクスプローラ … 上記の操作をエクスプローラに対して行います。
- ツールボックス … 上記の操作をツールボックスに対して行います。
- コンソール … 上記の操作をコンソールウィンドウに対して行います。
ヘルプ †
- バージョン情報 … ソフトウェアのバージョンを表示します
- アップデート … VstoneMagic及びロボット本体のアップデートを行います。
- VstoneMagicのアップデート … VstoneMagicの最新版をオンラインよりダウンロードしてアップデートします。
- ロボット本体のアップデート … 現在通信しているロボット本体をアップデートします。適用されるアップデートは、ロボット本体の設定モードからのアップデートと同じです。
- ライブラリのアップデート … VstoneMagicで使用する開発ライブラリ(参照するjarファイル)をオンラインよりダウンロードしてアップデートします。ロボット本体の開発ライブラリのアップデートは行われないため、別途ロボットをアップデートしてください。
2. ステータスバー †
メインウィンドウの下部は「ステータスバー」と呼ばれ、現在の接続先など、ソフトウェアの状態(ステータス)を表示します。
3. 環境設定 †
本項目では、ソフトウェアの環境設定やワークスペースの各種設定について説明します。
Javaの環境設定 †
Javaの環境設定では、本ソフトウェアで使用するJDK(Java Development
Kit)の設定、及びビルド時に標準で参照するjarファイルの設定を行います。JDKは本ソフトウェアのインストール時に自動的にインストールされ、本ソフトウェアからはそのJDKを標準で利用します。
Javaの環境設定画面は、メニューの「設定/通信」→「Javaの環境設定」をクリックすると開きます(下図参照)。各部の概要は次の通りです。
「JDKへのパス」は、本ソフトウェアで使用するJDKのシステム一式のファイルパスを設定します。設定の変更により、本ソフトウェア以外でインストールしたJDKを利用可能ですが、ロボット本体側にも対応するJDKがインストールされていないと正しく動作しないため、設定変更の際はご注意ください。
「デフォルト参照jar」は、プログラムのビルド・実行時に参照するjarファイルを設定します。ここで設定したjarファイルは、どのワークスペースのプログラムに対してもビルド・実行時に必ず参照されます。「jarの追加」をクリックするとファイル選択画面を開き、追加するjarファイルを選択できます。また、登録したjarファイルを削除したい場合は、削除するファイルの項目を選択して「削除」ボタンをクリックしてください。
ロボットの通信設定 †
ロボットの通信設定では、動かすロボット本体の通信設定の登録・複製・変更・削除が可能です。基本操作は「2.プログラミング」で紹介しましたが、ここでは本設定に関する各機能・設定項目について説明します。
ロボットの通信設定画面は、メニューの「設定/通信」→「接続設定」をクリックすると開きます(下図参照)。各部の概要は次の通りです。
画面上部には、登録しているロボットの通信設定がリストアップされています。リストアップされた項目をクリックすると各通信設定を選択でき、その状態で「設定変更」をクリックすると選択した通信設定の詳細設定画面を開きます。
通信設定の詳細設定は、チュートリアルで「host」の項目を接続先のロボットのIPアドレスに書き換える際に使用しましたが、それ以外に、ロボットに関する各種設定項目が表示されています。ここでは、それらの概要について簡単に説明します。なお、基本的に「host」以外の項目はあらかじめ適切な値に設定されており、書き換えることで正しくロボットが動作しなくなる場合がありますので、ご注意ください。
- debugport … Javaのデバッグを行う際に使用するポート番号
- host … 接続先のロボットのIPアドレス(host名)
- password
- 「username」に対して設定されているパスワード。「username」と「password」は、プログラムの実行・ファイル転送時に、ロボットへアクセスするためのアカウントとして使用されます。
- recvID … ロボットに接続されたモータIDの設定(受信側)。
- rootpath … ロボットへのファイル転送時に転送先となるロボット内部のパス
- sendID … ロボットに接続されたモータIDの設定(送信側)。
- username … ロボットへのファイル転送時に接続するアカウントのユーザID。
ワークスペースのプロパティ †
ワークスペースの設定は、一部を除いて、基本的にソフトウェアからプログラミングなどの操作に応じて自動的に設定が追加・変更されます。現在のワークスペースの設定を確認する場合は、エクスプローラでワークスペースの項目(一番根元)を右クリックして表示されるメニューより「プロパティ」をクリックします。
ワークスペースの設定項目の概要は以下の通りです。これらの設定の多くは、ソフトウェアで自動的に追加されたものなので、設定を変更すると正しくプログラムをビルド・実行できなくなる場合があるのでご注意ください。
- classPath … プログラムの実行時に設定されるクラスパス
- DefaultJarFiles(編集不可)
- プログラムのビルド・実行時に参照するjarファイル。Javaの環境設定の「デフォルト参照jar」と同じ
- execOption … プログラムの実行時にコマンドラインで与えられるオプションの文字列
- imports … 「globalVariables」や「mainFuncName」で参照が必要なimportの設定
- globalVariables … プログラム内で使用できるグローバル変数
- mainFuncName … メインメソッド名(パッケージ・クラス名を含む絶対パス)
- mainFuncArgument … メインメソッドの引数の設定
- モータの衝突回避機能を変更できるようにする
- ロボットがモータの衝突回避機能に対応している場合、その機能の有効・無効をポーズエリアやプログラム中から変更できるようにするかの設定
- ターゲット
- ターゲットとなるロボットの機種名。この項目の設定により、ツールボックスで使用できる命令ブロックの種類などが切り替わる
- ターゲットとなるロボットの機種名。この項目の設定により、ツールボックスで使用できる命令ブロックの種類などが切り替わる
モータの衝突回避機能は、2018年2月現在未対応です。今後のアップデートで対応予定です。