摘要:在计算机广泛应用的今天,在各行各业中数据采集技术在其中的应用愈发广泛。它是实现计算机与外部设备交互的桥梁。在工业,工程,生产车间等部门,特别是在对信息实时性能要求较高和恶劣的工作环境下更加体现了数据采集的重要性。由于计算机强大的计算功能,能够对检测到的数据进行分析,处理显得越来越重要,在这当中,信号的传输与交互就显得十分重要。
关键词:数据采集系统;串口通信
前言:为了提高系统的性价比,一般采用单片机来采集数据,再把数据传给计算机进行处理,通过串口通信来实现PC机(上位机)与单片机(下位机)的通讯,开发VC界面来实时显示和监控采集到的数据。本设计是基于串口通信的数据采集系统的设计包括上位机部分和下位机部分。单片机系统硬件部分的主要核心,还包括A/D模数转换模块,显示模块和串行接口部分。设计串口通信的数据采集系统,实现对电压模拟量的采集与传输。这一优越的性能在工业,工程,生产车间等部门,以及在信息实时性能要求较高和恶劣的工作环境下也能准确的采集所需的信息数据。
1系统总体设计思路
本数据采集系统设计,单片机是系统硬件部分的主要核心,还包括A/D模数转换模块,显示模块和串行接口部分。该系统的下位机负责数据采集并应答主机的命令。系统通过模数转换器对采集到的数据进行模拟量到数字量的转换,并将转换后的数据通过串行口RS-485传输到上位机,由上位机负责数据的接受、处理和显示,并用LCD液晶显示来显示所采集的结果。
本数据采集系统可以采集四路模拟信号。系统把模拟电压信号转换成数字信号,由单片机串口经过TTL电平转换后,发送到PC机由PC机处理采集的信号。其中:
STC89C52(主控芯片):CPU作为该系统的核心控制芯片,起采集、控制显示的作用。
模数转换模块:采用ADC0832进行模拟信号到数字信号的转换,以供给单片机采集数据。
显示模块:采用LCD12864液晶显示器来显示采集到的数值。
通信模块:采用RS-485标准实现单片机与PC机间的通信。
2系统硬件设计
本系统硬件部分是以STC89C52单片机为核心,还包括A/D模数转换模块,RS485串口通信模块,按键模块和LCD12864显示模块。
(1)单片机最小系统
单片机最小系统的设计是本设计的核心,通过其外围电路实现了数据的处理及各种控制功能。它要正常工作必须具备3个条件,首先供电要正常,其次是复位电路和晶振电路要工作正常。
1.电源与接地端:STC89C52单片机的40脚为电源端,接+5V的电源;20脚为接地端。STC89C52由于只需访问的内部程序存储器,故/EA接+5V。
2.复位电路:复位电路使单片机初始化操作,作用是使CPU和系统中其它部件在通电的瞬间都处于一个确定的初始状态,并从这个状态开始工作。本系统采用人工复位电路,在RESET端接一个按钮与电容并联至Vcc(+5V)和一个电阻至接地端。这样按一下开关就会在RESET端出现一段时间的高电平,至使器件复位。
3.晶振电路:图中Y1为12MHz晶振,C4、C5为20pf瓷片电容。晶振主要是决定所产生的时钟频率,电容C4、C5的作用有两个:其一是使振荡器起振,其二是对振荡器的频率f起微调作用。
(2)串口通信模块
本设计采用RS-485标准实现单片机与PC机间的通信。RS-232虽然是现在最常用的串行通讯接口。但由于RS-232接口标准出现较早,难免有一些不足之处,主要表现在以下几个方面。
1.接口的信号电平值较高,易损坏接口电路的芯片,而且与TTL电平不兼容,故需经过电平转换后才能与TTL电路连接。
2.传输速率比较低,在异步传输时,波特率仅为20Kbps。
3.接口使用一根信号线和一根信号返回线构成共地的传输形式,这种共地传输方式容易产生共模干扰,所以抗干扰性弱。
4.传输距离短,最大传输距离的标准值是50英尺,实际传输距离仅在50米以内。
RS-485串行总线接口进行数据通信的方式为平衡发送和差分接收行,这种通信方式接口信号的电平比RS-232低,不易损坏接口处电路的芯片,且电平与TTL电平兼容,方便与TTL电路连接,该接口将平衡驱动器和差分接收器组合起来使用,抗共模抗干扰能力增强,最大传输速率可以达到10Mb/s。
期刊文章分类查询,尽在期刊图书馆RS-485接口在总线允许的情况下最多可连接128个收发器,即一个处理器可处理128个采集点的信号采集,达到实现数据高速远距离传送的目的,这是其他串口通信方式(如I2C总线和RS-232等)所做不到的。
相比之下RS-485具有良好的抗噪声干扰性,长距离传输和多站能等优点,因此本设计使用RS-485实现串口通信。
3系统软件设计
本设计软件部分选择用Keil编写各模块的程序。主控程序由模数转换子程序,数据显示子程序,串口发送子程序,上位机界面设计四部分组成。
3.1主控程序设计
该部分的程序包括四个子程序分别为模数转换子程序,数据显示子程序,串口发送子程序,上位机界面设计。
(1)模数转换程序
本设计基于串口通信的数据采集系统,模数转换模块用ADC0832芯片,将采集到的模拟电压量,经过ADC0832处理转换成数字量。
(2)LCD显示程序
本设计采用LCD显示模块选用的硬件器件是液晶显示器LCD12864。它是便携式电子设备常用的芯片,软件设计也不难,类似于平常用的数码管LED显示。LCD显示的主要是开关量和在负载上采集的电压值。具体方法是,把数字值的每位都分离出来,转化为数组元素,再调用发送数据子程序进行发送显示,最后显示设计要求的电压。
(3)串口通讯
本设计采用RS485串口通信传输协议。初始化后打开串口,串口开始接收传输的信息量,根据RS485串口通信协议对接收的信息进行处理,并把处理好的数据添加到数据库同时在界面实时显示出来。
3.2上位机界面设计
上位机是指人们可以直接发出操控命令的计算机,一般情况下是指PC机。本设计的上位机是用来通过串口接收电压采集器传送过来的数字电压值,并在上位机软件界面上显示出对应电压值数据。本设计采用VC++6.0的MFC制作数据采集器的上位机数据接收软件。可以实现标准的Windows界面应用程序,使用方便,功能强大。
4调试与分析
4.1串口通信模块的调试
方法:奇偶校验位。
在串行通信中,有四种简单的检测错误的方法:偶、奇、高、低。当然,你可以不用校验位。在校验偶与奇的情况下,串口会设置校验位(数据位后面的一位),使用一个值来确保发送的数据具有偶数或奇数逻辑高位。例如,如果数据是011,那么对于偶数测试,校验位0确保逻辑高位的数目是偶数。如果这是一个奇数检查,检查位是0,所以有三个逻辑高位。高位和低位并不真正检查数据,只是定位逻辑高或逻辑低的检查。这使得接收设备能够知道一个位的状态,从而有机会判断是噪声干扰了通信,还是传输和接收的数据不同步。
4.2显示电路的调试
该电路的调试所需要设备:PC机、ISP软件。
首先需要将显示电路的各个接口与STC89C52最小系统板连接,利用仿真头作为最小系统的单片机,通过编程、烧程序,直接观察电路中LCD的正确显示来确定电路功能的实现。
在焊接的过程中,要先分析电位器的引脚哪个是活动脚。在调试中,假如LCD不亮或者是亮度不够,可以调电位器。
5总结
在本系统的设计与制作过程中,通过单片机STC89C52做CPU进行总的控制,通过模数转换器ADC0832对采集到的电压数据进行模拟量到数字量的转换,并将转换后的数据通过串行口RS-485传输到上位机,由上位机负责数据的接受、处理和显示,并用LCD液晶显示来显示所采集的电压结果。
参考文献:
[1]LabVIEW平台上的心音分析虚拟仪器设计[J].张会香,成谢锋.计算机技术与发展.2010(11)
[2]基于Win32API的通用串口通信组件的开发[J].丁国兴,高琴,高伟.工业控制计算机.2013(11)
[3]多线程串口类在实时数据采集系统中的应用[J].申晓宁,赵毅强,张进,檀柏梅,张伟.计算机时代.2010(01)
[4]基于LabVIEW的单片机串口通信设计[J].陈诚,李言武,葛立峰.现代计算机(专业版).2009(01)
[5]基于LabVIEW串口数据采集系统设计[J].赵奇峰,闵涛,杨黔龙,田亚军.计算机技术与发展.2011(11)
[6]浅谈计算机通信传输控制技术[J].雪娟.计算机光盘软件与应用.2014(14)
论文作者:潘虹光
论文发表刊物:《基层建设》2020年第1期
论文发表时间:2020/4/20
标签:串口论文; 数据论文; 单片机论文; 上位论文; 通信论文; 电路论文; 模块论文; 《基层建设》2020年第1期论文;