[openrtm-users 01497] Re: regarding rtprint and rtinject

Tony Kuo ikuo005 @ aucklanduni.ac.nz
2010年 11月 14日 (日) 19:06:30 JST


Hi Geoff:
Sorry and thanks!
I didn't know rtresurrect includes restoration of connections between
components as well.

I downloaded the source of rtsystem from its git-hub website.
It's named gbiggs-rtsshell-aea69f5, (I assumed it's the latest, I also
installed pyYaml 3.09. )

I was testing it by making a mini system connecting a consoleIn and
consoleOut components
I saved the system through RT System Editor.
But when I tried to resurrect the system including its connection using xml,

it gave me an error saying that

c:\python26\scripts\rtresurrect.py: Cannot access [[u'\\SPC105:',
u'SPC105.host_
cxt', u'MyConsoleIn0.rtc'], [u'\\SPC105:', u'SPC105.host_cxt',
u'MyConsoleOut0.r
tc']]: No such directory or object.
Traceback (most recent call last):
  File "c:\python26\scripts\rtresurrect.py", line 243, in <module>
    sys.exit(main(sys.argv))
  File "c:\python26\scripts\rtresurrect.py", line 237, in main
    a(rtctree)
  File "C:\Python26\Lib\site-packages\rtsshell\actions.py", line 63, in
__call__

    result, err = self._execute(rtctree)
  File "C:\Python26\Lib\site-packages\rtsshell\actions.py", line 181, in
_execut
e
    comp = rtctree.get_node(self._path)
AttributeError: 'NoneType' object has no attribute 'get_node'

Do you know what might be wrong?
Regards,
Tony

On 11 November 2010 15:36, Geoffrey Biggs <geoffrey.biggs @ aist.go.jp> wrote:

> Hi Tony,
>
> Thanks for the feeback.
>
> On 29/10/10 07:53, Tony Kuo wrote:
> > Hi Geoff:
> > The first thing that came to my mind are
> > to improve the speed (which you already know) and also to allow
> > connections to be restored.
> >
> > The reason I don't find rts-shells useful is that it doesn't restore the
> > connections between the components (correct me if I am not wrong).
>
> I assume you're referring to rtresurrect here.
>
> > And restoring the connections is probably the most time consuming
> > process in developing my system.
> > Because I can do start, stop, activate and deactive in the Eclipse-based
> > RTSystemEditor.
> >
> > While testing 1 particular component in a large system, I sometime find
> > it necessary to start, stop and reconnect the connections around just
> > that component.
> > Running my bash script for the whole system would duplicate some of the
> > connections that are already there (there is no way to find out whether
> > they are connected already or not)
> >
> > If somehow, the scripts allow some kind of check on whether the
> > component is already alive, the connection is already done or the
> > components are all in Activated state (not in error or inactivated state)
> > it would be quite convenient I think.
>
> I've just committed a change to trunk that makes rtresurrect and
> rtteardown use connector IDs. This means that rtresurrect will now skip
> connections that already exist. You can use it to restore a network to
> its previous state after removing only some of the connections, without
> any existing connections being duplicated.
>
> > Another small thing is if an installation has pre-requisite to run, for
> > example, rtcshell requires rtctree, there should be a dependency check
> > during installation to make it easier for users?
>
> Unfortunately, the Python distutils don't yet provide a way to easily
> check that pre-requisites have been installed. I might try hacking
> something in.
>
> Geoff
>
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <http://www.openrtm.org/pipermail/openrtm-users/attachments/20101114/88e44d99/attachment-0001.html>


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