0

ドキュメントの第 5 章の波形の例を試していますが、Siggen ポートまたはハード リミット ポートからの出力が見られません。周波数を 50 MHz に下げて、siggen の出力ポートを hardlimit の入力ポートに接続しました。ローカル ドメイン マネージャーから実行しようとしていますが、正しく起動しているように見えます。しかし、[ポート データのプロット] を選択すると、空のプロットが表示されます。ドメイン マネージャー コンソールでは、波形を開始した直後に次のように表示されます。

   INFO:ApplicationFactory_impl - Done creating application DCE:a81037d5-98e5-4e80-9791-0364ec62018a:testWaveform_339_175951424_1 testWaveform_339_175951424
    INFO:DomainManager_impl - Uninstalling application DCE:a81037d5-98e5-4e80-9791-0364ec62018a

すぐにアプリケーションをアンインストールするのは正常ですか、それとも私が誤解しているだけですか?

4

2 に答える 2

0

REDHAWK 1.9.0 を使用してローカル ドメインから testWaveform を起動すると、ドメイン マネージャーがデフォルトのデバッグ レベルを持っている場合、次の出力は正常です。

INFO:DomainManager - ドメイン マネージャーを開始しています INFO:DomainManager - ORB を開始しています! INFO:DomainManager_impl - アプリケーション /waveforms/testWaveform/testWaveform.sad.xml をインストールしています INFO:ApplicationFactory_impl - アプリケーションの作成が完了しました DCE:885f9cdf-fcdd-41a6-9cfd-a0da8289eef5:testWaveform_340_084417030_1 -9cfd-a0da8289eef5

波形を開始していることを確認してください。これを行うには、上部のツールバーにある緑色の [Start Waveform] ボタンをクリックするか、SCA Explorer ビューからアクティブ ドメインの波形を右クリックして [Start] を選択するか、SCA Explorer ビューで個々のコンポーネントを右クリックします。または Waveform Diagram をクリックして Start を選択します。コンポーネントが起動すると、ブロックの上部が緑色に光ります。

これで問題が解決しない場合は、次のデバッグ手順が、この問題と今後の問題を追跡するのに役立つ場合があります。

  • ドメインではなくサンドボックスでコンポーネントを実行およびプロットします。これは、問題がドメイン/デバイス マネージャーの構成にあるのか、コンポーネント内にあるのかを絞り込むのに役立ちます。

  • プロットするのではなく、スナップショット、データリスト、またはポートの監視ツールを使用して、データがコンポーネントを通過していることを確認します。これは、コンポーネントを流れるデータがプロット ツールと互換性のあるタイプではない場合に役立ちます。(BulkIO であり、プロット ツールと互換性のある Hard limit と Siggen を具体的に使用しているため、これは当てはまりません)

  • ドメインとデバイス マネージャーでデバッグを有効にします。ドメインを起動すると、ドメインとデバイス マネージャによって出力されるデバッグのレベルを Trace から Fatal まで選択するためのドロップダウンがあります。コマンド ラインから nodeBooter を実行する場合、フラグ「-debug」を使用してデバッグ出力レベルを設定できます。

  • コンポーネントとデバイスのデバッグを有効にします。これを行う方法の詳細については、このスタック オーバーフローの投稿を参照してください。 波形の一部であるコンポーネントのデバッグまたはトレース レベルでログを記録する方法

これらの次のデバッグ手順はもう少し高度で、主に omniORB 関連の問題をデバッグするためのものです。

  • omn​​iORB は REDHAWK によって頻繁に使用され、独自のデバッグ フラグとツールのセットを備えています。機能の完全なリストについては、omniORB のドキュメントを参照してください ( http://omniorb.sourceforge.net/docs.html )。/etc/omniORB.cfg ファイルに「traceLevel = X」を追加して、omniORB デバッグ レベルを上げることができます。X は、以下に説明するトレース レベルです。
トレースレベル
レベル 0 - 重大なエラーのみ
レベル 1 - 情報メッセージのみ
レベル 2 - 構成情報と警告
レベル 5 - 上記に加えて、レポート サーバー スレッドの作成と
           通信ソケットのシャットダウン
レベル 10 - 上記と実行トレース メッセージ
レベル 25 - 送信または受信 giop メッセージごとに出力トレース メッセージ
レベル 30 - 最大 128 バイトの giop メッセージをダンプします
レベル 40 - 完全な giop メッセージをダンプします

有効な値 = (n >= 0)
  • omn​​iORB 出力または REDHAWK IDE から IOR が与えられた場合、コマンド ライン ツール catior.omni を使用して、IOR を IP アドレス / Unix パイプの場所にデコードできます。catior.omni がインストールされていない場合は、Epel リポジトリ内の omniORB-utils パッケージにあります。

問題をさらにデバッグするためのツールが用意されていることを願っています。それでもプロットが機能しない場合は、追加の詳細とデバッグ出力で投稿を更新してください。プロットが機能する場合は、他の人が同様の問題を抱えている場合に備えて、投稿をソリューションで更新してください。

于 2013-12-09T17:17:22.417 に答える