Blog Archives

shotaのマイクロマウス研修18 ESP32周辺回路とピンの機能選択

こんにちは、shotaです。
社員研修として、オリジナルマウスを製作しています。

今日は回路設計の最後の記事です。(やっと終わる・・・)
ESP32周りとピンの機能選択について書きます。

これまでの記事で各回路ブロックについて説明したので、どんな回路があったのかは過去記事を参照してください。
この記事の上部にある編集者名shotaをクリックすれば、過去記事が見れます。

続きを読む ›

Posted in DCマウス研修, お知らせ, ブログ, 研修


マイクロマウス研修 関西地区大会・山形マウス合宿(岩本)

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
岩本ブログ一覧
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

こんにちは岩本です。

今回は、関西地区大会(7/20)と山形マウス合宿(7/27)に参加しましたので、その話です。
 

≪関西地区大会≫
今回、関西地区大会は、大阪電気通信大学の駅前キャンパスで開かれました。

また、大会とは別にRSさんの講習もありましたので、そちらにも参加しました。
こちらの、回路設計ソフトDESIGN SPARKは、無料で資料できる3D設計ソフト(メカ設計・回路設計用)です。

メカ設計用の方は、タッチパネルでの操作に対応した少し珍しいソフトで、押し出し方法等も一般的な3D設計ソフトと同等で感覚的に使いやすいソフトでした。
ただ、ソフトを軽くする為にスケッチデータの履歴を残していないようで、編集がやや難しそうでした。
https://www.rs-online.com/designspark/mechanical-software-jp

次に回路設計ソフトの方は、私がまだ回路設計していないので、あまり詳しくは比較できないのですが、メカ設計者的にも分かりやすいソフトでした。
基板は1m*1mの多層基板に対応しており、外部CADファイルに出力でき、回路シミュレーション等もあり使いやすそうなので、自作マウス作る時に使ってみようかと思っております。
https://www.rs-online.com/designspark/pcb-software-jp

大会の方は、PI:COそのままのソフトウェアに尻当てのプログラムだけ追加して、挑戦しました。
1走目、足立方探索で見事ゴールまで行ってくれました。しかし、途中でケーブルが飛び出てしまい超地旋回するときに引っ掛かって戻ってくることが出来ませんでしたが。。。
2走目、最短は出ていないが、取り敢えず、最速で走らせましたが、途中で引っ掛かりリタイア。
3走目、もう一度足立方で探索してみましたが、時間切れでタイムアップとなりました。

探索しかできなかったので、時間は、1:53.789秒となりました。(遅い。。。)
しかし、時間は掛かりましたが、ゴールはゴールです!
全国大会の出場権を得ることが出来ましたので、これをモチベーションに頑張っていきます。

 

≪山形マウス合宿≫
山形マウス合宿は、タスパークホテルの一室をお借りして、プチ大会が開催されました。
今回は、まだ調整中ですがスラ探を入れて来ました。一応走るのですが、たまに壁を認識しきれずに壁に突進していってしまうことしばしば…
そのため現場で、壁認識の閾値を下げて、なるべく壁に突進しないようにしてプチ大会に臨みました。

結果としましては、ゴールできませんでした。
原因は完全に壁認識の閾値下げすぎで、壁がないところに壁を見てしいました。。。(その後、元の値に戻したらゴールできました。)
今回の教訓から得られたものは、大会当日の付け焼刃は止めようと言う事です。事前準備大事。

ちなみに商品は、山形のお野菜でした。
私も参加証として、トマトやナス等をもらい、ナスミートスパゲッティにして美味しく頂きました。ありがとうございました。

今回はここまでです。

続きを読む ›

Posted in お知らせ


マイクロマウスクラシック~プラスチック壁について~

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

ただいまアールティではマイクロマウスクラシックサイズの
プラスチック壁の開発をしております!

現在、弊社webショップでは木製の壁を販売しておりますが
昨年販売を開始した柱に引き続き、壁もプラスチック化を進めております。

販売はもう少し先になりますが、形になってきましたので情報を公開していきたいと思います。

手前側がプラスチック壁で、奥側が木製の壁になります。
壁をひっくり返すとわかりやすいですね。
近くで見るとこんな感じになっています。
上から見るとこんな感じです。左と下がプラスチック壁で、右側が木製の壁になります。

作りたてで見た目が綺麗なのもいいですね!
また新たな情報が入りましたらこちらで更新していきます!

続きを読む ›

Posted in お知らせ, ブログ


shotaのマイクロマウス研修12[オリジナルマウスの設計方針]

こんにちは、shotaです。

社員研修として、オリジナルマウスの製作を始めます。

[前回の記事]ではESP32のSPI機能を使ってみました。

今回はオリジナルマウスの設計方針を決めます。

 

オリジナルマウスの仕様

オリジナルマウスの仕様は[この記事]に書いてます。

ESP32を使う、というのが一番の重要項目です。

 

オリジナルマウスの設計方針

まずはじめに、設計の時間がとても少ないことを考慮しなければなりません。

全日本マイクロマウス大会は12月はじめごろに開催されるのですが、地区大会がそれよりも早く開催されます。

[2018年のスケジュール]を見ると、7月頭から地区大会が始まっています。。。

残りの4ヶ月で迷路を走れるマウスを作らなければなりません。これは厳しい。。。

ということで、できるだけ頑張らない設計方針を決めました。

  • ESP32のソフト設計・開発に集中する
  • 情報公開できる設計資料を作る

方針①:ESP32のソフト設計・開発に集中する

マイクロマウスを実現するには、

  • 走行するためのタイヤ・モータ、壁を検知するセンサー
    • それらを動かす回路
      • 回路を動かすソフト

を選定・設計・開発しなければなりません。

 

先程も述べたとおり、大会まで時間がないので・・・

  • 走行するためのタイヤ・モータ、壁を検知するセンサー → HM-StarterKitをコピーする
    • それらを動かす回路 → HM-StarterKitをコピーする
      • 回路を動かすソフト → ここを頑張る!!!

という方針でマウスを作ります!

[HM-StarterKit(通称ハムスター)]は弊社アールティが開発・販売するマイクロマウス競技(旧ハーフサイズ)向けの学習キットです。

HM-StarterKitの回路図は[GitHub]に公開されています。

そしてなんと、このHM-StarterKitを設計・開発した人が社内にいます! (質問し放題)

実績があり、情報量も多いマウスをコピーできる貴重な機会なので、この回路図をベースにESP32マウスを作ります。

 

続きを読む ›

Posted in DCマウス研修, お知らせ, ブログ, 研修


マイクロマウス研修(kora編)[11]光センサの利用

こんにちは。koraです。

今回はHM-StarterKitの光センサを使えるようにします。

AD変換の準備

HM-StarterKitには、壁を検出するための4つのLEDと4つの光センサが搭載されています。それぞれの光センサに対し、壁から跳ね返ってくる光量を電圧に変換して出力しています。電圧をマイコンから読み取るためにADC(Analog to Digital Converter)という機能を使います。ADCでは、リファレンス電圧である 3.3V と 0Vを基準として、電圧を12bit(0~4095)の値に変換します。

init.c

サンプルプログラムのStep7からio_init関数とsensor_init関数をコピーして、自作プロジェクトのinit.cのinit_all関数から呼び込むようにします。io_init関数は、光センサとセットになっているLEDの初期設定です。

mh_hm_starterkit.c

Step3のmain関数の一部をコピーして次のようにします。

AD変換のテスト

TeraTermで出力されたセンサー値を表示すると、次のようになります。


壁なしの値


壁ありの値

ちなみに、HM-StarterKitはバッテリーの電圧もAD変換で測定できるように配線されていますが、バッテリー電圧がマイコンの動作電圧の3.3Vより高いので、抵抗で分圧して半分にしてから読み取るようになっています。

AD変換を割り込みで利用する

前回ジャイロセンサとエンコーダをタイマ割り込みで処理したように、今回も一定間隔でAD変換を行い、壁の情報を更新するようにします。

intprg.c

以下を追加します。

そして、void Excep_CMT1_CMI1(void){ } を次のように書き換えます。

mytypedef.h

新しくファイルを作り、壁の情報を保存する構造体を作ります。

interrupt.c

先ほど作った構造体をインクルードします。

また、サンプルプログラムのStep7からint_cmt1関数をコピーします。なお、int_cmt1関数の割り込みは4kHzで発生しますが、その都度4つのセンサうち1つを読んでおり、トータルでは1kHzで更新しています。

glob_var.h

光センサ用と電源監視用のグローバル変数を追加します。

portdef.h

光センサのLEDを操作しやすいように次のマクロを追加します。

paramters.h

センサ関連のパラメータを追加します。
マウスが壁に近づけば光センサの値は大きくなり、逆に遠ざかれば小さくなります。これを利用して迷路の壁を頼りに走行を制御することを壁制御といいます。REF_SEN_R・Lは、マウスが迷路の中央を走るために参照します。TH_SEN_R・L・FR・FLは、マウスの右・左・前に壁があるか判断するための閾値です。CONTH_SEN_R・Lは右壁・左壁を壁制御に反映するかどうかの閾値です。今回の例では壁があると判断したら即、壁制御に反映するようになっています。

実際走行する際には、これらの値を環境に合わせて調整します。

init.c

サンプルプログラムのStep7からinit_parameters関数をコピーします。ここではparameters.hで指定したパラメータを光センサ用の構造体に代入しています。

また、忘れずにinit_all関数からinit_parameters関数を呼ぶようにします。

my_hm_starterkit.c

テスト用にmain関数を次のように書き換えます。

割り込みのテスト

実行した結果をTeraTermで表示すると次のようになります。右・左・右前・左前の光センサの値がそれぞれTH_SEN_R・L・FR・FLで指定した値より大きければ、壁の有無を1・0で出力します。

次回

ジャイロ、エンコーダ、光センサの値を読み込めるようになりました。これでマウスの自律走行が可能になります。次回はこれを実装したいと思います。

続きを読む ›

Posted in お知らせ


shotaのマイクロマウス研修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 お知らせ, ハーフマウスキット製作記, ブログ, 研修


ハーフマウス研修 その32 ~3台目の改良点~

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

今回は前回記事で拳げた問題点を解決するための解決策を上げていきたいと思います。

まずおさらいで、前回挙げた改良点を書いておきます。

主に改良したいところは次の4点です。
・エンコーダサブ基板のマウント方法
・サブ基板のはんだ付け方法
・インターフェース
・見た目

ちなみにこれに加えてバッテリを置く際に
斜めになってしまうという問題点も2作目ではあったので追記しておきます。

・エンコーダサブ基板のマウント方法
・サブ基板のはんだ付け方法

この二つはL字ピンヘッダを用いる事と
もう一つの基板で挟むことで位置決めをします。
言葉だとわかりにくいので(ブログ上ではまだ出来てませんが)
実機の写真で説明いたします。

これによってエンコーダ基板の位置に再現性が生まれ
はんだ付けしやすくなるのではないかと考えました。

また、基板をモータマウントの上部に渡すことで車体全体の剛性を高められる事と
触って壊れやすいエンコーダ基板をガードすることが出来るため
製品として誰が触っても安心な車体になるのではないかと考えました。

・インターフェース

インターフェースに関しては先ほど登場した
モータマウントの上部に渡した基板をインターフェース基板と
することで解決しました。

写真のように新たにLEDを4つとスイッチを3つ付けたことで
Pi:Co Classic3と同じ数のインターフェースとしました。
また、このインターフェース基板にエンコーダ基板を接続することで
メイン基板へのDIP実装点数が減り、配線面積を稼ぐことが出来ました。
また、ブザーを設置しました。

・見た目
・バッテリスペース

これらに関してはインターフェース基板を付けたことで
モータ配線が隠れ、全体がまとまった印象となりました。

また、基板の前方を数mm伸ばしたことで
バッテリを置くスペースが確保できました。

3作目の主な改良点としては以上です。
次回ですが、本業の方が忙しくなってしまったため
2,3週間程度ブログの更新をお休みさせていただきます!
いつも見て下さってる方々には申し訳ないですが
しばらくお待ちください!

ちなみに別のサイトでは二足歩行ロボット研修のブログも連載しております!
こちらもぜひご覧ください!

続きを読む ›

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


ハーフマウス研修 その28~ミニタイヤについて~

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

今週は通常のハーフマウス研修に割り込んで
ミニタイヤについて書いていきます。

現在マイクロマウス競技(旧マイクロマウス(ハーフサイズ))で
殆どの人が使っているタイヤがあります。
それが、KYOSHOさんから出ているdnano用スリックタイヤ(硬度10)です。
(dnano用スリックタイヤの商品リンク)

しかし、ここ最近はこのタイヤの供給が安定せずに
欲しいタイミングで手に入らないことがありました。

そこで…
マイクロマウス競技用のミニタイヤを
製造することにしました。

また、兼ねてより希望の多かった別の硬度のミニタイヤも製造いたしました。
そして、こちらがその商品になります。

タイヤ一つ当たりの価格は据え置きの200円で、10個入の形態で販売いたします。
硬度は10度20度30度の三種類を用意いたしました。(それぞれの文字が商品リンクになってます!)

以下がタイヤ表面と形状の比較画像です。
左側がdnanoで右側が新タイヤの10度のものとなっています。


dnano(左)の方がツヤがあり、少しべたついた印象です。対して新タイヤはdnanoタイヤを軽く使った後のような色と触り心地です。


この写真は右が新品のdnano、真ん中が使い古したdnano、右が新品の新タイヤです。
これを見ると、ある程度使った状態のdnanoタイヤが新品タイヤよりツヤが無くなっている様子がわかります。


タイヤ表面に関しては、dnanoより新タイヤのほうが均一のようにも見えます。

実際に研修で制作しているマウスで新タイヤの10度を試したところ
低、中速域(2m/s以下)ではdnanoタイヤと比べ大きな違いが現れませんでした。
そのまま付け替えて走行することも可能です。

新タイヤは在庫もたくさんあるためタイヤの消耗を気にせず
どんどん使ってください!

商品リンク
マイクロマウス用タイヤ10度 10個入り
マイクロマウス用タイヤ20度 10個入り
マイクロマウス用タイヤ30度 10個入り

続きを読む ›

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


ハーフマウス研修その21 ~二台目のモータを回す~

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

今回はモータを回してみたいと思います。
一作目とは前後転を変えるディジタルピンのポートが変わっているので
そこだけ変えて一作目のソフトを流してみました。

しかし、モータが回らない…?
困ったらとりあえずオシロスコープで確認です!

マイコンの出力ピンを見てみたらPWM波形は出てました。
モータドライバ側の端子にも信号は届いているようです。
もしかして、モータドライバ周りのはんだ不良かなと思い、別の車体で試してみたところ動かない…

とうとう原因がわからなくなり、再度モータドライバまわりをオシロスコープで確認中に…一瞬モータが動いた。

もしかして、と思い配線図を開くとロジック電源が未結線でした。

DRC(デザインルールチェック)を改めてみてみると、確かに未結線エラーが出ていました。
しかし、モータドライバの未結線エラーがエンコーダのサブ基板のロジック電源側に表示されていました。

とりあえず、ロジック電源のところにジャンパ線をつないだところ無事モータが回りました!

今回はメイン基板とサブ基板を同じプロジェクト内で作ったため、エラーが混ざりチェック漏れが出てしまいました。
次回からは複数基板を同一プロジェクト内で作成する場合は未結線エラーは場所でなく、リファレンス番号でチェックしようと思います。

続きを読む ›

Posted in お知らせ