基于GSM通信的SZF型波浪浮标接收系统
此外,显示界面还提供了加密门限值和安全距离设置操作。加密门限值以"十分之一大波波高"特征值作为比较参数,当标准测量测得的十分之一大波波高大于加密门限值时,自动转为加密状态;安全距离设置可以选择5种报警距离,一旦浮标相邻2次测量时间内,浮标移动距离超过设置距离,超位报警灯会显示红色以示报警。
3.3数据存储
数据接收后存储选择Windows的access数据库,access数据库是一种桌面数据库,适合中小型数据量的处理,在处理中小量数据时效率很高,而且简洁方便。考虑到SZF型波浪浮标作为一种小型海洋监测仪器,数据量比较小,所以选用access数据库能更好更快的存储/查询数据。
本文采用ADO方式方式访问access数据库,ADO使用存取数据源的COM组件,它提供了编程语言和统一数据访问方式OLEDB的一个中间层。允许开发人员直接编写访问数据的代码,降低了开发难度。
为了使用COM组件,必须在CWinAPP::InitInstance()函数中初始化COM库:
CWinApp::InitInstance()
{
…
AfxOleInit();
…
}
然后需要引入ADO类型库,需要在stdafx.h文件中加入:
# import"c:\program files\common files\system\ado\msado15.dll"
no_namespace rename("EOF","adoEOF")
这样就可以连接数据源了,再对access数据库使用SQL语言操作来进行存储数据。
3.4数据查询
本系统提供月查询,在实时显示界面点击"数据查询",会出现数据查询对话框,可选择一个月份进行数据查询,包含所有的检测数据,界面如图6所示。
4结语
本系统经过实践测试证明,MSComm控件能良好的接收模块发送的串行口数据,通信信号良好,存储数据完整。使用VC++编写的上位机接收界面友好,方便监测人员实时观测数据和查询历史数据。通过一段时间的运行使用,很好的达到浮标岸站接收系统要求,并预留了上传通信接口,以后可以方便的扩展数据向高一级数据中心传输的功能,提高了系统的使用寿命。