VB软件计算范文(精选9篇)
VB软件计算 第1篇
1 Visual Basic简介
Visual Basic是Microsoft公司成功的程序开发语言新产品之一, 在全世界已拥有数以百万计的用户。Visual Basic的出现, 使得非计算机程序设计专业人员也能胜任程序设计任务, 并可在较短时间内开发出质量高﹑界面好的应用程序。Visual Basic具有如下功能和特点。
1) 提供了易学易用的应用程序集成开发环境;
2) 结构化程序语言设计;
3) 具有基于对象的可视化设计工具;
4) 事件驱动的编程机制;
5) 强大的网络、数据库和多媒体功能;
6) 完备的联机帮助功能。
2 软件的主要构成
2.1 用户界面
本软件的计算涉及参数众多, 所以用户界面比较复杂。其中主要显示的内容为原始数据和计算结果, 为了明确的显示各个参数和计算结果, 本软件主要包括煤种相关数据、理论空气量和理论烟气量、烟气平均特性、锅炉热平衡计算、选择炉膛尺寸并进行计算、炉膛传热计算和帮助等七个模块。本次软件设计主要流程:用户输入煤种各个参数→进行K值计算→进入纠错程序→进行理论空气量及理论烟气量的计算→结果显示→根据实际情况输入或者选择已存入数据库中的受热面烟道漏风系数和出口过量空气系数→进行各受热面烟道中烟气平均特性的计算→结果显示→输入给定的相关参数→进行锅炉热平衡的相关计算→结果显示→输入或选择已存入数据库中的炉膛尺寸和过热器尺寸并进行计算→预选温度→根据中间计算结果查取参数并进行炉膛热力计算→判断假设温度是否合格。
在软件运行之初要输入的煤种数据包括收到基水分、收到基灰分、干燥无灰基碳分、干燥无灰基氢分、干燥无灰基氧分、干燥无灰基氮分、干燥无灰基硫分、干燥无灰基挥发分和应用基低位发热量。本模块中已存入几十种煤种数据, 使用时, 可以直接调用。
本软件中运用到数据库的部分还有受热面烟道漏风系数和出口过量空气系数、热平衡计算参数、锅炉参数、炉膛结构尺寸、过热器结构尺寸等。数据库的应用大大简化了用户操作和验算过程。
在帮助模块中, 对整个软件的具体操作流程有详细介绍, 在细微的部分, 在相应的计算界面也有相应提示。
2.2 计算程序结构
图1是本软件的程序流程图, 从图中可以看出, 软件在进行理论空气量和理论烟气量的计算之前, 会先进行煤种数据的正误判断, 当判断正确后, 才会进行后续计算。
软件主界面由8部分组成, 如图2所示, 第1部分是煤种相关数据, 第2部分是理论空气量和理论烟气量, 第3部分是受热面烟道漏风系数和出口过量空气系数, 第4部分是烟气平均特性, 第5部分是锅炉参数, 第6部分是锅炉热平衡计算, 第7部分是炉膛结构计算, 第8部分是是炉膛传热计算。软件运行时, 各子界面都有相应操作提示。当计算结束时, 点击计算结果界面中的“结果确认”, 即可返回主界面, 重新开始计算。
在程序运行中只需输入或者填写第1部分、第3部分、第5部分等内容, 其余数据均为中间计算结果和最终计算结果。中间计算结果为查取表格等提供依据, 最终计算结果为判断煤种是否符合给定锅炉提供依据。
3 软件的特点
3.1 通用性
《锅炉机组热力计算标准方法》对于许多系数都作了规定, 但有些系数会随着锅炉运行方式的不同而变化, 如与火焰中心高度有关的系数M, 各受热面的污染系数或热有效系数或利用系数等。它们的合理选取对于热力计算结果有很大的影响。因而, 程序中没有把这些系数固定下来, 而是由用户根据实际情况进行选取, 从而进一步提高了程序的通用性。
3.2 拓展性
本软件中所有应用到数据库的部分都实现了增加记录、修改记录、删除记录的功能。为了便于查取计算用的焓值, 本软件添加了调用计算焓值的一个子程序。
3.3 纠错性
在软件进行运算时, 实现了两部分的纠错功能。
第一, 在在进行理论空气量和理论烟气量的计算之前, 本软件会先进行煤种成分的校核, 如输入正确, 方可进行后续计算。煤种成分转换公式为式 (1) 和式 (2)
如Mar+Aar+Car+Har+Oar+Nar+Sar=100, 软件会继续运行;如等式不成立, 软件会给出错误提示。
第二, 在进行炉膛的热力计算时, 要先假设炉膛出口烟温和热空气温度, 由于这两个值是有范围的, 本软件设置为炉膛出口烟温 (1000℃-1500℃) , 热空气温度 (200℃-400℃) , 如超出有效范围, 软件会给出错误提示, 并给出正确的参考范围。
4 结论
1) 电站锅炉热力计算是当前最流行的评价锅炉运行特性的方法, 是锅炉设计及改造等过程中的重要环节。电力方面的科研人员应该大力发展计算机应用技术, 努力开发出相对更加完善、通用的锅炉热力计算软件, 将更有助于锅炉设计, 对电厂热经济性诊断及优化也将起到更加重要的作用;
2) 本软件的计算结果判断煤种是否符合给定锅炉提供依据;
3) 由于本软件具有通用性、拓展性、纠错能力强、计算精度高等特点, 它的使用必然能提高用户的工作效率。
参考文献
[1]邵洁.Visual Basic程序设计.南京:东南大学出版社, 2006.
基于VB的串口通讯及其软件实现 第2篇
关键词:串口;RS232;API;Pcomm;Mscomm;通信程序
中图分类号:TN911文献标识码:A 文章编号:1000-8136(2009)27-0001-03
现在通讯方式越来越多,速度越来越快,但串行通讯由于自身价格低、协议透明、硬件投资少、软件编程简单等诸多优点在远程数据采集、监视、通信及控制领域里一直占据着极其重要的地位。它不仅没有因为时代的进步而被淘汰,反而在规格上越来越完善、应用越来越广,长久不衰。
1串口通信的通信机理
PC串行通信是指直接对串行端口的UART(PC机的通用异步收发器,也叫异步通信适配器,是PC机用于异步通信的接口)进行编程实现的通信。PC机每个UART中的INS8250中有10个可编程的单字节寄存器,可用于控制、监视操作串行端口,COM1的寄存器地址3F8H-3FEH,COM2的寄存器地址为2F8H-2FEH。10个寄存器由7个地址访问,其中5个寄存器的访问条件是先设置3FBH线路控制寄存器的最高位为“1”,该位也称为DLAB状态位。[1]
一般说来,PC机都有一个或多个串行端口,它们依次为Com1、Com2……。这些串口提供了外部设备与PC进行数据传输和通信的通道,在CPU和外设之间充当了解释器的角色。当字符数据从CPU发送给外设时,这些字符数据将被转换成串行比特流数据;而当接受数据时,从外界进来的比特流数据被转换成字符数据传递给CPU进行处理。在操作系统方面,Windows用通信驱动程序(COMM.DRV)调用API函数发送和接受数据。当用通信控件或声明调用API函数时,它们由COMM.DRV解释并传递给设备驱动程序。
作为一个VB程序员,要编写串口通信程序,只需知道通信控件提供给Windows通信API函数的接口即可,换言之,只需设定和监视通信控件的属性和时间即可。
2串行通讯接口RS-232
前一章节讨论了串口通讯的通信机理,但为了实现具体的数据采集、监视、通信功能,必须了解具体的串口形式。目前使用最广泛的串行接口有两种:RS-232和RS-485。本文着重讨论RS-232,RS- 485不作介绍。
RS-232C标准的全称是EIA-RS-232C标准,其中EIA代表美国电子工业协会,RS代表推荐标准,232是标识号,C代表RS232的最新一次修改(1969年),在这之前,有RS232A、RS232B协议。它规定连接电缆和机械、电气特性、信号功能及传送过程。EIA-RS-232C定义了按位串行传输的数据终端设备(DTE)和数据通讯设备(DCE)之间的接口信息。RS-232C是从DTE或计算机串行接口角度来定义引脚信号的。
目前RS-232是PC机与通信工业中应用最广泛的一种串行接口。RS232被定义为一种在低速率串行通讯中增加通讯距离的单端标准。RS232采取不平衡传输方式,即所谓的单端通讯。[2]
DB9(9针串口)的接线方式如下:1脚,数据载波检测DCD;2脚,接收数据RXD;3脚,发送数据TXD;4脚,数据终端准备DTR;5脚,信号地GND;6脚,数据设备就绪DSR;7脚,请求发送RTS;8脚,清除发送CTS;9脚,振铃指示DELL。
DB25(25阵串口),常用的针脚也有9个,且和DB9可以一一对应,具体接线方式为:8脚,数据载波检测DCD;3脚,接收数据RXD;2脚,发送数据TXD;20脚,数据终端准备DTR;7脚,信号地GND;6脚,数据设备就绪DSR;4脚,请求发送RTS;5脚,清除发送CTS;22脚,振铃指示DELL。
一般来说,对于要求不太高的场合,使用接收数据RXD,发送数据TXD,信号地GND三个脚即可实现数据传输。如果要求有硬件流控制,则必须使用DTR、DSR、RTS和CTS这四个脚。
值得注意的是RS-232C是用正负电压来表示逻辑状态,与TTL以高电平表示逻辑状态的规定不同。因此,为了能够与计算机接口或终端的TTL器件连接,必须在RS-232C与TTL电路之间进行电平和逻辑关系的变换。目前较为广泛地使用集成电路转换器件,如MC1489、SN75150芯片可完成TTL电平到EIA电平的转换,而MC1489、SN75154可实现EIA电平到TTL电平的转换。
3三种读取串口数据的方式
目前通用的串口通讯的软件实现方式有3种,本文都进行详细的介绍,它们各有自身的优缺点,读者在编程时可根据具体的情况选择合适的方式。
3.1利用Mscomm控件
VB提供的这个通信控件“隐藏”了大部分串口通信的底层运行过程,程序员只需编写少量的代码就可以完成软件的开发过程。在通信数据量不大,通信要求不是很高的情况下建议采取此方式。
利用Mscomm控件实现通信最需要掌握的就是它的几个主要属性,下面选取其中重要的进行介绍,其余的可以参考相关资料。[3]
(1)Settings属性:以字符串的形式设置并返回波特率、 奇偶校验位、数据位、停止位。这个属性很重要,针对不同的终端设备需要根据设备的具体情况进行调整(比如日本的设备不同于美国的设备,通常会采用奇校验)。
(2)InputMode属性:设置接收数据的类型,0为文本格式,1为二进制格式。
(3)Input属性:读取并删除接收缓冲区中的数据流。
(4)Output属性:向发送缓冲区传送一数据流。
(5)Rthreshold属性:该属性为一阀值,它确定当接收缓冲区内的字节个数达到或超过该值后就产生代码为ComEvReceive的OnComm事件。
(6)Handshaking属性:设置和返回握手协议,即计算机内部CPU与串口之间的通讯协议,保证在缓冲区过载时数据不会丢失。这个属性在保证数据传输的正确性方面有很大的作用,共有四个选项,分别表示:①无流控制;②软件流控制;③硬件流控制;④软硬件流控制。采用硬件流控时,要求串口之间和电缆支持硬件握手,在自己制作串口通信线时,有关硬件握手的线RTS、CTS、DSR、DTR要连接正确。
在正确设置这些属性的基础上,剩下的就是打开串口,通过串口发送及接受数据了。本文后续章节利用一个实例详细讲解了这些属性的设置及具体代码。
3.2直接调用Win32 API通信函数
直接调用Windows API函数,可以清楚地理解串口通信的机制,根据需要灵活地配置串口的各种参数和属性,而且直接调用低层API函数,通信效率比较高,但付出的代价就是程序较复杂,编程周期长,适合于大型通信程序及通讯质量要求较高的场合。
在32位的Windows系统中,串口通信是作为文件处理的,串口操作一般为打开、关闭、读取、写入等操作,相应的Windows API函数如下:[4]
(1)CreateFile()函数:实现串口的初始化并打开串口,返回串口句柄资源以供后续进程调用。
(2)CloseFile()函数:关闭串口,串口是非共享资源,应用程序以独占方式使用,通信结束应立即关闭。
(3)ReadFile()函数:从串口输入缓冲区读取数据流。
(4)WriteFile()函数:向串口输出缓冲区发送数据。
(5)GetCommState()函数:获取串口的当前配置。
(6)SetCommState()函数:重新分配串口资源的各个参数。
由于Windows API函数大部分是用C或C++编写,所以在Visual Basic 6.0 中调用Windows API函数之前必须先在模块级代码上用Declare语句对所调用的函数和用到的数据结构进行声明,具体的函数声明及数据结构请参考朱友芹编《新编Windows API参考大全》。
3.3调用第三方函数库(如Pcomm函数库)
DLL(Dynamic Link Library)动态链接库是一种可以被VB语言调用的程序模块。DLL中包含的可执行代码不能单独执行,而应由Windows应用程序调用执行。一般数据采集卡的供应商都会提供该采集卡的DLL库函数,使用这些DLL库函数,可以做到程序代码共享,减少程序的编写工作量。用户不需要知道这些代码的实现细节,只需要了解调用函数的参数和函数处理后的返回值。
Pcomm函数库是由台湾Moxa公司为开发串口通信程序提供的一套函数库。通过对Windows API函数的进一步封装,提供50多个串口操作函数。覆盖了Windows操作系统下几乎所有异步通信的问题,可以简洁的开发多线程通讯程序。采用该库,通信的可靠性与使用MSComm32控件比较有了明显提高, 而相对直接使用Win32API函数编程则降低了程序开发难度, 缩短了程序开发周期。
这种方式上述直接调用Windows API函数有相似之处,但也有明显的差异。API函数常采取的方法是在串口监视线程中设置串口通信事件掩码及重叠机制,允许程序在后台等待串口通信事件。通过WaitCommEvent检测特定的串行通信事件。而在Pcomm中,可以采用中断处理的方式,为各种事件指定相应的中断处理函数,如接收到一定数目的字符,接收到结束字符,接收到中止信号以及发送缓冲区为空等;同时还可以采用线程控制的方式,直接采用库中的sio_read()和sio_write()函数读写串口。
Pcomm..DLL中的函数按功能分为6项:端口设置、数据发送与接收、串口状态检测、事件服务、文件传输、杂项。Pcomm..DLL中主要的函数介绍如下。[5]
sio_open:打开端口;sio_close: 关闭端口。
sio_ioctl:设置端口参数,如波特率等。
sio_read:从端口接收数据;sio_write向端口发送数据。
sio_iqueue:得到接收缓冲区中的数据长度。
sio_oqueue:得到发送缓冲区中的数据长度。
Pcomm在串口通信中的功能十分强大,但基于篇幅的考虑,在此不便赘述,读者可参考相关书籍或Pcomm自带的帮助文档。
4串口通讯的错误及处理
由于外界干扰或电压波动等原因,串口通讯可能会出现错误,如接受缓冲区溢出,奇偶校验错误等。为了处理这些错误,在Mscomm控件中就提供了一个OnComm事件,它可以捕获通信时发生的串口事件和错误信息,自动转入事件处理程序。在OnComm事件中,CommEvent属性是OnComm事件的指示,下面简单介绍几个重要的CommEvent属性值。
ComEventBreak:表示收到一个中断信号;
ComEventFrame:表示硬件检测到一个数据帧错误;
ComEvenRxover:表示接收缓冲区溢出;
ComEventTxFull:表示输出缓冲区已满;
ComEvReceive:表示接手到了Rthreshold个字符;
ComEvEOF:表示接受到了EOF字符(ASCII字符26)。
编程时用SelectCase语句,根据不同的CommEvent属性值,去执行不同的处理程序。
除了以上所述的通讯错误外,在串口通信时,如果数据传输突然中断,对串口的读写操作可能会进入无限期的等待状态, 为避免这种情况发生, 必须设置串口读写操作的等待时间, 等待超时后,串口的读写操作将被主动放弃,这样即使数据传输突然中断程序也不会被挂起或阻塞。可以根据具体要求规定串口读写操作的最长时间值,即串口读写必须在这段时间内完成,否则提示串口操作失败。
5串口通讯实例
本实例是一个采集设备电流及功率的通讯程序,采集仪为横河WT230数字功率计,因为要采集的数据量不大,且工程结构简单,故采用Mscomm控件的形式进行串口读写操作。
具体实现步骤如下:
(1)在窗体Form上添加两个重要的控件:Timer1和Mscomm1;
(2)在程序的Form_Load事件过程中添加如下代码:
MSComm1.CommPort=1 ‘使用COM1端口
MSComm1.Setting=“9600,o,8,1” ‘设置通信口参数,注意是奇校验,具体的校验方式要视具体的仪器而定
MSComm1.InputMode=comInputModeBinary ‘设置接收模式为二进制形式,注意一般对于数据采集这类设备通信,都应该设置为二进制形式
MSComm1.PortOpen=True ‘参数设置好后打开端口
MSComm1.HandShaking=2-comRTS ‘设置为硬件流控制,可以有效避免数据丢失的情况发生
(3)程序开始后在一定情况设置Timer1.Enabled属性值为True 激活Timer1_Time事件,可以在固定的时间间隔下执行Timer1_Timer过程中的代码程序,完成数据采集。在Timer1_Timer过程中添加如下代码:
MSComm1.Output = "COMMUNICATE:WAIT 1" + Chr(13) + Chr(10)
MSComm1.Output = "MEASURE:NORMAL:VALUE?" + Chr(13) + Chr(10)
上述语句是将读取指令发送到串口输出缓冲区(注意每个命令字符串后都要加上回车和换行符Chr(13) + Chr(10)),再由系统将其自动发送给通过RS232通信线与计算机端口连接的WT230数字功率计,功率计在接收到命令字符串后,经过自身的单片机处理,就自动地把它测到的电压、电流、功率数据以固定的格式和字符形式通过RS232通信线传回至计算机,计算机程序从输入缓冲区读取这些字符数据并利用VB字符处理函数(如Val,InStr)进行处理就得到了所要的数据,下面是具体的程序代码。
Dim bytinput() as byte ‘注意要将bytinput定义为不定长数组
Dim strtem As String
Dim i as Integer
bytinput =MSComm1.Input ‘将输入缓冲区数据读入给字节型数组bytinput
For i = 0 To UBound(bytinput)
strtem = strtem + Chr(bytinput(i)) ‘字节数组中的ASCII码值转换成相应 Next 的字符
得到的strtem字符就形象的展示了电流、电压和功率值。对于WT230而言,它的数据结构是这样的,每个数据之间由逗号字符“,”隔开,每个数据以用科学计数法表示,且每个数据以字符“E”分为前半部分和后半部分,前半部分为具体的数据(整数形式),后半部分为此数据的指数,指数的底为10。
例如得到strtem的值为“23423E-2,00241E-3,05645E-2”这就表示电压值为234.23 V,电流值为0.241 A,功率为56.45 W。
6结论
串口通讯的硬件投资少,软件编程简单,在低速少量数据传输方面的应用极其广泛的应用。本文详细介绍了串口通讯的基本内容及其具体实现方式,读者可以根据具体情况进行选择。以上代码是实现串口通信的核心部分,经过笔者在多个数据采集系统开发中的应用,具有较强的实用价值。
参考文献
1 李朝青.PC机及单片机数据通信技术[M].北京:国防工业出版社,2002
2 李长林.Visual Basic串口通信技术与典型实例[M].北京:清华大学出版社,2006
3 [美] Microsoft公司著、北京希望电脑公司译.Microsoft Visual Basic 6.0 控件参考手册[M],1999
4 朱友芹.新编Windows API参考大全[M].电子工业出版社,2000
5 MOXA Crop.Pcomm Library Programming Guide,1998
6 范逸之.Visual Basic 与RS232串行通信控制.北京:中国青年出版社,2000
Serial communication and the program based on Visual Basic
Wen Cai, Zhang Xiaosong
Abstract:Serial communication has broad application in many fields because of its simple communication circuitry and flexibility. Based on deep comprehension of the technology of the serial communications, this article expounds important technology detail integrated with practice experience. An example of communication program is presented and analyzed, which gives other researchers valuable reference information.
VB软件计算 第3篇
大量文献检索表明, 煤层透气性系数测定主要有实验室测定和现场测定2种方法[1]。实验室测定法所用煤样中裂隙大多数是由人为制作煤样形成的, 与现场实际情况往往相差较大, 所以测定的煤层透气性系数不是真实值, 而现场测定法一般能较好地反映现场的实际情况, 所以现场测定煤层透气性系数是目前最主要的方法, 其中最具代表性的为周世宁院士提出的钻孔径向流量法。
但是钻孔径向流量法计算步骤复杂, 并存在无法找到合适的计算公式或得出2个结果的问题, 针对上述问题, 本文以径向流量法的测试原理, 以文献[2]和[3]中所述的煤层透气性系数计算公式的变换形式为模型, 利用VB语言开发出快速计算软件。
1 钻孔径向流量法
径向流量法测定法是以瓦斯在煤层中径向流动理论为基础, 煤层中瓦斯的流动遵循达西定律, 由假设的煤层中瓦斯的流量, 使用达西定律和质量守恒定律, 可以推导出的钻孔气体径向流量[4]微分方程。径向流量法计算过程中的无量纲流量准数Y和时间准数F0的表达式[5]为:
无量纲流量准数和时间准数的关系式为:
不同的F0有不同的a、b值 (表1) 。
利用式 (3) 、式 (4) 和无因次方程组可得透气性系数的计算公式如下:
选用一个煤层透气性计算公式进行试算, 得出煤层透气性系数λ和时间准数F0, 若F0不在表1范围, 换用下一个计算公式, 继续试算, 直至找到适合的值。然而, 在实际应用过程中, 有时在计算过程中找不到正确的计算公式, 有时在计算过程中出现2个结果。出现这些情况的原因是由于Y=f (F0) 为不连续的。如计算过程中找不到合适的结果, 可以借鉴修正后的优化算法[5]来解决这一问题, 从而能够有效地避免出现异常值的问题。
2 软件开发
煤层透气性系数的计算过程繁琐并且会出现异常值。以VB语言开发的计算软件, 可以方便、快捷、准确地得出计算结果。程序异常值处理流程如图1所示, 程序流程如图2所示。
处理异常值的程序代码如下:
软件的操作界面如图3所示。
3 计算示例
钻孔半径, 气体排放量Q=75.869 5m3/d, 打开阀门时间t=0.174 d, 煤层瓦斯含量系数α=12.33 m3/ (m3·MPa1/2) , 原始瓦斯压力P0=1MPa, 钻孔瓦斯压力P1=0.1 MPa, 钻孔长度L=100m (图3) 。
4 结论
(1) 基于Visual Basic计算机程序设计语言, 成功地开发了煤层透气性系数计算软件。
(2) 该软件计算结果准确可靠, 消除了复杂的计算过程, 有效避免了煤层透气性系数异常的情况。
(3) 该软件具有可视化强、操作性强等优点, 具有较大的推广应用价值。
摘要:煤层透气性系数是评价瓦斯抽采效果和衡量煤层突出危险性大小的重要指标。钻孔径向流量法测定煤层透气性系数在我国广泛应用, 针对其计算过程十分复杂、甚至出现异常值的问题, 采用Visual Basic计算机程序设计语言, 综合修正后煤层透气性系数的优化算法, 编写煤层透气性系数计算程序, 并成功应用于实例, 计算结果准确可靠, 有效避免了煤层透气性系数异常的情况。
关键词:煤层,透气性系数,Visual Basic,径向流量法
参考文献
[1]周世宁.用电子计算机对两种测定煤层透气性系数方法的检验[J].中国矿业学院学报, 1984, 13 (3) :38-47.
[2]刘明举, 刘彦伟.煤层透气性系数计算问题分析[J].煤炭科学技术, 2004, 32 (2) :59-61.
[3]刘明举, 何学秋.煤层透气性系数的优化计算方法[J].煤炭学报, 2004, 29 (1) :74-77.
[4]周世宁.瓦斯在煤层中流动的机理[J].煤炭学报, 1990, 15 (1) :15-24.
VB软件计算 第4篇
关键词:ComboBox组合框;色环电阻;阻值计算
目前编写色环电阻阻值计算器的平台,主要有C语言、VB程序设计、网页,等等。本文主要通过VB程序设计编写四色色环电阻阻值计算器。
一、VB程序设计介绍
Visual Basic采用了面向对象的程序设计思想,面向对象的基本思路就是把复杂的程序设计问题分解,分解为若干个能够完成独立功能的、相对简单的对象集合。所谓“对象”就是一个可操作的实体,如窗体、命令按钮、标签、文本框等。面向对象的编程就好像搭积木一样,程序员可根据要求,直接在屏幕上“画”出窗口、菜单等不同类型的对象,并为每个对象设置属性,这些对象组合在一起就构成了整个程序。
二、四色色环电阻阻值计算器设计方法
1.新建工程1
在窗体上绘制Frame 1,Frame 2,Combo1,Combo 2,Combo 3,Combo 4,Command 1,Command 2,Command 3,Label 1,Label 2,Label 3,Label 4,Label 5,Label 6,Label 7,Label 8,修改其相关Caption属性值。
2.四色色环电阻阻值计算器功能介绍
(1)色环电阻通常有四环和五环
四环:第一环、第二环均表示数字,第三环表示倍率,第四环表示误差。
五环:第一环、第二环、第三环均表示数字,第四环表示倍率,第五环表示误差。
那么,如何识别哪一环代表误差环呢,前面几个环几乎靠得近且等间距,最后一环离前一环相对较远,那么这一环就代表误差环。再说一下表示数字的颜色:黑0,棕1,红2,橙3,黄4,绿5,蓝6,紫7,灰8,白9。
先说四色环:黑0,棕1,红2,橙3,黄4,绿5,蓝6,紫7,灰8, 白9。金、银表示误差。
各色环表示的意义如下:
第一条色环:阻值的第一位数字
第二条色环:阻值的第二位数字
第三条色环:10的幂数
第四条色环:误差表示
精确度更高的“五色环”电阻,用五条色环表示电阻的阻值大小,具体如下:
第一条色环:阻值的第一位数字
第二条色环:阻值的第二位数字
第三条色环:阻值的第三位数字
第四条色环:阻值乘数的10的幂数
第五条色环:误差(常见是棕色,误差为1%)
四色环电阻误差为5%~10%,五色环常为1%,精度提高了。
(2)使用方法
在第一环、第二环、第三环的下拉列表框中,分别选择各种颜色,在选择完成后,单击“计算”按钮。注意,初始状态下“计算”按钮是灰色,不可用的,只有当第一环或者第二环任一个数据大于零时,才恢复到激活状态。当完成了色环电阻阻值的计算之后,可以单击“重置”按钮或“退出”按钮,完成进一步的相关操作。
三、主要程序代码介绍
四、反思与总结
本文所编写的程序,界面简单,功能实用,便于操作,代码注释通俗易懂,学生学习之后对VB程序设计产生了浓厚的学习兴趣,我很欣慰,同时也衷心地感谢我的学生,正是他们让我的教学理念发生了变化,从以教师为主体,变成以学生为主体,寓教于乐,在潜移默化中把枯燥乏味的知识传授给学生,达到教书育人的目的。
今后我将继续在教育教学中努力探索新的着力点,为使学生热爱学习,养成缜密的思维方式,学到有用的技能,顺利走上满意的工作岗位,实现中职教育的目标而奋斗。
基于VB的软件授权 第5篇
使用序列号是一种最常用的经济、简单、实用的软件保护方式,被保护软件通过检查特征值来判断是否被非法使用。多数软件是在程序体内,通过算法设置特征值,这些特征值对一个具体使用者是固定,可以无限制的拷贝。
1基于VB的硬盘指纹识别与应用
大多定制化软件通过获得计算机内部与外部硬件的特殊指纹信息,使用序列号方式进行授权。但由于计算机硬件及软件更新的加快,硬件指纹信息的变化周期加快。无论是程序还是数据都是存储在硬盘上的,计算机系统的硬盘(引导盘)的更换率相对较低,因而读取硬盘指纹信息的方法被大量采用。
本程序利用VB设计而成,不怕对硬盘进行格式化,通过在多个定制系统中的易长期使用,性能稳定可靠。
1.1设计思想及特点
对本机硬盘进行分析,读取主机逻辑盘的格式化序列号,通过算法给出本机用户信息,通过注册机计算注册码。用户得到安装注册码后,安装程序将注册码进行加密存储,如果主或逻辑盘被格式化,在使用过程中只要有一个格式化序列号经过算法还原正确就可能通过验证,同时自动对被格式化的硬盘进行自动本机注册。
这种注册方式的特点是具有注册号自动保护及恢复重建功能;硬盘被格式化后,硬盘序列号会发生变化,软件锁根据硬盘的变化,自动在用户计算机上修补并生成新的注册文件;加密与还原模块中的算法可变(对不同的软件),可以在程序不同位置中多次出现。
1.2实现方法
首次安装时,利用Windows API的GetVolumeInformation[1]函数取得格式化序列号,生成用户信息,此用户信息提交给开发者,由开发者通过注册机计算注册码。
1.3程序内核
1.3.1用户信息读取(图1)
通过程序读取用户硬盘信息。
1.3.2计算注册码(图2)
验证注册码:在客户计算机中完成(以2个盘为加密点)。
验证注册分两部分,一是注册与核对,安装时取本机硬盘格式化序列号,通过算法程序核对,写入注册文件(reg.dat),程序正常运行;二是自动修复,如只有1组数据能通过算法程序核对,则重新在本机计算注册码,并写入注册文件,从而完成注册码的自动修复工作。
摘要:基于VB设计的注册方法,在无附加硬件的条件下,实现了基于硬件指纹技术的软件授权。
关键词:定制软件,VB,软件授权
参考文献
基于VB的通用运动控制软件模型 第6篇
通用运动控制平台是近几年来运动控制系统经常采用的一种实现平台,其基本结构是工业PC加运动控制卡形式,这种平台的优势十分明显,既保证了运动控制的实时性,又能够提供强大的任务层规划执行能力和人机交互性能,而且还可以简化系统设计,降低开发和维护成本,因而是目前流行的运动控制解决方案[1]。系统软件的开发包括人机界面、运动控制、流程控制、网络通讯等多种功能,工作量比较大,难度相对于机电系统的开发人员而言也是比较大的。因此简化运动控制软件的设计,设计通用的运动控制软件模型,甚至设计可重用的运动控制软件模块,就显得非常必要。
VisualBasic(VB)是微软推出的面向Windows的可视化编程开发工具。其开发过程具有开发周期短、门槛低、易学易用等优点,在机电系统软件开发方面占有很大的比例。VB也存在着一些缺点,例如缺乏稳定的应用框架,运行的稳定性较差,实时性较差,不支持完全的面向对象技术等。但这些问题一部分可以通过合理的编码来解决,另外的则可以通过合理的建模与技术手段来解决。
本研究将基于VB和开放式运动控制系统,提出新的运动控制软件模型,并结合VB分析其实现所需的关键技术。
1 运动控制软件模型设计
基于PC的运动控制软件的开发通常是采用运动控制卡附带的驱动程序和开发函数库(API),利用现有的各种通用编程语言和开发环境进行软件的开发,其功能模块与结构如图1所示。
为了简化运动控制软件的开发,本研究提出了如图2所示的软件系统模型。该模型基于面向对象的方法建立,用UML[2]中的类图(ClassDiagram)表示。
下面对该模型做一简要的说明。整个系统模型由3部分组成:(1)运动模型部分,包括类Motion,Axis和Coord,以及相关的辅助类,例如实体类Point,Trajectory和配置类MotionConfig、AxisConfig和CoordConfig等;(2)事件模型部分,包括类Event和EventListener;(3)任务管理模型,包括类Task和TaskMan。
1.1 运动模型设计
运动模型是对运动的封装,该模型将运动系统的运动分解为单轴的运动、轴的随动和多轴同步运动。在本模型中将单轴的运动通过类Axis实现,将多轴同步运动通过类Coord实现。轴的随动是指一根轴跟随着另外一根轴(主轴)按照某种规律运动,例如电子齿轮、电子凸轮等运动模式,这种运动模式的特点是只需要进行配置,配置完成后该轴将自动地随着主轴的运动而运动,无需单独控制,因此没有设计专门的对象来完成该运动的控制。随动运动的配置是在Motion类中实现的。
类Motion是对运动的整体封装,对外部提供统一的调用接口。应用程序通过调用Motion类中的方法来实现对运动的控制,而类Motion则将相应控制命令转发到类Axis和Coord来实现。此外,类Motion还负责运动系统的初始化、参数配置、事件处理等工作。在实现方式上,类Motion除了对随动控制的配置外,其余均是通过调用类Axis和类Coord的方法实现;而类Axis和类Coord则是通过调用运动控制卡API来实现的。这样设计的优点是当底层运动控制元件改变后,运动控制模块对外的接口(类Motion中的方法)可以保持不变,只需更改Axis和Coord中方法的实现即可,保证了本模型的重用性。
所有的运动控制系统的参数都保存在配置文件中,通过调用类的初始化函数完成运动系统硬件的配置过程。同时该模块中的类都是有状态(state-machine)的,在不同的状态下允许调用的方法是不同的,保证了运动控制系统软件调用的安全性。
1.2 事件模型设计
运动控制系统作为典型的机电系统,要求软件能够及时地响应突发的事件,尤其是在运动过程中触发的各种事件,例如运动停止、伺服报警、行程开关触发等。由于VB中对对象技术支持的不尽完善,无法通过对象运行时类判别获得事件的类型,必须设计统一的事件处理模型。在本研究的模型中,事件的处理采用了“监听器”模式,由运动类产生事件,监听器类获取事件,并通知应用程序处理。其模型如图2部分所示,其实现方法说明如下:
在VB中事件对象可以直接用类模块来定义,在运动过程中产生异常时,运动模块只需生成一个Event对象,将运动状态信息写入到事件对象中,然后调用监听器的事件接收方法将该事件传播出去。事件监听器获得事件后,利用RaiseEvent语句产生一个VB事件,并将Event对象作为VB事件的参数。这样,在包含事件监听器对象的应用模块中就可以像处理普通VB事件一样对该运动事件做出响应。
(1)Motion类中addEventListener()方法的实现。
VB里有一个集合对象Collection,可以实现对EventListener的管理。其代码如下:
该代码实现了将事件监听器与运动控制对象的关联。
(2)事件的传递。
当运动模块检测到运动信息后,调用sendEvent()方法来送出事件:
1.3 任务管理(多线程)模型设计
Basic语言本身不支持多线程技术,VB虽然可以通过调用Windows的API来实现多线程[3],但该方法难度较大。考虑到本研究中的控制模型主要利用线程进行运动状态监视,运行时间短,因此,本研究提出了基于定时器的多线程模型,其采用分时的思想,如图2中左下部分所示,包括类Task和TaskMan。
该模型的工作原理如下:当定时器产生定时器事件时,对象TaskMan调用schedule()方法,在该方法中,根据任务队列中的每个任务的优先级(priority),运行周期(interval)等数据,依次调用Task对象中的run()方法,从而模拟了多个线程运行的效果,如图3所示。
应用程序只需要实现Task对象中的方法,就可以编写自己的多线程应用。在编程中需注意run()方法中的代码应尽量做到高效、执行时间短。由于Windows操作系统和VB中定时器的限制,其执行周期最小也需54.9ms,只能应用到实时性要求不高的场合。如需使用更高精度的时间间隔,应当使用Windows中的多媒体定时器,能实现最高1ms的调用周期。
在基于PC的运动控制系统中,当运动出现异常时,运动控制卡能自动进入保护状态,因此对软件处理的实时性要求不高,基于定时器的多线程模型能够满足控制软件编程的需要。
2 模型的实现
2.1 类的定义
VB 6.0提供了类模块(ClassModule)[4],可以用来实现模型中定义的类。本研究所建立的运动控制系统模型对类没有特殊的要求,因此可以直接在VB中定义(如图4所示)。
2.2 运动类的实现
前面介绍了运动类的接口,该接口可以很容易地利用各种运动控制卡所提供的API实现,在本系统中,所使用的是固高科技提供的GT400系列的通用运动控制卡,该卡提供了Windows平台下的C开发库和VB开发接口。由于该卡提供了Axis和Coord的工作模式,这两个类可以很容易地直接利用运动控制API实现。本研究重点说明了类Motion的实现方法,包括初始化过程、运动监视过程等。
初始化时,类Motion首先根据配置文件获取每根轴的配置信息,然后调用类Axis的方法,创建Axis对象,初始化Axis对象,并执行Axis对象的AutoHome方法进行零点标定。当所有轴都初始化完毕后,再根据配置文件中的坐标系信息调用GT400的函数以创建Coord对象,并初始化,然后分别根据配置文件中的电子齿轮和电子凸轮参数配置Motion类中的电子齿轮和电子凸轮参数。这些配置操作可以通过直接调用GT卡的驱动程序实现。
上述初始化过程完成后,最后一个步骤就是初始化监听进程,可利用上述多任务模型实现。在监听进程中,利用GT提供的API,就可以读取轴状态字和坐标系状态字,并进行分析,可提取出相应的运动状态,然后利用事件模型将状态传播出去。监听进程初始化结束后处于停止状态,当类Motion处于运动状态时才会启动。
2.3 配置文件的格式
在本研究中,配置文件采用XML格式,并给出了运动控制系统所需要的所有配置参数,下面给出一个配置文件供参考:
3 模型的应用
由于该运动控制软件模型采用面向对象技术来设计和实现,因此能够很方便地和应用系统软件结合起来。本研究将上述模型用于“基于计算机视觉的大幅面丝网网版检测装置”的控制软件的开发中,取得了很好的效果。其软件设计模型如图5所示。
装置工作原理如下:由于丝网网版幅面较大,采用运动机构驱动数字相机分块扫描并判别的方法,当相机运动到某个预定位置时,开始采集图像,并进行匹配和识别,与此同时相机向下一位置运动,直至整个网版全部被处理完毕。由于检测精度较高,对运动系统的运动精度要求也较高,较高的定位精度有助于提高图像定位和匹配的速度。
在本软件系统中,Motion模块作为底层的模块出现,为其他各个模块提供运动信息,并接受主程序模块MainApp和人机界面模块UI的运动控制命令。UI模块启动Motion模块按照规划好的路径运动,并随时处理Motion模块的事件消息,显示在操作界面上;图像处理模块Image需要从Motion模块中获得当前的位置信息,以便于进行图像的定位和匹配操作。所有的模块由主程序MainApp调度,例如当运动控制模块达到指定位置后,调用图像处理模块采集图像,并启动图像处理线程。为了提高图像处理的速度,Image模块采用VC编程实现,以DLL的形式封装[5],并提供接口供VB调用。
4 结束语
VB是基于Windows的一种简单易用的开发环境,是比较适合作为机电软件开发人员使用的一种开发工具,本研究所建立的运动控制模型及其基于VB环境的实现具有较好的通用性,可以直接应用在一些一般的通用运动控制系统上。
由于采用了面向对象的模型,该软件模块也具有较强的扩展性,开发人员可以根据具体的应用,开发出不同的接口,从而实现不同的功能。
摘要:针对通用运动控制系统控制软件开发中存在的复用问题,结合VB开发环境在机电系统软件开发中的优缺点,提出了较为通用的运动控制软件模型及其实现方法,重点分析了基于VB平台开发此类控制软件所需要解决的关键技术问题及其解决方案,包括事件处理机制、多线程机制模拟等,并结合具体应用分析了该模型的使用方法。研究结果及应用分析表明,所提出的基于VB的运动控制模型适合大多数开放式运动控制平台,所采用的方法和技术对其他工业应用软件的开发也具有一定的参考价值。
关键词:Visual Basic,运动控制,软件建模
参考文献
[1]吴宏,蒋仕龙,龚小云,等.运动控制器的现状和发展[J].制造技术与机床,2004(1):24-26.
[2]高焕堂.UML嵌入式设计[M].北京:清华大学出版社,2008.
[3]周丹,邬义杰.多线程技术在开放式CNC系统中的应用[J].机电工程,2003,20(4):68-71.
[4]张少伍,韩江,胡慧萍.基于VB的数控车削加工仿真系统的研究与开发[J].机电工程,2007,24(11):35-36,52.
VB软件计算 第7篇
多数工作都需要输入数字 (如网吧收银员、超市收银员、银行收银员等) , 而一些刚接触此类工作的新手总是键入数字的速度比较慢而且经常出错, 从而大大降低了工作效率。数字输入练习软件, 能针对性的提高使用者的数字键入速度和准确率, 以达到使用者在短时间内适应此类工作环境, 从而提高其工作质量和效率。本系统是基于VB和Access设计的一个小型的数字输入练习软件, 包含了多种方式的数字输入练习。用户可以根据自己的喜好、需要来进行相应方式的输入练习。从而达到提高小键盘数字输入速度及正确率。
1、总体设计
根据用户的喜好和需要的不同, 数字输入练习应分为简单数字和小数的输入训练和一组相对比较长的数字的输入训练, 例如输入18位的身份证号码。用户登录后可以选择相应的练习方式进行练习。因此数字输入练习软件要完成的主要功能有:
1.用户登录, 选择练习方式;
2.设计简单数字及小数的输入练习;
3.设计18位数组的输入练习;
4.设计数字输入练习小游戏;
5.分别对每次练习的成绩加以记录。
2、详细设计
·登入模块
为记录用户名以便区分用户记录练习成绩, 故设计此界面。其实现了用户的一些简单编辑功能, 有验证用户是否已存在、检查添加是否为空、判断是否选择用户、用户是否还有剩余、用户名的值获取放入变量完成数据库的操作等功能。
·整数与小数输入练习模块
此模块提供了整数与小数的打字练习, 首先声明两个公共变量xsd (设置小数点识别) 、st (总时间) 为设置界面共用, 四个变量r (统计正确量) 、w (统计错误量) 、t (时间变量) 、dc (统计输入量) , 定义7个函数 (其中一个为随机生成五组整数、一个为随机生成五组小数, 另外五个是为了计算正确率所定义的) 。
点击"开始"按钮, 触发程序的主要功能随机生成了五组数字。
回车键在第五个文本框中触发新一串的五组数字的生成。
Timer事件控制练习时间, 结束练习, 实现正确率的计算。
Label控件显示剩余时间、单词速度、正确率等。
"退出"按钮实现程序的结束。
"返回上层"按钮实现了与选择练习方式窗口的切换。
"历史查询"按钮实现历史成绩查询界面的显示。
"选项"按钮实现了选项设置窗口的显示, 选项设置窗口主要实现了练习时间与小数点的设置, 变量xsd=false时为随机生成整数否则为小数, 练习总时间从文本框获取至变量st中。
整数与小数练习界面如图1所示:
18位数组练习模块
此界面提供了18位数字练习, 首先定义3个变量的声明a (总数组的统计) 、b (正确数组的统计) 、s (练习时间的统计) , 定义两个函数init (此函数主要实现数组的生成) 、init1 (此函数主要实现输入数组与生成数组之间的校对)
"开始练习"按钮主要为触发init函数和timer事件, 实现了随机生成数字和计时的功能。
"暂停练习"按钮主要为关闭timer事件, 实现停止计时的效果。
"结束练习"按钮主要为关闭timer事件、显示正确率和速度等数据、将新的数据写入到数据库, 实现练习的结束功能。
"返回上层"按钮主要为与选择练习方式窗口之间的切换, 实现界面的返回。
"历史成绩查询"按钮主要实现历史成绩查询窗口的显示。
Label控件显示单词速度、正确率等。
18位数组练习界面如图2所示:
·数字打字游戏模块
此界面提供了打字游戏的练习, 三个变量的定义score (游戏得分变量) 、speed (游戏随机速度变量) 、t (时间变量) , 两个函数init (在frame1中随机产生0-4的数字) 、init1 (有frame1中随机产生5-9的数字)
"开始"按钮为触发init和init1函数、触发timer等事件, 实习了随机产生个位数字并下落和计时等功能。
"返回上层"按钮主要为与选择练习方式窗口之间的切换, 实现界面的返回。
"历史成绩查询"按钮主要实现历史成绩查询窗口的显示。
滚动条为调节数字下落速度, 越往左越快左端为最快, 越往右越慢右端为最慢。
Label控件为显示剩余时间和得分等。
两个timer控件, 一个设置数字下落速度其Interva值越小数字下落越快, 另一个为计算游戏时间及当游戏结束时记录数据到数据库等功能。
数字打字游戏界面如图3所示:
3、结论
本数字输入练习软件在练习方式上都有着比较强的针对性。其中整数与小数的练习, 包括了整数练习和带有小数的练习, 主要针对财务会计类人员。18位数组练习, 其主要练习身份证号的输入, 针对网吧相应人员输入身份证号的练习。打字游戏为休闲类, 即合适大多数人, 又可以为前两种方式练习人调节练习氛围。
摘要:基于VB开发的小型数字输入练习软件, 数据库采用Access, 能实现实数和较长数字的输入训练, 同时记录每次练习的成绩, 时间等指标, 为使用者在短时间内适应工作环境提供了方便。
关键词:Visual Basic,数字输入,长数字
参考文献
[1]龚沛曾, 杨志强, 陆慰民.Visual Basic程序设计课程 (第3版) [M].北京:高等教育出版社, 2007.8
[2]李俊民, 高春燕.Access数据库开发实例解析[M].北京:机械工业出版社, 2006.1
[3]严健武, 陈微.用MsFlexGrid控件设计打字练习软件[J].中国水运 (学术版) 2006.2
VB软件计算 第8篇
以简单转动结构为例,介绍一种基于VB调用ANSYS和MATLAB软件进行计算、分析的方法,使设计人员了解VB如何调用Ansys和Matlab进行二次开发。
1 联合开发步骤
开发流程如图1,Ansys的有限元分析模型采用其自身提供的参数化设计语言APDL编写,将需要修改的数据设置成参数。VB则提供参数输入界面,并将输入参数与APDL编写的命令流中的参数进行关联。VB程序通过后台调用Ansys进行分析。然后,把Ansys分析计算结果作为后续处理的参数值,调用MATLAB系统程序求解模型。最后,求得对应的结果图形和数据文件。
2 软件实现
2.1 参数传递
参数传递将用户输入到VB界面的相关参数传递到指定的文件(parameters.dat)中[1,3,6]。
其中
2.2 APDL文件调用参数
在分析程序中添加以下程序即可导入VB界面的相关参数到APDL程序代码中。
2.3 Ansys输出
Ansys可随意输出,其中模态矩阵输出Eig文件输出方法如下。
其中filename为输出文件名;nummodes为输出模态数。
2.4 后台调用ANSYS
Visual Basic提供了shell函数。shell函数可以执行一个可执行文件,返回一个Variant(Double),如果成功的话,代表这个程序的任务ID,若不成功,则会返回0。
其中
2.5 读取Ansys结果至matlab
按自己设计的结果输出文件格式来读取结果,其中模态分析的Eig文件输出格式比较规范,可以编写一套matlab M文件来导入任何Eig文件以备用。
确保要查找的字符串长度短于整字符串长度,其中还需要编写检查用的M文件,具体如下。
2.6 后台调用MATLAB
Matlab支持Active X技术。既可以在其他程序下运行Matlab的Active X部件,也可以在Matlab下运行其他的Active X部件。也就是说,Matlab实现了Active X自动化服务支持,在VB下通过Active X自动化接口可将Matlab作为VB语言的一个Active X部件调用。首先必须引用matlab控件[4,5]。
3 应用实例
为检验该方法的可靠性、实用性、优越性,本文以简单转动结构为实例进行验证。设计界面如图2所示,转动结构的转动中心需要一输入节点2000000,监测输出节点16992,并在输入节点上输入载荷,本例仅考虑周向转动,因而输入My=1000000m N.mm,响应需要监测Z方向上的位移。输入参数后,即可进行Ansys求解并输出Eig结果文件,然后利用Matlab进行响应计算并输出显示。如图3所示,上面是对应的模态贡献图,下面是相位图。
可见,本例显示了,利用VB可示化、Ansys强大的有限元分析以及matlab的数值计算与结果处理是一个很好的二次开发搭配方法。
4 小结
本文论述了VB调用Ansys和Matlab软件进行分析计算的方法,对分析设计进行二次开发以及在实际工程中的应用有一定参考价值,对解决同类问题也有一定帮助。
摘要:该文论述了VB调用Ansys和Matlab软件进行分析设计的方法,并介绍其联合开发步骤、编程关键及其应用。
关键词:VB,Ansys,Matlab
参考文献
[1]邵正,毛中亚,郭其一,等.VB调用ANSYS与MATLAB软件在电磁力计算中的应用[J].电工电气,2010(4):20-22.
[2]张海军,王高平.Visual Basic 6.0对Ansys调用的技术研究[J].机电产品开发与创新,2008,21(3):116-117.
[3]彭公孚,席长友.基于VB控件开发的ANSYS程序调用方法[J].武汉理工大学学报,2010(4):49-50.
[4]胡智文,邓铁如.在VB应用程序中集成Matlab[J].计算机工程与应用,2003(7):104-106.
[5]胡智文,陈连运.利用ActiveX技术的VB与Matlab间的无缝集成[J].计算机工程,2004,3(7):64-65.
[6]邵军,项宗方,王平.基于VB的ANSYS二次开发[J].重庆职业技术学院学报,2006,15(2):144-145.
VB软件计算 第9篇
根据课程的实际要求, 结合考试管理的实际过程, 本习题库可以完成以下功能:
1) 根据不同的课程需要, 录入不同课程的题库数据, 为不同的课程服务。
2) 可以存储用户的基本情况, 包括编号、姓名等。
3) 根据不同的用户类型来完成相应所需的功能。学生用户主要是可以完成测试。教师用户可以创建题库、进行维护、创建试卷等;
4) 教师创建习题库后也可以随时更新, 习题型包括填空题、单选题、问答题类型。
有了这个题库软件, 我们系里的老师就可以将现有的习题和试题录入到库中, 并且随时可以进行更新, 学生可以根据要求参加测试, 基本可以实现考试过程中的各项任务。
二、题库模块设计
1.整体流程
根据一般考试流程, 结合上述的各功能模块及其特点, 系统的基本流程:显示版本信息或系统信息→系统主要功能模块→用户登录表单→创建、修改试卷、评阅试卷、题库维护或者参加考试、查询结果。
2.开发软件
我们根据自己的能力, 并结合需要的功能决定使用Visual Basic中文版作为开发工具, 数据库则采用Microsoft Access。
(1) Visual Basic
作为一种面向对象的程序设计语言, 与传统的过程化程序设计语言相比, 有许多新的特点。
a) 面向对象
VB不但仍然支持标准的过程化程序设计, 而且在语言上还进行了扩展, 提供了面向对象程序设计的方法。对象是VB程序设计的核心。窗体和控件等都是对象。对象具有属性、方法和事件, 属性描述对象的数据特征, 方法描述对象的行为特征, 事件是对象所产生的事情。事件发生时可以编写代码进行处理。
b) 可视化
用传统的过程化程序设计语言编写程序, 主要工作是设计算法和编写代码, 程序的各种功能和显示的结果都要由代码来实现。而用VB来开发应用程序, 主要是设计用户界面和编写代码, 其中设计用户界面最能体现"可视化"的特点。VB中提供的“工具箱”有若干个控件, 程序设计时可以使用这些控件进行界面设计。使用时只需把它们放到窗体上, 而不用编写代码。
(2) Microsoft Access
作为Microsoft Office组件之一的Access是在Windows环境下非常流行的桌面型数据库管理系统。使用Access无需编写任何代码, 只需通过直观的可视化操作就可以完成大部分数据管理任务。
在Access数据库中, 包括许多组成数据库的基本要素。这些要素是存储信息的表、显示人机交互界面的窗体、有效检索数据的查询、信息输出载体的报表、提高应用效率的宏、功能强大的模块工具等。Access不仅可以与Word和Excel等办公软件进行数据交换和共享, 并且通过对象链接与嵌入技术可在数据库中嵌入和链接声音、图像等多媒体数据, 还可以通过ODBC与其它数据库相连, 作为后台数据库提供给其他开发工具如PB, VB, Delphi等, 实现数据交换和共享。
3.功能模块
根据教师的需求和习题库软件的需要, 习题库软件应该具有以下功能模块:用户管理、题库管理、试卷创建、答题管理等。
4.数据库设计
数据库是数据库包含了题库 (填空题、单选题和问答题) 信息表、教师信息表、学生信息表, 其中单选题题库数据表及其相应功能如表一所示。
三、程序开发
(一) 窗体开发
根据系统的整体流程和需要, 我们一共设计了以下几个窗体, 包括主窗体、主界面、登录窗体等。例如在系统主界面中将实现用户登录、题库管理、测试管理等一系列的功能。我们设计的某门课程的其中一部分窗体如下图所示。
(二) 代码开发
根据习题库软件的功能和流程设计, 根据需要进行代码设计开发, 以下是其中部分示例。
四、题库设计实现感想
由于我们是初次制作习题库软件, 因此在界面的设计、功能的设置以及一些程序的编写等方面都存在着不足, 并且题型只有单选题、填空题和问答题, 将在今后的使用过程中逐步的加以完善。通过本次的实践, 我们不但为教学工作节省了时间, 可以将很多基础课程习题进行共享使用;还将我们所学的知识应用到了实践, 为我们以后的工作积累了宝贵的经验, 同时也更加培养了我们的团队精神。
摘要:根据工作实际, 笔者开发了简单的习题库软件Visual Basic, 简述了其题库模块设计流程等及程序开发, 得出结论。它作为一种面向对象的程序设计语言, 与传统的过程化程序设计语言相比, 有许多新特点, 并将很多基础课程习题进行共享使用, 为教学工作节省了时间。
关键词:习题库软件,VB,Access
参考文献
[1]孟德欣, 谢婷等编著.VB程序设计[M].北京:清华大学出版社, 2009.
[2]网冠科技.Visual Basic6.0控件时尚编程百例[M].北京:机械工业出版社, 2003.
【VB软件计算】相关文章:
应用vb语言开发计算机读图软件09-12
面积计算软件06-22
学习计算机软件融入最新的计算机软件市场中02-16
软件功能设计计算机软件论文04-13
实时软件设计计算机软件论文04-13
计算软件应用软件开发论文04-17
网络计算与计算机软件论文04-16
计算软件应用软件开发论文提纲08-05
网络计算与计算机软件论文提纲08-04
计算机绘图软件05-30