当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘 要:提出以STM32F103单片机、DS18B20温度传感器、上位机温度显示组成的温度采集系统,阐述了整个系统的硬件构成、软件设计等。最终结果表明,基于CAN总线的温度采集系统具有结构简易,稳定可靠的特点。

引 言

数据采集系统是工农业生产的重中之重,温度信息更是与人们的日常生活息息相关。以 485 总线为通信方式的采集系统是市场的主流,但是却存在组网能力差、传输速率低、可靠性不高等的缺点。因此,需要研发可以满足远距离传输与控制要求并具有良好网络通讯能力的温度采集系统以满足时代发展需求。

控制器局域网络 CAN(Controller Area Network)是一种能有效支持实时控制和分布式控制的串行通信网络,将 CAN 总线技术运用于温度采集系统中,不仅可以降低误码传送率, 还可提高系统内部的通信实时性。因此,基于 CAN总线设计的温度采集系统具有组网能力强、传输快、可靠性高等优点 [1]。

1 系统总体结构

CAN 总线技术作为一种成本合理、可靠的、先进的、功能完善的远程通讯方式正在被广泛运用,将 CAN 总线运用于温度采集系统非常具有现实意义。本文设计了一种基于 CAN 总线的多点温度采集系统,该系统以STM32F103 作为中央处理器,用 3 个温度传感器DS18B20 获取 3 个点的温度并传递到主机系统进行显示,CAN 总线被作为主机与从机之间的通信介质。通过上位机预设高临界、低温度值使得在此范围之外的温度会导致系统报警 ;TJA1050 完成单片机与CAN 总线的通信。本系统设计原理如图 1 所示。

2 系统硬件电路设计

主机部分和从机部分是基于 CAN 总线的温度采集系统设计的两大模块。主机部分由MCU 主控单片机、仿真下载、RESET 复位、串口、CAN 收发器、时钟电路、SB 转串口等组成;从机部分主要由 MCU 主控单片机、时钟电路、仿真下载、RESET 复位、DS18B20 温度传感器等组成。整个系统的结构框图如图 2 所示。

基于CAN总线的多点温度采集系统设计

本系统所采用的控制芯片是STM32F103C8T6,它的优点是功耗低、管脚数量少,成本低。32 字节的存储器可以满足存储程序和数据的要求 ;有外部中断与内部中断两种中断方式 ;外部中断控制器可通过 19 路触发器产生外部中断请求,内部中断控制器完成 43 路中断;内部自带 CAN 控制器; STM32F103 满足CAN2.0A/B 协议[2],具备输入输出口,大部分管脚具有数模转换功能的特性,并且输出、输入、外围电路转换等功能均可通过GPIO 口利用软件来实现。

DS18B20 具备宽泛的电压范围使其不仅可以连接外部电源,还可与硬件连接作为寄生电源,具备- 55°C ~ +125°C 广泛的温度测量范围,然而它之所以具备如此强大的市场竞争力却是由于其在- 10°C ~ +85°C 之间的精度为 0.5°C。单总线接口方式使其运用起来十分方便,仅需要一根线便可实现双向通讯,将多个传感器并用于一个系统中,组成一个可快速将温度转化为数字的网络。

CAN 总线收发器 TJA1050 遵从 ISO 11898(国际标准) 标准,其优势是速率高并具有电磁兼容性 [3]。最高达到1 Mb/s, 这可以使信息传输速率大大提升,并且可以通过连接 110 个以 上的节点特征将各个温度节点进行组网,满足收集不同区域多 个温度节点信息的要求。

CH340G 在本系统中被用作一个 USB 转串口的工具,它 具有全速 USB 接口,并且兼容 USB2.0,CH340 的驱动程序 能够仿真标准串口,因此与绝大部分应用程序完全兼容 [4]。本 系统中用于主机系统 STM32 单片机与 PC 机之间的连接,使 用目的是保证主机系统正常与 PC 机连接。硬件全双工串口, 支持波特率100 b/s~3 Mb/s的特点可以与CAN协议完美结合。


3 系统软件设计 

系统软件主要由主机软件、从机软件 2 部分构成。以下 将分别介绍这两部分的程序流程图与主要功能。

3.1 主机软件设计 

主机程序的功能是 :主机模块读取 CAN 总线上传的温 度信息并传送到 PC 机中,在读取到温度信息时刷新温度显示, 并在检测到报警值修改后发送报警值修改命令。主机软件设 计流程如图 3 所示。

基于CAN总线的多点温度采集系统设计


3.2 从机软件设计 

从机系统的功能是 :采集 DS18B20 温度传感器的温度信 息,并将所读取到的温度通过 CAN 总线传输到主机系统中, 并且在收到报警设定命令时重新设定温度报警值。从机软件 设计流程图如图 4 所示。

基于CAN总线的多点温度采集系统设计


4 系统测试

3 路温度实时显示与 26°C 超温报警是本系统的两个主要技术指标。图 5 是温度显示的测试界面。接收与发送均采用ASCII 形式,并且串口通信波特率为 9 600。

从图 5 可知在测试环境温度 25°C 下,3 个温度传感器分别显示的温度为 24.50°C、25.87°C、25.68°C,由于 3 个温度传感器存在细微差异,因此所测温度略有不同。对传感器 2、传感器 3 进行升温,在温度超过 26°C 后马上出现报警提示。测试结果表明 :本系统所设计的温度传感器误差较小,并且报警功能较为灵敏。

基于CAN总线的多点温度采集系统设计

5 结 语

采用内置 CAN 总线的STM32 单片机与高精度显示温度传感器DS18B20 结合而设计的基于 CAN 总线的温度采集系统具有体积小、功耗低、集成度高、准确性较高等优点。实际调试结果表明该温度传感器不仅可以对 3 路温度实时显示, 并且具备超温报警功能,在工农业生产等方面均有较大价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

CAN总线是一种串行通信协议,是ISO国际标准化的。它最初设计用于汽车内的多路电气布线以节省铜线,但也可以用于许多其他环境。在CAN总线中,所有的单元都可以发送和接收信息,且所有与总线相连的单元都可以开始发送新消息,但如...

关键字: CAN总线 CAN总线故障分析

CAN通信是一种控制器局域网络(Controller Area Network)通信协议,是由德国BOSCH公司开发,并最终成为国际标准(ISO 11898)。它是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率...

关键字: can通信 CAN总线

CAN总线通信是一种用于解决汽车众多控制部件之间的数据交换而开发的一种串行数据通信总线。它的英文全称是Controller Area Network,即控制器局域网。CAN总线通信的特点包括多主控制、通信速度快、通信距离...

关键字: CAN总线 CAN故障维修

无论是CAN总线还是485总线,实际应用中经常会出现各种异常,常因总线组网后,波形边沿出现过缓、呈“镰刀”状的现象,导致数据丢失或出错,那么这现象前因后果大家是否真正的了解呢? 

关键字: CAN总线 485总线 机器人

深耕于CAN总线产品领域的克萨(Kvaser)推出了Air Bridge系列,其最大的亮点就是具有稳定高效的无线连接功能。

关键字: Kvaser CAN总线

当我告诉人们我从事专注于汽车安全的半导体行业时,他们通常认为一定会涉及汽车报警和车钥匙。尽管汽车盗窃仍是一个合理的担忧,但与内部电子控制单元(ECU)及其车内外通信相关的安全威胁明显更大。在今年销售的所有新车中,大约有5...

关键字: 车载网络通信 ECU CAN总线

汽车常见总线:随着汽车内各个系统的控制都在向智能化和自动化转变,汽车电气系统变得越来越复杂,汽车各个功能系统相互之间、功能系统和汽车显示仪表之间、以及功能系统和汽车故障诊断系统之间都需要进行数据交换。如果使用传统的点对点...

关键字: CAN总线 芯片 汽车总线

21世纪电动汽车的全面推出,是汽车工业的一次大革命。自动驾驶技术让交通更加便捷,改变了人类的驾驶习惯。在控制单元高度电子化的车辆架构下,CAN总线是关键的通信接口之一。

关键字: 电动汽车 CAN总线

本篇是FPGA之旅设计的第十二例,在前面的例程中,完成了DS18B20温度传感器数据的采集,并且将采集到的数据显示在数码管上。由于本例将对温湿度传感器DHT11进行采集,而且两者的数据采集过程类似,所以可以参考一下前面的...

关键字: FPGA DS18B20温度传感器

汽车电子系统架构发生了颠覆性变化。它已经持续了近十年,现在正在加快速度。这主要发生在 BEV 初创公司中,因为它们没有历史限制或根深蒂固的喜爱设计,并且可以从电子架构的零基础开始。

关键字: CAN总线 电动汽车
关闭
关闭