数据采集与通信课程设计报告.docx
- 文档编号:7618745
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:12
- 大小:183.91KB
数据采集与通信课程设计报告.docx
《数据采集与通信课程设计报告.docx》由会员分享,可在线阅读,更多相关《数据采集与通信课程设计报告.docx(12页珍藏版)》请在冰豆网上搜索。
数据采集与通信课程设计报告
题目:
数据采集与通信课程设计报告
学院:
来源网络
专业:
来源网络
年级:
来源网络
学生姓名:
来源网络
学号:
来源网络
摘要
现代工业生产中,温度的测量和控制极为普遍,单片机的优点十分明细,其具有体积小、功能强大、低功耗、性价比高等诸多优点,其广泛应用于自动控制领域,单片机的应用可以有效提高产品的控制质量和自动化水平,利用单片机对温度进行测控的技术,日益得到广泛应用
关键词:
单片机;温度传感器
1说明
我们两组用单片机与单片机之间的串行口通信实现温度数据的采集、发送、显示及数据的处理。
以下简称单片机甲为甲机(主机),单片机乙为乙机(从机)。
甲机采集温度数据并发送给已机,同时乙机也可以采集温度数据并发送给甲机,甲机和乙机都使用LCD1602显示温度数据。
一.该系统的优点如下:
1充分利用单片机的串行通信实现多机之间的信息交换;
2甲机与乙机之间采用RS-485接口进行连接,
3该系统可通过独立按键自由的设置发送与接收
缺点:
1由于使用的传感器DS18B20的某些特性,如测量范围在-55℃~125℃,该系统不适用于温度极高或极低的环境,在-10℃~85℃范围内,精度为+0.5℃,所以也不满足对温度检测精度很高的环境要求。
2采用串行通行,传送控制复杂、速度慢、抗干扰能力差。
二.主要构成:
该检测系统硬件电路包括单片机、温度采集模块、显示模块、按键控制模块、,硬件电路将使用仿真软件Proteus进行仿真,源程序的编译将使用KeiluVisio4,然后生成HEX文件加载到51单片机中,用STC-ISP进行烧录,实现Keil与Proteus的联调。
文中将对每个芯片、模块功能以及实现。
过程本论文进行详细介绍。
文中将附上完整电路图与源代码,由我们调试,可以运行并完成相应的功能。
三.主程序设计
主程序的主要功能是进行温度转换、温度A/D码转换、显示缓冲区刷新及温度显示等,见流程图1
流程图1
2单片机简介
2.1IAP15F2K61S2单片机
IAP15F2K61S2单片机8位单片机,兼容51,只是实物引脚与51不同,还有烧程序时要选用对应型号的单片机
核心选择IAP15F2K61S2单片机是宏晶科技有限公司(STC)于2013年所推出的最新款的1T单片机,是常规51单片机的加强版。
该系列单片机的运行速度要比普通51单片机快7-12倍,可以较大幅度的提高单片机控制系统的响应速度,降低系统的响应时间。
IAP15F2K61S2单片机集成了丰富的实用功能部件,简化了常规单片机最小系统的硬件构成,省去了外部复位电路和时钟电路等部分,优化了管脚配置,配置了五个8位(P0,P1,P2,P3,P4)和一个2位(P5)通用并行I/O口线。
IAP15F2K61S2单片机的定时器0具有4种工作模式,与传统的8051单片机兼容。
IAP15F2K61S2单片机的定时器有2种计数速率:
1T模式和12T模式。
速度越慢,时钟周期越长,定时长度就越大。
在1T模式下,系统时钟为外部12MHz晶振工作的12分频,即每个系统时钟的周期为1us,这时定时器的定时长度最大。
在定时器的4种工作模式中,模式1为16位定时器,计数值最大,为65535个计数脉冲。
故定时器的最大定时长度为:
1us×65536=65536us。
单片机的优点十分明细,其具有体积小、功能强大、低功耗、性价比高等诸多优点,其广泛应用于自动控制领域,单片机的应用可以有效提高产品的控制质量和自动化水平,利用单片机对温度进行测控的技术,日益得到广泛应用。
3LCD1602介绍
3.1管脚
1602共16个管脚,但是编程用到的主要管脚不过三个,分别为:
RS(数据命令选择端),R/W(读写选择端),E(使能信号);以后编程便主要围绕这三个管脚展开进行初始化,写命令,写数据。
以下具体阐述这三个管脚:
RS为寄存器选择,高电平选择数据寄存器,低电平选择指令寄存器。
R/W为读写选择,高电平进行读操作,低电平进行写操作。
E端为使能端,后面和时序联系在一起。
除此外,D0~D7分别为8位双向数据线。
3.2操作时序
RS
R/W
操作说明
0
0
写入指令码D0~D7
0
1
读取输出的D0~D7状态字
1
0
写入数据D0~D7
1
1
D0~D7读取数据
注:
关于E=H脉冲——开始时初始化E为0,然后置E为1,再清0.读取状态字时,注意D7位,D7=1,禁止读写操作;D7=0,允许读写操作;所以对控制器每次进行读写操作前,必须进行读写检测。
LCD_1602初始化指令小结:
0x38设置16*2显示,5*7点阵,8位数据接口
0x01清屏
0x0F开显示,显示光标,光标闪烁
0x08只开显示
0x0e开显示,显示光标,光标不闪烁
0x0c开显示,不显示光标
0x06地址加1,当写入数据的时候光标右移
0x02地址计数器AC=0;(此时地址为0x80)光标归原点,但是DDRAM中断内容不变
0x18光标和显示一起向左移动
4DS18B20温度传感器介绍
4.1DS18B2O简介
DS18B20数字温度传感器接线方便,封装后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式。
主要根据应用场合的不同而改变其外观。
封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。
耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。
4.1.1DS18B20的特点
1、适应电压范围更宽,电压范围:
3.0~5.5V,在寄生电源方式下可由数据线供电
2、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
3、DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。
4、DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。
5、温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃
6、可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温。
7、在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。
8、测量结果直接输出数字温度信号,以"一根总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。
9、负压特性:
电源极性接反时,芯片不会因发热而烧毁,但不能正常工作
DS18B20的内部结构
1.引脚功能
序号
名称
引脚功能描述
1
GND
电源地
2
DQ
为数据(数字信号)输入/输出引脚。
开漏单总线接口引脚。
当被用着在寄生电源下,也可以向器件提供电源
3
VDD
为外接供电电源输入端(在寄生电源接线方式时此引脚必须接地)
4.1.2DS18B20温度转换规则
DS18B20的核心功能是它可以直接读出数字的温度数值。
温度传感器的精度为用户可编程的9,10,11或12位,分别以0.5℃,0.25℃,0.125℃和0.0625℃增量递增。
在上电状态下默认的精度为12位。
DS18B20启动后保持低功耗等待状态,当需要执行温度测量和AD转换时,总线控制器必须发出[44h]命令。
转换完以后,产生的温度数据以两个字节的形式被存储到高速暂存器的温度寄存器中,DS18B20继续保持等待状态。
温度寄存器格式表4-1
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
LSByte
23
22
21
20
2-1
2-2
2-3
2-4
Bit15
Bit14
Bit13
Bit12
Bit11
Bit10
Bit9
Bit8
MSByte
S
S
S
S
S
26
25
24
4.1.3DS18B20初始化
一.DS18B20初始化
①先将数据线置高电平1。
②延时(该时间要求不是很严格,但是要尽可能短一点)。
③数据线拉到低电平0。
④延时750µs(该时间范围可以在480~960µs)。
⑤数据线拉到高电平1。
⑥延时等待。
如果初始化成功则在15~60ms内产生一个由DS18B20返回的低电平0,据该状态可以确定它的存在。
但是应注意,不能无限地等待,不然会使程序进入死循环,所以要进行超时判断。
⑦若CPU读到数据线上的低电平0后,还要进行延时,其延时的时间从发出高电平算起(第@步的时间算起)最少要480µs。
⑧将数据线再次拉到高电平1后结束。
图4-1-3初始化时序图
二.DS18B20读时序
DS18B20读时序图4-1-4
①将数据线拉高到1。
②延时2µs。
③将数据线拉低到0。
④延时6µs。
⑤将数据线拉高到1。
⑥延时4µs。
⑦读数据线的状态得到一个状态位,并进行数据处理。
⑧延时30µs。
⑨重复①~⑦步骤,直到读取完一个字节。
三.DS18B20写时序
DS18B20写时序图4-1-5
①数据线先置低电平0。
②延时确定的时间为15µs。
③按从低位到高位的顺序发送数据(一次只发送一位)。
④延时时间为45µs。
⑤将数据线拉到高电平1。
⑥重复①~⑤步骤,直到发送完整个字节。
⑦最后将数据线拉高到1。
5RS485通信协议
RS-485半双工异步通信总线是被各个研发机构广泛使用的数据通信总线,它往往应用在集中控制枢纽与分散控制单元之间
串口是串行发送数据的接口,是相对于并口来说的,是一个广泛的定义,比如RS-485。
波特率是指串行端口每秒内可以传输的波特位数。
这里所指的波特率,如标准9600不是每秒种可以传送9600个字节,而是指每秒可以传送9600个二进位。
一个字节需要8个二进位,如用串口模式1来传输,那么加上起始位和停止位,每个数据字节就要占用10个二进位。
9600bps用模式1传输时,每秒传输的字节数是9600÷10=960个字节,发送一个字节大概需要1ms时间。
485总线输出电路部分的设计
输出电路的设计要充分考虑到线路上的各种干扰及线路特性阻抗的匹配。
由于工程环境比较复杂,现场常有各种形式的干扰源,所以485总线的传输端一定要加有保护措施。
在电路设计中采用稳压管D1、D2组成的吸收回路,也可以选用能够抗浪涌的TVS瞬态杂波抑制器件,或者直接选用能抗雷击的485芯片(如SN75LBC184等)。
考虑到线路的特殊情况(如某一台分机的485芯片被击穿短路),为防止总线中其它分机的通信受到影响,在75176的485信号输出端串联了两个20Ω的电阻R10、R11。
这样本机的硬件故障就不会使整个总线的通信受到影响。
在应用系统工程的现场施工中,由于通信载体是双绞线,它的特性阻抗为120Ω左右,所以线路设计时,在RS-485网络传输线的始端和末端各应接1只120Ω的匹配电阻(如图2中R8),以减少线路上传输信号的反射。
由于RS-485芯片的特性,接收器的检测灵敏度为±200mV,即差分输入端VA-VB≥+200mV,输出逻辑1,VA-VB≤-200mV,输出逻辑0;而A、B端电位差的绝对值小于200mV时,输出为不确定。
如果在总线上所有发送器被禁止时,接收器输出逻辑0,这会误认为通信帧的起始引起工作不正常。
解决这个问题的办法是人为地使A端电位高于B两端电位,这样RXD的电平在485总线不发送期间(总线悬浮时)呈现唯一的高电平,8031单片机就不会被误中断而收到乱字符。
通过在485电路的A、B输出端加接上拉、下拉电阻R7、R9,即可很好地解决这个问题。
485芯片的软件编程对产品的可靠性也有很大影响。
由于485总线是异步半双工的通信总线,在某一个时刻,总线只可能呈现一种状态,所以这种方式一般适用于主机对分机的查询方式通信,总线上必然有一台始终处于主机地位的设备在巡检其它的分机,所以需要制定一套合理的通信协议来协调总线的分时共用。
这里采用的是数据包通信方式。
通信数据是成帧成包发送的,每包数据都有引导码、长度码、地址码、命令码、内容、校验码等部分组成。
其中引导码是用于同步每一包数据的引导头;长度码是这一包数据的总长度;命令码是主机对分机(或分机应答主机)的控制命令;地址码是分机的本机地址号;“内容”是这一包数据里的各种信息;校验码是这一包数据的校验标志,可以采用奇偶校验、和校验等不同的方式。
在485芯片的通信中,尤其要注意对485控制端DE的软件编程。
为了可靠的工作,在485总线状态切换时需要做适当延时,再进行数据的收发。
具体的做法是在数据发送状态下,先将控制端置“1”,延时1ms左右的时间,再发送有效的数据,一包数据发送结束后再延时1ms后,将控制端置“0”。
这样的处理会使总线在状态切换时,有一个稳定的工作过程。
5.1RS-485通讯
我们单片机的双机通讯,使用的波特率是9600,一个主机一个从机。
主机按键获得按键的数值,然后发送给从机,从机接收到按键的键值,通过数码管显示出来。
反过来从机也可以发送给主机。
一、规定通信协议如下:
1、主机发送数据,从机接收数据,双方发送和接收数据采用查询方式;
2、双机开始通信,主机发送握手信号,等待从机应答;
3、从机接收到握手信号后,应答OK或BUSY;
4、当从机应答OK后,主机开始向从机发送缓冲区里的数据;
5、从机接收完数据后,返回接收成功或失败,若失败,主机将重新发送,从机将重新接收
二、主机发送的数据格式:
字节数n,数据1,数据2......数据n,字节校验;其中字节校验是将字节数和所有数据进行相异或的结果
定时器采用定时器1(8位自动重装),波特率采用9600bit/s,
此程序实现双机同时发送(数码管0-9),并能同时接受,并显示出来,真正实现异步全双工
结论
在本次测温系统设计中:
一.在模块化设计方面,按每个要求的功能,从单片机、显示器、传感器等都尽量选择市场上通用性最好的产品,在满足性能的前提下,尽量选择低成本元件,最大限度地降低了整个系统的成本。
特别是选用了DS18B20传感器,它集温度与A/D转换于一身,大大提高了系统的可靠性,使整个电路变得简洁。
二.在软件设计中融入模块化、通用化思想,核心的方法就是每个功能程序化,主程序只是对各个功能的标志位进行判断,依照标志位来决定程序的走向,可以实现了温度在液晶上显示,不用的模块进入休息状态以最大限度地降低功耗。
随着时代的进步和电子技术的不断发展,采用单片机控制进行采集温度无疑是人们追求的目标之一,也是未来温度计发展的主要方向。
它所给人带来的方便也是不可否认的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人生活、工作、学习、科研等社会各领域提供更好的更方便的“温度计”,就需要从数单片机技术入手,将温度测量技术一切向着数字化控制,智能化控制方向发展。
致谢
在这次写论文中,经过自身的努力,搜集并学习相关的资料,不但加深对单片机理论知识的认识和理解,并将所学的知识充分应用于实践中巩固了专业知识。
通过这次毕业设计,扩展了知识面,不但掌握了本专业的相关知识,而且对其他专业的知识也有所了解,从各方面提高了自身的综合素质。
经过这次一个较完整的产品设计和制作过程,对于将来学习和工作也是有所裨益的。
在写论文过程中,得到了王老师的指导与帮助,得到了同学的大力支持和协助,使我克服了种种不利条件,保证毕业设计能顺利完成。
在此一并表示衷心的感谢。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 采集 通信 课程设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)