定义机器人的关键技术 - 机器人操作系统

07-01-2021 |  |  By 马克帕特里克

系列封面是什么?

在这一系列的六个博客中,我们看一下定义机器人正在设计和使用的方式的关键技术,以及如何在将来发展。它将涵盖硬件和软件级别的开发,以及AI等创新如何已经塑造了机器人的未来。

博客1:密钥技术定义机器人 - 从静态武器到AMRS

博客2:密钥技术定义机器人 - 移动和灵巧

博客3:定义机器人的关键技术 - 定位和导航 

博客4:密钥技术定义机器人 - 机器人操作系统

博客5:密钥技术定义机器人 - Cobots和AI

博客6:机器人的未来 

机器人操作系统

任何机器人的主要特征是它可以被编程为正是要做的事情。最早的机器人通过今天的标准没有运行软件程序,但它们是可编程的 - 使用物理机电开关。 

有几种方法可以编程机器人。最简单的是,通过手动引导机器人通过您希望其重现的动作。机器人将记录每个位置并复制同一系列运动。  

现在使用软件实现相同的方法。图形用户界面或GUI示出了表示所需运动的图标。操作员计划所需的动作和位置。这种技术在教育或玩具机器人中的特点,例如 LEGO®PINDSTORMS®. 但它非常有效,可以使机器人简单甚至有趣! 

工业机器人的制造商通常使用自己设计更传统的编程语言。幸运的是,对于工程师来说,其中许多是基于帕斯卡尔。虽然帕斯卡尔不再被广泛使用,但它是第一种真正的编程语言之一,以及Fortran。 

现在,包括C / C ++,包括C / C ++的更普遍的语言,用于几乎所有电子设备领域的低级设计,包括机器人。制造商也开始选择C / C ++编程语言。 

机器人的开源软件

开源机器人操作系统或ROS是一个项目,它为机器人行业带来了一些互操作性。虽然它被称为操作系统,但ROS基本上是中间件。它位于控制机器人硬件和用户界面的软件之间。 

ROS拥有自己的语言,它使用XML格式。工程师使用这种语言以标准方式描述特定机器人的功能。基于消息的系统用于发送命令以告诉机器人该做什么。这有助于为机器人设计创建一个共同的平台。

ROS框架包括一个函数库,旨在控制机器人所需的各种传感器移动和导航。本系列中的第三个博客有更多关于这个主题。 

控制系统可能需要快速响应,低延迟。在嵌入式域中,这意味着使用实时操作系统(RTOS)。工程师可以选择使用高级操作系统的实时版本,例如Linux。 

如果正在使用实时操作系统,则ROS中间件仍然有用。 ROS项目为其与基于Linux分发的实时操作系统的集成提供了支持。 ROS也可以与其他RTOS共存。 ROS堆栈可以在许多不同的处理器架构上运行,包括ARM Cortex-A核心。使用工具,还支持交叉编译至ARM Cortex-M的微控制器 μrosnode., 罗斯布里奇rosserial.

为了更直接的方法,有 微罗斯,这使得ROS 2堆栈的一部分能够在微控制器上运行。采取的方法是使用便携式操作系统接口(POSIX)

符合RTO,如 弗雷托斯 或者 Apache nuttx.,运行作为Micro-ROS一部分开发的客户端。 API和ROS中间件接口在MCU上运行并与嵌入式客户端交谈。  

客户端可以通过传统的接口(蓝牙,以太网等)与在桌面OS上运行的ROS 2代理进行通信。在越来越多的微控制器家庭中支持微型ROS,包括:

多层机器人软件

机器人在应用程序中可能是独一无二的。它具有以多个级别为中心的方法。对于电子设计工程师,它包括低级控制代码,也许在裸机上运行。也可能使用嵌入式RTOS。该软件在用户界面更高的级别处一直扩展。此界面将是基于软件的基础和整体客户体验的基本要素。 

机器人的可编程性质需要这种以本软件为中心的设计方法。在系统级别,我们正在快速接近一段时间,难以看到硬件/软件划分。本系列的下一个博客探讨了这一点,看着机器人,Cobots和人工智能使用的演变。 

看看Mouser的 其他在线资源 了解有关机器人技术的更多信息。 

阅读更多

密钥技术定义机器人 - 从静态武器到AMRS

密钥技术定义机器人 - 移动和灵巧

密钥技术定义机器人 - 定位和导航


Mouser Electronics.

授权经销商

www.mouser.com.

跟着我们 推特



由Mark Patrick.

马克加入了 Mouser Electronics. 2014年7月,以前在RS组件中举行的高级营销角色。在卢比之前,标志在德州仪器中的应用支持和技术销售角色。他拥有考文垂大学电子工程中的一流荣誉学位。

相关文章