基于VC++的数据监视系统

发布者:Xiangtan最新更新时间:2012-01-07 关键字:SPCE061A  VC++  远程监视 手机看文章 扫描二维码
随时随地手机看文章

引言 目前主要的监视系统软件大多是由组态软件或VB实现的。组态软件将功能模块化,对于较小的系统有一些多余的功能是用不上的,导致了资源的浪费。而VB功能有限,运行效率不高。随着Windows操作系统的普及和其强大的功能,越来越多的程序支持Windows操作系统。由于VC是微软的产品,用它来编写Windows程序有强大的程序接口和丰富的开发资源的支持,加之VC严谨的内存管理,在堆栈上良好的分配处理,生成代码的体积小,稳定性高的优点,所以VC++就成为目前程序的主流开发工具。本文主要介绍如何用VC++编写监控程序,本程序用在基于凌阳单片机SPCE061A的数据采集及无线传输系统中监视现场采集的数据。

1 .系统筐架及各部分的功能

本系统分两大部分:数据采集及发送部分,数据接收部分。如图1所示:

                               图1 系统框图

其中:数据采集部分采集外界电压值并将电压的模拟值转换成数字值。

      无线传输模块负责收发转换后的数字值。

      显示模块将数字值经过处理后显示出测量的电压值。

      数据监视部分将接收模块接收到的数据经过处理后显示出测量的电压值。

 

2 .数据监视程序的设计

   要实现数据监视的功能要解决三个问题:

   1.上位机(PC机)如何接收数据。

   2.接收到数据后如何处理使显示在屏幕上的数据更加直观。

   3.由于有测量误差,如何用软件的方法减少误差。

 

2.1 接收数据

在无线接收模块接收到远处的数据后将数据发送到上位机的串口。VC++ 6.0提供的MSComm控件通过串行端口发送和接收数据,为应用程序提供串行通信功能。当串口接收缓冲区中有字符时,可以利用 MSComm 控件的 OnComm 事件捕获并处理这些数据。在编程过程中,可以在OnComm事件处理函数中加入自己的处理代码处理得到的数据。

2.2 处理数据

从串口接收到的数据是16位2进制码。直接显示不直观,需要将其转化为电压值。

2.2.1.原始数据的格式

因为本系统采集两路数据,为了分辨电压值是哪一路的,我们将16位2进制码的最高位(第15位)设置为路数识别位,0代表第一路1代表第二路。第14位到10位数据无用为0,第9位到0位为电压数据。结构如图2所示:

图2 原始数据结构

2.2.2 数据的处理

    假设接收的16位数据为X

先判断是哪一路电压的数据:若X ≥32768(2进制数1000000000000000对应的10进制数)说明数据来自第2路。将X减去32768得到真实的电压数据Y,再通过公式运算得到测量电压值:公式为:V=Y*6.6/1024 (此公式是根据电压采集模块而定的这里就不再详述了)。若X< 32768说明数据来自第1路,直接用上述公式得出电压值V。

2.3 显示电压值

    程序将两路数据分别显示在两个文本框中。如图3所示:

图3 程序界面图

左边显示第1路右边显示第2路,先收到的数据显示在文本框的最上面后收到的数据依次排在下面,点击“清空”键时文本框清空。

2.4 减少误差

   由于电压采集模块本身有一定的阻值,电压测量值总是小于实际的值我们用软件的方法将2.2.2中得到的Y乘以一个固定的数(经过多次试验将此数定为1.023)使测量值于实际值更接近。以下是实验所得结果:

第一路A/D转换,如表1所示。

表1  A/D1转换对照表 单位:伏

实际电压

4.902

4.466

3.970

3.570

2.996

2.462

1.994

1.550

1.042

显示电压

4.9

4.5

4.0

3.5

3.0

2.5

2.0

1.5

1.0

接收电压

4.90

4.46

3.96

3.51

3.00

2.46

1.99

1.50

1.03

第二路A/D转换,如表2所示。

表2  A/D2转换对照表  单位:伏

实际电压

4.982

4.472

4.040

3.464

2.992

2.504

1.990

1.538

0.996

显示电压

5.0

4.5

4.0

3.5

3.0

2.5

2.0

1.5

1.0

接收电压

4.98

4.47

4.03

3.47

2.99

2.50

1.98

1.53

0.99

2.5 程序框图

如图4所示

图4 程序框图

3.结束语

  本文结合实际应用介绍了基于VC++的监视程序的设计过程。设计的程序具有接受数据,显示数据,纠正误差等功能。并且结构简单,运行效率高,占系统资源少,体现了VC的优越性。在误差矫正的功能上还可以针对A/D转换带来的误差设计一种算法使显示的电压值更为精确,这将在下一步的工作中的继续研究。

本文作者创新点:不同于大多数监视软件使用组态软件或VB实现,本文使用VC++编写监视程序。

参考文献

1  罗亚非等编著.凌阳16位单片机应用基础.北京:北京航空航天大学出版社,2005.

2  陈伟,陈法国,王世勋.无线数据通信技术在TPMS中的应用.武汉理工大学报,2005,27 (5):241~244

3  PTR8000.pdf.讯通科技.www.freqchina.com

4  nRF905.pdf.讯通科技.www.freqchina.com

5 丁立波,江小华,张河.基于无线数字传输技术的数据采集系统设计.无线发送/接收IC芯片及其数据通讯技术选编(2):168~171

6 施运梅,刘梅彦,杨根兴.网络资源管理研究[J].微计算机信息 2006(1);109—11
关键字:SPCE061A  VC++  远程监视 引用地址:基于VC++的数据监视系统

上一篇:单片机与LCD的串行接口设计与实现
下一篇:基于MAX114的高速数据采集系统设计

推荐阅读最新更新时间:2024-03-16 12:50

TMS320VC5402与串行A/D转换器接口设计
  随着对信号处理要求的不断提高以及DSP技术的不断发展,越来越多的工程技术人员开始采用DSP进行系统设计。美国TI公司的TMS320VC5402(以下简称VC5402)DSP具有运算速度快、功耗小和性价比高的特点,已在个人移动通信、信号与信息处理以及自动控制等领域得到了广泛的应用。该芯片提供了两个多通道缓冲串行接口(McBSP)与外部设备进行通信。它与串行A/D变换器构成的信号采集与处理系统具有硬件设计简单、可靠性好的特点。本文将详细阐述VC5402与AD73360的接口设计。   1 VC5402的McBSP   VC5402的McBSP是一种同步串行接口,支持多种通信方式和SPI协议,该串口可以根据设计者的不同需求进行配
[嵌入式]
成都成立VC基金扶持电子信息产业创业者,规模一个亿
资本,无论在任何时候,对于企业与产业发展来说,都发挥着“输血”的重要作用。 近日,天虎科技了解到,成都将有一支面向电子信息产业的VC基金成立,规模一个亿,首期募集资金5000万。 值得注意的是,这支基金的发起方,是成都知名科技园——电子科大科技园(天府园)。在聚集了一批电子信息企业的基础上,电子科大科技园(天府园)将利用多样化的科技金融服务,用资本的力量助力园区企业进一步发展。 对于当下正在加速发展的成都电子信息产业来说,作为重要产业聚集地的科技园区,电子科大科技园(天府园)既能为企业匹配各类行业资源、敢于陪伴企业成长,也肯利用科技金融手段、下大力气扶持园区企业成长,堪称是营造良好创业环境所必须要素,也足见园区对企业未
[半导体设计/制造]
基于SPCE061A单片机的二级倒立摆控制系统
1. 引言 高压输电线及杆塔附件长期暴露在野外,因受到持续的机械张力、电气闪络、材料老化的影响而产生断股、磨损、腐蚀等损伤,如不及时修复更换,原本微小的破损和缺陷就可能扩大,最终导致严重事故。因此,电力公司需要定期对线路设备进行巡检,及时发现早期损伤和缺陷并加以评估,根据评估结果安排必要的维护和修复,从而确保供电的安全可靠性。传统的人工巡检方法不仅工作量大而且条件艰苦,特别是对于山区和大江大河等的输电线路巡检存在很大困难,甚至一些巡检项目靠常规方法都难以完成。因此,采用机器人自动巡线成为保障高压输电线安全运行的一种必要手段。 高压输电线路巡线机器人属于特种机器人的研究范畴,主要完成高压供电线缆的无损探伤、悬垂绝缘子绝缘
[单片机]
基于<font color='red'>SPCE061A</font>单片机的二级倒立摆控制系统
基于TMS320VC5509 DSP的有源噪声控制系统设计与实现
摘要:介绍了有源噪声控制技术的理论基础和算法,以自适应有源噪声前馈控制系统为研究核心,选用 TMS320VC5509 DSP作为控制器,给出了系统的硬件解决方案,并用C语言编程在硬件系统上实现了基于FX-LMS算法的有源噪声实时控制。对800 Hz单频噪声的实验结果表明系统可降低噪声幅度9 dB。 关键词:有源噪声控制;自适应滤波;FX-LMS算法;前馈控制系统 0 引言 噪声污染给人们的生产和生活带来诸多不便,噪声控制的迫切性日益突出。传统控制噪声污染的方法主要采用无源控制技术(Passive Noise Control),即采用吸声、隔声等声学方法降噪。然而由于吸声、隔声材料的声衰性能随频率的降低而变差,无源降噪机制对
[工业控制]
基于TMS320<font color='red'>VC</font>5509 DSP的有源噪声控制系统设计与实现
基于LabVIEW与凌阳SPCE061A实现串口数据采集
引言 LabVIEW是一个划时代的图形化编程系统,应用于数据采集与控制、信号分析等方面,它为不熟悉文本语言编程的专业科技工作者在测控领域建立计算机仪器系统——虚拟仪器,提供了一个便捷、轻松的图形化设计环境。由于其灵活、简单易用、开发效率高等特点,正逐渐成为科技工作者进行仪器应用与开发的得力工具。数据采集是开发过程中一个重要的环节,NI公司提供了各种不同类型的基于LabVIEW的数据采集卡,但是其价格昂贵,对于小型企业、实验教学等方面仍存在着不可避免的资金问题。而市面上销售的第三方开发的数据采集卡,由于不具备对LabVIEW的直接支持,需要用户开发其驱动程序,使用也不方便。如果采用以凌阳16位单片机SPCE061A作为前端数据采集,
[测试测量]
基于LabVIEW与凌阳<font color='red'>SPCE061A</font>实现串口数据采集
Redmi K50电竞版发布:骁龙8+双VC散热+120W快充
2月17日晚,Redmi举办了手机发布会,正式推出了Redmi K50系列的首款产品——Redmi K50 电竞版,其将于2月18日10点开启首销。 核心配置上,Redmi K50电竞版采用6.67英寸120Hz柔性OLED屏,获得了DisplayMate A+认证,搭载高通骁龙8旗舰处理器,前置2000万IMX596,后置6400万IMX686主摄、800万超广角和200万微距三摄,内置4700mAh,支持120W秒充,17分钟充至100%。 此外,Redmi K50电竞版还具备磁动力弹出式肩键 2.0 和 JBL 宽频四单元扬声器(双 1115 中低音单元 + 双 0611 高音单元)、游戏 3 麦克风,首发红外 Pr
[手机便携]
基于单片机设计的通用汉字文本播音系统
嵌入式语音播放系统应用日益广泛。汉字语音播放的方法有录音芯片法、语音合成芯片法及汉字语音库法等。Flash存储器容量不断增大,利用Windows的Speech SDK可以方便地提取汉字语音文件,因此汉字语音库法得以广泛应用。   汉字语音库法可分为专用语音播放和通用语音播放两类。专用语音播放系统只存储少量固定的语音资源,只需较小的存储容量,但应用范围有限。通用语音播放系统存储所有不同读音汉字的单字语音资源,可实现任意文本组合的语音播放,适用于播放内容经常更新的场合。本系统由1220个不同读音汉字读音文件构成语音库,存于一片Flash存储器中,实现了基于SPCE061A的嵌入式通用汉字文本语音播放系统。系统硬件简单,使用方便
[单片机]
VC++中用ActiveX控件实现与单片机的串行通信
摘要:详细论述在VC++6.0中使用ActiveX控件通过串口与单片机进行二进制数据传输的具体方法。 关键词:VC++ ActiveX 串行通信 在单片机应用系统中,经常需要通过RS-232串行口与微机进行通信。目前在各种操作系统中,Microsoft的Windows较为常见,而且大多为Windows95/98等32位平台。以往在Windows平台上的串行通信多使用其提供的API函数来实现,这种方法使用起来需要许多底层设置,因而较为繁琐,并且难以理解。Microsoft推出的ActiveX技术提供了另外一种实现串行通信的方法。这种方法不仅相对较为简单,而且非常实用。尤其是Visual C++这种可视化面向对象的编程环境中,可以
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved