基于单片机的服装面料表面粗糙度检测平台控制系统设计Word文档格式.docx
- 文档编号:20498335
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:25
- 大小:599.71KB
基于单片机的服装面料表面粗糙度检测平台控制系统设计Word文档格式.docx
《基于单片机的服装面料表面粗糙度检测平台控制系统设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的服装面料表面粗糙度检测平台控制系统设计Word文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
矩阵键盘;
数码管;
S型拉压力传感器
Abstract
Inrecentyears,withtheimprovementofpeople’sdailylife,peoplehavebecomingmoreandmoreconcernedaboutthecomfortoftheirwear.Ifroughclothesdirectlycontactwiththeskin,itnotonlymakespeoplefeeluncomfortable,butalsomaydamagetheskin.Theroughnessisanimportantindexofclothingcomfort,andhasagreatinfluenceonpeople’swearingexperience.Ifwecandevelopaconvenientdetectionplatformofsurfaceroughness,itcangreatlybenefittheproductionandinspectionofthefactoryandprovideanimportantguaranteefortheclothingcomfort.
Thisstudydesignedasimpleandconvenientroughness-detectionplatformtofacilitatetheproductionandtestingoffactory.Meanwhile,thegeneralideaofthisdesignis----AT89S52microcontrollerasthemasterchip,using4x4matrixkeyboardasinputto8eightdigitaltubetodo,usingL298Nchiptodrive24Vmotortomovetheplatform,usingSpressuresensortoobtainthepressureandgetroughdegreewiththecorrespondingalgorithm.Inaddition,ithasclearandresetfunction,andwithwarningprompts.Italsohastheemergencystopbuttontopreventaccidentsintheprocessofmeasurement.Suchaplatformcanmeettheneedsoffactory’sinspectionofroughness.
Atthesametime,takingintoaccounttheenvironmentalrequirementsofthetimes,allprogramsaredesignedbytheClanguage,soitcanreducetheworkofwritingprograms,andcanfacilitatefuturetransplantprocedures,modifications,upgrades.Thecalculatoruseseight-bitetri-state74HC573Dtolatchtheaddressandthedataofthedigital,andusebuzzerasanoverflowalarm.Single-chipcrystaloscillatorcircuitandresetcircuitareusedbytheconventionalcircuit.
Keywords:
AT89S52;
Roughnessmeasurement;
Matrixkeyboard;
8digitaltube
引言
随着人们生活水平的提高,人们也越来越注重服饰的穿着适度度,一件好的服饰不仅要外观美丽,而且要给消费者一个舒适的体验。
在工厂生产中,布料粗糙度检测是服饰生产的重要环节。
因此,需要一个单易操作的服饰粗糙度检测平台,能够完成布料粗糙度快速精准的检测,这样已经可以满足工厂的生产检测需要,提高出厂服饰的舒适度。
同时,要尽可能地运用易得的器件,这也是产品设计的一个出发点,故本设计采用市场上常见的AT89S52单片机作为核心芯片,以4x4矩阵键盘做输入,以8段LED数码管的动态扫描来做输出显示,其中用8位三态锁存器74HC573D来对数码管的地址和数据进行锁存,用蜂鸣器来进行警报提示,用普通的S型拉压力传感器来测量纵向压力和横向摩擦力。
对单片机的外围晶振和复位均采用常规电路。
其中,用C语言来完成对程序各个部分的编写,这样不仅可以减小编程的难度,而且易于以后对程序的移植、修改和升级。
通过完成此次设计,可以进一步加强对单片机理论的学习,有利于掌握其它电子模块如数码管,矩阵键盘等,而且能够熟悉并掌握单片机开发常用的软件如:
PROTEUS,KEIL,STC-ISP等,进一步提高自身的实际动手能力,深化而系统地理解嵌入式的软硬设计思路。
这样,有利于日后更高层次的学习,丰富单片机产品的开发经验,能够更加快速的融入这一行业,为以后工作或深造打下良好的基础。
一、系统总体设计
1.1设计概述
根据毕业设计要求,目的是要设计一个简单易操作的服装表面粗糙度测量平台。
本设计以大学本科期间所学的AT89S52单片机为核心芯片,采用4x4矩阵键盘输入控制,以8位八段数码管动态扫描做输出显示,可以对服饰的粗糙度进行快速准确的测量,并带有警告提示。
1.2系统整体模块图
图1系统整体模块图
Figure1Overallsystemblockdiagram
1.3实现方案
经过综合考虑,最终决定实现方案如下:
a)使用AT89S52单片机为主控芯片;
b)显示模块使用4位八段数码管;
c)输入使用4x4矩阵键盘作为输入模块;
d)使用8位三态锁存器74HC573D来对数码管的地址和数据进行锁存;
e)用蜂鸣器来做警告提示;
f)用两个S型的拉压力传感器来分别获取纵向压力和横向摩擦力。
g)其中的晶振电路和复位电路均采使常规电路;
h)LM2576用于设计必要的电源电路
1.4构造及测量原理
摩擦系数是指两表面间的摩擦力与作用在其一表面上的垂直力之比值。
它是和表面的粗糙程度有关。
也就是说我们可以通过测量布料表面的摩擦系数来间接检测其表面的粗超程度,这种替代方法显然是合理的。
依运动的性质,摩擦系数可分为动摩擦系数和静摩擦系数,但一般情况下其近似相等。
又我们知道接近匀速运动的物体其所受滑动摩擦力大小等于其它合力的大小。
根据以上原理我们可以由fs=μs*N,fs为滑动摩擦力,N为垂直正压力。
求得μs=fs/N,从而得到所测布料表面的粗糙程度。
测量原理图如图2所示
图2测量原理图
Figure2Measuringprinciplediagram
设计中,采用了蚌埠大洋传感器公司的500kgS式拉压力传感器,其灵敏度和量程均满足测量需要,通过电机来控制纵向正压力大小和横向运动速度,控制范围分别为0~20N和0~10cm/s,并且设有保护装置,当压力大于20N或者运动速度大于10cm/s时,自动减小正压力并关闭电源。
图为检测平台实物图如图3所示:
图3检测平台实物图
Figure3Thephysicalmapofdetectingplatform
二、硬件系统设计
2.1AT89S52单片机
(1)芯片简介
AT89S52单片机是ATMEL公司生产的是一款CMOS工艺的8位单片机。
它带有8KB的可在线编程的Flash存储器,该单片机与80C51系列单片机的指令系统及引脚完全兼容,具有较高的性能价格比,使其在嵌入式开发中仍有着广泛的应用。
AT89S52单片机为40引脚芯片,具有PDIP,PLCC和TQFP3钟封装形式。
各引脚的功能如下:
●P0口——8位、开漏极、双向I/O口。
P0可作为通用I/O口,每个引脚可驱动8个TTL负载;
当做输入时,每个端口首先置1。
●P1口——8位、双向I/O口,内含上拉电阻。
P1口为用户使用的通用I/O口,每个引脚可驱动4个TTL负载。
当用做输入时,每个端口首先置1。
P1.0和P1.1引脚也是定时器2的外部计数输入(P1.0/T2)和触发器输入(P1.1/T2DX)。
●P2口——8位、双向I/O口,内部具有上拉电阻。
P2口可用做通用I/O,可以驱动4个TTL负载。
对P2口各位写入1,可作为输入。
每个引脚由外部负载拉为低电平时,经由内部上拉电阻向外输出电流。
●P3口——8位、双向I/O口,内部含有上拉电阻。
P3口可用做通用I/O口,可驱动4个TTL负载。
当用做输入时,要先将P3口各位置如外部负载将P3口拉低,则经过上拉电阻向外输出电流。
●RST——单片机复位输入端,当对其连续作用两个机器周期以上高电平时,单片机自动复位。
●XTAL1和XTAL2——XTAL1是片内振荡器反相放大器和时钟发生器的输入端,XTAL2是片内振荡器反相放大器的输出端。
(2)AT89S52的PIDP封装引脚排列图及实物图
图4AT89S52的PIDP封装引脚排列图及实物图
Figure4AT89S52ofPIDPpackagepinoutdiagramandphysicalmap
2.2单片机复位电路
图5单片机复位电路
Figure5MCUresetcircuit
复位电路即是使单片机复位的电路,就是利用它将单片机恢复到其实状态。
如图2.2所示,VCC上电时,电容C1充电,电流从电阻R2流过,在电阻R2上出现高电压,从而使单片机复位。
几个毫秒后,C1充满电,流过R2的电流为零,从而其上的电压也为零,单片机进入工作状态。
工作期间,按下按钮,电容C1放电,松开按钮,电容C1充电,继而又会在电阻R2上产生高电压,几个毫秒后,单片机再次进入工作状态。
注:
当AT89S52单片机的复位引脚上有持续两个机器周期以上的高电平时,单片机复位。
2.3单片机的外接晶振电路
图6单片机的外接晶振电路
Figure6MCUexternalcrystaloscillatorcircuit
AT89S52单片机内部虽然已有震荡电路,但为了提高其时间精准度与稳定度,故采用外接时钟晶振。
外接晶体引脚:
XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。
2.44x4矩阵键盘
图74x4矩阵键盘电路图
Figure74x4matrixkeyboardschematics
图8矩阵键盘输入功能图
Figure8Matrixkeyboardinputfunctionchart
在本设计中我采用了4x4矩阵键盘来作为输入,用单片机的P3口与其对接,实现计算器的输入功能,具体如下:
以第一行扫描为例,其余行数以此类推,先给P3.0口一低电平其余全为高电平,即P3口此时为11111110,然后去取出其高四位,通过去判断其高四位的值的变换来得到相应的键入值,如当P3为11101110时则"
1"
功能被按下;
当为11011110时"
2"
当为10111110时"
3"
功能被按下。
以此类推。
键盘第一行扫描程序如下:
/////////第一行扫描//////////
P3=0xfe;
//11111110让P3.0输出低
temp=P3;
temp=temp&
0xf0;
//11110000位与操作屏蔽低四位
if(temp!
=0xf0)
{
delay(10);
//延迟来判断是否是干扰
switch(temp)
{
case0xee:
key=1;
break;
//11101110"
被按下
case0xde:
key=2;
//11011110"
case0xbe:
key=3;
//10111110"
case0x7e:
key=10;
//01111110"
+"
}
while(temp!
=0xfe)//判断按键是否松开
{
temp=P3;
temp=temp&
display(key);
delay(22);
}
2.5八段LED数码管
图9八段LED数码管实物图
Figure9EightLEDdigitalphysicalmap
图108位八段LED数码管电路图
Figure108eightLEDdigitalcircuitdiagram
在本设计中,采用8位八段共阴数码管作为输出显示,并利用数码管的动态显示来显示输出,其中用到两片8位三态锁存器74HC573D来对数码管的地址和数据进行锁存,其分别P0口对接,来传输数据,用P2^6口来控制段选,用P2^7来控制段选,以此来实现动态扫描。
74HC573D其引脚主要功能如下:
引脚主要功能引脚主要功能
1缓冲输出使能控制输入端11锁存使能控制输入端
2数据1输入端12数据输出端,输出相应输入端数据
3数据2输入端13数据输出端,输出相应输入端数据
4数据3输入端14数据输出端,输出相应输入端数据
5数据4输入端15数据输出端,输出相应输入端数据
6数据5输入端16数据输出端,输出相应输入端数据
7数据6输入端17数据输出端,输出相应输入端数据
8数据7输入端18数据输出端,输出相应输入端数据
9数据8输入端19数据输出端,输出相应输入端数据
10接地端205V电源电压输入端
具体实现为,首先进行位选,选择要用于显示的位;
然后进行段选,输出相应的数据。
其实数码管的动态显示是一个显示扫描的过程,所以我们可以利用‘余辉现象’来实现其连续不闪烁的显示。
共阴数码管的编码:
ucharcodesz[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};
//共阴数码管0-9&
A-F&
“不显示”字型码。
显示个位、十位程序如下:
voiddisplay(uintnum)//数码管动态显示函数
{
uintg,s,b,q;
//g,s,b,q,分别代表个,十,百,千位上的数
if(num>
9999)//四位数码管,最大显示为9999
clear();
//调用溢出函数
else
q=num/1000%10,b=num/100%10,s=num/10%10,g=num%10;
//通过取余的方式,取出各位上的数,
P0=sz[g];
//个位显示
DU=1;
//选段
DU=0;
P0=0x7f;
//选中第一位数码管
WE=1;
//选位
WE=0;
delay(5);
9)//大于9时才去打开第二位数码管,便于省电,以此类推一下情况
P0=sz[s];
//十位显示
P0=0xbf;
…
}
2.6拉压力传感器
拉压力传感器又叫电阻应变式传感器,它归于称重传感器系列,是一种将物理信号转变为可测量信号输出的装置。
广泛运用在工业称重系统、平台秤、电子秤、吊钩秤、配料秤等测力场合。
拉压力传感器是以弹性体为中介,通过力作用在帖传感器两边的电阻应片使它的阻值发生变化,再经过相应的电路转换为电的信号,从而实现后面的控制。
它的优点是精度高,测量范围广,寿命长,结构简单,频响特性好。
电阻式传感器内部电路由应变片和电桥构成,分单臂电桥、双臂电桥、四臂电桥,其中四臂电桥的灵敏度最高,且还能实现温度补偿。
电路图如图11所示
图11四臂电桥图
Figure11Fourarmsbridge
如图电阻R1,R2,R3,R4产生的电阻增量正负相间,就可以使输出电压Uo成倍增加。
温度补偿:
当环境温度升高时,桥臂上的应变片温度同时升高,温度引起的电阻漂移数值一致,可以相互抵消,所以全桥的温漂较小。
当然,二臂桥也同样能克服温漂,原理一样。
重要参数指标:
(1)线性度:
指传感器输出量与输入量之间的实际关系曲线偏离拟合直线的程度。
定义为在全量程范围内实际特性曲线与拟合直线之间的最大偏差值与满量程输出值之比。
(2)灵敏度:
灵敏度是传感器静态特性的一个重要指标。
其定义为输出量的增量与引起该增量的相应输入量增量之比。
用S表示灵敏度。
(3)迟滞:
传感器在输入量由小到大(正行程)及输入量由大到小(反行程)变化期间其输入输出特性曲线不重合的现象成为迟滞。
对于同一大小的输入信号,传感器的正反行程输出信号大小不相等,这个差值称为迟滞差值。
(4)重复性:
重复性是指传感器在输入量按同一方向作全量程连续多次变化时,所得特性曲线不一致的程度。
(5)漂移:
传感器的漂移是指在输入量不变的情况下,传感器输出量随着时间变化,这个现象称为漂移。
产生漂移的原因有两个方面:
一是传感器自身结构参数;
二是周围环境(如温度、湿度等)。
拉压力传感器的类型很多,以下是常见的几种类型:
S式拉压力传感器,Z型柱式拉压力传感器,L型高精度拉压力传感器等。
其中,S型拉压力传感器适用于指定的标准称量,如平台秤、料斗称量系统等,尤其适用于一些要求精度高的工业称量系统。
因其高度可靠性及密封设计,即使在恶劣环境下仍能长时间连续稳定的工作;
柱式拉力传感器其结构兼顾于柱式、S式的优点,结构紧凑,造形优美,测量精度高,抗偏能力强,广泛运用于配料、机械制造、拉力试验机等计量与控制系统中;
L型拉压力传感器精度高、低漂移,小体积,抗偏能力强,广泛运用于微小力值的计量与控制系统中。
基于设计要求,本文中选用蚌埠大洋传感器公司的500kgS式拉压力传感器。
具体技术参数如下表:
满量程参数
,灵敏度参数
,设计中提供的供电电压Ui为6V.
转换计算公式为:
设计中采用的传感器实物图如图12所示:
图12S型传感器实物图
Figure12ThephysicalmapofS-typesensor
按照产品说明书将输入、输出连线正确接入测量电路即可使用。
2.751单片机最小系统
图1351单片机最小系统
Figure1351SCMminimumsystem
如图13所示,51单片机的最小系统主要由主控芯片和晶振电路以及外围几口电路构成。
主控芯片主要负责指令的运算处理,晶振电路为芯片提供一个稳定的外部时钟以保证其运算的精准性,外围接口用于连接其他外设如输入、输出设备。
三、程序调试与系统仿真
3.1程序调试
程序调试过程,采用了分块调试的方法。
调试与仿真中用到的软件有:
Proteus,KeilC51,STC-ISP
(1)数码管显示部分的调试
对数码管显示部分程序进行人为的赋值,如对其显示变量num赋123,去观察数码管是否能够正确的进行显示1.23,如若不能,则修改显示程序,直至能够正确显示,然后进行下一模块的调试。
(2)矩阵键盘输入部分的调试
首先不用加入计算程序,直接将矩阵键盘输入程序与数码管显示程序对接,用数码管显示的值去检验矩阵键盘输入程序是否正常,能否得到正确的键入值,如若不能,修改键入程序,直至能够正确输入,然后进行下一模块的调试
(3)整体调试
调试时,主要采用部分注释和插入小灯的方法进行调试。
当不知道程序运行到哪里时,我们对一些关键位置插入小灯,如果小灯被点亮,说明程序能够运行到此处,如果未被点亮说明程序未能运行到此处,则应该修改程序,看其是否进入了死循序,或检查判断条件是否写错等。
在调试过程中,也可以对部分程序进行注释来找出程序错误的地方。
(4)传感器测量程序调试
这部分程序调试时,可以先不用将拉压力传感器安装到平台上,然后人为的给其施加一个外力,用来检验传感器测量程序是否有误,可以将它跟数码管显示同时检测,这样更利于找到其中的问题。
(5)电机的调试
人为的给其控制端A,B赋初值如1,0即可检验调试电机是否运转正常,并同时检验延迟参数是否设置合理。
3.2程序流程图:
图14程序流程图
Figure14Programflowchart
如图14所示,打开电源按钮,系统进入等待指令状态。
若此时施加压力的按键被按下,这电机会纵向施加压力,同时开始测量当前压力值,否则继续等待。
若压力值大于20N安全压力阀值,纵向压力臂紧急抬起并报警。
若压力值小于20N,则进一步判断往返匀速运动压力按键是否被按下,若此时按键被按下,则横向电机开始工作,否则继续等待。
接
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 服装面料 表面 粗糙 检测 平台 控制系统 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)