




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
陕西理工学院毕业设计 智能仪表的设计及 CAN 总线接口技术研究 摘要摘要 对 CAN 总线接口技术进行了研究 设计出以 AT89S52 为控制核心 具有温度和湿度测量功能的智能仪 表 详细分析了 SJA1000 内置 CAN 控制器的工作原理 设计了 CAN 总线接口电路 在温湿度测量中 采用 SHT11 作 为温湿度传感器 实现了 0 120 范围内的高精度温度测量 实验表明 所开发的温湿度智能仪表性能稳定 工作可 靠 具有高精度 示值稳定性好等特点 关键词关键词 智能仪表 温湿度测量 CAN 总线 SJA1000 PCA82C250 Intelligent Instrument of Design and Can Bus Interface Technology of Research Abstract CAN Bus interface technology on a study designed to AT89S52 as the control center with the temperature and humidity measuring capabilities of smart meters Detailed analysis of the built in CAN controller SJA1000 working principle design a CAN bus interface circuit In temperature and humidity measurement as temperature and humidity sensors using SHT11 achieved 0 120 range precision temperature measurement Experimental results show that the developed intelligent instrument temperature and humidity stable performance reliable high accuracy excellent stability and Indication Keywords Intelligent Instrument Temperature and humidity measurement CAN Bus SJA1000 PCA82C250 陕西理工学院毕业设计 第 页 共 34 页 1 绪论 5 1 1 智能仪表的发展及其特点 5 1 2 CAN 总线特点及其在智能仪表中的应用现状 6 1 3 课题的提出及研究意义 6 2 现场总线控制系统 6 2 1 现场总线概述 6 2 2 现场总线系统的特点 7 2 2 1 现场总线系统的结构特点 7 2 2 2 现场总线系统的技术特点 7 2 3 现场总线的优点 7 3 CAN 总线 控制器局域网 介绍 8 3 1CAN 的基本概念 8 3 2 CAN 的层次结构 8 3 2 1 逻辑链路控制 LLC 子层 8 3 2 2 媒体访问控制 MAC 子层 9 3 2 3 物理层 10 3 3 CAN 总线的应用 10 4 系统方案设计 10 4 1 系统功能描述 10 4 2 方案论证 11 4 2 1 主控芯片部分选择 11 陕西理工学院毕业设计 第 i 页 共 34 页 4 2 2 传感器选择 11 5 基于 CAN 温湿度仪表分布式测量系统的硬件设计 12 5 1 单片机 AT89S52 简介 12 5 2 单片机应用知识 13 5 2 1 单片机中断知识 13 5 2 2 单片机的定时 计数器 13 5 3CAN 总线节点硬件电路及设计 14 5 3 1 CAN 总线控制器 SJA1000 介绍 14 5 3 2 CAN 总线收发器 PCA82C250 介绍 16 5 3 3 CAN 节点硬件电路 18 5 4 温湿度传感器电路设计 19 5 4 1 SHT11 的结构 19 5 4 2 内部命令与接口时序 20 5 4 3 温度和湿度值的计算 22 5 4 4 温湿度测量电路设计 23 5 5 显示模块 24 5 5 1 液晶显示模块结构特点 24 5 5 2 读 写操作时序 26 5 5 3 单片机与液晶模块电路设计 26 6 系统软件设计 27 6 1 软件总体构想 27 陕西理工学院毕业设计 第 ii 页 共 34 页 6 2 系统总体流程图 27 6 3 模块的划分与软件设计 28 6 3 1 温湿度采集模块的软件设计 28 6 3 2CAN 通信模块的软件设计 29 7 系统测试及检测设计 31 7 1 硬件电路的测试 32 7 2 软件测试 33 7 2 1 CAN 节点的自收发通信测试 33 7 2 2 CAN 节点网络的通信测试 34 7 3 温湿度精度测试 34 7 3 1 测量结果对比 34 7 3 2 误差原因分析 35 7 3 3 减少测量误差采取的措施 35 7 4 系统调试结果 35 8 结论 35 9 系统缺陷及建议 35 10 致谢 36 附录 A 38 附录 B 39 附录 C 40 陕西理工学院毕业设计 第 iii 页 共 34 页 附录 D 52 陕西理工学院毕业设计 第 0 页 共 46 页 1 绪论 仪器 仪表是物质世界进行测量与控制的基础手段和设备 任何一个工业生产过都需要一定的 检测技术和相应的仪表 以便于对生产过程进行测量 监视 控制和保护 因此 仪表在生产过程 中承担着非常重要的作用 现代仪器 仪表随着电子管的诞生而出现的电子仪表 智能仪表是一种 典型的微机 目前主要采用单片机 应用系统 它是计算机技术与仪表技术相结合的产物 它所具 有的软件功能意味着可将人的智能嵌入其中 无论在测量速度 精度 自动化程度还是性价比等方 面 都是传统仪器 仪表所不可比拟的 智能仪表已成为仪器 仪表的发展方向 1 1 智能仪表的发展及其特点智能仪表的发展及其特点 智能仪表是新一代的电子仪器 它是由传统仪表发展而来 但与传统仪表相比又有着较大的区 别 从原理上来看 它的发展主要经历了模拟式仪表 数字式仪表 智能式仪表三代 微处理器在智能仪表中的作用 可以归结为两大类 对测试过程的控制和测试数据的控制 与 传统仪器 仪表相比 智能仪表主要具有以下特点 1 操作自动化 仪表的整个测量过程如键盘扫描 量程选择 开关启动闭合 数据的采集 传输与处理以及显示打印等都用单片机或微控制器来控制操作 实现测量过程的全部自动化 2 具有自测功能 包括自动调零 自动故障与状态检验 自动校准 自诊断及量程自动转换 等 智能仪表能自动检测出故障的部位甚至故障的原因 这种自测试可以在仪器启动时运行 同时 也可在仪器工作中运行 极大地方便了仪器的维护 3 具有数据处理功能 这是智能仪表的主要优点之一 智能仪表由于采用了单片机或控制器 使得许多原来用硬件逻辑难以解决或根本无法解决的问题 现在可以用软件非常灵活地加以解决 4 具有友好的人机对话能力 智能仪表使用键盘代替传统仪器中的切换开关 操作人员只需 通过键盘输入命令 就能实现某种测量功能 与此同时 智能仪表还通过显示屏将仪器的运行情况 工作状态以及对测量数据的处理结果及时告诉操作人员 使仪表的操作更加方便直观 5 具有可程控操作能力 一般智能仪表都配有 RS232 RS485 或现场总线等标准的通信接口 可以很方便地与 PC 机和其他仪器一起组成用户所需要的多种功能的自动测量系统 来完成更复杂 的测试任务 1 2 CAN 总线特点及其在智能仪表中的应用现状总线特点及其在智能仪表中的应用现状 目前 采用各种现场总线技术 如 HART CAN PROFIBUS 等协议的网络化智能仪表已在美 国和欧洲等发达国家和地区发展迅速 并己有较多的应用范例 据 CiA 报道 2001 年欧洲市场销 售了 1 亿多个节点 国内的大学和一些公司也正致力于基于现场总线的系统开发 在汽车信号传输 电力监控 楼宇智能化 工业测控 安防等领域有着广泛的应用 其中 CAN 总线是最有发展潜 力的一种 被誉为自动化领域的计算机局域网 CAN Control Area Network 总线是德国 Bosch 公司为解决现代汽车中控制设备之间的数据交换问题而开发的一种串行数据通信协议 是一种有效 支持分布式控制或实时控制的串行通信网络 适用于工业控制设备和监控设备的互连 它的主要特 点有 1 CAN 总线可以分为多主从方式 网络上任意节点均可主动向其它节点发送信息 而不分主 从 因而通信方式灵活 2 CAN 协议遵循 ISO OSI 参考模型 采用了其中的物理层 数据链路层与应用层 3 网络节点可按系统实时性要求分为不同的优先级 采用非破坏性逐位仲裁技术 一旦发生 总线冲突 可以大大节省总线冲突仲裁时间 4 CAN 上的节点数实际可达 110 个 5 CAN 数据链路层采用短帧结构 每一帧为 8 个字节 易于纠错 6 CAN 每帧信息都有 CRC 检验及其他检错措施 保证了数据通信的可靠性 7 通讯介质可采用双绞线 同轴电缆或光纤 最高通信速率可达 1Mbps 传输距离 40m 1 3 课题的提出及研究意义课题的提出及研究意义 在工业控制系统特别是机电及液压控制系统中 经常需要对各种模拟量或数字量进行测量 如 陕西理工学院毕业设计 第 1 页 共 46 页 温度 湿度 转速 压力和流量等 以实现对整个系统的更好控制 同时 现代工业自动化系统发 展的趋势是使得现场仪表之间 现场仪表与控制室设备之间构成网络互连系统 实现全数字化 双 向 多变量的数字通信 即现场总线技术的应用是目前国际自动化领域的热点 因此本文主要研究 的内容就是以温度和湿度的测量为例 对工业控制系统中的模拟量和数字量的技术进行研究 并实 现测量结果显示功能 构成一个多点智能测量仪表 同时 结合现场总线技术 对智能仪表的 CAN 总线接口技术进行一定的研究 2 现场总线控制系统 2 1 现场总线概述现场总线概述 现场总线技术是电子 仪器仪表 计算机技术和网络技术的发展成果 是工业自动化事业发展 的需要 也是技术发展的必然 现场总线使得现场仪表之间 现场仪表和设别之间构成网络互连系 统 实现全数字化 双向 多变量数字通信 现场总线是应用在生产现场 在微机化测量控制设备之间实现双向串口多节点数字通信的系统 也被称为开放式 数字化 多点通信的底层控制网络 它在制造业 流程工业 交通 楼宇等方面 的自动化系统中具有广泛的应用前景 现场总线将专用微处理器置入传统的测量控制仪表 使它们各自都具有了数字计算和数字通信 的能力 采用简单的双绞线或光缆等作为总线 把多个测量控制仪表连接成的网络系统 并按公开 规范的通信协议 在位于现场的多个微机化测量控制设备之间以及现场仪表与远程监控计算机之间 实现数据传输与信息交换 形成各种适应实际需要的自动控制系统 简而言之 它是把单个分散的 测量控制设备变成网络节点 以现场总线为纽带 把它们连接成可以相互沟通信息 共同完成自控 任务的网络系统与控制系统 它给自动化领域带来的变化 正如众多分散的计算机被网络连接在一 起 使计算机的功能 作用发生的变化一样 现场总线则使自控系统与设备具有了通信能力 把它 们连接成网络系统 加入到信息网络的行列 现场总线控制系统既是一个开放通信网络 又是一种全分布控制系统 它作为智能设备的联系 纽带 把挂接在总线上 作为网络节点的智能设备连接成网络系统 并进一步构成自动化系统 实 现基本控制 补偿计算 参数修改 报警 显示 监控 优化及控管一体化的综合自动化功能 这 是一项以智能传感器 控制 计算机 数字通信 网络为主要内容的综合技术 2 2 现场总线系统的特点现场总线系统的特点 2 2 1 现场总线系统的结构特点现场总线系统的结构特点 现场总线系统打破了传统控制系统的控制形式 传统模拟控制系统采用一对一的设备连线 控 制回路分别进行连接 位于现场的测量变送器与位于控制室的控制器之间 控制器与位于现场的执 行器 开关 马达之间均为一对一的物理连接 现场总线系统由于采用了智能现场设备 能够把原先 DCS Distributed Control System 系统 中处于控制室的控制模块 各输入输出模块置入现场设备 加上现场设备具有通信能力 现场的测 量变送仪表可以与阀门等执行机构直接传送信号 因而控制系统功能能够不依赖控制室的计算机或 控制仪表 直接在现场完成 实现了彻底的分散控制 由于采用数字信号替代模拟信号 因而可实现一对电线上可传输多个信号 同时又为多个设备 提供电源 现场设备以外不在需要模拟 数字 数字 模拟转换器件 这样就为简化系统结构 节约 硬件设别 节约连接电缆与各种安装 维护费用创造了条件 2 2 2 现场总线系统的技术特点现场总线系统的技术特点 现场总线系统在技术上具有以下特点 1 系统的开放性 2 互可操作性与互用性 互可操作性 是指互连设备间 系统间的信息传送与沟通 互用意 味着不同生产厂家的性能类似的设备可实现相互替换 3 现场设备的智能化与功能自治性 它将传感测量 补偿计算 工程量处理与控制等功能分 散到现场设备中完成 仅靠现场设备即可完成自动控制的基本功能 并可随时诊断设备的运行状态 陕西理工学院毕业设计 第 2 页 共 46 页 4 系统结构的高度分散性 现场总线已构成一种新的全分散性控制系统的结构体系 从根本 上改变了现有 DCS 集中于分散相结合的集散控制系统体系 简化了系统结构 提高了可靠性 5 对现场环境的适应性 工作在生产现场前端 作为工厂网络底层的现场总线 是专为现场 环境设计的 可支持双绞线 同轴电缆 光缆 射频 红外线 电力线等 具有较强的抗干扰能力 能采用两线实现供电与通信 并可满足本质安全防爆要求等 2 3 现场总线的优点现场总线的优点 1 节省硬件数量与投资 由于现场总线系统中分散在现场的智能设备能直接执行多种传感控 制报警和计算功能 因而可以减少变送器的数量 不在需要单独的调节器 计算单元等 也不需要 DCS 系统的信号调理 转换 隔离等功能单元及其复杂接线 还可以用工控 PC 机作为操作站 从 而 一大笔硬件投资 并可减少控制室的占地面积 2 节省安装费用 现场总线系统的接线十分简单 一对双绞线或一条电缆上可挂接多个设备 因而电缆 端子 槽盒 桥架的用量大大减少 连接设计与接头校对的工作量也大大减少 当需要 增加现场设备时 无需增设新的电缆 可就近连接在原有电缆上 既节省了投资 也减少了设计 安装的工作量 3 节省维护开销 由于现场控制设备具有自诊断与简单故障处理的能力 并通过数字通讯将 相关的诊断维护信息送往控制室 用户可以查询所有设备的运行 诊断维护信息 以便早期分析故 障原因并快速排除 缩短了维护停工时间 同时由于系统结构简化 连线简单而减少了维护工作量 4 提高了系统的准确性与可靠性 由于现场总线设备的智能化 数字化 与模拟信号相比 他从根本上提高了测量与控制的精确度 减少了传送误差 同时 由于系统结构简化 设别之间连 线少 现场仪表功能加强 减少了信号的往返传输 提高了系统的工作可靠性 3 CAN 总线 控制器局域网 介绍 3 1CAN 的基本概念的基本概念 CAN 总线即控制器局域网 Control Area Network 最早由德国 Bosch 公司提出 目前已成为 ISO1898 和 ISO11519 国际际标难现场总线 13 CAN 总线是一种串行数据通信总线 通信介质可采 用双绞线 同轴电缆或光纤 CAN 通信控制器集成了 CAN 协议的物理层和数据链路层功能 一个由 CAN 总线构成的单一网络中 理论上可以挂接无数个节点 实际应用中 节点数目受 网络硬件的电器特性所限制 CAN 可提供高达 1Mbit s 的数据传输速率 这使实时控制变得非常容 易 另外 硬件的错误检定特性也增强了 CAN 的抗电磁干扰能力 CAN 具有十分优越的特点 使 人们乐于选择 这些特性包括 1 低成本 2 相应器件的开发商多 可选择的范围大 3 极高的总线利用率 4 较远的数据传输距离 长达 10Km 5 高速的数据传输速率 高达 1Mbit s 6 可根据报文的 ID 决定接收或屏蔽该报文 7 可靠的错误处理和验错机制 8 发送的信息遭破坏后 可自动重发 9 节点在错误严重的情况下具有自动退出总线的功能 在 CAN 网中 报文不包含源地址或目标地址 仅用标识符来指示功能信息 优先级信息 CAN 有两种协议 CAN2 0A CAN 20B CAN 20A 是标准帧格式 标识符长度是 11 位 CAN 20B 即有标准帧格式 也有扩展帧格式 扩展帧格式 CAN 标识符长度可达 29 位 CAN 中的总线数 值为两种互补逻辑数值之一 显性 或 隐性 显性 Dominant bit 数值表示逻辑 0 而 隐性 陕西理工学院毕业设计 第 3 页 共 46 页 Recessive bit 表示逻辑 l 显性 和 隐性 位同时发送时 最后总线数值将为 显性 在 隐性 状态下 CAN H 和 CAN L 被固定为平均电压电平 2 5V 附近 差分电压似为 0 在 显性 状态下以大于最小阀值的差分电压表示 差分电压达到 2V 显性位和隐性位同时发送时 总 线上的数值为显性 CAN 网络系统内两个任意节点之间的最大传输距离与其位速率有关 位速率 越大 传输距离越近 3 2 CAN 的层次结构的层次结构 CAN 遵从 051 模型 按照 OSI 基准模型 CAN 结构划分两层 数据链路层和物理层 按 IEEE802 2 和 802 3 标准 数据链路层划分为逻辑链路控制 LLC Logic Link control 和媒体访问控 MAC Medium Access Control 物理层划分为物理信令 PLS Physical Signalling 物理媒体附属装 置 PMA Physical Medium Attachment 和媒体相关接口 MDI Medium Dependent Interface MAC 子层运行借助称之为 故障界定实体 FCE 的管理实体进行监控 故障界定是使判别短暂 干扰和永久性故障成为可能的一种自检机制 物理层可借助检测和管理物理媒体故障实体进行监控 例如总线短路或中断 总线故障管理 LLC 和 MAC 两个同等的协议实体通过交换帧或协议数据单元 PDU Protocol Data Unit 相互通 信 3 2 1 逻辑链路控制逻辑链路控制 LLC 子层子层 1 LLC 子层功能 LLC 子层提供的功能包括 帧接收滤波 超载通告和恢复管理 帧接收滤波 在 LLC 子层上开始的帧跃变是独立的 其自身操作与先前的帧跃变无关 帧内 容由标识符命名 标识符并不能指明帧的目的地 但描述数据的含义 每个接收器通过帧滤波确定 此帧与其是否有关 超载通告 如果接收器内部条件要求延迟下一个 LLC 数据帧或 LLC 远程帧 则通过 LLC 子 层开始发送超载帧 最多可产生两个超载帧 以延迟下一个数据帧或远程帧 恢复管理 发送期间 对于丢失仲裁或被错误干扰的的帧 LLC 子层具有自重发送功能 在 发送成功完成前 帧发送服务不被用户认可 2 LLC 帧结构 LLC 帧是等同 LLC 实体 LPDU 之间进行交换的数据单元 以下分别描述 LLC 数据帧和远程帧 的结构 LLC 数据帧 LLC 数据帧由三个位场 既标识符场 数据长度码 DLC Data Length code 场和 LLC 数据场 LLC 远程帧 LLC 远程帧由两个位场 标识符场和 DLC 场 组成 LLC 远程帧标识符格式与 LLC 数据帧格式 相同 只是不存在数据场 DLC 的数值是独立的 此数据为对应数据帧的数据长度码 3 2 2 媒体访问控制媒体访问控制 MAC 子层子层 MAC 子层功能由 IEEE802 3 中规定的功能模型描述 1 MAC 帧结构 CAN 系统中 数据在结点间发送和接收以四种不同类型的帧出现和控制 其中 数据帧将数据 由发送器传送至接收器 远程帧由节点发送 以请求发送具有相同标识符的数据帧 出错帧可由任何 节点发送 以检测总线错误 而超载帧用于提供先前和后续数据帧或远程帧之间的附加延时 另外 数据帧和远程帧以帧间空间隔同先前帧隔开 2 MAC 帧编码和发送 接收 帧起始 仲裁场 控制场 数据场和 CRC 序列帧段均以位填充方法进行编码 当发送器在发 送位流中检测到 5 个数值相同的连续位 包括填充位 时 它在实际发送位流中 自动插入一个补码 位 数据帧或远程帧的其余位场 CRC 界定符 ACK 场和帧结束 为固定形式 不进行位填充 错 误帧和超载帧也为固定格式 同样不使用位填充方法进行编码 帧中的位流按照非归零 NRZ No Return to zero 方法编码 这就意味着一个完整位其位电平要么是 显性 要么是 隐性 一帧应由 陕西理工学院毕业设计 第 4 页 共 46 页 其 SOF 场开始逐个位场进行发送 在一场内应首先发送最高位 对于发送器和接收器一帧的有效时 点是不同的 对于发送器 若在帧结束完成前不存在错误 则该帧为有效 若一帧被破坏 则进行 恢复处理 对于接收器 若在帧结束最后一位前不存在错误 则该帧为有效 3 媒体访问和仲裁 当检测到间歇场未被 显性 位中断后 认为总线被所有节点释放 总线一旦释放 错误一活动 节点可以访问总线 总线一旦释放 接收当前或先前帧的 错误一认可 节点可以访问总线 一旦完 成暂停的发送 并且其间没有其它节点开始发送 发送当前帧或已发送完先前帧的 错误一认可 节 点可以访问总线 当允许节点访问总线时 MAC 数据帧和 MAC 远程帧可以起始 MAC 错误帧和 MAC 超载帧如上述规定被发送 发送其间 发送数据帧或远程帧的每个节点均为总显主站 当许 多节点一起开始发送时 此时只有发送具有最高优先权帧的节点变为总线主站 这种解决总线访问 冲突的机理是基于竞争的仲裁 仲裁期间 每个发送起将发送位电平同总线上监测到的电平进行比 较 若相等 则节点可以继续发送 当送出一个 隐性 电平 而监测到的为 显性 电平时 表明节 点丢失仲裁 并且不应再送更多位 当送出 显性 电平 而监测到 隐性 电平时 表明节点检测出 位错误 基于竞争的仲裁依靠标识符和紧随其后的 RTR 位完成 具有不同标识符的两帧中 优先 权被标注于帧中 较高优先权的标识符具有较低的二进制数值 若具有相同标识符的数据帧和远程 帧同时被初始化 数据帧较之远程帧具有较高优先权 它通过按照 RTR 位数值标注达到 4 错误检测 MAC 子层具有下列错误检测功能 监测 填充规则校验 帧校验 15 位循环冗余码校验和应答 校验 错误类型 a 位错误 b 填充错误 c CRC 错误 d 形式错误 e 应答错误 在发送器 ACK 隙期间未检测到 显性 位时 则检测到一个应答错误 当检测到以上这些错误 之一 LLC 子层被告之 并且 MAC 子层启动发送错误标志 当任何节点检测到位错误 填充错 误 形式错误或应答错误时 由各自节点在下一位启动发送错误标志 当检测到 CRC 错误时 错 误帧在仅随 ACK 界定符后的那位启始发送 除非另一个错误条件的错误帧已经准备好启动 错误界定规则 网络中任何一个节点 根据其错误计数器数值 可能处于下列三种状态之一 a 错误一激活 节点 一个 错误一激活 节点可以正常参与总线通信 并在检测到错误时 发 出一个活动错误标志 活动错误标志由 6 个连续显性位组成 并且遵守位填充规则和在规定帧中出 现的所有固定格式 b 错误一认可 节点 一个 错误一认可 节点不应发送活动错误标志 它参与总线通信 但在检 测到错误时 发送一个认可错误标志 认可错误标志由 6 个连续的隐性位组成 发送后 错误一认 可 节点在开始进一步发送前将等待一段附加时间 c 总线脱离 节点 当一个节点由于请求故障界定实体而对总线处于关闭状态时 其处于 总线 脱离 状态 在 总线脱离 状态下节点既不发送 也不接收任何帧 只有应用户请求 节点才能解 脱 总线脱离 状态 3 2 3 物理层物理层 物理层是将 ECU 连接至总线的电路实现 ECU 的总数将受限于总线上的电气负载 CAN 的物 理层划分为几部分 物理信令子层 PMA 子层 MDI 子层物理信令实现与位表示 定时和同步相关 的功能 PMA 实现总线发送 接收的功能电路并提供总线故障检测方法 MDI 实现物理媒体和 MAU 之间机械和电器接口 3 3 CAN 总线的应用总线的应用 陕西理工学院毕业设计 第 5 页 共 46 页 CAN 的第一层物理层负责物理信号传输 译码 位时序和位同步等功能 第二层数据链路层 负责像总线仲裁 信息分段以及数据安全 数据确认 错误检测 信号传输和错误控制等功能 CAN 标准没有规定应用层 实际上 即使在执行一些非常简单的基于 CAN 的分布式系统时 除了基本的二层服务以外 还要求或希望有更多的功能 如发送长于 8 字节的数据块 响应或确定 数据传送 标识符分配 网络启动或监控节点 由于这些附加的功能直接支持应用进程 所以它可 以被认作 应用层 本文所介绍的基于 CAN 总线的温湿度智能仪表系统就是结合项目实际对 CAN 应用层的开发 CAN 总线的第一层和第二层协议 即物理层和数据链路层协议一般都被封装在具体的芯片中 即 集成 CAN 总线控制器 集成 CAN 总线控制器按是否和微控制器结合分为两类 一种是独立的 CAN 总线控制器 如 Intel 82526 82527 Philips 的 82C200 SJAI1000 NEC 的 72005 Simens 的 8lC90 91 等 一种是和微控制器结合的芯片 如 Philips 的 8XC592 8XCE595 P87C591 Microchip 的 PIC18F8680 6680 和 PIC18F8585 6585 Motorola 的 68HC05X4 68HC05X16 等 负责集成 CAN 总线控制器和物理传输线路之间的接口的器件是 CAN 总线收发器 该器件对 总线提供差动发送能力 CAN 总线收发器有 Philips 的 PCA82C250 PCA82C251 高速的有 TJA1040 1041 1050 1054 Microchip 的 MCP2551 等 4 系统方案设计 4 1 系统功能描述系统功能描述 无论是工农业生产中 还是日常生活中 对温 湿度的检测都是必不可少的 对于温 湿度的 检测通常是采用热敏电阻在通过 A D 模 数 转换得到数字信号 但由于信号的采集对整个系统 的影响很大 如果采样精度不高 会使这个系统准确性下降 而本系统将采用新一代的技术实现此 项任务 本系统可分为多个 CAN 总线发送节点和 CAN 总线接收节点 发送节点采集温湿度信息 通 过 CAN 总线将数据信息传到接收节点 操作者在现场环境选择不同测试点 采集温湿度信号 通 过 CAN 总线将接收到的温湿度数据经过处理在手持终端的显示屏上显示 也可将接收节点将总线 上的数据通过串口传入 PC 机进行更进一步的分析处理 4 2 方案论证方案论证 4 2 1 主控芯片部分选择主控芯片部分选择 方案一 采用专用的内嵌 CAN 控制器的处理器芯片 1 P87C591 是一款内嵌 CAN2 0B 的微处理器芯片 该芯片是 Philips 公司生产的全静态 80C51 中 央处理单元的单片机 可提供 OTP ROM 和无 ROM 型 带 6 路模拟输入的 10 为 ADC 可选择 快速 8 位 ADC 带两个 8 位分辨率的脉宽调制输出 PWM 内含 CAN2 0B 控制器 增强型 PeliCAN 内核 取自 SJA1000 独立 CAN2 0B 控制器 64B 接收 FIFO 13B 发送缓冲区 该单片 功能强大 硬件设计电路简单 完全满足本设计 方案二 采用单片机和独立的 CAN 控制器构成本系统 本方案采用常用的 51 系列单片机 及由 SJA1000 CAN 控制器和 P82C250 CAN 总线接口驱动 芯片构成单个 CAN 节点 SJA1000 是一种独立的 CAN 控制器 是 Philips 半导体公司 PCA82C200 控制器 BasicCAN 的替代品 它增加了一种新的工作模式 PeliCAN 该模式支持很多新特性 的 CAN 2 0B 协议 它内部固化有 CANBUS 协议 能构独立执行 CAN 总线协议 P82C250 是 CAN 控制器与物理介质之间的接口 可驱动 110 个同样采用 P82C250 作为总线接口的节点 该方 案成本低 完全满足本设计要求 综合比较方案一与方案二 方案一虽然满足具有简单的硬件结构 但其开发周期较长 成本较 高 而且相关学习资料较少 常用编程器无法对其进行程序烧写 而方案二为较为常用 有很多资 料可供查阅 技术更成熟 因此我们选择方案二来作为本设计的控制核心 4 2 2 传感器选择传感器选择 陕西理工学院毕业设计 第 6 页 共 46 页 方案一 采用温湿度分立的传感器 可以采用 DALLAS 最新单线数字温度传感器 DS18B20 DS18B20 支持 一线总线 接口 测量 温度范围为 55oC 125oC 在 10oC 85oC 范围内 精度为 0 5oC 具有耐磨耐碰 体积小 使 用方便 封装形式多样 适用于各种狭小空间设备数字测温和控制领域 采用 HS1100 HS1101 湿度传感器 3 HS1100 HS1101 电容传感器 在电路构成中等效于一个 电容器件 其电容值随着相对湿度的改变而改变 将其接入一个类似 555 电路的非稳态多谐振荡器 就可以得到电容值和输出频率的线性关系 相对湿度在 1 100 RH 范围内 电容量由 16pF 变到 200pF 其误差不大于 2 RH 响应时间小于 5S 温度系数为 0 04pF oC 是一种非常经典的数字 式相对湿度检测解决方案 方案二 采用智能一体化温湿度传感器 5 采用内部温湿度一体传感器 SHT10 11 SHT10 11 是瑞士 Sensirion 公司生产的具有双线串行总 线接口的单片全校准数字式相对湿度和温度传感器 该传感器采用独特的 CMOSens TM 技术 具 有数字式输出 免调试 免标定 免外围电路及全互换的特点 内部有自动补偿功能 测得的温湿 度相互影响较小 综合比较方案一与方案二 方案一虽然满足精度及测量湿度范围的要求 但其只限于一定范围 内使用时具有良好的线性 湿度测量一个物理量需要用到两个芯片 增加电路的复杂性 由于方案 一是温度和湿度相互独立的元件 它们在测量时会有相互影响 而方案二硬件连接简单无需 A D 转换 内部含有温度补偿设计 因此 我们选择方案二来作为本设计的传感器 根据以上分析 为了使设计的成本低 抗干扰强 系统动态性能与稳态性能好 本系统的设计 方案主控部分采用 51 单片机和 CAN 总线控制器 SJA1000 构成 传感器部分采用智能一体化温湿 度传感器 SHT11 系统总体结构框图如图 4 1 所示 系统主要包括温 湿度信息采集 单个 CAN 总线节点及数 据处理显示 系统的某个发送节点通过传感器将温 湿度信息采集到单片机内 然后在通过 CAN 控制器 SJA1000 按照一定的协议和检错机制构成帧 通过总线发送出去 系统的接收节点通过中断接收数 据 有数据需要接受时 CAN 控制器 SJA1000 硬件产生中断 同时 CAN 控制器会对接收的帧信息 进行错误检测 判断是否有误码信息 如果接收的数据有溢出或错误 CAN 控制器会置位 CAN 总 线控制器的状态寄存器的相应位 单片机会对该 CAN 节点软复位 如果接收到的数据没有错误 通过单片机提取出数据位 计算出温 湿度值 并显示在液晶显示屏上 由于 CAN 总线网络上节 点不分主从 所以系统的所有节点都可以作为发送节点或接收节点 图 4 1 系统框图 5 基于 CAN 温湿度仪表分布式测量系统的硬件设计 本课题的目的是设计多个基于 CAN 总线的温湿度测量节点 以便构成多点温湿度测量网络系 统 核心的问题是对环境温湿度参数的采集 计算和反馈以及各个 CAN 节点的数据的传递 由于 AT89S52 温湿度模块 SHT11 显示模块 LCD1602 SJA1000 驱动保 护电路 82C25 0 CANH CANL 陕西理工学院毕业设计 第 7 页 共 46 页 系统中使用了传感器 而且还要实现各节点远距离通信 因此对核心控制系统的选择就有了一些特 殊的要求 现今在信息科学和工业控制领域 技术发展日新月异 中央处理芯片的种类繁多 对本项目来 说 考虑到硬件电路的设计简单可靠 成本上也必须有所兼顾 在这样的前提下 选用美国 ATMEL 公司生产的 AT89S52 单片机 不失为一个性价比较高的选择 首先 该单片机推向市场已久 是一款非常成熟的产品 各种相关的应用资料比较丰富 许多 实际问题的解决案例都是控制系统领域的经典 其次 外围可以与之搭配的芯片很丰富 由于产品 推出的年代较早 因此集成度一般 要完成空气监测这样一个大的课题 光依靠一片单片机是不可 能的 好在诸如串行通讯 CAN 总线通讯等应用都有成熟的 可靠性极高的芯片与之搭配 经过 资源分配 证明了这样的组合完全能够胜任温湿度测量和各 CAN 节点通信的任务 最后 由于传 感器的成本较高 因此必须在其他地方考虑到成本上的精减 这样的一片单片机 外加周围必要的 器件组合而成的单片机小系统 成本上仍旧非常具有竞争力 而且功能和稳定性上也能到达要求 真正是做到物尽其用 选定了核心控制方案 以下对所使用的单片机及一些相关的外围器件做适当的介绍 5 1 单片机单片机 AT89S52 简介简介 AT89S52 是美国 ATMEL 公司生产的低电压 高性能 CMOS 8 位单片机 片内含 8k bytes 图 5 1 AT89S52 引脚图 的可反复擦写的只读程序存储器和 256 bytes 的随机存取数据存储器 器件采用 ATMEL 公司的高 密度 非易失性存储技术生产 与标准 MCS 51 指令系统及 8052 产品引脚兼容 适合于许多较为 复杂控制应用场合 10 其引脚图见图 5 1 所示 5 2 单片机应用知识单片机应用知识 本系统主控部分由单片机 AT89S52 来实现 主要涉及的单片机单片机中断操作 定时 计数器 的使用等知识 5 2 1 单片机中断知识单片机中断知识 单片机中断是指 CPU 暂时停止当前程序执行转而为其他程序服务 并在中断服务完成后自动 返回原程序执行的过程 6 中断可以提高 CPU 的工作效率 使 CPU 可以通过分时操作启动多个外 设同时工作 并能对他们进行统一的管理 中断可以提高实时数据的处理实效 及时发现并处理报 警和故障信息 提高产品的质量和系统的安全性 对系统做出应急处理侧 AT89S52 的中断系统包括六个中断源 它们的符号 名称及产生的条件分别解释如下 1 INT0 外部中断 0 由 P3 2 口输入 低电平或下降沿引起 2 INT1 外部中断 1 由 P3 3 口输入 低电平或下降沿引起 3 T0 定时器 计数器 0 中断 由 T0 计数器计满回零引起 4 T1 定时器 计数器 1 中断 由 T1 计数器计满回零引起 5 T2 定时器 计数器 2 中断 由 T2 计数器计满回零引起 6 TI RI 串行口中断 串行端口完成一帧字符发送 接收引起 陕西理工学院毕业设计 第 8 页 共 46 页 以上 6 个中断源中 T2 是 52 单片机特有的 它们的默认的中断级别如表 5 1 所示 表 5 1 AT89S52 单片机中断级别 中断源默认中断级别序号 C 语言用 入口地址 INT0 外部中断 0最高00003H T0 定时器 计数器 0 中断第 21000BH INT1 外部中断 1第 320013H T1 定时器 计数器 1 中断第 43001BH TI RI 串行口中断第 540023H T2 定时器 计数器 2 中断最低5002BH 每一个中断源都对应一个中断请求标志位 他们设置在特殊功能寄存器 TCON 和 SCON 中 当这些中断源请求中断时 相应的标志分别由 TCON 和 SCON 中的相应位来锁存 对中断源的开 放或屏蔽是由中断允许寄存器 IE 控制的 5 2 2 单片机的定时单片机的定时 计数器计数器 AT89S52 单片机内部有三个 16 位的可编程的定时 计数器 即定时器 T0 定时器 T1 和定时器 T2 它们既有定时功能 又有计数功能 均是二进制加法计数器 当计数器计满回零时能自动产生 溢出中断请求 表示定时时间已到或计数己终止 三个定时器 计数器均可编程设定为定时模式和 计数模式两种 在这两种模式下又均可设定四种工作方式 其控制和状态均在相应的特殊功能寄存 器中 通过对控制寄存器的编程 就可方便地选择适当的工作方式 定时模式下的定时时间和计数 模式下的计数均可通过程序设定 通过软件写入 TMOD 字节地址为 89H 和 TCON 字节地址为 88H 两个 8 位寄存器来设置定时 计数器的操作模式和控制功能 由于本系统只用到定时器 T1 和 T0 这里只介绍 M1 M0 模式控制位的功能 1 工作模式寄存器 TMOD 的位定义如下表 5 2 所示 表 5 2 工作模式寄存器 TMOD 的位定义 定时器 T1定时器 T0 D7D6D5D4D3D2D1D0 GA T C TM1M0GA T C TM1M0 由表 5 2 可知 TMOD 的高 4 位用于设置定时器 1 低四位用于设置定时器 0 对应 4 位的含 义如下 GATE 门控制位 GATE 0 定时器 计数器启动与停止仅受 TCON 寄存器中 TRX X 0 1 来控制 GATE 1 定时器 计数器启动与停止由 TCON 寄存器中 TRX X 0 1 和外部中断引脚 INT0 或 INT1 上的电平状态来共同控制 C T 定时器模式和计数器模式选择位 C T 1 为计数模式 C T 0 为定时器模式 M1 M0 工作模式选择位 控制定时器 T1 和定时器 T0 的四种工作模式如下表 5 3 所示 表 5 3 四种工作模式 M1M0工作模式功能描述 00模式 013 位计数器 01模式 116 位计数器 10模式 2自动再装入 8 位计数器 11模式 3定时器 0 分成两个 8 位计数器 定时器 1 停止 计数 2 控制寄存器 TCON 的位定义和功能如下表 5 4 所示 表 5 4 控制寄存器 TCON 的位定义和功能 8FH8EH8DH8CH8BH8AH89H88H 陕西理工学院毕业设计 第 9 页 共 46 页 TF1TR1TF0TR0IE1IT1IE0IE1 TCON 各位的含义如下 TF1 T1 溢出标志位 当 T1 溢出时 由硬件自动使中断触发器 TF1 置 1 并向 CPU 申请中断 TF0 T0 溢出标志位 其功能情况同 TF1 TR1 T1 运行控制位 可通过软件置 1 或清 0 来启动或关闭 T1 TR0 T0 运行控制位 其功能操作情况同 TR1 IE1 外部中断 1 的中断请求标志 IT1 外部中断 1 的中断触发方式选择位 IT1 0 为电平触发方式 引脚 INT1 上低电平有效 IT1 1 为跳变沿触发方式 引脚 INT1 上的电平从高到低的负跳变有效 IE0 外部中断 0 的中断请求标志 IT0 外部中断 0 的中断触发方式选择位 其功能和操作方法同 IT1 5 3CAN 总线节点硬件电路及设计总线节点硬件电路及设计 5 3 1 CAN 总线控制器总线控制器 SJA1000 介绍介绍 1 性能特点 5 SJA1000 是一种独立的 CAN 控制器 用于移动目标和一般工业环境中的区域网络控制 CAN 总 线节点 它 PHILIPS 半导体公司 PCA82C200 CAN 控制器 BasicCAN 的替代产品 而且它增加了一 种新的工作模式 PeliCAN 这种模式支持具有很多新特性的 CAN2 0B 协议 它具有完成 CAN 总线 通信协议所要求的全部必要特性 可以完成物理层和数据链路层所要求的所有功能 例如总线的定 时与同步 总线的仲裁 CRC 与其它填充位的插入等 均由 SJA1000 自动完成 无需微处理器的 干预 因此设计只需考虑 SJA1000 的初始化和应用层的设计 在 CAN 总线界定的应用层由单片机 提供时 SJA1000 为其提供简便易行的 CAN 总线接口 其引脚如如图 5 2 所示 SJA1000 独立的 CAN 控制器具有 Basic CAN 模式和 Peli CAN 两种工作模式 两种模式可以通 过软件置位相应的寄存器位来选择 Basic CAN 模式是上电后默认的操作模式 和 PCA82C200 兼 容 能够传输标准帧格式的报文 因此 PCA82C200 开发的已有硬件和软件可以直接在 SJA1000 上使用 图 5 2 SJA1000 引脚图 DIP28 而不用作任何修改 Peli CAN 模式是新的操作模式 它能够处理所有 CAN2 0B 规范的帧类型 而 且它还具有一些支持错误分析的增强功能 使 SJA1000 能应用于更宽的领域 SJA1000 的基本特性如下 和 PCA82C200 独立 CAN 控制器引脚兼容 陕西理工学院毕业设计 第 10 页 共 46 页 和 PCA82C200 独立 CAN 控制器电气兼容 PCA82C200 模式即默认的 BasicCAN 模式 扩展的接收缓冲器 64 字节先进先出 FIFO 和 CAN2 0B 协议兼容 PCA82C200 兼容模式中的无源扩展帧 同时支持 11 位和 29 位识别码 位速率可达 1Mbits s PeliCAN 模式扩展功能 a 可读 写访问的错误计数器 b 可编程的错误报警限制 c 最近一次错误代码寄存器 d 对每一个 CAN 总线错误的中断 e 具体控制位控制的仲裁丢失中断 f 单次发送无重发 g 只听模式无确认无活动的出错标志 h 支持热插拔软件位速率检测 i 验收滤波器扩展 4 字节代码 4 字节屏蔽 j 自身信息接收自接收请求 24MHz 时钟频率 对不同微处理器的接口 可编程的 CAN 输出驱动器配置 考虑到本系统的数据传输量 本系统采用 Basic CAN 模式 2 SJA1000 CAN 控制器的结构 SJA1000 CAN 控制器由以下几部分构成 接口管理逻辑 IML 接收来自微处理器的命令 分配控制信息缓冲器 发送和接收缓 冲器 并为微控制器提供中断和状态信息 发送缓冲器 TXB 接收缓冲器 0 和 1 RXB RXFIFO 验收过滤器 ACF 位处理器 BSP 位定时逻辑 BTL 出错管理逻辑 EML 其结构图如图 5 3 所示 陕西理工学院毕业设计 第 11 页 共 46 页 图 5 3 SJA1000 结构框图 根据 CAN 规范 CAN 核心模块控制 CAN 帧的发送和接收 接收管理逻辑负责连接外部主控制器 该控制器可以是为控制器或其他器件 经过 SJA1000 复 用的地址 数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉安会计从业考试培训及答案解析
- 基于核心素养的小学英语大单元教学与教学评一体化融合研究
- 初中化学核心能力提升训练题
- 物流仓储自动化设备应用指南
- 小升初语文阅读理解专项训练试卷
- 2025年怒江州州级事业单位选聘工作人员(21人)笔试备考试题及答案解析
- 2025内蒙古事业单位招聘10710人笔试备考试题及答案解析
- 2026上海建工集团校园招聘笔试备考试题及答案解析
- 2025年井冈山迎宾馆管理有限公司面向社会公开招聘工作人员笔试备考试题及答案解析
- 广东省建院2026届校园招聘笔试备考题库及答案解析
- 出海作业安全培训课件
- 9.2 排鱼求数 课件 北京版数学三年级上册
- 监理现场管理知识培训课件
- GJB3206B-2022技术状态管理
- 2025至2030年中国柔性电路板行业市场深度评估及投资战略规划报告
- 2025秋人教版(2024)二年级上册数学教学计划
- 桥梁河床断面测量课件
- 中药质量检测技术
- 普外科肛肠科科室介绍
- 事业单位工勤人员技师考试职业道德复习试题及答案
- 2025年三级安全教育试题及答案
评论
0/150
提交评论