建筑物沉降观测数据自动处理系统设计与实现
摘 要
本文对沉降监测项目的全过程进行了详细的阐述,同时也对各个步骤中
用 VC++编程软件进行程序设计,达到自己设计软件来解决工作生产中遇到
的问题。
关键词:沉降监测,VC++,ObjectARX,平差计算
KEY:Sinking Observe,VC++,ObjectARX,Adjust Calculate
目 录
摘 要
概 述.……………………………………………………………………
1
意义…………………………………………………………………………2
发展现状…………………………………………………………………3
系统模块定义………………………………………………………………5
编程工具软件介绍…………………………………………………………6
数据获取与处理…………………………………………………………4
2.1 观测点位布
设……………………………………………………………5
2.2 野外观
测…………………………………………………………………6
2.3 数据格式转
换……………………………………………………………7
2.4 生成水准测量观测手
簿…………………………………………………8
计 算……………………………………………………………………9
致 谢
参考文献
附 录
第 1 章 引 言
1.1 定义
沉降观测是建筑变形测量中的一项内容,是通过周期性的对建筑物上设
置的观测点进行高程观测,将各次数据进行比较分析得出建筑物在近阶段发
生的沉降量,用以判断建筑沉降情况稳定与否。一般包括建筑物沉降观测、
基坑回弹观测、地基土分层沉降观测、建筑场地沉降观测。观测完成后要提
供以下成果:沉降观测成果表、沉降观测点分布图及各周围沉降展开图、(沉
降速度、时间、沉降量)曲线图、(荷载、时间、沉降量)曲线图、等沉降
曲线图、沉降观测分析报告。
1.2 意义
近年来,随着我国经济建设的飞速发展,各地都在加快城镇化建设,使
得城镇土地资源紧张问题日益显现。为了进一步提高土地资源的利用率,为
了满足城镇化过程中对居住房屋的需求,住宅、办公楼房由 6、7 层多层建
筑为主,转而以 20 甚至 30 层为主的小高层,甚至是 80、90 层高层建筑,
已经发展到多层建筑在一些在中城市都变成稀有建筑了。这给城市规划、建
筑设计、建筑施工及建筑管理带来了不少问题和难题,因为建筑体量大了、
建筑高度高了,必然会给建筑基础及其周边区域带来影响,如何监测这种影
响,使这种影响变得可预防、可控制,这就是建筑物变形监测的问题。变形
监测包括位移监测、沉降监测、挠度监测,本文所要阐述的内容是关于建筑
物沉降监测的一系列方式方法的问题。采用沉降监测手段可以得出一个观测
周期里建筑物的沉降量,为后续的施工提供依据。
沉降观测的任务是长期而具有周期性的工作,对观测点进行重复性观
测,求得其在两个观测周期间的变化量,监测建筑物在施工和运营管理期间
是否存在超出设计要求的变化量,若有,其程度如何,发展趋势是怎样,需
要采取什么措施等,均依赖于测量工作和提供的准确的信息和预测。但很多
施工单位,甚至建设单位都不注意沉降监测的工作,或者是为节省建设费用
而不进行沉降监测,造成不可挽回的损失。例如 1999 年 1 月綦江县彩虹桥
整体垮塌,2009 年 6 月上海市闵行区莲花南路 13 层在建楼倒覆,造成巨大
损失及不良的社会影响。
目前我国对大坝或者是桥梁采用近景摄影测量、静态 GPS、RTK 或传
感器动态监测方法,而小高层、高层建筑的沉降监测,由于受卫星信号及建
筑本身的遮挡,不能采用 GPS 等方法,而一般采用大地测量方法来进行。
本文所阐述的沉降监测方法是大地测量方法进行的,水准仪采用徕卡
DNA03 电子水准仪,标尺是铝合金条码尺,观测过程简单高效,自动记录,
自动计算,避免了人工记录计算容易出错的问题。
1.3 现状
在城镇发展过程中,高层建筑多了,必然给沉降监测带来一定的市场,
同时给城市测量也带来了一个新的经济增长点。如果每年都有三四十个工程
要求进行周期性的沉降监测,这必然带来大量的数据处理、计算、比较、分
析的工作,给测绘工作者带来大量繁锁的体力和脑力劳动。为了减少工作量,
实现计算机半自动甚至自动处理,也是在多年工作中不断探索,利用当今热
门的开发工具,开发了这套沉降观测数据自动处理系统,并且在工作中得到
了应用。
1.4 开发工具介绍
目前外业工作量,即野外观测过程中的数据实现了自动记录自动计算的
方法,能否在内业数据处理过程中也实现半自动或自动的方法,减轻人工处
理的繁锁工作。本系统采用了三个开发工具,一个是 VC++2010,一个是
ObjectARX2012,还有一个是 Microsoft Excel 11.0 Object Library <1.5>。应
用 VC++2010 编程工具设计了沉降观测数据的自动处理,包括单一水准路线
平差及测站观测点位高程计算,及与前期数据的比较;同时又使用
ObjectARX2012 工具软件编写了一个沉降点的沉降量与时间关系的曲线图
自动绘制软件;而 Microsoft Excel 11.0 Object Library <1.5>主要用于水准观
测手簿自动填写与计算。下面对这三两个工具软件作一个简单的介绍。
Microsoft 公司于 2009 年推出了一套面向 Win7 64bit 软件开发工具集
—Microsoft Visual Studio 2010,VC++2010 就是其中的一个套件,它是一个
彻底的程序员级的开发环境,“可视化”的设计减少了不少编程工作量。利
用 VC++2010 几乎可以设计一切,小至应用系统,大至开发工具。作为
Windows 环境下优秀、正宗的 C++编译器的 VC++2010 进一步成为软件开发
人员强有力的工具。VC++是汇集 Microsoft 公司技术精华的主流新产品,它
不仅全面贯彻了面向对象技术,而且在编译优化技术方面较其他同类产品具
有明显优势。
Autodesk 公司是目前世界上比较成功的 CAD 领域的开发商,其开发的
AutoCAD 一直是 CAD 市场中的主流产品。随着 AutoCAD 的日益普及,在
其上进行二次开发的工具也相继由该公司推出。ObjectARX 2012 64bit
(AuotCAD Runtime eXtension)—AutoCAD C 语言开发系统,是
AuotCAD2012 最显著的功能之一,在 AutoCAD2012 中这一功能得到了进一
步的增强。ARX 提供了以 C++为基础的面向对象的开发环境及应用程序接
口,能真正快速地访问 AutoCAD 图形数据库。它的许多特性能够实现原来
开发环境难以实现的功能,提高了开发效率。ARX 代表着 AutoCAD 的发展
方向,成为新一代应用软件开发的首选工具。
开发 ObjectARX 程序所需要的环境包括 ObjectARX 所提供的 SDK(开
发工具包)及支持 ARX 和 AutoCAD 2012 平台的操作系统和编译开发工具。
ObjectARX 所提供的 SDK 拥有一系列面向对象的 C++类库及编程界面,用
户可以方便地编制 AutoCAD2012 上运行的 ARX 程序。ObjectARX 的类库
有一系列的通用工具,用户利用 AutoCAD 平台开放性的特点,凭借这些工
具可以直接访问 AutoCAD 的图形数据库结构和图形系统,同时还可以自定
义内部命令。另外,设计这些类库时考虑到与 AutoLISP 及 ADS 应用程序的
兼容性,因而开发人员可根据自已的需要及编程经验来选择相应的开发工
具。
1.5 模块简介
应用 VC++2010、ObjectARX2012 及 Microsoft Excel 11.0 Object Library
<1.5>开发包括以下几个模块:原始数据转换、数据处理、数据分析、沉降
曲线绘制。其中原始数据转换模块主要用于对外业观测数据转换成通用的能
让后续模块使的数据,实现野外数据采集的硬件无关性,不管仪器设置是那
个型号或厂家的观测记录的数据经过这个模块处理后都能供后续数据处理;
数据处理模块主要对转换后的观测数据进行计算,一个是水准测量观测手
簿,一个是水准测量线路平差,再一个就是计算水准测量测站数据得到观测
点高程;数据分析主要是完成基准点、观测点不同时期时测量的高程进行比
较,得到每个点位的本期高程变化量及累计变化量,为工程建设施工提供可
靠的依据;沉降曲线绘制主要完成观测点沉降量与时间关系的曲线自动绘
制,更明了的显示每个点的高程变化过程。在后续的各个章节里详细阐述每
个模块开发原理。
1.6 基本工作流程
收 集
资 料
踏勘选点
埋设点位
线路观测
测站观测
数据转换
数据转换
线路计算
否
合格?
是
测站计算
是
基准点分析
监测点分析
沉降曲线绘制
沉降监测报告
数据存储
沉降监测项目基
本工作流程图
第 2 章 原始数据转换
2.1 外业数据说明
目前运用大地测量方式进行的沉降监测,一般都是采用水准测量方式进
行的,通常的做法是在沉降监测周边布设 3 个以上稳固的点,也叫基准点,
在沉降监测范围内为了监测方便而布设一些工作基点,再加上建筑物上承重
墙或柱上的观测点组成了本沉降区域内的点位组成系统,具体的布设方法可
以参照《沉降监测规范》和《建筑施工设计规范》。一般将基准点、工作基
点组成一条闭合的水准路线进行水准线路测量,根据监测工程精度要求来决
定是采用三等或是四等水准测量来进行观测,我们一般采用四等水准测量来
观测。而观测点的观测则采用以工作基点的起算点的测站水准测量来观测。
由此产生了两种观测数据,一个是水准线路测量数据,一个是测站水准观测
数据,然而由不同仪器观测记录的数据它们的数据格式也是不同的,但对于
一个面向对像的软件系统开发来讲,我们只要将不同格式的原始数据转换成
统一的数据来处理,就可以减少后续编程的工作量了,比如本软件只需要提
取出每一观测所记录的点名、视距、中丝读数,这样容易形成一个数据类来
处理,不管是水准线路数据还是测站数据都是由以上 3 个数据组成的,其它
的像中丝读数差、高差互差、高差、高程、视距差、视距累积差、视距长度
我们都可由这 3 个数据组成一个测站数据来计算获得。由此就不存在是徕卡
仪器还是拓普康仪器的区别,实现与硬件无关。
一般仪器传出到电脑里的数据都是采用明码格式的,因此,只要熟悉文
件读写操作就能完成本模块的编程工作,本文采用 VC++2010 软件开发这个
模块,以下徕卡 DNA03 为例来说明数据格式转换问题。
2.2 徕卡原始数据转换
一般徕卡仪器传出来两种格式的数据,一个是线路测量的数据 mdb 文
件,一个是原始数据 Gis 文件,这两个文件都是明码格式的,mdb 文件主要
用于纯水准线路测量中,而 Gis 文件存储了整个工作过程的数据,包括线路
水准测量和测站水准测量数据,因此本模块就是要将 Gis 文件转换成通用的
一般数据格式,即剔除冗余数据,仅留下点名、视距、中丝读数。Gis 文件
格式参见附录。
由格式文件知,只要取的是 32…8 行的数据,而其它像 571.08、572.08、