王 伟 陈伟东
(浙江建设职业技术学院,浙江杭州 311231)
计算机辅助教学(简称CAI)是利用计算机提供的丰富资源及强大功能辅助教师和学生进行教学活动;CAI综合利用文字、图片、音视频等,传递和演绎传统教学方式难以形象表述的知识,其一定程度上解决了微观结构宏观化、静止事物动态化、平面图形立体化、抽象问题形象化等问题,从而提高教学效果[1-3]。
建筑工程类高职学生的培养方向是施工现场的技能型人才,其主要工作为依据“工程图纸”进行施工、监理和管理,故“建筑结构施工图识读”是教学的重要任务。目前建筑结构是依据《混凝土结构施工图平面整体表示方法制图规则和构造详图》(简称“平法”)进行施工图绘制和结构施工的,即首先设计人员按照平法制图规则,借助线条、数字和字母,主要以平面方式表达混凝土构件的几何、位置和配筋信息,然后施工人员依据平法构造详图进行构件信息的三维推演以指导施工。
依据平法施工图进行构件信息的三维推演是衡量学生识读能力的关键,其中尤以掌握配筋信息为甚;依据传统教学难以让学生短时间内掌握结构构件内的钢筋种类、空间位置和相互关系,而通过交互式CAI课件三维显示构件实体及钢筋则可一定程度上弥补传统板书教学的不足。
MATLAB是矩阵实验室(Matrix Laboratory)的简称,其是美国MathWorks公司出品的商业数学软件,具备算法开发、数据可视化、数据分析、数值计算和交互式界面制作开发等功能;MATLAB提供了高效的编程环境、出色的绘图能力,而其中的图形用户界面开发环境(GUIDE)能制作开发简单的交互式界面(GUI)。已有不少教师基于MATLAB进行了交互式CAI课件的开发(文献[4]~[6]),通过教学内容的交互式动态模拟仿真提高了教学效果。
上文已述及依据平法绘制的结构施工图,三维推演构件配筋信息是衡量学生图纸识读能力的重要指标。对于建筑结构中常见的墙、柱、梁、板构件,梁中钢筋种类最多,相互的空间位置最为复杂,但其配筋具有相似性,故一般掌握典型框架梁的钢筋空间布置后,即具备认知任意梁钢筋布置的基础,若再配合钢筋构造详图数据,便可进行钢筋翻样和下料计算。
因此在进行框架梁交互式CAI课件开发前,需给出一根典型框架梁的平法施工图,具体如图1所示;并假定该框架梁抗震等级三级、混凝土强度等级为C25,钢筋锚固长度按平法规定数值取用,保护层厚度按平法规定的二a类环境取值,这些信息影响钢筋的空间布置;此外假定柱横截面宽度为400 mm,图1中仅标示了柱横截面高度。
图1 框架梁的平法施工图
通过MATLAB的GUIDE开发框架梁实体及配筋三维显示的交互式CAI课件,需要依次进行钢筋数据准备、对象几何数据准备、界面组件布设及代码编写,现依次进行叙述。
钢筋数据准备指理清梁内的钢筋编号、样式、特征尺寸和位置,本质上它们反映梁的内力特征和构造要求,实际工程中习惯通过梁纵剖面钢筋分离图、梁横截面图进行描述,具体如图2和图3所示。原则上钢筋信息还包括钢筋的直径、级别,但在本文涉及的CAI课件中并不需要这两种信息。
图2 梁纵向钢筋分离图
在图2中列出了梁内所有纵向钢筋的编号、样式、外包尺寸和位置(除编号为[10]的梁侧构造纵筋),其依据为平法规定。
在图3中仅列出了“1”号横截面,但它们包含了梁左跨横向钢筋的编号、样式和位置,以及梁侧构造纵筋的编号和位置,其依据也为平法规定。
至此,可以依据该框架梁的已知信息和平法相关规定建立梁内所有钢筋的编号、样式、特征尺寸和位置信息。
图3 梁横截面图(未绘制“2~6”横截面图)
MATLAB中将构成图形的要素(如线条)称为对象(object),故本文的交互式CAI课件开发主要工作为确定代表梁柱实体轮廓及其内钢筋的线条形状、位置,下面从两方面分述:
1)自有坐标系和对象控制点自有坐标矩阵。构件(柱、梁)轮廓线、钢筋虽然众多,如柱有12条侧边线、梁中有2根通长钢筋(图2中的①号钢筋)和38根拉筋(图3中的[11]号钢筋)等,但上述同类对象之间多为空间平移关系,故在框架梁三维模型绘制前可将含义相同、几何形状相同,空间位置不同的对象归为一类,为其指定自有坐标系,确定能描述其几何形状的控制点,并建立3× n的矩阵存储控制点的自有坐标,其中n代表控制点个数,3代表每个控制点的[u,v,w]T坐标,具体如图4所示;本文将依据自有坐标系建立的描述对象几何形状的矩阵称为对象控制点自有坐标矩阵。
图4 自有坐标系及对象控制点自有坐标矩阵示例
2)全局坐标系和对象控制点全局坐标矩阵。自有坐标系虽然能便于描述单个对象的几何形状,但难以描述多个对象的空间位置关系,故应指定全局坐标系以描述多个对象的空间位置;本CAI课件将全局坐标系原点置于梁柱左节点内,且坐标轴与梁柱侧边线垂直(或平行),框架梁三维模型中所有对象依据该坐标系确定空间位置,图5标明了全局坐标系与梁柱左节点的空间位置关系。
依据图1的“框架梁平法施工图”、图2的“梁纵向钢筋分离图”、图3的“梁横截面图”,并借助平法中钢筋构造详图的规定,通过坐标变换确定对象控制点全局坐标矩阵后便能实现在全局坐标系中描述构件轮廓线以及钢筋,即根据对象自有坐标系与全局坐标系的空间关系,进行坐标系的旋转和平移。
第i个对象控制点的坐标变换可由式Li=CiSi+Di表示。其中,Li为对象控制点全局坐标矩阵;Ci=[xuxvxw;yuyvyw; zuzvzw],其为3×3的矩阵,表示自有坐标系与全局坐标系原点重合时,将自有坐标变换为全局坐标的旋转矩阵,xu为自有坐标系u轴与全局坐标系x轴夹角的余弦值,其他符号含义类推;Si为对象控制点自有坐标矩阵;Di为自有坐标系在全局坐标系中平移时对象控制点的平移矩阵;Li,Si,Di为3×n的矩阵,含义参照上文。图6为左节点处对象控制点坐标变换后显示的构件轮廓线和钢筋,并标示了编号为k的拉筋对象。
图4列出了拉筋的Sk,参考平法拉筋构造,可得图6标示的拉筋的Ck和Dk为:
其中,矩阵Dk中的每列三个数代表自由坐标系平移后其原点的全局坐标,平移对控制点的变换相同。
图5 全局坐标系
图6 左节点处对象控制点坐标变换后的三维图形
其他对象,如构件轮廓线、纵向钢筋、横向箍筋,只要合理指定其自有坐标系(如图5中柱侧边线及通长钢筋的自有坐标系),则控制点坐标变换一般仅涉及坐标平移。
经过上文的“数据准备”,便可通过MATLAB进行CAI课件的界面组件布设及代码编写,从而实现构件实体及钢筋的三维显示。交互式界面除了能显示对象外,还应能对三维模型进行缩放、平移、旋转等操作,另外为了便于观察框架梁内钢筋的相互关系,尚需预设若干标准视图(透视图、前视图、俯视图、左视图)以及分类控制钢筋的粗细、颜色、图显状态,故相关的组件包括坐标系(Axes)、工具栏按钮(Push Tool)、静态文本框(Static Text)、按钮(Push Button)、复选框(Check Box)等,相关的函数包括三维曲线绘制函数(plot3)、视图缩放函数(zoom)、视图平移函数(pan)、视点函数(view)、对象属性值的获取及设置函数(get及set)等。
GUIDE能快速地完成界面组件布设,MATLAB提供的函数能方便地实施三维显示控制,最终的交互式界面如图7所示,界面中工具栏最右侧按钮能打开钢筋显示控制界面,通过其能控制钢筋的显示属性,具体如图8所示。
图7 框架梁实体及钢筋三维显示的交互式界面
本文介绍了MATLAB在制作梁平法施工图识读的交互式CAI课件中的运用,实现了梁柱轮廓线及梁内钢筋三维模型的显示控制。
依据框架梁的平法施工图,本文首先根据平法中的钢筋构造规则,依工程习惯图解了梁内钢筋的种类及空间位置;然后将构件轮廓线及钢筋视为对象,为描述其几何形状和空间位置,先后定义了自有坐标系、控制点和全局坐标系,借助对象分类及坐标变换,完成了三维模型的数据准备;最后通过GUIDE完成了交互式界面的组件布设及代码编写,从而实现了三维模型的显示控制。
图8 钢筋显示控制子界面
本文所介绍的交互式CAI课件不但可以在梁平法施工图识读方面辅助教师教授及学生学习,以增进对平法制图规则及构造详图的理解和记忆,同时也可以为擅长MATLAB编程、同时对开发交互式CAI课件感兴趣的教学工作者提供一个参考。
[1] 刘 玉.中学物理CAI课件制作原则及实践探究[D].武汉:华中师范大学物理科学和技术学院,2006.
[2] 周艳平,胡乃平.“计算机控制技术”CAI课件研制与辅助教学研究[J].教育与教学研究,2008(24):85-87.
[3] 王亚莉.CAI在钢筋混凝土结构课程设计中的应用[J].土木建筑教育改革理论与实践,2009(11):442-444.
[4] 王永虎,王 欣,王红梅.VB与MATLAB混合编程在CAI系统中的应用[J].航空计算技术,2010,40(1):71-74.
[5] 李芳菊.利用MATLAB GUI模拟双缝干涉[J].河南科技,2011,29(10):1165-1167.
[6] 李保源.物理过程的动画演示[J].大学物理,2004,23(2):59-62.