
正文
vb.net控制仪器 vb自制控件
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
vb.net如何在windows控制台下使用定时器
控制台调用Timer和窗体是类似的。首先在项目引用里面加入System.Windows.Forms程序集,然后在代码顶部引入命名空间:
Imports System.Windows.Forms
在控制台的Module中声明一个计时器:
Private WithEvents Timer1 As New Timer()
把计时器的Tick事件静态绑定到处理函数中:
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
'一些代码
End Sub
在需要开始计时的地方,修改其Interval、Enabled属性:
Timer1.Interval = 1000
Timer1.Enabled = True
相关问答
Q1: 我想用VB.NET来编工业控制软件,不知道怎么样?
一般工控机性能不咋地,用.NET的话可能除了安装软件外,运行库等等不太好解决,且一般的工控软件功能不复杂,没必要为了一个1M以内的软件去安装一个几十M的库吧
本人非软件专业,学过一点电子,以上内容仅供参考,如有不合适的见解请谅解
Q2: 工控机编程用VB还是VB.net语言好,控制一些电磁阀啊继电器啊什么的,我刚开始学什么都不懂
都可以的 各有各的好 vb和vb.net都有串口通讯控件 直接调用控件就可以实现串口通讯 代码都比较简单 vb的源码比较多一点 但是太老了 属于过时货了 要现学还是学vb.net好了
Q3: VB编程实现对GPIB仪器控制
VB控制GPIB仪器的方式很简单vb.net控制仪器,
1、你得先在你的电脑上安装一块GPIB接口卡,使之成为GPIB主控机,你需要根据你的电脑上安装接口,如果是较老的电脑,上面只有ISA总线,那么我推荐你选择电子科技大学自动化工程学院的ES1400GPIB接口卡或者Agilent公司的HP82335(但这两种接口卡都已停产,能不能找到就要看运气了,而且现在好像都不再提供技术支持了)vb.net控制仪器;如果是较新的电脑,上面有USB接口,那我推荐仍然是上面两个地方出的EC1401-2/Agilent82357A型USB-GPIB接口,还有一款NI公司的USB-GPIB接口卡,具体型号我忘记了;
2、硬件装好后,如果是ES1400/HP82335,他们不需要安装驱动软件,直接将接口卡附带的函数库拷入你自己的工程目录下就可直接使用,但需要你的操作系统是WIN2000以下,WIN2000以上由于微软对IO操作进行了一系列封装,它们的函数库是无法正常运作的。如果是EC1401-2/Agilent82357A就简单了,它们都提供了相应的驱动软件,按提示进行安装就可以了;
3、驱动软件安装好后,接下来的程序设计就看自己的了,这些接口卡都提供了各种编程环境下的例程,你可以照葫芦画瓢写自己的,我推荐你使用VB配合NI CVI控件来进行设计,CVI提供了很多专门为仪器控制设计的控件,做出的程序界面漂亮而且符合仪器使用者习惯;
4、关于价格,ES1400(2600),EC1401-2(3600),HP82335(4300),Agilent82357A(5000以上),这些价格都是我记忆中的,不一定准确;
5、你还得根据你控制的仪器购买相应数目的GPIB接口电缆,电缆分1米、2米两种;
6、当然,也可以像楼上那样,直接用串口进行控制,一般的GPIB仪器都提供了RS232接口
Q4: 关于用VB编写仪器控制软件
你需要了解硬件和软件问题
1)硬件:你先确认一下,光谱仪和计算机是通过什么接口来通讯的(例如RS232 RS485 RS422 等)
2)软件:通讯协议(例如Modbus canbus Profibus control-net 等)
或者光谱仪供应商提供驱动程序(DLL动态连接库)
然后再用VB VC 等编程软件来开发你的控制程序
Q5: VB.NET和单片机的串口通信
单片机因其自身的优点,在嵌入式过程控制、自动化仪器仪表、数据采集和处理、计算机系统外设等方面已得到广泛应用。利用FoxPro for Windows提供的API库FOXTOOLS.FLL访问Windows的特殊功能,可以在FoxPro for Windows语言环境下直接实现和其它计算机的通信。
1 硬件接口电路
PC机和单片机间是一对一连接,采用RS—232C全双工串行通信方式。与PC机串行口连接的是9芯D型插座,其所有引脚的定义及对应的信号电平均按照RS—232C标准规定连接和设计。本设计中只使用其中的3根信号线:发送数据(TXD),接收数据(RXD)和信号地(GND)。
RS—232C标准接口的输入/输出信号电平为EIA电平:即对于输入信号,逻辑“1”为-15~-3V(通常用-12V),逻辑“0”为+3~+15V(通常用+12V)。对于输出信号,逻辑“1”为-15~-5V(通常用-12V),逻辑“0”为+5~+15V(通常用+12V)。由于一般单片机应用电路的输入/输出信号电平为CMOS或TTL电平,因此,为了实现RS—232C方式下PC机与单片机之间输入/输出信号电平的匹配,在RS—232C接口和单片微处理机的串行口之间,用MAX232来实现EIA电平与CMOS/TTL电平之间的相互转换。MAX232是+5V单电源供电,内部使用升压电路和极性转换电路获得EIA正负逻辑电平,省略了-12V和+12V 2组电源。
2 串行通信的软件实现方法
PC机和单片机之间要实现串行通信,除要遵守RS—232C串行通信协议外,还必须具有各自的通信应用软件。虽不同的单片机系统,使用不同的汇编语言编制其应用程序,但通信软件的设计思路是一样的:即PC机为主动方式,单片机根据PC机发来的命令,判断是要求发送还是接收数据。若是发送命令,则准备好所需数据和校验码,分别填入串行缓冲器发送给PC机,然后读取PC机送来的返回码,若是错误码,则需重新发送数据。若是接收命令,则将PC机发送到串行缓冲器中的数据取出后存放到一固定存储区内。若接收数据有错,则发一错误码给PC机,然后重复刚才的接收过程。这里需注意单片机和PC机校验数据的方法要一致。下面详细介绍PC机上通信软件的实现方法。
FoxPro for Windows应用程序要实现与单片机应用程序之间的数据传递,必须利用其API库函数注册并运行Windows.DLL通信函数来访问串行口。.FLL(Fox Link Library)文件是API使用的外部连接库的形式,它实际上也是1个Windows.DLL(Dynamic Link Library)文件,允许FoxPro for Windows与用C/C++或汇编语言编写的程序接口。用户也可将自己编写的一些功能函数放入自定义的.FLL库中。FOXTOOLS.FLL是由FoxPro for Windows提供的API库。安装FoxPro for Windows时已将其放入\FOXPROW子目录中。FOXTOOLS.FLL提供了对不同的Windows函数的访问。在编写FoxPro for Windows通信程序时,首先用以下命令装入该库:
SET LIBRARY TO SYS(2004)+“FOXTOOLS.FLL” ADDITIVE
其中,SYS(2004)返回FoxPro for Windows启动目录的名称,加入ADDTIVE可保证任何以前装入的库有效。采集者退散
用下面的命令可取消FOXTOOLS.FLL库:
RELEASE LIBRARY SYS(2004)+“FOXTOOLS.FLL”
装入FOXTOOLS.FLL库后,就可以开始使用该库中的Regfn()函数来注册要访问的Windows通信函数。Regfn()函数允许用户调用Windows.DLL中的函数。DLL允许输入下列数据类型:整型(I)、长整数(L)、浮点(F)、双精度(D)、字符串?,也允许返回上述数据类型。注册1个Windows.DLL函数和它的参数的函数格式为:
myfun=Regfn(Winfunction,Argtypes,Rtntype)
其中Winfunction是要访问的Windows.DLL函数名。Argtypes是必须传递给它的各参数类型代码,例如要传递给函数的参数类型为整型、整型、浮点型、字符型时,则Argtypes为“IIFC”;可使用引用方式或数值方式来传递参数,当使用引用传递参数时,参数类型前要放@标志,该参数被作为指向缓冲区的指针。Rtntype是该.DLL函数返回值的数据类型。如果注册成功,Regfn()函数返回1个数字型值给myfun;如果注册失败,则返回-1。
在用Regfn()注册Windows.DLL通信函数成功后,接下来的工作是用Callfn()函数调用它,以执行这个已注册的函数。调用格式如下:
myret=Callfn(myfun,pm1,,…)
其中myfun就是已注册函数的数值句柄,pm1、pm2等是要传递给Windows.DLL函数的各参数值,参数个数随访问的.DLL函数而变。各参数次序和类型必须严格按照.DLL函数规定的要求传递,否则将引起调用失败。如果Callfn()调用成功,变量myret的内容就是Windows.DLL函数的返回值,它带有Rtntype参数指定的数据类型。
关于vb.net控制仪器和vb自制控件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







