新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于ARM9的便携式内窥镜系统设计与实现

基于ARM9的便携式内窥镜系统设计与实现

作者:时间:2011-05-26来源:网络收藏

1921年,以色列人George S.Crampton在美国加利福尼亚研制出世界上第一台工业内窥镜,用来检测蒸汽涡轮转子的内部裂缝。从此,内窥技术逐渐被工业界所重视,并得到不断发展。1990年以来,工业内窥镜经历了第一代硬杆式、第二代软管式和第三代电子镜式的逐步发展过程,内窥技术也逐步发展成为一门崭新的科学技术,成为远距离可视监测RVI(Remote Visual Inspection)技术。

目前,工业内窥镜广泛应用于工业制造和维修领域。它延长了人眼的距离,拓宽了人类观察的视野,可以在不拆除或不破坏机器设备的前提下清晰准确地观察内部人眼无法到达的位置,实现机器设备或零件内部的无损检测,尽可能节省维修时间,这在武器装备外场检修应用中相当重要。为了实现内窥镜系统的小型化和便携性,本文设计实现了一种基于的便携式內窥镜系统。
1 ARM嵌入式系统及其摄像头接口

嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。通常由嵌入式CPU、外围硬件设备、嵌入式操作系统及应用程序四部分组成,用于实现对其他设备的控制、监视或管理等功能。该系统是将先进的计算机技术、半导体技术和电子技术结合后应用到各个具体行业的产物。IP 级、芯片级和模块级是嵌入式系统的三种主要的体系结构形式。其中,模块级的形式就是把已成熟的X86处理器构成的计算机系统模块嵌入到应用系统中, 充分利用目前常用的PC架构的通用性和便利性。

SAMSUNG S3C2440嵌入式微处理器的内核采用ARM公司的20T处理器核。它是目前世界上主频最快的嵌入式移动CPU之一,内核电压为1.3V,采用16/32位20T RISC核心,提供的接口支持数码摄像头、TFT/STN液晶屏、USB、HOST/DEVICE、SD/MMC/SDIO存储卡以及触摸屏等。

S3C2440嵌入式微处理器的摄像头接口(CAMIF)支持ITU-RBT.601/656 YCbCr8比特标准的图像数据输入,最大可采样4 096×4 096像素的图像。摄像头接口可以有两种模式与DMA控制器进行数据传输:一种是P端口模式,把从摄像头接口采样到的图像数据转为RGB数据,并在DMA控制下传输到SDRAM(一般这种模式用来提供图像预览功能);另一种是C端口模式,把图像数据按照YCbCr4:2:0或4:2:2的格式传输到SDRAM(这种模式主要为MPEG4、H.263等编码器提供图像数据的输入)。上述两种工作模式都允许设置一个剪辑窗口,只有进入这个窗口的图像数据才能够传输到SDRAM。摄像头工作模块如图1所示。

基于ARM9的便携式内窥镜系统设计与实现


2 基于ARM9的系统设计
2.1 总体框架设计
  工业内窥镜系统主要包括CMOS(CCD)传感器、传导纤维、导光束、光源、电源和监视器等,结构如图2所示。由于监视器和冷光源体积及其对电源的要求导致了整个系统体积大、不便携带,且不能将图像按要求保存,不便于后期缺陷信号处理。基于ARM9的系统在工业内窥镜检测系统的基础上,引入嵌入式系统,充分发挥嵌入式系统体积小、输入电压低、触摸屏显示、利用编程可以实现图像处理和存储的优点,很好地满足了检测系统对微型化、易携带的要求。其结构如图3所示。

基于ARM9的便携式内窥镜系统设计与实现


2.2 系统组成
  该系统装置分为照明系统、CMOS 摄像头、嵌入式系统三部分。所设计的传感器探头结构如图4所示。

基于ARM9的便携式内窥镜系统设计与实现


2.2.1 照明系统
  一般内窥镜均采用独立冷光源,并由光纤把光线传至检查位置上。为达到较好的照明效果,对光源和光纤的要求都很高。由于基于ARM9嵌入式系统及对体积的要求,不能再按照以前采用独立冷光源。在便携式内窥镜系统设计过程中,巧妙应用一种功率较低的高亮度发光二极管(LED)进行照明,以解决光源问题。该高亮度发光二极管工作电压3.3V,光色白色,亮度很强,与电位器相连,实现亮度可调,端部上下各固定一只,保证视场内光照均匀。试验证明完全可行。
2.2.2 CMOS摄像头
  便携式内窥镜系统所采用的摄像头为OmniVision公司生产的OV7660。该类型CMOS sensor目前广泛应用于便携式手持设备。其特点是:灵敏度高,低电压工作,标准串行摄像头控制总线(SCCB)控制,可输出窗口尺寸可调的UXGA/SVGA/VGA/QVGA等不同像素的图像、且图像格式可以是原始RGB/RGB(4:2:2)/YUV(4:2:2)/YCbCr(4:2:2),图像处理可编程等。
  嵌入式开发没有通用的驱动程序。具体针对OV7660,需要进行相应驱动设计。对摄像头进行驱动程序设计,除了实现设备的注册注销外, 按照功能还应分为实现摄像头打开模块、摄像头控制模块(初始化在该模块中实现)和摄像头关闭模块。在WinCE系统启动的过程中即调用摄像头驱动程序,实现摄像头与2440摄像头接口参数设置及一系列初始化。下面就驱动的各个模块做具体介绍。
  (1)摄像头打开模块
  在应用程序中,通过调用CreateFile()打开CIS1口。
  hCam=CreateFile(TEXT(“CIS1:”),GENERIC_WRITE |
  GENERIC_READ,0,NULL,OPEN_EXISTING,0,NULL);
  if(hCam==INVALID_HANDLE_VALUE)
  {
  AfxMessageBox(L”无法打开!”);
  }
  else
  {
  AfxMessageBox(L”摄像头已打开!”);
  }


上一页 1 2 下一页

关键词: ARM9 便携式内窥镜

评论


相关推荐

技术专区

关闭