15: 2011-10-05 (水) 01:46:45 eid7gud | 16: 2011-10-05 (水) 13:52:21 eid7gud | ||
---|---|---|---|
Line 13: | Line 13: | ||
**サンプルプログラム一覧 [#jcfdc388] | **サンプルプログラム一覧 [#jcfdc388] | ||
- | FREEDOM jr.IIIシリーズは構成が異なっていても、同一のサンプルプログラムとして提供されています。但し、製品の構成により以下に該当するコードを修正(コメントの位置を変更)する必要があります。~ | + | FREEDOM Jr.IIIシリーズは構成が異なっていても、同一のサンプルプログラムとして提供されています。但し、製品の構成により以下に該当するコードを修正(コメントの位置を変更)する必要があります。~ |
: BTH050/BTH051 FREEDOM Jr.III Basic/Complete Kit | | : BTH050/BTH051 FREEDOM Jr.III Basic/Complete Kit | | ||
#html{{ | #html{{ | ||
- | <pre class="brush: c;"> | + | <pre class="brush: c; gutter:false; toolbar: false;"> |
// ★人型へのアクチュエータの割り当て(いずれか1種類を選択 使用環境に一致させる) | // ★人型へのアクチュエータの割り当て(いずれか1種類を選択 使用環境に一致させる) | ||
#include "share/HumanoidSpecAX12.c" | #include "share/HumanoidSpecAX12.c" | ||
Line 25: | Line 25: | ||
:BTH072 FREEDOM Jr.III RX-28 Edition(初期型) | ID2~4及び7~9の出力軸が脚の内側に向いているバージョン | :BTH072 FREEDOM Jr.III RX-28 Edition(初期型) | ID2~4及び7~9の出力軸が脚の内側に向いているバージョン | ||
#html{{ | #html{{ | ||
- | <pre class="brush: c;"> | + | <pre class="brush: c; gutter:false; toolbar: false;"> |
// ★人型へのアクチュエータの割り当て(いずれか1種類を選択 使用環境に一致させる) | // ★人型へのアクチュエータの割り当て(いずれか1種類を選択 使用環境に一致させる) | ||
//#include "share/HumanoidSpecAX12.c" | //#include "share/HumanoidSpecAX12.c" | ||
Line 34: | Line 34: | ||
:BTH072 FREEDOM Jr.III RX-28 Edition(最新型) | ID2~4及び7~9の出力軸が脚の外側に向いているバージョン | :BTH072 FREEDOM Jr.III RX-28 Edition(最新型) | ID2~4及び7~9の出力軸が脚の外側に向いているバージョン | ||
#html{{ | #html{{ | ||
- | <pre class="brush: c;"> | + | <pre class="brush: c; gutter:false; toolbar: false;"> |
// ★人型へのアクチュエータの割り当て(いずれか1種類を選択 使用環境に一致させる) | // ★人型へのアクチュエータの割り当て(いずれか1種類を選択 使用環境に一致させる) | ||
//#include "share/HumanoidSpecAX12.c" | //#include "share/HumanoidSpecAX12.c" | ||
Line 43: | Line 43: | ||
: リモートコントローラとしてSIXAXISを使用 | | : リモートコントローラとしてSIXAXISを使用 | | ||
#html{{ | #html{{ | ||
- | <pre class="brush: c;"> | + | <pre class="brush: c; gutter:false; toolbar: false;"> |
// ★リモートコントローラの選択 (いずれか1種類を選択) | // ★リモートコントローラの選択 (いずれか1種類を選択) | ||
#define SIXAXIS | #define SIXAXIS | ||
Line 51: | Line 51: | ||
: リモートコントローラとしてRC-100Bを使用 | | : リモートコントローラとしてRC-100Bを使用 | | ||
#html{{ | #html{{ | ||
- | <pre class="brush: c;"> | + | <pre class="brush: c; gutter:false; toolbar: false;"> |
// ★リモートコントローラの選択 (いずれか1種類を選択) | // ★リモートコントローラの選択 (いずれか1種類を選択) | ||
//#define SIXAXIS | //#define SIXAXIS | ||
Line 80: | Line 80: | ||
人型用のデフォルト用ホームポジションと、いくつかのモーションデータの定義、さらにはそれらのデータをSDカードへ書込むためのサブルーチンが定義されています。 | 人型用のデフォルト用ホームポジションと、いくつかのモーションデータの定義、さらにはそれらのデータをSDカードへ書込むためのサブルーチンが定義されています。 | ||
- | ***SMPL1.c [#t6bbc743] | + | ***SMPL1(Init).c [#t6bbc743] |
ホームポジションデータ・モーションデータを作成します。モーションデータはSDカード上に作成され、他のサンプルプログラムから読み出して再生することが可能です。~ | ホームポジションデータ・モーションデータを作成します。モーションデータはSDカード上に作成され、他のサンプルプログラムから読み出して再生することが可能です。~ | ||
本サンプルプログラムではキーボードからの入力とコンソール([[SIMPLE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を想定しています。 | 本サンプルプログラムではキーボードからの入力とコンソール([[SIMPLE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を想定しています。 | ||
Line 88: | Line 88: | ||
: m | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | : m | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | ||
: f | 全身硬直(全アクチュエータの位置決め制御がON)になります。 | : f | 全身硬直(全アクチュエータの位置決め制御がON)になります。 | ||
- | : h | 現在のFREEDOM jr.IIIの姿勢をホームポジションとして保存します。 | + | : h | 現在のFREEDOM Jr.IIIの姿勢をホームポジションとして保存します。 |
: c | 全アクチュエータの状態を確認します。 | : c | 全アクチュエータの状態を確認します。 | ||
: ESCキー | プログラムを終了します。 | : ESCキー | プログラムを終了します。 | ||
- | ***SMPL2.c [#r8b03390] | + | ***SMPL2(PlayMotion_KB).c [#r8b03390] |
モーションの再生を行います。 | モーションの再生を行います。 | ||
Line 104: | Line 104: | ||
: m | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | : m | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | ||
: f | 全身硬直(全アクチュエータの位置決め制御がON)になります。 | : f | 全身硬直(全アクチュエータの位置決め制御がON)になります。 | ||
- | : h | 現在のFREEDOM jr.IIIの姿勢をホームポジションとして保存します。 | + | : h | 現在のFREEDOM Jr.IIIの姿勢をホームポジションとして保存します。 |
: c | 全アクチュエータの状態を確認します。 | : c | 全アクチュエータの状態を確認します。 | ||
: ESCキー | プログラムを終了します。 | : ESCキー | プログラムを終了します。 | ||
- | ***SMPL3.c [#uce44ab9] | + | ***SMPL3(PlayMotion_RC).c [#uce44ab9] |
モーションの再生を行います。~ | モーションの再生を行います。~ | ||
本サンプルプログラムではリモートコントローラ([[RC-100B:http://www.besttechnology.co.jp/modules/knowledge/?BTX048%20RC-100B]]/SIXAXIS)とキーボードからの入力とコンソール([[SIMPLE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を使用します。 | 本サンプルプログラムではリモートコントローラ([[RC-100B:http://www.besttechnology.co.jp/modules/knowledge/?BTX048%20RC-100B]]/SIXAXIS)とキーボードからの入力とコンソール([[SIMPLE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を使用します。 | ||
+ | |||
****リモートコントローラ入力 [#da6b7dba] | ****リモートコントローラ入力 [#da6b7dba] | ||
: 1/△ボタン | ホームポジションへ移動します。 | : 1/△ボタン | ホームポジションへ移動します。 | ||
Line 126: | Line 127: | ||
: m | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | : m | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | ||
: f | 全身硬直(全アクチュエータの位置決め制御がON)になります。 | : f | 全身硬直(全アクチュエータの位置決め制御がON)になります。 | ||
- | : h | 現在のFREEDOM jr.IIIの姿勢をホームポジションとして保存します。 | + | : h | 現在のFREEDOM Jr.IIIの姿勢をホームポジションとして保存します。 |
: c | 全アクチュエータの状態を確認します。 | : c | 全アクチュエータの状態を確認します。 | ||
: ESCキー | プログラムを終了します。 | : ESCキー | プログラムを終了します。 | ||
- | ***SMPL4.c [#j87569e4] | + | ***SMPL4(EditMotion_KB).c [#j87569e4] |
モーションの作成・再生を行います。~ | モーションの作成・再生を行います。~ | ||
本サンプルプログラムではキーボードからの入力とコンソール([[SIMPE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を使用します。~ | 本サンプルプログラムではキーボードからの入力とコンソール([[SIMPE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を使用します。~ | ||
Line 136: | Line 137: | ||
****キーボード入力 [#v1783875] | ****キーボード入力 [#v1783875] | ||
- | : l | モーションデータの読み出して、先頭のポーズを選択します。 | + | : l | モーションデータを読み出して、ポーズ1を再生します。 |
- | : s | 編集中のモーションデータの保存。 | + | : s | 編集中のモーションデータを保存します。 |
- | : k | モーションデータの削除。 | + | : k | 保存されたモーションデータを選択して削除します。 |
: n | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | : n | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | ||
: o | 全身硬直(全アクチュエータの位置決め制御がON)になります。 | : o | 全身硬直(全アクチュエータの位置決め制御がON)になります。 | ||
- | : p | 編集中のモーションデータを再生します。 | + | : p | 編集中のモーションデータをポーズ1から再生します。 |
: e | 再生中のモーションを停止します。 | : e | 再生中のモーションを停止します。 | ||
: f | 次のポーズを再生します。 | : f | 次のポーズを再生します。 | ||
: r | 前のポーズを再生します。 | : r | 前のポーズを再生します。 | ||
- | : a | 選択されたポーズのポーズ間の補間方式を変更します。 | + | : a | 再生中のポーズの補間方式を変更します。 |
- | : x | 選択されたポーズのポーズ間の遷移時間を短縮します。 | + | : x | 再生中のポーズの遷移時間を短縮します。 |
- | : z | 選択されたポーズのポーズ間の遷移時間を延長します。 | + | : z | 再生中のポーズの遷移時間を延長します。 |
- | : g | 編集中のモーションの最後に、現在の姿勢を新しいポーズとして追加します。 | + | : g | 編集中のモーションの最後に、現在のFREEDOM Jr.IIIの姿勢を新しいポーズとして追加します。 |
- | : d | 選択されたポーズを削除します。 | + | : d | 再生中のポーズを削除します。 |
- | : i | 選択されたポーズの前に、現在の姿勢を新しいポーズとして追加します。 | + | : i | 再生中のポーズの前に、現在のFREEDOM Jr.IIIの姿勢を新しいポーズとして追加します。 |
- | : m | 選択されたポーズを、現在の姿勢で置き換えます。 | + | : m | 再生中のポーズを、現在のFREEDOM Jr.IIIの姿勢で置き換えます。 |
- | : c | 編集中のモーションデータを破棄します。 | + | : c | 編集中のモーションを破棄します。 |
: w | ホームポジションに移動します。 | : w | ホームポジションに移動します。 | ||
- | : h | 現在のFREEDOM jr.IIIの姿勢をホームポジションとして保存します。 | + | : h | 現在のFREEDOM Jr.IIIの姿勢をホームポジションとして保存します。 |
: I | SDカードにデフォルトのホームポジション・モーションデータを作成・上書きします。主に初回の起動時に利用します。 | : I | SDカードにデフォルトのホームポジション・モーションデータを作成・上書きします。主に初回の起動時に利用します。 | ||
: q | プログラムを終了します。 | : q | プログラムを終了します。 | ||
- | ***SMPL5.c [#f13e2cc0] | + | ***SMPL5(Walk_KB).c [#f13e2cc0] |
+ | 歩行します。~ | ||
+ | 本サンプルプログラムではキーボードからの入力とコンソール([[SIMPE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を使用します。 | ||
+ | ****キーボード入力 [#o57ff856] | ||
+ | : 1 | 歩行を開始します。 | ||
+ | : 2 | 右腕を振ります。 | ||
+ | : 3 | 右旋回します。 | ||
+ | : 4 | 左旋回します。 | ||
+ | : 5 | ホームポジションへ移動します。歩行中の場合は停止します。 | ||
+ | : 6 | 倒れていた場合、起き上がります。 | ||
+ | : n | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | ||
+ | : h | 現在のFREEDOM Jr.IIIの姿勢をホームポジションとして保存します。 | ||
+ | : C | 全アクチュエータの状態を確認します。 | ||
+ | : ESCキー | プログラムを終了します。 | ||
+ | ****歩行中のみ有効なキーボード入力 [#l266c30b] | ||
+ | : 8 | 重心を1cm上げます。 | ||
+ | : 9 | 重心を1cm下げます。 | ||
+ | : w | 前進用に歩幅を5mm広げますが、後進中は歩幅を狭めます。 | ||
+ | : x | 後進用に歩幅を5mm広げますが、前進中は歩幅を狭めます。 | ||
+ | : r | 腰の位置を1mm下げます。 | ||
+ | : t | 腰の位置を1mm上げます。 | ||
+ | : v | 歩行動作速度を早くします。 | ||
+ | : b | 歩行動作速度を遅くします。 | ||
+ | : d | 右側への横歩幅を5mm広げますが、左横歩き中は歩幅を狭めます。 | ||
+ | : a | 左側への横歩幅を5mm広げますが、右横歩き中は歩幅を狭めます。 | ||
+ | : f | 足の持ち上げ量を0.5mm上げます。 | ||
+ | : g | 足の持ち上げ量を0.5mm下げます。 | ||
+ | : s | 歩行パラメータをデフォルト値に再設定します。 | ||
+ | : z | 歩行を減速停止します。 | ||
+ | : c | 歩行を強制停止します。 | ||
+ | |||
+ | ***SMPL6(Walk_RC).c [#u5703b05] | ||
+ | 歩行します。~ | ||
+ | 本サンプルプログラムではリモートコントローラ([[RC-100B:http://www.besttechnology.co.jp/modules/knowledge/?BTX048%20RC-100B]]/SIXAXIS)とキーボードからの入力、及びコンソール([[SIMPLE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を使用します。 | ||
+ | ****リモートコントローラ入力 [#s879ab38] | ||
+ | : 1/△ボタン | 歩行中は減速停止します。停止中は歩行を開始します。 | ||
+ | : 3/×ボタン | 歩行中は歩行パラメータをデフォルト値に再設定します。 | ||
+ | : U/↑ボタン | 歩行中に押し続けることで、前進中は歩幅を5mmづつ広げますが、後進中は歩幅を狭めます。 | ||
+ | : D/↓ボタン | 歩行中に押し続けることで、後進中は歩幅を5mmづつ広げますが、前進中は歩幅を狭めます。 | ||
+ | : R/→ボタン | 歩行中に押し続けることで、右側への横歩幅を5mmづつ広げますが、左横歩き中は歩幅を狭めます。 | ||
+ | : L/←ボタン | 歩行中に押し続けることで、左側への横歩幅を5mmづつ広げますが、右横歩き中は歩幅を狭めます。 | ||
+ | |||
+ | ****キーボード入力 [#qfba0275] | ||
+ | : 1 | 歩行を開始します。 | ||
+ | : 2 | 右腕を振ります。 | ||
+ | : 3 | 右旋回します。 | ||
+ | : 4 | 左旋回します。 | ||
+ | : 5 | ホームポジションへ移動します。歩行中の場合は停止します。 | ||
+ | : n | 全身脱力(全アクチュエータの位置決め制御がOFF)になります。 | ||
+ | : h | 現在のFREEDOM Jr.IIIの姿勢をホームポジションとして保存します。 | ||
+ | : C | 全アクチュエータの状態を確認します。 | ||
+ | : ESCキー | プログラムを終了します。 | ||
+ | ****歩行中のみ有効なキーボード入力 [#c7f14b07] | ||
+ | : 8 | 重心を1cm上げます。 | ||
+ | : 9 | 重心を1cm下げます。 | ||
+ | : w | 前進用に歩幅を5mm広げますが、後進中は歩幅を狭めます。 | ||
+ | : x | 後進用に歩幅を5mm広げますが、前進中は歩幅を狭めます。 | ||
+ | : r | 腰の位置を1mm下げます。 | ||
+ | : t | 腰の位置を1mm上げます。 | ||
+ | : v | 歩行動作速度を早くします。 | ||
+ | : b | 歩行動作速度を遅くします。 | ||
+ | : d | 右側への横歩幅を5mm広げますが、左横歩き中は歩幅を狭めます。 | ||
+ | : a | 左側への横歩幅を5mm広げますが、右横歩き中は歩幅を狭めます。 | ||
+ | : f | 足の持ち上げ量を0.5mm上げます。 | ||
+ | : g | 足の持ち上げ量を0.5mm下げます。 | ||
+ | : s | 歩行パラメータをデフォルト値に再設定します。 | ||
+ | : z | 歩行を減速停止します。 | ||
+ | : c | 歩行を強制停止します。 | ||
- | ***SMPL6.c [#u5703b05] | + | ***SMPL7(Full).c [#h7cb8a09] |
+ | モーション作成・再生・歩行といった一連の操作を取り入れたサンプルです。~ | ||
+ | 本サンプルプログラムではリモートコントローラ([[RC-100B:http://www.besttechnology.co.jp/modules/knowledge/?BTX048%20RC-100B]]/SIXAXIS)とキーボードからの入力、及びコンソール([[SIMPLE TERM:http://www.besttechnology.co.jp/modules/knowledge/?GCC%20Developer%20Lite#STERM]])への出力を使用します。~ | ||
+ | 操作の基本はメニューの選択で行います。 | ||
- | ***SMPL7.c [#h7cb8a09] | ||
- | モーション作成・再生・歩行といった一連の操作を取り入れたサンプルです。 | ||
****モード [#qcf3b6df] | ****モード [#qcf3b6df] | ||
: Edit motion | モーションの作成・削除・再生、ホームポジションの調整を行います。 | : Edit motion | モーションの作成・削除・再生、ホームポジションの調整を行います。 | ||
Line 174: | Line 243: | ||
: Status of DX | アクチュエータの状態を表示します。~ | : Status of DX | アクチュエータの状態を表示します。~ | ||
: Exit | プログラムを終了します。 | : Exit | プログラムを終了します。 | ||
+ | ****Edit motion [#kb769501] | ||
+ | : Load Motion | モーションデータの読み出して、ポーズ1を再生します。 | ||
+ | : Save Motion | 編集中のモーションデータを保存します。 | ||
+ | : Delete Motion | 保存されたモーションデータを選択して削除します。 | ||
+ | : Get Pose | | ||
+ | : Delete Pose | |