ナキのブログ

ナキのいろいろについて書くブログです

今日はarduinoの高速化についてです。

今日慌ててブログを書いているのは大雑把に実験しすぎて誤った理解をしてしまったからです。
というわけでしっかりやったほうの実験について話をしていきたいと思います。

まず、今回arduinoの高速化をするにあたり僕が用いた方法はレジスタをいじることです。
僕は素人であんまり詳しいことはわかっていないので詳しく知りたい方はほかのブログを参照してみてください。「arduino 高速化」で検索するとすごくわかりやすいサイトが出てきます。

今回やったことを簡単に言うと、digitalWriteとdigitalReadの代わりにPORTD |= _BV(3)や PIND & _BV(2)などの暗号のようなものを使うことでプログラムが一周するのにかかる時間を減らそうというものです。
具体的にはナキロボのメインプログラムを100周するとレジスタを操作したものとそうでないものではどれくらい高速化が図れるのかという検証を行いました。

ただ、前提条件としてテストをする際にI2cを使ったスレーブとの通信とシリアル出力はしていません。
デバッグ用のシリアル出力なんて今回のテストにはいりませんもんね!!!!!!
また、事前の検証でI2cがかなり遅いことはわかっていたのでポート操作の成果を見るという観点からは不必要だと思ったので抜きました。

さて、検証の結果ですが、既存のプログラムは67940(μs)、レジスタを叩くほうが57588(μs)という結果になりました。
これは100周した値なので単純計算では1周あたり約0.1ミリ秒の差があるということです。
この差によって何かが変わるかどうかは正直わからないですが、早くなって損はないと思いました(こなみ)
あとプログラムの容量はレジスタを

終わりに、とてつもなく適当な検証をしてしまって申し訳ありませんでした。
また、この検証も間違っている可能性が大いにあることをご了承ください。


追伸 今回の検証はあくまで僕のロボットのプログラムをベースとして行っているものなので後日改めて検証したいと思います。

今日は僕が永遠と反省するだけのブログです。



まず、先日のブログで「これからやることの宣言」をしましたがこの度ロボカップジュニアジャパンオープンへ参加させていただけることとなりましたので、再び保留とさせていただきます。
ごめんなさい。


さて、今日の話題に行きます。




今回のミスは非常に初歩的なものであり、基本ができている方々にはあきれられる類のものです。
また、この先は自分への戒めという面が非常に強いものとなっておりますのでご了承ください。










ロボカップ関連で先日発注した基板のミスが見つかったことをツイッターでつぶやいたところ

というリプをいただきました。
このリプがなければおそらくブログを書いたりはせずなあなあにして終わらせてしまっていたと思います。まずそこが間違いですね。
ミスの詳細は以下のツイートを見ていただければと思います。



まず、一つ目のツイートと三つ目のツイートで理由が変わっています。
一つ目は「どうせトップとボトム間違えたんでしょ」という適当な発言です。

その後、このリプに返信するために少し回路を確認したところ原因が三つ目のツイートであることに気付きました。

また、二つ目のツイートで「自動配線を使ったから」という発言をしたところ

このような意見をいくつもいただきました。

僕はEAGLEをネットで必要な箇所を調べながら利用しており、自動配線がそのようなものだとは知りませんでした。

今回のミスの原因をまとめると
・基板作成時の確認不足
・ライブラリを作る手間を惜しんだこと
・自動配線利用に関する知識のなさ
だと考えています。
これらはすべて、自分の横着から来ており、それは物を作るうえであってはならないことです。

僕は今回の件を深く反省し、
・基板作成時のチェックの仕方の見直し
・ミスの原因解明を憶測だけでなくしっかり分析すること
・対象を絞った情報収集だけで無く、幅広い情報収集
以上の項目を具体的な改善点にし、適当な作業や横着を行わず、正確な動作のために全力を尽くしていきます。



このようにしっかり反省する機会を与えてくださった方々に感謝し、今後の活動の糧にさせていただきます。



このブログに対するご意見や改善点などあれば教えてください、よろしくお願いいたします。

お久しぶりです、今日はこれからのことについて書こうと思います。

とりあえず


祝!家庭学習期間突入!!!!!


ついに待ちに待ったこの日が来ました。

ここで家庭学習日一日目の行動を見てみましょう
10時起床→ゲーム→ご飯→アニメ消化→ゲーム→ご飯→ドラマ→ゲーム→アニメ→就寝



・・・



なんだこれは

このままではゴミカス大学生になってしまう

というわけでこれからの目標を決めてキラキラ工大生を目指します!


まず僕は以前潜水艦を作るという記事を書きましたがロボカップが忙しすぎてそれどころではありませんでした。
なのでとりあえずこれを実行していきたいと思います。
ただこれはあくまで副業と言いますかサブで、メインは当然ロボカップジュニアです。

東海大会でいい順位ではなかったのでジャパンいけるかわかりませんがとりあえずロボット作ってます。
それも今まで作ったことが無いタイプなのでこうご期待(ノウハウがなさ過ぎて一部強引な箇所がありますが)
もしジャパンいけなかったとしても瀬戸内オープンに参加したいと思ってるので皆さんよろしくお願いします。

今日はこの辺で


↑このページのトップヘ