单片机的视觉系统.docx
《单片机的视觉系统.docx》由会员分享,可在线阅读,更多相关《单片机的视觉系统.docx(9页珍藏版)》请在冰豆网上搜索。
单片机的视觉系统
单片机的视觉系统
视觉传感器,采用动态内存便宜,比他们更容易选择界面-videcon或CCD。
安德鲁拉塞尔描述了一个基于DRAM的'聪明'的视觉系统中的所有接口和图像处理功能是由一个8751单片机提供。
本文介绍了一种二元结构紧凑,价格低廉的视觉系统中的所有接口和数据处理功能是由英特尔的8751单片机进行。
视觉传感器是一个64千位动态随机存储器芯片,提供一个图片的分辨率高达256×128像素的能力。
图像处理算法,实现在视觉系统和对象统计信息是通过串行接口传输到主机。
由此产生的制度实施后仅使用四种突出的集成电路和组件鉴定和柔性制造系统环境检查合适。
微机系统计算机视觉DRAM的光学传感器8751
计算机视觉系统正被用于越来越多的工业为各种检查,零件辨识和控制任务。
动态随机存取存储器(DRAM)的电路已发展为这些应用1'2二元光学传感器。
基于DRAM的视觉系统是非常低的成本,并与数字电子产品直接兼容。
这些优势是不同意的替代类型系统可供'videcon'或CCD(电荷耦合器件)的视觉传感器-这原本是相对昂贵的电视显示器与兼容性而设计的,因此不提供输出,可容易访问一台计算机。
对于许多检查和鉴定任务的videcon或更高分辨率的CCD传感器不是必需的,在这种应用中基于DRAM的系统可以是一个更具成本效益的解决方案。
本文介绍了一个'智能'视觉传感器中的所有接口和图像处理功能是由英特尔的8751单片机进行。
8751包含了一个完整的8位微处理器以及EPROM中,内存,两个定时器,全双工的I/O端口和并行I/O线。
在8751到这些资源用于:
•直接控制的DRAM光学传感器,IS32OpticRAM美光科技公司制造的。
•在DRAM上执行数据的地址,解扰和插值功能。
•无论是传送的图像压缩格式中的一个主机或执行图像处理算法和传输所产生的统计数字,一台主机电脑。
在8751为基础的视觉系统实现只包含四个包括OpticRAM集成电路。
该接口由类似DRAM的视觉系统所需的电子产品大量被淘汰。
此外,一个真正的'智能'传感器,纳入创建范围内的8751视觉处理功能。
作为一种视觉传感器的DRAM
一个DRAM的存储在一个存储单元阵列的信息,每个组成一个电容和晶体管4。
图1显示了存储单元的布局。
数据读取或写入以下操作,一个存储单元。
•一个8位的行地址是建立在DRAM的地址线。
图1DRAM的单晶体管存储单元
•行地址选通脉冲(RAS)是断言,导致行地址译码器,选择256行的线路之一。
256晶体管Q连接到选定的排线是'打开'和转移相关的电容C充电到一列线。
•收费由存储单元的是再生放大,列线送入回重新建立原始电量的电容器。
•一个8位的列地址,提出对DRAM的地址线。
•列地址频闪(CAS)是断言,发起之一256列感放大器甄选并指挥其输出到OUT(DOUT端)的DRAM引脚数据。
如果一个内存写操作所需的第(DIN)的引脚上的数据资料将被路由到,选定检测放大器,从而相应的存储单元。
对存储单元的充电电容往往泄漏了。
如果数据要保留的收费,必须意识到面前有腐烂完全消失,并恢复到原来的水平。
存储单元的充电操作恢复被称为'刷新'和发生在一读或写周期是在同一行的单元格进行。
如果光线事件对他们的电容器电荷衰减率增加。
因此,如果所有的电容充电,适当长度的tinqe之前经过允许读取内存会被发现,某些位已损坏的细胞。
那些被损坏的位将来自遭受了比那些没有损坏照明上级电容器。
如果存储单元的物理布局可以决定将有可能找到了电路的领域的光强度超过某一临界值,从而产生一个事件照明二进制图像。
在65536IS32集成电路存储器单元被分为两个区域之间的一个包含检测放大器领域。
对于大多数应用的大视野中的差距将是不能接受的,因此只有细胞的两组被使用。
摄像系统
光学传感器的DRAM接口可直接连接到处理器的地址总线或间接与一名微机通过一个I/O端口5。
通过I/O端口连接慢,需要更复杂的控制方案。
这些缺点是平衡的,在电路的复杂性大大减少。
这个项目的目的是要制作一个简单,廉价的视觉系统,因此该DRAM通过I/O口相连。
一个摄像机的系统原理图如图2所示。
八OpticRAM地址线控制的8751端口1。
五额外的I/O线需要从端口3,为德国DIN标准,RAS的,中科院,宽信号并读取数据从DOUT线。
因而对IS32的所有功能,可以通过端口1和3的8751控制软件。
接到指令和数据传输通过异步串行接口与主机电脑。
接收数据线RXD和TXD的是数据线传输接口由线路接收器和线路驱动器芯片的RS232电平。
此外,四个从端口2线用于读取的DIL开关,设置波特率,奇偶校验,停止位的串行通信。
图2计算机视觉系统
该电路显示了英特尔8751能力,实现了额外的元件数量最少,复杂的控制功能。
软件控制IS32
内存刷新
这个过程恢复记忆细胞电容器充电水平,并仅在图像采集停下来使存储单元对光敏感。
定时的刷新操作控制由8751的内部16位计数器。
计数器0被编程来产生一个中断每1.3毫秒。
定时器中断服务程序执行一个用来形成图像的128行的RAS只刷新周期。
服务程序,然后重新启动定时器,并执行中断返回。
一个可用的处理时间大部份是由刷新操作和本方案的一部分,因此编码效率的使用是必不可少的。
它执行程序循环周期刷新:
LOOP:
CLRRAS
SETBRAS
DECP1
DJNZP1,LOOP
每个8751的I/O端口位寻址使用一套功能强大的布尔指令。
CLR和SETB指令提供一个低向脉冲连接到RAS输出线。
这两个指令都执行一个指令周期时间。
其他布尔指令可提供进一步的逻辑和测试能力。
算术和逻辑操作可以在写入到一个I/O端口的最后一个值。
无论是DEC和DJNZ指令的操作直接存储在I/O端口递减2行地址数据。
在正在使用的IS32一半甚至存储单元都行地址。
DJNZ指令的附加功能是控制该方案的循环迭代的次数。
一个分支回到循环发生如果递减的结果是非零。
整个刷新操作需要约0.7毫秒占总数的35%,计算机的处理时间。
获取的图像
需要编写录制的图像是对存储单元,然后停止一段时间量测刷新过程,允许超过某一临界值履行照明存储单元。
事件的顺序是:
(1)写入1的存储单元
(2)抑制中断
(3)执行计时循环来衡量所需的曝光时间
(4)重新允许中断
现在的存储单元包含一个图像的入射光的二进制表示。
阅读和写作
子程序被写入8751之间传送数据和OpticRAM。
这些子程序控制8751端口输出1和3执行读取和写入周期DRAM的周期。
再次布尔位设置和使用,除了明确的指示,在那些多个输出线需要改变状态,同时案件。
在这种情况下,更快地写一个字节的数据到I/O端口。
解扰和图像插值
在IS32是T426464千位的DRAM发展。
对于这个表面上的硅芯片存储单元的原因定位大概是受便捷,高效的布局考虑。
存储单元的位置不物理上在同一个芯片上,他们是为了解决电。
为了克服这是一个查找表是用来转换成电能的地址物理地址的问题。
8751提供了一个移动的固定(MOVC指令)指令,允许索引到程序使用的是程序计数器或16位数据指针寄存器(DPTR的)为'基地'值的内存寻址。
因此,要成为一个行地址有一个相应的地址等于ROW-TABLE以下说明使用的表索引:
MOVDPTR,#ROW-TABLE
MOVCA,@A+DPTR
累加器A包含物理地址所需的DRAM行指令执行之前。
MOV指令载入DPTR的与该行表的基地址。
MOVC指令导致必须与该程序的存储位置的地址等于DPTR的内容添加到A的旧内容的内容装入。
之间的物理和电气的存储单元地址的书信中给出的IS32数据表6。
图3显示了DRAM的细胞是在芯片上的位置。
对以行和列方向相同分离感光元件规则排列是必需的。
为了达到这一要求的像素图3圈被选定。
然而,圈一半的不配合一个存储单元。
在这种情况下,多数的‘投票’的三个相邻的存储单元是用来确定的像素值。
例如,在缺席的像素点的X值在图3是要采取多数表决的像素(R2,C1),(R2,C2)和(R4,C1)的。
这种寻址计划的实施是在8751并给出了一个形象有64行和256行和列大致相等间距列。
这将有可能延长插方法,填补了在存储单元阵列中的所有空白,从而提供了128×512像素的图像。
处理的图像数据
视觉系统必须能够完整的图像传输到主机电脑。
该功能允许将图像显示出来,以帮助运营商作出相机镜头焦距和方向的调整。
主机电脑可能也适用于更复杂的图像处理技术,或提供的图像存储手段。
两个图像传输功能已得到执行。
第一个传输为8位部分的图像与英国广播公司微机的图形显示兼容。
图3物理位置的存储单元
另一种方法,更紧凑的一个完整的图像传输方法采用游程编码。
这涉及到计算的,其中有连续的像素数相同的颜色(黑色或白色)的累计数和发送时的颜色发生变化。
运行长度编码是一种传送有黑人和白人之间的二进制数转换图片非常有效的方法。
为了提供目标定位和识别能力,图像处理算法已在8751执行。
统计数据积累,允许一台主机电脑来计算面积,周长,面积的中心和图像中出现的一个对象的轴转动惯量的最低时刻。
二元影像处理系统采用这一构想的详细信息显示技术在参考资料7和8,一个简短的提纲是这里。
是确保一个对象明确的轮廓图像简单的方法是提供强有力的背面照明系统,产生弥漫在白色背景的黑色物体的图像。
视觉系统获取对象的一个形象如前所述,然后执行以下操作。
首先扫描图片是由一行行,开始于左上角的角落,直到发现第一个黑色像素。
这个像素的位置记录为(I0,J0)和统计数字,I和J初始化为
I=I0-0.5
J=J0-0.5
然后程序步骤轮顺时针方向对象的边界。
每个步骤后统计数字,I,J和P1-P3的更新如下。
•如果步骤是向右
I=I+1
P3=P3-J²
•如果步骤是向上
J=J-1
PI=P1-I
P2=P2-I²
•如果步骤是向左
I=I-1
P3=P3+J²
•如果步骤是向下
J=J+1
P1=P1+I
P2=P2+I²
对所采取的步骤数目的纪录保持为对象提供一个周长的估计。
这个过程反复进行,直到所有的方案已加强反过来对象的边界。
扫描和加强操作如图4所示。
累计统计数据,然后传输到主机电脑,他们可以被用来计算参数:
面积=P1
I协调中心的面积=P2/2*P1
J协调中心的面积=P3/2*P1
图4寻找和跟踪对象的轮廓剪影
为了简洁起见,计算P4-P7和最低的惯性轴矩方程已被省略。
这些方程和图像处理技术的其他详情载于参考文献7和8。
在8751包含一个全双工异步串行接口。
使用11MHz的系统时钟的界面运行在一个9600波特率最高(更快,如果非标准波特率可容纳)。
在初始化过程中,这需要一个系统复位后的地方,四个开关读通过端口2。
这些开关用于设置波特率,奇偶校验,停止位的串行接口。
实验结果
那么定义的二进制图像视觉系统记录并转移到BBC的微型计算机用来显示。
图5显示了一个例子形象。
使用9600波特率串行传输速度,图像传输需要为64小于3.5的X256形象。
此外,该系统在3秒内可以计算和传输包含一个图片对象的对象统计。
结论
本文描述了一种视觉系统,它使用二进制作为视觉传感器的DRAM。
DRAM的控制,对图像和与主机电脑通讯处理是由英特尔8751微电脑执行的所有功能。
由此产生的制度实施后只用四个集成电路。
对于许多应用,整个电路可安装在摄像头上,从而产生一个真正的‘智能’传感器,仅需要4个连接线提供电源和串行通信链路。
图5一些小的电子元器件形象
鸣谢
据此期间的工作得到了卧龙岗大学研究资助委员会的资助授予03/103/401,“自动化的批量组装”。
参考文献
ICiarcia,S'BuildtheMicroD-Camsolid-statevideocamera.Part1:
theopticRAMandtheMicroD-Camhardware'ByteVol8No9(September1983)
2Ciarcia,S'BuildtheMicroD-Camsolid-statevideocamera.Part2:
computerinterfacesandcontrolsoftware'ByteVol8No10(October1983)
3MCS-51familyofsingle-chipmicrocomputeruser'smanualIntel,SantaClara,CA,USA(July1981)
4Memorydatabookanddesigner'sguideMostek(June1980)
5Russell,RA'Computervisionsystemforapplicationsinroboticseducation'MicroprocessorsMicrosyst.Vol7No7(September1983)
6IS32OpticRAMdatasheetMicronTechnology
7Cunningham,R'Segmentingbinaryimages'RoboticsAgeVol3No4(July/August1981)
8Wilt,JM'Chain-code'RoboticsAgeVol3No2(March/April1981)
安德鲁罗素1972年和1976年获得了他的学士和博士学位,分别来自英国利物浦大学。
他目前是在卧龙岗大学,澳大利亚系电气和计算机工程系讲师。
他的研究兴趣包括在机器人技术,超大规模集成电路设计和替代能源的感觉反馈的应用。