1摘要1.模拟信号的处理采用都是数字信号处理方式,AD;2.非线性;3.对非线性的数模转换提出了要求。在日常的小型工业现场设计和控制过程中,温度,压力,流量,电压和电流等模拟信号成为主要的被控参数,而这些参数大都具有非线性的特征;对现场这些需要控制的参数一般采用单片机构成的最小数据采集和处理系统对其进行采集和处理,以满足工业控制的要求。本论文结合经典的最小数据采集和处理系统,在此基础上,前向通道上仍旧使用模拟多路开关,A/D0809,80c51单片机对数据的采集和初步的数字化处理。论文中重点在后向通道的改进和设计上:通过采用软件拟合的方法将非线性信号转换为线性电信号,在不占用硬件资源的情况下,较好的完成数字信号到模拟信号的关系转换。利用单片机的编程过程及后向放大电路实现对数据的拟合及放大使其最大程度的满足信号的平滑性和通用性。本论文重点在于后向通道的非线性数据的拟合过程和编程实现信号的拟合过程,实现控制信号的通用性和平滑性,完成本次的设计目的。关键词:单片机;数模转换器;非线性拟合;信号处理2目录1引言··························································41.1问题提出····················································41.2解决方案···················································51.3整体安排····················································62硬件系统电路设计··············································72.1系统硬件的总体设计·········································72.2系统硬件电路组成···········································83非线性理论···················································133.1非线性理论介绍············································133.2数据拟合方法··············································134软件系统设计·················································144.1单片机软件设计············································154.2软件预处理················································164.3程序命令··················································175总结·························································22参考文献·······················································23附录·························································243第一章引言1.1问题研究提出经典的基于单片机的数据采集和处理系统被广泛应用于现代工业生产现场,以及各种小型设备前向通道中的数据采集过程之中,该系统往往是对现场的温度、湿度、光照强度、电压和电流进行采集和控制,利用模拟多路开关和单片机以及一些外围的放大滤波电路进行参数的控制和处理。在此过程中,单片机起在核心部件作用,连接模拟信号和数字信号,使整个处理过程既简单又高效,同时功率消耗不大,环境适应能力强,体积小,抗干扰能力强等诸多优点。在经典的采集系统中,单片机内部集成了数据的存储,数模转换,及程序设计和处理的过程。这次论文研究的重点就在于第一单片机中集成的数模功能的应用上,众所周知,数模转换原理,简单的说就是把单片机处理的数字信号转换成可以供机器使用的电压或者电流信号。现在简述下数模转换的原理:数模转换器是将输入的每一位二进制代码按其权值大小转换成相应的模拟量,然后将代表各位的模拟量相加,则所得的总模拟量与数字量成正比,这样便实现了从数字量到模拟量的转换;(1.1)(1.2)数模转换器主要电路形式为权电阻网络和到T型电阻网络,实现数字量到模拟量的转化。在转化过程中,数模转换器有本身的分辨率,其值的计算4方法为:(1.3)分辨率越高转换时对输入量的微小变化的反应越灵敏,输入的数字量越高转换精度越高。问题就在于当输入位数越高时,伴随而来的转换时间变慢,要求的数据存储就会增大,同时转换精度受温度的影响;当输入的位数比较小时就会导致模拟量变化幅度大,控制精度不高,波动影响严重。第二方面由于不同的工业现场信号强度不同,同时对于不同的控制参数其信号曲线也不尽相同。因此,不同的控制参数和不同的控制场合都需要改变对应的驱动电压。要使我们的驱动电路能工作于任何一个控制现场或者适应不同的控制信号,所以就必须在数据进入电路之前进行加工处理,将电路不可用的非线性信号转变为电路可用的线性电信号。1.2解决方案本次可编程的非线性数模转换器就是介绍一种软件预处理办法,实现一种主要由单片机构成的将数字量转变成为一种易于控制,通用的模拟量。其思想过程主要是借助数学中的一次计数直接拟合法,通过编程实现数据的线性拟合,经过MATLAB仿真,和放大电路的来增强信号的通用性,在此介绍下驱动电路的设计思想。图1.2软件预处理设计:5图1.2软件预处理设计软件预处理单元的设计如图1.2所示。首先,它根据不同的控制参数,构造出其不同的曲线。继而计算相应的偏置电压值,这些值就是驱动电路所要使用的驱动电压。软件预处理单元根据所求的偏置电压值,对数据进行处理,计算出驱动电路要产生这些偏置电压所需的二进制数据。1.3论文整体安排第一章节,主要说明问题的提出过程,与自己的解决方案,并且对设计做一个预期的设想结果。第二章节,主要说明硬件电路的总体实际方案,和各个部件的连接图,并且绘制系统总原理图。第三章节,主要说明线性拟合的过程和原理。第四章节,介绍系统硬件原理图中,各个部分的软件实现过程和部分软件设计说明。重构控制参数曲线曲线根据分辨率计算偏置电压驱动电路数据处理数据存储WTWTD6第二章硬件系统电路设计2.1系统硬件的总体设计单片机为核心的数据采集和控制系统是现代工业现场使用最多的一种简单的微型系统。它主要用来采集工业现场或者工作环境中的温度,压力,光照,流量和电压电流等非线性的模拟信号作为控制参数,通过ADC把模拟信号转换成数字信号送入单片机;再通过串行口连接计算机对数据进行大规模的存储和处理,或者经过自身的DA转换功能将数字量转换成模拟量,然后经过外围的放大电路对工业现场进行控制。图2.1.1经典数据采集和处理结构简图:传感器放大滤波及数据转换80c51隔离驱动电路扩展模块图2.1.1经典数据采集和处理结构简图本论文基于传统的数据采集与处理系统,在此基础上,对单片机输出的数字信号进行数据拟合,实现数字信号的模拟化,使信号更趋于平滑,具有更强的通用性。通过模拟多路开关与现场结合获取所需的模拟信号即控制参数,把得到的信号经过滤波器的处理和放大电路的放大再经过ADC0832对其进行数字化处理,把模拟信号转化成为二进制码的机器语言传送到单片机80C51中,经过软件预处理,将得到的数据进行拟合,使信号更具平滑性和通用性,将处理后信号经由外部电路的放大送入继电器单元进行控制,进而克服数模转换后信号的波动。图2.1.2经过加工改造后的数据采集和处理结构简图:7传感器放大滤波及数据转换80c51隔离驱动电路扩展模块通信PC图2.1.2经过加工改造后的数据采集和处理结构简图2.2系统硬件电路组成2.2.1单片机因为本系统是典型的单片机数据采集控制系统,因此所选用单片机的类型是否合适,对整个系统显然起着至关重要的作用。选择哪种型号的单片机作为控制核心,一般根据计算机的有关参数及经济效益与成本来决定的。往往以单片机的速度、精度、内在容量,驱动能力、扩展能力和总系统所需价格几个方面来考虑。根据本系统的设计要求,在选择微处理器时,我们考虑了各种微处理器的价格情况,和我们学校的设备情况,经过分析,现有设备中,我们利用伟福的H51/S仿真器,所以我们经过论证,决定选用ATMEL公司的AT89C51芯片来完成我们对系统的设计。而且价格低廉,容易买到,所以我选用了MCS-51系列中的AT89C51单片机,其主要特性如下:a)4K字节可编程闪烁存储器,基本可以完成简单程序的存储和运行b)操作简单,适用性强,可以兼容多种存储和转换芯片c)内置多种集成电路,减少接线和外部设计工作d)低功耗的闲置和掉电保护模式2.2.2单片机最小系统实现a)晶振电路和复位电路XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。采用外部时钟驱动单片机,XTAL2空置即可。由于输入到内部时钟信号要通过一个12分频触发器,保证脉冲的高低电平要求就行了。复位过8程是单片机的初始化操作,其主要作用是使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,也需要按复位键以重新启动。图2.2.1为单片机的最小系统:图2.2.1单片机的最小系统b)I/O电路和存储扩展对于无内部ROM的单片机或者程序较大,内部ROM不够用时,需要外接程序存储器芯片;数据量较大,内部RAM不够用还需扩展外部数据存储器RAM芯片。在MCS-51单片机应用系统中,程序存储器的扩展,对于片内无ROM的单片机是不可缺少的工作,程序存储器扩展的容量根据应用系统的需要可在64KB范围内随意选择。用一片ROM2764做8KB片外程序存储器,27256的片选端接地。用一片6264片外数据存储器。6264的片选端接74LS138,当Y0为低电平时选通。再用一片8255芯片实现单片机与PC机及外部设备的连接和外部设备的连接等。图2.2.2单片机的内存扩展电路:9图2.2.2单片机的内存扩展电路图图2.2.3为单片机的I/O扩展电路连接图:图2.2.3为单片机的I/O扩展电路连接图:2.2.3模拟输入通道组成10模拟通道即将现场中的模拟信号进行采集和数字化处理,主要包括传感器、多路开关、AD转化器、放大器及采样保持器五个部分组成。图2.2.3为模拟信号采集和转换原理图:VinGNDVrefD1D4SignENB模拟/数字转换器传感器模拟多路开关放大原件数模转换图2.2.4模拟信号采集和转换原理图2.2.4AD0809芯片介绍和使用在单片机数据采集和处理的控制过程中,首先要对传感器传过来的信号进行处理,然而单片机只能接受数字信号,而传感器中的信号为连续的电压或者电流信号,在这个过程中需要模数转换器对其进行转化再送到单片机中进行加工处理。A/D转换器芯片的种类很多,在此我选择了较为常用的A/D转换芯片ADC0809。ADC0809是逐位逼近型8位单片A/D转换芯片。片内含8路模拟开关,可允许8个模拟两输入。片内带有三态输出缓冲器,因此可直接与系统总线相连,是目前应用较为广泛的模数转换芯片之一。图2.2.5模数转换器与单片机的连接图:11图2.2.5数模转换器与单片机的连接图2.2.5控制电路设计本论文使用单片机输出数字信号,经由一片CD4013输出数字信号,经过软件预处理过程和放大实行对外部电路即继电器实行控制。12第三章非线性数据处理3.1非线性理论介绍在生产实践和科学实验中,经常会遇到大量的不同类型的数据(data).这些数据提供了有用的信息,可以帮助我们认识事物的内在规律等.在一项工程实践中,通过观测,得到了一个离散的函数关系