スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

色々調べる

今日は無線通信の最近の規格や動向なんかを色々調べる.
やはりBluetoothモジュールがいちばん手軽っぽいということで,コレを買うことに.Class1なので100mぐらい電波が飛ぶ.モジュールのデータシートを見ると920kbpsまで通信できると書いてあるし.(Bluetoothの実行最高値720kbpsを超えているのが気になるが・・・まぁイケてるバッファかなんかで補うのでしょう,きっと!)
PC側はUSBにさせるやつをヤマダ電機あたりで買ってくるとしよう.

Bluetoothではハミング符号というのが使われていることを知った.なるほど,誤りbitを修正できる符号があったのか・・・そういえばなんか,信号処理の授業でやったような気もする・・・名前すら,うろ覚えというのはイカンなぁ・・自分は何をしに大学に行ったのだろうか・・・
誤り訂正ビットが入っているならノイズまみれのデータが来ることはないだろう.
Bluetoothで実レート920kbpsが出ることを期待しよう.
スポンサーサイト

通信三昧


週末も通信のテストに明け暮れる.まずはFTDI社のUSB-シリアル変換IC(FT232RL)を使う.マルツ電波7.3728MHzのクリスタルと共に購入.USB変換モジュールのTxD,RxDをdsPICのUARTへ直結し,dsPICは7.3728MHz×8=約59MHzで駆動する.これで前回の920kbpsまでは無事に送受信できた.さらにdsPICをオーバークロック動作させて118MHzまであげ,倍の1.84Mbpsを出そうとしたがこれはダメだった.
FT232RLのデータシートをよく読むと,細かくボーレートを設定できるのは1.5Mぐらいまでで,次はいきなり3Mちょうどしかないことが判明.やっぱりそう甘くない.

無線通信のほうも,ボチボチ限界が見え始めた.見通しがよくて電波がうまく届いたときにはこのモジュールのうたい文句通りの115kbpsが出せるが,エラー処理用の符号埋め込みやら何やらを入れると半分以下までbpsが落ちてしまった.有線が920kbpsは出るので無線化すると一気に1/20倍速という寂しい結果に・・・
また,どんなにエラー回避をしても,現状のモジュールでは秒単位で完全にデータがとぎれることがあり,その区間は前回のデータをバッファから参照し続けるか,タイムアウトで自動停止するなどの処理がロボット側で必要になる.(さもなくば暴走するハメに・・・)
このモジュールでは送受信機の位置が固定の場合はまだ良いが,移動ロボットの遠隔制御に使うには少々難がある.
ここはひとつBlueToothかZigBeeあたりに手を出すときなのかもしれない.
まずはいしかわさんの「できる周波数ホッピング」を読んで勉強しよう.

RS-232Cの無線化


今日はネコバスを分解する.秋月のRS-232C無線モジュールを取り出して通信の信頼性向上にトライするためだ.
 このモジュールはただ垂れ流し的にシリアルデータを送受信しているだけなので,ものすごくゴミが乗りやすい.基本的に常時ノイズが乗っている上に,障害物があると通信が途絶して嵐のように無意味なデータが送られてくる.つまりは,エラー回避のアルゴリズム検証にはもってこいのモジュールなのであるが,送受信をうまく工夫して少しでもノイズの影響を減らしてみたい.
 まずは手っ取り早くパリティビットを有効にしてみる.気持ちマシになる程度・・・パリティエラーではじかれない雑音データがまだまだ残る.今度は1byteごとに決まった符号を送って照合させてみる.これはなかなか効いた.1byteだからノイズが完全にランダムだとすると1/255の確率で一致しない限りはカットできる.おもしろいのは,照合させる符号を00とか,FFにするとノイズに破られやすいのに対して,AA=10101010のように01交互の符号にするとノイズをうまくカットできる率がハネ上がる.
よくFlashやEEPROMの上書きコマンドでAA55AA・・なんていうおまじないみたいなのがあるけど,アレはそういう意味だったのか,ちょっとでもノイズ誤作動が起こりにくいように!・・・いや,これは勉強になる.
無線は奥が深そうだ・・・

dsPICでUARTの再テスト



シリアル通信の速度が上がらない原因がだいたい分かったので,dsPIC30F4012でリベンジを仕掛ける.
おそらく秋月電子のUSB-シリアル変換器に使われているIC(prolific PL-2303)で設定可能なbps値とSHマイコンで設定できるbps値の相性が悪い.
dsPICのほうがSH2-Tinyに比べてX'talの周波数の相性がいいのでこちらで再トライしてみることにした.
dsPICで内部RC発振子(7.37MHz)を使い再度ボーレートの限界をみたところ,921600kbpsまで通信できた.予想通り,今度はうまくいった.
ただし,RS-232Cレベル変換ICのほうが460kbpsまでしか保証されていなので,920kbpsではかなり波形がなまってしまった.また,dsPIC内蔵クロックはRC発振なのでそもそも精度がイマイチなのが気になる.ちゃんとした外付けクリスタルを使い,TTLからダイレクトにUSBにした方が有利だろう.
いったんMbpsオーダー近くまでUARTで通信可能ということがわかったので,次は無線の安定化などをやっていきたい.

FEMソフトあさり

今日はFEM解析ソフトを色々探る.
そのなかでQuickFieldというのを見つけた.完全フリーで節点数は250点限定だが,なかなか操作感がQuickでイイ.
プリプロセッサ,ソルバー,ポストセッサが一画面に統一されていてマウスクリックで簡単操作.
お絵かきCADで描いたDXFもインポートできる.日本語解説ページこちら

一度覚えると上記結果が出るまで10秒かからない!
さすがにノードが少ないため絶対値を信頼するまでには至らないだろうが,応力の集中具合なんかを視覚的に捕らえるのには十分使えそうだ.熱伝導の時間応答や磁力の解析もフリーでできる.当分遊べるソフトである.

SH2-Tinyの火入れ

今日は死蔵していたSH2-Tiny(秋月電子製)に火入れしてプログラム環境を整える.秋月のSH2-Tinyは単体だと1500円と激安にもかかわらず,50MHz動作が魅力的なマイコンだ.

SCIの通信速度UPをはかるべく,簡単なプログラムで性能をチェックする.通信速度は128kbpsまではできたが,256kbpsではフレーミングエラーが多発してまともにデータを送れない.
インターフェースICやUSBーシリアル変換ICの性能的には460kbpsぐらいは出るハズなのだが・・・
高速,大容量というからには1MbpsぐらいでPCとやりとりしたいものだ.シリアルではさすがにムリがあるのかもしれない.USB-PICに手を出すしかないのか・・

今後の予定など

雑誌の執筆依頼が来た.内容はフリーの設計ツールを使ったメカ設計の進め方を紹介するもの.
さっそくフリーのCAEソフトの調査などを行うも,あまり収穫なし.3D-CADやCG用のモデリングツールは最近充実しているが,3Dの解析ツールは依然高嶺の花という感がある.ソルバーを自作する手もあるが,自分は数値解析そのものに興味があるわけでないので,「手っ取り早くおいしいところだけ使いたい」のが本音である.もう少しおいしいソフトがないか調べてみたい.

さて,それはそれとして,自分のマシンの開発ももっとアクセルを踏み込む必要がある.コンセプトを明確にしてモチベーションを上げていきたい.

次のコンセプトは「信頼性」である.
・動作を安心してみていられるロボット(タスク達成確率の3σ)
・壊れる心配がないロボット(ソリッドステートなロボット)
・メンテナンス負荷が小さい(無線化,無接点化,自己案内)

上記達成のために,技術的テーマとして「高速・大容量」を有効に使っていきたい.
マイコンやエレキ系だけでなく,メカも含めた「高速・大容量」で行きたい.

パネルの固定など





今日は軽めの作業.LCDパネルユニットを取り付けるのと,C-FRPの外装パネルを一部作り直した.本当は下側のユニットごと一体で作り直した方がカッコイイのだが,それだとほとんど全バラにしないといけないのでその気力はない・・・

上面カバーは0.5mmのPP板を使用.薄板の弾性を利用してねじレスで開閉ができるようにした.プログラムの書き換えをするときなどはめくって開ける.

LCDパネルの視認性とボタンの押し具合は良好.
LCDのオレンジ色バックライトはなかなかオシャレで気に入った.どことなく今はあまり見かけなくなった公衆電話のディスプレイを思わせる.

外装の再検討など


今日はLCDユニットの取り付け位置とカバーを検討する.検討するといっても取り付けられるところはほぼ限定されているので迷うところはない.

いしかわさんの作ってらっしゃる手乗りスカラロボットに刺激を受ける.
そうか,交互にボタンを押し合ってロボットとゲームをするのか!これは思いつかなかった.
ボタンでロボットを操作するのではなく操作させるところがおもしろい.
しかも,人間とロボットが直接ふれあうことがなくて,ゲーム板を介して.コレなら人間はケガをしないし,ロボットは壊れない.お互いイイ関係で触れあえる.さすがいしかわさん,アイデアが実用的ですばらしい.

リモコン操縦



今週はあめーば3rdのリモコン化のプログラムを作成.
コントローラはかなり迷ったが,結局価格には目をつむってProBoを買った.
ProBo独特のボタン操作の使い勝手は歩行モードではなかなか良好だが,車輪モードではやはりアナログ入力が欲しい感じもある.専用の受信機はシリアルで8CH分のパルスが取得できるので配線がスッキリする.これはGood.
 ひとつ問題なのは遮蔽物で電波がとぎれたり,送信機がOFFになるとでたらめなパルスが出力されるところ.IICとの定期的な通信でデータ取得しているので,暴走を防ぐためのエラー回避のためスレーブ側のプログラムが複雑になってしまった.
Ride用の無線システムではノイズ回避機能のついたものが欲しいところだ.GHz帯の無線の方がいいのかな?BlueToothはどうだろうか.比較して試してみたいが,しばらくは追加投資は無しである.

プロフィール

もやね

Author:もやね
長野県在住の会社員(メカニカル・エンジニア).
ロボットは完全な趣味としてやってます.
E-mail:
mo_ya_ne[a]yahoo.co.jp
[a]⇒@

最近の記事
最近のコメント
最近のトラックバック
月別アーカイブ
カテゴリー
FC2カウンター
ブログ内検索
RSSフィード
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。