基于fpga与usb接口验光仪控制系统设计和实现

基于fpga与usb接口验光仪控制系统设计和实现

ID:6073471

大小:29.50 KB

页数:7页

时间:2018-01-02

基于fpga与usb接口验光仪控制系统设计和实现_第1页
基于fpga与usb接口验光仪控制系统设计和实现_第2页
基于fpga与usb接口验光仪控制系统设计和实现_第3页
基于fpga与usb接口验光仪控制系统设计和实现_第4页
基于fpga与usb接口验光仪控制系统设计和实现_第5页
资源描述:

《基于fpga与usb接口验光仪控制系统设计和实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于FPGA与USB接口验光仪控制系统设计和实现  【摘要】近年来,近视眼的人数逐步增长,为了更加精确的了解近视患者近视程度,为近视者开出合理的配镜处方,验光仪器成为了配置眼镜过程中必不可少的设备。全自动电脑验光的接口设计是在原先验光仪的基础进行了改进,设计了基于FPGA的全自动电脑控制系统,并采用了先进的USB技术连接设备与电脑,提高了数据传输速率,增加了定位精度,并且缩短了验光过程的时间。【关键词】电脑验光仪;FPGA;USB接口;控制系统1.引言近些年来,近视已经严重影响了人们的健康。为了准确的了解近视患者

2、眼睛的近视程度,为近视者配出更加合适的眼镜,验光仪器成为了眼镜零售行业必不可少的设备。目前市场上主流电脑验光仪并不能完全实现验光过程的自动化,问题主要表现在以下三个方面:①定位速度慢;②定位精度差;③自动化水平低[2]。7为了解决以上问题,本设计对原有的电脑验光仪进行了改进,采用运行速率快,稳定性高的FPGA控制步进电机驱动芯片,实现了验光仪的三轴联动;运用行程开关实现了极点间的自动往返。为了保护电路安全,设计了板间的光电隔离电路;并且采用先进的USB技术使电脑和设备进行通信,增加了数据的传输率,提高了设备的可控

3、性[3]。2.系统硬件整体设计控制系统是验光仪的控制核心,它不但要实现对多轴步进电机的运动和光源控制,还要实现与上位机信息的交互和其他重要功能。验光仪的主控制板的设计由EP3C16Q240C8最小系统扩展而成,根据FPGA功能实现及相关外设扩展对插针接口进行适当更改,并添加了USB通信接口、步进电机驱动模块和行程开关信号输入端的光电隔离电路。验光仪控制系统的主控制板硬件电路设计框图如图1所示。主控制板中FPGA使用的是Altera公司生产的CyloneIII系列芯片EP3C16Q240C8N,该芯片拥有15,40

4、8个逻辑单元;可以提供516,096字节的RAM;另外芯片内部还自带有4个锁相环,可以保证系统时钟信号在高速运行时的稳定性。步进电机驱动芯片选择使用Allergo公司生产两相步进电机专用驱动芯片SLA7042M,它能够实现超平滑低速驱动。为了实现主芯片和外部设备通信,控制板需要将3.3V和5V的电平相互转换,系统使用TI公司生产的16位3.3V-5V电平转换芯片SN74ALVC164245。USB接口控制芯片采用PDIUSBD12,它集成了SIEFIFO存储器、收发器以及电压调整期,适用于许多的外部设备。3.Ve

5、rilog硬件功能实现7VerilogHDL是一种硬件描述语言,主要用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模[4]。FPGA芯片是验光仪主控制板的核心部件,本设计中使用VerilogHDL在FPGA上实现下位机与上位机的信息交互、多轴联动步进电机运动平台的控制、对光源的控制等功能,FPGA内部功能模块如图2所示。1)USB接口控制模块:FPGA内部USB固件程序,实现FPGA与上位机USB接口通信。2)时钟模块:对外部的16MHz时钟进行分频、倍频处理,产生FPGA工作所需各种频率的时钟信号。3

6、)指令分析模块:分析收到的上位机指令,根据规定的指令协议,产生执行命令并将执行指令发送到各个执行模块。4)步进电机控制模块:执行FPGA送达的三轴步进电机控制指令,对各轴的电机进行细分、变速控制,最终通过给步进电机专用驱动芯片发送不同的命令实现电机的三轴联动。5)光源控制模块:控制光学系统的5个LED红外光源和3个视觉辅助光源3个视觉辅助光源引导人眼注视方向,5个LED红外光源辅助系统的对焦功能。4.上位机应用程序及驱动程序的实现7本电脑验光仪控制系统上位机软件主要负责完成视频图像采集和处理的功能,在预处理的基础

7、上完成形态学的处理、目标识别和光斑参数计算输出等一系列指令,并将指令通过USB接口传输给下位机。由于该设备不是一个类设备,说以要使设备正常工作,还需要编写专门的驱动程序和软件。4.1驱动程序的编写驱动程序的编写使用一些驱动开发的专用工具,例如DriverStudio、WinDriver等。DriverStudio3.2进行开发,开发步骤这里就不一一列举,应该注意的是要在USBVendorID和USBProductID中输入和固件中设备描述一致的信息。由于选用的是Philips的PDIUSBD12芯片,所以设备的V

8、endorID固定为0x0471。使用DriverStudio的DriverWizard生成驱动框架后,可以根据需要使用VisualC++6.0对DriverWizard生成的工程文件中的函数进行修改,还有就是对自定义的IO控制接口函数进行处理和厂商请求的编写。完成这些后,就可以对驱动程序进行编译了,成功编译驱动程序后,将它和DriverStudio自动生成的.inf文件

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。