[PR]
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
2016年 知能ロボコン,先端ものづくりチャレンジ
2017.09.08 Friday 21:32 | ロボット/電子工作
だいぶ時間が立ってしまいましたが,
2016年の知能ロボコン,先端ものづくりチャレンジin習志野
にルンバで参加しました。
まず知ロボ。
間に合いませんでした。
通信周りなどなどの不具合が取り切れず,開始後数十秒で制御が落ちちゃう(´・ω・`)
車を出してくれた友人には非常に申し訳ない。
あまりにもダメダメだったので夕方には仙台観光と称してマルツ行ったりしてたところ,
最優秀ビデオ賞を受賞したことをtwitterで教えてもらうという不覚ぶり。。
それから半年後の先端ものづくりチャレンジ イン 習志野。初参加でした。
知ロボから半年たっていることもあり,ハード,ソフトともに大幅改善して挑むことができました。
ボール1つを(マシン上に)残してあとはすべて正しく仕分けることができ,結果は3位。
(知ロボだったらもはやパーフェクト前提なのでここまでの順位にはならないですね。。。)
センサ配置が悪いのか,
ボールを検知するために使用しているVL53L0の誤検知の影響でタイムロスしてます。
フィールド中央の島の角で何か見えちゃうんですよねぇ。
知ロボの時点ではVL6180Xを使用していました。測定距離が短いので誤検知は特になかったと記憶していますが,これはこれで,途中でフリーズする?問題があって曲者でした。
I2Cでデータは取れるものの,内部ステータス,距離値ともに変化しなくなるという状態です。数秒ごとにリセットかけることで回避していましたが,その間にボールに突っ込んでしまうこともしばしば。
どうしましょかね。カメラ?
ロボットの概要は下記スライドにて。
2017年の知ロボ記事はそのうち。。
2016年の知能ロボコン,先端ものづくりチャレンジin習志野
にルンバで参加しました。
まず知ロボ。
間に合いませんでした。
通信周りなどなどの不具合が取り切れず,開始後数十秒で制御が落ちちゃう(´・ω・`)
車を出してくれた友人には非常に申し訳ない。
あまりにもダメダメだったので夕方には仙台観光と称してマルツ行ったりしてたところ,
最優秀ビデオ賞を受賞したことをtwitterで教えてもらうという不覚ぶり。。
それから半年後の先端ものづくりチャレンジ イン 習志野。初参加でした。
知ロボから半年たっていることもあり,ハード,ソフトともに大幅改善して挑むことができました。
ボール1つを(マシン上に)残してあとはすべて正しく仕分けることができ,結果は3位。
(知ロボだったらもはやパーフェクト前提なのでここまでの順位にはならないですね。。。)
センサ配置が悪いのか,
ボールを検知するために使用しているVL53L0の誤検知の影響でタイムロスしてます。
フィールド中央の島の角で何か見えちゃうんですよねぇ。
知ロボの時点ではVL6180Xを使用していました。測定距離が短いので誤検知は特になかったと記憶していますが,これはこれで,途中でフリーズする?問題があって曲者でした。
I2Cでデータは取れるものの,内部ステータス,距離値ともに変化しなくなるという状態です。数秒ごとにリセットかけることで回避していましたが,その間にボールに突っ込んでしまうこともしばしば。
どうしましょかね。カメラ?
ロボットの概要は下記スライドにて。
2017年の知ロボ記事はそのうち。。
PR
【ルンバ:ROI】Songコマンド
2016.06.26 Sunday 23:34 | ロボット/電子工作
ルンバでTRUTHを再生してみました。
音を出す系のコマンドではまったポイント。
「Roomba 500 Open Interface (OI) Specification」によると、
SongNumberは0~4で設定できると書いてあるが、
ルンバ770で試した所、4に設定すると再生されない。
0~3のみを使うようにして実装した。
・Matlabスクリプトでmidiファイルを読み込んで変換してます。
・和音出せないので、そういう曲だとちゃんと再生できない。
音を出す系のコマンドではまったポイント。
「Roomba 500 Open Interface (OI) Specification」によると、
SongNumberは0~4で設定できると書いてあるが、
ルンバ770で試した所、4に設定すると再生されない。
0~3のみを使うようにして実装した。
会場で流行ってたあの曲を実装しましたヽ(´ー`)ノ #inrof #知ロボ #知能ロボコン pic.twitter.com/8EXWilbnql
— こんぺ~ (@conpe_) 2016年6月26日
・Matlabスクリプトでmidiファイルを読み込んで変換してます。
・和音出せないので、そういう曲だとちゃんと再生できない。
Cubify Designでインボリュートな歯車を描く
2016.04.01 Friday 22:50 | ロボット/電子工作
これをインストール。スクリプトでCubifyを操作する的な何かっぽい
http://www.wizotools.com/wizoscript
んでこのスクリプトを実行する。
http://www.britishideas.com/2013/04/25/involute-gears-in-alibre-design/
以上!
http://www.wizotools.com/wizoscript
んでこのスクリプトを実行する。
http://www.britishideas.com/2013/04/25/involute-gears-in-alibre-design/
以上!
【ルンバ:ROI】Buttonsコマンドの使用
2016.03.26 Saturday 00:35 | ロボット/電子工作
ルンバ770のボタン仕様について。
Buttonsで返ってくる値に癖があったのでメモ。
結果的には、状態によって立つビットが違うってこと。
普通に使う場合の表示に合わせて対応したビットが立つ。
ROIの仕様書にはこうあります。
んで、ルンバ上の表記はこう。
①初期状態
この状態でClockボタンを押すと、②の状態へ移行します。
② Clockを押す
ここでOKを押すと①の状態に戻ります。
Scheduleを押した時も同様。
で、Buttonsで返ってくる値は、
①の状態では対応したビットのみが立つ。
②の状態では、何も押していない場合はClockのビットがたった状態。
何かしらボタンを押すと、対応したビットに加えて、Clockのビットも立った値が返ってくる。
また、OKを押した時はClockのみが立った状態。すなわち、押したことを判別できない。状態は①に戻る。
そして、Cleanボタンを押すと0が返ってきて、状態は①に戻る。
ClockとScheduleボタンがこんな挙動。
ルンバ770だとボタンが4つ(Clean除いて)あるのですが、Buttonsで返される値のビットとの対応は状態によって変わるわけですね。
めんどいなぁ。状態によっては読めない一番右のボタンと、Cleanボタンの扱いをどうするか。。。
2016/06/11追記
ROIの資料だと下4bitしか載ってないので調査。
CleanボタンとバッテリLEDの表示は分かれていて、
LEDs(Opcode 139)のコマンドで送る
1バイト目の4bit目でCleanボタンのon/offを設定。
続く2バイトはクリーンボタンでなく、バッテリ表示の色と明るさの設定となる。
・・・けど、明るさは変えられないっぽい。
Scheduling LED Bitsも補完。
Buttonsで返ってくる値に癖があったのでメモ。
結果的には、状態によって立つビットが違うってこと。
普通に使う場合の表示に合わせて対応したビットが立つ。
ROIの仕様書にはこうあります。
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Value | Clock | Schedule | Day | Hour | Minute | Dock | Spot | Clean |
①初期状態
Dock | Clock | Schedule | Spot |
② Clockを押す
Day | Hour | Minute | OK |
Scheduleを押した時も同様。
で、Buttonsで返ってくる値は、
①の状態では対応したビットのみが立つ。
②の状態では、何も押していない場合はClockのビットがたった状態。
何かしらボタンを押すと、対応したビットに加えて、Clockのビットも立った値が返ってくる。
また、OKを押した時はClockのみが立った状態。すなわち、押したことを判別できない。状態は①に戻る。
そして、Cleanボタンを押すと0が返ってきて、状態は①に戻る。
ClockとScheduleボタンがこんな挙動。
ルンバ770だとボタンが4つ(Clean除いて)あるのですが、Buttonsで返される値のビットとの対応は状態によって変わるわけですね。
めんどいなぁ。状態によっては読めない一番右のボタンと、Cleanボタンの扱いをどうするか。。。
2016/06/11追記
ROIの資料だと下4bitしか載ってないので調査。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
OK | ゴミフルサイン | ダスト検知 | クリーン | Check Robot | Dock | Spot | Debris |
LEDs(Opcode 139)のコマンドで送る
1バイト目の4bit目でCleanボタンのon/offを設定。
続く2バイトはクリーンボタンでなく、バッテリ表示の色と明るさの設定となる。
・・・けど、明るさは変えられないっぽい。
Scheduling LED Bitsも補完。
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
DAY | HOUR | MINUTE | Schedule | Clock | AM | PM | Colon |
Roomba Open Interface (ROI)
2016.03.25 Friday 21:35 | ロボット/電子工作
例によってルンバと戯れています。
ちょっといまハマってる・気になってること
①速度司令コマンドで下2桁くらい四捨五入される?
速度司令出した後に、速度読むと、ちょっと違う値が返ってくる
-80で-78
-90で-92
-200で-199
②Cleanボタンの明るさ0にしても うっすら光る
③コマンド送信間隔どこまで早く出来る?
受信は15msごと
モード切り替えてすぐは指令効かないみたい。(→20ms間は効かないっぽい?(2016/03/26))
④タイヤの回転方向変えた時にエンコーダずれないかな?
エンコーダのカウント方向はタイヤへの回転方向指令によるため
⑤音コマンド受け付けない…
ただただプログラムミスってた
⑥miniDinコネクタのL字のやつってないかな。もしくは短いの。
⑦iRobot_Roomba_500_Open_Interface_Spec.pdfたまに間違ってる
エンコーダのLとRが逆
ちょっといまハマってる・気になってること
①速度司令コマンドで下2桁くらい四捨五入される?
速度司令出した後に、速度読むと、ちょっと違う値が返ってくる
-80で-78
-90で-92
-200で-199
②Cleanボタンの明るさ0にしても うっすら光る
③コマンド送信間隔どこまで早く出来る?
受信は15msごと
モード切り替えてすぐは指令効かないみたい。(→20ms間は効かないっぽい?(2016/03/26))
④タイヤの回転方向変えた時にエンコーダずれないかな?
エンコーダのカウント方向はタイヤへの回転方向指令によるため
⑤音コマンド受け付けない…
ただただプログラムミスってた
⑥miniDinコネクタのL字のやつってないかな。もしくは短いの。
⑦iRobot_Roomba_500_Open_Interface_Spec.pdfたまに間違ってる
エンコーダのLとRが逆