-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hrpsys_ros_bridgeを立ち上げるとCPUパワーが100%になる #408
Comments
hrpsys_ros_bridge.launchでhrpsys-ros-bridgeが2000Hzで回るように書かれていて, 僕の環境では2000Hzでは回らず,1500Hz付近で回るのですが, [ INFO] [1397531785.135776555, 135.974999999]: [HrpsysSeqStateROSBridge0] @onExecutece 0 is working at 1422[Hz] ここを200Hzに変えると,load average が5とかになって少し落ちつくのですが, [ INFO] [1397531668.202131751, 108.364999999]: [HrpsysSeqStateROSBridge0] @onExecutece 0 is working at 198[Hz] |
2000Hzということは、0.5msec周期? |
あれ?これおかしいな.hrpsysの周期があって,HrpsysSeqStateROSBridgeはそれに同期する(read-blockで)形にしたつもりなんだけど,そもそもこれは何で確認している?実機?シミュレータ?どのロボット? |
サンプルロボットとかHRP2とかのhrpsys simulatorです. サンプルロボットで言うと, 100万Hzになっている経緯は以下にありました. |
だと,hrpsysからHrpsysSeqStateROSBridgeに送られるデータは200Hzだから,
でも,
は200Hzと表示されるはずだけど. で,データがくるときだけcountがなされるようになっているはずなんだが... |
実機とシミュレーションで挙動が違ったりしませんか? |
シミュレーションでも同じだと思っているんだけど、違うのかな? |
http://wiki.ros.org/rtmros_hironx?distro=hydro#Install_via_debian_binary_.28RECOMMENDED.29
2014-04-15 14:14 GMT+09:00 Yohei Kakiuchi [email protected]:
|
という設定で動かしていそうだ. 2014-04-15 14:52 GMT+09:00 Kei Okada [email protected]:
|
HRP2実機はros_bridgeが200Hzで回っていました。 |
STAROではhrpsys_periodic_rateを500にしていて,実際にHrpsysSeqStateROSBridgeは500で回っています. |
たとえば、それでhrpsys_periodic_rateを1000にしても、HrpsysSeqStateROSBridgeは500で回るのが期待されている動作だと思います。 |
実機にてhrpsys_preiodic_rateを1000にしたところ,HrpsysSeqStateROSBridgeは500で回りました. |
ということから,
ということでしょうか. |
http://wiki.ros.org/rtmros_hironx?distro=hydro#Install_via_debian_binary_.28RECOMMENDED.29 のNextage シミュレータでは特に何もいじらなければ200Hzなので,確認してみて下さい.
というのはどうやって起動したか,教えて下さい. |
ちょっと違うと思います。 hrpsys.launch の hrpsys_preiodic_rate は参照されていて、rtcdはこの値でまわっている。
これは正解だと思います。
この何らかの設定がhrpsys_preiodic_rateのはずです。
|
です. |
STARO.RobotHardware.confのperiodic_rateが参照されていました. もっと言うと,
でhrpsys も hrpsys-ros-bridgeも上がるようになっているのですが, 抜粋すると以下のようになっていて,
|
hironx_startup.launchには以下のrealtimeの設定があって、simulationではtrueになっています。
|
sanmplerobotのサンプルはhrpsys_ros_bridge_tutorialsではなく,hrpsys_ros_bridge/launch/samplerobot.launchに ちなみに,hrp4cもhttps://github.com/start-jsk/hrpsys/issues/66に手順でhrpsysまでは上がります. On Tue, Apr 15, 2014 at 8:39 PM, Eisoku Kuroiwa [email protected]:
|
両方維持する必要はないので、hrpsys_ros_bridgeにあるモデルはtutorialsから抜くというのでどうでしょうか。 |
チュートリアルだからできるもの一覧が見えたほうがいいのでは. On Tue, Apr 15, 2014 at 9:48 PM, Yohei Kakiuchi [email protected]:
|
モデルファイルの自動変換されるものも必要ですか? |
の違いでしょうか. |
すいません、 |
Xボタンを押すとコメントを消せます. |
hrpsys_ros_bridge/launch/samplerobot.launchでは
になっていたため,HrpsysSeqStateROSBridgeが1500Hzくらい出て,CPUが100%になります. ここを
にすると,HrpsysSeqStateROSBridgeが200Hzで安定し,良い感じになりました. |
なるほど。このファイルは自動生成だからそこから直す必要があるかな。@snozawaに仕組みを聞いPRを作ってくれると嬉しいです。 |
#426
になるようにしたつもりです. |
@eisoku9618 #426 でよいか確認して下さい. |
ただ, start-jsk/rtmros_tutorials#36 (comment) のように,euslispのサンプルはhrpsys_ros_bridge_tutorialsの方にしかありませんが, roscd hrpsys_ros_bridge_tutorials/euslisp
roseus samplerobot-interface.l "(samplerobot-init)" "(send *ri* :start-auto-balancer)" するとエラーが出てしまいます. [INFO] [WallTime: 1397624579.549473] [91.090000] check 0 collision status, 0.000000 Hz
[ INFO] [1397624580.305292720, 91.894999999]: [HrpsysSeqStateROSBridge0] @onExecutece 0 is working at 196[Hz]
[ INFO] [1397624580.810446918, 92.349999999]: AutoBalancerServiceROSBridge::startABC()
[AutoBalancer] start auto balancer mode
abc limb [:rleg]
abc limb [:lleg]
[rtmlaunch] [ERROR] Could not Connect ( /localhost:15005/StabilizerServiceROSBridge.rtc:StabilizerService , /localhost:15005/st.rtc:StabilizerService ): CORBA.COMM_FAILURE(omniORB.COMM_FAILURE_UnMarshalResults, CORBA.COMPLETED_YES)
[ERROR] [1397624580.919426753, 92.354999999]: AutoBalancerServiceROSBridge::startABC : Caught system exception COMM_FAILURE -- unable to contact the object.
[hrpsys-3] process has died [pid 30934, exit code -11, cmd /home/eisoku/catkin_ws/ws_rtmros_common/devel/lib/hrpsys/hrpsys-simulator /home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.xml -o manager.is_master:YES -o corba.nameservers:localhost:15005 -o naming.formats:%n.rtc -o logger.file_name:/tmp/rtc%p.log -endless -realtime -o exec_cxt.periodic.rate:1000000 -o manager.shutdown_onrtcs:NO -o manager.modules.load_path:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/openrtm_common/hrpsys/lib -o manager.modules.preload:HGcontroller.so -o manager.components.precreate:HGcontroller -o exec_cxt.periodic.type:SynchExtTriggerEC -o example.SequencePlayer.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.ForwardKinematics.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.ImpedanceController.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.AutoBalancer.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.StateHolder.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.TorqueFilter.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.TorqueController.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.VirtualForceSensor.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.AbsoluteForceSensor.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.KalmanFilter.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.Stabilizer.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.CollisionDetector.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.SoftErrorLimiter.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf -o example.RobotHardware.config_file:/home/eisoku/catkin_ws/ws_rtmros_common/src/rtm-ros-robotics/rtmros_common/hrpsys_ros_bridge/models/SampleRobot.conf __name:=hrpsys __log:=/home/eisoku/.ros/log/2a028a70-c524-11e3-a82d-081196cda840/hrpsys-3.log].
log file: /home/eisoku/.ros/log/2a028a70-c524-11e3-a82d-081196cda840/hrpsys-3*.log
respawning...
[hrpsys-3] restarting process
process[hrpsys-3]: started with pid [453] (send *ri* :start-st) は大丈夫でした. |
:start-auto-balancerはどうですか? 2014年4月16日水曜日、Eisoku [email protected]さんは書きました:
from iPhone |
ああ、:start-auto-balancerが動かないのですね |
rosbridgeのベンチマークをとってみるべきでしょうか。 hrpsys_ros_bridgeのほうではconfに得に書いてなくて、hrpsys_ros_bridge_tutorialsではconfに色々追加してるからでしょうか? |
closing, if someone have time to investigate this, please reopen this. |
現在、
や
をすると、
と表示されます。rosbridgeはrtcd以上のhzで回っているようです。 これが原因で、テストが通りにくくなっている疑惑があります。#1107 (comment) SampleRobot.confに |
重いプロセスがあるので,それを見つけて対応する.
The text was updated successfully, but these errors were encountered: