利用单片机实现多路电压信号采集系统的设计

发布时间:2018-05-7 阅读量:780 来源: 我爱方案网 作者:

引言

在工业生产中,需要将环境和状态的变化由传感器转换为电压信号,再由监控设备完成对电压信号的数据采集和监控。传感器的信号处理在监测点完成,处理后的结果经RS485网络传送到监控计算机。这样把监控工作分散到各地,而对监控结果集中管理,所形成的分布式监控系统可有效减少因工业强噪声干扰和传输距离的增加所带来的信号失真。

1 系统构成

本监控系统下位机的核心部分为MEGA8单片机。MEGA8单片机内置lO位的A/D转换器。

故可不用外接A/D转换器。当多路电压信号由多路转换器(CIM051)进入单片机后,即可对多路电压信号进行A/D转换和数据处理,完成数据采集。

可根据处理的结果进行报警操作,也可通过RS485网络同监控计算机进行通信,以实现分布式监控。

系统结构如图1所示。此系统的监控计算机程序使用VB开发,单片机程序使用c语言开发。本文主要讨论单片机如何对多路电压信号进行采集,以及采集的数据如何由单片机经RS485网络传送给监控计算机,以及如何编制CheckSum效验码以实现错误检查。



2 数据采集

数据采集工作完全是在下位机进行的,可通过对单片机编写控制程序已完成信号的采集和处理任务,主程序流程如图2所示。


除主程序外,程序中还设置了实现多路信号巡检的1 s中断程序模块;将A/D转换结果送人单片机进行处理的A/D转换完成中断程序模块;实现数据串行传输的USART中断程序模块;以及实现按键报警,数据处理等功能的子程序模块。

A/D转换结束后,在ADC数据寄存器中可以取得转换的结果,对于单端输入的A/D转换,其转换结果为:

其中,Vin表示选定的输入引脚上的电压,Vref表示选定的参考电源的电压。0x000表示输入引脚的电压为模拟地,Ox3FF表示输入引脚的电压为参考电压值减去一个LSB。

3 串行通信协议

监控计算机与单片机的数据交换包括如下3个步骤。

(1)单片机要发送数据时,计算机会发送一组字符串过去。该字符串的第一个字符是前导码,单片机根据前导码辨认是否应该读取该字符串,该字符串属于哪一个命令集。

在前导码之后是站号,通常以两个字符代表,以RS-485进行网络连接,需要用站号来辨别命令是属于哪一个设备。站号之后是要解读的命令或数据。

(2)当单片机收到要求字符串,并经过辨读确定后,便会送出计算机所要求的数据。同样,数据被送出时会在数据之前加上前导码与站号,计算机也有由此辨别数据来自何处。

(3)计算机端收到单片机发送回来的字符串,即进行解读检查的操作。当检查完成后,再送一个确定的字符串给单片机,用以说明计算机端已成功收到字符串;而若发送失败,计算机也在该回送的字符串中要求单片机重新发送数据。

另外数据发送时,一般会加上错误检查机制,最常用的方法是将字符进行运算,而在字符串的最后加上CheckSum字符,收发双方利用Check-Sum字符的检查判断字符串的正确性。

本系统设计的数据格式为:


其中,前导码为一个字节;站号为一个字节;命令/数据为一个字节;数据长度为一个字节;数据内容为几个字节;CheckSum校验为两个字节;结束标志位为一个字节。

4 通信软件的实现

4.1 监控计算机通信软件的实现

利用VB提供的具有强大功能的通信控件MsComm,可设置串行通信的数据发送和接收,串口状态及串口通信的数据发送和接收,以及串口状态和串口通信的信息,格式和协议。监控计算机的通信流程如图3所示。


4.2 单片机通信部分的软件实现

ATMEGA8单片机带有一个全双工通用同步/异步串行收发模块USART,该接1:3是一个高度灵活的串行通信设备。单片机的通信流程如图4所示。


4.3 CheckSum的使用

使用了outCheckSum和inCheckSum子函数以实现CheckSum计算。第1个函数(outCheckSum)用于处理所要发送的字符串,只要将所要发送的字符串传人,返回的结果的结果字符串即是作完CheckSum处理。第2个函数(inCheckSum)用于处理接收到的返回字符串,只要将所收到的字符串传人,返回的结果字符串即是做完CheckSum检查,并去除校验和与结尾字符。

5 结语

以上提出的单片机和监控计算机的软硬件设计已在实际中得以应用。数据的采集及单片机和监控计算机之间的通信快速准确,效果良好。可见上述多路电压信号的采集和分布式监控系统的设计方案是可行和可靠的。


以上就是小编为大家介绍的有关“利用单片机实现多路电压信号采集系统的设计”的相关知识,有想了解更多的朋友可以看以下相关文章。希望通过小编的介绍能给大家带来帮助!


利用单片机实现多路电压信号采集系统的设计”的相关文章:


基于STM32的多路电压采集的设计与实现-原文链接: 
http://www.52solution.com/knowledge/5646.html

相关资讯
无源晶振YSX321SL应用于高精度HUD平视显示系统YXC3225

在现代汽车行业中,HUD平视显示系统正日益成为驾驶员的得力助手,为驾驶员提供实时导航、车辆信息和警示等功能,使驾驶更加安全和便捷。在HUD平视显示系统中,高精度的晶振是确保系统稳定运行的关键要素。YSX321SL是一款优质的3225无源晶振,拥有多项卓越特性,使其成为HUD平视显示系统的首选。

拥有卓越性能的高精度超薄低功耗心电贴—YSX211SL

随着医疗技术的进步,心电监护设备在日常生活和医疗领域中起到了至关重要的作用。而无源晶振 YSX211SL 作为一种先进的心电贴产品,以其独特的优势在市场上备受瞩目。

可编程晶振选型应该注意事项

对于可编程晶振选型的话,需要根据企业的需求选择。在选择可编程晶振的时候注重晶振外观、晶振的频率、晶振的输出模式、晶振的型号等等,这些都是要注意的,尤其是晶振的频率和晶振输出模式以及晶振的型号都是需要注意的。

性能高的服务器—宽电压有源晶振YSO110TR 25MHZ,多种精度选择支持±10PPM—±30PPM

在现代科技发展中,服务器扮演着越来越重要的角色,为各种应用提供强大的计算和数据存储能力。而高品质的服务器组件是确保服务器稳定运行的关键。YSO110TR宽电压有源晶振,作为服务器的重要组成部分,具备多项优势,成为业界必备的可靠之选。

差分晶振怎么测量

其实对于差分晶振怎么测量方式有很多种,主要还是要看自己选择什么样的方式了,因为选择不同的测量方式步骤和操作方式是不同的。关于差分晶振怎么测量的方式,小扬给大家详细的分享一些吧!