See also
The ALMotion module implements also some “reflexes” such as Self-collision avoidance, Fall manager and Smart Stiffness.
This module gives also access to useful information about the robot hardware, such as the number of joints, their name, limits, the available sensors and so on. See General tools section.
ALMotion runs at 50Hz (cycle of 20ms).
In ALMotion, every time you call an API to request a motion, a “motion task” is created to handle the job. See Motion task to learn how to manage these tasks.
The reflexes are activated by default and could modify your robot’s behavior. More specifically, they will alter the motion to avoid self collision (see Self-collision avoidance), or adjust the stiffness to spare power when the robot is not moving (see Smart Stiffness) or trigger a specific task when a fall is detected (see Fall manager).
Performance
ALMotion is a core module. As it manages some reflexes and updates the model every cycle, the module consumes a constant CPU. This consumption could increase during special tasks like walk.
The table below gives you some hints of ALMotion CPU consumption.
Task \ Processor | Geode | Atom (NAO V4) |
---|---|---|
update Model | 8% | 3% |
walking | 25% | 10.8% |