51单片机自动供料课程设计Word格式文档下载.docx
《51单片机自动供料课程设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《51单片机自动供料课程设计Word格式文档下载.docx(26页珍藏版)》请在冰豆网上搜索。
达到物料和电机控制的效果。
如图所示:
图1.1方案硬件设计二
这种设计方案的优点在于:
电路设计简单信号调理难度小,精确度较高控制电机。
满足系统的控制。
因此这种方案予以采纳。
第二种方案为本设计的最终方案。
第二章系统总体设计
按照本设计功能的要求,系统由4个部分组成:
控制器部分、测量部分、数据显示部分、和电路电源部分,系统设计总体方案框图如图1.2所示。
图2.1设计思路框图
测量部分是利用称重传感器检测压力信号,得到微弱的电信号(本设计为电压信号),而后经处理电路(如滤波电路,差动放大电路,)处理后,送A/D转换器,将模拟量转化为数字量输出。
控制器部分接受来自A/D转换器输出的数字信号,经过复杂的运算,将数字信号转换为物体的实际重量信号,并将其显示在液晶屏上。
同时对数据进行处理后进行D/A转换驱动电机控制其转速。
2.1控制器部分
本设计由于要求必须使用单片机作为系统的主控制器,而且以单片机为主控制器的设计,可以容易地将计算机技术和测量控制技术结合在一起,组成新型的只需要改变软件程序就可以更新换代的“智能化测量控制系统”。
这种新型的在测量过程自动化、测量结果的数据处理以及功能的多样化方面,都取得了巨大的进展。
再则由于系统没有其它高标准的要求,又考虑到本设计中程序部分比较大,根据总体方案设计的分析,设计这样一个简单的的系统,可以选用带EPROM的单片机,由于应用程序不大,应用程序直接存储在片内,不用在外部扩展存储器,这样电路也可简化。
INTEL公司的8051和8751都可使用,在这里选用ATMENL生产的AT89SXX系列单片机。
AT89SXX系列与MCS-51相比有两大优势:
第一,片内存储器采用闪速存储器,使程序写入更加方便;
第二,提供了更小尺寸的芯片,使整个硬件电路体积更小。
此外价格低廉、性能比较稳定的MCPU,具有8K×
8ROM、256×
8RAM、2个16位定时计数器、4个8位I/O接口。
这些配置能够很好地实现本仪器的测量和控制要求
最后我们最终选择了AT89S52这个比较常用的单片机来实现系统的功能要求。
AT89S52内部带有4KB*2的程序存储器,基本上已经能够满足我们的需要。
2.2数据采集部分
数据采集部分主要包括称重传感器、处理电路和A/D转换电路,因此对于这部分的论证主要分三方面
2.2.1传感器的选择
在设计中,传感器是一个十分重要的元件,因此对传感器的选择也显的特别的重要,不仅要注意其量程和参数,还有考虑到与其相配置的各种电路的设计的难以程度和设计性价比等等.
传感器量程的选择可依据秤的最大称量值、选用传感器的个数、秤体的自重、可能产生的最大偏载及动载等因素综合评价来确定。
一般来说,传感器的量程越接近分配到每个传感器的载荷,其称量的准确度就越高。
但在实际使用时,由于加在传感器上的载荷除被称物体外,还存在秤体自重、皮重、偏载及振动冲击等载荷,因此选用传感器量程时,要考虑诸多方面的因素,保证传感器的安全和寿命。
传感器量程的计算公式是在充分考虑到影响秤体的各个因素后,经过大量的实验而确定的。
其公式如下:
C=K0×
K1×
K2×
K3×
(Wmax+W)/N(2.1)
C—单个传感器的额定量程;
W—秤体自重;
Wmax—被称物体净重的最大值;
N—秤体所采用支撑点的数量;
K0—保险系数,一般取值在1.2~1.3之间;
K1—冲击系数;
K2—秤体的重心偏移系数;
K3—风压系数。
本设计要求称重范围0~5kg,重量误差不大于0.01kg,根据传感器量程计算公式(2.1)可知:
C=1.25×
1×
1.03×
(20+1.9)/1(2-2)
=9.01205
为保证电子秤称量结果的准确度,克服传感器在低量程段线性度差的缺点。
传感器的量程应根据皮带秤的最大流量来选择。
在实际工作中,要求称重传感器的有效量程在20%~80%之间,线性好,精度高。
重量误差应控制在±
0.01Kg,又考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,根据式2.1的计算结果,所以我们确定传感器的额定载荷为7.5Kg,允许过载为150%F.S,精度为0.05%,最大量程时误差
0.01kg,可以满足本系统的精度要求.
综合考虑,本设计采用SP20C-G501电阻应变式传感器,其最大量程为7.5Kg.称重传感器由组合式S型梁结构及金属箔式应变计构成,具有过载保护装置。
由于惠斯登电桥具诸如抑制温度变化的影响,抑制干扰,补偿方便等优点,所以该传感器测量精度高、温度特性好、工作稳定等优点,广泛用于各种结构的动、静态测量及各种电子秤的一次仪表。
该称重传感器主要由弹性体、电阻应变片电缆线等组成,其工作原理如图2.2所示:
图2.2称重传感器原理图
表2.1压力传感器主要技术指标
其测量原理:
用应变片测量时,将其粘贴在弹性体上。
当弹性体受力变形时,应变片的敏感栅也随同变形,其电阻值发生相应变化,通过转换电路转换为电压或电流的变化。
由于内部线路采用惠更斯电桥,当弹性体承受载荷产生变形时,输出信号电压可由下式给出:
(2-3)
2.2.2放大电路选择
称重传感器输出电压振幅范围0~20mV。
而A/D转换的输入电压要求为0~5V,因此放大环节要有100倍左右的增益。
对放大环节的要求是增益可调的(70~150倍),根据本设计的实际情况增益设为120倍即可,零点和增益的温度漂移和时间漂移极小。
按照输入电压20mV,分辨率20000码的情况,漂移要小于1µ
V。
由于其具有极低的失调电压的温漂和时漂(±
1µ
V),从而保证了放大环节对零点漂移的要求。
残余的一点漂移依靠软件的自动零点跟踪来彻底解决。
稳定的增益量可以保证其负反馈回路的稳定性,并且最好选用高阻值的电阻和多圈电位器。
由2.2.1中称重传感器的称量原理可知,电阻应变片组成的传感器是把机械应变转换成ΔR/R,而应变电阻的变化一般都很微小,例如传感器的应变片电阻值120Ω,灵敏系数K=2,弹性体在额定载荷作用下产生的应变为1000ε,应变电阻相对变化量为:
ΔR/R=K×
ε=2×
1000×
10-6=0.002(2-4)
由式2-3可以看出电阻变化只有0.24Ω,其电阻变化率只有0.2%。
这样小的电阻变化既难以直接精确测量,又不便直接处理。
因此,必须采用转换电路,把应变计的ΔR/R变化转换成电压或电流变化,但是这个电压或电流信号很小,需要增加增益放大电路来把这个电压或电流信号转换成可以被A/D转换芯片接收的信号。
在前级处理电路部分,我们考虑可以采用以下几种方案:
方案一、利用普通低温漂运算放大器构成前级处理电路;
普通低温漂运算放大器构成多级放大器会引入大量噪声。
由于A/D转换器需要很高的精度,所以几毫伏的干扰信号就会直接影响最后的测量精度。
所以,此种方案不宜采用。
方案二、主要由高精度低漂移运算放大器构成差动放大器,而构成的前级处理电路;
差动放大器具有高输入阻抗,增益高的特点,可以利用普通运放(如OP07)做成一个差动放大器。
其设计电路如图2.3所示:
方案(三):
采用专用仪表放大器,如:
INA126,INA121等构成前级处理电路。
下面举例用INA128仪用仪表放大器来实现。
图2.3利用普通运放设计的差动放大器
一般说来,集成化仪用放大器具有很高的共模抑制比和输入阻抗,因而在传统的电路设计中都是把集成化仪器放大器作为前置放大器。
然而,绝大多数的集成化仪器放大器,特别是集成化仪器放大器,它们的共模抑制比与增益相关:
增益越高,共模抑制比越大。
而集成化仪器放大器作为心电前置放大器时,由于极化电压的存在,前置放大器的增益只能在几十倍以内,这就使得集成化仪器放大器作为前置放大器时的共模抑制比不可能很高。
有学者试图在前置放大器的输入端加上隔直电容(高通网络)来避免极化电压使高增益的前置放大器进入饱和状态,但由于信号源的内阻高,且两输入端不平衡,隔直电容(高通网络)使等共模干扰转变为差模干扰,结果适得其反,严重地损害了放大器的性能。
为了实现信号的放大,设计电路如下:
图2.4采用INA128设计的放大电路
(1)前级采用运放A1和A2组成并联型差动放大器。
理论上不难证明,在运算放大器为理想的情况下,并联型差动放大器的输入阻抗为无穷大,共模抑制比也为无穷大。
更值得一提的是,在理论上并联型差动放大器的共模抑制比与电路的外围电阻的精度和阻值无关。
(2)阻容耦合电路放在由并联型差动放大器构成的前级放大器和由仪器放大器构成的后级放大器之间,这样可为后级仪器放大器提高增益,进而提高电路的共模抑制比提供了条件。
同时,由于前置放大器的输出阻抗很低,同时又采用共模驱动技术,避免了阻容耦合电路中的阻、容元件参数不对称(匹配)导致的共模干扰转换成差模干扰的情况发生。
(3)后级电路采用廉价的仪器放大器,将双端信号转换为单端信号输出。
由于阻容耦合电路的隔直作用,后级的仪器放大器可以做到很高的增益,进而得到很高的共模抑制比。
从理论上计算整个电路的共模抑制比为:
图2.5
式中:
CMRTotal或CMRRTotal-放大器的总共模抑制比;
CMR1-第一级放大器的共模抑制比;
CMR2或CMRR2-第二级放大器的共模抑制比;
A1d、A1c、A2d和A2c-分别为第一级放大器和第二级放大器的差模增益和共模增益。
经过实际测量,图2.4所示的电路采用图中所给出的参数时,电路的共模抑制比在120dB以上。
有以上分析以及基于电子秤的要求精确度不是很高,所以选择由普通放大器所组成的差动放大器作为本设计的信号放大电路。
2.2.3A/D转换器的选择
A/D转换部分是整个设计的关键,这一部分处理不好,会使得整个设计毫无意义。
目前,世界上有多种类型的ADC,有传统的并行、逐次逼近型、积分型ADC,也有近年来新发展起来的∑-Δ型和流水线型ADC,多种类型的ADC各有其优缺点并能满足不同的具体应用要求。
目前,ADC集成电路主要有以下几种类型:
(1)并行比较A/D转换器:
如ADC0808、ADC0809等。
并行比较ADC是现今速度最快的模/数转换器,采样速率在1GSPS以上,通常称为“闪烁式”ADC。
它由电阻分压器、比较器、缓冲器及编码器四种分组成。
这种结构的ADC所有位的转换同时完成,其转换时间主取决于比较器的开关速度、编码器的传输时间延迟等。
缺点是:
并行比较式A/D转换的抗干扰能力差,由于工艺限制,其分辨率一般不高于8位,因此并行比较式A/D只适合于数字示波器等转换速度较快的仪器中,不适合本系统。
(2)逐次逼近型A/D转换器:
如:
ADS7805、ADS7804等。
逐次逼近型ADC是应用非常广泛的模/数转换方法,这一类型ADC的优点:
高速,采样速率可达1MSPS;
与其它ADC相比,功耗相当低;
在分辨率低于12位时,价格较低。
缺点:
在高于14位分辨率情况下,价格较高;
传感器产生的信号在进行模/数转换之前需要进行调理,包括增益级和滤波,这样会明显增加成本。
(3)积分型A/D转换器:
ICL7135、ICL7109、ICL1549、MC14433等。
积分型ADC又称为双斜率或多斜率ADC,是应用比较广泛的一类转换器。
它的基本原理是通过两次积分将输入的模拟电压转换成与其平均值成正比的时间间隔。
与此同时,在此时间间隔内利用计数器对时钟脉冲进行计数,从而实现A/D转换。
积分型ADC两次积分的时间都是利用同一个时钟发生器和计数器来确定,因此所得到的表达式与时钟频率无关,其转换精度只取决于参考电压VR。
此外,由于输入端采用了积分器,所以对交流噪声的干扰有很强的抑制能力。
若把积分器定时积分的时间取为工频信号的整数倍,可把由工频噪声引起的误差减小到最小,从而有效地抑制电网的工频干扰。
这类ADC主要应用于低速、精密测量等领域,如数字电压表。
其优点是:
分辨率高,可达22位;
功耗低、成本低。
转换速率低,转换速率在12位时为100~300SPS。
(4)压频变换型ADC:
精度高、价格较低、功耗较低。
类似于积分型ADC,其转换速率受到限制,12位时为100~300SPS。
考虑到本系统中对物体重量的测量和使用的场合,精度要求不是很苛刻,转换速率要求也不高,而双积分型A/D转换器精度高,具有精确的差分输入,重要的是输入阻抗高(大于
),可自动调零,有超量程信号输出,全部输出于TTL电平兼容。
且双积分型A/D转换器具有很强的抗干扰能力。
对正负对称的工频干扰信号积分为零,所以对50Hz的工频干扰抑制能力较强,对高于工频干扰(例如噪声电压)已有良好的滤波作用。
只要干扰电压的平均值为零,对输出就不产生影响。
尤其对本系统,缓慢变化的
压力信号,很容易受到工频信号的影响。
根据系统的精度要求以及综合的分析其优点和缺点,本设计采用了D/A转换器ADC0809和DAC0832。
2.3显示电路部分的选择
基于单片机的自动控制供料系统。
显示部分的组成有以下两种方案可供选择:
一是LED数码管显示,而是LCD液晶显示两种选择。
LCD液晶显示是一种级低功耗显示器,所以本设计采用LCD1602液晶显示。
第三章硬件电路设计
根据设计要求与设计思路,此电路由一块AT89S52、信号放大、AD转化、DA转化、电机驱动、12位LCD显示器电路。
图3.1硬件电路设计框图
在本系统中用于称量的主要器件是称重传感器(一次变换元件),称重传感器在受到压力或拉力时会产生电信号,受到不同压力或拉力是产生的电信号也随着变化,而且
力与电信号的关系一般为线性关系。
由于称重传感器一般的输出范围为0~20mV,对A/D转换或单片机的工作参数来说不能使A/D转换和单片机正常工作,所以需要对输出的信号进行放大。
由于传感器输出的为模拟信号,所以需要对其进行A/D转换为数字信号以便单片机接收。
单片机根据称重传感器输出的电信号和速度传感器输出的速度信号计算出物体的重量。
在本系统中,硬件电路的构成主要有以下几部分:
AT89C52的最小系统构成、电源电路、数据采集、人-机交换电路等。
3.1AT89S52的最小系统电路
3.1.1单片机芯片AT89S52介绍
单片机采用MCS-51系列单片机。
由ATMEL公司生产的AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
在单芯片上,拥有灵巧的8位CPU和在线系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。
AT89S52具有以下标准功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
而且,它还具有一个看门狗(WDT)定时/计数器,如果程序没有正常工作,就会强制整个系统复位,还可以在程序陷入死循环的时候,让单片机复位而不用整个系统断电,从而保护你的硬件电路。
AT89S52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
其芯片引脚图如上图所示。
图3.2AT89S52引脚图
3.1.2.单片机管脚说明
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89S52的一些特殊功能口,如下表所示:
表3.3P3.0口引脚功能表
P3口引脚
第二功能
P3.0
RXD(串行口输入)
P3.1
TXD(串行口输出)
P3.2
INT0(外部中断0输入)
P3.3
INT1(外部中断1输入)
P3.4
T0(定时器0外部脉冲输入)
P3.5
T1(定时器1外部脉冲输入)
P3.6
WR(外部数据存储器写脉冲输出)
P3.7
RD(外部数据存储器读脉冲输出)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
3.1.3AT89S52的最小系统电路构成
AT89S52单片机的最小系统由时钟电路、复位电路、电源电路及单片机构成。
单片机的时钟信号用来提供单片机片内各种操作的时间基准,复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。
单片机的时钟信号通常用两种电路形式得到:
内部振荡方式和外部振荡方式。
在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。
由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。
当MCS-5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行