• ベストアンサー

機器間のリアルタイム通信について

5m程離れた1対1の機器間での20byte程度のデータの通信で、0.5msec以下のリアルタイム性が必要なのですが、このようなことは実現可能でしょうか? 現状はどうしてよいのかわからず困っています。どなたかご存じないでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.4

私も結構難しいと思います。 現在のデジタル伝送は100Mbpsだの1Gbpsだのといいますがこれはあくまでも通信が始まってからの最高速度です。 (LAN、USB、IEEE1394・・・) ヘッダーのつけ外し、ハンドシェイク、衝突検出、エラーチェック、再送等のオーバーヘッドなどを考えると 0.5msの実現は並大抵ではないでしょう。 既に指摘があるように両端でのパラシリ、シリパラ変換などの処理時間もネックです。 LSIレベルで自作もしくはメーカー特注なら可能かも知れません。

その他の回答 (4)

回答No.5

どこからどこまでを0.5ms以内に抑えれば良いのかということなどをきちんと決めることでしょう.何をしてから,相手側で何がおきるまでが0.5msなのかということですね。 まずはそのために必要なアクションとそれにかかる時間,CPUにやらせているほかの処理や場合によってはバスの混み具合による遅れなどをひとつずつ考えていきます。 それぞれのステップで必要となるであろう時間を積み上げていけば0.5msが果たして可能な値なのか,かなり厳しい値なのかということが見えてくるでしょう。

623AC
質問者

お礼

maccha_neko様はじめ、皆さん、早速ご回答をいただきありがとうございました。

回答No.3

>このようなことは実現可能でしょうか?  システム全体として見た場合には現実性としては厳しいです。 20Byteを0.5msecとなると、単純計算で40Kbpsの速度があればいいですからRS232のようなシリアルでも転送のみは実現できます。 (転送データでの理論速度での話ですから0.5msecに関連させれば、実際にはその10倍提示の速度は必要です。) しかしながら、それを「送信する側」と「処理する側」にかかる時間を考慮すれば、msec以下の単位でのオーダーは非常に厳しくなります。 (単純に遅れればいいというだけなら話は別です。)

  • precog
  • ベストアンサー率22% (966/4314)
回答No.2

普通にLAN (100Base-T等) でその程度のレスポンスは得られると思いますけど、何が難しい条件なのでしょうか?

  • MOMON12345
  • ベストアンサー率32% (1125/3490)
回答No.1

20byteを500μSだと400kbps程度のシリアル通信でも可能ですね。 これならRS-232C(422)でもいけるし、同期シリアルでも、線を増やして良いならパラレルでも、何でも良いと思います。

関連するQ&A

専門家に質問してみよう