设为首页 加入收藏

TOP

机器人编程教程2探索机器人-代码和电子设备(一)
2023-08-26 21:10:25 】 浏览:125
Tags:程教程 索机器

2 探索机器人-代码和电子设备

我们将拆开一个机器人,看看它的部件和系统。我们将探索机器人的各个组成部分,包括软件(代码、命令和程序库)和硬件,以及它们是如何组合在一起的。在开始制作机器人时,考虑你想要的部件以及它们之间的关系是很有价值的。我建议您绘制机器人的草图--框图,作为连接代码和部件的指南,我们将在本章对此进行探讨。

在本章中,我们将讨论以下主题:

  • 了解机器人内部结构
  • 探索机器人组件类型
  • 探索控制器和输入/输出
  • 规划组件和代码结构
  • 规划实体机器人

请准备:

2.1 了解机器人内部结构

我们可以先将机器人看作一个物理系统。比如下图的简单的业余机器人:

业余爱好机器人的组件布局

图中的部件组包括九类部件:

  • 底盘或机身是机器人的主要结构,其他部件都连接在这里。
  • 一个脚轮可使机器人保持平衡。
  • 两个驱动轮。其他机器人可能会在此处使用更多的轮子或支腿。
  • 电机是机器人移动的关键。
  • 电机控制器是连接控制器和电机的桥梁。
  • 控制器(这里是 Raspberry Pi)运行指令,从传感器获取信息,并处理这些信息,通过电机控制器驱动输出(如电机)。
  • 所有机器人都必须有电源,通常是一组或多组电池。
  • 传感器提供有关机器人环境或物理系统状态的信息。
  • 最后,调试设备是一种输出设备,可让机器人就其代码的运行情况与人类进行交流,同时还能起到美观的作用。

我们可以将机器人形象地看成一个由相互连接的部件组成的框图。方框图使用简单的图形来显示事物之间的大致连接方式:

框图可以看到硬件中的功能块,以及它们之间的高级数据流。

根据该图,您可以制定更详细的计划,其中包括电气连接、电源要求、硬件和所需空间等方面的细节。绘制你想制作的机器人方框图是制作机器人的第一步。

方框图不是原理图,也不是机器人成品的比例图。它甚至无法显示实际的电子连接。图中忽略了一些小细节,例如如何在超声波距离传感器作出反应之前向其发出信号。连接线给出了数据流的总体概念。方框图可以显示电机和传感器的类型和数量,以及它们可能需要的其他控制器。

以上是对机器人组件的简要概述,我们看到了一个与您将要制作的机器人相似的机器人,以及将其拆解成的各个部件。我们看到了一个简单的机器人框图及其意图。在下一节中,我们将从电机开始,仔细研究机器人的各个组件。

2.2 探索机器人组件类型

电机(英语:electric machine)又称电力机械,是机械能与电能之间转换装置的通称,指依靠电磁感应运行且具有能做相对运动部件的机械,可将电能转换成机械能或将机械能转换成电能的装置。

传感器(英语:Sensor)是用于侦测环境中所生事件或变化,并将此消息发送出至其他电子设备(如中央处理器)的设备,通常由感测器件和转换器件组成。

2.2.1 电机类型

扭矩是一种旋转/扭转力,例如,电机转动车轮所需的力。电机有一个极限,即失速转矩,在此转矩下电机将停止运转。

以上为不同类型的电机 - 直流电机、直流减速电机、伺服电机和步进电机

  • 直流电机: 这是机器人技术中最简单的电机类型,也是减速电机的基础。它使用直流(DC)电压,这意味着只需单向通过电压即可驱动它。电机速度与通过它的电压和移动所需的扭矩成正比。上图所示的裸直流电机可能会因转速过快而无法使用。它的扭矩不大,很容易失速。

  • 直流减速电机: 这是一种配有齿轮箱的直流电机。齿轮箱可降低转速,增加可承受的扭矩。这种机械优势提高了电机移动负载的能力。请注意,这种齿轮电机缺少焊接引线!我推荐这些类型的电机用于机器人车轮。

  • 伺服电机(或伺服机构): 这种电机将齿轮电机、传感器和内置控制器结合在一起示。发送到控制器的信号说明了电机的位置,控制器利用传感器的反馈来尝试达到该位置。伺服电机可用于摇摄和俯仰机构,以及机器人手臂和四肢。

  • 步进电机(Servomotor): 这些电机的线圈按顺序供电,使电机步进一定的度数。在需要精确运动时,工程师会使用步进电机。与直流电机或伺服电机相比,步进电机速度较慢,发热量大。您会在3D打印机和高端机械臂等精细控制应用中看到步进电机。它们比其他电机更重、更贵。

  • 无刷电机:它们由专门的控制器驱动,可以达到很高的速度和扭矩。它们运行时噪音较低,在无人机中很受欢迎。目前还没有与之相当的齿轮电机,因此可能需要制作一个变速箱。

除伺服电机外,所有电机都需要控制器(如 Raspberry Pi)的硬件来驱动。这些硬件允许Pi控制耗电设备,而不会损坏它们。切勿将直流电机、步进电机或螺线管直接连接到 Raspberry Pi!

2.2.2 其他类型的执行器

线性致动器是将电信号转换为单轴运动的设备。它们可以是步进电机驱动固定外壳中的螺杆,也可以使用线圈和磁铁阵列:

电磁线圈是一种简单的线性致动器,它使用一个带有金属芯的电磁线圈,通电后可被拉动或推开。这种类型通常用于液压或气动阀门。液压和气动系统可产生强大的运动,如挖掘机中的运动。

2.2.3 状态指示器 - 显示器、灯光和声音

另一种有用的输出设备是显示器。LED(小型电子灯)就能显示机器人某些部分的状态。LED 阵列可以显示更多信息并增加颜色。图形显示屏可以显示一些文字或图片,就像手机上的显示屏一样。

扬声器和蜂鸣器可以让机器人发出声音与人类交流。这些设备输出的声音可以是简单的噪音,也可以是语音或音乐。

许多机器人没有任何显示屏,需要依靠连接的手机或笔记本电脑来显示它们的状态。我们将在第 17 章 "用手机和 Python 控制机器人 "中使用手机来控制和查看机器人的状态。

2.2.4 传感器类型

下图显示了机器人技术中使用的传感器类型。它们与我们将在本书中探索和使用的传感器相似。让我们来看看其中一些传感器及其用途。请注意,这些传感器可能与之前看到的传感器类型不同--做相同工作的传感器有很大差异。当我们将它们添加到机器人中时,我们将更详细地介绍它们的变体:

我们机器人中的部分传感器:1 - Raspberry Pi 摄像头;2 - 光学距离传感器;3 - 超声波距离传感器;4 - 线传感器;5 - 麦克风;6 - 光学中断传感器

  • Raspberry Pi 摄像头模块

该模块连接到Raspberry Pi,为其提供成像功能。该模块可捕捉图像或视频序列。它可以快速生成大量数据,而这正是与机器人视觉相关的问题之一。它对光照条件比较敏感。

  • 光学距离传感器

VL53L0X飞行时间激光测距传感器是一种距离传感器。它使用红外激光反弹物体,检测物体的距离。它可能会受到光照条件的影响。

VL53L0X 传感器使用 I2C 向 Raspberry Pi 发送检测到的距离,并可与许多其他设备共享两个通信引脚。当您有许多传感器和输出,而连接的地方开始不够用时,I2C 就非常有用。I2C 传感器可能比较昂贵。

  • 超声波距离传感器

HC-SR04 是另一种距离/测距传感器,它通过物体反射声脉冲来检测距离。它受物体材料类型的影响,无法检测到某些表面,但不受光照条件的影响。有些表面,例如织物,会过多地吸收声音,而且永远不会将声音传回,而其他表面,例如网格或网眼,与声波的相互

首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Hi3798MV200 恩兔N2 NS-1 (四): .. 下一篇痞子衡嵌入式:借助i.MXRT10xx系..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目