人手跟踪使用MATLAB控制 基于Arduino机械臂外文翻译资料

 2023-03-03 23:13:37

人手跟踪使用MATLAB控制 基于Arduino机械臂 摘要

手跟踪系统因为它的巨大功能实现应用在近期内得到许多人的关注,.这项系统可以通过许多技术来实现,这里我们展示了一个直接技术跟踪使用机械手臂的人手。本文展示了人类通过接口技术实现人手和机械手臂的连接, 用这种方法可以控制机械手臂来控制人手,利用图像处理技术在不同轴线上检测不同颜色的加工方法的人类手臂,这种技术是非常有用的,因为它需要实时视频的手和跟踪它与机器人手臂的接口。笔记本电脑的摄像头将视频和RGB(红、绿 蓝)三原色根据颜色不同轴手表示X轴和Y轴,跟踪这样的手将控制器和机械手臂通过接口技术连接起来,这个方法背后的主要目标是一个可编程序控制的机械手臂,因此它应该是由人类控制的手,将达到人类无法到达的地点,并且能直接通过这项技术完成给定的任务,在这个我们可以看到机器人手臂的实时运动。

关键词:颜色编码、运动人手跟踪、接口技术、控制器、机械手臂

一、简介

人的手跟踪系统的主要目标是创建人的手和机械臂之间的相互作用;人机交互给人类和计算机之间的关系。这个想法表明了创造一个尽可能相似人类手臂的机械手臂,而不是限制一组任务的手臂,此外,手臂是通过图像处理技术来控制的,相似与人类手臂与机械手臂的连接是这个项目的基本目标,但是有一个潜在的目标就是扩展机械手臂的功能一旦基本模型被创建后就像敲打钉子一样的例子一样简单。这篇文章介绍了一项技术,用来跟踪手臂和联机来控制机械手臂的不同运动,在任何方向上,用户可以通过移动我们的手来控制机械手臂的运动。这篇文章也是非常重要的,因为它提供了一个直观的方式来开发人力集中形式的人机交互,同时它也是很难控制的,因为它需要不同的识别方式例如图像识别,跟踪识别,颜色识别以及给予X和Y轴的点。不同的技术是用来连接人类和机器人之间的互动即使用PIC微控制器的C-MOS相机都是用来确定物体的位置的。最近在工业中应用了许多的机械手臂,这些机械手臂都是根据所给的程序,并按照程序工作,比如举起重物、放置物品、开采作业等等,但是这些机器人都是经过测试训练过的,任何改变工作的机器人都可以通过改变内部的程序而得到改变,有了这个想法我可以做任何我们想做的许多变化。在本研究中我们正在实施使用MATLAB使用不同的X轴和Y轴的控制机械臂跟踪人的手臂,对于手的每个部位都有一个颜色来代表它,从肩部到肘部的颜色我们使用绿色来代表,从肘部到手腕是红色,然后手腕使用的是蓝色,这些颜色都将被MATLAB检测到并给出位置所在,每个颜色取决于轴在屏幕上的定义,这些轴的位置会被捕捉并且经过接口技术联接控制器,控制器会给机器人命令,运动过程中在特定位置的特定机器人的伺服电机将放在轴机械手臂上,经过控制完成给定的动作。

二 、文献综述

目前,大量的工作都是为了确定手的运动,很多文章已经用于测量手的运动检测,这项技术已经应用在许多不同的领域当中,包含自动手语、自动草图、计算机图形学以及工业机器人代替人类工作。这篇文章给出了使用机器人最成功的技术,在这些领域中用两种类型的技术被使用:

(1)接触类型 (2)非接触类型

接触类型:接触类型的设备包含数据手套、电磁跟踪系统、外骨骼等。

非接触类型:这种类型包含基于视觉系统、基于语音识别、照相机等。

我们的技术应用的是非接触类型的,因为它使用一个摄像头来追踪手臂,这些传统的系统都是使用闭路电视摄像机基于计算机视觉算法使用的是嵌入式系统,这些技术主要包含了视频分析和应用于跟踪人的,一些非接触式技术中有肤色检测,用户可以用肤色检测技术直接追踪和检测机械手臂,然而一些使用符号技术在不同位置时,就像第一个手指表示向前运动,第二手指则表示向后运动一样等。

过去大量的工作都是使用单一摄像机完成的,而如今不同的方法和技术都可以经过过滤器,渲染背景,使用3D摄像机等进行检测。

为了对手部不同位置的特征提取,我们使用基于颜色的颜色编码器技术进行特征提取,当手运动时我们可以看到不同轴在不同的地方运动。

手的跟踪系统在某些情况下是非常有用的,当人不能到达或者直接触碰一些事物例如危险的化学反应、炸弹爆炸、高功率电气连接时使用手跟踪系统是非常必要的。

三、演算法

人类手工跟踪的顺序操作控制机械臂如图1所示,

图1 人手顺序操控机械臂流程

输入可以当作是人手的一个视频信号,并且分这个信号

来跟踪手上不同位置所贴上的不同颜色,视频信号可以

有一台笔记本电脑或者一个装有摄像头的机械臂所拍摄

,这将是其更加方便携带和更高效的处理。

A、颜色的跟踪

颜色的跟踪主要是跟踪三原色三种类型,颜色的在

人手上的分配入图2.1和2.2。选择三种颜色的原因是这

个世界上的每个图像都是有这个三种颜色构成的,颜色

的分配是按照这样的方式进行的,肩膀到肘部将得到一

个颜色,肘部到手腕得第二个和手腕前端得第三个,为

了将正常图像转换到灰色图像我们首先要做的必须将三

维图像转化到二维图像,然后将这些颜色分给它们各自

的X和Y轴,而这些轴将当成像素为零的位置。

B、角位置

使用简单的三角方程计算轴的角度位置如图3所示,

这些角度会让我们了解我们的手臂在什么方向上旋转了

多少角度。机器手臂在三个轴的任何轴向位置上都可以

旋转,并执行手臂功能。这些几种方法已经用来追踪人

手的角度,如手势识别中一个特定的形状的手掌或者手

指的数目都会显示在摄像机上。应用语音识别去跟踪角

度,无论我们说什么它都将以MATLAB编码形式写入

程序中,然后与机械手臂接口连接进行追踪角度。

根据轴的位置角度的跟踪可以通过摄像头将信号发

送至机器手臂中,对于机械手臂的运动角度信号是从MATLAB传输到微型控制器进行信号处理,处理过的信号又传输回机械手臂执行信号中需要执行的操作和运动。

图2.1 伸直手臂上轴的位置及颜色的检测

图2.2 90°弯曲手臂上轴的位置及颜色的检测

图2.3 用轴上的颜色计算角度

图2.4 手臂上不同位置的X、Y轴的检测

  1. 观察结果

人手追踪技术给出了在不同手的位置追踪不同轴的运动,图4中显示了手在不同位置各个轴位置的变化,这些轴位置的改变将使得各关节之间的角度改变,根据这些角度的变化从而让机械手臂移动起来。这些角度的变化通过串行接口记录下来发送到Arduino,然后实时控制机械手臂的运动。在这过程中我们可能得到错误的视频,但是这些错误我们可以再白色背景下消除。

五、结论

本文中实现了使用机械手臂进行人手跟踪,这手臂是由人手来控制并且听从指令,这项技术即使用户是聋哑人也可以使用,因为他只听手的指令这是一个非常容易实现直接耦合的人机互动的方法。为了更好的控制机械手臂,人手必须在光亮条件较好的情况下进行摄像记录,用黑色的背景这样可以减少在录制过程中出现的错误,为了更好的控制这些角度的测量, 一般使用简单的正弦、余弦 正切等三角方程。

我们不需要任何数据库技术来检测手臂,因为内部是个带有内存的实时处理器不需要对数据库进行存储。通过使用三原色颜色检测技术对轴上的颜色进行检测,我提出了一个简单的办法去跟踪人手运动的角度,手关节之间的角度便可以算出来了。以上数据显示了使用不同的算法来检测机器人手臂的手,同时对机械手臂可以控制。

六、发展前景

这种检测技术包含颜色检测技术,颜色检测技术只是其中一种,颜色检测技术需要更多的过滤选项以至于没有其他的颜色背景显现出来并得到记录,这个问题我们必须想办法去消除它,这种方法可以用于将精确度提高0.1度甚至更少。

为了控制机械手臂需要连接Arduino微控制器,因为它是通过串行接口将机械臂和相机或者我们的笔记本电脑连接控制的。根据人手的运动,我们不得不通过编串行接口的程序使得笔记本摄像头和机械手臂的接口连接。根据我们在颜色检测技术中在轴位置所测得的角度,这些角度信息都将会传递给旋转伺服电机。角度的信号是由串行接口发送给伺服电机,然后伺服电机将会按照信号转动至所要求的位置上。

Arduino作为一种学习工具

  1. 简介

Arduino是基于简单的单片机板和实现计算机语言处理发展环境的一个开源物理计算机平台,它最初是被艺术家和设计师用于创造电子原型的,即使对编程和电子方面的知识不太深入了解,他们也可以轻而易举的创建和设计电子原型,电子原型在传统上仅与工程和工程师相关而已。

Arduino可以用来开发交互式对象,通过输入来控制输出。项目可以由Arduino独立完成或者通过计算机通信在软件上运行。所以许多有趣的项目都可以围绕Arduino来完成。实际上许多“神盾处理器”(分离板块之间的连接)都是通过将功能添加到了Arduino控制板上。

今日我们生活在一个技术发展得到非常大开发的世界,这意味着需要一个技术熟练的劳动力大军去建立和维护所需的技术,因为许多新技术的互动,我们可以更容易通过实践去学习这些技术,然后经过对这些知识的自省和改善去构建新的知识。

这些年来对于学习的工具,仅仅局限于粉笔和石板铅笔和纸,钢笔圆珠笔等等,在各种层次的教育引入Adruino单片机可以帮助改善创建和设计东西的兴趣。通过各种项目工作的完成,它将大大提高批判性思维和解决问题的能力,有许多项目可以在网上收索到,一些新的项目也正在开发中。有一块Arduino电路板、其他一些组件再加上个人的想象力,做出一个新项目的可能性是无限的。

  1. 微控制器的历史

在70年代初的英特尔公司和德州仪器公司开始开发更高的集成微处理器。英特尔公司继续发展微处理器,然而德州仪器公司则采取了一种略有不同的路线,最后他们决定在内存中添加单芯片微处理器。这样单片机就诞生了。

尽管微处理器可以以一个强大的计算机为基础,但是它还是需要其他芯片工作。单片机的一体化方法需要其他芯片的帮助才能执行,即使它有一个有限的范围功能。单片机广泛的使用在各个领域,今日在我们使用几乎所有的电子设备中都可以找到它的身影。

三、Arduino

  1. 硬件

Arduino硬件类型各式各样,但是只有Arduino Uno板比较被看重。Arduino Uno是一个基于ATmega328的单片机控制板。它是高性能的AVR RISC结构的低功耗8位CMOS微控制器,设备操作的电压在1.8~5.5伏特之间。

Arduino Uno有14个数字输入/输出引脚,6个模拟输入、16兆赫晶体谐振器、一个USB连接口、一个电源插座、一个ICSP接口和一个复位按键。它包含了支持微控制器所需的一切,通过USB接口可以很简便的将其与电脑连接或者通过电源插口将它启动。

启动方式:Arduino Uno可以通过USB驱动连接或与外部电源(AC-to-DC适配器或电池)。从电池中可以插入电源的接地和Vin销头连接器。控制板可以在外部供应6到20伏。

输入/输出接口:在Uno板上的每14个数字针口都可以作为输入或输出,这可以通过使用PIN码的模式,数字写入和数字阅读等功能,这些功能都在5伏特电压下实现。此外还有一些针口有专门的功能。

通讯方式:Arduino Uno有许多设备可与计算机通信,可以是Arduino Uno电路板或者其他微控制器,软件系列库允许任何Uno数字实行串行通信。

  1. 软件

Arduino是开源环境非常容易去使用它。它是由Java编写的基于编程和其他开放源码软件,它可以在不同的平台上运行如Windows,Mac OS X和Linux ,它旨在介绍编程给那些对软件开发不熟悉的人,这使得它对于学生来说非常适用。它内部有一个特性代码编辑器如高级语言、括号对称和自动排版,它也可以通过一次单击进行编译和上传项目给控制板。Arduino程序或编写的代码都称为“草图”。

Arduino的草图可由C语言或者C 写入,Arduino集成开发环境配有一个软件库称为配线,从最初的配线项目做起,这使得许多常见输入/输出操作更加容易。

  1. 环境

Arduino开发环境包含一个文本编辑器编写代码、一个消息区域、一个文本控制台、一个带有常见函数和一系列菜单的工具栏按钮。它连接到Arduino硬件伤上实现上传草图并进行交互。

四、Arduino可以作为学习工具

班兹的学生为了完成一个项目的工作,但是无法找到负担的起的和有效的微控制器才发明了Arduino,班兹和大

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[146402],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。