tork-a / rtmros_nextage

ROS-OpenRTM-based opensource robot controller software for dual-armed robot Nextage from Kawada Industries
http://wiki.ros.org/rtmros_nextage
27 stars 39 forks source link

BAD_PARAM: CORBA.BAD_PARAM(omniORB.BAD_PARAM_IndexOutOfRange, CORBA.COMPLETED_NO) #14

Closed 130s closed 10 years ago

130s commented 10 years ago

After building hrpsys with these tweaks, I get corba error.

$ ipython -i `rospack find nextage_ros_bridge`/script/nextage.py RobotHardware0 /opt/jsk/etc/HIRONX/model/main.wrl -- -ORBInitRef NameService=corbaloc:iiop:nxc100:15005/NameService
Python 2.7.3 (default, Sep 26 2013, 20:03:06) 
Type "copyright", "credits" or "license" for more information.

IPython 0.12.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.
configuration ORB with  nxc100 : 15005
[hrpsys.py]  waiting ModelLoader
[hrpsys.py]  start hrpsys
[hrpsys.py]  finding RTCManager and RobotHardware
[hrpsys.py]  wait for RTCmanager :  None
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  0  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  1  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  2  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  3  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  4  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  5  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  6  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  7  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  8  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  9  < 10)
[hrpsys.py]  Could not find  RobotHardware0
[hrpsys.py]  Candidates are .... ---------------------------------------------------------------------------
BAD_PARAM                                 Traceback (most recent call last)
/usr/lib/python2.7/dist-packages/IPython/utils/py3compat.pyc in execfile(fname, *where)
    173             else:
    174                 filename = fname
--> 175             __builtin__.execfile(filename, *where)

/home/rosuser/catkinws/src/tork-a/rtmros_nextage/nextage_ros_bridge/script/nextage.py in <module>()
     27         args.modelfile = unknown[1]
     28     nxc = nextage_client.NextageClient()
---> 29     nxc.init(robotname=args.robot, url=args.modelfile)
     30 
     31 # for simulated robot

/home/rosuser/catkinws/src/tork-a/rtmros_nextage/nextage_ros_bridge/src/nextage_ros_bridge/nextage_client.pyc in init(self, robotname, url)
     77         @type url: str
     78         '''
---> 79         HIRONX.init(self, robotname=robotname, url=url)
     80 
     81     def turn_handlight_r(self, is_on=True):

/home/rosuser/catkinws/src/rtm-ros-robotics/rtmros_hironx/hironx_ros_bridge/src/hironx_ros_bridge/hironx_client.pyc in init(self, robotname, url)
     62         @type url: str
     63         '''
---> 64         HrpsysConfigurator.init(self, robotname=robotname, url=url)
     65         self.setSelfGroups()
     66 

/home/rosuser/link/ROS/groovy_precise/catkinws/devel/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in init(self, robotname, url)
    681 
    682         print self.configurator_name, "finding RTCManager and RobotHardware"
--> 683         self.waitForRTCManagerAndRoboHardware(robotname)
    684         self.sensors = self.getSensors(url)
    685 

/home/rosuser/link/ROS/groovy_precise/catkinws/devel/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in waitForRTCManagerAndRoboHardware(self, robotname, managerhost)
    495     def waitForRTCManagerAndRoboHardware(self, robotname="Robot", managerhost=nshost):
    496         self.waitForRTCManager(managerhost)
--> 497         self.waitForRobotHardware(robotname)
    498         self.checkSimulationMode()
    499 

/home/rosuser/link/ROS/groovy_precise/catkinws/devel/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in waitForRobotHardware(self, robotname)
    475             print self.configurator_name, "Could not find ", robotname
    476             if self.ms:
--> 477                 print self.configurator_name, "Candidates are .... ", [x.name()  for x in self.ms.get_components()]
    478             print self.configurator_name, "Exitting.... ", robotname
    479             exit(1)

/home/rosuser/link/ROS/groovy_precise/catkinws/devel/lib/python2.7/dist-packages/hrpsys/rtm.pyc in get_components(self)
    224         def get_components(self):
    225                 cs = []
--> 226                 crefs = self.ref.get_components()
    227                 for cref in crefs:
    228                         c = RTcomponent(cref)

/home/rosuser/catkinws/src/rtm-ros-robotics/openrtm_common/openrtm_aist_core/openrtm_aist_python/lib/python2.7/site-packages/OpenRTM_aist/RTM_IDL/Manager_idl.pyc in get_components(self, *args)
    163 
    164     def get_components(self, *args):
--> 165         return _omnipy.invoke(self, "get_components", _0_RTM.Manager._d_get_components, args)
    166 
    167     def get_component_profiles(self, *args):

BAD_PARAM: CORBA.BAD_PARAM(omniORB.BAD_PARAM_IndexOutOfRange, CORBA.COMPLETED_NO)

Using r6204 and e9c41886e28fb144dbc296c04069cb99dbac0892.

@emijah.s

emijah commented 10 years ago

localに持っているIDLをコンパイルした*.pyファイルは最新版に上がっていますか?

k-okada commented 10 years ago

たぶん,QNX側がUrokのソースツリー(古い)であれば,手元のソースも同じバージョンに合わせておく必要があります. 逆にQNX側が最新なら,手元も最新の必要がありますね.

CORBAはROSみたいにmismatch md5sum と言ってくれないのでわかりづらいです...

130s commented 10 years ago

たぶん,QNX側がUrokのソースツリー(古い)ので,手元のソースも同じバージョンに合わせておく必要があります.

体内をまだ彼から送られてきたソースに入れ替えてはおらず,20130905 時点のものを使っていて (dir structure),つい先程そこに hrpsysスクリプトでインストールし直しました.

localに持っているIDLをコンパイルした*.pyファイルは最新版に上がっていますか?

念の為 local 側を clean install してから試します.

130s commented 10 years ago

Local 側を clean install しましたが,[hrpsys.py] Could not find RobotHardware0 は変わりません.末尾のエラーは TRANSIENT: CORBA.TRANSIENT(omniORB.TRANSIENT_ConnectFailed, CORBA.COMPLETED_NO) に変わりました.

$ ipython -i `rospack find nextage_ros_bridge`/script/nextage.py RobotHardware0 /opt/jsk/etc/HIRONX/model/main.wrl -- -ORBInitRef NameService=corbaloc:iiop:nxc100:15005/NameService
rosuser@130s-serval:~/catkinws$ ipython -i `rospack find nextage_ros_bridge`/script/nextage.py RobotHardware0 /opt/jsk/etc/HIRONX/model/main.wrl -- -ORBInitRef NameService=corbaloc:iiop:nxc100:15005/NameService
Python 2.7.3 (default, Sep 26 2013, 20:03:06) 
Type "copyright", "credits" or "license" for more information.

IPython 0.12.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.
configuration ORB with  nxc100 : 15005
[hrpsys.py]  waiting ModelLoader
[hrpsys.py]  start hrpsys
[hrpsys.py]  finding RTCManager and RobotHardware
[hrpsys.py]  wait for RTCmanager :  None
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  0  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  1  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  2  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  3  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  4  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  5  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  6  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  7  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  8  < 10)
[hrpsys.py]  wait for RobotHardware0  :  None (timeout  9  < 10)
[hrpsys.py]  Could not find  RobotHardware0
[hrpsys.py]  Candidates are .... ---------------------------------------------------------------------------
TRANSIENT                                 Traceback (most recent call last)
/usr/lib/python2.7/dist-packages/IPython/utils/py3compat.pyc in execfile(fname, *where)
    173             else:
    174                 filename = fname
--> 175             __builtin__.execfile(filename, *where)

/home/rosuser/catkinws/install/share/nextage_ros_bridge/script/nextage.py in <module>()
     27         args.modelfile = unknown[1]
     28     nxc = nextage_client.NextageClient()
---> 29     nxc.init(robotname=args.robot, url=args.modelfile)
     30 
     31 # for simulated robot

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/nextage_ros_bridge/nextage_client.pyc in init(self, robotname, url)
     77         @type url: str
     78         '''
---> 79         HIRONX.init(self, robotname=robotname, url=url)
     80 
     81     def turn_handlight_r(self, is_on=True):

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hironx_ros_bridge/hironx_client.pyc in init(self, robotname, url)
     62         @type url: str
     63         '''
---> 64         HrpsysConfigurator.init(self, robotname=robotname, url=url)
     65         self.setSelfGroups()
     66 

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in init(self, robotname, url)
    681 
    682         print self.configurator_name, "finding RTCManager and RobotHardware"
--> 683         self.waitForRTCManagerAndRoboHardware(robotname)
    684         self.sensors = self.getSensors(url)
    685 

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in waitForRTCManagerAndRoboHardware(self, robotname, managerhost)
    495     def waitForRTCManagerAndRoboHardware(self, robotname="Robot", managerhost=nshost):
    496         self.waitForRTCManager(managerhost)
--> 497         self.waitForRobotHardware(robotname)
    498         self.checkSimulationMode()
    499 

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in waitForRobotHardware(self, robotname)
    475             print self.configurator_name, "Could not find ", robotname
    476             if self.ms:
--> 477                 print self.configurator_name, "Candidates are .... ", [x.name()  for x in self.ms.get_components()]
    478             print self.configurator_name, "Exitting.... ", robotname
    479             exit(1)

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hrpsys/rtm.pyc in get_components(self)
    223         def get_components(self):
    224                 cs = []
--> 225                 crefs = self.ref.get_components()
    226                 for cref in crefs:
    227                         c = RTcomponent(cref)

/home/rosuser/catkinws/src/rtm-ros-robotics/openrtm_common/openrtm_aist_core/openrtm_aist_python/lib/python2.7/site-packages/OpenRTM_aist/RTM_IDL/Manager_idl.pyc in get_components(self, *args)
    163 
    164     def get_components(self, *args):
--> 165         return _omnipy.invoke(self, "get_components", _0_RTM.Manager._d_get_components, args)
    166 
    167     def get_component_profiles(self, *args):

TRANSIENT: CORBA.TRANSIENT(omniORB.TRANSIENT_ConnectFailed, CORBA.COMPLETED_NO)
k-okada commented 10 years ago

rtls で状況を確認しましょう.

On Tue, Nov 26, 2013 at 1:48 PM, Isaac Isao Saito notifications@github.comwrote:

Local 側を clean install しましたが,[hrpsys.py] Could not find RobotHardware0は変わりません.末尾のエラーは TRANSIENT: CORBA.TRANSIENT(omniORB.TRANSIENT_ConnectFailed, CORBA.COMPLETED_NO)に変わりました.

$ ipython -i rospack find nextage_ros_bridge/script/nextage.py RobotHardware0 /opt/jsk/etc/HIRONX/model/main.wrl -- -ORBInitRef NameService=corbaloc:iiop: nxc100:15005/NameService rosuser@130s-serval:~/catkinws$ ipython -i rospack find nextage_ros_bridge/script/nextage.py RobotHardware0 /opt/jsk/etc/HIRONX/model/main.wrl -- -ORBInitRef NameService=corbaloc:iiop:nxc100:15005/NameService Python 2.7.3 (default, Sep 26 2013, 20:03:06) Type "copyright", "credits" or "license" for more information.

IPython 0.12.1 -- An enhanced Interactive Python. ? -> Introduction and overview of IPython's features. %quickref -> Quick reference. help -> Python's own help system. object? -> Details about 'object', use 'object??' for extra details. configuration ORB with nxc100 : 15005 [hrpsys.py] waiting ModelLoader [hrpsys.py] start hrpsys [hrpsys.py] finding RTCManager and RobotHardware [hrpsys.py] wait for RTCmanager : None [hrpsys.py] wait for RobotHardware0 : None (timeout 0 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 1 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 2 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 3 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 4 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 5 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 6 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 7 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 8 < 10) [hrpsys.py] wait for RobotHardware0 : None (timeout 9 < 10) [hrpsys.py] Could not find RobotHardware0 [hrpsys.py] Candidates are .... --------------------------------------------------------------------------- TRANSIENT Traceback (most recent call last) /usr/lib/python2.7/dist-packages/IPython/utils/py3compat.pyc in execfile(fname, where) 173 else: 174 filename = fname --> 175 builtin.execfile(filename, where)

/home/rosuser/catkinws/install/share/nextage_ros_bridge/script/nextage.py in () 27 args.modelfile = unknown[1] 28 nxc = nextage_client.NextageClient() ---> 29 nxc.init(robotname=args.robot, url=args.modelfile) 30 31 # for simulated robot

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/nextage_ros_bridge/nextage_client.pyc in init(self, robotname, url) 77 @type url: str 78 ''' ---> 79 HIRONX.init(self, robotname=robotname, url=url) 80 81 def turn_handlight_r(self, is_on=True):

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hironx_ros_bridge/hironx_client.pyc in init(self, robotname, url) 62 @type url: str 63 ''' ---> 64 HrpsysConfigurator.init(self, robotname=robotname, url=url) 65 self.setSelfGroups() 66

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in init(self, robotname, url) 681 682 print self.configurator_name, "finding RTCManager and RobotHardware" --> 683 self.waitForRTCManagerAndRoboHardware(robotname) 684 self.sensors = self.getSensors(url) 685

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in waitForRTCManagerAndRoboHardware(self, robotname, managerhost) 495 def waitForRTCManagerAndRoboHardware(self, robotname="Robot", managerhost=nshost): 496 self.waitForRTCManager(managerhost) --> 497 self.waitForRobotHardware(robotname) 498 self.checkSimulationMode() 499

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hrpsys/hrpsys_config.pyc in waitForRobotHardware(self, robotname) 475 print self.configurator_name, "Could not find ", robotname 476 if self.ms: --> 477 print self.configurator_name, "Candidates are .... ", [x.name() for x in self.ms.get_components()] 478 print self.configurator_name, "Exitting.... ", robotname 479 exit(1)

/home/rosuser/catkinws/install/lib/python2.7/dist-packages/hrpsys/rtm.pyc in get_components(self) 223 def get_components(self): 224 cs = [] --> 225 crefs = self.ref.get_components() 226 for cref in crefs: 227 c = RTcomponent(cref)

/home/rosuser/catkinws/src/rtm-ros-robotics/openrtm_common/openrtm_aist_core/openrtm_aist_python/lib/python2.7/site-packages/OpenRTM_aist/RTM_IDL/Manager_idl.pyc in get_components(self, args) 163 164 def get_components(self, args): --> 165 return _omnipy.invoke(self, "get_components", _0_RTM.Manager._d_get_components, args) 166 167 def get_component_profiles(self, *args):

TRANSIENT: CORBA.TRANSIENT(omniORB.TRANSIENT_ConnectFailed, CORBA.COMPLETED_NO)

— Reply to this email directly or view it on GitHubhttps://github.com/tork-a/rtmros_nextage/issues/14#issuecomment-29267341 .

k-okada commented 10 years ago

たぶん,QNX側がUrokのソースツリー(古い)ので,手元のソースも同じバージョンに合わせておく必要があります. 体内をまだ彼から送られてきたソースに入れ替えてはおらず,20130905 時点のものを使っていて (dir structure),つい先程そこに hrpsys をスクリプトでインストールし直しました.

いまは,今の設定で動かすことを最優先すべきですが,上の作業をしちゃうと,Urkoの手元のPCのソースを更新する必要があるので,デモの直前にその選択をするか?しないと,デモがうごかなくなるんじゃないでしょうか?

k-okada commented 10 years ago

ああ,hrpsysとopenhrp3のバージョンもリンクしているので,体内でhrpsysだけ更新すると,立ち上がりきれていないんじゃないでしょうか?

130s commented 10 years ago

おお,なるほど.

今気付きましたが,今日はとにかく QNX 上でビルドが出来れば良い (最新版 hrpsys である必要はない) ので,この問題は放っておきます;ビルドする必要があるファイルだけビルドして,古い版の /opt/jsk に差し戻します.

130s commented 10 years ago

Closing due to inability to replicate the exact situation. Valid workaround at that time might be to build the newest hrpsys, openhrp3.