基于FPGA的织机远程监测系统的设计与实现
扫描二维码
随时随地手机看文章
摘 要: 选用FPGA来控制织机监测系统的外围电路,以Altera公司的Cyclone EP1C12Q240作为核心芯片,EPCS4作为系统的配置芯片,在SoPC上集成了软核CPU、锁相环、存储器、I/O接口及可编程逻辑,并在Quartus II和Nios II IDE平台上运行。通过在某纺织厂现场系统调试,实现了对织机的实时监测,达到了预期的目的。
关键词: 织机;监测系统;FPGA;数据采集;SoPC
纺织业是劳动密集程度高、对外依存度较高的产业,它对我国国民经济建设发挥着不可替代的支柱性作用。纺织企业生产车间的特点是多机生产,少则几十台,多则几百台织机,因此,织机监测系统具有不容忽视的意义。本设计针对某纺织厂目前的织机监测现状进行了改进,该厂目前采用单片机控制外围电路,然而单片机的时钟频率较低,很难满足高速数据采集的需求。经分析研究,若选用DSP来控制外围电路,可以实现高速数据采集,但成本颇高。因此,采用FPGA作为主控芯片,应用Nios II处理器控制外围电路,在满足高速数据采集和处理的同时,有利于系统的不断升级。
1 系统总体设计
织机的远程监测主要完成基本功能和辅助功能。基本功能包括织机主要工作状态参数的监测;辅助功能主要由上位机完成,包括友好美观的人机界面、记录每班的生产效率和织机各种状态下的动态变化、能够供管理员或用户随时查询及打印报表。
系统工作过程为:上电后,首先对FPGA的主控模块进行初始化,FPGA的主控模块采集织机的各种状态数据并进行处理。在这一过程中,织机自带的显示屏会即时显示各工艺参数。当上位机向CAN总线发送读取每个节点织机状态参数的命令后,FPGA的主控模块将织机机台号、引纬率、产量及停机时数等主要工作参数写入CAN控制器的发送缓冲区内,启动发送命令传送给上位机进行相应处理。总体系统结构如图1所示。
2 系统硬件设计
FPGA的主控系统实际是一个基于Nios II处理器的SoPC系统,主要完成数据采集工作,包括织机的产量、运转率、引纬率和停机时数等。其硬件平台主要以Altera公司的Cyclone系列EP1C12Q240 FPGA为核心芯片,由系统存储设备SDRAM和Flash、系统时钟、串行配置芯片、I/O口、FPGA配制接口组成等。系统硬件结构如图2所示。其中,Flash存储器采用4 MB的Am291V320D;SDRAM采用HY57V283220T;串行配置芯片采用Altera的EPCS4;具有JTAG接口和AS接口,通过AS接口直接对EPCS4器件进行快速编程;采用有源晶体振荡电路产生50 MHz的系统时钟;电源有5 V、3.3 V和1.5 V。
2.1 外部存储器
2.1.1 Flash电路
在FPGA器件实现的Nios II嵌入式处理器可以使用Flash存储器作为通用只读存储器和大容量非易失性存储器,用户可以将基于Nios II嵌入式处理器的应用程序通过编程器烧写到Flash中,在程序运行前将Flash中的代码复制到其他速度更快的非易失性存储器SDRAM中,然后执行。
本系统选用的Flash是Am291v320,它是1 M×16 bit的CMOS工艺的Flash存储器,采用48脚TSOP封装,其工作电压为3.3 V。Flash存储电路如图3所示,其中10脚、11脚、13脚和24脚均接有4.7 k?赘上拉电阻,因此Am291v320不采用字节方式。
2.1.2 SDRAM接口电路
在SoPC系统实际应用中,由于FPGA片内的RAM容量一般不能满足需要,都需要外接SDRAM。SDRAM成本低、容量大,但需要实现刷新操作、行列管理、不同延时和命令序列等逻辑。SDRAM的操作都是由时钟作为同步,可以理解为一个电容,总是倾向于放电,为了避免数据丢失,必须定时刷新。因此,要在系统中使用SDRAM,就要求微处理器具有刷新控制逻辑,或在系统中另外加入刷新控制逻辑电路。
本系统中选用的SDRAM是HY57V283220T,存储容量为1 M×32 bit×4 Banks,4个Bank间可以通过Bank地址来选择,其工作电压为3.3 V。一个片锁相环常被用于SDRAM控制器核与SDRAM芯片之间的时钟相位调整。SDRAM接口电路如图4所示。
2.2 串行通信接口