szdrが2012年12月 4日に書いた記事です。

私とI2CとCANと

書いた人: szdr | 12/12/04 16:59 | コメント(0)

ここ最近オメガタイフーンとか温度計とかの記事ばっかりだったので、たまには機体に載せるものをば。

Meisterでは「対気速度計」、「回転計」、「高度計」を機体に載せていて(他にもいくつかの計器を載せているのですが、それについてはおいおい...)、これらの計器は「データロガー」と繋がっています。

「データロガー」はその名の通り、各計器から得られた情報をSDカードに記録する計器なのですが、「データロガー」担当の悩みの種の一つとして、各計器との通信規格をどうするかという問題があります。

前述の計器との通信規格として、昨年度は「I2C」と呼ばれる通信規格を用いました。
「I2C」は、携帯電話の中にある複数のチップ間での通信などに使われる規格です。

「I2C」は信号線がたったの二本で済む(信号線が多いと断線という恐怖に怯えなければならないのです)、比較的実装しやすい、などといった利点があります。

一方で、「I2C」は非常に近いチップ間同士の通信を前提としたものであるため、数mの距離で通信をしなければならない私達には不向きな通信規格と言えます。昨年度はこの問題を解決するために、通信速度を落とすなどといった対策が取られました。

昨年度はとりあえずこれで通信出来ていたため、今年度も「I2C」を採用しようとしたのですが、そもそも短距離間の通信を前提としたものを長距離間に使っていいのか、といった不安が私の頭の中をグルグルと駆け巡り、夜も満足に眠れぬほど悩み抜いた結果、「CAN」という通信規格が候補に挙がりました。

「CAN」は自動車の電装機器間の通信などで使われるといった、信頼性の高い通信規格です。
前述の「I2C」と同じく二本の信号線を用いて通信を行うのですが、中~長距離でも(少なくとも私達の使い方では全く問題の無い距離で)通信を行うことが出来るのです。

それでは「CAN」の問題点は何であるかと言うと、「CAN」通信を行うためには、いくつかのICが余計に必要となり各計器が大型化してしまう、規格の複雑さのために実装が非常に難しいということが挙げられます。

とりあえず十二月時点で「CAN」の通信は確認出来たため、今年度は「CAN」を採用することとしました。



ここでは「I2C」と「CAN」について取り上げましたが、他にも世の中には通信規格がいくつもあり、それぞれに長所があり、また短所があります。この日誌のタイトルは金子みすずさんの詩から取りましたが、つまりそういうことです。「みんなちがって、みんないい」ということです。




(書いてて思ったんだけどさあ、写真無いから絶対見づらい記事だよねこれ。)


コメント(0)

この記事へのコメントはありません

コメントを書く


Copyright © 1992-2010 Meister. All rights reserved. E-mail : webmaster@meister.ne.jp