应用VB4.0实现工业控制的实时曲线…

在大型的工业现场控制中,一般用DCS(集散控制系统)来实现过程控制。在DCS中,实时曲线可显示该控制点的当前趋势,以监测该点在现场工况变化的情况下的控制稳定性,历史曲线可观察过去一段时间内某一点的变化趋势,并供工艺人员分析工艺流程的稳定性和故障原因。然而在小型的工业控制中,由于控制规模小,控制回路少,因此可用PC机就能完成整个过程控制,在实时曲线和历史曲线方面,可用VB4.0就能实现,并可与大型的DCS相媲美。
[实时曲线]
实时曲线反映的是现场数据的实时性和当前趋势,因此在实现时需显示曲线的动态变化,参考DCS,当前点在曲线的最右端显示,而整个曲线动态地向左移动。

具体实现如下:
1、选择需要显示的窗体Form1,加入图片框Picture1,根据实际需要设置图片的大小并移到合适的位置,并在图片的外面画好量程----时间坐标系;

2、在全局模块中定义位块传输API函数BitBlt()和全局变量:
Declare Function BitBlt Lib "GDI32" (ByVal hDestDC AS Long, ByVal X As Long,ByVal Y As Long,ByVal nWidth As Long,ByVal nHeight As Long,ByVal hSrcDC As Long,ByVal xSrc As Long,ByVal ySrc As Long,ByVal DrawStyle As Long)As Long 
Global S As Long'量程 '注意:有时需要声明成dim型
Global L As Long'上一次的纵坐标值
Global T As Integer'上一次时间值(分)

3、PrivateSubForm1_Load()
Picture1.AutoRedraw=False'曲线不重画
Picture1.ScaleMode=3'以象素方式(Pixel)
L=-1'设置初值
S=400
T=-1
EndSub

4、根据现场数据采集的采样频率,设置定时器Timer1的定时值,曲线移动就 Timer1实现:
PrivateSubTimer1_Time()
DimwAsLong,hAsLong,y1AsLong,DataAsLong
DimhBmpAshDC,ShowModeAsLong,iiAsLong,t1AsInteger
w=Picture1.Width
h=Picture1.Height
hBmp=Picture1.hDC
ShowMode=&HCC0020'ROP模式(复制)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值