[openrtm-users 00306] Re: TimedDoubleSeq型ポートで長さ1のときの不具合

Ando Noriaki n-ando @ aist.go.jp
2007年 12月 7日 (金) 08:33:20 JST


中岡様

安藤です

> 先週私が質問した件ですが、その後の返答が遅くなってしまいすみません。
>
> 佐々木さんより omniORB 4.0.6 の不具合の件が投稿されていましたが、私も
> UbuntuでomniORB 4.0.6 でしたので、omniORBを 4.0.7 にあげたところ、不具合
> が直りました。
>
> というわけで今回の私が遭遇した不具合をまとめますと、
> omniORB 4.0.6 で OpenRTM の TimedDoubleSeq ポートを使うと、シーケンスの
> 長さが 1 のときは値がおかしくなるが、2以上の時は大丈夫(実際には長さ2と
> 29で確認)、omniORB 4.0.7 では長さ1でも大丈夫、ということになります。
>
> 清水さん、安藤さん、ご対応ありがとうございました。
> また、佐々木さんの情報で原因が分かりました。
> ありがとうございました。

Webページの「ダウンロード」ページにその旨追記しました。

情報ありがとうございました。>佐々木さん、中岡さん


>
>
> "Ando Noriaki" <n-ando @ aist.go.jp> wrote:
> > 安藤です
> >
> > 調査ありがとうございます>清水さん
> >
> > >中岡様
> >
> > シーケンス型にデータを入れるときに、あらかじめlengthを1にセットしてま
> すか?
> > 受け取ったデータのlength()はいくつになっていますでしょうか?
> > そのあたりもおしえていただけませんか。
> >
> > よろしくお願いいたします。
> >
> >
> > 07/11/29 に Masayuki Shimizu<masayuki.shimizu @ aist.go.jp> さんは書きま
> した:
> > > 産総研 清水です。
> > >
> > > SimpleIOのデータ型をTimedDoubleSeqにして、
> > > length(1)のデータの送受信をしてみましたが、
> > > こちらでは問題ありませんでした。
> > >
> > > ミドルウェアのバグかどうか切り分けのために、
> > > お手数ですが、SimpleIOを以下のように改造して、
> > > 試してみて頂けないでしょうか?
> > > もし、これで同様の症状が出るようであれば、
> > > 具体的な使用方法等を御報告ください。
> > >
> > > [テストコード]
> > > - ConsoleIn:
> > >  RTC::ReturnCode_t ConsoleIn::onExecute(RTC::UniqueId ec_id){
> > >  m_out.data.length(1);
> > >  m_out.data[0] = ((double)dummy)/1000.0;
> > >  m_outOut.write(m_out);
> > >  dummy++;
> > >  return RTC::RTC_OK;
> > >  }
> > >
> > > - ConsoleOut:
> > >  RTC::ReturnCode_t ConsoleOut::onExecute(RTC::UniqueId ec_id){
> > >  m_inIn.read();
> > >  if(m_in.data.length() != 1) return RTC::RTC_ERROR;
> > >  std::cout << "Received: " << m_in.data[0] << std::endl;
> > >  return RTC::RTC_OK;
> > >  }
> > >
> > > On Wed, 28 Nov 2007 23:31:17 +0900
> > > Shinichiro NAKAOKA <s.nakaoka @ aist.go.jp> wrote:
> > >
> > > >
> > > > 産総研の中岡です。
> > > >
> > > > OpenHRPのコントローラブリッジで、センサ値や指令値のやりとりに
> > > > TimedDoubleSeq型のポートを使っているのですが、この配列の長さがちょ
> うど1
> > > > のときに、ポート間で正しくデータがやりとりされません。(ゴミのよう
> な値に
> > > > なってしまいます。)
> > > >
> > > > 同じプログラムで長さが2以上の場合、正常に動作します。
> > > >
> > > > OpenRTMのバグかもしれないので、症状をご確認いただければ幸いです。
> > > > よろしくお願いします。
> > > >
> > > >
> > > > --
> > > > 中岡 慎一郎 <s.nakaoka @ aist.go.jp>
> > > > 産業技術総合研究所 知能システム研究部門
> > > > ヒューマノイド研究グループ
> > > > Phone: 029-861-5161  Fax: 029-861-5444
> > > >
> > > >
> > >
> > >
> > > --------------------
> > > Masayuki Shimizu
> > >
> > > Postdoctoral Fellow
> > > Task Intelligence Research Group
> > > Intelligent Systems Research Institute
> > > National Institute of
> > > Advanced Industrial Science and Technology (AIST)
> > > Central 2, 1-1-1, Umezono, Tsukuba, Ibaraki 305-8568, JAPAN
> > > Tel: +81-29-861-5952
> > > Fax: +81-29-861-5971
> > > Email: masayuki.shimizu @ aist.go.jp
> > >       chaser @ ieee.org
> > > URL: http://unit.aist.go.jp/is/taskint/
> > >
> > >
> >
> >
> > --
> > 安藤慶昭@独立行政法人産業技術総合研究所 研究員
> >                    知能システム研究部門 タスクインテリジェンス研究グル
> ープ
> >                    〒305-8568 茨城県つくば市梅園1-1-1 中央第2
> >                    TEL: 029-861-5981 FAX: 029-861-5971
> >                    n-ando @ aist.go.jp, n-ando @ ieee.org
>
>
> --
> 中岡 慎一郎 <s.nakaoka @ aist.go.jp>
> 産業技術総合研究所 知能システム研究部門
> ヒューマノイド研究グループ
> Phone: 029-861-5161  Fax: 029-861-5444
>
>
>


-- 
安藤慶昭@独立行政法人産業技術総合研究所 研究員
                   知能システム研究部門 タスクインテリジェンス研究グループ
                   〒305-8568 茨城県つくば市梅園1-1-1 中央第2
                   TEL: 029-861-5981 FAX: 029-861-5971
                   n-ando @ aist.go.jp, n-ando @ ieee.org



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