D0I:10.13374/j.issn1001-053x.1994.s3.038 第16卷增刊 北京科技大学学报 Vol.16 1994年10月 Journal of University of Science and Technology Beijing 0ct.1994 露天矿地测采剥计划CAD系统 的开发与实践 孙豁然 余静 郑贵平 (东北大学) 摘要根据开发露天矿地测采剥CAD系统的实践,讨论了开发此类软件的方法、数据结构 和可组装通用模块等问题。 关键词地测CAD系统,原型化法,数据结构,模块 Developing and Pracice of CAD System for Open-Pit Sun Huoran Yu Jing Zheng Guiping ABSTRACT The author summarizes the problem in diveloping software,according to the practice in developing CSMP CAD system of open-pit.Such as selecting adapted developing method,rational data structure and developing perfect function assemble model block etc.It can be used as reference and direction in perfecting adn developing. KEY WORDS geology survey mining plans CAD system,prototypical method,data sturcture,model block 作者参加了七五攻关项目《大型露天矿计算机管理信息系统》的研究中的“地测管理 计算机系统”和“年季采剥计划计算机管理系统”、“抚顺西露天采矿设计计算机系统”和 “唐钢棒磨山地测采剥计划计算机辅助设计系统”的开发与研制工作,有机会接触到露天矿 两类不同的设计方法和不同的计算方法并通过各种调查、摸索、完善将其成功地用软件来 实现。 1 硬件装备 ·1994-06-14收稿第一作者男,49岁,副教授
第 卷增刊 年 月 北 京 科 技 大 学 学 报 露天矿地测采剥计划 系统 的开发与实践 孙豁然 余 静 东北大学 郑贵平 摘 要 根据开发露天矿地测采剥 系统的实践 , 讨论 了开发此类软件的方法 、 数据结构 和 可组装通用模块等问题 。 关键词 地测 系统 , 原型 化法 , 数据结构 , 模块 一 “ “ “ 护 , 一 , , , , 作者参加 了七 五攻关项 目 《 大型露天矿计算机管理信息系统 》 的研究 中的 “ 地测管理 计算机系统 ” 和 “ 年季采剥计划计算机管理 系统 ” 、 “ 抚顺西露天采矿设计计算机系统 ” 和 “ 唐钢棒磨山地测采剥计划计算机辅助设计系统 ” 的开发与研制工作 , 有机会接触到露天矿 两类不 同的设计方法和不 同的计算方法并通过各种调查 、 摸索 、 完善将其成功地用软件来 实现 。 硬件装备 一 一 收稿 第一作者 男 , 岁 , 副教授 DOI :10.13374/j .issn1001-053x.1994.s3.038
·12· 北京科技大学学报 在我国一般沿用的硬件布置,如图1所示。 其中大屏幕显示图形,显示器显示提示和文本内容。近些年来由于大屏幕价格较贵,且 由于高分辨显示器(1024×1024)的出现,已有逐步被高分辨率的单屏幕所代替的趋势。地 测采CAD需要人机对话以及结果说明和各种操作提示,目前仅有一个屏幕尚有一定的困 难。滚筒式绘图仪一直是人们在配置时的优先选择。从使用的效果来讲,选用平板式绘图 仪较好,但对于图只能采用滚简式绘图仪。主机采用486机或更新的586机,以提高处理 速度和满足市场上新的通用软件关于内存与屏幕的要求。 显示器 数字化仪 大屏幕显示器 主机 打印机 绘图仪 图I地测CAD硬件配置 2软件类型 基于以上硬件的配置,各个研制单位开发了多种地测采矿CAD软件,根据其使用情况 可大致分为3类:1)完全用高级语言自编软件;2)完全在绘图软件包如AUTOCAD,GKS 等运行:3)高级语言与绘图软件包组装。下面就其研制开发难度与优缺点分别进行说明。 2.1完全用高级语言编程的软件系统 完全用高级语言编程实现的软件系统占有外存少,所需内存少,速度快等优点。例如 由高级语言形成的顺序随机文件为69K左右,而形成.DWG文件达到800K左右,文件增 大了10倍。而好多新的软件包需较多的内存,使较低型号的微机难应付。此外采用此软件 方案与当时AUTOCAD版本低,功能差也有直接关系。此软件系统存在以下问题: 1)编程劳动量大:由于是完全用高级语言来实现,这就需要对每一个外设的性能和命 令均要有比较深入的了解。例如大屏幕显示的命令、绘图仪的绘图命令等都要自己进行开 发和研制。为了能在绘图仪上写出较满意的汉字就要对点阵汉字库有较深人的了解,然后 编程实现之矢量化,再由绘图机输出需要化很大的时间。 2)返工量大:地测采CAD系统最后的成果是以图表的形式体现的,因此无论事先进 行多详细的设计都可能由于某种原因出现偏差,而这一细节的偏差可能是现场工作不能容 忍的,必须返工。例如由绘图仪输出的图纸,南芬与西露天矿均做了多次返工。现场的人 员以为增加一项内容十分简单,而对编程人员来讲也许是非常困难的。 3)系统调查工作量增大:就输出图纸来讲,就需有同类图纸的多幅,分析其共同和个 别情形,分别进行调查与处理增加了工作量。 4)开发时间长:由于以上的原因使用户长时间看不到最终结果,难以发现所存在的问 题,一段时间后发现修改,增加了开发的时间。 5)可移植性差:外设不同时,特别是大屏幕、数字化仪、绘图仪的类型、型号不一致
北 京 科 技 大 学 学 报 在我国一般沿用 的硬件布置 , 如图 所示 。 其 中大屏幕显示 图形 , 显示 器显示 提示 和 文本 内容 。 近些年来 由于大屏幕价格较贵 , 且 由于高分辨显示器 的 出现 , 已有逐步被高分辨率的单屏幕所代替的趋 势 。 地 测 采 需要人机对话 以及结果说明和各种操作提示 , 目前仅有一个屏 幕尚有一定的困 难 。 滚筒式绘图仪一直是人们在配置时的优先选择 。 从使用 的效果来讲 , 选用平板式绘 图 仪较好 , 但对于 图只能采用滚筒式绘 图仪 。 主机采用 机或更新的 机 , 以提高处理 速度和 满足市场上新 的通 用软件关于 内存与屏 幕的要 求 。 图 地测 硬件配且 软件类型 基于 以 上 硬件的配置 , 各个研制单位开发 了多种地测 采矿 软件 , 根据其使用情况 可 大致分为 类 完全用 高级语言 自编软件 完全在绘 图软件包如 , 等运行 高级语言与绘 图软件包组装 。 下 面就其研制开发难度与优缺点分别进行说明 。 完全用高级语言编程 的软件系统 完全用高级语言编程实现的软件系统 占有外存少 , 所需 内存少 , 速度快等优点 。 例如 由高级语言形成 的顺序随机文件为 左右 , 而形成 文件达到 左右 , 文件增 大 了 倍 。 而好多新 的软件包需较多 的 内存 , 使较低型号 的微机难应付 。 此外采用此软件 方案与当时 版本低 , 功能差也有直接关系 。 此软件 系统存在 以下 问题 编程劳动量大 由于是完全用高级语言来实现 , 这就需要对每一个外设 的性能和命 令均要 有 比较深人 的 了解 。 例如大屏 幕显示 的命令 、 绘图仪的绘 图命令等都要 自己进行开 发和研制 。 为了能在绘 图仪上写 出较满意 的汉字就要 对点阵汉字库有较深人的 了解 , 然后 编程实现之矢量化 , 再 由绘图机输 出需要化很大的时 间 。 返工量大 地测采 系统最后 的成果是 以 图表的形式体现 的 , 因此无论事先进 行多详细 的设计都可能 由于某种原 因出现偏差 , 而这一细节 的偏差可能是现场工作不能容 忍 的 , 必须返工 。 例如 由绘 图仪输 出的 图纸 , 南芬与西露天矿均做了多次返工 。 现场的人 员 以为增加一项 内容十分简单 , 而对编程人员来讲也许是非常困难 的 。 系统调查工作量增大 就输 出图纸来讲 , 就需有 同类 图纸 的多 幅 , 分析其共 同和个 别情形 , 分别进行调查与处理增加 了工作量 。 开发时间长 由于 以上 的原 因使用户长时 间看不到最终结果 , 难 以发现所存在的问 题 , 一段时 间后发现修改 , 增加 了开发 的时 间 。 可移植性差 外设不 同时 , 特别是大屏幕 、 数字化仪 、 绘 图仪的类型 、 型号不 一致
孙豁然等:露天矿地测采剥计划CAD系统的开发与实践 ·13· 时,都需要编制专门的程序来实现,因此需移植时要改变命令语句,不能简单修改后即可 移植。 2.2完全在各种通用软件包内运行的软件 完全在各种通用软件包内运行的软件不多。作者在进行南芬矿初步设计中即采用在 AUTOCAD软件包内进行,由于当时版本低且无可用的汉字故舍弃之。国内有人使用AU TOCAD成功在研制了地测采系统。使用绘图软件包研制软件优点是:1)开发速度快;2) 可移植性好;3)用户界面友好。其缺点是文件大,所需内存大,运行速度慢,由于进人、 退出AUTOCAD需要时间,难免给人一种靡肿的感觉。 2.3高级语言与绘图软件包组合 由于以上两种方式的缺点,自然产生了高级语言与绘图软件包组合的产品,根据其深 入程度不同又可分外附型与内嵌型两种。外附型是在进行地测采处理进采用高级语言来实 现,而当需要绘图时通过接口文件(DXF),将其在AUTOCAD显示之,最后通过菜单、程 序操作、手工操作得到满意的图纸,并交付工程使用。 这样只要研制一套高级语言形成的处理系统与一个DXF文件转换器即可运动,从而大 大减少了软件的编程量,缩短了软件开发时间,同时也有限地扩大了可移性。 真正的内嵌型是在AUTOCAD11.0版本后产生的,即在AUTOCAD内运行高级语言 所编的程序,可使用的语言为C,或HIGH C语言,目前正研制中,尚未看到可使用的地测 采CAD软件。外附式在对地测采信息处理时,可使用多种高级语言来完成,例如可采用现 场利于维护的BASICA语言写的软件,也可采用高质量的C语言形成的软件,因此具有很 好的灵活性,而绘图时进入AUTOCAD,通过简单易学AUTOCAD的操作命令来实现图素 丰富美观。唐钢棒磨山是使用外附式的组合方式,较容易地实现了既定目标,收到了较满 意的效果。 3 开发地测采剥计划应注意的问题 通过几年来的地测采CAD系统理论研究与开发实践,应注意下面问题。 3.1应重视软件开发方法的研究工作 有许多种软件开发的方法,并有许多按这些方法完成的成功软件,但在开发过程中有 返工现象,交付使用时未达用户要求,甚至不能使用的软件的屡见不鲜。部分原因是开发 者与用户使用不够密节,不够协调,而所使用的开发方法例如生命周期法,有先天不足,是 其主要原因。由南芬和西露天矿的开发过程体会不不可指望系统开发者和用户能在需求分 析、规格说明阶段就确定系统的完整需求和全部功能,因为大多数用户对系统的需求事先 难以说清,更谈不上完整定义。一方面用户心目中的“需求”只是一个模糊的概念,不可 能对需求做出完整的、精确的说明。另一方面,系统开发者不可能很清楚地了解现行系统 具体业务,在交换意见过程中,难免发生传错信息和发展误解,这样按生命周期法的要求, 在最终产生的需求分析报告和系统规格说明书中的许多定义和描述是被迫或勉强作出的。 据有人统计,使用生命周期法,开发阶段的代从为30%,而维护代价为70%,最坏情况下, 干脆推倒重来
孙豁然等 露 天矿地测 采剥计划 系统的开 发与实践 时 , 都需要编制专门的程序来实现 , 因此需移植时要 改变命 令语句 , 不能简单修改后 即可 移植 。 完全在各种通用软件包 内运行的软件 完全在各种通 用 软件包 内运行 的软件不 多 。 作者在进行南芬 矿初步设 计 中即采 用 在 软件包 内进行 , 由于 当时版本低且无可用 的汉字故舍弃之 。 国 内有人使用 二 成功在研制了地测采系统 。 使用绘 图软件包研制软件优点是 开发速度快 可 移植性好 用户界面友好 。 其缺点是文件大 , 所需 内存大 , 运行速度慢 , 由于进人 、 退 出 需要 时 间 , 难免给人一种臃肿 的感觉 。 高级语言与绘 图软件包组合 由于 以上 两种方式的缺点 , 自然产生 了高级语言与绘 图软件包组合的产品 , 根据其深 人程度不 同又可分外附型与内嵌型两种 。 外 附型是在进行地测采处理进采用高级语言来实 现 , 而 当需要绘图时通过接 口 文件 , 将其在 芜 显示之 , 最后通过菜单 、 程 序操作 、 手工操作得到满意的图纸 , 并交付工程使用 。 这样 只要研制一套高级语言形成的处理系统与一个 文件转换器 即可运动 , 从 而大 大减少 了软件的编程量 , 缩短 了软件开发时 间 , 同时也有 限地扩大了可移性 。 真正 的内嵌型是在 《 二 版本后产生 的 , 即在 内运行高级语言 所编 的程序 , 可使用 的语言为 , 或 语言 , 目前正研制 中 , 尚未看到可使用 的地测 采 软件 。 外附式在对地测 采信息处理时 , 可使用多种高级语言来完成 , 例如可采用现 场利于维护的 语言写 的软件 , 也可采用高质量 的 语言形成的软件 , 因此具有很 好 的灵活性 , 而绘图时进入 , 通过简单易学 兀 的操作命令来 实现 图素 丰 富美观 。 唐钢棒磨 山是使用外附式的组合方式 , 较容易地实现 了既定 目标 , 收到了较满 意 的效果 。 开发地测采剥计划应注意的问题 通过几年来 的地测采 系统理论研究与开发实践 , 应 注意下面 问题 。 应重视软件开发方法的研究工作 有许多种软件开发的方法 , 并有许多按这些方法完成的成功软件 , 但在开发过程 中有 返工现象 , 交付使用 时未达用户要求 , 甚至不能使用 的软件的屡见不鲜 。 部分原 因是开发 者与用户使用不够密节 , 不够协调 , 而所使用 的开发方法例如生命周期法 , 有先天不足 , 是 其主要原 因 。 由南芬和 西露天矿的开发过程体会不不可指望系统开发者和 用户能在需求分 析 、 规格说明阶段就确定系统的完整需求和全部功能 , 因为大多数用户对系统 的需求事先 难以 说清 , 更谈不上完整定义 。 一方面用户心 目中的 “ 需求 ” 只是一个模糊 的概念 , 不可 能对需求做出完整 的 、 精确的说明 。 另 一方面 , 系统开发者不可能很清楚地 了解现行 系统 具体业务 , 在交换意见过程 中 , 难免发生传错信息和发展误解 , 这样按生命周期法 的要求 , 在最终产生 的需求分析报告和 系统规格说 明书中的许多定义 和描述是被 迫或勉强作 出的 。 据有人统计 , 使用生命周期法 , 开发 阶段的代从为 , 而 维护代价为 , 最坏情况下 , 干脆推倒重来
·14· 北京科技大学学报 因此必须重视开发方法研究工作,作者在棒磨山铁矿使用原型法来进行开发收到了较 满意的效果。 初始目标 需求 需求分析 修改补充需求 确定新目标 规格说明 原型设计 不满意 原型 满意 演示原型 用户评价 构造产品 交付使用 图2原型法示意图 该方法的特点是先由开发者和用户一起为想象中的系统的某些主要部分定义需求和规 格说明,然后由开发者先构造一个原型,并可在其上演示,用户再在其上对最终形成的系 统进行直观的评价、进行修改,形成新的版本的原型直到交付使用。 3.2作好通用模块的开发工作 尽管露天矿地测采管理国家已有规定,但由各矿的认识,历史源流的不同,在工作习 惯上尚有一些差别,因此指望研制一种通用软件包以供所有露天矿使用这是不现实的,而 研制出各种可组装的通用模块则是切实可行和必不可少的。这种可组装的通用模块能否真 正做到真正通用与可组装,关键在于系统设计和所采用的研究手段。为便于组装一个模块 的大小以一页纸为限,根据作者的经验采用以下逻辑处理为宜,为使其具有通用性,应在 输人输出中留有一定的可选参数。 输人一 处理 存储 输出 图3通用模块运行模式 3.3做好数据文件的组织工作
北 京 科 技 大 学 学 报 因此必须重视开发方法研究工作 , 作者在棒磨 山铁矿使用 原型法来进行 开发收到 了较 满意 的效果 。 规 格 说 明 需 求分 析 修改 补充需求 确定新 目标 原型设 计 演示 原型 构造 产品 交付使用 图 原型法示意图 该方法 的特点是先 由开发者和 用 户一起为想象 中的系统的某些 主要部分定义需求和规 格说明 , 然后 由开发者先构造一个原型 , 并可在其上演示 , 用户再在其上对最终形成的系 统进行直观 的评价 、 进行修改 , 形成新的版本 的原型直到交付使用 。 作好通用模块的开发工作 尽管露天矿地测采管理 国家 已有规定 , 但 由各矿 的认识 , 历史源 流 的不 同 , 在工作 习 惯上 尚有一些差别 , 因此指望研制一种通用软件包 以供所有露天矿使用这是不 现实的 , 而 研制 出各种可组装的通用模块则是切实可行和 必不可少 的 。 这种可组装的通 用模块能否真 正做到真正通用与可组装 , 关键在于 系统设计和所采用 的研究手段 。 为便于组装一个模块 的大小 以 一页 纸为 限 , 根据作者的经验采用 以下逻辑处理 为宜 , 为使其具有通用性 , 应在 输人输 出中留有一定的可选参数 。 艳人 一翔处理一出 存储 图 通用模块运行模式 做好数据文件的组织工作
孙豁然等:露天矿地测采剥计划CAD系统的开发与实践 ·15 由于地测采要涉及大量的图纸,涉及不断更新的数据,因此一味强调用数据库来存储 图形数据是不妥的。能否成功地利用数据文件来进行地测采图形管理,关键在于数据文件 的结构。顺序文件和简单的随机文件不能用,必须使用适用于图形处理的数据文件。作者 在南芬,西露天,棒磨山矿先后使用3种随机文件,即索引顺序随机文件、索引带随机文 件和索引链表随机文件。第1种文件是在每条线条的前10条记录中,把点个数、起始记录 号、该线条所在范围、特殊标志记录下来,然后在其后开始记录点线的各种坐标。这样查 找某指定线条时,仅读每线条的10条记录,甚至3条记录即可进行处理,满足了图形处理 的基本要求。但在删除与修改后为保持顺序需进行文件整理,且修改或别除写在前面的点 线时,涉及较多的记录号。 第2种文件结构是把文本件所存储的主要信息均写入在前足够宽的信息索引带上,该 带上具有该线条起始记录号个数、特征值、范围等需优化处理的信息,这样处理时仅读写, 改变索引带和相应记录号即可,其缺点是浪费了一定的存储空间。 第3种文件克服了前2种的缺点,是处理图形的良好存储方式。其特点是既有索引带 又有指针,随时收加不用的空间,颇有DOS管理磁盘文件的形式,但比其更复杂一些,经 长时间使用收到了十分可喜的效果。 4结束语 露天矿地测采系统必须注意开发方法的研究,设计规划好的通用模块以及合理的图形 文件结构,使用高级语言和绘图软件包的组合是实现快速开发该系统的较好途径
孙豁然等 露 天矿地测采剥计划 系统的开发与实践 由于地测采要 涉及大量 的 图纸 , 涉 及不 断更新 的数据 , 因此一味强调用数据库来存储 图形数据是不妥 的 。 能否成功地利用数据文件来进行地测采图形管理 , 关键在于数据文件 的结构 。 顺序文件和简单的随机文件不 能用 , 必须使用适用于 图形处理 的数据文件 。 作者 在南芬 , 西露天 , 棒磨山矿先后使用 种 随机文件 , 即索引顺序随机文件 、 索引带随机文 件和 索引链表随机文件 。 第 种 文件是在每条线条的前 条记录 中 , 把点个数 、 起始记录 号 、 该线条所在范围 、 特殊标志记录下来 , 然后在其后 开始记录点线的各种坐标 。 这样查 找某指定线条时 , 仅读每线条 的 条记录 , 甚至 条记录 即可进行处理 , 满足 了图形处理 的基本要求 。 但在删除与修改后 为保持顺序需进行文件整理 , 且修改或删除写 在前面 的点 线时 , 涉及较多 的记录号 。 第 种文件结构是把文本件所存储 的主要信息均写人在前足够宽的信息索引带上 , 该 带上具有该线条起始记录号个数 、 特征值 、 范 围等需优化处理 的信息 , 这样处理时仅读写 , 改变索引带和相应记录号 即可 , 其缺点是浪费了一定的存储空 间 。 第 种文件克服 了前 种 的缺点 , 是处理图形 的 良好存储方式 。 其特点是既有索引带 又 有指针 , 随时收加不 用 的空 间 , 颇有 以 管理磁盘文件的形式 , 但 比其更复杂一些 , 经 长时 间使用收到 了十分可喜的效果 。 结束语 露天矿地测采系统必须 注意开发方法 的研究 , 设计规划好 的通用模块 以及合理的 图形 文件结构 , 使用 高级语言和绘图软件包的组合是实现快速开发该系统的较好途径