电子发烧友网 > 安全设备/系统 > 正文

通过CAN总线实现UPS通信网络的数据采集与监控设计

2020年04月02日 09:28 次阅读

1、引言

随着网络的普及,网络的可靠性越来越受到人们的关注,而影响网络可靠性的关键是网络系统中的电源系统的可靠稳定,要求能对其运行状态进行实时监控,及时发现异常情况和事故隐患,在出现异常和故障时迅速进行诊断并予以修复,最大限度地减少ups的停机时间即成必要。针对不间断电源系统,将can总线技术应用到系统的网络监控中,并充分利用can能够以较低的成本、较高的实时处理能力在强电磁干挠环境下可靠地工作的优点,开发出ups网络监控系统。

2、can总线概况

can全称为controller area network即控制器局域网,是国际上应用最广泛的现场总线之一。can最初出现在80年代末的汽车工业中,由德国bosch公司最先提出。最初被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ecu之间交换信息形成汽车电子控制网络,发动机管理系统、变速箱控制器、仪表装备、电子主干系统中均嵌入can控制装置。现在它已发展为一种有效支持分布式控制或实时控制的串行通信网络。

2.1 can总线特点

can具有十分优越的特点,使人们乐于选择,这些特性包括:

(1) 多主方式工作

网络上任意节点可以在任何时刻主动的向任何其他节点发送消息,而不分主从;通信方式灵活,无需站地址等节点信息,可构成多机备份系统;

(2) 采用非破坏性总线仲裁技术

节点信息分成不同优先级,满足不同实时要求。当几个节点同时向网络发送消息时,运用逐位仲裁原则,利用帧中开始部分的标识符,优先级低的节点主动停止发送数据,而优先级高的节点则不受任何影响的发送信息;

(3) 借助接受滤波的多点传送

只需通过报文滤波可实现点对点、一点对多点,以及全局广播等方式传送,无需专门调度;

(4) 高速率、远距离、低出错率

can总线通信最高波特率可高达1mbps(采用双绞线通讯距离40m)、最远通讯距离为10km(可达5kbps),can协议采用crc校验并提供相应的错误信息处理功能;

(5) 通信介质选择灵活

通信介质可以是双绞线、同轴电缆光纤,选择灵活;

(6) 半双工方式工作

can总线以半双工的方式工作,一个节点发送消息,多个节点接收消息;

(7) 抗干扰性能强

它采用集散控制技术,既可以满足控制的实时性和数据的实时采集及处理,又可以简化系统接线、提高控制网络的抗干扰能力。

2.2 can总线工作原理

can的通信介质为带优先级的cs-ma/ca,网络上任意节点可以在任何时刻主动的向任何其他节点发送消息,而不分主、从,即当发现总线空闲时,各节点都有权使用网络。而当发生冲突时,采用非破坏性总线优先仲裁技术,由于每个节点的can总线接口必须接收总线上出现的所有信息,因此必然需要设置一个接收寄存器。先将信息接收,再根据接收的信息标识符决定是否需要读取信息包中的数据。同时为了避免不必要的频繁中断,需要设置一个屏蔽寄存器来滤掉那些所在节点设备不感兴趣的信息,独立的can控制器sja1000装配了一个多功能的验收滤波器,该滤波器允许自动检查id和数据字节,使用这些有效的滤波方法,对于某个节点来说,无效的信息可被防止存储在接收缓冲器里,因此降低了主控制器的处理负载。由验收代码和屏蔽寄存器根据数据表给定算法来控制,接收到的数据会和验收代码寄存器中的值进行逐位比较,接收屏蔽寄存器定义与比较相关的位的位置(“0”=相关,“1”=不相关),只有收到信息的相应的位与验收代码寄存器相应的位相同,这条信息才会被接收。

can总线传递的信息以信息包的形式出现:

(1) 信息的消息标识符(11bit);

(2) 远地传送请求(1bit);

(3) 数据长度表 (4bit);

(4) 数据(0-8个bit)。

标识符既用来表明信息的类型(数据帧,远程帧),也用来表明信息的优先级;远地传送请求指需要数据的节点可以请求另一个节点发送一个相应的数据帧,该数据帧和对应的远程帧以相同的标识符id命名。

2.3 接口电路

通过CAN总线实现UPS通信网络的数据采集与监控设计

图1为can总线控制器与can通信网络的接口电路。从图1中可以看出,此部分电路主要由三部分所构成:独立can总线控制器sja1000t、总线收发器82c250和高速光电耦合器6n137。各部分功能如下:

(1) can控制器sja1000t

sja1000t内部集成了can总线的协议,与用户端控制器一起完成can的各项功能,起到中间协调作用;

(2) 总线收发器82c250

sja1000与can物理总线之间的接口为82c250,它可提供对总线的差动发送能力和对can控制器的差动接收能力,具有较强的抗干扰能力。通过对脚8(rs)的不同连接可以实现三种不同的工作方式:高速、斜率控制和待机,本系统中采用斜率控制,以降低射频干扰;

(3) 高速光耦6n137

为了增强can总线节点的抗干扰能力,sja1000 的tx0和rxo并不是直接与82c250的txd和rxd相连,而是通过高速光耦6n137后与82c250相连,这样就很好的实现了总线上各can节点间的电气隔离, 不过应该特别说明的一点是光耦部分电路所采用的两个电源vcc和vdd必须完全隔离,否则采用光耦也就失去了意义,电源的完全隔离可采用小功率电源隔离模块或带多5v隔离输出的开关电源模块实现,这些部分虽然增加了节点的复杂但是却提高了节点的稳定性和安全性;

(4)82c250与can总线的接口部分

采用了一定的安全和抗干扰措施。82c250 的canh和canl引脚各自通过一个5ω的电阻与can总线相连,电阻可起到一定的限流作用,保护82c250免受过流的冲击;canh和canl与地之间并联了2个100pf的电容,可以起到滤除总线上的高频干扰和一定的防电磁辐射的能力;在两根can总线接入端与地之间分别反接了一个保护二极管,当can总线有较高的负电压时,通过二极管的短路可起到一定的过压保护作用。

3、系统简介

系统的结构图如图2所示。

图2中本地pc监控机及远程网监控机完成对该系统的数据实时监视及控制;显示监控模块在系统的面板上,与ups1、ups2、ups3(仅列举3个,实际做到6个)通过can总线组成canbus网络,显示监控模块主要通过can总线完成对下面各ups相关数据的采集,并与系统机显示模块、本地pc监控机、远程网监控机进行通信;ups1、ups2、ups3为本系统的可单独运行供电的不间断电源。canbus网络通过can_h和can_l及外加在两端的电阻rt(rt=124ω)组成,其上的节点can_h和can_l分别接在canbus网络的can_h和can_l上,目前canbus网络上最多可接110个节点。

通过CAN总线实现UPS通信网络的数据采集与监控设计

鉴于本系统的要求,ups1、ups2、ups3及显示监控模块的控制芯片均采用ti公司生产的tms320f240dsp,can控制器采用philip公司生产的sja1000t。

3.1 dsp与can总线控制器硬件接口

dsp与can控制器sja1000t之间的接口电路如图3所示。

通过CAN总线实现UPS通信网络的数据采集与监控设计

sja1000t的存储空间映射在微控制器dsp的i/o空间,对sja1000存储空间的寻址必须用指令in和out。在intel方式下读写sja1000时,地址和数据是分时传送的,地址在前,数据在后。根据dsp对外设端口的逻辑时序及sja1000t要求的读写逻辑时序,除了dsp的基本读写引脚we、w/r外,我们还选用a14、a15、is为控制脚,控制sja1000地址空间和数据空间的选通,当a15=1、a14=0时为地址空间,选通ale和cs;当a15=1、a14=0时为数据空间,此时对于dsp来说,写则选通sja1000t的wr和cs, 读则选通sja1000t的rd/w和cs,从而完成了dsp与sja1000t之间的数据传递。

另外,由于接收数据采用中断方式,故在dsp上选用外部中断xint1作为中断源,而sja1000t是低有效,故通过一个上拉电阻接vcc。

4、can通信网络软件设计

单个can节点通信的功能主要是将本节点的数据信息传送给can通信网络其它节点,以及接收网络上其它节点传送来的信息。can总线单个节点的软件设计主要包括三大部分:can节点初始化、信息的发送和信息的接收。设计时将can初始化、发送信息(数据和远程帧)设计为子程序,发送信息采用查询方式,接收信息采用中断方式。

(1) 初始化子程序

sja1000的初始化只有在复位模式下才可以进行,初始化主要包括工作方式的设置、接收滤波方式的设置、接收屏蔽寄存器amr和接收代码寄存器acr的设置、波特率参数设置和中断允许寄存器ier的设置等。在完成sja1000的初始化设置以后,sja1000就可以回到工作状态,进行正常的通信任务,其源程序如下:

data_can .set 0c000h

dress_can .set 8000h

can_start:

ldp #4

splk #0,temp ;控制寄存器(mod)设置

out temp,dress_can

splk #1bh, temp ;复位模式

out temp,data_can ;sja1000进行初始化

splk #0, temp

out temp,dress_can

in temp,data_can

bit temp,bit0

bcnd can_reset,ntc

splk #4,canflag ;设置验收代码寄存器

out temp,dress_can

splk #01h,canflag

out temp,data_can

splk #5, temp ;设置验收屏蔽寄存器

out temp,dress_can

splk #000h, temp

out temp,data_can

splk #31, temp ;设置时钟分频寄存器(cdr)

out temp,dress_can

splk #48h, temp ;选择basiccan模式,关

;闭时钟(clkout)

out temp,data_can

splk #6, temp ;设置总线定时寄存器0

out temp,dress_can

splk #0c4h, temp ;tscl=10tclk,tclk为xtal

;的频率周期(20mhz)

out temp,data_can ;不同总线控制器的时钟

;振荡器间的相对偏移为0

splk #7, temp ;设置总线定时寄存器1

out temp,dress_can

splk #0beh, temp ;设置tsyncseg=tscl,

;ttseg1=15tscl,ttseg2=4tscl

out temp,data_can ;位周期为20tscl,故在

;20mhz晶振情况下,设置波特率为100kbps

splk #8, temp ;设置输出控制寄存器

out temp,dress_can

splk #1ah, temp ;正常输出模式

out temp,data_can ;tx1悬空,tx0推挽式

can_work ldp #4

splk #0, temp ;设置模式寄存器(mod)

out temp,dress_can

splk #1ah, temp ;设置双滤波接收方式,并

;返回工作状态

out temp,data_can

splk #0, temp

out temp,dress_can

in temp,data_can

bit temp,bit0

bcnd can_work,tc

ret

(2) 发送子程序

负责单节点信息的发送,发送时只需将待发送的信息按特定格式组合成一帧,送入sja1000发送缓存区中,然后启动sja1000发送即可,当然在往sja1000发送缓存区送信息之前必须先作一些查询判断,直到空闲时才能发送,发送子程序分发送远程帧子程序和数据帧子程序两种,远程帧无数据场;

(3) 接收子程序

负责单节点信息的接收以及其它情况处理。当can控制器接收到信息后向微控制器发出中断响应信号,微控制器在中断程序中将接收到的信息读入,再根据信息来控制节点的动作。接收子程序比发送子程序要复杂一些,因为在处理接收信息可能是诸如总线脱离、错误报警、接收溢出等中断,要对其进行处理。

5、结束语

目前,该网络监控系统已经在广东某集团公司18kva-6*3kva可热插拔模块化不间断电源上使用,经过了运行和调试。验证了使用can总线技术使系统布线更加灵活,具有通信质量可靠、响应速度快、实时性好的特点,满足整个系统可热插拔的要求。

责任编辑:gt

下载发烧友APP

打造属于您的人脉电子圈

关注电子发烧友微信

有趣有料的资讯及技术干货

关注发烧友课堂

锁定最新课程活动及技术直播

电子发烧友观察

一线报道 · 深度观察 · 最新资讯
收藏 人收藏
分享:

评论

相关推荐

四轴机器人编程与应用

主题简介:本次直播主要讲解四轴机器人控制器基本原理及组成。四轴机器人的核心技术内嵌人工智能算法的工业级运动控制技术和伺服
发烧友学院发表于 2018-10-30 00:00 13718次阅读
四轴机器人编程与应用

CAN总线的原理、通信接口设计及在航天卫星中的应...

本文在分析can总线航天应用的基础上,从硬件原理设计、cpu与can总线接口实现以及can总线通信软....
发表于 2020-04-02 09:53 34次阅读
CAN总线的原理、通信接口设计及在航天卫星中的应...

利用CAN总线实现多通道多微机电视监控系统的设计

随着计算机技术,通信技术和电视技术的发展,在许多场合,为了监视和控制现场的运行状况,提出了电视监控系....
发表于 2020-04-02 09:16 15次阅读
利用CAN总线实现多通道多微机电视监控系统的设计

两种类型的激活有什么不同吗?

问候语!我正在使用PIC32MX150F128B。我正在阅读有关WDT的数据表,PIC32 FRM部分9说FWDTEN启用...
发表于 2020-04-02 08:59 6次阅读
两种类型的激活有什么不同吗?

需要帮助可以进行通讯

大家好,在使用dspic3ep32gp502控制器进行CAN总线通信时,我需要帮助。我的代码卡在我检查传输是否完成的最后一条线...
发表于 2020-04-02 08:49 6次阅读
需要帮助可以进行通讯

虚拟存储有哪一些挑战

相比更加简单和整合的数据保护方案,虚拟存储基于SAN备份方式最大的优点在于其极短的恢复时间。基于磁盘....
发表于 2020-04-01 16:34 44次阅读
虚拟存储有哪一些挑战

基于调用DLL的labview数据采集系统,但是没有采集卡,有办法模拟吗

基于调用DLL的labview数据采集系统,但是没有采集卡,有办法模拟吗 目前已经了解了dll的调用,但是现在不知道dll和...
发表于 2020-04-01 13:29 91次阅读
基于调用DLL的labview数据采集系统,但是没有采集卡,有办法模拟吗

通过ICSP TAP控制器读取PIC32MZ器件ID,PrAcc位永远不会低

Hii一直试图使用PIC32MZ来编程另一个PIC32MZ,并一直试图尽可能地遵循PIC32 Flash编程规范(DS60001...
发表于 2020-04-01 10:36 25次阅读
通过ICSP TAP控制器读取PIC32MZ器件ID,PrAcc位永远不会低

实现水下波动仿生推进器的多电机独立控制设计方案

水下波动仿生推进器采用分级控制的思路,总体网络结构如图1所示。在岸上,以一台IBM-PC机作为操控平....
发表于 2020-04-01 10:10 44次阅读
实现水下波动仿生推进器的多电机独立控制设计方案

PXI有什么产品?

各种坚固的PXI/CompactPCI机箱选择,适合各种便携式、台式、机架式和嵌入式应用;4, 8, 14和8槽机箱,带AC和...
发表于 2020-04-01 09:03 24次阅读
PXI有什么产品?

嵌入式倒立摆摆杆偏角控制器怎么在线仿真?

小车倒立摆控制能有效反映控制中的许多关键问题,如镇定问题、非线性问题、鲁棒性问题、随动问题及跟踪问题,因此成为...
发表于 2020-04-01 07:11 45次阅读
嵌入式倒立摆摆杆偏角控制器怎么在线仿真?

关于将数据从USB好奇心板存储到Pendrive中

我使用USB好奇板,我想收集所有的运行时数据到我的悬挂设备,我使用PIC32MM0256GPM064控制器。所以我如何将...
发表于 2020-04-01 06:54 11次阅读
关于将数据从USB好奇心板存储到Pendrive中

用于便携式的12位4mA至20mA过程控制器

4mA至20mA过程控制器具有3.3V最小环路电压LTC1453,完整的单电源,轨到轨电压输出12位DAC...
发表于 2020-04-01 06:22 54次阅读
用于便携式的12位4mA至20mA过程控制器

请问行走控制器怎么接a1a2d1d2?

请问美国科蒂思的行走控制器怎么接a1a2d1d2.讲解一下谢谢...
发表于 2020-03-31 22:14 9次阅读
请问行走控制器怎么接a1a2d1d2?

共模电感用于CAN总线的作用

在CAN节点的设计中,我们通常为了总线的通讯更为可靠,为CAN接口增加各种器件,但实际并非所有应用都需要,过多...
发表于 2020-03-31 15:38 149次阅读
共模电感用于CAN总线的作用

CAN-bus总线信号传输延时分析及解决方案

由于CAN-bus总线的实时性强、抗干扰能力强等特点,在轨道交通、汽车电子等行业得到广泛的应用。伴随....
发表于 2020-03-31 10:16 120次阅读
CAN-bus总线信号传输延时分析及解决方案

明基Zowie XL2746S电竞显示器,两侧拥...

值得一提的是Zowie XL2746S在显示器左右两侧还拥有两个“盾牌”,能让玩家屏蔽掉显示器背后的....
发表于 2020-03-30 16:41 187次阅读
明基Zowie XL2746S电竞显示器,两侧拥...

如何利用CAN采样点测试方案提高CAN网络通信成...

CAN总线的每一帧可以看作一连串的电平信号。大多数设备使用单点采样,也就是在一个位时间内从采样点的位....
发表于 2020-03-30 15:54 197次阅读
如何利用CAN采样点测试方案提高CAN网络通信成...

针对奥迪e-tron的电控部分进行详细讲解

奥迪e-tron的动力总成分为前驱和后驱,前驱功率:125KW,后驱功率140KW,这个在视频中有标....
发表于 2020-03-30 14:37 166次阅读
针对奥迪e-tron的电控部分进行详细讲解

电动汽车的控制器和整车控制器的功能分析

较好的汽车电动机控制器(MCU)将微电子器件和功率器件集成到同一芯片上,变成了功率集成电路(PIC)....
发表于 2020-03-30 10:25 171次阅读
电动汽车的控制器和整车控制器的功能分析

采用netTAP系列通用网关实现现场总线从站到串...

智能控制仪表是工业控制中最常用的控制器之一,其主要是针对某一特定的参数(如压力、温度、流量等),采用....
发表于 2020-03-30 10:14 795次阅读
采用netTAP系列通用网关实现现场总线从站到串...

你所知道的DCS系统都有哪些,它有哪些作用?

首先什么是dcs系统?DCS是分散控制系统(Distributed Control System)的....
发表于 2020-03-30 10:13 98次阅读
你所知道的DCS系统都有哪些,它有哪些作用?

由CAN-bus网络和以太网构建远程监控/数据传...

CAN(Controller Area Network——控制器局域网)是一种由CAN控制器组成的高....
发表于 2020-03-30 09:55 76次阅读
由CAN-bus网络和以太网构建远程监控/数据传...

运用CAN232B转换器实现RS232/CAN网...

由于RS232通讯距离短(根据EAT/TAI-232标准,仅为15米),而且,只能进行点到点通讯,不....
发表于 2020-03-30 09:33 78次阅读
运用CAN232B转换器实现RS232/CAN网...

CAN总线标准及它是如何解决多点竞争的问题

嵌入式的工程师一般都知道CAN总线广泛应用到汽车中,其实船舰电子设备通信也广泛使用CAN,随着国家对....
发表于 2020-03-29 11:14 220次阅读
CAN总线标准及它是如何解决多点竞争的问题

什么是Wi-Fi数据采集?NI Wi-Fi数据采...

每个Wi-Fi和以太网数据采集设备都可以容纳一个C系列测量模块。其测量、特性和规范是由WLS-916....
发表于 2020-03-29 10:30 56次阅读
什么是Wi-Fi数据采集?NI Wi-Fi数据采...

可编程控制器的结构组成以及工作原理

可编程逻辑控制器,其英文全称为Programmable Logic Controller,简称PLC....
发表于 2020-03-28 14:52 119次阅读
可编程控制器的结构组成以及工作原理

微软研究院展示类似拐杖的VR控制器

为帮助身体障碍人士享受科技带来的乐趣,微软研究院已经开发出多种解决方案,比如本文要为大家介绍的类似拐....
发表于 2020-03-28 14:15 489次阅读
微软研究院展示类似拐杖的VR控制器

可编程控制器的结构组成以及原理分析

可编程逻辑控制器,其英文全称为Programmable Logic Controller,简称PLC....
发表于 2020-03-27 14:12 89次阅读
可编程控制器的结构组成以及原理分析

LonWorks现场总线的特点及在应用中的两种通...

本文介绍了利用LonWorks现场总线代替原有的现场工业控制总线。利用LonWorks底层的显形报文....
发表于 2020-03-27 10:36 77次阅读
LonWorks现场总线的特点及在应用中的两种通...

基于CAN智能模块和网络服务器实现DNC集成制造...

过去的十几年中,人们在对自动化机械加工车间的研究中,将大量的精力投向FMS(Flexible Man....
发表于 2020-03-27 09:54 67次阅读
基于CAN智能模块和网络服务器实现DNC集成制造...

应用CAN总线为烟气脱硫工艺设计微机监控系统

锅炉烟气经除尘后,温度约为150℃,然后经热交换器将其送入湿式反应器系统,气相的SO2在有NH3存在....
发表于 2020-03-27 09:43 75次阅读
应用CAN总线为烟气脱硫工艺设计微机监控系统

采用CAN总线实现宝莱车驱动系统的设计应用

随着人们对汽车动力性、操纵稳定性、安全性和舒适性的不断追求,现代汽车上安装了很多电子控制设备、电子部....
发表于 2020-03-27 09:37 68次阅读
采用CAN总线实现宝莱车驱动系统的设计应用

采用现场总线技术的NETWORK-6000+控制...

NETWORK-6000+分散控制系统,其分散处理单元(DPU)T940X的CPU采用Pentium....
发表于 2020-03-27 09:29 60次阅读
采用现场总线技术的NETWORK-6000+控制...

SD6863典型应用电路图

SD6863是杭州士兰微电子出品的一款用于开关电源的内置高压MOSFET电流模式PWM+PFM控制器....
发表于 2020-03-26 16:19 134次阅读
SD6863典型应用电路图

日本推出兼容5G移动网络的Wi-Fi路由器,支持...

Speed Wi-Fi 5G X01可同时支持“Sub6”和“毫米波”两种主流的5G信号频段,也避免....
发表于 2020-03-26 15:27 571次阅读
日本推出兼容5G移动网络的Wi-Fi路由器,支持...

意法半导体推出USB-C控制器IC产品系列产品,...

中国,2020年3月25日——STUSB4500L是意法半导体USB-C控制器IC产品系列新推出的一....
发表于 2020-03-26 13:46 1023次阅读
意法半导体推出USB-C控制器IC产品系列产品,...

福特自动驾驶数据集公布 总体积达1.6TB或为数...

福特自动驾驶数据集公布,这可能是迄今为止最全面的数据集之一。
发表于 2020-03-26 11:52 108次阅读
福特自动驾驶数据集公布 总体积达1.6TB或为数...

可编程逻辑控制器的主要系统模块及其功能介绍

数十年以来,可编程逻辑控制器(PLC)始终是工厂自动化和工业过程控制有机组成的一部分。
发表于 2020-03-26 11:47 112次阅读
可编程逻辑控制器的主要系统模块及其功能介绍

CAN总线位周期结构及两种位同步方式分析

同步段是CAN总线位周期中每一位的起始部分。不管是发送节点发送一位还是接收节点接收一位都是从同步段开....
发表于 2020-03-26 10:13 76次阅读
CAN总线位周期结构及两种位同步方式分析

使用WAGO总线和世纪星组态软件实现污水处理监控...

大型污水处理厂各个反应池之间距离较远,而工程师要及时了解各个环节的电机运行情况和阀门的开关情况、处理....
发表于 2020-03-26 09:58 79次阅读
使用WAGO总线和世纪星组态软件实现污水处理监控...

投石科技室内模拟阳光装置

阳光作为自然元素的一种,满足人内心亲近自然的基本心理需求,缓解紧张、压抑情绪,获得温暖、安全感。 欧....
发表于 2020-03-26 09:42 51次阅读
投石科技室内模拟阳光装置

塑料门窗焊接清理生产线系统的特点及实际应用案例

随着计算机技术、通信技术、网络技术在工业生产、过程控制中的不断推广应用 ,工业控制过程对现场信号的传....
发表于 2020-03-25 09:56 48次阅读
塑料门窗焊接清理生产线系统的特点及实际应用案例