6: 2011-07-11 (月) 12:30:43 yoshida ソース 7: 2011-07-12 (火) 13:18:25 yoshida ソース
Line 27: Line 27:
AX-S1の操作は不要になりましたので、関連する関数を削除します。 AX-S1の操作は不要になりましたので、関連する関数を削除します。
合わせて、不要になる変数も削除します。~ 合わせて、不要になる変数も削除します。~
-#ref(gcc_edit_1.png,100%)+#html{{ 
 +<pre class="brush:c"> 
 +#include <fd.h> 
 +void main (void) { 
 +  uint8_t ReadData; 
 + 
 +  fd_SetBeepCondition (FD_BEEP_MMI | FD_BEEP_PACKETERR | FD_BEEP_LOWVOLTAGE | FD_BEEP_BOOTUP); 
 +  fd_SetUVThreshold (7.4); 
 +  DX_ChangeBaudrate (1000000); 
 + 
 +  fd_DXSetTorqueLimit (1, 154); 
 + 
 +  while (!fd_rx_buff ()) { 
 +   DX_ReadByteData (100, 36, &ReadData, 10, NULL); 
 +   fd_printf ("%3d\r", ReadData); 
 +   fd_DXSetPosition (1, ReadData * 3); 
 +   if (fd_GetPB ()) { 
 +     DX_WriteByteData (100, 36, 0, 10, NULL); 
 +   } 
 +   fd_Wait (10); 
 +  } 
 +
 +</pre> 
 +}} 
 +#ref(down_arrow.png) 
 +#html{{ 
 +<pre class="brush:c"> 
 +#include <fd.h> 
 +void main (void) { 
 + 
 +  fd_SetBeepCondition (FD_BEEP_MMI | FD_BEEP_PACKETERR | FD_BEEP_LOWVOLTAGE | FD_BEEP_BOOTUP); 
 +  fd_SetUVThreshold (7.4); 
 +  DX_ChangeBaudrate (1000000); 
 + 
 +  fd_DXSetTorqueLimit (1, 154); 
 +  fd_DXSetPosition (1, 300); 
 + 
 +  while (!fd_rx_buff () && !fd_GetPB ()) { 
 +   fd_Wait (10)
 +  } 
 +
 +</pre> 
 +}}
AX-12+のホーンを回転させれば手は開きますので、[[fd_DXSetPosition>FDIIILIB#nbe84864]]を使用します。~ AX-12+のホーンを回転させれば手は開きますので、[[fd_DXSetPosition>FDIIILIB#nbe84864]]を使用します。~
#ref(AX12Hone.png,100%) #ref(AX12Hone.png,100%)
Line 39: Line 81:
**負荷を読み込む [#n3c87f70] **負荷を読み込む [#n3c87f70]
先ずAX-12+から読み込んだ負荷の値を保存するための変数を宣言します。負荷を取得する関数([[fd_DXGetLoad>FDIIILIB#e1ca8211]])が用意されていますので、引数として必要なint16_t型で宣言しています。 先ずAX-12+から読み込んだ負荷の値を保存するための変数を宣言します。負荷を取得する関数([[fd_DXGetLoad>FDIIILIB#e1ca8211]])が用意されていますので、引数として必要なint16_t型で宣言しています。
 +#html{{
 +<pre class="brush:c">
 +#include <fd.h>
 +void main (void) {
 +  int16_t LoadData;
 +
 +  fd_SetBeepCondition (FD_BEEP_MMI | FD_BEEP_PACKETERR | FD_BEEP_LOWVOLTAGE | FD_BEEP_BOOTUP);
 +  fd_SetUVThreshold (7.4);
 +  DX_ChangeBaudrate (1000000);
-#ref(gcc_edit_2.png, 100%)+  fd_DXSetTorqueLimit (1, 154)
 +  fd_DXSetPosition (1, 512);
-- fd_DXGetLoad +  while (!fd_rx_buff () && !fd_GetPB ()) { 
-アクチュエータの負荷を取得します。+   fd_DXGetLoad (1, &LoadData); 
-第1引数 DynamixelのIDを指定します。AX-12+のIDは1です。~ +   fd_printf ("%5d\r", LoadData); 
-第2引数 負荷を保存する変数のアドレスを指定します。+   fd_Wait (10); 
 +  } 
 +
 +</pre> 
 +}} 
 +***[[fd_DXGetLoad>FDIIILIB#e1ca8211]] [#cebc7456] 
 +アクチュエータの現在の負荷の値を取得します。
 +''第1引数''は、DynamixelのIDを指定します。AX-12+のIDは1です。~ 
 +''第2引数''は、負荷の値を保存する変数のアドレスを指定します。
---- ----
変数名のLoadDataは、負荷データという意味です。変数名は何でも構いませんが、後で見直した時に、何のための変数なのかが直ぐ分るような名前にしましょう。 変数名のLoadDataは、負荷データという意味です。変数名は何でも構いませんが、後で見直した時に、何のための変数なのかが直ぐ分るような名前にしましょう。


トップ   差分 リロード印刷に適した表示   全ページ一覧 単語検索 最新ページの一覧   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom