Basic RT components and utilities
315.12.1
|
This component checks self collision and stops robot motion.
implementation_id | CollisionDetector |
---|---|
category | example |
This component checks self collision between link pairs. One link pair is like "RARM_JOINT6:WAIST".
When collision, this component stops robot motion by overwriting reference joint angles, e.g., by modifying qRef and outputting to q.
When collision in qRef is resolved, this component sifts to non-overwrite mode.
Transition from overwrite mode to non-overwrite mode is implemented as min-jerk interplation by default. Transition time is 1.0[s] by default.
In collision, this component makes beep sound. If the cause of errors are removed, error flags and beep sound are removed. Since this RTC is stable RTC, we support both direct beeping from this RTC and beepring through BeeperRTC.
port name | data type | unit | description |
---|---|---|---|
qRef | RTC::TimedDoubleSeq | [rad] | Input reference joint angles |
qCurrent | RTC::TimedDoubleSeq | [rad] | Actual joint angles |
port name | data type | unit | description |
---|---|---|---|
q | RTC::TimedDoubleSeq | [rad] | Output reference joint angles |
N/A
port name | interface name | service type | IDL | description |
---|---|---|---|---|
CollisionDetectorService | service0 | CollisionDetectorService | OpenHRP::CollisionDetectorService |
N/A
N/A
key | type | unit | description |
---|---|---|---|
dt | double | [s] | sampling time |
model | std::string | URL of a VRML model | |
collision_viewer | bool | Use viewer or not | |
collision_model | std::string | Collision model ("AABB" or "convex hull"). If not specified, use "convex hull" by default. | |
collision_pair | list of string | List of collision link pair. For example "RARM_JOINT6:WAIST RARM_JOINT6:LARM_JOINT6" | |
collision_loop | int | Collision loop |