The focus has been on creating a software control architecture based on the middleware ROS (Robot Operating System) and achieve a human-like movement for the arms and the neck.
Abel is based on a bio-inspired cognitive architecture called SEAI (Social Emotional Artificial Intelligence) that follows a hybrid (reactive/deliberative) paradigm:
Dynamixel_Workbench is the meta-package for ROS which include the controller for dynamixel motors. It provides the interface with the low-level hardware, and it creates the topics needed to send positions to the servos (i.e., the trajectories generated for the joints).
See here for additional details.
Each directory is a ROS package and you need to install dependencies for dynamixel motor control.
Abel_bringup handles launch files for other packages and calls the dynamixel controller.
Abel_control is the main module for arms and neck control. It includes all the python classes and methods necessary for the realization of gestures and for joints configuration. A static gestures dictionary and the head orientation control function are included in the latter package.
Abel_moveit_config is responsible for inverse kinematics and trajectory planning with self-collisions avoidance (MoveIt Setup Assistant).
Finally, abel_description is the package that conventionally collects all the files such as meshes or URDF for the description of the robot.