将移动机器人开发时间缩减一半
开发人员首先开始使用 ROS(机器人操作系统),现在称为 ROS1,因为操作该系统不需要具备机器人编程方面的专业知识。但是,开发人员发现 ROS1 不能支持移动机器人组群。
这种失能是由于受到了实时编程、反应性和低延迟等方面的限制,而所有这些对于准确的机器人控制都是必需的。例如,一家智能工厂中的一队自主移动机器人必须能够协同工作,以选择、抓握和移动物品,同时又不会互相妨碍。没有实时计算机视觉处理,不可能完成这些任务。
ROS2 在 ROS1 的基础上对 API 做了重大改变。这使操作系统能够支持更广泛的计算环境,利用与 ROS1 不兼容的技术,并可以进行实时计算机视觉编程。最后,开发人员理论上可以将开源中间件用于集群机器人技术。
但有一个问题仍然妨碍着许多开发人员使用两种形式的 ROS 来构建商用移动机器人。ROS 开源社区没有能力提供保证,也无法支持人们在操作系统上构建的机器人。
这为凌华科技创造了机会,开发出了 ROS2 自主移动机器人控制器:ROScube。这是一个经过 ROS2 优化的开发平台,可保证为客户提供能够集成并简化硬件和软件的解决方案。通过提供算法库和软件,它可以将编程时间缩减一半。
“在传统的机器人开发过程中,编程是最耗时的阶段。能够将编程时间减少 50% 意味着开发人员可以更快地测试和完善他们的工作。”凌华科技项目经理解释道。
Wang 表示,使用 ROScube 的解决方案集成商经历了在三个月内从开箱即用到构建概念验证 (PoC) 部署的转变。他们能够使用 ROScube 随附的算法来实现这一目标,而不必自行编程。
开发人员还可以从凌华科技公司获得技术支持并排除故障。而且,由于所有组件都可以顺利协作,因此使用来自单个实体的硬件和软件可简化构建移动机器人的过程。
机器人视觉浅析
ROScube 包括 ADLINK Neuron SDK,用于内部通信以及集群移动机器人应用所需的车到车协调。该 SDK 随附了商用版(相对于开源而言)数据分发服务 (DDS) 中间件,以帮助确保可靠、实时的通信。它还提供了一系列 QoS 资源、NeuronLib API、UI 接口、车队管理软件以及 ROS1 和 ROS2 兼容性。
所有这些都为开发人员提供了使用开源社区工具构建的机器人所缺乏的支持。他们唯一需要的技能是使用通用编程语言(例如 C、C++ 和 Python)的能力,并熟悉 Linux 等常规操作系统。不需要具备深厚的机器人知识或专业知识。
Neuron SDK、ROScube、ROS 初学者工具包和 NeuronBot 支持用于人工智能算法的计算平台以及机器人视觉、目标识别和训练所需的推断(图 1)。
无损性能
缩短开发时间并不意味着性能或功能受损。ROScube 可与英特尔® 实感™ 深度摄像头和英特尔® Movidius™ VPU 神经计算引擎等技术配合使用。
实感摄像头可辅助自主移动机器人计算颜色和距离信息以执行定位和导航。这很关键,因为此类机器人必须能够规划、执行和更改其路线,并避免与移动和静止的物体碰撞。
Movidius 中包含的人工智能算法库支持人工智能框架和神经网络,允许移动机器人学习和识别物体和人脸。这两种技能对于交付物品以及与目标(包括其他机器人)和人员互动都很重要。
通过 ROScube 控制器,还实现了多个移动机器人与其他设备实时通信。该控制器除设计了各种 I/O 端口之外,还可选配英特尔® 至强® 或英特尔® 酷睿™处理器。通过这种方式,使用 ROScube 构建的自主移动机器人可以使用计算机视觉来参与各种场景。
鉴于 ROScube 能够与 ROS1 和 ROS2 两个操作系统兼容,因此企业能够开发最适合其需求的任何一种移动机器人。无论哪种情况,该解决方案都可以缩短对机器人进行编程所需的时间、降低成本及提高性能水平。