EI for AMR Middleware#

  • Intel® Distribution of OpenVINO™ toolkit, which is a comprehensive toolkit for quickly developing applications and solutions that solve a variety of tasks including emulation of human vision, automatic speech recognition, natural language processing, recommendation systems, and many others. Based on latest generations of artificial neural networks, including Convolutional Neural Networks (CNNs), recurrent and attention-based networks, the toolkit extends computer vision and non-vision workloads across Intel® hardware, maximizing performance. It accelerates applications with high-performance, AI and deep learning inference deployed from edge to cloud.

  • Intel® oneAPI Base Toolkit, which is able to execute Intel® oneAPI Base Toolkit sample applications. The Intel® oneAPI Base Toolkit is a core set of tools and libraries for developing high-performance, data-centric applications across diverse architectures. It features an industry-leading C++ compiler and the Data Parallel C++ (DPC++) language, an evolution of C++ for heterogeneous computing. For Intel® oneAPI Base Toolkit training and a presentation of the CUDA* converter, refer to:

  • Intel® RealSense™ ROS 2 Wrapper node, used for Intel® RealSense™ cameras with ROS 2

  • Intel® RealSense™ SDK, used to implement software for Intel® RealSense™ cameras

  • ROS 2 Battery Bridge, which utilizes the Battery Bridge Kernel Module to forward battery information from an EI for AMR’s microcontroller into the Linux kernel

  • ROS 2 OpenVINO™ Toolkit, which provides a ROS-adapted runtime framework of neural network which quickly deploys applications and solutions for vision inference

  • The VDA5050 ROS 2 Bridge which translates VDA5050 messages into ROS 2 messages which can be received and executed by ROS 2 components in an EI for AMR-SDK based EI for AMR control system.

  • The VDA Navigator, a basic waypoint navigator that receives a list of waypoints and sends them to the ROS 2 Navigation stack one after the other

  • AAEON* ROS 2 interface, the ROS 2 driver node for AAEON EI for AMRs

  • Slamtec* RPLIDAR ROS 2 Wrapper node, for using RPLIDAR LIDAR sensors with ROS 2

  • SICK Safetyscanners ROS 2 Driver, which reads the raw data from the SICK Safety Scanners and publishes the data as a laser_scan msg

  • ROS 2 ros1_bridge, which provides a network bridge allowing the exchange of messages between ROS1 and ROS 2. This lets users evaluate the EI for AMR SDK on EI for AMRs or with sensors for which only ROS1 driver nodes exist.

  • ROS 2, Robot Operating System (ROS), which is a set of open source software libraries and tools for building robot applications

    ROS 2 depends on other middleware, like the Object Management Group (OMG) DDS connectivity framework that is using a publish-subscribe pattern (The standard ROS 2 distribution includes eProsima Fast DDS implementation.)

  • Kobuki, the ROS 2 driver node for Cogniteam’s Pengo robots

  • OpenCV (Open Source Computer Vision Library), an open-source library that includes several hundred computer vision algorithms

  • GStreamer*, which includes support for libv4l2 video sources, GStreamer* “good” plugins for video and audio, and a GStreamer* plugin for display to display a video stream in a window

  • ModemManager, which provides a unified high level API for communicating with mobile broadband modems, regardless of the protocol used to communicate with the actual device (for example, generic AT, vendor-specific AT, QCDM, QMI, MBIM). Edge Insights for Autonomous Mobile Robots uses ModemManager to establish 5G connections using the Fibocom* FM350-G 5G/LTE modem.

  • Teleop Twist Joy, a generic facility for teleoperating twist-based ROS 2 robots with a standard joystick. It converts joy messages to velocity commands. This node provides no rate limiting or auto-repeat functionality. It is expected that you take advantage of the features built into ROS 2 Driver for Generic Joysticks for this.

  • Teleop Twist Keyboard generic keyboard teleoperation for ROS 2

  • Twist Multiplexer for when there is more than one source to move a robot with a geometry_msgs::Twist message. It is important to multiplex all input sources into a single source that goes to the EI for AMR control node.

  • ROS 2 Driver for Generic Joysticks