首页 > 文章中心 > 子程序

子程序

子程序

子程序范文第1篇

[关键词] 会计电算化 环境 审计程序

电子审计,就是将审计的方法和程序与会计电算环境结合起来,根据会计环境的变化实施适当的审计程序。按照《审计法》的规定,审计过程一般可分为四个阶段,即准备阶段、实施阶段、审计结论和执行阶段、异议和复审阶段。电子审计也应该按照这些阶段实施审计程序,完成审计任务。

一、准备阶段的审计程序

在此阶段主要是初步调查和了解被审计单位会计电算化系统的基本情况,以制定合理的审计计划。具体包括以下内容:

1.对系统进行描述。审计人员可以通过与被审单位有关人员座谈、实地观察、查阅系统的文档资料等办法,必要时可编制调查问卷,以了解被审计单位会计电算系统,并将它详细描述出来。

2.对系统进行初步评价。此时的评价通过符合性测试,评价被审计单位内部控制的健全性和合理性。具体来说包括以下内容:

(1)职责分离的实施情况,是否达到相互牵制、相互制约的目的。

(2)授权批准的实施情况及软硬件的安全防护措施是否恰当。应该是只有经过授权批准的人才能接触系统的硬件、软件、数据文件及系统文档资料;从安全防护措施来说,包括机房是否具有安全保护措施、设备是否具有保护措施等、数据文件是否具有备份措施等。

(4)硬件及软件平台是否可靠,以保证系统正常运作。尤其是系统软件中是否具有错误处理的功能、文件保护的功能及安全保护的功能。

(5)输入控制措施是否严格有效,以保证系统输入信息的可靠性。例如:是否具有凭证的试算平衡控制、凭证的编号是否按顺序设置,有无重复号码、凭证的借贷方金额是否相等、对由计算机发现的错误是否拒绝接受并予以提示等等。

(6)会计业务处理的控制措施是否适当,以保证会计数据处理准确性、完整性。例如:是否只有经过授权批准的人才能执行登账、对账、结账等会计处理操作;系统是否具有防止或及时发现数据出错的措施;对非正常中断是否具有恢复功能;系统是否具有防止非法篡改的功能等等。

(7)输出控制措施是否适当,是否能保证系统具有完整、准确地输出经处理的会计信息的能力。例如:未经授权批准的人不能接触输出资料,打印输出的资料是否进行登记,并经有关人员检查后签章才能使用或予以保管等。

二、实施阶段的审计程序

实施阶段是审计工作的核心。此阶段主要工作是根据准备阶段确定的范围、要点、步骤、方法,进行取证、评价,取得审计证据,为形成审计结论、发表合适的审计意见奠定基础。具体来说,本阶段的审计程序主要包括:

1.对原始凭证的审计。对会计电算化所依据的原始凭证,应采用手工审计方法,对每张原始凭证进行认真细致的阅读和审查,必要时进行调查核对,考核其是否合理合法,是否真实正确,有无涂改现象,是否符合有关财务制度的规定,是否违反了国家的方针、政策和法规等。

2.对记账凭证的审计。要保证会计电算化的结果正确,对输入到计算机里的凭证进行认真审核是关键。从方法来说,我们可以先审核手工所填制的书面记账凭证是否正确,然后,用审核正确的书面记账凭证与输入到计算机里的凭证进行核对审计。若在审核中发现有错凭证,计算机辅助审计即可从此处入手,追踪审计。

3.对自动转账产生的机制凭证的审计。对于自动转帐产生的机制凭证公式,我们应首先审核转帐公式的正确性,具体方法是:

(1)用手工结合计算机辅助处理,将处理结果与机制凭证进行核对,审核转账公式及机制凭证是否正确;(2)在审计人员的监督下,请被审计单位的会计电算化操作员重新执行一次自动转账,以检测定义过程及公式,看其是否正确;(3)由审计人员另换计算机,用相同的会计核算软件或其他会计软件重新处理,检查其结果,看其是否与被审计单位处理的结果一致,以防止对原程序的修改。

4.对账簿的审计。对账簿的审计可以采用以下方法:

(1)重新处理。即使用被审计单位的会计电算化系统,将其每月记账前的记账凭证备份盘按顺序逐月恢复到会计电算化系统中,并与经过审核无误的书面记账凭证进行核对,然后重新记账,看其结果是否与被审计单位打印的书面账薄相符。(2)采用其他会计核算软件,对凭证数据重新输入处理记账,看其结果是否与被审计单位的结果一致。

5.对会计报表的审计。对会计报表的审计,首先要审核会计报表软件程序是否正确。其方法是:用原程序备份盘与使用中的核算软件程序进行比较,看其是否一致,以防止使用中的程序被修改等。在确认程序没有被修改的基础上,用一套事先准备好的模拟数据检审、测试核算软件是否正确,如果通过测试,证明其使用中的会计核算软件程序正确;或者用事先准备好的模拟数据,检审、测试其处理结果是否正确。在确定报表软件没有问题的前提下,进一步检查确定会计电算化报表的取数公式是否正确。只有上述两个环节都没有问题,报表数据得正确性才有保证。

三、审计结论和执行阶段

在对会计电算化系统进行符合性测试和实质性测试后,需要整理测试过程中形成和获取的审计工作底稿,并编制审计报告时。在编制审计报告时,我们除了要对被审单位会计报表的合理性、公允性、一贯性发表意见,作出审计结论外,还要对被审单位的会计电算化系统的处理功能和内部控制状况进行评价,并提出改进意见。

四、异议和复审阶段

被审单位对审计结论和决定若有异议,可提出复审要求,审计部门或组织可组织复审并作出复审结论和决定。当被审单位会计电算化系统进行了升级或有了新的改进时,还需组织后续审计。

子程序范文第2篇

【关键词】子程序;总结;编程;概念

一、子程序的概念

把同一类型的程序段进行地单独编程,并按照一定的格式单独地加以命名,作为子程序编写起来要求被其他的主程序调用,在进行某一样功能后能自动返回到主程序去的程序。在其最后一条指令是返回指令,并且能被主程序识别进行加工。

二、子程序的运用

(1)应用。原则上讲主程序和子程序之间并没有区别。子程序的一种类型就是循环加工,循环加工包含了一般通用的加工工序,例如螺纹切削、材料切削加工等。通过给定的计算参数赋值就可以实现各种类型的具体加工。(2)结构。子程序的结构与主程序的结构在很多的地方是相同的,在子程序中也是最后一段程序用M99结束子程序来运行程序,子程序结束以后就可以返回主程序了。程序运行好了以后,子程序最后除了可以运用M99这种指令以外,还可以运用RET指令结束子程序并且返回主程序运用。(3)子程序程序名。为了方便地识别某一个子程序,就必须给子程序取一个程序名。这个程序名是可以自由选取,但是必须符合以下几个规定:序开始的两个符号必须是字母;其他的符号可以为字母,数字或下划线;最多八个字符;没有分隔符。其方法与主程序中程序名的选取方法一样。另外,在子程序中还可以使用地址字L…其后的值可以有七位(只能为整数)子程序的调用:在一个程序中(主程序或子程序)可以直接用程序名调用子程序。子程序调用要求占用一个独立的程序段。在使用循环加工进行加工时,要时刻注意一下循环加工的程序也要同样属于四级程序的界面中的一级。对于R的参数也要同样注意一下,不要那种无意识地运用上一段程序界面中所使用的计算参数来修改下段程序界面的计算参数。运用子程序不仅提高程序的可移植性就可以使用子程序来把不可移植的部分,还有明确告诉你当中可移植部分分隔开来。不可移植的部分包括:不是标准性的语言特征、硬件和操作系统的可依赖性等等。加工槽类零件的方法:当一个零件出现了若干处同一种类型轮廓,只要编写该零件一个轮廓形状的一段子程序就可以了,然后运用主程序调用子程序就行了。加工复杂零件时,里面有多道工序,只需要适当调整工序,把它们编成子程序,这样只需要调用子程序就行了,这样就优化了程序。(4)子程序注意事项。子程序编程过程中,不得有循环指令;子程序必须事先编写好并事先储存起来,提供给主程序使用;在子程序的最后面编写M99表子程示该序运用完并且返回主程序;在运用子程序的时候,不仅主程序可以使用子程序,而且子程序也可以使用其他子程序。格式:在不同的程序数控系统中,几乎都有书写格式不尽相同的子程序加工指令。格式如下:M98-调用子程序指令 编写格式:M98 P××××L××××(说明:P后面的四位为子程序名,L后四位为重复调用次数,重复次数省略的时候为这个子程序被调用一次)。M99为该子程序被主程序给调用结束并且返回主程序。槽类零件的加工,需要考虑其加工特点,可分为:单槽、多槽、宽槽、加工中心深槽及异型槽。零件的装夹在切槽过程中根据槽的宽度、大小、切削力的大小等因素。一般采用以下两种装夹方式:利用软卡爪并适当增加装夹的长度,以保证定位准确、装夹稳固。利用车床尾座顶尖做辅助件,可以保证零件的最好稳定效果。车床刀具的选择和进刀方式,对于一些槽深度不深,可以一次性加工,深度深可以利用子程序循环加工。切削用量和切削液的选择,切削速度:600~800r/min,进给速度:0.05~0.3mm/r。(5)切槽注意事项。容易产生振动现象,切削时,切削力的大小容易产生高温,为了降低零件高温的问题,可以使用切削液进行冷却,从而进一步提高生产力和生产的效果。凹圆弧的加工用华中系统进行加工。

子程序范文第3篇

关键词:子网划分;子网掩码;子网号;VB

中图分类号:TN943

1 技术原理

IP是英文Internet Protocol的缩写,意思是“网络之间互连的协议”,也就是为计算机网络相互连接进行通信而设计的协议,适用范围包括了从最小的私人网络到最大的全球互联网在内所有类型的计算机网络。在网络中,每一台网络设备都拥有单独的IP地址作为标识符。IP地址由从0到42亿9496万范围内的32位数字组成。因此,理论上说,这就意味互联网最多可以包含大约43亿个单独系统。但是,这么大的规模对于网络管理来说,是非常的不方便,因此,它被分为四个部分,每个部分都是由一个8位字节组成,中间用“.”号给予分割。由于二进制数字太长阅读起来不是很方便,所以它被转换为0到256之间的十进制数字。

子网,顾名思义,指的是次级网络,也就是位于一个大型网络中的小网络。最小的没有包含更多分支的子网被认为是一个单独的“广播域”,通过一台以太网交换机建立起一张局域网(LAN)。对于网络来说,广播域服务是一项非常的重要功能,因为它可以实现让网络设备通过介质访问控制地址直接进行连接,而不需要经过多张子网,甚至整个互联网。

Internet组织机构定义了五种IP地址,用于主机的有A、B、C三类地址随着互连网应用的不断扩大,IP地址资源越来越少。为了实现更小的广播域并更好地利用主机地址中的每一位,可以把基于类的IP网络进一步分成更小的网络,每个子网由路由器界定并分配一个新的子网网络地址,子网地址是借用基于类的网络地址的主机部分创建的。划分子网后,通过使用子网掩码,把子网隐藏起来,使得从外部看网络没有变化。

2 可行性分析

2.1 现状分析

随着网络技术的日益发展,网络的普及程度大大提高,几乎每个单位都建立了自己的局域网,而每个部门可能需要处于不同的子网当中。划分子网有减少网络流量、提高网络性能、简化管理以及易于扩大地理范围的优点,所以划分子网是每个单位的网络管理员或者计算机技术人员必定遇到的问题。但是由于完整的IP由一组32位2进制数组成每8位为一个段,共分为4段,段于段之间用“.”分开。

要划分子网必然涉及到一定量的二进制与十进制的相互转换、指数计算和计数运算,虽然计算量并不大,但完全由人工来完成则耗时耗力,而且出现错误的几率较高,开发一个能快速进行子网划分的应用程序可以大大节省工作量,并减少人工运算中的计算错误。同时也可以把程序应用到高校或职业院校的网络基础课程中,加深学生对IP子网划分知识点的认识。

2.2 技术可行性

Visual Basic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。它简单易学、效率高,且功能强大。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件。

Visual Basic 6.0虽然已经是很有历史的版本,但是开发划分子网程序只需用到简单常见的控件,如框架、文本框、命令按钮、单选框等,并用到变量、数组、通用函数和常用的内部函数等VB常用元素,而且算法的设计比较简单,从实际编码情况来看,代码量也不会很大。Visual Basic 6.0比新版本占用内存小,运行速度快,用于开发本程序是非常适合的。

3 设计思想

设计子网划分程序,先应该了解子网划分与掩码设置的原理,子网划分是通过借用IP地址的若干个主机位来充当子网地址从而将原网络划分为若干子网而实现的。划分子网时,随着子网地址借用主机位数的增多,子网的数目随之增加,而每个子网中的可用主机数逐渐减少。

4 算法设计

算法设计的前提是默认子网掩码的长度,即B类地址为16位,C类地址为24位。并通过设计友好的程序界面让用户输入以下的关键信息:

(1)将要划分子网的IP地址。

(2)划分子网的方式,即按照子网数量还是按照每个子网主机数量来划分。

(3)欲显示划分完成后的子网号。

获得以上信息后,通过分析用户输入的IP地址是否合法,如合法则分析该IP属于哪一类型的网络,得出默认的子网掩码长度。第二步可确定划分子网的方式,当用户要求以子网数来划分子网时,计算该子网数所应该占的二进制位数,从而确定子网掩码的长度。当用户要求用每个子网的主机数划分子网时,计算该主机数所应占的二进制位数。从而用IP地址的总位数减去主机数所占二进制位数则也可得到子网掩码的长度。

以下是获取关键信息以后的详细设计步骤:

(1)求出新的子网掩码的长度,即确定网络数和主机数分别占据的位数。

(2)将用户输入的IP地址用函数转换成为二进制形式。

(3)生成一个32位长度的字符型数组保存上一步生成的二进制字符串。

(4)通过用户输入的网络编号(如1,2,3…)和数组值覆盖的方法得到新的数组,表示每个子网的网络地址。

(5)将上一步所生成的网络号显示在文本框中,表示二进制的网络地址,然后通过函数转换成点十进制的形式显示在文本框中,表示十进制的网络地址。

(6)将第4步生成的数组最末位加1,并转成点十进制形式显示在文本框中,表示子网络的起始地址。

(7)将第4步生成的数组的主机位除第32位外全部置为1,转换成十进制形式显示在文本框中,表示子网络的终止地址。

(8)将第4步生成的数组的主机位全部置为1,转换成十进制形式显示在文本框中,表示子网的广播地址。

6 结论

通过子网划分应用程序的开发,既可加深对网络基础知识特别是子网划分原理的了解,并对VB语言的语法和编程规则有更进一步的领悟,提高了思维创新能力和编程的水平。子网划分程序的完成也为子网划分提供了一个便利的操作方式,同时可以为高校或职业院校的网络基础课程提供一个简单易用的工具,帮助教师授课并加深学生对IP子网划分知识点的认识。

另外,本程序还可以进一步完善,比如增加非默认子网掩码情况下的子网划分功能、增加下一级子网划分的功能和更改单步显示所有子网变为全部显示的功能。

参考文献:

[1]林卓然.VB语言程序设计[M].电子工业出版社,2009.

[2]瞿彬,王凤林.Visual Basic程序设计全程指南[M].电子工业出版社,2009.

[3]杨晶.VB6.0程序设计[M].机械工业出版社,2010.

子程序范文第4篇

关键词: 高分子材料; 本构关系; Abaqus; UMAT; VUMAT

中图分类号: TB324; TB115.1文献标志码: B

引言

高分子材料在日常生活中有着广泛的应用,因此其不可避免地出现在仿真分析中.当前没有一种商业软件具有适合高分子材料的材料本构模型.Abaqus是一款优秀的商业软件,其提供的子程序接口UMAT/VUMAT允许用户根据使用需求自定义材料本构.[1]使用该方法,可有效解决在仿真中由于材料本构不适用而导致的仿真与实际测试差异过大的问题.

1高分子材料本构一般描述方法

业界通常使用弹塑性本构定义高分子材料的材料属性.屈服强度一般取材料曲线上第一个峰值点.弹性模量的取法有2种不同的方式:对于应力应变关系曲线有明显直线段的,以第一段直线的斜率作为材料的弹性模量(切线法);对于曲线没有明显直线段的材料,则使用原点与屈服点连成的直线的斜率作为弹性模量(割线法).2种方式与真实应力应变曲线的比较见图1.图 1高分子材料测试材料曲线与仿真曲线比较

由图1可知,无论使用何种方式,仿真使用的应力应变曲线都与实际材料的应力应变曲线有较大差异.将切线法获得材料数据代入到手机电池盖三点弯曲中进行仿真,见图2,其仿真与测试力位移曲线在最高点的差异约为23%,见图3.

对于手机等一些电子类产品,高分子材料的仿真非常重要.在跌落或弯折测试中,高分子材料的应力应变关系与弹塑性本构的差异造成仿真预测不准确,必须定义正确的高分子材料本构.

2Abaqus VUMAT子程序

Abaqus提供丰富的材料本构模型库,能够满足绝大多数仿真材料模型的需要;同时,还提供UMAT/VUMAT子程序接口,让用户可以用FORTRAN语言编程,自己定义需要的材料本构模型,对Abaqus材料库中没有包含的材料进行计算.几乎可以把用户材料属性赋予Abaqus中的任何单元,其中UMAT用在隐式仿真计算中,VUMAT用在显式仿真计算中.由于隐式计算与显式计算的差别,导致UMAT与VUMAT也有一定的差异,但是经过简单的改写即可完成它们之间的转换.

本文使用准静态仿真分析方法,属于显式求解,所以只介绍VUMAT.

3高分子材料VUMAT本构介绍

由图1可知,高分子材料的本构与弹塑性本构最大的差异在于弹性段是直线还是曲线.弹性段的路径也直接影响到卸载的路径.因此,对高分子材料本构的定义关键在于非线性弹性段的实现,即要根据当前的应力值实时获取下一增量步所用的弹性模量值.程序整体流程见图4.

图 4程序整体流程

3.1弹性段多段线性的实现

在弹性段,程序根据弹性模量和泊松比计算应力增量.由于弹性段为非线性,需要根据应力或应变更新用于计算的弹性模量值,直至达到屈服点,因此需要在输入文件中输入材料真实应力应变曲线,通过查表计算的函数,根据当前应力σ所在的位置,计算当前的弹性模量.应力应变曲线输入时,输入格式为:

用查表的方法,直到σn

3.2卸载路径的选择

屈服发生后,需要选择弹性模量参与相关计算,有2个作用:一是用来计算屈服后加载段的应力试探值(不对该增量步真实应力产生影响,只起对比判断的作用);二是用来作为屈服后卸载的路径(为实现不同卸载路径,在程序中设置一个flag位,其值由用户自己输入),用户可以根据实际的需要选择卸载的路径.如图4中,共设置3种卸载路径:沿切线卸载、沿割线卸载以及沿曲线卸载等.用户也可以根据需要增加其他的卸载方式.

4子程序的验证

为验证子程序是否能实现设计的功能,取一个1/8的网格模型进行单轴拉伸仿真,单元类型为C3D8R.输出其应力应变曲线,与材料真实应力应变曲线比较,见图5.

图 5使用VUMAT后加载应力应变曲线与材料曲线对比

使用VUMAT后,加载的应力应变曲线与材料测试得到的真实应力应变曲线完全重合,说明VUMAT可以完全反映材料在加载过程中的力学行为.在卸载过程中,分别实现沿弹性段的切线、割线以及曲线卸载.

为进一步验证,将VUMAT用于图2所示的手机电池盖三点弯模型中进行仿真与试验对比.在使用弹塑性本构模型时,仿真与测试力位移曲线的最大差异约为23%,而引入使用VUMAT编写的高分子材料本构后,其仿真与测试的差异减少到4.5%,见图6.从实际项目的验证结果看,使用VUMAT后电池盖测试的力位移曲线与仿真的力位移曲线基本重合,仿真与测试的差异也明显减小.将该本构应用于其他高分子材料和实际案例,其仿真精度均明显改善,也说明该子程序在实际工程中的适用性.

图 6使用VUMAT后电池盖力位移曲线对比

5结束语

使用VUMAT子程序后,高分子材料在加载段的力学特性与测试的真实应力应变曲线一致,同时将其应用在工程实际问题上,也与测试曲线基本一致,验证该程序的适用性.由于高分子材料的卸载特性较为复杂,还需进一步研究,所以程序只给出3种方式供用户按照实际需求进行选择.

子程序范文第5篇

关键词:速度控制 斜坡函数发生器 RGJ

中图分类号:TP274 文献标识码:A 文章编号:1007-9416(2014)05-0114-01

西门子CFC程序块RGJ(带有冲击限制和跟踪功能的斜波函数生成器),具有对设定值X积分,限制设定值的加速度(速度变化率)和冲击(加速度变化率)的功能。

输出Y的计算方法如下:

其中YA为加速度值,YB为冲击值。

对于曲线时间以外的加速度值YA,加速时的算法为:

减速时的算法为:

在加速时的曲线时间内,冲击值YB算法如下:

在减速时的曲线时间中,冲击值YB算法是:

其中:加速时间TU的定义为:绝对输出量与时间成比例增加值NRM所用的时间。减速时间TD的定义为:绝对输出量与时间成比例减少值NRM所用的时间。根据二进制量EN、S、SA、CF、CU以及CD的逻辑状态,来指定RGJ块的操作模式。LU和LL为输入量X的上下限,通过它们间接限制输出量Y。当Y达到上限值时,二进制输出QU=1,达到下限时QL=1。当输出量Y等于输入量X时,二进制输出QE为1。

加速过程是这样的:开始阶段,设定值X增加后,输入取决于TRU或TR1的最大冲击YB,加速度与时间成比例增加,输出量Y与时间的平方成比例增加;当达到最大加速度YA后,相对于指定的加速时间TU,加速度为常数,输出量Y与时间成比例增加;最后,加速度与时间成比例降低,输出量Y取决于TRU或TR1以时间的平方接近输入量X。

减速基本相同。唐钢重卷线程序中大量使用着由RGJ做的斜坡,主要用于在开卷机、卷取机、张力辊、上卷小车、卸卷小车的点动过程中。之前偶尔发生点动设备时飞车的情况,造成设备损坏和事故时间。我们用ibaPda做程序监测,最近捕捉到RGJ异常输出的情况。

程序如下,在FM458模块中执行,uper limit,lower limit原值分别为+16384,-16384:(如图1)

程序由点动的线速度、根据张力辊的直径、变速箱变速比、电机的最大转速,计算出点动对应的速度值,计算公式为:

点动速度值=*变速箱速比*

点动速度值经RGJ生成斜坡,发送到传动。程序运行中偶尔发生张力辊变频器报警F015(电机堵转),经查程序,发现RGJ程序块输出异常:在给定速度值-636.95的开始阶段,RGJ的输出是按照给定的斜坡反向升速,当快达到设定值时,输出开始反向快速增大,在不到3秒的时间里超过了+15000。也就是给定的电机的转速超过了+15000,而16384对应的是电机的额定转速。当时张力辊裹着带钢,电机转不起来,引起传动报警“堵转”。其他设备如卷取机点动也出现过类似事故,不过卷取机没有如此幸运,在点动时飞了车,电机突然高速运转,令人吃惊。查程序,发现块输出锁定在16384,重启后才恢复正常。

RGJ块不明原因的异常输出极易导致事故发生。对此我们修改了上下限值,经验证上下限能限制住输出。又重新编写了程序取代RGJ块,程序设计思路是:输入量经RGE块(斜坡函数发生器)加斜坡,经PLI块(折线)模拟曲线,最后输出给传动。目前该程序应用在重卷线上,运行平稳。

参考文献

相关期刊更多

舰船电子工程

统计源期刊 审核时间1-3个月

中国船舶重工集团公司

电子工程师

省级期刊 审核时间1个月内

江苏省科学技术协会

电子设计工程

统计源期刊 审核时间1-3个月

陕西省科学技术协会