bit的控制寄存器A和B。如图3所示,寄存器A的
字。
2.2 时钟模块
2.3 双口RAM模块
2.4 A/D采样控制模块
2.1 通道和采样率选择模块
和采样率设置上应该具有可选择性。
通道和采样率选择模块提供2个8
自带的参数化模型库(Mega-lpm)实现的。
PLL时钟资源驱动设计的主时钟,使其达到最低的时钟抖动和延迟。
对时钟的周期、占空比、延时、抖动提出了较高的要求,为此本设计中采用FPGA所带的
FS0~FS7。如果要选择某几个通道,只需将寄存器A中相应的位置1,其他位置0,AD采
个模块提供所需的时钟信号。由于该设计采用同步时序电路,它是基于时钟触发沿设计,
采样率的变化,所以需要多种不同的时钟信号。时钟模块的功能就是根据不同采样率为各
样控制模块就会根据该寄存器中的内容使能相应的通道。如果要选择某一个采样频率,只
本设计中双口RAM用于数据缓存,一方面存储各个AD芯片转换的数据,另一方面供
两个端口具有的控制线、地址线和数据线。该双口RAM模块是通过调用Altera FPGA
本设计中外部输入时钟为16.384 MHz。由于设计中各个模块工作时钟的不同以及AD
0~4 bit分别对应ADC通道CH0~CH4,5~7 bit保留;寄存器B的8 bit分别对应采样率
在开启数据采集之前,ARM应根据所要求的通道和采样频率向寄存器A和B写入相应命令
在实际应用中并不是每个通道都被使用,AD的采样率也不只一种,所以在通道的控制
需把寄存器B中相应的位置1,其他位置0,时钟模块会产生相应的时钟控制AD的采样率。
ARM读取数据做进一步的存储与处理。它具有真正的双端口,可以同时对其进行数据存取,
在该状态。
下一个触发脉冲的到来。
状态机的各个状态描述如下:
(3)conv_start:启动A/D转换。
(1)conv_init:状态机的初始状态。
据采集启动信号START为高电平时,状态机启动。
(2)mode_set:设置ADS1255内部的控制寄存器。
作如下:首先设置ADS1255的参数配置,读数据模,然后启动转换,通过查询ADS1255
的DRDY信号判断是否转换完成,转换结束后将数据按bit顺序读出。同时将数据输出给
这一控制过程通过状态机实现。图4给出了该A/D转换控制模块的状态转换图。当数
(4)conv_wait:等待A/D转换结束。如果转换结束则进入下一状态,否则将继续保持
串并转换模块,完成一次A/D转换操作。采样控制模块每完成一次采样操作,则停止等待
A/D采样控制模块的主要任务就是根据ADS1255的转换时序图,在其芯片的引脚发出
相应的时序控制信号,使ADS1255完成启动、配置和数据读取等操作。ADS1255的控制操
态。
conv_start状态。
2.5 串并转换模块
2.6 数据存储控制模块
2.7 ARM接口控制模块
发重新开始新的一次采样任务,状态机复位到conv_init状态。
的数据时,接口模块对ARM的访问地址进行译码,选中对应的存储空间取出数据。
口RAM的写控制信号。图5是一个五通道数据存储的仿真示意图。输入数据值分别为
输出。该模块主要采用移位寄存器来实现,其移位控制信号由AD采样控制模块提供。
(7)conv_next:判断是否需要继续转换数据。如果没有就进入下一状态,否则返回
(8)cony_end:表示本次采样任务结束。状态机保持在该状态,直到采样启动脉冲触
换。该模块输入为5路采样数据reg24Data_0~4,dataF为输出的字节数据,wrenF为双
0x030201、0x060504、0x090807、0x121110、0x151413,输出字节数据为01~15,同
(6)read_next:判断数据是否读完。如果没有返回conv_read状态,否则进入下一状
且还详细介绍了FPGA逻辑的设计方法。FPGA逻辑通过硬件描述语言Verilog实现,已应
参数信息时,接口模块要将该信息通知通道和采样率选择模块;当ARM读取双口RAM中
由于ADS1255是以串行输出转换结果的,故需要该模块将串行输出的数据转换为井行
该模块为ARM与FPGA及其双口RAM交互提供桥梁。当ARM向控制寄存器写入采集
字节的次序,一个一个字节将其写入双口RAM中,实际上相当于一个字节意义上的并串转
该模块的作用是将5通道24 bit经过串并转换的采样数据按通道顺序,以从低字节到高
(5)conv_read:A/D转换结束后读出每个bit信息,同时使能移位寄存器进行串并转换。
本文采用FPGA和ARM结合设计,很好地完成了多通道高精度的数据采集与处理,并
时使能写RAM,满足设计要求。
步增强了系统应用的灵活性。
1 温度采集系统硬件设计
说明工作原理和流程图。为了实现精确控温,应该采取哪些技术途径?
由于不同的传感器有不同的输出量,但是最终都需要转换为0~10V的电压值,从而
采用手动拨码盘方式进行温度控制。核心器件为FPGA。请设计出该系统的结构框架图,
据库进行改进和更新,能使系统的性能得到升级。从而可以使系统满足不同的场合需要。
进行处理,它的程序能够在线修改,因此有极强的可塑性。可以适时的对其程序及查表数
多测量方式及测量范围的场合。再者它们的测量程序和查表数据库已经固定,对于一些有
量方式单一、测量范围固定、传感方式也只能适应一定的场合。因此不能很好的适用一些
目前市场中大多数温度采集卡的测量范围、测量方式及测量精度在出厂时就已经固定。测
在调研资料的基础上,设计一个烘干箱中使用的电子温度控制系统,设系统采用电阻丝方
用到磁数据采集系统中。本方案设计灵活,能很容易地扩展为更多路的数据采集,也能很
特殊要求的场合不能适用。本系统采用现场可编程门阵列(FPGAEP1K30QC208-3)对数据
容易地修改为与其他的A/D转换芯片接口。所以该方案可根据不同的应用进行扩展,进一
才能满足A/D转换器的转换要求。因此各个传感器需要不同的转换和放大电路。转换后的
电压量经过多路模拟开关选择送到同一个A/D转换器进行转换。再经FPGA进行数据处理
式进行加热,采用热电偶测量温度,最高温度为300℃。采用七段LED共阴模块显示温度,
及显示输出。整机框图如图1所示。
1.1 PN结测温原理
1.3 热电偶测温原理硬件电路
1.2 PT100热电阻测温原理硬件电路
号放大到0~10 V范围送A/D转换电路。电路图略。
并且它的输出也要转换为0~10 V的范围送A/D转换电路。电路图如图3所示:
桥。并且将输出电压放大到0~10 V范围送A/D转换电路。电路原理图如图(2)所示:
此必须将热电阻接成单臂直流电桥,将其阻值变化转换为电压变化信号。再将这个电压信
由于PT100热电阻随温度变化产生的是一个电阻信号,当温度升高时电阻值增大。因
降下降1 mV。但在0℃时要求输出电压为0 V,因此必须将PN结连接成单臂非平衡直流电
由于 PN结随温度变化产生的是一个电压信号,温度每升高1℃,PN结的正向导通压
热电偶的输出是一个随温度变化的电压信号,它必须加上冷端补偿电路才能正常工作,
度的显示输出。
2.1 单片机控制
量方式)。P2口接输出模拟开关控制字、存储器片选信号及FPGA程序切换控制信号。程
2 温度采集系统软件设计
(表示输出测量方式代码,1代表PN结测量方式,2代表热电偶测量方式,3代表热电阻测
编写,实现对外围电路的控制。FPGA采用VHDL语言编写,实现对数据的处理及被测温
单片机用来控制多路模拟开关及FPGA,并显示是那种方式测量。P1口接一位数码管
温度采集系统软件分为单片机程序设计和FPGA程序设计,单片机程序采用汇编语言
序流程图如图4所示。
只是分度表不同而已。
2.2 FPGA数据处理
2.2.1 PN结数据处理
行比较计算,最终得出其温度值。程序流程图如图5所示。
导通压降减小1 mV),对数据进行计算,从而得出对应的温度值。
FPGA对数据的处理是根据不同的测量方式进行数据处理的。当选择PN结测量方式
进行比较计算,最终得出其温度值。可见热电偶或热电阻测量方式的数据处理是相同的,
PN结测量方式,FPGA根据PN结的温度电压变化函数(温度每升高1℃,PN结正向
时,FPGA根据PN结的温度电压变化函数,对数据进行计算,从而得出对应的温度值;当
热电偶或热电阻测量方式,FPGA是依次查找对应分度表的数据与A/D转换的数据进
选择热电偶或热电阻测量方式时,FPGA是依次查找对应分度表的数据与A/D转换的数据
2.2.2 热电偶、热电阻数据处理
了显示清零的现象,最后查出是AD转换数据没有锁存住。采用软件锁存的办法使得该问
3 温度采集系统安装调试
干扰能力,稳定电压放大倍数。后来采用两级放大,第一级采用低放大倍数的差放电路,
开始时用了一级的电压放大,出现了抗干扰能力差、放大倍数不稳定等问题。为了提高抗
搭试其冷端补偿电路时,它的桥路电阻参数很难确定。因为不同型号的热电偶其各桥臂电
安装调试是一个系统最关键也是最容易出现问题的一步,本系统安装调试中遇到的一
消除共模干扰。第二级再采用电压放大就很好的实现无干扰稳定放大。(3)软件调试中出现
阻及限流电阻也会不同,在多次调整各个参数后才确定了其各桥臂参数。(2)各放大电路在
些问题及给出最后处理方法如下:(1)热电偶的工作必须有冷端补偿电路才能正常工作,在
题得到了解决。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务