基于CAN总线的信号采集与处理模块研究
发布时间:2020-09-21 07:27
现场总线是自动化领域的计算机网络。CAN总线作为目前最有前途的现场总线之一,其主要优点为实时性好、可靠性高、性价比突出。因此已经逐渐成为当今自动化领域发展的热点之一。 本文主要研究对象为基于CAN总线的分布式数据采集与通讯系统,并准备将其应用于工业现场。作者在分析了CAN总线2.0B协议的基础上,采用结构化的方法独立设计了带有CAN总线通信接口的数据采集与处理底层模块。 底层模块的硬件设计以C8051F040高速型单片机为核心,其内部已经集成了AD采集和DA输出子模块,在其基础上,又外扩了CAN总线通讯、人机交互、地址译码等功能模块。 在集成了Keil C51编译器的Silicon Laboratories IDE开发环境下,采用模块化的软件程序设计方法完成了底层模块的模拟电压采集、CAN总线通讯、模拟电压输出、LCD显示、矩阵键盘扫描、现场温度监控、开关量输入输出等功能。每个子任务模块之间通过主程序的多任务机制来进行分时调用,并采用过采样等方法对采集到的信号进行一些简单的处理,减轻通讯带宽的负担,以提高系统的实时性与效率。 整个系统由两个底层模块和一台接有CAN总线通信板卡的上位机组成,采用主从结构,通过接口卡来实现双向通讯,由此可以及时得知工业现场的各种数据和运行参数,从而保证了对现场远程测控的实时性。CAN总线应用层协议由作者自行定义和编写,使之更加符合本系统的要求和特点。 目前整个系统运行良好,性能稳定,通信冗余度高,符合工业现场使用的要求。
【学位单位】:南京航空航天大学
【学位级别】:硕士
【学位年份】:2007
【中图分类】:TP336
【部分图文】:
帧起始 仲裁区域 控制区域 数据区域 CRC 区域 ACK 区域 帧结束图 2.2 数据帧结构(1)帧起始它标志数据帧或远程帧的起始,由一个单独的“显性”位组成。只在总线空闲时,才允许节点发送信号。所有节点必须同步于首先开始发送信息的节点的帧起始前沿。(2)仲裁区域仲裁区域包括识别符(ID)和远程发送请求位(RTR)。识别符(ID):识别符的长度为 11 位或 29 位。在本系统使用的 CAN2.0B 协议中,报文分为标准帧(11 位)和扩展帧(29 位)两种格式。当为标准帧时,这些位的发送顺序是从 ID-10 到 ID-0。最低位是 ID-0。最高的 7 位(ID-10 到 ID-4)必须不能全是“隐性”。扩展帧的报文结构与标准帧相似,不同之处是所使用的仲裁区域的长度,仲裁区域由已存在的 11bit 基本仲裁区域和 18bit 扩展仲裁区域组成。两种不同类型帧的仲裁区域比较如图 2.3 所示。
图 2.7 总线编码的数值表示2.6 CAN 总线仲裁方式由于 CAN 总线是一种多主型总线,总线上任一节点都有可能作为主节点向总线发送报文,因此就有可能出现几个节点同时向总线发送报文的情况。由于 CAN 总线并未定义节点地址,因此在这种情况下,CAN 总线基于“多主竞争总线仲裁”的原理,依靠报文的优先级进行取舍。报文的优先级体现在写入报文识别符(ID)区的二进制数值,该值不能被动态的改变。在同一系统中标识符定义是唯一的,不会出现两个节点发送具有相同标识符报文的情况。ID 中的值越小,其报文的优先级越高(也就是 0 比 1 的优先级高),在冲突中越容易获得网络访问权,因此在进行网络介质访问仲裁的同时已经开始了报文的传输[18]。例如,节点 A 发出的报文标识符为 01010001011,节点 B 发出的为 01000101011前三位相同,不存在冲突,而第四位节点 B 为 0,是显性位,将覆盖掉节点 A 的第四位。这样,B 节点就完全取得了介质访问权,A 节点转为接收方,以后介质上传输
图 3.3 SJA1000 内部结构框图其各部分门电路功能说明如下:(1)接口管理逻辑(IML)接口管理逻辑解释来自CPU的命令,控制CAN寄存器的寻址,向主控制器提供中断信息和状态信息。(2)发送缓冲器(TXB)发送缓冲器是CPU和位流处理器(BSP)之间的接口,能够存储发送到CAN网络上的完整信息,缓冲器长13个字节,由CPU写入、BSP读出。(3)接收缓冲器(RXB)接收缓冲器是验收滤波器和CPU之间的接口,用来储存从CAN总线上接收的信息。接收缓冲器(RXB,13个字节)作为接收FIFO(RXFIFO,长64字节)的一个窗口,可被CPU访问。CPU在此FIFO的支持下,可以在处理信息的时候接收其它信息。(4)验收滤波器(ACF)验收滤波器把它其中的数据和接收的识别码的内容相比较,以决定是否接收信
本文编号:2823234
【学位单位】:南京航空航天大学
【学位级别】:硕士
【学位年份】:2007
【中图分类】:TP336
【部分图文】:
帧起始 仲裁区域 控制区域 数据区域 CRC 区域 ACK 区域 帧结束图 2.2 数据帧结构(1)帧起始它标志数据帧或远程帧的起始,由一个单独的“显性”位组成。只在总线空闲时,才允许节点发送信号。所有节点必须同步于首先开始发送信息的节点的帧起始前沿。(2)仲裁区域仲裁区域包括识别符(ID)和远程发送请求位(RTR)。识别符(ID):识别符的长度为 11 位或 29 位。在本系统使用的 CAN2.0B 协议中,报文分为标准帧(11 位)和扩展帧(29 位)两种格式。当为标准帧时,这些位的发送顺序是从 ID-10 到 ID-0。最低位是 ID-0。最高的 7 位(ID-10 到 ID-4)必须不能全是“隐性”。扩展帧的报文结构与标准帧相似,不同之处是所使用的仲裁区域的长度,仲裁区域由已存在的 11bit 基本仲裁区域和 18bit 扩展仲裁区域组成。两种不同类型帧的仲裁区域比较如图 2.3 所示。
图 2.7 总线编码的数值表示2.6 CAN 总线仲裁方式由于 CAN 总线是一种多主型总线,总线上任一节点都有可能作为主节点向总线发送报文,因此就有可能出现几个节点同时向总线发送报文的情况。由于 CAN 总线并未定义节点地址,因此在这种情况下,CAN 总线基于“多主竞争总线仲裁”的原理,依靠报文的优先级进行取舍。报文的优先级体现在写入报文识别符(ID)区的二进制数值,该值不能被动态的改变。在同一系统中标识符定义是唯一的,不会出现两个节点发送具有相同标识符报文的情况。ID 中的值越小,其报文的优先级越高(也就是 0 比 1 的优先级高),在冲突中越容易获得网络访问权,因此在进行网络介质访问仲裁的同时已经开始了报文的传输[18]。例如,节点 A 发出的报文标识符为 01010001011,节点 B 发出的为 01000101011前三位相同,不存在冲突,而第四位节点 B 为 0,是显性位,将覆盖掉节点 A 的第四位。这样,B 节点就完全取得了介质访问权,A 节点转为接收方,以后介质上传输
图 3.3 SJA1000 内部结构框图其各部分门电路功能说明如下:(1)接口管理逻辑(IML)接口管理逻辑解释来自CPU的命令,控制CAN寄存器的寻址,向主控制器提供中断信息和状态信息。(2)发送缓冲器(TXB)发送缓冲器是CPU和位流处理器(BSP)之间的接口,能够存储发送到CAN网络上的完整信息,缓冲器长13个字节,由CPU写入、BSP读出。(3)接收缓冲器(RXB)接收缓冲器是验收滤波器和CPU之间的接口,用来储存从CAN总线上接收的信息。接收缓冲器(RXB,13个字节)作为接收FIFO(RXFIFO,长64字节)的一个窗口,可被CPU访问。CPU在此FIFO的支持下,可以在处理信息的时候接收其它信息。(4)验收滤波器(ACF)验收滤波器把它其中的数据和接收的识别码的内容相比较,以决定是否接收信
【引证文献】
相关期刊论文 前3条
1 苏晨;刘敬彪;章雪挺;;CAN总线在海洋数据监控系统中的设计与实现[J];电子器件;2011年03期
2 巩延庆;张冰;;可扩展节点的数据采集系统[J];信息技术;2011年03期
3 白云;石岩;;基于SPCE061A单片机的MGLS12864液晶显示模块的应用设计[J];现代电子技术;2012年13期
相关硕士学位论文 前10条
1 杨芬;冷弯型钢力能参数测试系统的研究[D];北方工业大学;2011年
2 田帅帅;基于CAN总线的测量系统通信网络的设计[D];中北大学;2011年
3 周宾;基于现场总线的多支点触发系统的设计与实现[D];南京航空航天大学;2010年
4 巩延庆;可扩展式通用数据采集系统的设计[D];江苏科技大学;2011年
5 徐波;基于PLC与CAN总线的隧道监控系统的设计与研究[D];武汉理工大学;2008年
6 韩耀振;基于CAN总线的气体报警系统的研究与实现[D];山东大学;2008年
7 王小艳;基于多种总线的测量综合控制器测试台的研究与实现[D];中北大学;2009年
8 白龙;CAN总线在车载测产系统中的应用与研究[D];东北农业大学;2009年
9 郭洪祥;基于DSP的油水相对渗透率测量的研究[D];中国石油大学;2009年
10 程何小;超级电容分布式参数采集系统的研制[D];哈尔滨工业大学;2009年
本文编号:2823234
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2823234.html