您现在所在的是:

电脑编程

回帖:22个,阅读:6876 [上一页] [1] [2] [3] [下一页]
1050
shxu2005
文章数:50
年度积分:50
历史总积分:1050
注册时间:2005/12/30
发站内信
发表于:2006/2/17 16:05:00
#0楼
各位高手:我现在在做一个流量监测系统,plc每5秒钟采集一个数据,通过t和vb的mscomm通信,把数据正确显示在vb的文本框中,现在已经能显示瞬时数据了,

但我想把显示的数据每5分钟保存到数据库中(access),不知道怎么做?希望得能到各位高手的帮助。谢谢了!!!
9012
吴辉
文章数:2354
年度积分:50
历史总积分:9012
注册时间:2002/1/15
发站内信
发表于:2006/2/17 18:09:00
#1楼
01通过t和vb的mscomm通信,把数据正确显示在vb的文本框中,现在已经能显示瞬时数据了
说明通讯协议已经解决!

02保存到数据库中(access)
看相关书籍,有用dao的,也有用ado的


1050
shxu2005
文章数:50
年度积分:50
历史总积分:1050
注册时间:2005/12/30
发站内信
发表于:2006/2/18 13:29:00
#2楼
谢谢吴辉:能不能提供详细一点的源代码,因为我是一个新手,所以做起来很难,我想我的报表应该是这样的:比如时间为:1:05  1:10 1:15......1:55  2:00..........等时间来保存数据
9012
吴辉
文章数:2354
年度积分:50
历史总积分:9012
注册时间:2002/1/15
发站内信
发表于:2006/2/20 8:19:00
#3楼
代码网上很多的,自己找一下!思路一般是这样
1.准备:先建立一个数据库,然后建立一个表,字段为编号,日期,电压,电流等(举例,看要求定)
2.与plc通讯,读电压,电流到text中,在代码中打开数据库,然后判断间隔5分钟是否到?

9012
吴辉
文章数:2354
年度积分:50
历史总积分:9012
注册时间:2002/1/15
发站内信
发表于:2006/2/20 8:22:00
#4楼
时间到,添加当前值到数据库表中,如此循环.
要做报表等,数据就从数据库表中取得!
都是很常规的内容,都有的 !
1050
shxu2005
文章数:50
年度积分:50
历史总积分:1050
注册时间:2005/12/30
发站内信
发表于:2006/2/20 8:58:00
#5楼
现在与plc的通信已经做好,数据也已经能够正确显示了,但就是为了保存数据我有点不知所措了。数据库我也已经建好了,但怎么去判断时间到,怎么到凌晨0:00时候要变为第二天的数据了,我不知道,还望吴辉老师能够帮忙一下,可以吗?数据库为data
9012
吴辉
文章数:2354
年度积分:50
历史总积分:9012
注册时间:2002/1/15
发站内信
发表于:2006/2/20 11:59:00
#6楼
老师就不敢当了!
vb里有date/time函数啊!
1050
shxu2005
文章数:50
年度积分:50
历史总积分:1050
注册时间:2005/12/30
发站内信
发表于:2006/2/20 14:50:00
#7楼
你能简单写一下程序的源代码吗?就当我是一个不懂vbr 学生吧,谢谢你了!!!
9012
吴辉
文章数:2354
年度积分:50
历史总积分:9012
注册时间:2002/1/15
发站内信
发表于:2006/2/21 8:24:00
#8楼
Dim IntMin As Integer
Dim IntSec As Integer
Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 400
Timer2.Enabled = False
Timer2.Interval = 1000
End Sub

Private Sub Timer1_Timer()
IntMin = Val(Mid(Format(Time, "hh:mm:ss"), 4, 2))
IntSec = Val(Mid(Format(Time, "hh:mm:ss"), 7, 2))
If IntSec = 0 And IntMin Mod 5 = 0 Then
   'record
   'date=txtdate
   'time=txttime
   'voltage=txtvoltage
   'current=txtcurrent
   Timer1.Enabled = False
   Timer2.Enabled = True
End If
End Sub
Private Sub Timer2_Timer()
   Timer2.Enabled = False
   Timer1.Enabled = True
   'open db,table;record addnew,record update;close table,db
End Sub
9012
吴辉
文章数:2354
年度积分:50
历史总积分:9012
注册时间:2002/1/15
发站内信
发表于:2006/2/21 8:29:00
#9楼
但怎么去判断时间到,怎么到凌晨0:00时候要变为第二天的数据了
5分钟时间到可以用上面我写的,凌晨0:00时候要变为第二天的数据了你就不用操心了
数据库字段里有日期的,你要做日报表就where date="yyyy-mm-dd"好了!

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

140.4009