Blog Archives

マイクロマウス研修2[Pi:Co Classic3 迷路を走る]

こんにちは、shotaです。

社員研修として、弊社が販売するマイクロマウス[Pi:Co Classic3]を動かしています。

前回ははんだ付けをしてPi:Coを組み立てました。

[前回の記事はこちら]

 

今回は、キットに同封されているサンプルプログラムを使って迷路を走らせました。

 

サンプルプログラムについて

Pi:Co Classic3には、ルネサス製のRX631マイコンが搭載されています。

私はこのマイコンを使ったことがないため、プログラムが書けるか不安でした。

 

しかし、このキットにはプログラミング初心者向けのマニュアルとサンプルプログラムが用意されています。

このサンプルプログラムにより、LEDを光らせる・ブザーを鳴らす・センサーの値を読み取る・モータを回すことができます。

そして最後には、マイクロマウスの迷路を走らせることができます。

迷路を走らせてみる

サンプルプログラムには3つの走行方法が用意されています。

  • 左手法
  • 足立法
  • 最短走行(足立法)

左手法

左手法では、常に左側の壁に沿って走行します。

この方法はとてもシンプルなので簡単にプログラミングできます。しかし、左手法では解くことができない迷路があります。

この動画では左手法で迷路を走行しています。ゴールが迷路の真ん中にあるため、左手法ではたどり着きません。

足立法

足立法は、ゴールへの最短経路を進むアルゴリズムです。

ゴールまでの経路に壁がないと仮定して走行します。壁を見つけた場合は最短経路を計算し直して走行します。

[足立法の説明1][足立法の説明2]

この動画では足立法で迷路を走行しています。左手法と違い、ゴールへたどり着くことができました。

ゴールに着いた後はスタート地点に戻り、最短経路をたどってゴールへ再走行しています。

 

次回やること

走行プログラムを改良します!

サンプルプログラムでは右折・左折するときに、止まる→右を向く(左を向く)→進む、という動きをしています。

この動きがスムーズになるようにプログラムを書きます!

続きを読む ›

Posted in Pi:Co Classic3, ブログ, 研修


マイクロマウス研修1[Pi:Co Classic3のはんだ付け]

はじめに

初めまして、こんにちは。

2018年10月から入社しましたshotaです。

社員研修として、弊社が販売するマイクロマウス[Pi:Co Classic3]を動かすことになりました。

その過程をブログに投稿していきます。

よろしくお願い致します。

 

私は趣味でロボカップ小型ロボットリーグに参加しています。

ROSを使ってサッカーロボットを動かすソフトを作っていますが、組み込みソフトはほとんど触っていません…

学生の時にPICマイコンを触った程度なので、

その感覚を取り戻しながら、まずはクラシックコース完走を目指して取り組みます!

 

Pi:Co Classic3とは

RT ROBOT SHOPで販売しているマイクロマウス用のロボットキットです。

https://www.rt-shop.jp/index.php?main_page=product_info&cPath=1002_1023_1036&products_id=3400

 

マイクロマウスのソフトだけでなく、はんだ付けを通して回路要素も学ぶことができます。

マイクロマウスに初めて参加する人にピッタリの製品です。

 

はんだ付け開始

6時間くらいではんだ付けと組み立てが終わりました。

はんだ付けが得意な人はもっと早く組み立てられるかもしれません。

作業初日

はんだ付け練習基板と電源基板をはんだ付けしました。

 

作業2日目

メインボードとマイコンボードをはんだ付けしました。

 

作業3日目

センサ基板をはんだ付けして、完成です。

 

このキットの良いところ

  • 部品が回路要素ごとに小袋に分けられている
    • 実装する部品がどの回路に使われているのか一目で分かります。
  • 部品をどこに実装するのか写真付きで説明されている
    • 回路図を読まなくても組み立てられます
  • はんだ付けで失敗しやすいところに注意書きがある
    • 初心者に優しい説明書です。

次回やること

キットに同封されているサンプルソフトを書き込み、走行させます!

[次の記事はこちら]

続きを読む ›

Posted in Pi:Co Classic3, お知らせ, ブログ, 研修


ハーフマウス研修 その33 ~HM_StarterKit販売~

こんにちは
まえけんです。

今回は開発していたハーフマウスの販売報告です!
(開発している間に”ハーフ”ではなくなってしまいましたが)

先月7月にとうとう販売にたどり着くことが出来ました。
このような綺麗な製品ページも作ってもらい無事販売開始いたしました。

製品の見た目はこんな感じです。

実際の内容物等に関しては別日にブログが上がりますので
そちらをご覧ください!

今後はこのブログでHM-StarterKitの開発例なんかを上げていきたいと思います。

続きを読む ›

Posted in お知らせ, ハーフマウスキット製作記, ブログ, 研修


DCマウス研修(吸引編)[17] 金沢・草の根大会参加

こんにちは
inukaiです。

ついに参加してきました初大会!
週末に金沢草の根大会に行ってまいりました。簡単に大会の参戦記を書ければと思います。
大会の日程や結果はこちら

今年は国際高等専門学校、白山麓キャンパスでの開催でした。東京から金沢まで新幹線、金沢駅から会場まではレンタカーで1時間ほど移動して現地に到着。
正門には大会看板が目立っていました。

こちらが、大会会場の校舎です。一部をお借りして大会を行いました。

こちらはイノベーションハブという宿舎です。中もめっちゃきれいでした!さすがかんぽの宿跡地だけはありますね。

大会会場はこんな感じです。クラシック、トレーサー、マイクロマウスの3競技が開催。

早速調整に入っていきます。
調整に悩んでいるところを社長にとられた私の図。
必死で気が付かなかった…

ひたすら懇親会まで調整。19:30から懇親会。

懇親会はイノベーションハブ内のカフェテリアで行われました。
みんなに持ち寄られた懇親会のお酒たち↓

東北での合宿の教訓から、飲むのはほどほどに、懇親会後もひたすら調整。

16×16の迷路を走っていると、軌道の誤差が蓄積し、迷路によってゴール出来たり失敗したりと不安定な状態でした。
そこで、「前壁補正」を急遽実装することに。(こちらは後日記事できればと思います。)

午前12時なんとか安定してゴールできるようになり、その後も2時ごろまで確認と調整を行って就寝。

 

 

そして大会当日!

朝ごはんを食べて、大会用迷路が組まれる前に急いで会場でセンサ調整。

9:00に競技開始。自分はクラシック競技の出走番号が4番とあっという間に出番が回って来ました。

初の大会での緊張もありましたが、前日に入れた前壁補正で新たなバグを生み出していないかという不安のほうが大きかった気がします。

とは言ったものの前壁補正が功を奏して、ゆっくりではあるものの安定して探索走行で完走できました!
また、スタートまで無事帰ってくることもできたのでほっとしました。

写真は競技中に探索走行しているところです。

その他クラシックの様子のyoutubeの中継はこちら

https://www.youtube.com/watch?v=Mlu3KHZ1ADU

その他の競技や表彰の様子も先ほどのチャンネルからご覧いただけます。

無事、認定証も発行されました!


走り終わって2分くらいでもらえました。(仕事が早い!)

というわけで初大会を無事終えることができました。

NTF事務局やI.Sysをはじめとした運営の皆様、本当にありがとうございました。
そして参加者の皆様お疲れさまでした!

それではまた次回

続きを読む ›

Posted in DCマウス研修(吸引編), ブログ, 研修


DCマウス研修(吸引編)[16] 慣性センサ(ジャイロ)の読み取り

こんにちは
inukaiです。

西日本を中心としたで豪雨で被災した皆様とそのご家族、関係者の方々に心よりお見舞い申し上げます。一日も早い復旧を心よりお祈り申し上げます。

それに伴って、関西地区大会も延期となりました。

 

前回までに8×8の迷路を走りきることができましたが、マウス内部の処理としては各車輪のエンコーダ情報を用いてステッパーと同じように走行距離や車体角度を管理していました。今回は今後のためにもジャイロを読み取って制御できるようにしていきたいと思います。
とはいっても読み取り自体は2ヵ月くらい前に実装していたのですが、この度ジャイロ角速度を制御に使えるようにしたので、これを機に記事にしました。

というわけで、ジャイロの読み取りの実装にあたってぶつかった壁をいくつか書きとめていきたいと思います。

①簡易SPI端子割り当て

慣性センサ(ジャイロ)は「ICM-20648」を使用しています。マイコンとの通信はI2CとSPIに対応しており、読み取り速度の速いSPIを使うことにしました。RX631のマニュアルの「機能別端子一覧」より、SPIには下記の端子を割り当てて回路設計をしていました。

RX63Nグループ、RX631グループユーザーズマニュアル ハードウェア編より引用

端子を割り当てる際、MOSI、MISO、SCKの文字だけを見てSPIはここでOKだと思っていました…

しかし、いざプログラムを書こうと思ったら頭に”S”がつく(SMISOなど)ところは簡易SPI機能が割り当てられた端子だったのです。簡易SPIと通常のSPIの大きな違いとしては、簡易SPIは8ビットごとの通信となるところです。これは想定外だったのですが、「ICM-20648」は基本的に8ビットごとの通信で問題なさそうなので特に大きな問題にはなりませんでした。

②SPIのMOSI、MISO接続が逆

以前ご紹介した回路図からSPI周りを抜き出すと下記となるのですが、SPIのMOSI、MISO接続が逆になっていました。
今回の構成は、SPIのMasterはマイコンであるRX631、SlaveはセンサであるICM-20648です。
MOSIは「Master Out Slave In」の略、MISOは「Master In Slave Out」の略として機能名がついています。これを意識していれば間違えないところのはずなのに…

ジャイロは0.4mmピッチなので一番再配線したくなかったのですが…
仕方なくパターンカットと再配線、そして配線がはがれないようホットボンドで固めました。

 

これらの確認と修正と行ったところで簡易SPIでジャイロを読み取り、まずはいわゆる”宴会芸”を実装。

制御の安定性に余裕を持たせているので少し遅れはありますが、宴会芸ができるようになり角速度方向の制御をできるようになりました。

余談ではありますが、下記が簡易SPIを6MHzに設定して、「ICM-20648」のZ軸周りの角速度を読み取ったときのCS端子の波形です。
読み取りに約11usかかっています。今回は特に割り込みを使用せずにSPIの通信をしていますが、この読み取り時間なら問題なさそうです。

では今週末の金沢草の根大会に向けて、ソフトを詰めていきたいと思います!
ではまた次回!

 

続きを読む ›

Posted in DCマウス研修(吸引編), ブログ, 研修


DCマウス研修(吸引編)[15] マイクロマウス合宿@山形(長井)

こんにちは
inukaiです。

週末の6/30(土)、7/1(日)にマウス合宿@山形に参加してきました!

合宿日程としては
1日目
・~16:00 到着次第、マウス開発
・16:00~17:00 弊社社長の講演
・~18:00 懇親会までマウス開発
・18:00~22:00 懇親会
・22:00~次の日 マウス開発
2日目
・~11:00 マウス開発
・11:00~ プチ大会
・13:30 片付け&解散

という感じでした。
まとまった開発の時間が取れたため、マウス開発もはかどる合宿となりました。

こちらが合宿での開発中風景です。
基本的には黙々と開発しつつ、情報交換をしたりしながら次の日のプチ大会に向けて開発。

用意されているのは、クラシックマウス競技8×8と、

マイクロマウス競技(旧ハーフサイズ)の16×16の迷路

クラシックサイズの合宿用の8×8迷路は少し滑りやすい迷路でした。
(東北大会用とはまた別の迷路みたいです)

講演の様子がこちら。
内容はロボット技術動向について、具体的なロボットを挙げて紹介していくものでした。

 

懇親会は写真を撮り忘れてしまいました。
とりあえず、東北の方々はお酒が強かったです!

私は懇親会後、開発を再開するもグロッキー状態で23:30頃から次の日の朝まで酔いつぶれてました…
次の日は朝7:00~2日酔い状態ながらも作業再開!

プチ大会に向けてプログラムを書いたり、パラメータ調整したりしてはマウスを走らせて見守ります。

 

そしてプチ大会開始!
プチ大会では1人あたり3回走行というルールで行われました。

写真は2回目のスタートをする様子。

結果としては8×8を2分49秒で探索し、約5分でスタートに戻ることができました。
本番の16×16を考えると時間は厳しいところですが、8×8を往復できたことは合宿の大きな成果でした。

というわけで、地区大会直前の合宿も終わり、今週末は関西地区大会となるわけですが、完走(全日本出場権)を目指して頑張ってまいります。

ではまた次回

続きを読む ›

Posted in DCマウス研修(吸引編), ブログ, 研修


DCマウス研修(吸引編)[14] 迷路を走行

こんにちは
inukaiです。

モータ、光センサを確認したところで、実際に走行しました。
とりあえずジャイロは未使用です…

いままでも、社内やマウス合宿で走行させてはいたのですが、壁制御や光センサの調整がうまくいかなかったりで迷路を安定して走れていませんでした。

しかしついに安定して4×4を走行できるようになりました!
走行時の動画はこちら

行き詰っていた点としては、

・超信地旋回の際、停止時の振動により旋回角度の計算がずれる → 停止時間を多めにとって解決

・壁制御をかけると直進できない → 迷路中心にいるときの光センサの値を環境ごとに取り直す

・壁制御のゲインを上げすぎると壁がなくなるところで大きくぶれる → 壁制御ゲインを下げて、壁なしでもそこそこ走れるように調整しておく

ひとまず上記を意識することで4×4の迷路を安定して走れるようにできました。

まだまだゆっくりな走行ですが、ジャイロを使うなどして迷路のサイズを大きくしても安定するようにしていきたいと思います。

それではまた次回!

続きを読む ›

Posted in DCマウス研修(吸引編), ブログ, 研修


DCマウス研修(吸引編)[13] マイクロマウス合宿参加

こんにちは!
inukaiです。

先週末(6/16, 17)にマイクロマウス合宿@東京理科大学野田キャンパスに参加してきました!
実際にマウスを製作してから皆さんとの初めての交流だったのでいろいろ刺激が多かったです。

合宿の流れとしては、
1日目
・技術交流会(講演)
・懇親会
2日目
・プチ大会

という流れでした。

技術交流会では、どれもおもしろかったのですが、個人的にはマウスのログの取得方法からどう活用するかについてのお話がとても興味深かったです。

技術交流会はこんな感じです。

技術交流会では私のほうからは、毎年恒例のステッピングモータについてと、オリエンタルモータ株式会社様からのマイクロマウス初心者へのステッピングモータ無償プログラムの案内をさせていただきました。
無償提供プログラムにつきましてNTFのHPにリンクが掲載されていますのでご覧ください。

交流会の後は懇親会でした。技術交流会は講演形式でしたが、懇親会ではざっくばらんに技術交流をさせていただきました。
ご飯を食べながら実際にマウスを見てもらったり、見させてもらったりしながらアドバイスをいただけたりしました。
やはり、実際に強豪の方々のマウスを見ると、自分のマウスのよくないところなどが見えてくるので大変参考になります。

2日目はプチ大会でした。
自分は残念ながら完走できずリタイアしてしまいましたが、非公式とはいえ大会で初出走できたのでひとまずよかったかなと思います。
未完成のマウスでも参加して出走する方も多く、みなさんの気概を感じました。
マウスを作り始めてから改めてトップクラスの方々の走りを見ると目を見張るものがあり、モチベーションが上がります。

大会の参加賞は、いろいろな方のご提供で豪華でした!(写真を撮り忘れてしまいました…)
理系のための婚活本からモータまで様々なものがあり、合宿参加者全員が何かもらえる数はあったみたいです。

私は大会結果は特に結果は残せなかったものの、運よくRX71Mの開発ボードをいただきました。
(ロング17号の製作者様ご提供いただきありがとうございます!)

得られるものの多かった合宿となり、大会参加でモチベーションが上がったところで、まずは関西大会に向けて開発をしていきたいと思います!

ではまた次回

続きを読む ›

Posted in DCマウス研修(吸引編), ブログ, 研修


DCマウス研修(吸引編)[12] 光センサの確認

こんにちは!
inukaiです。

Lチカ、モータ用を回したところで、光センサの動作確認について書いていこうと思います。

このマウスでは下の写真のように、赤外線LEDと光センサが4組ついています。
赤い熱収縮チューブを巻いてあるのが赤外線LEDでその下側についているのが光センサです。

回路図から光センサ周りを抜き出すと下図のようになります。

Lチカ同様に赤外線LEDを光らしてみたところ。

上と下の写真をみると少し紫に発行しているのが見えるかと思います。
目では見えませんが、カメラによっては赤外線が紫っぽく映るのが確認できます。

 

では実際に壁に光を反射させて確認していきます。
壁を置いてオシロスコープで光センサを確認した結果がこちらです。
上のラインが発光中のLEDのON信号、下が光センサの電圧になります。
センサの立ち上がりが飽和するあたりで、LEDをOFFしています。
OFFするタイミングでRXマイコンのAD変換機能により光センサの電圧を取り込みます。

次にマウスで壁判定するために、壁とマウスの距離に対する光センサの値を確認していきます。
測定の様子

特に今回は姿勢制御に用いる左右の壁をみるセンサの値を確認を行いました。その結果がこちら。

左右で若干センサ値が違いますが、同じようなカーブであるのが確認できました。
発光時間や、赤外線LEDおよび光センサの抵抗を調整すればカーブが重なりそうです。

調整については姿勢制御の壁補正の精度をどこまで求めるかによりますが、とりあえずはこの値をもとにマウスを走らせて行こうと思います。

では、今回はここまで。
また次回よろしくお願いします!

続きを読む ›

Posted in DCマウス研修(吸引編), ブログ, 研修


DCマウス研修(吸引編)[11] 吸引ファン強化

こんにちは!
inukaiです。

以前の記事で吸引ファンの製作から吸引力の評価まで行ったわけですが、社内でよさげなモータを紹介してもらったので吸引ファンを強化してみました。

モータを「CL-0614-10250-7」→「M716PA」に変更しました。
直径が1mmほど大きくなるのですが、軸径は変わらないので割と簡単に置き換えれました。

変更後の吸引力の測定結果がこちら!

吸引力が約100g→約150gと1.5倍に強化できました!

では、実際にマウスに搭載して吸引力を測定したいと思います。
マウスには下の写真のように取り付いています。

裏の吸引用スカートはこんな感じです。

マウスでの測定結果がこちら。

120-140gぐらいの吸引力がでました!

今後もちょくちょくマウス裏面の密着度などを改善して行けたらと思います。

以上、ファームウェア作成の現実逃避からの吸引力強化でした。

ではまた次回

続きを読む ›

Posted in DCマウス研修(吸引編), ブログ, 研修