[openrtm-users 02289] Re: Python版のRTC-Daemon

Ando Noriaki n-ando @ aist.go.jp
2011年 10月 19日 (水) 01:51:41 JST


安藤です

coilのDLLとかをロードしに行ってるみたいですね。
モジュールロードパスをRTCのみがおいてある
場所にしてみてください。

ただ、どんなDLLをロードしても止まるのはまずいのですが、
今すぐにはわからないので、あとでもう少し詳しく見てみます。


2011年10月18日18:11 Yuki Suga <ysuga @ ysuga.net>:
> 安藤先生:
> 菅です.
>
> より詳しく報告します.
>
> 環境: Win7 64bit OpenRTM-aist 1.1 C++RC3, Java RC1, Python RC1
> 手順:
> 1.ネームサーバ起動
> 2.RTSE起動
> 3.%RTM_ROOT%\bin\rtc.confを添付のrtc.confに変更
> 4.RTC Daemonを起動
> 5.RTSEでlocalhost/manager.mgrを選択
> 6.ここでフリーズ.RTSEが応答なし状態になります.
> RTCDのプロンプトにはLoad failed.と8行出てきます.
>
> この時点で遮断して,作成されたログファイルも添付します.
> 確認していただけますか?
> よろしくお願いします.
>
> ではでは
>
>
>
> 2011年10月18日22:48 Ando Noriaki <n-ando @ aist.go.jp>:
>> 菅さん
>>
>> 安藤です
>>
>>> ■やはり,マネージャの挙動がおかしいです.
>>> 3つの言語を同時に入れています.
>>> すべてのモジュールの読み込みをコメントアウトしてからStart RTC Daemonで起動する→RTSEでmanager
>>> viewを確認しようとするとload failedと出力されて固まる
>>
>> これは、固まったままうんともすんとも言わなくなります?
>> それともしばらくすると戻りますか?
>>
>> Windowsだと、DLLのロードが激しく遅いため、
>> loadable moduleのリストを取得するのに少々時間がかかります。
>> ただ、結果をキャッシュしているので二回目以降はすこし
>> マシになります。もし、全く固まるのであればバグですので、
>> 状況をもう少し詳しく教えてもらえないでしょうか?
>>
>>> という状態です.
>>>
>>> この状態だとどういう事が起こっていますか?ご教授いただけますか?
>>
>> 1. RTSEのマネージャviewにアクセスすると、マネージャ(rtcd)に
>> 対してロード可能なモジュールの一覧を問い合わせる
>> 2. rtcdはモジュールロードパス内にあるローダブルモジュールRTC
>> に対してrtcprofを使ってRTCのプロファイルを取得しに行きます。
>> 3. rtcprofはモジュールをロードして、RTCのプロファイルを取得し
>> 標準出力に表示するプログラムです。
>> この時、特にWindows上で、RTCの初期化関数XXXInit()がDLL_EXPORT
>> されていないとload failedとか出ます。
>>
>> こんな感じになります。
>>
>>> 1.0RELEASEあたりから,rtcprofが導入されるなど,たぶん多言語への対応が進んでると思いますが,
>>> その辺の挙動が把握しきれてないので・・・すこし教授頂けるとソースを読む効率が上がると思うので・・・すみません,お忙しい中・・・orz
>>>
>>> 1.ログファイルを見るとC++のrtcd.exeを読んでもpython版のモジュールを読み込もうとしているようですが,
>>> どの部分で他の言語のManagerを起動してますか?(そもそもやってますか?)
>>
>> 言語間の連携部分は未実装なので、プロファイルの取得はしてますが、
>> 他の言語のマネージャの起動はしてなかったと思います。
>> 基本的にはC++のマネージャに対して、create_component() を呼んで
>> rtcd上でコンポーネントを起動する、というところまでです。
>> マネージャViewでは、一応ここまでは出来ると思います。
>>
>> なお、全くできないかというと実はやり方はあります。例えば、
>>
>> C++ rtcd ポート2810 daemonモード(-d) オプション
>> Python rtcd ポート2811 daemonモード(-d) オプション
>> Java rtcd ポート2812 daemonモード(-d) オプション
>>
>> のように起動して、
>> rtcd (C++) のcreate_component() を以下のように呼び出せば
>> Python上のrtcd上でコンポーネントを起動できます。
>>
>> create_component("ConsoleIn?manager=localhost/manager:2811&<other options>...");
>>
>> ただ、Pythonのrtcdに直接アクセスしたほうが早そうですが。。。
>>
>> このあたりは、現在OMGで議論しているデプロイメントに
>> 関する標準とも関係してくるので、コンポーネントの起動や、
>> プロセス上でのグルーピング、多言語環境での扱いなど
>> 現在検討中です。何かご意見有りましたらお知らせ下さい。
>>
>>> 2.多言語に対応していると思いますが,その辺のrtc.confの設定方法がドキュメント化されていないのでわかりませんrtc.conf.sampleにも記述が無いです.たぶん,Pythonならmanager.Python.load_pathsだと思いますが・・・
>>
>> DefaultConfig.hのことでしょうか。
>> manager.Python.load_paths とかはこれを使う機能が
>> 残念ながらまだ実装されていません。
>>
>>> 3.Python版のrtcdはrtcd.confを読み込むのですか?rtc.confではないのですか?C++でもそうですか?
>>
>> 前のメールはrtcd.conf を rtc.conf と勘違いしてました。
>> デフォルトではrtc.confを読み込みます。
>>
>>>
>>> すこしご教授いただければと存じます.
>>> よろしくお願いします.
>>>
>>>
>>> 2011年10月17日8:32 Ando Noriaki <n-ando @ aist.go.jp>:
>>>> 菅さん,皆さん
>>>>
>>>> 安藤です
>>>>
>>>>> OpenRTM-aist MLの皆さま:
>>>>> お世話になっております.菅です.
>>>>> (まとめて報告出来なくてすみません...)
>>>>>
>>>>> 件名の通り,Python版のRTC-daemonが起動できません.
>>>>>
>>>>> 1.スタートメニューのショートカットが間違っています.
>>>>> Start RTC Daemonというショートカットの先が,rtcd.confになっています.
>>>>
>>>> すみません,なってますね.修正します.
>>>>
>>>> 調べる過程で,rtcd.pyがカレントにあるrtc.confを
>>>> 読み込まない,また-fオプションでrtc.confを指定しても設定が
>>>> 行われない現象がありました.Win7 64bitです.
>>>> ただし,コマンドラインから任意のオプションをしていする-o は
>>>> 有効でした.(-o corba.nameserver:localhost,192.168.47.1 など)
>>>>
>>>> 調査・修正よろしくおねがいします.>栗原さん
>>>>
>>>>> 2.rtcd.py rtcd_python.bat,どちらも起動しません.
>>>>> どちらもマネージャが起動しません.すぐに終了してしまいます.
>>>>
>>>> 具体的に,どのようなメッセージが出るとかわかりますか?
>>>> -d オプションをつけても同じでしょうか?
>>>>
>>>> rtcd はデフォルトでスレーブモードで起動して,RTCが一つもない状態だと
>>>> 10秒程度で終了するようになっています.
>>>> http://openrtm.org/openrtm/ja/content/rtcconf%E8%A8%AD%E5%AE%9A%E9%A0%85%E7%9B%AE%E4%B8%80%E8%A6%A7#toc3
>>>> manager.shutdown_auto の項目
>>>>
>>>> http://openrtm.org/svnroot/OpenRTM-aist/trunk/OpenRTM-aist/etc/rtc.conf.sample
>>>> Manager auto shutdown options の項目参照
>>>>
>>>>> こちらの環境は,
>>>>> Win7 x64 Pro, OpenRTM-aist 1.1 C++ RC3, Python RC1, Java RC1です. Python26です.
>>>>
>>>> Pythonは64bit版でしょうか?
>>>> またOpenRTM-aistはこちらで用意したmsi版でしょうか?
>>>> もしくは自前でコンパイルしたものでしょうか?
>>>>
>>>> ちなみに,こちらはまだ余裕がなくてWindowsの64bit版の検証まで
>>>> ちゃんとできておらず,したがって,リリースしているmsiも32bit版
>>>> しかありませんのでご注意ください.
>>>>
>>>> C++もインストールされているようですが,ちゃんと動きますか?
>>>> 私も最近ようやくWindows7 64bitで動かし始めているのですが,
>>>> コンポーネント自体は起動できて動くのですが,Win7 64bit上の
>>>> ネームサーバが全く使えず困っています.
>>>> #コンポーネントの登録が全くできない.しかし,
>>>> #他のネームサーバにはWin7 64bit上のRTCは登録できる
>>>>
>>>> ネームサーバを互換モードで起動してみたり,IPv6を切ってみたり
>>>> したのですが,状況はあまり変わらずです.
>>>> 64bit版のomniNamesも試したのですが,こちらはRTSEで接続する
>>>> ことすらできませんでした.(ざっと試しただけですが...)
>>>>
>>>> 何か情報ありましたらよろしくお願いします.
>>>> _______________________________________________
>>>> openrtm-users mailing list
>>>> openrtm-users @ openrtm.org
>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>>
>>>
>>> _______________________________________________
>>> openrtm-users mailing list
>>> openrtm-users @ openrtm.org
>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>
>>>
>>
>>
>>
>> --
>> 安藤慶昭@独立行政法人産業技術総合研究所 知能システム研究部門
>>    統合知能研究グループ 主任研究員, 博士(工学)
>>    〒305-8568 つくば市梅園1-1-1 中央第2
>>    e-mail: n-ando @ aist.go.jp, web: http://staff.aist.go.jp/n-ando
>>    OpenRTM-aist: http://www.openrtm.org
>>
>> Noriaki Ando, Ph.D.
>>    Senior Research Scientist, RT-Synthesis R.G., ISRI, AIST
>>    AIST Tsukuba Central 2, Tsukuba, Ibaraki 305-8568 JAPAN
>>    e-mail: n-ando @ aist.go.jp, web: http://staff.aist.go.jp/n-ando
>>    OpenRTM-aist: http://www.openrtm.org
>> _______________________________________________
>> openrtm-users mailing list
>> openrtm-users @ openrtm.org
>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>
>
> _______________________________________________
> openrtm-users mailing list
> openrtm-users @ openrtm.org
> http://www.openrtm.org/mailman/listinfo/openrtm-users
>
>



-- 
安藤慶昭@独立行政法人産業技術総合研究所 知能システム研究部門
    統合知能研究グループ 主任研究員, 博士(工学)
    〒305-8568 つくば市梅園1-1-1 中央第2
    e-mail: n-ando @ aist.go.jp, web: http://staff.aist.go.jp/n-ando
    OpenRTM-aist: http://www.openrtm.org

Noriaki Ando, Ph.D.
    Senior Research Scientist, RT-Synthesis R.G., ISRI, AIST
    AIST Tsukuba Central 2, Tsukuba, Ibaraki 305-8568 JAPAN
    e-mail: n-ando @ aist.go.jp, web: http://staff.aist.go.jp/n-ando
    OpenRTM-aist: http://www.openrtm.org


openrtm-users メーリングリストの案内