2

USBスケールのボタンを押すと、USB経由でシリアル通信を送信するソフトウェアを開発する必要があります。ハイパーターミナルで値を確認できます。

シリアル通信に.NETクラスを使用して、データをトラップします。

問題は、私には体重計がないということです。スケールは、RDPで接続できるリモートコンピューターに接続されています。テストしたいときは、スケールのボタンを押すようにクライアントに依頼することができます。

クライアントに1日に100回ボタンを押すように頼むことはできません。スケールが何を報告するかについてかなり良い考えを持って開発する方法が必要であり、解決策があると思うときにのみテストします。

スケールを模倣して、スケールと同じ出力である.NETシリアルクラスに送信できるものをローカルで探しています。理想的には、スケールのデータを記録してから、別のマシンで再生できれば完璧です。

どうすればいいですか?

4

3 に答える 3

2

シリアル ポート エミュレーション ルートを使用する場合は、com0comを参照してください。私は実験室の機器との通信を偽造するために常にそれを使用していますが、うまく機能しています。ラップトップにシリアル ポートがない場合に非常に便利です。

于 2009-01-19T15:43:14.660 に答える
2

1) 通信コードを抽象化します。テスト モードでは、シリアル ストリームではなくデータ ファイル ストリームからロジック関数をフィードします。

また

2) シリアル ポートが 2 つ (または PC が 2 つ) ある場合は、一方のポートを介して通信するスケール エミュレータ アプリをセットアップし、それをソフトウェアが実行されているもう一方のポートに接続します。

于 2009-01-19T15:31:41.563 に答える
1

2 つの問題があります。

  1. .NET シリアル クラスをテストして、シリアル ポート経由でデータ (任意のデータ) の受信を処理できることを確認します。
  2. アプリケーションをテストして、スケールから取得した特定のタイプのデータを処理できることを確認します

1. データを生成できるもの (ハイパーターミナルを備えた別の PC など) を PC のローカル シリアル ポートに接続することでテストできます。

2.(テスト目的で)シリアルクラスを「シリアルクラス+スケール」の組み合わせの「モックオブジェクト」として機能するソフトウェアに置き換えることでテストできます(つまり、シリアルクラスがAPIを使用してプログラムにフィードします)スケールから受け取ると予想されるデータを使用します)。

次の方法で、1 と 2 をテストすることもできます。

  • はかりが送信するデータの種類を送信することで、はかりのふりをするプログラムを作成する
  • このプログラムを実行してシリアル ポートからデータを送信する
  • ヌル モデムを使用して 2 つのシリアル ポートを背中合わせに接続します (1 つのポートから送信されたデータが別のポートで受信され、ソフトウェアに取り込まれるようにするため)。
于 2009-01-19T15:40:28.020 に答える