基于USB和LabVIEW的温度报警系统设计
时间:2025-06-27
时间:2025-06-27
labvIEW的相关论文
山西电子技术
应用实践
2008年第6期
基于USB和LabVIEW的温度报警系统设计3
张 丹
(兰州交通大学,甘肃兰州730070)
摘 要:设计一种以STC12C4052AD单片机为核心的温度报警系统。利用LabVIEW对温度的报警,显示报警记录。通过XT8811芯片的USBUSBISP在线编程和传输数据。,关键词:USB;LabVIEW;用户事件中图分类号:TP277 文献标识码:A
程。
温度传感器采用美国DALLS[1]公司推出的一线数字式智能温度传感器DS18B20,测量温度范围为-55~125℃,通过简单的编程可实现9~12位的数字值读取方式,分别在
93.75ms和750ms内将温度值转化为9位和12位的数量
0 引言
(Bus)具有较高的传输速率、、易于扩展以及可靠性高、成本低、功耗低等特点,USB2.0接口的传输速率高达
480Mbps,完全能满足PC机和外设进行大量数据交换的要
求。
LabVIEW是美国国家仪器公司开发的一种虚拟仪器平
级,对应的分辨率为0.5℃,0.25℃,0.125℃,0.0625℃,CPU只需一根端口线就可以与DS18B20通信,每个DS18B20都有一个全球唯一的64位的二进制ROM代码标志着器件的
ID号,整个系统要严格按照该器件单总线协议规定的时序
台,提供了丰富的数据采集、分析和存储函数以及包括
RS232/485等各种仪器通信总线标准的所有功能函数,但是LabVIEW开发的虚拟仪器通常是建立在LabVIEW支持的
进行工作,具体的内容是初始化器件、识别器件和进行数据交换等。基于DS18B20的温度测量装置硬件电路如图2
所示。
价格昂贵的数据采集板卡之上,本文选用单片机小系统对温度进行采集。
1 系统组成及工作原理
系统框图如图1所示,整个系统包括温度采集、温度传输和温度处理3部分,其中温度采集系统由DS18B20温度传感器组成;温度传输部分由STC12C4052AD单片机和
USB接口芯片XT8811组成;温度处理部分由LabVIEW软
件构成。首先,由温度传感器DS18B20将测量的具体温度数值通过串行方式直接传给单片机,然后单片机将收到的温度值经过USB接口电路送到计算机,最后,通过LabVIEW软件进行处理
。
图2 温度采集部分硬件电路
2.2 USB转RS232接口电路
选用XT8811芯片,该芯片的功能是USB转RS232串
图1 系统结构框图
行接口,是单片机和PC机通信的一种非常简便的通讯方法,只用一条USB线就可以进行ISP在线编程和传输数据了。XT8811芯片符合USB1.1,兼容USB2.0规范;基于高速USBUARTIC,支持RS232标准串行接口,速度75bps~
6Mbps;支持信号自动交换输入输出模式。USB接口硬件电
2 硬件电路设计
2.1 温度采集电路
采用STC12C4052AD为主芯片,它是51内核的单片机,并且资源更加丰富的,指令代码完全兼容传统8051,但速度快8~12倍。它本身自带看门狗和ISP,可以在线编3基金项目:兰州市科技攻关项目(20816)
收稿日期:2008-07-26 作者 张丹 26岁 硕士研究生
路如图3所示。
labvIEW的相关论文
6 山 西 电 子 技 术 2008年
3.2 基于用户事件的温度报警
当温度超过报警上限时时,系统会自动触发报警,并记录报警数、报警发生的时间和温度值进行记录。采用Lab2
VIEW的用户事件[3]编程,首先通过CreateUserEvent函数
创建用户事件,然后通过RegisterForEvents节点注册事件。将注册的事件Refnum与事件结构的DynamicEventTermi2
nals连接,最后需要通过DestroyUserEvent函数销毁用户事
件。如图5所示,程序框图中首先通过CreateUserEvent函数创建用户事件,Double,名称为“,函数注册温度图3 USB接口部分硬件电路
G。下方,更新报警记录;“清除报警记录”按钮时清除报警。最后通过
UnregisterForEvent函数和DestroyUserEvent函数注销和
3 LabVIEW的程序设计
3.1 LabVIEW在与的驱动程序。XT8811,会自动在计算机系统里口。比如,计算机原来有两个串口
COM1和COM2,那么XT8811驱动程序安装以后自动虚拟
销毁用户事件
。
出一个COM3口(一般来说是这样,具体COM端口号由虚拟驱动程序自动分配)。这个由XT8811驱动程序虚拟出来的COM口和计算机原有的COM口对于应用软件来说是一样的。只要应用软件能够映射(或选择)到该虚拟COM口,就可以实现对RS2232端口的通信。所以本设计采用了Lab2
VIEW的VISA[2]的串行通讯子Ⅵ来开发串行通信软件。共
图5 利用用户事件记录温度报警
4 结束语
利用LabVIEW强大函数功能和USB接口即插即用的方便性,结合以单片机为核心组成的小系统,可以很方便地完成数据采集及处理等功能,具有很强的工程实用性,可广泛应于测试控制领域。
参考文献
[1] 戴佳,戴卫恒.51单片机C语言应用程序设计实例精
有5个串行通信节点,分别实现串口初始化、串口写、串口读、检测串口缓存、中断等功能。应用LabVIEW的图标设置串口,直接读出串口里的数据,实现与单片机温度采集系统的数据通信。如图4所示,串口默认设置为:9600b/s,8位数据位,1位停止位,1位起始位,无握手信号,下位机通信程序亦遵守上述协议
。
讲[M].北京:电子工业出版社,2006(4):213-225.
[2] 刘金颂,严洁,郑倾红.基于LabVIEW和单片机的空