いろいろと仕様を考えて思い悩んでいます。

1 できるだけ単純なこと。
2 できるだけ制約を少なくすること。
3 簡易なmcuからでも接続できること。

犠牲にするのは、
1 リアルタイム性

ということで、ざっとした案は

ホストはft2232とltc485が2個の組み合わせ。
片方は9600bps、もう片方は250kbps
ホスト動作はvb2008
やりとりするデータは原則として英数字ascii

端末はpic等とltc485の組み合わせ。
各端末に英大文字3文字のIDを配布し、それで回線許可を行う。

基本コマンドは、
ID要求
ID配布
名前要求
名前回答
機能要求
機能回答
crc
エスケープ処理
バイナリ通信 
カプセル化
コマンド実行要求
コマンド結果回答
全端末発呼
プロンプト待ち
ランダム時間wait


picを使いはじめて、システム構成のうえで、シリアル通信の仕組みが非常に重要だと気がつきました。

チップ間はi2cなど優れたシリアル通信の仕様が整備されていますが、長距離伝送はあまりそのような
ものは見あたりませんでした。電気的仕様はRS422/485が広く利用されていますが、その上でのやりとりは
実装ごとにバラバラで、i2cのような汎用性は実現されていません。

長距離にこだわったのは、農業などパソコンを置けない(置きたくない)フィールドで、リアルタイム監視や
ログ収集などが念頭にあったからです。
イーサネットはコスト、汎用性、性能、入手性など優れた点が多数ありますが、デメリットもあります。

・接続距離が原則100m以内に制約される。(延長する場合、接続点に電源確保が必要)
・クライアントにtcp/ipや物理層を実装するのは大変

長い距離の先にある簡素なマイコンセンサーを読み出したり、100Vのオンオフ制御をする程度であれば
イーサネットほど高度な仕組みを使わなくても、RS422/485のシリアル転送でも十分対応可能と思われます。

クライアントを簡素化する代わり、ホストPCを必須にして、サーバー・クライアント方式を採用しました。
サーバーはidの配布やログの保存、バスの利用許可、データの検証などを行います。必要ならば
データベースを稼働させて、クライアントごとの精密なログ管理を行うことも出来るでしょう。

どこまで具体化できるか分かりませんが、オープンな開発を進めていければと思います。
シリアル通信について技術的な検討を書き綴っていきます。
主にRS485を使用した半二重通信について考える予定です。