65.9K
CodeProject 正在变化。 阅读更多。
Home

机器人/嵌入式系统 - 第一部分

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.85/5 (32投票s)

2006年10月31日

CPOL

9分钟阅读

viewsIcon

158330

本文是关于嵌入式系统及其应用的一系列文章的第一部分。它将使用 BASIC Stamp II 微控制器来创建一个简单的机器人。

文章系列



引言

本文是介绍嵌入式系统及其在行业中应用的一系列文章的第一部分。我决定将主题分成几个部分,将在完成后逐步呈现。本系列的目标是讨论嵌入式系统及其是什么。在此过程中,我还会展示如何使用 Parallax 公司提供的机器人套件组装一个基本的机器人,该机器人将通过 BASIC Stamp II 微控制器进行控制。如果时间允许,在本系列的最后,我将开始使用 Microsoft Robotics Studio 来演示 Microsoft 提供的新 IDE 的一些功能。

那么什么是嵌入式系统?一般而言,嵌入式系统是指包含可编程计算机以完成特定任务的任何设备。有时也说,嵌入式系统几乎是除桌面计算机以外的任何计算系统。如今,嵌入式系统无处不在!您的手机、数码相机、便携式视频游戏机、计算器、数码手表等等……这个列表可以很长很长。这能让您对嵌入式系统的广泛应用基础有一个概念。

背景/参考

理解计算机体系结构和微控制器对本系列文章非常有益。我将讨论系统设计和微处理器理论概念。一些基本的电子知识在我们将要进行的机器人电路设计中也会很有帮助。所有这些都将提供,我将努力使其成为一次良好的学习体验。

嵌入式应用的特点

嵌入式系统有几个共同的特点,将它们与其他计算系统区分开来:单一功能、严格限制和实时响应。

  • 单一功能:嵌入式系统通常会重复执行一个特定的程序。
  • 严格限制:所有计算系统在设计指标上都有限制,但嵌入式系统的这些限制可能非常严格。
  • 实时响应:必须不断对系统环境的变化做出反应,并且必须实时计算某些结果,而不延迟。

实时嵌入式系统的一个例子是当今大多数汽车中的计算系统。例如,宝马使用高度灵敏和复杂的嵌入式系统,为驾驶员提供更美好、更安全的驾驶体验。例如,5系每秒进行数百万次计算,并利用这些信息对车辆的关键部件进行适当调整。让我们仔细看看其中的一些组件,以便更好地理解。

ABS(防抱死制动系统)和(ASC+T)自动稳定控制+牵引力控制

防抱死制动系统通过制动器泵送来减少打滑。自动稳定和控制系统在转弯时介入发动机,以提高汽车的稳定性。这些系统主动控制着汽车的关键系统。

使用 ABS,传感器测量车轮的转速。如果车轮转速迅速下降,电子转向系统将报告制动抱死危险。液压压力立即降低,然后升高到略低于抱死阈值。这个过程可以每秒重复几次,您可以通过制动踏板的脉动来注意到它。

为了改进 ABS,宝马在每个车轮上都安装了传感器。四个传感器的优点是提高了调节精度。通过检测四个车轮各自的转速,可以更灵敏地调节后桥的制动力。

宝马的四个车速传感器与所有四个车轮保持持续联系,比仅使用三个传感器的系统提供更高的精度。每个传感器独立地提供特定车轮的准确反馈。三传感器系统为后轮提供平均车轮速度数据。



自动稳定控制+牵引力控制是一个悬架控制系统,它会降低发动机输出,直到车辆能够行驶或加速,而不会车轮打滑。这与驾驶员如何使用加速踏板无关。如果减速不足,每个驱动轮都会被单独制动,直到两个车轮都获得最佳牵引力。制动由宝马率先推出的防抱死制动系统(ABS)控制。

智能调节系统可防止车辆在松散路面上加速时发生侧滑,确保方向稳定性可靠地保持。

  • 如果一个车轮有打滑的危险,就会施加车轮制动,或者系统会介入以相应地调节发动机管理。为了确保侧向稳定性,油门只施加足够的力度,即使加速踏板被完全踩下。
  • 集成式发动机阻力矩调节系统可防止驾驶员突然松开加速踏板时驱动轮抱死。
  • 如果您愿意,可以关闭该系统。

ABS 和 ASC+T 系统必须清晰通信,因为 ASC+T 与制动系统交互。由于 ABS 比 ASC+T 早几年推出,因此能够将 ASC+T 与现有的 ABS 模块以及其他现有的嵌入式模块接口非常重要。发动机和控制管理单元包括电子控制油门、数字发动机管理和电子变速控制。ASC+T 控制单元有两个微处理器,一个专注于逻辑相关组件,另一个专注于性能特定的组件。

现在我们已经看到了一个真实嵌入式系统的示例及其有用性,让我们来关注技术本身。

处理器技术

处理器技术与用于实现系统所需功能的计算引擎的体系结构有关。

通用处理器:通用处理器或微处理器的设计者制造一个可编程设备,该设备适用于各种应用,以最大化销售设备。

专用处理器:专用处理器是一种数字电路,设计用于执行恰好一个程序。

应用专用处理器:应用专用指令集处理器(ASIP)可以在通用处理器和专用处理器之间起到折衷作用。ASIP 是一种可编程处理器,针对具有共同特征的特定类别的应用进行了优化,例如嵌入式控制、数字信号处理或电信。

在嵌入式系统中使用通用处理器可能会带来一些设计优势。灵活性高,因为改变功能只需要改变程序。上市时间短,与自己设计处理器相比,少量生产的单位成本低。对于一些更计算密集型应用,性能可能不是最优。

在嵌入式系统中使用专用处理器可带来一些设计指标上的优势。性能可能很快,尺寸和功耗可能很小,大量生产的单位成本可能很低。

在嵌入式系统中使用 ASIP 可以在保持良好性能、功耗和尺寸的同时,提供灵活性。微控制器和数字信号处理器是两种众所周知的 ASIP 类型,已经使用了几十年。微控制器是一种为嵌入式控制应用而优化的微处理器。

数字信号处理器(DSP)是另一种常见的 ASIP 类型。DSP 是一种微处理器,设计用于对数字信号执行常见操作,数字信号是模拟信号(如视频和音频)的数字编码。

我们将主要关注通用处理器。

通用处理器

通用处理器是一种可编程数字系统,旨在解决各种应用中的计算问题。

相同的处理器可以用于解决通信、汽车和工业嵌入式系统等各种应用中的计算问题。

基本架构

通用处理器由数据通路和控制单元组成,它们与内存紧密相连。

数据通路

数据通路由用于转换数据以及存储临时数据的电路组成。它包含一个算术逻辑单元(ALU),能够通过加法、减法、逻辑与、逻辑或、取反和移位等操作转换数据。

数据通路还包含能够存储临时数据的寄存器。处理器通常根据其大小来区分,我们通常将处理器的大小衡量为数据通路组件的位宽。常见的处理器尺寸包括 4 位、8 位、16 位、32 位和 64 位。我们将用于构建机器人的处理器是一款 16 位通用处理器。

在某些情况下,特定处理器在其寄存器、ALU、内部总线或外部总线之间可能具有不同的大小。例如,处理器可能具有 16 位的内部总线、ALU 和寄存器,但具有老旧的 8 位外部总线,以减少处理器 IC 上的引脚数量。

我们将在文章的第二部分更详细地讨论处理器。

控制单元

控制单元由用于检索程序指令以及根据这些指令将数据移动到、从和穿过数据通路的电路组成。

对于每个指令,控制器通常会按顺序执行几个阶段,例如从内存中获取指令、解码指令、获取操作数、在数据通路中执行指令以及存储结果。每个阶段可能由一个或多个时钟周期组成。时钟周期通常是数据从一个寄存器传输到另一个寄存器所需的最长时间。

内存

虽然寄存器满足处理器短期存储需求,但内存满足处理器中长期信息存储需求。我们可以将存储信息分类为程序信息或数据信息。

程序信息包括导致处理器执行所需系统功能的指令序列。数据信息请求程序正在输入、输出和转换的值。

关注点

这个介绍只是触及了计算机体系结构表面的皮毛。它涵盖了基本概念,并为读者提供了文章系列其余部分的立足点。市面上有许多优秀的计算机体系结构书籍可供您学习,以获得对该主题更深入的理解。我将列出一些我用过并认为值得阅读和参考的书籍。

  • 计算机组织,作者:Carl Hamacher, Zvonko Vranesic, Safwat Zaky
  • 计算机体系结构:极简主义视角(国际工程与计算机科学系列)(精装版),作者:William F. Gilreath, Phillip A. Laplante

当然,还有更多关于该主题的书籍供您参考。请记住,本文的目标不是计算机设计和体系结构,而是如何使用这些概念来实现一个简单的嵌入式系统;我们将使用机器人来演示这些概念。

© . All rights reserved.