Days for development

電子工作や3Dプリンターを使った工作などの記録です。正確な情報を書くよう気を付けますがこの記事で発生した損失には一切責任を負いません

sugentem_n_52の製作過程を追う

最後の記事から時間が経ちました。

2017年の内に行動の詳細をひとまとめにしましょう。

クラシックマウスを1年行ったあとのハーフマウス1年目の足跡です。

新人教育の参考資料や進捗がどうなのかを見つめ直す指標の参考にもなるかもしれないですね。

 1.マイクロマウス2016

私はマイクロマウス2016のマウスパーティにおいてハーフマウスを作るための情報収集を行いました。具体的には、

  • センサーの配置
  • 磁気式エンコーダの磁気漏れの話
  • ほかの大会参加者のハードウェア的な工夫
  • 設計の手順

 2.2016年

2.1 2016年12月

簡易的な目標の設定。

2017年度のマウス

・コンセプト

しっかり走れる

・目標(長期)

全日本ハーフクラシック決勝に出場

・目標(短期)

中部初心者で勝つ

*1

ハードウェアのスケッチ

ギア比の選定 -> 12:39

基板厚さ -> 0.6mm

基板設計(回路設計)開始(2016/12/19~2017/3/4)

3.2017年

3.1 2017年1月

ギヤボックス 10:39 に変更

先輩の回路図を見て必要な回路シンボルのライブラリを作成

*2

 3.2 2017年2月

三端子レギュレーターなどのパーツに関するメモ

f:id:days_for_development:20171230123210j:plain

f:id:days_for_development:20171230122343j:plain

f:id:days_for_development:20171230122418j:plain

書き込みにはGND電位の共有が必要です。

f:id:days_for_development:20171230123826j:plain

f:id:days_for_development:20171230122833j:plain

3.3 2017年3月

電通大プチコンの開催

2017/03/05

・回路図が仮完成

・ピン接続を要確認

2017/03/30

f:id:days_for_development:20171230124801j:plain

3.4 2017年5月

2017/05/24

・PCB発注

3.5 2017年6月

2017/06/03

・千石、秋月、AWS、rcロビン発注

2017/06/08

・半田付け

2017/06/10~11

・マウス合宿

フットプリントの登録ミスが発覚 -> 作り直し

 

2017/06/25

理科大プチコン

 クラシック機を使って線形近似の実験を行なった。

days-for-development.hatenablog.com

問題の多かったハーフマウスの再設計(コンセプト)

f:id:days_for_development:20171230130256j:plain 

 ここから初号機でソフト検証を行いつつ再設計をしようと計画する。

3.6 2017年8月

 

days-for-development.hatenablog.com

days-for-development.hatenablog.com

 そう、書き込めなかったのである!

諦めて次回作のパーツ選定などに移る。

3.7 2017年9月

・ハーフマウス弍号機の発注(elecrow)

 

・プログラムに着手開始

 

2017/09/13

・基板到着

f:id:days_for_development:20171230131744j:plain

 

2017/09/15

・3Dパーツ到着

 

f:id:days_for_development:20171230131913j:plain

2017/09/18

半田付け完了後、バッテリーの差し込み間違いで基板が死ぬ

f:id:days_for_development:20171230132159j:plain

2017/09/30

全日本学生大会

Isysのある方にマイコンピンの死亡しているかの判断基準を教えてもらった。助かりました。このすぐ後の配線ミスの発見に役に立ちます。

3.8 2017年10月

2017/10/09

f:id:days_for_development:20171230150448j:plain

2017/10/11

f:id:days_for_development:20171230150501j:plain

・PWMで要求したモーターパワーの出力に成功

youtu.be

2017/10/12

・ジャイロを使って姿勢制御を開始(失敗)

youtu.be

2017/10/13

・壁センサーから大まかな壁との距離の取得に成功

f:id:days_for_development:20171230135116j:plain

2017/10/14

・発振しているが大まかな制御は成功。

youtu.be

2017/10/15

・マイクロマウス東日本地区大会

直進するだけでした。

2017/10/16

スラローム走行実装

youtu.be

2017/10/23

・探索走行成功。但し、調整が甘い。

youtu.be

2017/10/29

・中部地区大会

ハーフマウスで初めて認定証をもらう。

大会後の最速走行。

youtu.be

3.9 2017年11月

2017/11/17

・後ろ壁当て実装

2017/11/18~19

・マイクロマウス2017

ハーフマウスエキスパート競技予選敗退

youtu.be

4.最後に

去年の行動を振り返ると夏休みなどがあまり進捗が埋めていない期間であることやソフトウェアに時間を割いていないことなどが露呈した。年末から作業を進めた行かねばならないだろう。

皆さんはどんな一年でしたかね?振り返って見てはいかがだろうか?

それではよいお年を。

*1:メモより 

*2:2017/01/12メモより

マイクロマウスの再設計〜ハードウェアコンセプト〜

マイコンが死亡したこと、半田付けが困難な箇所が存在することなどを考えてマウスの第2弾を設計することとなりました。今回はハードウェアについて書き記します。備忘録的要素が強いので退屈かもしれませんが、もし初めてマウスの設計を行う方はこんな失敗がありうることを知っているといいマウスが設計できるかもしれません。

1.問題点の洗い出し

  1. 電位を調べる時、手元が狂うと短絡してしまう
  2. テスターがあてにくい
  3. CNC加工を頼みにくい
  4. エンコーダー固定用基板の端子が半田付けしにくい
  5. モーター用電源ラインが細い
  6. MPU6500の内側ベタがあるせいで配線しにくい

2.改善案

 問題点の洗い出しの各番号に対応させています。

  1. GND, 3.3Vは離して置くべきである
  2. テストパットがあるべき
    テストパットはbattery+, GND, 3.3V, MD端子, PC7, MISO, MOSIが挙げられる。
  3. 3Dプリンターでの製作を前提にする方がいい。
  4. 基板片面にフットプリントを集約すべき。
  5. 配線をモータードライバから行い、配線の太さを確保する。
  6. フットプリントの登録を変更する。

3.まとめ

 ハーフマウスの第一弾は動作しないという悲しい結果になってしまったが反省を生かした次なるマウスの設計を行う。

マイコンに書き込めない?その2

お盆いかがお過ごしですか?

開発を推し進めるのもいいですよね。

前回の記事、

マイコンに書き込めない?その1 - Days for development

の続きです。読んでいない人は先にこちらを見てもらえると嬉しいです。

 1.電源電流を調べてみた

私の他にrx631マイコンで書き込めない人をブログ等で調べてみるとこのような書き込みに行きあたりました。

前回は電源周りのデバッグ(レギュレータやスイッチ等の素子を外して直接結線)したところで終わりました。
この状態で安定化電源を繋いだところ、ブートモードに設定したところ、電流が40mA近く流れました!

引用元:ハーフマウス研修 その6~プログラム書き込み~ | RT MicroMouse

なるほど、ブートモードはこのくらい電流が流れるのか。

というわけで安定化電源を借りてバッテリーがわりに繋いで電流を測りました。

f:id:days_for_development:20170811060301p:image

電源入れて10mAは流れたようですがmaekenさんのマウスの1/4程度しか流れていません。

2.書き込めないことに対する結論

端子の電位、クロック発振が正常であり、マイコンの消費電流が少ない以上マイコンが起動していない、死んでいると判断。原因究明はここで打ち切りとし、RTさんのRX631ボードを用いてプログラムの進捗を生むことにします。

3.おまけ

RT製RX631ボードで検証したところ、書き込みは成功したので回路に対する私の理解とその配線は間違っていないようでした。

f:id:days_for_development:20170812121514j:image 

マイコンに書き込めない?その1

ゆるゆると進行中のハーフマウスの進捗と問題が発生したのでそのトラブルシューティングを書き留めます。ひとまず、治っていないので途中経過になります。

1.Renesas Flash Programmerで書き込んでみた。

マウス合宿で指摘された水晶発振子のフットプリントとP-chFETの修正を終え、書き込んでみた。

”デバイスから応答がありません”

なんてこった...。

 

f:id:days_for_development:20170809015025j:plain

2.自分で確認した回路状態

2-2.回路の接続状態

f:id:days_for_development:20170809013729j:image

  • 水晶発振子は各端子がXTAL, GND, EXTALと導通。
  • マイコンの電源端子はすべて導通を確認。設計通り導通している。
  • もちろん、書き込み時はバッテリーで電源供給を行った。

2-3.回路上の各接点における電位

書き込み装置のスイッチがONの時

  • PC7端子: 0.0V
  • MD端子: 3mV
  • Battery: 4.2V
  • 3端子レギュレータVout: 3.28V
  • RES#: 3.286V

OFFの時

  • MD端子:3.28V
  • RES#: 3.286V

どうやら、配線は間違ってないらしい。

3.考えられる原因と対応策

原因1 クリスタルの故障

f:id:days_for_development:20170809013810j:image

これはオシロスコープを用いて発振しているか調べる必要がある。発振していないようであればもう一個セラロックを使う。

  • XTAL: 1.6V(一定)
  • EXTAL: 1.5V(sin波)

発振が確認できました。壊れてないようです。

原因2 マイコンの故障

f:id:days_for_development:20170809013903j:image

これはもう最悪。ヒートガンで剥がさないといけない。一度回路をショートさせてしまったときにマイコンが壊れたのかもしれない。

原因3 書き込み基板の不調

ハーフマウスの為に新しく買った書き込み基板なので動作確認が出来ていないのです。(ただ、comポートは認識してるのでこれはあまりないかな)

普段使っているクラシックマウスの書き込み装置も使えないことがわかったので原因がここじゃないことが判明しました。

 4.ここまでのまとめ

電源電圧やMD端子とPC7端子の電位、水晶発振子の発振が確認されたので残る可能性は配線ミスくらいしか思い当たらない。再度、回路とユーザーズマニュアルのにらめっこだろう。

次回、その2に続きます。

マイコンに書き込めない?その2 - Days for development

 

壁距離センサに線形近似を導入しよう

こんにちは。今回は理科大プチコンからクラシックマウスに導入した近似について記録しておこうと思います。

1.導入した経緯

 私は6月のマウス合宿に参加したのですが、その最終日にプチコンに参加しました。あまり調整をせずに本番で動かしたのですが、センサーの閾値と参考値がおかしかったようです。マウスが壁に近寄りすぎた挙句、モーターが脱調して壁にぶつかったしまいました。以前から壁センサーの数値が距離と比例していないことには気が付いていたのですが初めて大会で完走できない事態に直面した為ようやく組み込むことを決意しました。

2.近似を導入する前の問題点

 センサー値が壁に近づくにつれて値が加速度的に増えることは閾値調整の時に把握していました。このセンサーの生データをそのままP制御に持ち込むことで起こった問題は2つです。

  1. ゲインを大きくすると壁から1㎝の地点から中心まで復帰する前に脱調が起こる。
  2. センサーの参考値付近では距離の変化に対してセンサー値の変動が小さく、補正があまり効果を果たさない。

 要するに中心から左右15㎜ほどでしか、中心からずれてもまともな補正がかかるこ

とを期待できないという事態なのです。

3.近似について

3-1.センサー値の特性

 手始めに4つすべてのセンサーに対して距離とセンサー値の関係のデータを取ってみました。

f:id:days_for_development:20170802135917j:plain

点がセンサーの実測値、点線が採用した近似曲線です。横軸はセンサーの電圧(mV), 縦軸はロボットと壁の距離(mm)です。ここから導入すべき数式を算出しました。(写真中の数式)

3-2.近似関数に導入

引数にセンサー値をとる関数を作成しました。返り値は数式の計算結果です。後はこれまでセンサー値で行なっていた比例制御の引数を関数に変更すれば実装完了!

4.結果

以下の性能向上が確認できました。

  1. 壁から1cmほどの位置から走り始めても脱調が起こらなくなった。(補正量が壁付近で必要以上に大きくなりすぎないから)
  2. ゲイン調整が比較的楽に。(脱調しないので)
  3. 壁に近づいても脱調しない。(壁に近づいても比例制御のerror(差分)が急に大きくならないから。)

今度は、ステッピングモーターを使ったマウスでは壁切れ補正をしましょうかね。

以上。

新作ハーフマウスの設計および反省。

 

こんにちは。

前回の記事から随分と時間が空いてしまいました。いよいよ、いろんなことが飽和状態になってきたので整理を兼ねて記事を書きます。

1.製作過程

1-1.回路図

f:id:days_for_development:20170725074148p:plain

 この回路図では見やすさのために機能モジュールごとに区切って配線をおこなった。配線において基本的にはピン同士の距離を最小になるように回路図では設計しました。ただし、パターン図で配線しづらい場合は回路図の回路を変更してネットリストを更新してその都度調整して2層基板に収まるようにしました。

1-2.配線図

f:id:days_for_development:20170725074143p:plain

 配線図は、電源ラインの太さ→部品配置→配線→配置の変更→配線の修正の順に実行した。

1-3.実装

 セオリー通り部品は背の低いものから実装した。

2.改善点

2-1.回路図

 特に発見できず。

2-2.配線図

 水晶発振子とP-ch FETのフットプリント番号が一致していなかった。

 今後は新規で作成したフットプリントと既存の回路シンボルの組み合わせで使用するときはピン番号の確認をしっかり行う必要がある。

f:id:days_for_development:20170725074945j:plain

(中央のスリットがエンコーダーの来る位置)

 磁気式エンコーダーの取り付け基板の銅箔位置に無理がありはんだごての小手先を半田面に持っていけないことが判明した。要改善。

2-3.実装及び回路検証中の不手際

f:id:days_for_development:20170725074716j:plainf:id:days_for_development:20170725074722j:plain

(左:水晶発振子、右:爆ぜたパターンとP-ch FET)

 大まかに実装を終わらせた後、各端子の電位を確認しようと思いテスターを当てた。バッテリーを繋いだ状態でテスターのプローブでショートさせてしまい、パターンが爆ぜる事件が発生。最低でも、 GND, Vin, 3.3V, モータードライバの電源端子用にプローブを当てるための端子が必要。

3.次作について

 今回、初めてSMDを使ったプリント基板を設計しました。設計の拙さとともに実際に回路に起こる問題を想定できていなかったこともわかりました。次作は今回の反省を踏まえた改善を行うとともに機械要素の製作が全く進められなかったことの反省にモーターマウントなどは3D printで行います。

8月中には機体を完成させます。

ではまた。

<modifyed ver> Installation of KiCad

Hello.

I made much progress in March. But, I couldn't write about that progress.

So, I'm going to write about those progresses gradually.

In this page, I’m going to write about installation of KiCad.

1. Why does the foot print editor not move?

I finished to draw circuits for Micro mouse. So, I’m going to make foot print for some SMD chips.

 

f:id:days_for_development:20170423221141j:plain

But, the foot print editor didn’t work.

 

Why? Did I fix the problem?

2. Reproducibility

I tried to fix the problem by a past mean.

days-for-development.hatenablog.com

After that, it only works at once.

I found rules of reproducibility. This editor can work after changing a path. If KiCad restarted, foot print editor doesn’t work.

3.Solution

Finally, I did re-install KiCad from original web site.

kicad-pcb.org

After installation, I changed language into Japanese. 

After that, the problem was solved!

The foot print editor become to be able to work!