2006/11/18(土)
.............................................................
2006/11/09(火)
.............................................................
2006/10/16(月)
.............................................................
2006/10/12(木)
.............................................................
2006/10/10(火)
.............................................................
2006/10/07 (土)
.............................................................
2006/9/28(水)
.............................................................
2006/09/08 (金)
.............................................................
 |
■高速シリアル通信出来ました!
やったー!
出来たー!
キターッ!!
ATMEGAからMotionProcessorへの高速シリアル通信が成功しました!
MotionProcessorには随時値が格納される変数が8個(V14〜V22)あります。
その1個の変数には10進数で0〜255、16進数で0x00〜0xFFを渡すことが出来て、通信フォーマットは「#001122334455667788crlf」となっています。
"#"の右横の"00"が変数V14に渡す値("88"が変数V22)になるのですが、16進数の表し方が特殊。
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
は
0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?
とキャラクタコードで表さなければなりません。
これが理解・変換処理作成するのにテコズリました。。
最初普通に16進数の値を格納させていたらMotionProcessorはウンともスンとも言いません。
「あれー?」とROBO-LINKや現行の中村博士マイコン内蔵コントローラーをパソコンに繋げて表示させてみると何やら「?」やら「<」といった記号が
表示されているのでASCU表を眺めていると、どーも16進数で0x30〜0x3Fの16個が表示されている様子。
試しに変換処理を作ってみると(これが苦労しました・・・。)ビンゴ!上手くいきました!
ですが喜んでいられるのもつかの間、変数V22に格納されるボタンを長く押すとMotionProcessorが止まってしまう現象に遭遇。
これも「あれれー?」とC言語のHPを見漁ったり会社のC言語得意な人に尋ねたりしていると「改行コード」について恐るべき事実がある事に気付く。それは・・・
改行コードには「CR(\r)」と「LF(\n)」の2種類あるとのこと。。
そういえば通信フォーマットにも「crlf」と書いてあります。私そんなの無視して「LF(\n)」しか記述してませんでした、、、なはは。
ので早速修正してみると上手く動くように!
とまー初めてのC言語開発なので他にも色々ありましたがなんとかATMEGA32でコントローラーを作る目処が立ちました!
これで小さい片手で持てるコントローラーが出来そうです!
色々とアドバイス下さった
いずみかわさん
や
ミッチー
に感謝感謝です!
|
|
|
 |
 |
|
|
2006/09/02(土)
.............................................................
2006/08/29(火)
.............................................................
2006/08/20(日)
.............................................................
2006/06/19(月)
.............................................................
2006/06/16(金)
.............................................................
2006/6/11(日)
.............................................................
2006/06/06(火)
.............................................................
2006/5/27(土)
.............................................................
2006/5/26(金)
.............................................................
2006/05/22(月)
.............................................................
2006/05/16(火)
.............................................................
2006/05/05(金)
.............................................................
2006/05/04(木)
.............................................................
2006/04/23(日)
.............................................................
2006/04/19(水)
.............................................................
2006/04/17(月)
.............................................................
2006/04/15(土)
.............................................................
2006/04/10(月)
.............................................................
2006/04/09(日)
.............................................................
2006/4/1(土)
.............................................................
2006/03/30(木)
.............................................................
2006/03/26(日)
.............................................................
2006/03/25(土)
.............................................................
2006/03/23(木)
.............................................................
2006/03/22(水)
.............................................................
2006/03/21(火)
.............................................................
 |
■忘れないうちにメモ!
そうそう!のむむさんに教えてもらった転倒処理のL3プログラムを解説交えて記述しておこう。
メインのループ処理はラベル「:LOOP」。加速度センサの読み取りはアナログの「5」番ポートに挿している場合で2秒間こけてたら起き上がり動作に
入るという場合上記の画像のようになります。
では解説
VOO = INPUTADC(5)_________________固定変数「VOO」にアナログ5番ポート
__________________________________の値を代入
JUMPIF(V00,<,125,TENTOU)__________その値が「124」以下ならラベル「TEN
__________________________________TOU」へ移動
JUMPIF(V00,>,147,TENTOU)__________その値が「148」以上ならラベル「TEN
__________________________________TOU」へ移動
(N253 = 0_________________________こけて無い場合は配列変数「(253」を
__________________________________クリア
__________________________________配列変数「(253」は0.005秒毎に1カウ
__________________________________ントされるので2秒は400となる
:TENTOU___________________________ラベル「TENTOU」
V01 = (N253_______________________固定変数「VO1」に配列変数「(253」の
__________________________________値を代入
JUMPIF(V01,<,400,TENTOU_END)______固定変数「VO1」が399以下の場合ラベル
__________________________________「TENTOU_END」へ移動
__________________________________すなわち起き上がり動作には入らない
VOO = INPUTADC(5)_________________再度固定変数「VOO」にアナログ5番ポー
__________________________________トの値を代入
JUMPIF(V00,<,125,UTUBUSE_TENTOU)__その値が「124」以下ならラベル「UTUB
__________________________________USE_TENTOU」へ移動
JUMPIF(V00,>,147,AOMUKE_TENTOU)___その値が「148」以上ならラベル「AOMU
__________________________________KE_TENTOU」へ移動
:TENTOU_END_______________________ラベル「TENTOU_END」
分かってしまえば簡単なのですがその分かるまでが大変…。このソースをバチバチ打っていっていたのむむさんに感謝!
ちなみにマスタースレイブのソースは以下の簡単なものです。。
;足ロール
V04 = V14 / 4 + 97 - 40
S23 = 180 - V04
S26 = 180 - V04
;足ピッチ
V05 = V15 / 4 + 97 - 40
S19 = V05 + 21
S20 = 90
S22 = V05 - 60
S30 = V05 - 20
S29 = 91
S27 = V05 + 59
;トンファー
V06 = V16 - 40
S03 = 180 - V06
S14 = V06
;腕
V07 = V17 / 2 + 65 - 40
S02 = 180 - V07
S15 = 180 - V07
;腰
S25 = V17 - 40
|
|
|
 |
 |
|
|
2006/03/19(日)
.............................................................
2006/03/18(土)
.............................................................
2006/03/17(金)
.............................................................
2006/03/11(土)
.............................................................
2006/3/5(日)
.............................................................
2006/02/20 (月)
.............................................................
2006/02/19 (日)
.............................................................
2006/01/29 (日)
.............................................................
2006/01/27 (金)
.............................................................
2006/01/05 (木)
.............................................................
2005/12/29 (木)
.............................................................
2005/12/27 (火)
.............................................................
2005/12/24 (土)
.............................................................
2005/12/24 (土)
.............................................................
2005/12/16 (金)
.............................................................
2005/12/14 (水)
.............................................................
2005/12/09 (金)
.............................................................
2005/12/07 (水)
.............................................................
2005/11/27(日)
.............................................................
2005/11/26(土)
.............................................................
2005/11/13(日)
.............................................................
2005/11/12(土)
.............................................................
2005/11/11 (金)
.............................................................
2005/10/16 (日)
.............................................................
2005/10/03 (月)
.............................................................
2005/09/30 (金)
.............................................................
2005/09/05(月)
.............................................................
2005/08/31 (水)
.............................................................
2005/08/23(水)
.............................................................
2005/08/23 (火)
.............................................................
2005/08/22(月)
.............................................................
2005/08/21 (日)
.............................................................
2005/08/18(木)
.............................................................
2005/07/25(月)
.............................................................
2005/07/24(日)
.............................................................
2005/07/23 (土)
.............................................................
2005/07/02(土)
.............................................................
2005/06/25(土)
.............................................................
2005/06/20 (月)
.............................................................
2005/06/12 (日)
.............................................................
2005/06/11(土)
.............................................................
2005/05/29 (日)
.............................................................
2005/05/21 (土)
.............................................................
2005/05/12(木)
.............................................................
2005/05/11(水)
.............................................................
2005/05/08 (日)
.............................................................
2005/05/05(木)
.............................................................
2005/05/04 (水)
.............................................................
2005/04/12 (火)
.............................................................
2005/04/10 (日)
.............................................................
2005/04/09(土)
.............................................................
2005/04/08(金)
.............................................................
2005/03/27 (日)
.............................................................
2005/03/19(土)、20(日)
.............................................................
2005/03/19(土)
.............................................................
2005/03/15(火)
.............................................................
2005/03/13(日)
.............................................................
2005/03/11(金)
.............................................................
2005/02/12(土) 2/2
.............................................................
2005/02/12(土) 1/2
.............................................................
2005/01/29 (土)
.............................................................
2005/01/01 (土)
.............................................................
2004/07/31 (土)
.............................................................
2004/07/27 (火)
.............................................................
|
■ROBO-ONEとの出会い
そう。忘れもしないこの日です。
偶然この番組を見てしまったおかげでロボットROBOT言うようになってしまいました。
4番目の映像で目を奪われ、5番目の映像で心も奪われてしまいました。
あっ!ちなみに第3・4回の優勝ロボットはado(アド)ですので。
これでみんなもROBO-ONE関係者( ̄ー ̄)♪
|
|