中自网

热门搜索:PID  plc  传感器  电机  变频器  工业以太网  无线通讯  低压 

当前位置:首页>>应用案例首页>>基础教程>>正文

一种基于CAN总线的温度控制系统设计

发布日期:2013-07-02   浏览次数:46989
分享到:
【摘   要】: 温度是工业对象中主要的被控参数之一,随着微机和电子技术的飞速发展,微机测控技术在温度测量与控制中广泛使用,该控制简单方便,测量精度高,测量范围广。 由于CAN总线广泛应用于从高速网络到低成本的多线路网络,实现控制系统中的各检测和执行机构之间的数据通信。所以本文设计了一种基于CAN总线的温度测量和控制装置,能够对加热炉中的温度进行测量,并根据温度设定值给出的调节量,驱动控制电路,对炉温进行控制。

     温度是工业对象中主要的被控参数之一,随着微机和电子技术的飞速发展,微机测控技术在温度测量与控制中广泛使用,该控制简单方便,测量精度高,测量范围广。
 
    由于CAN总线广泛应用于从高速网络到低成本的多线路网络,实现控制系统中的各检测和执行机构之间的数据通信。所以本文设计了一种基于CAN总线的温度测量和控制装置,能够对加热炉中的温度进行测量,并根据温度设定值给出的调节量,驱动控制电路,对炉温进行控制。
 
    1 系统总体结构
 
    基于CAN总线的温度控制系统总体结构如图1所示。在该系统中,被控对象是加热炉,被控参数是加热炉内的炉温,该系统主要由上位机和各个CAN总线智能测控节点组成,上位机主要采用传统的PC机,并通过CAN总线智能适配卡PCCAN与分布在CAN总线上的各个智能测控节点进行通信,并接受下位机采集的数据,下位机主要是采集各个测控节点观测加热炉内的温度参数。
 
    2 CAN总线智能测控节点硬件结构
 
    下位机的CAN总线智能观测节点在系统中主要作用是对现场温度数据进行采集和控制以及与CAN总线进行通信。其硬件结构如图2所示。
 
    下位机CAN智能观测节点采用Philips公司生产的80C51系列单片机80C552作为主控制器,该控制器以80C51为内核,指令系统与MCS-51系列单片机完全兼容。使用80C552控制器进行设计,可以简化硬件装置,从而使系统的稳定性和可靠性显着提高。
 
    通信接口部分采用Philips公司生产的CAN通信控制器SJA1000和CAN总线驱动器PCA82C250,实现与CAN总线的数据通信。
 
    3 CAN通信接口硬件电路设计
 
    CAN总线通信接口硬件电路原理图如图3所示。
 
    CAN总线控制器SJA1000由微控制器80C552通过P0口的8位地址数据复用总线和读写控制信号进行控制。SJA1000的中断请求信号INT接80C552的外部中断输入INT0,CAN总线控制器可以通过中断方式与微控制器进行数据传输。
 
    SJA1000的片选信号CS由微控制器80C552的P2.1提供,在访问SJA1000时,只要P2.1引脚输出低电平即可。SJA1000的Tx0和Rx0与82C250的TxD和RxD相连,82C250的CANH和CANL引脚各自提供一个5Ω电阻与CAN总线相连,起限流电阻作用,保护82C250免受过流冲击。另外两根CAN总线输入端和地之间分别接一个防雷二极管,CAN总线两端接有120Ω电阻,起匹配总线阻抗,提高数据通信的抗干扰性和可靠性。
 
    4 系统软件设计
 
    系统软件设计包括智能测控节点软件设计和测控节点与上位机通信设计两部分。
 
    4.1 智能测控节点的软件设计
 
    测控节点软件设计包括三大部分:80C552单片机与CAN总线初始化、温度数据采集与处理及数据的发送与接收。设计中采用模块化设计思路。
 
    80C552单片机初始化包括I/O口初始化、A/D转换初始化和为传感器接口分配合适的存储单元,SJA1000初始化包括主要是设置CAN的通信参数:波特率、发送通道、接收通道、标识符码等信息。
 
    初始化结束之后,80C552单片机开始启动数据采集通道,调用A/D转换子程序及数据采集与处理子程序,数据经过处理后单片机将数据送至数据存储区,同时送往LCD进行显示,当单片机接收到上位机要求发送数据请求时,启动发送子程序,将数据传送至上位机。
 
    智能测控节点主程序流程图如图4所示。
 
    4.2 上位机与智能测控节点的通信设计
 
    上位机与80C552单片机之间的通信设计主要有:通信协议的设定、SJA1000初始化及报文的发送与接收,SJA1000初始化已经在80C552单片机初始化阶段完成,根据所设计的温度控制系统需要,报文格式采用标准帧格式。
 
    发送子程序过程如下:发送子程序将数据存储区待发送的数据取出,加上标识符等信息,组成信息帧,待发送缓冲区数据清空后,将信息帧发送至SJA1000的发送缓冲区。在接收到上位机发送的控制命令后,启动发送子程序,将信息数据发送出去。
 
    相反,接收过程如下:信息从CAN总线送至SJA1000的接收缓冲区,接收程序从接收缓冲区读取信息,并将其存入数据缓冲区,接收方式采用中断接收。
 
    5 结语
 
    本文主要介绍了一种基于CAN总线的温度控制系统,重点介绍了系统总体设计方案及CAN总线通信系统,采集的温度数据通过CAN总线传送至上位机,方便后期的数据分析,上位机通过软件查询方式,可以实现CAN总线接口的即插即用,使多个温度测控节点构成一个完整的控制系统,降低了成本,同时方便于后期性能的扩展和系统维护。
 
 
[ 应用案例搜索 ]  [ ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]  [ 返回顶部 ]

0条 [查看全部]  网友评论