スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

▼乱数発生プログラム

▼ロボゼロ用乱数発生のプログラムです

使用するユーザー変数は、V110とV111
0~99の乱数を発生し、V110に収納します(V111は計算に使います)

前回UPしたものはバグがあります←システムタイマ(129)からは数値が取得できませんでした
そこで取得先をソフトウェアタイマ(V127)に変更しました(←うまくいきました)
ただ、そのことにより3行ほどプログラムが長くなってます


▼アルゴリズム

ロボゼロのタイマーは、5ミリ秒毎に1カウントです・・・つまり1/100秒ストップウォッチの倍のスピードで動くタイマーになります
その下2ケタを抽出し、乱数として使います
しかし「はたして時間が乱数になりうるのか」という当然の疑問が出てきますが、、、答えは“ノー”・・・乱数ではありません
なぜなら得られる数値は、単に「ループ1周にかかる時間」にすぎないからです

ですが、ループの時間がキッカリ100カウント(500ミリ秒)のタイミングにならなければ同じ数値は繰り返されません
更に、しぐさモーションが発動すれば、ループの起点が変化しズレが生じます
まぁそんな理由で“乱数”としてつかえるワケです

乱数ではない=乱数として使えない わけではないということです

そもそもそんな高度な使い方をしているわけではないので問題はないというわけです


ぱぱっちさんより、INPUTDCコマンドでの乱数取得のアイデアを頂いています
ロボゼロには常に変化する変数がかなり存在し、それらを加減乗除すれば法則性の薄い乱数がまだまだ取得できる可能性を見出して頂きました
また、このアイデア(INPUTDC)はロボゼロが疲れてきたら(バッテリーが消耗してきたら)発動するモーションなども作れるってことを意味していますから、ロビの「お腹すいたー」のモーションをロボゼロでまんまトレースすることも可能です
面白いアイデアを有難う御座いました


▼乱数発生プログラムの導入の注意

プログラムはどこにおいても動作します(まんま、好きなところに貼り付けて下さい)
ただ、変数:V110と変数:V111を既に使っているプログラムには導入できません


▼プログラム

;↓乱数発生プログラム ここから
V110=V127;-------> V110にソフトウェアタイマの数値(最大5ケタの整数)を代入
V111=V127;-------> V111にソフトウェアタイマの数値(最大5ケタの整数)を代入
V111=V111/100;---> V111を百分の1にする→下2ケタが小数点以下になり消失する
V111=V111*100;---> V111を百倍にする→下2ケタ“00”で復活するも切り捨てられた感じに
V110=V110-V111;--> V110が2ケタ整数に更新される
JUMPIF(V110,>,0,RND_END) ;--> もしV110が正の数なら[RND_END]に飛べ
V110=0-1*V110 ;--> V110に-1を乗じて正の数にする
:RND_END
;↑乱数発生プログラム ここまで

新たな乱数を取得したい場合は、その都度プログラムを実行する必要があります
なので、サブルーチン化してその都度『コール』した方が(使い方としては)合理的です
コールするたびにV110が更新されます

コールは『CLL(###)』⇔『RETURN』で行います ※###はランダムルーチンの(任意の)ラベル

コメントの投稿

非公開コメント

■スポンサー
■ロボット通販


■カウンター
カウンタ → 

現在の閲覧者数 → 
■更新履歴
08 ≪ 2017/09 ≫ 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
■サーボノイドあいたん
■カテゴリ
■ロビ
▼サイト内検索
■最新コメント
■ショートカット
▼ヴィストン楽天ショップ
■関連リンク
▼エンジョイ工業(ブログ)
専門用語をあまり使わない初心者に優しいロボゼロ関連サイト。電気回路の基礎はここで学びました
▼ROBOMIC(ブログ)
ロボゼロフリークにとって絶対的存在ソフトウェア神の運営するブログです。降臨が続く限りロボゼロの進化は止まりません
▼ぱぱっちの私事
ロボゼロ進化のお手本がここにあります。
他の追随をゆるさない完成されたデザインが圧巻です
▼デアゴ掲示板
ロボゼロの掲示板
カコキには登録が必要

▼2ch掲示板
ロボゼロの掲示板
希に重要な情報あり

▼デアゴ特設ページ
ロボゼロWebサイト

▼JO-ZERO Type2
ロボゼロの兄弟機種
同一のコンポーネントのロボット

月別アーカイブ
ヤフーショップ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。