引言
利用条码技术进行精密测量的典型仪器是1990年Leica公司开发成功的数字水准仪NA2000,这种光电一体化的新型仪器,具有测量速度快、精度高、操作简单、读数直观,能自动计算高差、高程,自动记录数据,计算机数据处理和容易实现基准测量一体化等诸多特点。国内目前对该技术的研究较少,本文提出了一种基于ST半导体公司的32位高性能处理器STR912FW44X6的测量系统方案。
系统结构
本系统由以下几个部分组成:条码标尺、光学系统、CMOS图像采集模块、STR912主控板、键盘与液晶显示模块、电源模块和计算机测试系统。 硬件结构框图如图1所示。
系统工作原理如下:带有精密位置信息的条码图像通过光学系统,成像在CMOS图像传感器光敏面上,STR912FW44X6处理器对SVI公司的LIS-1024图像传感器进行自动曝光控制后,采集图像信息,经过算法处理,获得条码带有的位置信息。
当系统进行高速图像采集时,STR912FW44X6处理器将采集信号通过以太网接口送往计算机测量系统,进行最终的数据处理。
硬件设计
图像采集模块
图像采集模块主要由线阵CMOS图像传感器(LIS-1024)、运算放大器(TLV2221IDBVR)组成。视频信号经运算放大器放大后传送到STR912FW44X6主处理器进行A/D转换,转变为数字图像信号。
STR912FW44X6主处理器直接控制图像采集时序,图像采集模块本身并没有自动曝光功能,对环境光强的变化需要由主芯片对采集到的图像信号进行分析,然后通过对图像传感器的控制来实现自适应环境光强的功能。
主机板模块
系统主芯片是基于ARM966E-S核的高性能嵌入式芯片STR912FW44X6,运算速度达96MIPS,支持单周期DSP指令。芯片的系统外围包括时钟、复位、电源管理、向量中断控制器(VIC)、内部PLL、RTC、定时器、9个可编程DMA通道和多达80个GPIO。还有8通道10位ADC、3相电机控制器、PWM输出和多种通讯接口。
芯片内建双组Flash,可利用芯片上任意通讯口实现在系统编程功能。主芯片外接1 片64MB内存(芯片ST-M25P64)来扩展存储空间。
主机板外围接口
主要有CMOS图像传感器接口、RS-232接口、I2C接口和10/100M以太网接口。
CMOS图像传感器的接口主要实现对图象传感器的自动曝光控制和图象采集;RS-232接口(芯片SP3222)实现程序下载,与上位机通讯,接受上位机指令控制;I2C接口实现主芯片与键盘和液晶显示模块之间的通讯;10/100M以太网接口(芯片STE100P)配合计算机软件实现高速图像采集。
键盘与液晶显示屏模块
键盘模块选用ATMega48芯片实现键盘控制和I2C通讯,以及LCD屏模块I2C通讯。
软件设计
系统软件的流程如图2所示。
软件功能
软件的功能主要是图像的条码定位算法,包括以下内容:
- 条码检测:从条码信号中提取各种特征参量,通常包括各条码边缘位置、中心、宽度的检测,码字划分。
- 根据标尺已知参数确定物像比,同时求出视距,计算基准位置相对于目标码位置的相对距离,按物像比放大到真实尺寸d2(精度结果)。
- 解码:相当于信源编码的逆过程,计算目标码字的码字位置d1(粗读结果)。标尺最终读数ds为粗读与精读结果之和:ds=d1+d2。
本系统采用了等间隔周期性位移条码,利用条码等间距结构,通过提取与条码等间距对应的特征谱线计算物像比,进而得到条码的等效宽度序列,最后根据条码周期性实现解码。
软件架构
整个软件采用嵌入式操作系统mCOS-II作为主要载体,软件主要分五个线程,系统上电启动后五个线程并行工作。五个线程分别是:串口控制、I2C接口控制、以太网接口控制、系统菜单控制、数据采集和解码。
测试结果
为了考察系统的性能,设计了与精度为0.004mm的螺旋测微计比对实验。利用螺旋测微计测量条码标尺实际移动的数值,每次条码标尺移动0.500mm,总共测量11次数据,得到11个不同位置处的条码值,计算差值进行比对。测量结果如表1所示。
[page]
从测量数据看出,系统测量数据的偏差值在±0.0185mm以内,说明系统的测量达到了一定的精度。
对系统分辨率作了初步测试。保持条码和测量系统的相对位置不变,连续测量10次数据,如表2所示。
测量数据平均值为130.5049mm,系统测量算术偏差在±0.3mm内,即现有系统的分辨率约为0.3mm。采用系统误差标定,软件算法改进等措施后,有望进一步提高系统的测量精度。
结语
本系统是一种基于ARM的精密视觉测量平台,实现了条码的精密测量功能。在该平台上进一步开发,形成的系统可以应用于一维、二维长度的精密测量,具有较为广阔的应用前景。
参考文献:
1. 王凤鹏、王志兴、张晓,一种新的数字水准仪测量算法,江西科学,2007, 25(3),1
2. ST产品目录,2006
3. 张晓、王志兴、李相银等,利用正弦条码尺实现位移测量,光电工程,2005,32(3)
关键字:ARM 条码精密测量
引用地址:
基于ARM的条码精密测量系统
推荐阅读最新更新时间:2024-03-16 12:38
Tegra的心:世界首个ARM结构超级计算机
据NVIDIA官方博客透露的消息,西班牙国家超级计算机构——巴塞罗那超级计算中心(BSC)昨日公布,将建造世界首个基于ARM架构CPU的超级计算机。BSC计划打造的超级计算机将采用NVIDIA Tegra 3四核心ARM Cortex-A9处理器,以及符合MXM 3.0标准的NVIDIA移动型号CUDA GPU(似乎是GeForce GT 520M)来加速计算。预计在2012年上半年-2013年正式面世。 当然,BSC此次探讨的方向不是在超级计算机500强榜单上冲上多少名,相应地是借提高性能/功耗比(目标7GFLOPS/W),进而尝试在绿色超级计算机榜单上占据榜首位置。 由于未来的大型超级计算机功耗动辄10MW-20MW,相
[手机便携]
Arm的几种工作模式和工作状态
ARM处理器工作模式一共有 7 种 : USR 模式 正常用户模式,程序正常执行模式 FIQ模式(Fast Interrupt Request) 处理快速中断,支持高速数据传送或通道处理 IRQ模式 处理普通中断 SVC模式(Supervisor) 操作系统保护模式,处理软件中断swi reset ABT 中止(Abort mode){数据、指令} 处理存储器故障、实现虚拟存储器和存储器保护 UND 未定义(Undefined) 处理未定义的指令陷阱,支持硬件协处理器的软件仿真 SYS 系统模式(基本上=USR)(System) 运行特权操作系统任务 用户模式和特权模式 除了用户模式之外的其他6
[单片机]
以ARM9芯片和S3C2440嵌入式系统为核心的以太网接口电路设计
1.引言 随着微电子技术和计算机技术的发展,嵌入式技术得到广阔的发展,已成为现代工业控制、通信类和消费类产品发展的方向。以太网在实时操作、可靠传输、标准统一等方面的卓越性能及其便于安装、维护简单、不受通信距离限制等优点,已经被国内外很多监控、控制领域的研究人员广泛关注,并在实际应用中展露出显着的优势。本文提出了一种基于DM9000AE网络接口芯片和32位三星ARM9处理器S3C2440嵌入式系统的以太网接口的设计方案,并在Windows CE操作系统上开发移植了网络驱动程序实现网络的接入。 2. DM9000AE工作原理 2.1 DM9000的主要特性和总体结构 DM9000AE是DEVICOM(台湾联杰国际)研发的一款10/
[单片机]
arm cortex-m0 lpc1114简介
LPC1114是NXP公司推出的一款ARM Cortex-M0 内核的32位单片机。它的主频最大可达50MHz,内部集成时钟产生单元,不用外部晶振也可以工作。内部集成32KB FALSH程序存储器、8K SRAM数据存储器、一个快速I2C接口、一个RS485/EIA485 UART、两个带SSP特征的SPI接口、4个通用定时器、1个系统定时器、1个带窗口功能的看门狗定时器、功耗管理模块、1个ADC模块和42个GPIO。截至Ration写稿时,一片LPC1114的零售价只需5.9元,批量价更便宜。如此强大的处理器,如此低廉的价格,可谓是性价比无敌,其低功耗、简单易用、高能效和低成本相结合,必然会在市场中占有一席之地。 LPC1114
[单片机]
快速学Arm(34)--系统控制模块(3)
我们再来看一下Boot Block.Boot Block是芯片生产时由厂家固化在其中的一段代码.这段代码在ARM复位后首先被运行. 下面的图式LPC2300系列ARM复位后的处理流程: LPC2300系列ARM发生复位后,这两个唤醒定时器同时启动.这两个唤醒定时器的作用分别为: .IRC唤醒定时器用于产生一段延时,延时结束后即启动Boot Block代码. .Flash唤醒定时器用于产生一段延时. 当IRC唤醒定时器溢出后需要等待Flash就绪.Flash就绪后才能继续执行Boot Block代码. 下面我们再来看一下复位电路,复位主要有这样几种电路: 1.阻容复位电路: 低电平复位,利
[单片机]
Cortex系列ARM内核介绍
众所周知,英国的ARM公司是嵌入式 微处理器 世界当中的佼佼者。ARM一直以来都是自己研发微处理器内核架构,然后将这些架构的知识产权授权给各个芯片厂商,精简的CPU架构,高效的处理能力以及成功的商业模式让ARM公司获得了巨大的成功,使他迅速占据了32位嵌入式微处理器的大部分市场份额,甚至现在,ARM芯片在上网本市场的也大有与INTEL的ATOM处理器一较高低的实力。 目前,随着对嵌入式系统的要求越来越高,作为其核心的嵌入式微处理器的综合性能也受到日益严峻的考验,最典型的例子就是伴随3G网络的推广,对手机的本地处理能力要求很高,现在一个高端的智能手机的处理能力几乎可以和几年前的笔记本电脑相当。为了迎合市场的需求,ARM公司也在加紧研发
[单片机]
ARM11-S3C6410 UART
我想串口程序应该是ARM程序中最简单的了吧。尽管如此,做个记录吧 。 具体设置如下: #define ULCON0 (*((volatile unsigned long *)0x7F005000)) #define UCON0 (*((volatile unsigned long *)0x7F005004)) #define UFCON0 (*((volatile unsigned long *)0x7F005008)) #define UMCON0 (*((volatile unsigned long *)0x7F00500C)) #define UTRSTAT0 (*((vola
[单片机]
基于ARM7微处理器的中文液晶显示技术
1 引言
液晶显示屏LCD作为一种功耗低、体积小、无辐射的显示器件,近几年被广泛应用于各式各样的嵌入式电子产品中,LCD可分为段位式、字符式和点阵式三种,其中,段位式LCD和字符式LCD只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求,而点阵式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动动画功能,分区开窗口、反转、闪烁等功能,用途十分广泛,为了简化液晶 显示电路的设计和应用,生产厂家通常将液晶显示单元、显示控制器,显示内存和显示驱动电路等装配在一起,做成液晶显示模块LCD Module(LCM) 。LCM对外提供标准数据和控制接口以及控制指令,本文以ATM1286
[电源管理]