We are happy to announce the launching of the first Software Development Kit (SDK) for ARI: a collection of ROS-based software tools, libraries, documentation, and sample code that developers can exploit to quickly create new applications for the social robot ARI. It provides a set of resources and functionalities to simplify and accelerate the development process, and enable developers to build applications that integrate with their platforms or products.
With this launch, we aim to empower developers with both easier-to-use and more advanced building blocks to exploit the full social and cognitive capabilities of the ARI robot, while remaining 100% compatible with the ROS ecosystem. This first Software Development Kit release targets the ARI robot, with support for the TIAGo robot expected later this year.
Empowering application developers, from beginners, to advanced ROS experts
ARI is a robotic platform that can be used by professionals with different levels of expertise.
Even if you lack expertise in software development, ARI empowers you to accomplish numerous tasks without requiring coding skills. With ARI’s intuitive user interface, you can effortlessly create demos, enabling non-technical users to engage with the platform and explore its features without being burdened by the complexities of programming or dealing with the intricacies of ROS (Robot Operating System).
Moreover, ARI facilitates the seamless configuration of the robot. Through this feature, you gain access to comprehensive information regarding robot management. This includes general documentation on ARI’s startup process and application management, as well as detailed tutorials on customising the WebCommander displays.
For those who have previously delved into the world of software development, there are more advanced functionalities available to you. For example, ARI supports app development, enabling you to create and distribute new behaviors for the robot. In the app development section, you’ll find the necessary concepts and terminology to understand robot applications and begin developing your own.
Furthermore, if you have expertise in ROS development, ARI offers a set of resources tailored for ROS developers, including information on developing ARI with ROS, such as a list of ROS topics, ROS actions, ROS nodes, and much more. Additionally, there are tutorials available on building and running new ROS packages, as well as deploying ROS packages on the robot.
In this Software Development Kit for ARI you can also find general documentation, tutorials and references on how to use the different capabilities of the robot, including social capabilities, speech and language processing, expressive interactions, knowledge and reasoning, and gestures and motions.
The launch of the Software Development Kit brings along a range of new features for ARI across different areas.
A wealth of new features available for the social robot ARI
The new Software Development Kit introduces a wealth of new social features for ARI. ARI, with this Software Development Kit, is the first robot to implement the novel ROS4HRI ROS specification: it offers a 100% ROS-based representation model of humans, including 2D/3D real-time skeleton tracking, 6D head pose estimation, automatic facial landmark extraction, gaze tracking and face identification. The Software Development Kit also includes a novel algorithm for probabilistic data fusion enabling real-time matching of faces, skeletons and persons. The Software Development Kit also includes new tools to visualize and debug social interactions: the new rqt human_radar provides a top-down view of where the humans are around the robot, and the rviz_humans plugins augment the standard rviz visualisation tool with realtime 3D models of the surrounding persons.
We have also completely reworked the robot’s speech and language processing capabilities. ARI now offers state-of-the-art fully offline speech recognition (ASR) in 20+ languages; a new chatbot engine based on the widely used RASA platform, off-the-shelf “chit chat” chatbots available in English, Spanish, Catalan, French, and Italian; voice synthesis (Text-to-speech, TTS) with markup support to combine text, gestures and facial expressions; automatic subtitling of both ASR and TTS for added accessibility; and an optional wake-up word detection system that is fully configurable and does not require pre-training.
Moreover, we have introduced a brand new knowledge base, where you can store symbolic facts (using the RDF/OWL standard), and reason about them, running first-order-logic inferences and creating complex queries using the SPARQL language. The knowledge base also supports several mental models, enabling you to represent what the robot knows, and what the robot knows about other people’s knowledge.
Furthermore, we have improved the robot’s expressiveness: in addition to the existing tools to record and replay gestures, you can now procedurally generate a range of eye expressions (such as happy, sad, skeptical, confused…) and smoothly direct the robot’s gaze by coordinating the neck and eyes in a natural way.
The Software Development Kit includes hundreds of additional quality-of-life improvements, including internationalisation support to easily switch languages, VNC-based remote control of the robot’s display, better audio pre-processing (noise cancelation), and sound source localisation. Explore them all from the new Software Development Kit – SDK Documentation Center.
The development of the Software Development Kit has been supported by the EU-funded projects TALBOT and SPRING that we are involved in.
ARI, the social robot by PAL Robotics
ARI is our humanoid platform specifically designed for HRI and front-desk activities. ARI is expressive, easily integrable, and able to provide dynamic information to customers and employees. The perfect mix of Service Robotics and Artificial Intelligence in one single platform, ARI is equipped with multiple sensors, and is able to generate data and gain valuable insight about your services. Read more about ARI in our previous blog post.
To find out more about PAL Robotics and ARI, visit our website, and don’t hesitate to get in touch with our team to ask more about how to use ARI.