|
|
|
|
| HOME | Diary | Profile | Auction | BBS | Bookmarks | Shopping List |
|
│<< 前のページへ │一覧 │
書類仕事もあって、クアッドコプター進んでませんが。。。 振動をどう対処すればいいのかyoutubeのQuadcopterの動画を見てて思ったのは、ちゃんと飛んでるやつは、自分のと比べてモータやペラの振動が小さいなぁ、ということ。 入手できた逆ピッチのAPCのペラは結構重く15g,手持ちのGWSのペラ5gの3倍。丈夫なんですが手持ちのモータと軸径があってないこともあって中心が出てないし振動が大きいのはこのせいかも。 ということでGWSのの軽いペラで逆ピッチが入手できるものを探してからまた続きをやります。
プログラム作って送受信してみました。 アドレスとコマンドとして2バイトのデータを送るとして、アドレスとコマンドの和をチェックサムとし、ヘッダとデリミタをつけて送ります。 受信側ではデリミタを監視して、受信したらそこまでのデータのヘッダを探してその後の2バイト抜き取ってチェックサムが正しければOKとしました。 ノイズの影響で1度で確実に送れませんが、数回送れば受信できるので、これにて終了。 まとめー> 微弱無線モジュール
昨日の続き。 素直に動かないのでオシロで信号を確認。 信号なしの場合、ミリ秒オーダーのノイズがひっきりなしに出てる。 これにシリアル信号乗せても判別できるはずがない。 おもいっきり速度を下げて300bpsで大文字の”U"、コードはバイナリで01010101を連続して送ってみると認識されたのがこちら↓ 1200bpsだと、信号の最初がなまって読み取れない。 つまり、300bpsまたは600bpsでソフト的に送り方を工夫してエラー処理を行えば送信できそうではあるけど、やっぱりちょっと面倒。
昨年度に買ったこれ↓ http://strawberry-linux.com/catalog/items?code=82003 http://strawberry-linux.com/catalog/items?code=82004 使ってみました。 まずは、Arduinoから、デジタル信号を周期的にON-OFFさせて無線で送信、 同じArduinoで受信してLEDを点滅させてみました。 目視だと問題なく点滅してる。 ただ、微妙にノイズが乗ってる感じがするかも。 次に、USB-シリアルポートを使ってシリアル信号を無線で送信、 Arduino側で受信うまくいかない、(削除) 何も送らなくても不規則な値のら列を受信し続けています。やっぱりノイズを適当に解釈して受信し続けているようです。 やはり、シリアルポートを直接使って送受信することはできないようです。 プログラムでノイズを判別して、誤り検出を含めてデータ送受信する必要がありそうで、ちょっと面倒ですね。 -追記- 昨日は、信号が反転しているかもしれないのでトランジスタ1石で反転してみたって書きましたが、反転してるわけではなかったのでその部分を削除しました。
ラケット振ったりするなら、スイングスピードに関する信号も取りたいよなぁ、と思って 残りのアナログポートにも入力できるように端子を出しました。 踏み込みによる重心移動とスイングスピードがほぼ同じでピークを示すデータがとれました。 テニスやってる先生と話してみました。 データを取るとこうなるというのは面白いけど、練習に使えるかは疑問。 上級者なら詳細なデータが取れるとそれなりに活用方法はあるだろうけど、 必要なデータを得るには、種目に特化してセンサ系を組んだほうがいい。 ヘタな人がヘタって分かるデータがとれたからって、どうなの?って結論。 なので、電子工作としてはここらで終了としますか。。。 まとめ→ 加速度をBluetooth送信
先日作ったセンサの応用に簡単な実験。 卓球を5年くらいやってた人(自分)のヘソ前にセンサを付けて素振りした時のセンサの値をログにとってグラフ化。 結構簡単におもしろいデータが取れそうなのでちゃんと研究してる人いそうだなぁ、と思って検索したらいらっしゃいましたので、ブックマークしておきます。 例えば↓ http://www.rcp.keio.ac.jp/sip/technic_patent/technic/doc/ohgi.pdf http://toragi.cqpub.co.jp/Portals/0/backnumber/2010/10/p172.pdf 学校の部活の指導用などに、安価に組み込めるといいですね。
現状の制御ループについてまとめます。このままで良いかはわかりませんが。 1)制御ループは、 1周期の時間計測、3軸ジャイロ、3軸加速の読み取り、 時間で補正してジャイロの積算により角度の算出、P,I,D制御値の計算 を行なっています。通常3ms程度で回っていますが、割込み等が入ると10ms 以上かかる時があるので角度計算に時間補正は必須。 2)制御ループ内で時間をカウントし、およそ20ms周期でモータ出力を制御 3)100ms毎に割込みで、R/C受信機を読み取り。 4)外部割込みで超音波線センサのパルスを読み取り。 5)GPSはシリアル通信で読み取る予定。
Arduino(ATmega328)のアナログポートは6ポート、昨日作った3軸加速度だけではあと3ポート空いてるので、ジャイロを追加してみました。 こんな感じ↓ 一緒にまとめてビニールテープでぐるぐる巻きにして動作確認。 角度もオフセットをキャンセルした電圧のよみを積算しただけの値を連続して出力。 またちょっと夢が広がります。
同僚と話をしててあったら何か使えるかなと思って、2-3時間で工作。 Atmega328と秋月さんの3軸加速度センサと端子を並べてハンダ付け。 3軸加速度の値はアナログ値でマイコンで読み取り。 プログラムと動作状態はこんな感じ。 X,Y,Zの値がコンマ区切りでダダ流しでPCのに送られます。 グラフ書いてみたところ。 いろいろ面白い使い方ができそうです。
AR.Drone借りてきて飛ばしました。この安定感には脱帽です。 闘志が湧いて来ました。 大きさを比較すると、自作のクアッドコプターと偶然にもほぼ同じ。発泡スチロール板でガードを作ってもいいかもしれませんね。 AR.Droneを操縦して、高さ方向の制御をかけた方が操縦しやすいなぁ、と思ったので、早速ですが超音波センサを取り付け。 置いた状態では地面に近すぎですが、地面から2センチ位までゆっくり上昇・下降できれば御の字です。 使った超音波センサの信号は、アナログ、パルス幅、シリアルの3通り出てますが、今回はパルス幅を読み取ることにします。比較した結果、誤差と変動がすくなく安定した距離が読めます。 マイコンの処理がだんだんと込み入ってきましたが、ArduinoのDigital 3 pinに接続して、割込み処理でパルス幅読み取りを行なってみるつもりです。 Android端末/iPhone/iPad/iPod touch等スマートフォンで操縦!新感覚Wi-Fi コントロールラジコンヘリコプター!ラジコン ヘリ(室内・屋外) Android端末/iPhone/iPad/iPod touchで操縦! PARROT AR.Drone 楽天から買えるのはこれ↓ どんな信号がでてるかは不明。 超音波センサー USTX-1(送信部) │<< 前のページへ │一覧 │ 一番上に戻る │ |