电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 接口/总线/驱动 > 详细信息
接口/总线/驱动:基于CAN总线的电工实验指导系统设计
来源:   时间: 2007-11-21 8:09:45    

0 引言

  在生产现场控制系统中,智能设备与常规电气设备的安装、调试与维护需要相当数量的电气技术人员,如何高效、批量、规范地培养高级电气操作人员是教仪厂商急需解决的问题。它要求设备具备通信功能,让教师能掌握训练过程的动态指标,从而了解学员的实际实验情况,可对实验过程进行控制,实现分类指导。

  本文通过对CAN(控制器局域网)协议及其应用的研究,利用CAN通信控制器、CAN收发器以及增强型微控制器等元器件,研制并开发一种基于CAN总线的应用系统--电工实验指导系统,在电工实验室开出网络化实验教学课程,从而改变常规教学方法的不足,让学生更加自主、灵活地完成其实验任务,并可根据自己的情况进行扩展实验,为建立开放性实验实训设施基地打下良好的基础,还能使学员体会到网络实验的实际价值,了解CAN总线控制技术的基本知识。

1 CAN总线网络通信层的模型与协议

  针对不同的应用领域可选择不同的应用规范,对于一般的应用领域,采用"命令-响应"模式的通信协议,就可以实现可靠而有效的"主-从"式通信网络。如果需要进行大量数据交换或通信方式灵活的CAN网络,则可采用一些标准的多主通信协议,如HilonB协议,或者采用CAN2.0协议中远程帧定义。在汽车电子产品领域,通常参考或直接采用J1939等标准规范。在电力通信设计领域,则常采用DeviceNETV2.0规范,该规范己被我国采纳国家标准。在智能楼宇通信领域,一般使用Modbus协议或延用RS-485模式的"主-从"协议。

  本系统在建立实际CAN总线通信网络时,使用CAN底层硬件来实现对物理层、数据链路层的控制。应用CAN2.0A/B协议规定的通信检错等机制保证CAN总线通信网络的可靠性,建立了用户协议层的通信协议,并对网络上的通信数据流进行解释与管理。其用户协议层(应用层)通信协议由数据帧和远程帧格式定义来实现,属于"主-从"式结构。

2 硬件系统的组成与模块硬件的设计

  基于现场总线的电工实验指导系统的硬件主要由主机、接口卡、智能节点(从机)组成。主机中有应用程序和数据库等文件;接口卡是CAN实现通信的桥梁,同时,在网络中它也作为一个节点;智能节点由基于现场总线、单片机技术的数据采集与传输模块以及实际操作接线装置等组成。节点能够在计算机的控制下对学生的电工实验进行智能指导。

2.1 数据采集与传输模块的设计

  数据采集与传输模块可分为5个主要部分,即:由单片机AT89S52组成的主机部分;由SJA1000、PCA82C250、光电隔离电路等组成的CAN总线控制及接口部分;由+5V基准电压源、驱动三极管、LED指示灯、数码管组成的电源与显示部分;采用4片8255作为I/O口的扩展,并与操作工位后端接口等电路组成的数据转换与采集部分;实际操作工位。

  AT89S52单片机作为主机,负责对SJA1000进行初始化,通过控制SJA1000实现数据的接收和发送等通信,实施对实验数据的采集,采用P1口控制动态扫描显示与指导实验相关的数据等。选用74L,S373作为地址锁存器,用74LS138对8255、SJA1000进行片选。

2.1.1 CAN总线控制及接口部分

  在从机的运行过程中,由于主控CPU需完成多项工作任务,在要求具有一定的灵活性的同时,还需使系统具有一定的可扩展性,因此,从机中的CAN控制器选用Philips公司的SJA1000。选用PCA82C250作为CAN总线的收发器,它也是CAN协议控制器与物理层之问的接口,具有抗瞬变、抗射频和抗电磁干扰的性能,内部的限流电路具有电路短路时对传送输出级进行保护的功能。在节点(工位机)与介质之间加入光耦电路,即SJA1000的TX0和RX0并不是直接与82C250的TXD和RXD相连,而是通过高速光耦6N137后与82C250相连。6N137为高速光隔器件,作为外线路与系统之问的隔离,并采用两个完全隔离电源VCC和VDD分别对光耦两部分电路供电,从而达到信号之间的完全隔离,这样可有效地提高系统的抗干扰能力和内部系统的安全性。SJA1000的ADO~AD7连接到AT89S52的P0口,CS连接到74LS138的Y4端口,Y4为0时CPU片外存储器地址可选中SJA1000,CPU通过这些地址可对SJA1000执行相应的读写操作,SJA1000的RD、WR、ALE分别与AT89S52的对应引脚相连,可将INT接AT89S52的INT0或INT1。AT89S52可通过中断或查询方式访问SJA1000,也可将INT接AT89S52的其他端口,采用查询方式访问SJA1000。 

2.1.2 数据转换与采集部分

1)数据转换电路的设计

  根据电气控制原理的分析与研究,从中优化出一种比较通用的接线方法,让对应的点按操作顺序依次向CPU的I/O口提供一定规则的+5 V电平,即可完成采样和数字量的转换。学生操作工位的正面为与实际接线端子插孔,其背面为与之相连的信号线,信号线的另一端与8255的某一固定的端口相接。

2)采样电路的设计

  工位面机采用4片8255作为I/O口的扩展,并通过20 kΩ下拉电阻与操作工位后端对应的接线端子相接。在8255初始化时,让其工作于普通读方式,此时,如果某端子为高电平,则在对应的8255 I/O口可采集到高电平。如果所有接线端子均为高电平,则总电流会接近7805的最大输出电流。因此,需采用分相、分电路的方法进行实验指导操作,完成实验的指导任务。 2.1.3 单片机对硬件电路各部分访问的地址

  硬件电路原理图设计好后,其访问地址即可根据具体的情况予以确定。本文采用P2.5~2.7口控制74LS138,分别对4片8255和SJA1000进行片选和访问。

3 CAN总线电工实验系统节点软件

3.1 数据采集与显示在节点中的实现

  本文采用AT89S52单片机作为工位(节点)系统的控制、数据采集和显示的核心,使用Keil uVision2集成开发环境进行软件的开发与调试。

  由于从机需要完成显示、数据采集与传输等功能,因此至少需采用2个中断源进行程序控制,即INT0和T0。其中:INT0用于指示CAN总线数据的接收与发送等进程的外部中断;T0控制显示扫描时钟等。数据采样过程分为两种情况:一是初始化时的自动初始采样;二是在程序的运行过程中,当接收到数据帧时,自动执行一次采样。

1)显示部分的功能与过程分析

  显示电路的功能有3种:显示初始化成功、有关出错和对学生实验步骤进行指示等信息。这些信息可由用户根据硬件结构和软件的需要自行定义。本文采用74LS47译码驱动集成电路进行驱动与显示控制。通过软件的运行,使P1口分别控制6个数码管共阳端的通断,同时,由P0口向74LS47译码驱动电路提供数据,实现了显示的动态扫描控制。初始化正常时自定义显示为004321,正常运行时显示课题号、相号、接线步骤标号或出错时显示错误标志号。

2)数据采集的原理与过程分析

  数据采集的原理是:CPU通过其P2口的相应引脚控制向与其对应的分相首端子提供+5 V电平,其余接点按一定规则用信号线相连,从而使每个端子上出现0电平或高电平,这样对应端子的状态可通过8255读取。即按一定顺序接线时,可在对应的8255口读到不同的采样数据。8255的每一个端口均可读到一个8位二进制数(1字节),将这些数据与实验操作步骤关联,从而使每次操作得到不同的数据。本系统需4片8255,一次采样可得到12个8位二进制数。

  在单片机的RAM空间设置一个20字节的数组作为采集数据的存储空间。在上电复位时,使8255均初始化为普通读方式,并向数组中写入初始化数据。正常运行后,每接收到一个数据帧就进行一次数据的采集。所采集的数据直接按CAN总线通信的帧格式对数组中的内容进行更新,以备读取与上传。数据采集的存储地址与内容如表2所示。

3.2 通信软件的设计

  本文中主站采用PC15121接口卡作为接口设备,在通信方式与协议确定后,主站与从站的通信可调用该产品的接口函数来实现。从站(工位)CAN节点的控制软件采用模块化设计方法。主要有5个模块:SJA1000初始化模块、SJA1000接收数据模块、SJA1000发送数据模块、SJA1000错误处理模块;系统的其他任务模块。

3.3 智能节点程序的运行

  从机的主要功能为硬件的初始化、进入正常的显示、等待中断事件的发生、接收数据帧、数据处理并送显、等待接收远程帧并返回所需的数据帧和数据的采集等。

  在主机程序设计中,接口程序与数据处理的算法设计是关键。其中,主机接口卡可作为一个智能节点,网络中的数据通信主要是对该卡的操作。

4 结束语

  本文对CAN总线网络的软硬件系统进行了分析与研究,采用了一种基于CAN总线的组网协议与数据传输方式,并将其应用于电工实验指导系统中,以"主一从"通信模式实现网络通信,达到了预期目标。设备能满足实验环境的需要。

 

相关信息
发表评论
打印本页 关闭本页
基于SHARC DSP与SJA1000的CAN总线接口设计
  引言   当前,有一些微处理器将CAN控制器嵌入到系统之中,但是仍有大量人们比较熟悉的微处理器并不带有CAN控制器。采用微处理器和CAN控制器组合的设计成为必要,而且,CAN控制器具有完成CAN总线通信协议所要求的全部必要功能,因此,CAN控制器与其它微处理器的接口设计成为设计CAN总线系统的首要工作。本文重点介绍以SHARC DSP为核心的、基于SJA1000的CAN总线接口设计。   SJA1000...
>>详细内容
RS-232、RS-422与RS-485协议标准及应用概述
  一、RS-232、RS-422与RS-485的由来     RS-232、RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布,命名为EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容。RS-422由RS-232发展而来,它是为弥补RS-232之不足而提出的。为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mb/s,传...
>>详细内容
基于RS-485总线的小型集散系统设计
  1.前言  集散控制系统是一种价格昂贵的自动化控制装置,国内外集散系统制造公司,在生产大型集散系统的同时,都推出了同系列的小型集散系统,即使这样,其价格对国内小企业而言仍然偏高。我们从我国中小企业的实际情况出发,以个人计算机做操作站,通过RS-485总线与多台DCS基本控制器组成了一种简易集散系统,经济实用。    2.系统的组成及其框图  整个系统包括一台PC或者IPC作为...
>>详细内容
波特率自适应的RS-485中继器设计
   RS-485收发器采用平衡发送和差分接收,因此具有抑制共模干扰的能力;加上接收器具有高灵敏度,能检测低达200 mV的电压,故传输信号能在千米以外得到恢复。使用RS-485总线,一对双绞线就能实现多站联网,构成分布式系统,且设备简单、价格低廉,能进行长距离通信,因而得到了广泛的应用。由于在双绞线上的电平损耗,RS-485标准通信的最大传输距离是1 200 m,因此更远距离的应用中必须使用...
>>详细内容
电表设计中的红外和RS-485通信
  在设计电表时,通信往往是最后考虑的问题。目前的电表设计需要收集越来越多的信息,并且能够自动地把这些信息传输到电力公司。在MAX3120电表参考设计中,通信子系统的工作既是用于这一目的。 为什么要进行通信? 在设计电表时,通信往往是最后考虑的问题。传统电表使用老式的被动通信方式传输用电信息:抄表员定期抄表并读取数值。而新一代电表需要收集的信息越来越多。如果对工作人员...
>>详细内容
基于AT89S52的智能快速充电器控制系统的设计
  1.引言 本控制系统是为120w智能快速稳压电源设计的。 该快速充电器是为部队在野战条件下工作而研制的,因此要求其具有体积小、重量轻、智能化程度高、操作简便等优点,同时对电源的可靠性和抗干扰性提出了很高的要求。有稳压供电和充电两种工作方式。稳压供电时输出恒定的24V;处于充电状态时有四种充电方式:常规充电、快速充电、电池浮冲、电池训练,可以为镉镍、氢镍蓄电池充电。...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com