论文部分内容阅读
摘 要: 在经济高速发展的今天,温度的监测和控制已经成为一个重要的方面。多点温度的检测也变的相当重要,并且应用于各个领域。本论文设计了一种基于CAN总线的多点温度监测系统,能够对各个地方的温度进行监控并做出相应的处理。而且CAN是控制器局域网络是一种国际上应用最广泛的现场总线,具有实时性强、传输距离较远、抗电磁干扰能力强、成本低、结构简单等优点。
关键词: can总线;多点温度;监控系统;控制器局域网络
【中图分类号】 TP274 【文献标识码】 A【文章编号】 2236-1879(2017)24-0090-02
1.研究背景
1.1 研究背景及意义 。
在快速发展的当今社会,不管在工业或是农业和日常的生活中,温度的监测和控制已经成为一个重要的方面。多点温度的检测也变的相当重要,并且应用于各个领域;空调系统的温度检测和电讯设备过热故障的预知检测,各种交通运输工具内部工作温度的检测,医疗的温度测试,粮仓和楼寓温度的检测。可见温度监测系统已经完全融入到我们的日常生活中了,并且有着十分广泛的应用。
本文中设计用一台上位机(由LabVIEW编写),下位机(单片机)多点温度数据采集,组成三点温度测量检测系统。此系统采用CAN总线通讯,在比较各种总线的优缺点之后决定使用最广泛和可靠性最高的CAN总线进行数据的传送,将各个温度采集节点挂接在CAN总线上,经过CAN总线传送到主控节点,送回主控机进行数据处理,并显示出各个点的温度值,使管理人员做出相应的处理。采用CAN通信,CAN总线具有极高的可靠性、独特灵活的设计和低廉的价格,CAN总线上的节点是网络上的数据接收和发送站,智能节点能够通过编程设置工作方式、ID地址、波特率等参数。它主要是由STM32F103ZET6单片机和TJA105收发器构成。CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符)采用无损结构的逐位仲裁的方式竞争向总线发送数据,且CAN协议废除了站地址编码,取而代之对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点使得CAN总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。
下位机采用STM32F103ZET6,温度传感器选择DS18B20。DS18B20利用单总线的特点,方便的实现多点温度的测量,轻松便捷的组建传感器网络,系统的抗干扰性好、设计灵活、方便,而且适合于恶劣的环境下进行现场测温。此系统可以应用在大型工业民用等多点监测场合。
2.系统功能
(1)检测A、B、C三地点的温度,通过CAN总线相互通讯,最后通过上位机监控实时温度。能够实现温度以文本、动画和曲线的方式显示。
(2)可以设定超限温度。通过上位机设置超限温度,若温度超过设定的超限温度,则上位机发出“超限”报警。
(3)上位机可以紧急停止下位机。若发现温度超限,可以通过上位机的“紧急停止”按钮停止响应设备的运行。待设备故障排除后,点击“恢复运行”按钮恢复运行。
(4)提供温度分析功能。提供显示温度曲线、最高温度、最低温度、平均温度等温度分析功能。
3.系统组成
本系统由下位机和上位机组成。下位机由STM32F103ZET6单片机、TJA1050高速CAN收发器和DS18B20温度传感器组成。上位机由LabVIEW编写。
3.1下位机。
三个下位机具体功能分为:A为汇聚节点单片机,B、C为分节点单片机。B、C的温度数据采集后通过CAN总线发到A节点,A通过串口和电脑通信。读取温度周期和串口发送周期均为800ms。
由于CAN总线没有“地址”的概念,当总线发生冲突时,其优先级取决于ID。因此发送数据时需要注意设置ID不同,以免发生冲突。
下位机控制器选用STM32F1系列单片机的原因是:
①STM32自带CAN控制器,无需外接SJA1000T,只需接一片收发器即可使用,简化硬件。
②STM32提供官方库文件,这些库文件写的非常规范,简单易用,而且程序可移植性很强。51单片机很少有库文件,而且普遍可移植性较差。
③在处理速度、存储空间等各个方面,STM32的性能比51单片机的性能要强大许多。给了程序扩展的空间,而且性价比较高。
TJA1050是高速CAN收发器,它符合ISO 11898 标准。因此,它可以和其他遵从ISO 11898 标准的收发器产品协同操作。电磁兼容性(EMC)是TJA1050的主要设计目标。在关键的AM波段上,它的辐射比PCA82C250低20dB以上。除了EMC 之外,TJA1050 的另外一个重要的特性: 在不上电时,总线坚现无源特性。这使TJA1050 对在点火之后就失电的clamp-15 节点来说是一个更优的收发器。而持续上电的节点(clamp-30) 则要求有一个专用的低功耗模式,以使整个系统的功率消耗保持尽可能低。在这种应用中,PCA28C250 由于具有准备模式,所以仍然是一个很好的选择。在clamp-30 应用中,TJA1050 通过收发器不上电来实现极低的功耗,而远程唤醒功能则是使用一根独立的远程唤醒线。由F TJA1050 和PCA82C250 的引脚互相兼容,川么TJA1050 可以直接在已有的应用中使用,而不需要修改PCB。因此,用户可以立即从TJA1050突出的特性中获益。
3.2上位机。
上位机的功能为:
①显示温度:读取A汇聚节点上传的数据,然后进行数据解码,区分出三个节点的温度。然后分别将温度数据显示在波形图、温度计和文本框内。
②设定高限温度:可以设定高限温度,当温度超过高限温度时则发出报警。
上位机的难点在于数据的解析。由于下位机数据发送和上位机接收的时刻都是随机的,因此上位机接收到一串数据时,并不一定是从数据开头接收的,也可能是从中间开始接收的,因此需要对数据标记,即设置帧头。
上位机接收到的数据格式为:axxxbxxxcxxx,其中a、b、c为帧头,后面紧跟的xxx为数据,精度为0.1,即溫度为xx.x。
上位机读取数据的流程为:串口首先读取一个字节的数据,如果接收到的不是帧头,则舍弃本字节数据,接着在读一个字节数据。如果接收到的是帧头,例如a,则接着读取三个字节的数据,这三个字节的数据就是相应地点的温度。
4.结束语
基于CAN总线的多点温度监测系统现在被广泛应用在人们生活的各个领域当中,can总线以其优越的性能确保了系统的稳定性,我相信多点温度监测系统会使得我们的生活变得越来越好的。
参考文献
[1] 邵贝贝.单片机嵌入式应用的在线开发方法[M].北京.清华大学出版社.2004.
[2] 刘正权;周宝龙;许维胜 一种基IA思想的现场总线控制系统的研究 [J] -同济大学学报(自然科学版)2001
[3] 尤佳.徐炜 现场总线-自控系统的一项新技术[J] -浙江工业大学学报2001(04)
[4] 赵文宏.曹李民.施一明 现场总线的发展概况[J]-浙江工业大学学报2001(02)
关键词: can总线;多点温度;监控系统;控制器局域网络
【中图分类号】 TP274 【文献标识码】 A【文章编号】 2236-1879(2017)24-0090-02
1.研究背景
1.1 研究背景及意义 。
在快速发展的当今社会,不管在工业或是农业和日常的生活中,温度的监测和控制已经成为一个重要的方面。多点温度的检测也变的相当重要,并且应用于各个领域;空调系统的温度检测和电讯设备过热故障的预知检测,各种交通运输工具内部工作温度的检测,医疗的温度测试,粮仓和楼寓温度的检测。可见温度监测系统已经完全融入到我们的日常生活中了,并且有着十分广泛的应用。
本文中设计用一台上位机(由LabVIEW编写),下位机(单片机)多点温度数据采集,组成三点温度测量检测系统。此系统采用CAN总线通讯,在比较各种总线的优缺点之后决定使用最广泛和可靠性最高的CAN总线进行数据的传送,将各个温度采集节点挂接在CAN总线上,经过CAN总线传送到主控节点,送回主控机进行数据处理,并显示出各个点的温度值,使管理人员做出相应的处理。采用CAN通信,CAN总线具有极高的可靠性、独特灵活的设计和低廉的价格,CAN总线上的节点是网络上的数据接收和发送站,智能节点能够通过编程设置工作方式、ID地址、波特率等参数。它主要是由STM32F103ZET6单片机和TJA105收发器构成。CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符)采用无损结构的逐位仲裁的方式竞争向总线发送数据,且CAN协议废除了站地址编码,取而代之对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点使得CAN总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。
下位机采用STM32F103ZET6,温度传感器选择DS18B20。DS18B20利用单总线的特点,方便的实现多点温度的测量,轻松便捷的组建传感器网络,系统的抗干扰性好、设计灵活、方便,而且适合于恶劣的环境下进行现场测温。此系统可以应用在大型工业民用等多点监测场合。
2.系统功能
(1)检测A、B、C三地点的温度,通过CAN总线相互通讯,最后通过上位机监控实时温度。能够实现温度以文本、动画和曲线的方式显示。
(2)可以设定超限温度。通过上位机设置超限温度,若温度超过设定的超限温度,则上位机发出“超限”报警。
(3)上位机可以紧急停止下位机。若发现温度超限,可以通过上位机的“紧急停止”按钮停止响应设备的运行。待设备故障排除后,点击“恢复运行”按钮恢复运行。
(4)提供温度分析功能。提供显示温度曲线、最高温度、最低温度、平均温度等温度分析功能。
3.系统组成
本系统由下位机和上位机组成。下位机由STM32F103ZET6单片机、TJA1050高速CAN收发器和DS18B20温度传感器组成。上位机由LabVIEW编写。
3.1下位机。
三个下位机具体功能分为:A为汇聚节点单片机,B、C为分节点单片机。B、C的温度数据采集后通过CAN总线发到A节点,A通过串口和电脑通信。读取温度周期和串口发送周期均为800ms。
由于CAN总线没有“地址”的概念,当总线发生冲突时,其优先级取决于ID。因此发送数据时需要注意设置ID不同,以免发生冲突。
下位机控制器选用STM32F1系列单片机的原因是:
①STM32自带CAN控制器,无需外接SJA1000T,只需接一片收发器即可使用,简化硬件。
②STM32提供官方库文件,这些库文件写的非常规范,简单易用,而且程序可移植性很强。51单片机很少有库文件,而且普遍可移植性较差。
③在处理速度、存储空间等各个方面,STM32的性能比51单片机的性能要强大许多。给了程序扩展的空间,而且性价比较高。
TJA1050是高速CAN收发器,它符合ISO 11898 标准。因此,它可以和其他遵从ISO 11898 标准的收发器产品协同操作。电磁兼容性(EMC)是TJA1050的主要设计目标。在关键的AM波段上,它的辐射比PCA82C250低20dB以上。除了EMC 之外,TJA1050 的另外一个重要的特性: 在不上电时,总线坚现无源特性。这使TJA1050 对在点火之后就失电的clamp-15 节点来说是一个更优的收发器。而持续上电的节点(clamp-30) 则要求有一个专用的低功耗模式,以使整个系统的功率消耗保持尽可能低。在这种应用中,PCA28C250 由于具有准备模式,所以仍然是一个很好的选择。在clamp-30 应用中,TJA1050 通过收发器不上电来实现极低的功耗,而远程唤醒功能则是使用一根独立的远程唤醒线。由F TJA1050 和PCA82C250 的引脚互相兼容,川么TJA1050 可以直接在已有的应用中使用,而不需要修改PCB。因此,用户可以立即从TJA1050突出的特性中获益。
3.2上位机。
上位机的功能为:
①显示温度:读取A汇聚节点上传的数据,然后进行数据解码,区分出三个节点的温度。然后分别将温度数据显示在波形图、温度计和文本框内。
②设定高限温度:可以设定高限温度,当温度超过高限温度时则发出报警。
上位机的难点在于数据的解析。由于下位机数据发送和上位机接收的时刻都是随机的,因此上位机接收到一串数据时,并不一定是从数据开头接收的,也可能是从中间开始接收的,因此需要对数据标记,即设置帧头。
上位机接收到的数据格式为:axxxbxxxcxxx,其中a、b、c为帧头,后面紧跟的xxx为数据,精度为0.1,即溫度为xx.x。
上位机读取数据的流程为:串口首先读取一个字节的数据,如果接收到的不是帧头,则舍弃本字节数据,接着在读一个字节数据。如果接收到的是帧头,例如a,则接着读取三个字节的数据,这三个字节的数据就是相应地点的温度。
4.结束语
基于CAN总线的多点温度监测系统现在被广泛应用在人们生活的各个领域当中,can总线以其优越的性能确保了系统的稳定性,我相信多点温度监测系统会使得我们的生活变得越来越好的。
参考文献
[1] 邵贝贝.单片机嵌入式应用的在线开发方法[M].北京.清华大学出版社.2004.
[2] 刘正权;周宝龙;许维胜 一种基IA思想的现场总线控制系统的研究 [J] -同济大学学报(自然科学版)2001
[3] 尤佳.徐炜 现场总线-自控系统的一项新技术[J] -浙江工业大学学报2001(04)
[4] 赵文宏.曹李民.施一明 现场总线的发展概况[J]-浙江工业大学学报2001(02)