ロボット、千葉ロッテマリーンズについていいかげんなことを書きます。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
関係ないけど大洲市出身の中村氏がノーベル賞を受賞しました。
地元から偉人が出るというの嬉しいものですね。
ちなみに大洲市には冨士山という山があります。
知らない人が見ると何の事やらわからないと思いますが、富士山と名前だけ酷似しています。
Google等で検索するともしかして富士山と以前は検索結果に表示されたと言う影の薄さです。
今回も特に書くことがなさそうなのでRTCのプログラミングについて書きます。
とりあえずmanagerを使っていろいろやってみます。
今回のプログラムはここからダウンロードできます。
今回配布するプログラムには実行順序を設定できる実行コンテキストを付属させてあります。
詳しくはリンク先に書いてありますが、使いづらかったので使用方法を多少変更してあります。
まず、付属のMultipleOrderedEC-1.0.0.win32.exeを実行してMultipleOrderedECをインストールしてください。
Ubuntu等の場合は解凍したフォルダに移動して、
python setup.py install
でインストールできます。
あと、PyQtのインストールが必要なのでここからインストーラをダウンロードするか、Ubuntuの場合はsynapticパッケージマネージャでインストールできます。
そして、rtc.confに
exec_cxt.periodic.type: MultipleOrderedEC
manager.modules.preload: MultipleOrderedEC.py
と記述してさらに解凍したフォルダのMultipleOrderedEC.pyをmanager.modules.load_pathでフォルダを指定するか、RTCと同じフォルダにコピーしてください。
それが通常の使用方法なのですが、今回はrtc.confではなくサンプルプログラムの中で実行コンテキストを指定するようにコードを書いてみます。
ManagerTest2.pyを見てみます。
ポイントは、
MultipleOrderedEC.MultipleOrderedECInit(mgr)
・・・・・・
EC.bindComponent(self.comp)
EC.start()
です。
まずMultipleOrderedECInitでECをファクトリに登録します。
そしてcreateContextでECを生成します。
最後にbindComponentでRTCとECを関連付けています。
RTシステムエディタで確認してみてください。
あと、ManagerTest.pyでは以下のコードで動的にMultipleOrderedECのモジュールを読み込んでいます。
MultipleOrderedECInit = self.GetFunc("MultipleOrderedEC",[".\\"]).MultipleOrderedECInit
・・・
次はrtctreeについて少し書きます。
にほんブログ村のロボットのカテゴリから
全然人が来ない・・・
地元から偉人が出るというの嬉しいものですね。
ちなみに大洲市には冨士山という山があります。
知らない人が見ると何の事やらわからないと思いますが、富士山と名前だけ酷似しています。
Google等で検索するともしかして富士山と以前は検索結果に表示されたと言う影の薄さです。
今回も特に書くことがなさそうなのでRTCのプログラミングについて書きます。
とりあえずmanagerを使っていろいろやってみます。
今回のプログラムはここからダウンロードできます。
今回配布するプログラムには実行順序を設定できる実行コンテキストを付属させてあります。
詳しくはリンク先に書いてありますが、使いづらかったので使用方法を多少変更してあります。
まず、付属のMultipleOrderedEC-1.0.0.win32.exeを実行してMultipleOrderedECをインストールしてください。
Ubuntu等の場合は解凍したフォルダに移動して、
python setup.py install
でインストールできます。
あと、PyQtのインストールが必要なのでここからインストーラをダウンロードするか、Ubuntuの場合はsynapticパッケージマネージャでインストールできます。
そして、rtc.confに
exec_cxt.periodic.type: MultipleOrderedEC
manager.modules.preload: MultipleOrderedEC.py
と記述してさらに解凍したフォルダのMultipleOrderedEC.pyをmanager.modules.load_pathでフォルダを指定するか、RTCと同じフォルダにコピーしてください。
それが通常の使用方法なのですが、今回はrtc.confではなくサンプルプログラムの中で実行コンテキストを指定するようにコードを書いてみます。
ManagerTest2.pyを見てみます。
ポイントは、
MultipleOrderedEC.MultipleOrderedECInit(mgr)
・・・
ec = OpenRTM_aist.Manager.instance().createContext(ec_args)
EC.bindComponent(self.comp)
EC.start()
です。
まずMultipleOrderedECInitでECをファクトリに登録します。
そしてcreateContextでECを生成します。
最後にbindComponentでRTCとECを関連付けています。
RTシステムエディタで確認してみてください。
あと、ManagerTest.pyでは以下のコードで動的にMultipleOrderedECのモジュールを読み込んでいます。
MultipleOrderedECInit = self.GetFunc("MultipleOrderedEC",[".\\"]).MultipleOrderedECInit
・・・
def GetFunc(self, filename, filepath):
(file, pathname, description) = imp.find_module(filename, filepath)
return imp.load_module(filename, file, pathname, description)
さらにRTCも動的に読み込むようにしています。ECTestInit = self.GetFunc("ECTest",[".\\"]).ECTestInit
ECTestInit(manager)
今日はこれぐらいにしておきます。ECTestInit(manager)
次はrtctreeについて少し書きます。
にほんブログ村のロボットのカテゴリから
全然人が来ない・・・
PR
この記事にコメントする