基于串行总线的主从式单片机多路数据采集系统的设计与制作.docx

上传人:夺命阿水 文档编号:1437080 上传时间:2024-06-16 格式:DOCX 页数:54 大小:495.37KB
返回 下载 相关 举报
基于串行总线的主从式单片机多路数据采集系统的设计与制作.docx_第1页
第1页 / 共54页
基于串行总线的主从式单片机多路数据采集系统的设计与制作.docx_第2页
第2页 / 共54页
基于串行总线的主从式单片机多路数据采集系统的设计与制作.docx_第3页
第3页 / 共54页
基于串行总线的主从式单片机多路数据采集系统的设计与制作.docx_第4页
第4页 / 共54页
基于串行总线的主从式单片机多路数据采集系统的设计与制作.docx_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《基于串行总线的主从式单片机多路数据采集系统的设计与制作.docx》由会员分享,可在线阅读,更多相关《基于串行总线的主从式单片机多路数据采集系统的设计与制作.docx(54页珍藏版)》请在课桌文档上搜索。

1、洋科举业企文f;题目:基于串行总线的主从式单片机多路数据采集系统的设计与制作此为WOrd版本,下载后可直接复制粘贴,需要的可以放心下载基于串行总线的主从式单片机多路数据采集系统的设计与制作摘要本文基于串行总线设计并制作了一种主从式单片机多路数据采集系统。该系统采用STC89C52单片机作为主控芯片,DS18B20温度传感器作为被控芯片,通过串口通信方式实现上下位机之间的数据传输。系统不仅可实时采集多路温度信号,而且具有较高的精度和稳定性。本文在硬件设计方面对系统电路进行了详细阐述,包括主从式单片机之间的串行通信模式、数据采集模块的设计和DS18B20温度传感器的接口电路设计。在软件设计方面,本

2、文详细叙述了基于C语言的主从式单片机程序开发,并通过实验验证了该系统的可行性和实用性。实验结果表明,该系统能够稳定地采集多路温度信号,并将数据通过串口传输到上位机。关键词:主从式单片机;串口通信;STC89C52;DS18B20;数据采集;串行总线DesignandFabricationofaSerialBus-basedMaster-slaveMicrocontrollerMulti-channelDataAcquisitionSystemAbstractThistopicisaboutamaster-slavecontrolsystembasedona51microcontroller,w

3、hichusesserialcommunicationtoenableduplexcommunicationbetweenthemasterandtheslave,withthemasterreceivinginformationfromtheslaveandthemastersendinginformationtotheslave.Inthispaper,amaster-slavemicrocontrollermultiplexeddataacquisitionsystemisdesignedandbuiltbasedontheserialbus.ThesystemusestheSTC89C

4、52microcontrollerasthemasterchipandtheDS18B20temperaturesensorasthecontrolledchip,andachievesdatatransmissionbetweentheupperandlowercomputersbymeansofserialcommunication.Thesystemcannotonlycollectmultipletemperaturesignalsinrealtime,butalsohashighaccuracyandstability.Inthispaper,thesystemcircuitisde

5、scribedindetailintermsofhardwaredesign,includingtheserialcommunicationmodebetweenthemasterandslavemicrocontrollers,thedesignofthedataacquisitionmoduleandtheinterfacecircuitdesignoftheDS18B20temperaturesensor.Intermsofsoftwaredesign,thispaperdescribesindetailthedevelopmentofthemaster-slavemicrocontro

6、llerprogrambasedonClanguage,andverifiesthefeasibilityandpracticalityofthesystemthroughexperiments.Theexperimentalresultsshowthatthesystemisabletocollectmultipletemperaturesignalsstablyandtransmitthedatatothehostcomputerthroughtheserialport.Keywords:STC89C52;DS18B20;serialcommunication;dataacquisitio

7、n1.1 本课题研究背景和意义11.2 研究现状及进展21.3 研究内容和目标31.4 研究方法和思路31.5 本章小结42单片机多机控制系统的基本原理52.1 单片机多机控制系统概述52.2 DS18B20传感器62.3 主从式单片机通信原理72.4 串行通信模式82.5 总线式通信模式92.6 本章小结93系统硬件设计103.1 系统整体架构设计103.2 硬件设计113.3 串行总线接口电路设计113.4 数据采集模块设计123.4.1 电路设计123.4.2 程序设计123.5 DSl8B20温度传感器接口电路设计133.6 本章小结144软件设计154.1 软件设计简介154.2 主

8、控程序设计164.3 从控程序设计174.4 串行通讯方式的约定184.5 本章小结185系统可行性仿真及验证195.1 系统测试和验证195.1.1 系统性能仿真测试195.1.2 实验验证205.2 系统性能测试225.3 实验结果分析236总结和展望24致谢25参考文献26附录一总体电路图27附录二源程序28附录三元器件清单53附录三中英文翻译541.1本课题研究背景和意义数据采集是现代工业控制系统中不可或缺的一部分,而单片机作为一种具有广泛应用的微处理器,被广泛应用于数据采集和工业控制领域。在实际应用中,单片机多机系统采用总线型主从多机控制系统,主从之间的通信方式通常采用串行通信,以实

9、现数据的高效传输和处理。工业通信系统如图1.1所示。基于此,本文拟设计一种使用串行总线作为通信方式的上下位机的多路数据采集系统,主控芯片选用抗干扰性较强的STC89C52型号单片机,DS18B20温度传感器作为被控芯片,通过串口通信方式实现上下位机之间的数据传输。该系统具有多路温度信号实时采集、高精度和稳定性等特点,可以用于工业自动化控制领域的数据采集和处理。本文在硬件设计方面详细阐述了主从式单片机之间的串行通信模式、数据采集模块的设计和DS18B20温度传感器的接口电路设计。在软件设计方面,本文采用C语言进行主从式单片机程序开发,并通过实验验证了该系统的可行性和实用性。通过研究本文所设计的主

10、从式单片机多路数据采集系统,可以为工业自动化控制领域的数据采集和处理提供一种可靠和高效的解决方案,具有一定的实际应用价值和推广价值。12研究现状及进展在现代工业控制领域中,数据采集系统越来越受到重视,因为准确地获取现场数据对于工业自动化控制和生产管理至关重要。随着国内外科技水平的不断进步和单片机微机技术的逐步发展,单片机被广泛应用在数据采集系统中。目前,国内外很多学者都在该领域进行了深入研究和探讨,并取得了一定的成果。对于单片机在数据采集系统中的应用,国内外学者主要集中在硬件设计和软件设计两个方面。在硬件设计方面,学者们通过改进电路结构,提高数据采集的精度和稳定性。而在软件设计方面,学者们则采

11、用不同的编程语言和算法,以实现数据采集与处理的自动化。此外,还有许多学者通过改善串行通信协议,提高数据传输效率川。然而,当前国内单片机在工业控制中的应用仍然比较落后,需要进一步完善和发展。因此,本文将在以上研究的基础上,结合实际应用需求,设计出一种基于串行总线的主从式单片机多路数据采集系统,并对其进行详细的硬件和软件设计,以验证其在实际应用中的可行性和实用性。数据采集系统进行工作的原理是:通过收集传感器所探测到的模拟量,并将其在数模转换模块中进行模数转换,转换为数字量。并逐步对最终获得的数字量进行数据的解析、数据的处理、数据的通信、数据的展示和数据的贮存并最后进行数据的显示。它发展于1950年

12、前后,随着各种高新技术的不断进本发展,在最近的几十年间,科学家在数据采集技术上取得了很大的进步,当前社会发展的主要趋势是数据采集的信息化。信息采集系统被广泛应用于社会生产中的各个层面。例如:石油、科研、飞行器、预测地震信息等。TDE-124C型和TDE-224C型地震数据采集系统主要用于进行中国的地震信息的系统预报。随着社会的不断发展以及我国科技水平的不断进步,为了更为准确的采集地震信息,发送地震预报,近年来,TDE-324C型地震信息观测系统又已经成功研发。它具有较大的动态范围、较高的线性度、较强的兼容性、较低的功耗并具有相较前代更高的可靠性。该系统对地震计的模拟信号进行信号放大并送至数模转

13、换器进行信号之间模拟量与数字量的转换,同时对模数转换器进行采样,所获得的数据再经滤波器进行数据处理后获得数字地震信号。数据采集系统采用24位数模转化比特率,采样频率分别为50赫兹、100赫兹、200赫兹。由美国帕斯克公司生产的一个名为“科学工作室”的新型信息采集系统,该系统主要功能是在物理实验中进行高精度的信息采集。分别由三个部分组成该系统:传感器,计算机接口和中英文软件应用。利用先进的传感技术来进行实时地信息采集,并可实时采集物理实验中各物理量的数据。计算机接口从传感器上接收其所发出的数据并将所获得的数据输入计算机,每秒最高采样速率为250000次.纵观全球,为了进行更多样化的飞行试验,全球

14、各地的科研学者也在大力促进新一代机载数据采集系统的飞速发展。例如,爱尔兰ACRA公司千禧年所推出的一款更为先进的机载数据采集系统,型号为KAM500。该系统采用16位模拟数字变换,具有高达达500K每秒的采样频率,同步时间相对误差为250ns,可形成多达100o个信道的大容量分布式采集系统。1.3 研究内容和目标本课题的研究主要内容是设计并制作一种通过串行总线进行双机通信的主从式单片机,并通过DS18B20进行三路及三路以上的数据采集功能。本单片机系统的核心选用STC89C52单片机,通过串口通信将DS18B20温度传感器所采集到的现场信息传输到单片机上。该系统能够稳定地采集多路温度信号,并将

15、数据传输到上位机。研究的目标是实现一个具有较高精度和稳定性的多路数据采集系统,为工业控制等领域的应用提供技术支持。在硬件和软件设计方面,本研究将详细阐述主从式信号采集电路的设计和程序的开发过程,并通过实验对该系统的可行性与实用性进行验证。1.4 研究方法和思路本文采用实验和理论相结合的研究方法,通过硬件设计和软件编程相结合的方式,制作了一种基于串行总线的主从式单片机多路数据采集系统。在硬件设计方面,本文包括串行通信模式、数据采集模块的设计以及DS18B20温度传感器的接口电路设计,通过实验验证了系统的稳定性和精度。在软件设计方面,本文采用C语言进行程序开发和优化,实现了主从式单片机之间的双工通

16、信和实时数据传输。通过本文的研究,实现了一种通过串行总线进行通信的多单片机,并通过DS18B20温度传感器进行多路数据采集,本文为类似系统的开发提供了借鉴和参考。1.5 本章小结本章的主要任务是介绍了本课题研究背景及其研究意义,较为具体的介绍了当前本课题的国内研究现状及其进展。并对课题所研究的内容进行了简洁的介绍,以此基础对本课题的研究方法和研究思路进行规划,并制定了研究目标。2单片机多机控制系统的基本原理2.1 单片机多机控制系统概述单片机多机控制系统是一种应用广泛的自动化控制系统,它由多个单片机相互协作完成控制任务。在该系统中,各个单片机之间通过总线进行通信,主机负责控制各个从机的工作状态

17、,从机则负责采集数据并将其传回主机进行处理U1.主从单片机通信原理如图2.1所示。图2.1主从式单片机通信原理在总线型主从多机控制系统中,主机可以向从机发送命令,从机则通过总线向主机发送数据。单片机间的通信方式有并行通信和串行通信两种,而在主从多机控制系统中,往往采用串行通信的方式进行数据交换和信息传输。采用串行通信的方式可以大大减少发送数据的线路数量,提高系统的实时性和稳定性。在设计和制作单片机多机控制系统时,需要对系统的硬件和软件方面进行设计和开发。硬件方面需要设计出适合系统实际需求的控制电路和数据采集模块,并采取适当的接口电路来连接控制芯片和传感器。软件方面则需要编写对应的程序来控制单片

18、机的工作状态,并进行数据的采集、处理和传输。综上所述,单片机多机控制系统是一种高度自动化、集成化的控制系统,具有实时性强、可靠性高、适应性强等特点。在实际应用中,通过不断改进和优化系统的设计和开发,可以进一步提高系统的性能和效率,满足不同领域的需求。2.2 DS18B20传感器DS18B20是美国DA1.1.AS半导体公司所研发出的第一片支持“一线总线”接口的温度传感器,该芯片的测温区间是55125C,测温误差在0.5C上下。可直接将现场所采集到的温度信号转化成数字信号并在处理器上处理完毕。具有912位可编程分辨率,该传感器的最小可分辨温度为0.0625C.它的优点有:微型化,低功耗,高性能,

19、抗干扰能力强,易配微处理器等。对比于传统热电偶传感器,该芯片进行温度测量获得的数据更为精确。DS18B20传感器如图2.2所示。图2.2DS18B20传感器由上图可以看出,DS18B20传感器共有3个有效引脚,分别为:正极引脚(VCC),负极引脚(GND)和数据输出/输入引脚(DQ)。该传感器为集成传感器,分别由64位光刻数据存储器、热电偶传感器、配置寄存器、寄生电源、高速暂存器等组成一个完整的传感器。DS18B20传感器内部结构如图2.3所示。图2.3DS18B20内部结构由于内部64位光刻ROM的存在,通过唯一的ID号,使得该传感器在多路数据采集工作中也能按需求区分出各个不同地点所测得的现

20、场温度信息。对于每个地点所采集到的温度数据,在传感器内部按照设定值进行对应的模数转换,将所测得的温度值转换成数字形式,转换方式如表2.1所示。表2.1DS18B20温度传感器数值转换表温度/二进制表示十六进制符号位数据位(11位)+125000001111101000007D0H+25.062500000001100100010191H+10.125000000001010001000A2H+0.500000000000010000008H00000000000H-0.5Illll11111111000FFF8H-10.125Illll11101011110FF5EH-25.625Illll1

21、1001101111FE6FH-55Illll100100100ooFC90H2.3 主从式单片机通信原理在主从式单片机控制系统中,主机向从机发送指令,从机接收指令并执行相应的操作,然后将操作结果反馈给主机。该控制系统采用串行通信方式进行数据传输,可以实现双向通信。在通信过程中,主机作为数据的发送方,从机作为数据的接收方。由于通信采用的是串行总线,因此发送和接收数据的速度比较慢,但是具有较高的稳定性和可靠性。主从式单片机通信的原理是通过串口通信实现的,串口通信是指通过串行线将二进制数据一位一位地传输,并在接收端将这些数据重新组合成原来的数据。在主从式单片机通信中,主机和从机之间通过一条串行线实

22、现数据的传输。主机将数据写入串行线,从机则从串行线中获得主机所传输的数据。由于主从机之间按照一定的时序进行的数据传输,所以我们规定主从式单片机的时钟频率相同,以确保数据的正确传输。在主从式单片机控制系统中,主机需要向从机发送指令,从机需要向主机反馈执行结果。主机和从机之间的数据传输需要进行同步,以确保数据的正确性。为了实现同步,主从式单片机通信采用了一种特殊的通信协议。在该通信协议中,主机发送完一个字节的数据后,还需要向从机发送一个确认信号,以确保从机正确接收了数据。从机接收到数据后,也需要向主机发送一个确认信号,以表示自己已经接收到了数据并进行了相应的操作。这样,就可以确保主从式单片机通信的

23、正确性和可靠性。2.4 串行通信模式在主从多机控制系统中,为了实现双向通信和数据传输,采用串行通信模式是一种常用的方式。串行通信是指通过一条串行总线进行数据传输的方式,数据被逐个位地传输。串行总线可以是硬件串口或者软件模拟的串口,通过串通信,主机可以向从机发送数据或命令,从机也可以向主机发送响应或状态信息。单片机间串行通信模式如图2.4所示。图2.4单片机间串行通信模式在串行通信模式中,主从双方需要严格按照一定的协议进行数据传输。通常情况下,主机作为数据的发送方,具有发送控制权,而从机作为数据的接收方,应在主机请求时即时响应并进行数据的处理。在数据传输过程中,主从双方需要协商好数据传输的格式、

24、校验方式和传输速度等参数,确保数据的可靠传输。实现串行通信需要考虑到硬件和软件两个方面。硬件方面需要设计合理的串口接口电路、时钟电路和传输线路,保证数据传输的稳定性和可靠性。在软件方面,需要编写对应的程序,实现串行通信协议、数据传输、数据校验和错误处理等功能。为了提高系统的性能和效率,可以采用中断、缓冲区和DMA等技术优化程序设计。在本文的研究中,基于串行通信的方式实现了主从式单片机多路数据采集系统的设计与制作。通过串行总线,主机和从机之间实现了可靠的数据传输和双向通信。该系统在硬件设计和软件开发两方面充分考虑了串行通信的对于数据精度和输出传输稳定性的要求,保证了双机通信时通信信息的精度和稳定

25、性,具有较高的可靠性和实用性。2.5 总线式通信模式在单片机多机控制系统中,常常采用总线式通信模式来实现主从式通信。总线式通信模式的基本原理是将所有从机连接到一个总线上,主机可以通过总线实现和所有从机的通信。总线式通信模式可以分为并行总线和串行总线两种方式。串行总线是指数据和信息通过一个传输线按位传输,传输速率比并行总线慢,但是传输距离可以更远,同时可以连接更多的设备。串行总线通常被用于连接远距离的设备或者连接大量的设备。在主从式单片机多路数据采集系统中,采用了串行总线通信模式。主机通过串口发送指令给从机,从机采集数据并将数据通过串口传输给主机。采用串行总线通信的方式可以大大简化系统的硬件设计

26、,节约成本,并且可以实现稳定可靠的数据传输。除了串行总线,单片机的相互通信还有并行通信两种方式。并行通信指的是数据和信息在多根传输线上同时传输,传输速率比串行通信快,但是传输距离比较短,同时连接的设备也比较少。总的来说,总线式通信模式是单片机多机控制系统中一种常见的通信方式,可以根据实际需求选择串行或者并行通信。在具体实现中,需要根据所选通信方式来设计系统硬件和软件,保证通信的稳定可靠。2.6 本章小结本章的主要任务是介绍了整个系统设计原理,各个模块相应的作用,以及对模块间通信方法分别进行了详细地阐述。并对主从式单片机串行通信系统的整体设计提出了思路,对各个组成模块进行分析。构造出整个系统的整

27、体框架,再从软件到硬件进行逐步的细化,最终完成本系统的设计。本章为后文进行系统设计及仿真实验打下了基础。3系统硬件设计一个系统的硬件部分构成了这个系统的整体框架,因此,本章将从系统硬件设计方面分别阐述了系统的整体框架设计,硬件方面的设计,串行总线接口的电路设计,数据采集模块设计和数据采集模块的电路设计。根据总体系统框架设计方案,本设计所用到的硬件为:STC89C52单片机,DS18B20数字温度传感器,1.CD1602显示模块。3.1 系统整体架构设计本文设计的基于串行总线的主从式单片机多路数据采集系统可分为硬件和软件两个部分。其中,硬件部分主要由主控芯片STC89C52、DS18B20温度传

28、感器、上下位机等多个模块组成,而软件部分则由C语言编写的主从式单片机程序和上位机程序组成。系统整体架构如图3.1所示。图3.1系统整体框架主控芯片STC89C52作为系统的控制中心,通过串口与上位机通信,并与多个温度传感器DS18B20实现多路数据采集。上位机通过串口与主控芯片通信,实现数据的传输和接收。系统采用串口通信方式实现主从式单片机之间的数据传输,并通过串行总线将多路数据采集的结果传输到上位机进行处理。系统硬件部分的设计主要包括主从式单片机之间的串行通信模式、数据采集模块的设计和DS18B20温度传感器的接口电路设计。软件部分的设计主要包括基于C语言的主从式单片机程序开发和上位机程序的

29、开发。通过实验验证,本文设计的基于串行总线的主从式单片机多路数据采集系统能够实时采集多路温度信号,并具有较高的精度和稳定性,具有一定的实用价值。3.2 硬件设计在本系统中,使用了STC89C52单片机作为主控芯片,并采用DS18B20温度传感器作为被控芯片进行数据采集。系统的硬件设计主要包括两个模块:串行总线通信模块和数据采集模块。串行总线通信模块采用了基于STC89C52单片机的主从式通信模式,通过串口通信方式实现上下位机之间的数据传输。主机发送命令后,从机接收到命令并进行相应的处理,将采集的数据通过串口发送给主机。通信模块的设计采用了4根引脚实现数据传输,包括数据线、时钟线、复位线和电源线

30、,其中数据线采用双向通信,时钟线由主机产生,复位线由主机控制。数据采集模块采用了多路数据采集方法,可以同时采集多路温度信号。每路温度信号的采集使用DS18B20温度传感器实现,传感器的接口电路采用了具有较高稳定性和精度的电路设计。其中,每个DS18B20温度传感器需要连接到一个单独的引脚,主机读取温度信号时,需要对每个引脚进行轮流读取。整个系统的电路设计结构清晰,能够实现较为稳定的数据采集和通信功能。在下一步的软件设计中,需要对其进行进一步的优化和调试。3.3 串行总线接口电路设计在MCS-51系列单片机中,第10号管脚RXD可用于串行数据的接受,第11号管脚TXD可用于串行数据的发送。基于此

31、,需要设计合适的串行总线接口电路,并规定进行串口通信的方式标准。在本设计中,我采用RS-232C标准。接口电路由MAX232芯片和电容组成。MAX232芯片具有收发器功能,它将单片机的TXD和RXD信号转换为RS232电平,从而实现上下位机之间的通信。同时,MAX232芯片还通过内部的电容实现信号传输时的波形整形,保证了通信的稳定性和可靠性。电容的选择需要根据数据传输的速率和传输距离来决定,一般来说,传输速率越高、距离越远,所需的电容容值就越大。在本系统中,由于传输速率较低(9600bps),距离较短(不超过10米),因此采用1UF电容即可。接口电路的设计可以参考芯片的数据手册。3.4 数据采

32、集模块设计数据采集模块是主从式单片机多路数据采集系统的核心模块之一,它对系统的性能和精度有着至关重要的影响。本系统的数据采集模块的设计包括了电3.4.1 电路设计数据采集模块的电路设计主要包括信息采集和信号放大电路两个部分。采样电路的作用是将温度信号转化为电信号,并进行滤波处理,滤除掉高频干扰信号。信号放大电路的作用是将经过滤波处理的信号放大到能够被单片机采集的电平范围。本系统的采样电路采用DS18B20温度传感器内部集成的AD转换器进行数字信号与模拟信号之间的转换,并通过总线方式将转换完成的数字信号传递至下位机。为提高信号的稳定性和可靠性,我们在总线上增加了一个4.7k欧姆的上拉电阻,并且设

33、计了一种基于滤波电容的低通滤波电路,将信号的高频部分滤去。信号放大电路采用标准的运算放大器电路,该电路采用了精密的电阻分压技术,使放大器的增益可调,并具有很好的线性度和稳定性。通过这种方式,我们可以将经过滤波处理后的温度信号放大至单片机采集器的输入范围。3.4.2 程序设计数据采集模块的程序设计主要包括温度采集程序和数据传输程序两个部分。温度采集程序用于采集多路温度信号,并对采集到的温度数据进行处理,得到最终温度值。数据传输程序用于将处理后的温度数据通过串口传输到上位机进行进一步处理和分析。在温度采集程序中,我们首先初始化单片机的总线模块,并将DS18B20温度传感器的信号传输至总线上,然后从

34、机读取总线上DS18B20所传输的信号,并将其转化成具体的温度值。为提高系统的精度和稳定性,我们采用了多次采样和平均值滤波的方法,使得采集到的温度数据具有更好的准确性和稳定性。数据传输程序主要包括了数据打包和串口发送两个部分。在数据打包部分,我们将采集到的多路温度数据按照一定的格式进行打包,并加上校验码和帧头和帧尾等信息,确保数据的完整性和正确性。在串口发送部分,我们将打包好的数据通过串口发送给上位机进行进一步处理和分析。通过以上的电路设计和程序设计,我们可以实现多路温度信号的实时采集,并通过串口将采集到的数据传输到上位机进行进一步处理和分析,从而实现了本系统的多路数据采集功能。3.5 DS1

35、8B20温度传感器接口电路设计DS18B20温度传感器是采集温度信号的重要设备,其接口电路设计需要在保证稳定性和精确性的基础上尽可能简洁。本系统的DS18B20温度传感器采用单总线接口的方式,将其中一根引脚直接连接到单片机的IO口,另两根引脚则分别连接到单片机电源和地线上。传感器与下位单片机连接方式如图3.3所示。VGND图3.3DS18B20与单片机连接方式传感器在仿真软件中连接方式如图3.4所示。图3.4DS18B20在仿真中连接方式在实际的接口电路设计中,需要考虑到DS18B20传感器的特性和需要的电路保护设计。在DS18B20传感器的接口电路中,一定要添加电容,以平滑电源,保证系统的稳

36、定性。此外,为了保护单片机对应的IO口,也需要添加热敏电阻和二极管。为了保证采集的温度信号准确性,本系统采用了RoM方式读取DS18B20传感器芯片内部的温度值,并进行精度修正。使用Rc)M方式读取温度值时,需要保证数据传输过程的稳定性和可靠性,因此,在系统的硬件接口设计中,在单片机和DS18B20传感器之间加入了弱上拉电阻和隔离电容,以确保数据传输过程的稳定和可靠。3.6 本章小结本章从硬件设计方面分别阐述了系统的整体框架设计,硬件方面的设计,串行总线接口的电路设计,数据采集模块设计和数据采集模块的电路设计。一个系统的硬件是整个系统的主心骨,而本章则为系统设计确定了框架。4软件设计基于系统硬

37、件设计确定总体框架后,将对系统软件进行设计与开发。因此,本章对本基于串行总线的主从式单片机多路数据采集系统的程序部分进行了详细的解释。分别从主控程序和被控程序两大部分分别阐述了本设计的程序部分。其中,主控程序分为初始化程序和数码屏显示程序,被控程序分为信息采集程序和信息输送程序。本章在前文的基础上为系统加入了程序,完成了整个程序的设计。4.1 软件设计简介在软件设计方面,本文采用C语言编写了主从式单片机程序,实现了系统的数据采集和主从单片机间串口通信功能。程序主要包括初始化、数据采集、下位机数据处理、串口通信和上位机数据显示五个模块。系统总体框图如图4.1所示。图4.1系统整体框图初始化模块主

38、要是对系统的硬件进行初始化设置,包括设置串口通信的波特率、开启定时器中断等。数据采集模块则是主要的功能模块,包括对多路温度传感器进行采集、处理和存储。在本文中,采用了DS18B20温度传感器进行数据采集,通过从机接口电路将传感器连接到主控芯片,实现了多路温度数据的采集。采集到的数据经过处理后,可以存储到芯片中,以便后续的数据处理。串口通信模块是主从控制系统中的重要模块,实现了主机与从机之间的数据传输。在本文中,采用了串行通信方式,通过串口将采集到的数据发送到上位机,同时也可以接收主机发送过来的命令和控制信息。通过上述三个模块的协同工作,本文所设计的主从式单片机多路数据采集系统成功实现了温度数据

39、的实时采集和传输功能。在实验验证中,系统运行稳定,数据采集精度高,满足了工业现场的实际需求。4.2 主控程序设计在本系统中,STC89C52单片机作为主控芯片,主要负责串口通信、数据采集和控制传感器等任务。主控程序的设计由上位机和下位机两部分组成。下位机程序主要完成多路温度传感器数据采集和传输任务,而上位机程序则负责接收下位机发送的数据,并进行相应的处理和显示。串行通信模块外设表如表4.1所示。表4.1串行通信外设表串行通信模块外设表发送/接收忙标识1字节或1位发送接收标识1字节或1位通讯任务的任务号1字节发送/接收数据块动态指针1字节数据块结束标识字计数1字节下位机程序主要分为初始化、数据采

40、集和串口通信三部分。在初始化过程中,需要对串口通信模式、数据采集模块和温度传感器接口等进行配置和初始化。在数据采集过程中,主控芯片通过DS18B20温度传感器采集多路温度数据,并进行相应的转换和校验处理。最后,下位机程序通过串口将采集到的数据发送给上位机程序。下位机控制传感器流程图4.2如所示。图4.2下位机控制传感器流程图上位机程序主要分为串口初始化、串口数据接收和数据处理三个部分。在串口初始化过程中,需要对串口波特率、校验位和停止位等进行设置。在串口数据接收过程中,主控芯片通过串口接收下位机发送的数据并进行相应的数据解析和处理。最后,上位机程序对接收到的数据进行进一步处理并在图形界面中进行

41、显示和分析。串行通信中断流程图如所示通过以上程序设计,主从式单片机多路数据采集系统可以实现稳定的下位机和上位机之间的双向通信和数据传输,从而实现多路温度数据的实时采集和处理。4.3 从控程序设计从控程序的设计是保证整个主从式单片机多路数据采集系统正常运行的重要环节。本文中的从控程序是基于STC89C52单片机的,主要实现将串口接收到的指令进行解析并完成对DS18B20温度传感器的采集。DS18B20温度传感器是从控程序需要采集的数据源,传感器使用单总线接口连接到单片机上。从控程序中需要对DS18B20传感器进行初始化,包括发送复位信号和发送读取温度命令,并读取传感器的反馈数据。读取到的数据需要

42、进行转换和处理,最终得到实际的温度值。从控程序通过采集DS18B20温度传感器的数据,并将数据打包发送给主控程序进行处理和存储。数据打包采用的是固定长度的数据包格式,其中包含了从控程序的地址、数据类型、数据长度和实际数据等信息。数据包发送的过程中需要进行CRC校验,保证数据的可靠性和完整性。单片机进行分布式数据采集接收流程图如图所示。通过以上的设计和实现,从控程序可以完成对DS18B20温度传感器的多路数据采集,保证数据的精确性和可靠性,并能够通过串口与主控程序进行实时的数据交互和系统控制。4.4 串行通讯方式的约定在MCS51单片机中,进行串口通信的方式分别有ModeO,Model,Mode

43、2和MOde3四种方式。在方式MOdeO中,单片机的RXD管脚同时进行数据的传输和接收,而TXD管脚仅仅输出系统的位移时钟。所以在本主从式双机系统中不能使用该方式。而在软件设计中,本系统未使用到串行控制寄存器SCON中的多处理器通讯控制位SM2,而多处理器通讯控制位SM2只在第二和第三个串行通信方式上才有意义。因此单片机排除了对方式1的限制。则在本系统中可使用Mode1,MOde2和MOde3方式中的任意一种串行通讯方式。而在单片机串行通信中要求无论是主机还是从机都应选择同一种串行通信方式。则在本次设计中规定使用Model串行通信方式。4.5 本章小结本章对本基于串行总线的主从式单片机多路数据

44、采集系统的程序部分进行了详细的解释。本章分别从主控程序和被控程序两大部分分别阐述了本设计的程序部分。其中,主控程序分为初始化程序和数码屏显示程序,被控程序分为信息采集程序和信息输送程序。本章在前文的基础上为系统加入了程序,完成了整个程序的设计。5系统可行性仿真及验证在进行系统硬件设计和软件设计后,可以对系统进行仿真初步验证,并通过实物对系统的可行性和系统性能进行最终的测试。本章在前文设计的基础上对系统进行最终的测试与调试,分别通过Proteus软件进行系统的模拟仿真测试,再对双机模型进行功能测试。5.1 系统测试和验证为了验证设计的主从式单片机多路数据采集系统的可行性和实用性,我们进行了系统性

45、能测试和实验验证。5.1.1 系统性能仿真测试通过对系统的性能仿真测试,我们可以在仿真中验证系统是否可以正常地采集多路温度信号,并将数据传输到上位机。我们使用了3个DS18B20温度传感器模拟多路温度信号源,并将信号通过串口传输给上位机进行处理。系统整体仿真如图5.1所示。图5.1系统整体仿真测试过程中,我们可以实时监测系统采集到的温度数据,在仿真测试结束后,通过与模拟信号源的比较,计算系统的精度和稳定性。测试结果表明,系统可以稳定地采集多路温度信号,并将数据正确地传输到上位机进行处理。系统采集的温度数据与模拟信号源的数据相比,误差较小,可达到较高的精度。同时,系统在长时间运行过程中,温度采集

46、数据也能够保持稳定,具有较高的稳定性。对系统进行不同温度数据采集显示仿真如图图5.2系统仿真结果(八)图5.2系统仿真结果(b)5.1.2 实验验证为了验证系统的实用性,我们将该主从式单片机多路数据采集系统应用于实际工作中进行了实验验证。我们将系统安装在工业现场,用于采集实时的温度数据,并将数据传输给上位机进行处理和分析。在实验过程中,我们可以通过远程监控系统,实时监测现场温度的变化情况,并进行相应的调整和控制。该系统启动时初始化显示如图5.3所示。图5.3系统初始化在系统初始化完成后,三个传感器分别检测到室温结果如图5.4所示。图5.4系统测得初始室温将电烙铁温度设置至30摄氏度,并将其靠近

47、其中一个传感器,屏幕所显示测得温度如图5.5所示。图5.5首次测量温度将电烙铁靠近另一个传感器,我们可以发现先前地点温度在逐渐下降,而当前所靠近的传感器温度在逐渐上升。第二次测量温度如图5.6所示。图5.6再次测量温度实验结果表明,该主从式单片机多路数据采集系统可以完美地满足实际工业应用的需求,具有较高的实用性和稳定性。通过该系统的应用,我们可以对现场的温度信息进行的实时的采集,并将信息传输至总站进行监控、控制和分析,使得生产效率和车间安全获得较大的提升。5.2 系统性能测试该系统性能测试结果如下:经过测试,该基于串行总线的主从式单片机多路数据采集系统具有稳定的数据采集和传输能力,能够快速准确地采集多路温度信号,并将数据传输到上位机进行处理。系统在不同环境下测试了多组数据,结果表明系统具有较高的精度和稳定性,采集误差低于0.5。同时,系统具有较好的实用性和可靠性,可在工业控制等领域中广泛应用。综上,该系统在设计和制作方面得到了很好的实现和验证,具有较高的技术水平和应用价值。5.3 实验结果分析通过实验测试,本文所设计的基于串行总线的主从式单片机多路数据采集系统能够稳定地采集多路温度信号,并将数据通过串口传输到上位机。在实验中,我们采集了3路温度信号,分别连接在3个DS18B20传感器上,通过串口传输到上位机的数据准确无误,符合实际温度值。实验结果表明,该系统具有较高的精度和稳定性

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号