基于NiosⅡ的机器人视觉伺服控制器的研究与设计
2022-02-17
来源:小侦探旅游网
维普资讯 http://www.cqvip.com 。 。 一 ●河南科技大学栗素娟朱清智阎保定 基于Nios II的机器人视觉 伺服控制器的研究-q设计 摘 要:本文介绍了Nios II的结构特点及开发流程,利用Nios II软核设计一个机器人实时目标跟踪控制器。控 制器由Nios II作为处理器,采用线性卡尔曼滤波器算法来快速完成运动估计及进一步分析和校正,实 现快速而准确的跟踪。从而改善多关节机器人跟踪运动目标过程中存在的彩色图像数据量大、处理时 间长的问题,提高了实时性。 关键词:Nios II嵌入式处理器;卡尔曼滤波器;SOPC,机器人视觉 引言 运动检测跟踪,使用线性卡尔曼滤 大脑完成相应的处理和解释,其最 Altera公司的Nios II处理器是 波器算法来快速完成运动估计及进 终研究目标就是使机器人视觉伺服 可编程逻辑器件的软核处理器。 一步分析和校正,算法中的乘除利 控制器能像人那样通过视觉观察和 Nios II软核处理器和存储器、I/O接 用MATLAB/DSP Builder生成的模 理解世界,具有自主适应环境的能 口等外设可嵌入到FPGA中,组成 块作为Nios II处理器的自定义指令 力,可依据视觉敏感和反馈,以某 一个可编程单芯片系统(SOPC),大 的设计方法。 种程度的智能完成一定的任务。 系统硬件实现 大降低了系统的成本、体积和功 耗。适合网络、电信、数据通信、嵌 入式和消费市场等各种嵌入式应用 场合。 机器人视觉伺服控制器 的研究与设计 基于SOPC的机器人视觉伺服 控制器,主要由FPGA、存储器和外 机器人视觉伺服控制就是用各 设三个部分,如图1所示。 摄像头位置固定,它所能采集 本文提出一个基于Nios II处理 种成像系统代替视觉器官作为输入 器结构的系统用于实现机器人实时 的敏感手段,并由高速处理器替代 图像的范围称为视觉区域,调整摄 像机使视觉区域覆盖机器人的工作 空间,即机器人要跟踪的曲线在该 视觉区域内。利用摄像机采集图 像,而后系统对采集的图像进行处 理,分析、提取出离散的采样点序 列,最后再根据采样点序列规划机 器人的运动路径。其中,FPGA部分 核心是Nios II处理器Core。在一般 的嵌入式系统开发中,当需要新的 外设模块时往往需要在PCB上加入 相应的外设芯片或者换用更高档的 CPU,而SOPC设计可以同一个 2007.6电字设计应用www.eaw.com.cn 维普资讯 http://www.cqvip.com 瓣 FPGA芯片内加入相应的外设模块 是x(k)无偏和最小方差,根据这两 滤波器方程进行计算。 核,并通过在片上的Avalon总线与 个准则可推导出对系统的完整的滤 Nios II处理器Core相连,因而不需 波算法,即: +1I k+1);j( +1l )+K(k+1)[z( +1) 要在PCB这个层面上作更多的修 j(j( +1j )= ( +1, )j(々l ) 一4。滤波:预测和滤波是相互作 用的,即由滤波得到预测而由预测 又可得到滤波。 、I f £ 、I 改。成像采集装置从目标对象场景 日( + )j(七+ l七 } (3) ) 5。输出:SOPC发出控制信号 中采集图像序列,保存在SOPC的 预测误差方程为: 给随动平台。 该系统采用集成了Nios软核处 片外存储器中,然后利用Nios II处 JD +1f )=中 +1.k)P(k{ )中 +l, ) 理器和定制的乘法、除法等DSP运 +T( +l,k)QrT +l,k) (4) 理器的Stratix高密度FPGA,控制 算指令来实现线形卡尔曼滤波器的 增益矩阵方程为: 器通过摄像头记录每一时刻运动目 算法,从而实现运动目标的识别与 K(k+1)=P(k+1lk)H ( +1) ( +1) 标的位置和速度作为观测值。然后 跟踪。 JD(七+1f七) (七+1)+Rk,l】 (5) 按照公式(3)、(4)、(5)、(6)进行最 系统软件的实现 滤波误差方差阵为: 佳状态估计,得到每一时刻运动目 离散线性卡尔曼滤波算法 P(kl七)=【I—K(k)I-I(k)]P(kl k—1) (6) 标的位置和速度的预测值。由于各 线性卡尔曼滤波是美国工程师 上述公式中I是单位矩阵,Q为 种干扰因素的存在,经过七八个时 Kalman在线性最小方差估计的基础 w(k)自协方差方差阵,R为V(k)自 间段后预测位置与观测位置相当接 上,提出的数学结构上比较简单的 协方差方差阵。卡尔曼滤波采用递 近,即可实现准确的状态预测。 最优线性递推滤波方法,具有计算 推算法,计算最优滤波值时,K(k+1) 量、存储量低,实时性高的优点。特 由P(k+lIk)来确定,P(k+lIk)由P(k) 结语 别是经历了初始滤波的过渡状态 来确定,P(1(+1)由P(k+llk)和K(1(+1) 本文建立了一套基于SOPC结 后,滤波效果非常好。 来确定,如此反复递推运算。 构的多关节机器人视觉伺服系统, 线性卡尔曼滤波基本算法如 系统程序流程 主要应用线性卡尔曼滤波算法成功 下:设一随机动态系统,其数学模 本系统的主要功能是完成运动 的预测了运动目标的状态参数功能 型为: 目标的锁定,并控制运动平台对目 是锁定运动目标,实现对目标进行 x(k+1)=・ (k+1,k)+r(k+1,k)w(k)L(1) 标进行实时跟踪。使用高性能Nios 实时跟踪。由于应用卡尔曼滤波后 Z(k)=H(k)x(k)+V(k) (2) II处理器作为控制器控制着整个系 极大地缩小了搜索空间,减少了系 公式1中x(k)为系统状态矢量, 统的实现流程和高效的线性卡尔曼 统的图像处理时间,可以有效地提 w(k)为系统噪音矢量, (k),r(k)为 滤波算法对目标运动参数的估计, 高系统的实时性,实现对运动目标 系统矩阵,公式2中z(k)为系统观 有效地提高了图像处理速度,实现 的快速跟踪。■ 测矢量,H(k)为系统观测矩阵,V(k) 了运动目标的快速跟踪。以下是系 为系统观测噪音矩阵。 统流程: 参考文献 关于系统的随机性,本文假 1.系统初始化:由SOPC通过 1.徐光辉,程东旭等.基于FPGA的嵌入 式开发与应用fM】 北京:电子工业出版社, 控制总线设置USB接口微型摄像头 2oo6 9 定,系统噪音和观测噪音是不相关 2.潘松,黄继业,曾锍.SOPC技术实用 的零均值高斯白噪声。随机系统的 工作模式,并初始化其主控程序变 教程【M】.北京:清华大学出版社,2005 3.屠文柯,阉保定等.一种基于仿生学原 状态估计问题,就是根据选定的估 量。 理的复杂彩色目标辨识方法【J】.河南科技大学 学报、2005.12(6) 4、李春霞。卡尔曼滤波方程的改进算法及 计准则和获取的测量信息对系统状 2.确定运动区域:由Nios II处 应用[J】.哈尔滨商业大学学报,2oo2,6.18(3) 态进行估计,卡尔曼滤波的估计准 理器根据图像序列锁定运动物体, 5.高勤,李志强,都学新.一种新型自适 应卡尔曼滤波算法【J】.现代雷达,2001, 贝 是: 根据被跟踪物体确定运动跟踪区 1 2.23(6):(29.34) 6.王志贤.最优状态估计与系统辨识【M】. 间,接下来的跟踪操作都是在这个 西安:西北工业大学出版社,2004,6 [ (JI})]=J[r(k)一 ( )】 =£[ (膏) (膏)】=min, 跟踪窗口中进行。 其中,日 ( )】=EIx( )】,即估计 ( ) 3.预测计算:利用线形卡尔曼 Electronic Design&Application World.NikkeiElectronics China e ≥ ~t ;0