VB上位机温度采集(含源程序)
基于VB和Access的温度采集系统的设计与实现

( 汉 工程 大 学 电 气信 息 学 院 , 北 武 汉 4 0 0 ) 武 湖 3 2 5
摘 要 :随 着现 代 信 - 术 的 高速 发 展 , 据 采 集 方 面 的技 术 也 在 不 断 地 向前 发 展 , 在 信 息技 术 中 占有 重 要 地 住 , g技 数 并 温
度 、 力等 参 数 在 智 能 家居 、 业控 制 、 能 农 业 等 方 面 都 得 到 很 高 的 重视 . 何 实 时直 观 地 采 集 到 温度 成 为 焦点 。 压 工 智 如 本
温度 采 集 系统 下 位 机 采 用 S C 9 5 T 8 C 2单 片 机 为 主 控 制 器 , 采 用 单 线 式 D 1 B 0温 度 传 感 器 采 集 温 度 , 通 过 串 口 S8 2 R 2 2将 其 传 送 到 上 住 机 ( C机 ) 上 位 机 使 用 V s3 P , B编 写 界 面和 后 台处 理 程 序 , 温度 显 示 出 来 并 存 入 A c s 数 据 将 c es 库 。最 终 测 试 结 果 显 示上 住 机 有 实时 接 收 数 据 , 将 实 时接 收 到 的数 据 存 入 A c s 数 据 库 里 , 能 够 实 时 的把 温 度 并 ces 并
第 1 9卷 第 4期
V0 .9 11
No4 .
电 子 设 计 工 程
Elc r n c De in En i e rn e to i sg g n e i g
2 1 年 2月 0 1
F b 2 1 e. l
基 亏 V 和 Aces的 温 度 采集 系统 的设 计 与实 现 B cs
Ab t a t sr c :W i h ih e d d v l p n f h r s n no main t c n lg ,t e d t a h rn c n l g n e sn l t t e h g  ̄p e e e o me t e p e e t f r t h oo y h aa g t e g t h oo u c a i gy h ot i o e i e y
基于VB和单片机的多点温度采集系统

基于VB和单片机的多点温度采集系统【摘要】:测温系统是以数据采集原理为主要理论依据,将传感器DS18B20所测的温度转换成为电信号,再由AT89C51单片机对其进行量化编码,转化为整型数据和浮点型数据;整型数据为了方便AT89C51单片机与PC之间的通讯,浮点型数据是用来显示在液晶显示器12864上面的。
根据串行通讯原理,设计了AT89C51单片机与PC机的接口电路,建立了AT89C51单片机与PC机之间的串行通讯协议,并利用VB6.0对测温系统实现了对象化操作——将采集到的温度信号编码进行接受和描述,将其直接显示在可视的界面当中,对信号进行分析和处理,并将其用曲线实时显示出来。
本设计在选择仪器方面的宗旨是使用起来方便快捷,成本低廉,而且大幅度提高了测量精度,最终目的能实现人机的对话且能及时知道系统的运行状况等功能。
【关键词】:AT89C51单片机,编码,温度,实时曲线,DS18B20,VB6.0Based on VB and MCU multipoint temperature collection systemFang Li(Grade08, Class4, Major Automation, Electrical Engineering Dept., Shaanxi University of Technology ,Hanzhong 723003, Shaanxi)Tutor:Hu Bo【Abstract】:Temperature measurement system to data collection principle as the main theoretical basis, the temperature sensor DS18B20 converted into electrical signals, again by A T89C51 single-chip microcomputer the quantitative coding, into the whole model data and floating point type data; Integer data in order to facilitate the A T89C51 single-chip microcomputer and of the communication between a PC, the floating-point data is used to display type in LCD monitor above 12864. According to the serial communication principle, design the A T89C51 single-chip microcomputer and PC interface circuit, established the AT89C51 single-chip microcomputer and PC of serial communication between agreement, and use of temperature measurement system through VB6.0 realized the objectivity operation-will the collected temperature signal encoding to accept and description, its directly display in visual interface of the signal analysis and processing, and use its curve real-time display.Purpose of this design choice of instrument is to use a convenient, low cost, and greatly improve the measurement accuracy, the ultimate aim to achieve the system of man-machine dialogue and can know in time to run status.【Keywords】: VB; database; temperature; monitoring目录1引言 (1)1.1 概述 (1)1.2 国内、外现状 (1)1.3 系统设计的任务要求 (2)1.4 系统方案论证 (2)1.5 系统设计原理框图及各部分功能简介 (3)1.6 系统设计进度安排 (3)2系统硬件设计 (4)2.1 控制器的设计 (4)2.1.1 控制器的选择 (4)2.1.2 AT89C52主要特性 (4)2.2液晶显示LCD设计 (9)2.2.1 HS12864-15C液晶显示介绍 (9)2.2.2 HS12864-15C液晶模块的硬件说明 (9)2.2.3 HS12864-15C液晶模块指令集 (10)2.2.4 LCD显示硬件电路设计 (14)2.3 温度采集模块设计 (14)2.3.1温度传感器的基本知识 (14)2.3.2 传感器的选用及系统中的应用 (14)2.3.3 温度传感器的选择 (16)2.3.4温度传感器DS18B20工作原理 (16)2.3.5 DS18B20的使用 (16)2.3.6温度采集模块硬件电路设计 (18)2.4 系统硬件电路设计 (18)2.4.1 主机控制部分 (18)2.4.2 温度采样与显示电路 (19)2.4.3 RS232通讯接口电路设计 (19)3 系统软件设计 (20)3.1 下位机软件设计 (20)3.1.1 液晶显示部分设计 (20)3.1.2 温度采集模块部分设计 (21)3.1.3 串口通讯(下位机部分)软件设计 (25)3.2 上位机软件设计 (27)3.2.1 系统主界面的设计 (28)3.2.2 串口设置界面 (28)3.2.3 串口通讯(上位机部分)设计 (29)4 系统的调试 (31)4.1软硬件综合调试 (31)4.1.1液晶显示模块的调试 (31)4.1.2 DS18B20 数据采集模块的调试 (31)4.1.3串口通讯部分的调试 (31)4.2系统综合调试 (32)4.2.1系统综合调试出现的问题及解决方法 (32)4.2.2系统综合调试结果 (32)5 总结与展望 (34)致谢 (35)参考文献 (36)附录A下位机部分程序 (37)附录B 上位机部分程序 (44)附录C 实物图 (46)附录D 元器件清单 (47)外文文献原文 (48)外文文献译文 (51)1引言1.1 概述随着科学技术的迅猛发展,电子技术的发展也越来越快,带动了大批相关产业的发展,其应用的范围也越来越广泛。
基于VB的多路数据采集系统上位机软件设计(精)

图1烘炉温度多路数据采集系统上位机软件界面基于VB 的多路数据采集系统上位机软件设计张瑜,韩玉杰,闵昆龙(东北林业大学机电工程学院,黑龙江哈尔滨150040摘要:采用Visual Basic 6.0设计多路数据采集系统的上位机软件,实现对由单片机组成的测量系统数据的采集、传输、保存、分析、绘制曲线图以及数据和曲线图的打印。
文中以烘炉内多点温度数据采集系统设计为例说明用于串口通信上、下位机的软件设计,以及VB 中mscomm ,msflexgrid 等控件的用法。
关键词:多路数据采集;上位机;mscomm 控件;msflexgrid 控件中图分类号:TP311文献标识码:A文章编号:1001-4462(200701-0029-02Software Design in Host Computer of Multi-data AcquisitionSystem Based on VBZHANG Yu,HAN Yu-jie,MIN Kun-long(College of Machinery and Electricity of Northeast ForestryUniversity ,Heilongjiang Harbin 150040,ChinaAbstract :This article mainly explained how to design software for host computer of multi-data acquisition system based on visual basic 6.0.Also it displaied that the whole single-chip system how to acquire,communicate,save and analyze the data,how to draw graph,and how to print data and graph.The test taked the oven ’s multi-temperature data acquisition system for example,expounded the design of software of host and slave computer that using for serial communication,and also explained the mscomm control and msflexgrid control of visual basic.Key words :multi-data acquisition;host computer;mscomm control;msflexgrid control微软公司的visual basic 6.0是windows 应用程序开发工具,是目前应用最为广泛、易学易用的面向对象的开发工具,并且为用户提供了大量的控件。
基于VB编程的微机温度采集系统设计

周 六 顺
( 陵 石 化 合 成 橡 胶 厂 ・ 阳 ・ 1( 4 巴 岳 4 4I ) O
摘 要 介 绍 了系 统 功 能 及 特点 , C 一5 单片 机 的 基 本 组 成和 基 本 原 理 。 M S 1
关 键 VB编 程 单片机 温度 采 集 系 统
控 制 应 用 软 件 十 分 方 便 , 其 软 件 界 面 设 计 非 常 尤
风格和 3 2位 面 向对 象 的程 序 设 计 等 特 点 , 已广 泛
地 应 用 于 各 个 领 域 , 很 多 计 算 机 软 件 开 发 人 员 是 采 用 的 开 发 工 具 。V B不 但 提 供 了 良 好 的 界 面 设
计 能 力 , 且 在 微 机 串 口通 信 方 面 也 有 很 强 的 功 而
业 控 制 等 软 件 的 开 发 也 上 升 到 Wid w n o s环 境 下 。 可 视 化 软 件 开 发 平 台 的 出 现 , 软 件 开 发 提 供 了 为
3 )片 内程 序 存 储 器 R M/ P O 4 B 8 B , O E R M( K /K ) 用 以存 放 程 序 、 些 原 始 数 据 和 表 格 。 一
3 基 本 原 理
现 场 温 度 采 集 点 共 有 8路 , 用 P 10铂 电 采 T0 阻 采 集 温 度 并 由具 有 8通 道 变 送 器 变 换 为 4 0 A 2m 电流 信 号 , 到单 片机 的 AD转换 器转 入 端 , 送 / 测
事 务 的 一 种 非 常 有 效 的 方 法 , 别 适 合 Wid w 特 no s 程 序 的 编 写 。在 串 口通 讯 过 程 中 , 当发 送 数 据 、 收
1 系 统 功 能 及 特 点
基于VB的计算机温度采集系统设计与实现.

基于VB的计算机温度采集系统设计与实现本系统用单片机对整个测量电路进行管理和控制,使得整个系统智能化、体积小、功耗低、使用电子元件较少,内部配线少,成本低,制造、安装、调试及维修方便。
该系统中单片机作为下位机,完成测温任务,测量结果可在本地显示,也可通过下位机与上位机(PC机)通讯,给出结果和提示信息。
而上位机与下位机大多是通过PC机的RS-232串行接口实现通信。
VisualBasic是可视化面向对象的采用事件驱动技术的结构化程序设计语言,本系统上位机是在Windows本系统用单片机对整个测量电路进行管理和控制,使得整个系统智能化、体积小、功耗低、使用电子元件较少,内部配线少,成本低,制造、安装、调试及维修方便。
该系统中单片机作为下位机,完成测温任务,测量结果可在本地显示,也可通过下位机与上位机(PC机)通讯,给出结果和提示信息。
而上位机与下位机大多是通过PC机的RS-232串行接口实现通信。
Visual Bas ic是可视化面向对象的采用事件驱动技术的结构化程序设计语言,本系统上位机是在Windows环境下利用Visual basic开发微机通信程序。
2 系统基本原理系统结构如图1所示,其中,计算机要求能够运行Windows98或更高版本)操作系统和开发环境VB6.0,具有标准的RS232串口,主要功能为数据采集处理和系统控制,是人机交互的平台。
现场温度采集点共有4路,采用AD590采集温度送到单片机的A/D转换器转入端,测量范围最大值为50度,单片机定时采集温度信号,并按串行通信协议打包构成数据帧。
在微机中采用VB6.0编程,并选用MS COMM控件进行串行口通讯。
MSComm控件是Microsoft提供的扩展控件,用于支持VB程序对串口的访问,同时支持查询方法和事件驱动通讯的机制。
事件驱动通讯是交互方式处理串口事务的一种非常有效的方法,特别适合Windows程序的编写。
因此用其实现微机串口的数据通讯相当简单,以很少的程序代码就可以轻松实现串口的访问和数据通讯。
基于VB的温度实时监控系统的设计

温度实时监控系统的设计2008年4月摘要本论文简要的阐述了温度监控系统的现状与发展趋势和各个模块实现的设计方案。
硬件部分,我们采用DS18B20芯片实现温度采集模块。
利用AT89S51的高密度、非易失性存储和兼容标准MCS-51指令系统及80C51引脚结构,使其作为单片机控制模块的核心。
在数据传输模块我们选择MAX232实现单片机与PC的过渡桥梁作用。
软件部分,用单片机汇编语言与VB相结合并利用PC机串口通信技术,编写了双方的通信协议方便数据交换,并且PC机与单片机通信比较稳定。
本系统的温度监控部分主要在PC上操作,它采用Click事件来实现通信指令的触发,利用MSComm控件里的OnComm事件来实现PC机通过串口与单片机通信功能。
本设计不仅可以在图形界面下方便的查看外设温度,而且能够进行多路选择查看或单路查看等功能。
关键词:温度实时监控;DS18B20;VB;MSComm;AbstractThe present paper brief elaboration temperature supervisory system's present situation and the trend of development and each module realized design proposal.The system hardware part,we use DS18B20 the chip to realize the temperature gathering module. Using AT89S51 high density,non-volatility memory and compatible standard MCS-51 command system and 80C51 pin structure,causes its achievement monolithic integrated circuit control module the core .We choose MAX232 in the data transmission module to realize the monolithic integrated circuit and the PC transition bridge role.Software aspect,unify and use the PC machine serial port communication with the monolithic integrated circuit assembly language and VB has as compiled the bilateral communication protocol convenient data exchange and PC machine and the monolithic integrated circuit correspondence are quite stable.This system's temperature monitoring part mainly operates on PC. It uses the Click event to realize correspondence order triggering and controls in using MSComm the OnComm event to realize PC machine through the serial port and the monolithic integrated circuit correspondence function. This design not only may the examination peripheral device temperature which facilitates under the graphical interface but also can carry on multi-channel functions and so on choice examinations or single-channel examination.Key words: Temperature real-time monitoring; DS18B20; VB; MSComm;目录1 引言 (1)2 总体设计 (2)2.1方案比较 (2)2.1.1温度传感器的选择 (2)2.1.2 控制器的选择 (3)2.1.3 数据串行通信的接口标准 (3)2.1.4 WINDOWS编程语言选择 (4)2.2系统设计方案简介 (4)3 硬件设计 (6)3.1温度采集模块 (6)3.1.1 DS18B20芯片介绍 (6)3.1.2 DS18B20芯片与AT89S51连接 (10)3.2单片机控制模块 (10)3.2.1 AT89S51芯片介绍 (11)3.2.2 芯片HD7279A简介 (11)3.2.3 HD7279A与AT89S51的连接 (11)3.3数据传输模块 (12)4 系统软件设计 (14)4.1单片机模块软件设计 (14)4.1.1 主程序设计 (14)4.1.2 温度采集子程序设计 (15)4.1.3 串口中断子程序设计 (15)4.2PC机人机交互模块设计 (16)4.2.1 系统工作流程 (17)4.2.2 系统界面设计 (17)4.2.3 全局变量和各控件的设置 (18)4.2.4 通讯程序设计 (19)4.2.5 接收信息设计 (21)4.2.6 发送信息设计 (23)4.2.7下拉列表初始化 (24)5 结束语 (26)致谢 (27)参考文献 (28)附录1 系统实物图 (29)附录2 实验原理图 (30)附录3 毕业设计作品说明书 (31)1 引言随着计算机技术的发展和成熟,计算机的应用也越来越广泛。
基于VB的温湿度数据采集

Private Sub Text4_KeyPress(KeyAscii As Integer) If (KeyAscii < 47 Or KeyAscii > 58) And KeyAscii <> 46 Then KeyAscii = 0 End If
Timer1.Enabled = True End Sub Private Sub Form_Load()
Timer1.Enabled = False Shape1.BackColor = RGB(255, 0, 0) Form1.Width = 15000 Form1.Height = 8500
End Sub
智能仪器实习报告
实习名称:基于 VB 的温湿度数据采集 班 级: 11 光电 A1 姓 名: 朱 冬 冬 指导老师: 王 素 娟 日 期: 2014 年 6 月 24 日
一、 实验名称: 基于 VB 的温湿度数据采集
二、 实验目的:
本设计主要是介绍了单片机控制下的温湿度检测系统,并通过串口将单 片机处理的数据实时传输到 VB 编写的上位机上。其主要功能和指标如下:
利用VB实现基于RS-485总线上位机的数据采集与控制

利用VB实现基于RS-485总线上位机的数据采集与控制
利用VB实现基于RS-485总线上位机的数据采集与控制
摘要:该文介绍了利用VB6.0中的MSCommunications控件及定时器,在基于RS-485总线的上位机中编程,以实现对模拟量、开关量数据的采集、显示、保存及控制。
关键词:VB RS-485 串口通信数据采集
随着计算机及通讯技术、集成电路技术的飞速发展,以全数字式现场(FIELDBUS)为代表的现场控制仪表,迅速成为工业控制的主流。
RS-485串行通信总线以构造简单、技术成熟、便于维护,已广泛应用于电力、化工的工业控制、仪器仪表等领域。
其传输距离最长达1.2KM,负载下位机可达256台,通过转换器可将RS-485转换为微机可识别RS-232信号并通过串口与上位机通讯,从而实现远程监测。
本文主要探讨在上位计算机中使用Visual Basic6.0语言编程,实现模拟量、开关量数据的采集、显示、保存及控制功能。
1 RS-485总线的硬件配置及系统结构
PC机:上位机及服务器工作站
转换器:将RS-485转换为微机可识别的RS-232信号
中继器:(根据需求增加)信号中断放大
下位仪表:(根据需求增加)采集数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VB程序
Option Explicit
Dim NowX As Integer
Dim MaxPlotNo As Long
Dim PreV alue As Single
Private Sub cmbCOM_Click()
If cmbCOM.ListIndex + 1 = mPort Then Exit Sub
Timer1.Enabled = False
TimeDelay 100
If MSComm1.PortOpen Then
MSComm1.PortOpen = False
End If
lblMsg.Caption = "已停止检测并关闭通讯端口"
cmdOpenCOM.Enabled = True
End Sub
Private Sub cmdEnd_Click()
End
End Sub
Private Sub cmdOpenCOM_Click()
If cmbCOM.ListIndex >= 0 And cmbCOM.ListIndex <= 16 Then
mPort = cmbCOM.ListIndex + 1
Else
MsgBox "指定通信端口时发生错误!", vbCritical + vbOKOnly, "系统信息"
Exit Sub
End If
On Error GoTo comErr
MSComm1.Settings = "9600,n,8,1"
MSComm1.PortOpen = True
cmdOpenCOM.Enabled = False
cmdStart.Enabled = True
lblMsg.Caption = "可单击【开始检测】按钮,执行检测的工作。
"
Exit Sub
comErr:
MsgBox "打开通信端口时发生错误!请确定通信端口存在且正常。
", vbCritical + vbOKOnly, "系统信息"
End Sub
Private Sub cmdStart_Click()
Timer1.Enabled = Not Timer1.Enabled
If Timer1.Enabled Then
cmdStart.Caption = "停止检测"
Else
cmdStart.Caption = "开始检测"
lblMsg.Caption = "已停止检测"
End If
End Sub
Private Sub Form_Load()
Dim i%
MaxPlotNo = 100
cmbCOM.Clear
cmbCOM.AddItem "COM1"
cmbCOM.AddItem "COM2"
cmbCOM.AddItem "COM3(USB)"
cmbCOM.AddItem "COM4(USB)"
cmbCOM.AddItem "COM5"
cmbCOM.AddItem "COM6"
cmbCOM.AddItem "COM7"
cmbCOM.AddItem "COM8"
cmbCOM.AddItem "COM9"
cmbCOM.AddItem "COM10"
cmbCOM.AddItem "COM11"
cmbCOM.AddItem "COM12"
cmbCOM.AddItem "COM12"
cmbCOM.AddItem "COM14"
cmbCOM.AddItem "COM15"
cmbCOM.AddItem "COM16"
cmbCOM.ListIndex = 0
cmdStart.Enabled = False
'以下设定绘图范围,(Xmin,YMax)-(XMax,YMin) picV oltage.Scale (0, 50)-(MaxPlotNo, 0)
picV oltage.DrawWidth = 2 '使用两个像素宽度的画笔End Sub
Private Sub Label2_Click()
End Sub
Private Sub lblValue_Click()
End Sub
Private Sub MSComm1_OnComm()
End Sub
Private Sub Timer1_Timer()
Dim Buf$, ValueStr As Single, Pos1%
Buf$ = Buf$ + MSComm1.Input
TimeDelay 2150
ValueStr = Val(Mid(Buf, Pos1 + 1, 7))
lblValue.Caption = Format(ValueStr, "00.0000") & "℃" If NowX = 0 Then
picVoltage.Cls
picVoltage.PSet (0, ValueStr)
Else
If ValueStr > PreV alue + 0.01 Then
picVoltage.Line -(NowX, ValueStr), RGB(255, 0, 0) Else
picVoltage.Line -(NowX, ValueStr), RGB(0, 0, 255) End If
End If
PreV alue = ValueStr
NowX = NowX + 1
If NowX > MaxPlotNo Then NowX = 0
End Sub。