基于单片机和CAN总线的企业现场信息监控系统.docx

上传人:b****7 文档编号:9065345 上传时间:2023-02-03 格式:DOCX 页数:67 大小:1.08MB
下载 相关 举报
基于单片机和CAN总线的企业现场信息监控系统.docx_第1页
第1页 / 共67页
基于单片机和CAN总线的企业现场信息监控系统.docx_第2页
第2页 / 共67页
基于单片机和CAN总线的企业现场信息监控系统.docx_第3页
第3页 / 共67页
基于单片机和CAN总线的企业现场信息监控系统.docx_第4页
第4页 / 共67页
基于单片机和CAN总线的企业现场信息监控系统.docx_第5页
第5页 / 共67页
点击查看更多>>
下载资源
资源描述

基于单片机和CAN总线的企业现场信息监控系统.docx

《基于单片机和CAN总线的企业现场信息监控系统.docx》由会员分享,可在线阅读,更多相关《基于单片机和CAN总线的企业现场信息监控系统.docx(67页珍藏版)》请在冰豆网上搜索。

基于单片机和CAN总线的企业现场信息监控系统.docx

基于单片机和CAN总线的企业现场信息监控系统

 

基于单片机和CAN总线的企业现场信息监控系统—智能节点部分

摘要

本文设计了一种基于单片机和CAN总线的企业现场信息监控系统。

系统从整体结构上分为三个部分,企业网络层、工程师站部分和智能节点部分。

本文设计着重介绍了CAN通信控制芯片SJA1000与ATMega8L单片机接口构成的CAN总线系统智能节点部分。

其硬件电路主要由4部分组成:

单片机、CAN控制器、CAN总线收发器以及光电隔离器。

主要功能是各智能节点采集现场仪表设备的过程参数,将数据经CAN总线发送到上位机,进而实现对企业生产现场信息的实时采集与实时监控。

本文首先介绍了企业现场信息监控系统的组成以及CAN现场总线;其次对现场信息检测的实现及单片机最小系统的各个接口电路作了简要介绍;然后对CAN通信模块的核心器件CAN总线控制器SJA1000和收发器PCA82C251作了详细的介绍;最后对系统的软件设计和系统调试进行了说明分析。

关键词:

ATMega8L;CAN总线;智能节点;SJA1000

ThemonitoringsystemofthefieldinformationofenterprisebasedonMCUandCANbus

—Partofintelligentnode

Abstract

Inthispaper,amonitoringsystemoffieldinformationofenterprisebasedonMCUandCANbusisdesigned.Ingeneral,thestructureofthesystemisdividedintothreeparts,theenterprisenetwork,theengineerstation,thesmartnode.ThisarticlefocusesonthedesignoftheCANbuscommunicationwithATMega8LandSJA1000consistingofthesmartnodes.Thehardwarehave4majorparts:

microprocessor,CANcontroller,CANbustransceiversandoptoelectronicisolator.TheMainfunctionofhardwareistocapturethefieldinformation,thedatawillbesenttotheMCUandengineerstation,finally,MCUreceivestheordersandexecuteit.

ThispaperintroducesthefieldinformationmonitoringsystemandCANfieldbus,followedbythesmallestsingle-chipmicrocomputersystemofthevariouspartsarebrieflyintroduced;thenthecoreofCANcommunicationmoduleCANbuscontrollerSJA1000deviceandthetransceiverdevicesmadePCA82C251detail;Finally,thesystemsoftwaredesignandsystemanalysisofdebuggingaredescribed;

Keywords:

ATMega8L;CANbus;SmartNode;SJA1000

目录

摘要I

AbstractII

第一章引言1

1.1企业现场信息监控系统概述1

1.2CAN现场总线1

第二章系统整体方案设计及现场信息检测的实现4

2.1系统整体结构设计4

2.2系统整体设计方案的实现5

2.3现场信息检测的实现6

2.3.1温度检测电路设计7

2.3.2湿度检测电路设计8

第三章单片机最小系统设计10

3.1ATMega8L单片机简介10

3.2LED显示接口技术13

3.3报警电路设计16

3.4按键电路设计16

第四章CAN通信模块设计18

4.1CAN通信模块电路设计18

4.2CAN通信控制器SJA100019

4.2.1SJA1000内部结构20

4.2.2SJA1000的引脚介绍21

4.2.3SJA1000的应用说明23

4.2.4PeliCAN地址分配24

4.2.5SJA1000寄存器26

4.3CAN总线收发器PCA82C25133

4.3.1PCA82C251功能说明34

4.3.2PCA82C251引脚介绍34

4.3.3PCA82C251的工作模式35

4.4光耦6N137功能特性37

第五章系统软件设计39

5.1系统整体软件设计39

5.2SJA1000初始化40

5.3报文发送子程序41

5.4报文接收子程序42

第六章系统调试与总结44

6.1智能节点实物图44

6.2系统调试45

6.2.1数码管显示及报警功能调试45

6.2.2CAN通信模块调试45

6.3总结46

参考文献47

附录A智能节点原理图及PCB图48

附录B智能节点源程序52

致谢66

第一章引言

一.1企业现场信息监控系统概述

随着计算机技术、网络通信技术等技术的快速发展,监控系统作为现代化管理手段越来越多地进入到各种应用领域。

监控技术的发展经历了传统监控技术和现代智能网络监控技术两个阶段。

传统的监控系统一般都是闭路电视监控系统,采取模拟信号传输图像,通过监视器监视现场情况。

其缺点是所有的信息都集中于监控中心,无扩展传输及控制能力。

这种基于模拟信号的监控技术限制了传统监控系统的发展。

智能网络监控系统则是利用计算机网络技术及多媒体信息处理技术实现的网络数字监控系统。

监控的视频、报警、控制信号可传至网络上的每一个节点,可以利用计算机网络在不同的地点同时监控、控制远程的某些场所。

本文设计的企业现场信息监控系统,是基于单片机和CAN总线来实现的,能实时地采集生产现场的信息,并进行整合处理,实现企业生产现场信息的实时收集与实时监控。

系统采用多层分级的结构形式,总体设计从结构上分为三个部分,企业网络层、工程师站部分和智能节点部分。

系统的硬件和软件采用标准化、模块化和系统化设计,使系统具有通用性强,开放性好,系统组态灵活,控制功能完善,数据处理方便,人机界面友好,系统安装、调试和维修简单化,系统安全可靠等优势。

一.2CAN现场总线

现场总线是一种用于生产现场,在现场设备之间、现场设备与控制装置之间实行双向、串行、多节点数字通信的技术。

现场总线是当今自动化领域发展的热点之一,被誉为自动化领域的计算机局域网。

它作为工业数据通信网络的基础,沟通了生产过程现场级控制设备之间及其与更高控制管理层之间的联系。

它不仅是一个基层网络,而且还是一种开放式、新型全分布式的控制系统。

这项以智能传感、控制、计算机、数据通信为主要内容的综合技术,已受到世界范围的关注而成为自动化技术发展的热点,并将导致自动化系统结构与设备的深刻变革。

在工业控制领域中,从20世纪50年代至今一直都在使用着一种信号标准,那就是4~20mA的模拟信号标准。

20世纪70年代,数字式计算机引入到测控系统中,而此时的计算机集中式控制处理。

20世纪80年代,微处理器在控制领域得到应用,微处理器被嵌入到各种仪器设备中,形成分布式控制系统。

随着微电子技术的发展,微处理器和微控制器由于其性能的提高和价格的下降而在工业控制领域得到广泛运用。

由于微处理器嵌入各种仪表和检测系统,导致智能化的趋势逐步向下渗透。

这一形势与对工业控制系统的进一步要求相结合,一种实现彻底分散的控制系统—现场总线控制系统就应运而生。

目前,世界上流行的几种现场总线有:

LONWORKS、CAN、PROFIBUS、HART和FF等。

其中CAN(ControlAreaNetwork)总线是德国Bosh公司从20世纪80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,是一种有效支持分布式控制或实时控制的串行通信网络。

CAN总线是目前惟一一种具有国际标准的现场总线,在当今自动控制领域占有越来越重要的地位。

由于其独特灵活的设计、高的位速率、高抗电磁干扰性、极高的可靠性和低廉的价格等卓越的性能,现已在工业控制、智能大厦、小区安防、交通工具、医疗仪器、环境监控等众多领域推广应用。

国际标准组织ISO为其制订了规范CAN总线的国际标准,已被公认为几种最有前途的现场总线之一,在当今自动控制领域的发展中将发挥出越来越重要的作用。

CAN总线的技术特性如下:

1.CAN总线可以多主方式工作,网络上任意一个节点均可以在任意时刻主动向其它节点发送信息,而不分主从,通信方式灵活;

2.CAN总线网络上节点可分成不同的优先级,可满足不同的实时要求;

3.CAN总线采用非破坏性总线裁决技术,当两个节点同时向网络上传送数据时,优先级别低的自动地主动停止数据发送,而优先级别高的网络节点不受任何影响继续传送数据,大大节省了总线冲突裁决时间;

4.CAN总线可以点对点,一点对多点(成组),全局广播几种方式传送接收数据;

5.CAN总线直接通信距离最远可达10km,CAN总线的通信速率最高可达lMbit/s;

6.CAN总线上的节点数实际可达110个,理论值可达2000多个;

7.CAN总线采用短帧结构,每一帧的有效字节数为8个,这样传输时间短,受干扰的概率低,重新发送时间短,尤其适合在强电磁场环境下工作;

8.CAN总线每帧信息都有CRC校验及其它检验措施,保证了数据出错率极低;

9.CAN节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线的其它操作不受影响;

CAN总线采用多主竞争的工作方式和非破坏性总线仲裁技术,总线上任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,各节点之间实现自由通信。

当多个节点同时向总线发信息时,优先级较低的节点会主动退出发送,而优先级较高的节点不受影响,大大节省了总线冲突仲裁时间。

在网络负载很重的情况下,也不会出现网络瘫痪的情况。

CAN总线通信格式采用短帧格式,传输时间短,受干扰概率低,具有极好的检错效果。

每帧中数据字节数最多为8个,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。

同时,8个字节不会占用总线时间过长,从而保证了通信的实时性。

第二章系统整体方案设计及现场信息检测的实现

二.1系统整体结构设计

本文设计的企业现场信息监控系统采用CAN总线来组成数据传输网络。

系统的整体设计从结构上分为三个部分,企业网络层,工程师站部分和智能节点部分。

整体设计方案如图2.1所示。

图2.1基于单片机和CAN总线的企业现场信息监控系统结构框图

二.2系统整体设计方案的实现

在工业控制中,通常需要对温度、湿度等信号进行实时采集、可靠传输和实时显示,实现了PC端对CAN智能节点的有效控制。

为了达到工业控制上这些控制要求,CAN总线上的节点通常需要有微控制器作为节点的主控器。

主控器完成现场各项参数的采集、响应相关的外部事件、接受外部按键命令、产生驱动信号、显示相关参数及与CAN总线控制器通信。

图2.2为ATMega8L作为节点控制器的各个部件的连接方框图。

图2.2智能节点方框图

智能节点对现场信息的采集通过传感器来实现,其中一个为温度传感器,采集温度信号,另一个为湿度传感器,采集湿度信号。

两个智能节点分别由单片机ATMega8L、按键电路、报警电路、LED显示、CAN控制器SJA1000、CAN总线收发器PCA82C251以及光电隔离器组成,具有现场数据采集、显示及CAN总线通信功能,可以与系统主机及其它CAN智能测控节点传送各种参数,并接收来自系统主机的命令和数据,用来调整和改变控制状态。

CAN总线网络采用总线型拓扑结构,两个智能节点和上位机分别通过CAN接口连接到CAN总线网络上,通信电缆采用双绞线,双绞线的两头各接一个120Ω的匹配电阻避免信号反射。

上位机通过串行口与CAN-232转接板连接,然后连接到CAN总线网络上;上位机软件采用LabVIEW编写,其功能是建立友好的人机交互界面,完成数据通信,并存入数据库,将数据以曲线、报表的形式显示出来,也可以调出历史数据进行显示。

下位机可以通过按键来切换显示温度、湿度,当被测量超限时,可以进行声光报警,以引起操作人员的注意,且下位机采集的信息也可以上传到上位机,使上位机和下位机的参数同步。

上位机还可以和企业网络进行信息传输,远程PC机通过IP地址登陆Internet网络以后,可以看到现场的模拟界面,里面有每一个现场仪表的实时参数,用户可以调看仪表的历史参数和事故记录,也可以在相应权限内对仪表发出指令进行操作,调整运行参数。

CAN总线收到指令信号后,对应的现场仪表依据指令进行相关动作。

系统硬件电路通过单片机最小系统部分和CAN通信模块部分来实现。

单片机最小系统中的ATMega8L微处理器使用了片内上电复位电路,用内部RC振荡器代替外部晶振。

CAN通信部分选用了PCA82C251作为驱动器以增大通信距离。

为了增强抗干扰能力,使用了高速光耦6N137作SJA1000和PCA82C251的隔离器件,实现光电隔离。

在智能节点设计时,为了达到良好的隔离效果,6N137、PCA82C251和SJA1000选用2个完全隔离的电源供电;PCA82C251的CANH、CANL脚各通过一个5.1Ω的电阻与CAN总线相连,通过1个30pF左右的电容接地,电阻可以保护PCA82C251免受过流的冲击,接地电容可以起到滤波和防辐射的作用;PCA82C251的Rs脚上接一个斜率电阻,其阻值根据总线通信速率适当调整,一般在16~140kΩ之间,本系统接了1个100kΩ的可调电阻,方便系统调试;总线两端分别接1个120Ω的匹配电阻,提高抗干扰能力;SJA1000的TX1脚悬空,RX1引脚的电位必须维持在约0.5VCC以上,否则将不能形成CAN协议所要求的电平逻辑。

二.3现场信息检测的实现

现场信息的检测通过温度传感器和湿度传感器来实现,分别选用的是AD590电流型集成温度传感器和湿敏电阻传感器。

以下就温湿度检测电路设计作简单介绍。

二.3.1温度检测电路设计

1.AD590温度传感器特性

设计中选用AD590电流型集成温度传感器,它输出电流与温度成比例,且是整个电路的电源电流,这个电流与施加在电路上的电源电压几乎无关。

它只需单电源工作,抗干扰能力强,需求的功率很低(1.5mW/+5V/+25℃)。

因是高阻抗电流输出(710MΩ),所以导线上的电阻对器件工作影响不大。

用绝缘良好的双绞线连接,可以使器件在距电源25m处正常工作。

高输出阻抗又能极好地消除电源电压漂移和纹波的影响,电源由5V变到10V时,最大只有1μA的电流变化,相当于1℃的等效误差。

还要指出的是,AD590能经受高至44V的正向电压和20V的反向电压,因而不规则的电源变化或管脚反接也不会损坏器件。

AD590的主要特征如下:

·线性电流输出:

1μA/K;

·测温范围宽:

-55℃~150℃;

·二端器件:

电压输入,电流输出;

·精度高:

±0.5℃(AD590M);

·线性度好:

在整个测温范围内非线性误差小于±0.3(AD590M);

·工作电压范围宽:

4~30V;

·器件本身与外壳绝缘;

·成本低。

2.温度检测电路

在设计测量电路时,首先应将电流转换成电压,它的温度每升高1K,电流就增加1μA。

当AD590的电流通过一个1kΩ的电阻时,这个电阻上的压降为1mV,即转换成1mV/K。

当温度是0℃时,输出的电压是273.2mV。

在测量室温中,当室温达到40℃输出的电压是313.2mV。

AD590温度检测电路如图2.3所示。

图2.3AD590温度检测电路

由图2.3可得出电压和温度的关系:

(2-1)

二.3.2湿度检测电路设计

1.湿敏电阻传感器特性

湿敏电阻传感器是利用湿敏材料吸收空气中的水分而导致本身电阻值发生变化这一原理而制成的。

湿敏电阻传感器根据使用湿敏材料的不同可分为高分子型和陶瓷型。

MCT系列陶瓷材料湿敏电阻传感器的内部结构,在其两面设置着氧化钌电极与铂铱引线,并安装有辐射状用于加热清洗的加热装置。

根据检测情况加热装置对湿敏元件进行加热清洗,对于湿敏陶瓷在500℃以上进行几秒钟的加热,从而清除陶瓷的污染,使其重现原来的性能。

MCT系列陶瓷材料在温度200℃以下时的电阻值受温度影响较小,当温度在200℃以上时呈现普通的热敏电阻特性。

这样加热清洗的温度控制可利用湿敏陶瓷在高温时具有热敏电阻特性进行自动控制。

由于传感器的基片与湿敏陶瓷容易受到污染,当电解质附着在基片上时,传感器端子间将产生电气泄漏,相当于并联一只泄漏电阻。

为此,需要在基片上增设防护圈。

2.湿度检测电路设计

设计中用的湿敏电阻的阻值与湿度的对应关系如表2.1所示。

表2.1湿度和阻值对应表

湿度

30%

35%

40%

45%

50%

55%

60%

65%

70%

阻值

16M

5843K

2041K

262.5K

250K

87.48K

30.61K

29.40K

3.74K

湿敏电阻传感器模块把湿敏电阻和固定电阻串联构成分压电路将电阻变化转换成电压变化。

模块中的运放LM358实现两个功能,先用做电压跟随器,将输出的电压信号通过J1端输出,LM358又用做比较器,将室温对应的电压和设定报警电压相比较当室温高于设定值时比较器输出高电平LED灯被点亮。

R12可以用于调节报警电压,J3端报警设定值的输出。

可以通过计算得到设定的报警值。

湿度检测电路设计如图2.4所示。

图2.4湿度检测电路图

第三章单片机最小系统设计

单片机最小系统包括:

单片机、LED显示电路、按键电路、蜂鸣器报警电路等。

其硬件接口电路原理图如图3.1所示。

图3.1单片机最小系统硬件接口电路原理图

三.1ATMega8L单片机简介

ATMega8L是基于增强的AVRRISC结构的低功耗8位CMOS微控制器。

由于其先进的指令集以及单时钟周期指令执行时间,ATMega8L的数据吞吐率高达1MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。

AVR内核具有丰富的指令集和32个通用工作寄存器。

所有的寄存器都直接与算术逻辑单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。

这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。

ATMega8L有如下特点:

8K字节的系统内可编程Flash(具有同时读写的能力,即RWW),512字节EEPROM,1K字节SRAM,三个具有比较模式的灵活的定时器/计数器(T/C),片内/外中断,可编程串行USART,面向字节的两线串行接口,10位6路(8路为TQFP与MLF封装)ADC,具有片内振荡器的可编程看门狗定时器,一个SPI串行端口,以及五种可以通过软件进行选择的省电模式。

工作于空闲模式时CPU停止工作,而SRAM、T/C、SPI端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于休眠状态;ADC噪声抑制模式时终止CPU和除了异步定时器与ADC以外所有I/O模块的工作,以降低ADC转换时的开关噪声;Standby模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力。

ATMega8L引脚图如图3.2所示。

图3.2ATMega8L引脚图

ATMega8L引脚图功能表如表3.1所示。

表3.1ATMega8L引脚功能表

引脚

功能说明

VCC

数字电路的电源

GND

 

端口B(PB7..PB0)

XTAL1/XTAL2/

TOSC1/TOSC2

端口B为8位双向I/O口,具有可编程的内部上拉电阻。

其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。

作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。

在复位过程中,即使系统时钟还未起振,端口B处于高阻状态。

通过时钟选择熔丝位的设置,PB6可作为反向振荡放大器或时钟操作电路的输入端。

通过时钟选择熔丝位的设置PB7可作为反向振荡放大器的输出端。

若将片内标定RC振荡器作为芯片时钟源,且ASSR寄存器的AS2位设置,PB7..6作为异步T/C2的TOSC2..1输入端。

 

端口C(PC5..PC0)

端口C为7位双向I/O口,具有可编程的内部上拉电阻。

其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。

作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。

在复位过程中,即使系统时钟还未起振,端口C处于高阻状态。

 

PC6/RESET

若RSTDISBL熔丝位编程,PC6作为I/O引脚使用。

注意PC6的电气特性与端口C的其他引脚不同。

若RSTDISBL熔丝位未编程,PC6作为复位输入引脚。

持续时间超过最小门限时间的低电平将引起系统复位。

 

端口D(PD7..PD0)

端口D为8位双向I/O口,具有可编程的内部上拉电阻。

其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。

作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。

在复位过程中,即使系统时钟还未起振,端口D处于高阻状态。

/RESET

复位输入引脚。

持续时间超过最小门限时间的低电平将引起系统复位。

持续时间小于门限时间的脉冲不能保证可靠复位。

AVcc

AVcc是A/D转换器、端口C(3..0)及ADC(7..6)的电源。

不使用ADC时,该引脚应直接与Vcc连接。

使用ADC时应通过一个低通滤波器与Vcc连接。

端口C(5..4)为数字电源Vcc。

AREF

A/D的模拟基准输入引脚。

ADC7..6

(TQFP与MLF封装)

TQFP与MLF封装的ADC7..6作为A/D转换器的模拟输入。

为模拟电源,且作为10位ADC通道。

三.2LED显示接口技术

LED数码管是由发光二极管显示子段组成的显示器件。

在单片机系统中通常使用的是七段LED显示器,这种显示器有共阴极和共阳极两种,如图3.3所示。

共阴极LED数码管的发光二级管的阴极接地,如图3.3(a)所示,当发光二极管的阳极为高电平时,发光二极管点亮;共阳极LED数码管的阳极接+5V电源,如图3.3(b)所示。

通常的七段LED显示器中有8个发光二极管,一个发光二极管构成小数点(dp用来显示小数点),常用的七段LED显示器的管脚如图3.3(c)所示。

a、b、c、d、e、f、g、dp称为LED显示器的段,公共端com称为LED显示器的位。

从管脚a~dp输入不同的8位二进制数,可以显示不同的数字或字符。

图3.3七段LED数码管管脚与结构

LED数码管

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1