2016-05-11 7 views
-1

私はいくつかのプロジェクトで同じモデルの装置からポーリングするように構成されたModbusプログラムを持っています。関心のあるデータはすべて収集しましたが(いくつかの試行後)、取得したデータの数は500から510までほぼ同じですが、データのリフレッシュ速度が大きく異なる可能性があります。遅いデバイスで何か問題を起こす可能性はありますか?断続的なModbusの速度

ご協力いただきありがとうございます。

+0

私はあなたに私達に働くことをほとんど与えなかったので、私は閉じるように投票しました。心に湧く質問 - それはコード関連かハードウェアですか?それがハードウェアの場合、それはこのサイトの送金になります。ソフトウェアの場合は、どのライブラリを使用していますか?何を試してみましたか、なぜそれがこのようなことだと思いますか? –

+0

根本的な原因を突き止めることができなかったので、私は開こうとしています。しかし、私は、通信トランザクションのパケットがプロジェクトごとに異なることを発見しました。驚くべきことに、ソフトウェアとハ​​ードウェアの両方から何のエラーもありません。したがって、通信を高速化するために取引をどのように減らすかという問題が絞り込まれていますか?ありがとう。 – Listo

答えて

0

Modbusプログラムが効率的にポーリングするように最適化されていることを確認してください。

ポーリング方法がインテリジェントかつ効率的ではないため、経験を通じ、Modbusのポーリングが遅くなることがあります。

たとえば、アドレス10,11,12,13,14,15,18,20からポーリングする必要がある場合。 プログラムは10から15までを1回でポーリングし、18から20まで個別にポーリングする必要があります。

エッセンスは、一度に1つのアドレスをポーリングする代わりに、1つのパケットで連続したアドレスをポーリングします。あなたのプロジェクトが大規模であれば、これは間違いなくあなたのプログラムを大幅にスピードアップします。

+0

あなたの返事をありがとう、それは何らかの形で私を助けます。多くの試行後、あなたの情報には少し誤りがあります。トランザクションあたりの最大レジスタは125までになる可能性があります。そのため、提供されている例では、1回で10から20までフェッチする必要があります。 – Listo

+0

FYI、ここにリンクがあります:[modbusをスピードアップする方法](https://www.integraxor.com/how-to-speed-up-modbus-communication/) – Listo

関連する問題