单总线测温模块工程设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1“单总线”智能测温模块电气信息工程学院测控技术实验室孟祥2003-7-272“单总线”智能测温模块技术要求:测温点数:1-800点;测温范围:-55~+125℃测温精度:±0.5℃测温电缆长度:≥450M;具备通信功能;自动识别传感器数量;意义:传统测温模式1.需要成百上千条信号线。2.模拟信号易损耗,影响系统精度,且传输距离较近。3.系统环节多,难于维护。4.价格昂贵。传统测温模式1.线缆少。2.减少了现场线缆,方便现场布线。3.数字信号在传输过程中没有精度的损失,系统精度可以保证。4.故障的环节少、便于维护。5.降低了系统成本,提高了可靠性。一、项目意义及技术要求3“单总线”智能测温模块硬件方案:51系列单片机为核心控制器;采用双CPU技术;4路温度并行读取技术;采用双端口RAM,CPLD;线缆接口采用隔离驱动;电源采用DC/DC变换;通信采用RS-485总线结构;二、测温模块技术方案4“单总线”智能测温模块模块部分采用C51编程,时序严格部分采用asm汇编语言编写。利于代码维护核移植。采用模块化编程,多人分工配合。软件分为:二、软件方案I/O驱动模块:完成对ds18x20的命令解码,并同时执行4根缆的命令发送、接收、ID号的读取、排序等工作。数据处理模块:完成读取数据的校验、存储。通讯模块:完成地址解码、命令解析、数据发送等工作。5“单总线”智能测温模块采用vc++\VB开发平台,实现测温模块驱动程序的编程,驱动程序的封装形式可以是VxD、WDM、DLL等类型,以方便用户的使用。可自行开发或委托工控组态软件公司开发,驱动程序应能挂接到通用组态软件上。二、软件方案-PC机软件6“单总线”智能测温模块三、硬件功能模块图7“单总线”智能测温模块三、软件功能关系图定时温度采集ID搜索参数存储数据处理模块数据交换命令区通信模块MODBUSRTU协议I/O驱动模块8“单总线”智能测温模块三、多点测温系统结构图企业内部网光缆传输双绞线RS-232CRS-232CCOM1COM2监控主机测温缆线长度可达300米可挂接128个BH9000模块隔离中继器RS-4851.2KmRS-232--RS-485光端机光端机RS-4851.2KmBH9003BH9003BH9003每根缆上可挂接最多200个传感器9“单总线”智能测温模块四、硬件设计1.CPU选型。2.外围电路,CPLD双端口RAM选择。3.驱动电路等。DS18xx特性,单总线协议。限斜率驱动接口。4.通信接口。RS-485总线ModBusRTU协议。5.PCB板设计。6.软件编程及系统调试。7.设计总结10“单总线”智能测温模块四、硬件设计-CPU选择1.CPU总线宽度,8、16、32位。2.MSC51系列、AVR系列、PIC系列、MC68K、MSP430系列等。3.MSC51系列的优势普及率高,价格便宜。外设和中断资源丰富,技术成熟,派生系列较多。开发工具便宜,易用。代码资源丰富,节省时间。性价比高,代码资源丰富,能满足设计需求。11“单总线”智能测温模块四、硬件设计-CPU选择51单片机:以8051为内核的MCU系列单片机在世界上产量最大,应用最广泛;MSP430单片机:超低功耗,被业界称为绿色MCU,内部有丰富的片内外围模块,典型的片上系统(SOC).16位的精简指令结构,功能相当强大;PIC单片机:运行速度快,低工作电压,低功耗,适用于用量大,档次低,价格敏感的产品.在办公自动化设备,消费电子产品,电讯通信,智能仪器仪表,汽车电子,金融电子,工业控制不同领域都有广泛的应用;AVR单片机:使用也很广泛,具有高速处理能力,一个时钟周期内可执行复杂的指令;12“单总线”智能测温模块四、硬件设计-CPU选择51系列单片机管脚封装图13“单总线”智能测温模块四、硬件设计-CPU选择51系列单片机管脚封装图IntelApBUILDERV2.2114“单总线”智能测温模块四、硬件设计-51增强型15“单总线”智能测温模块四、硬件设计-51增强型16“单总线”智能测温模块四、硬件设计-外围电路接口双端口RAM双CPU信息交换常用方式I/O连接,实现简单的信息交换。并行接口连接。串行口方式,采用UART、IIC、SPI等方式。共享RAM方式,可实现高密度的数据交换。1.专用双口RAM2.用户自行设计用于多CPU的数据交换。17“单总线”智能测温模块四、硬件设计-外围电路接口双端口RAMIDT713418“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.1DS18x20数字温度传感器特性DS18X20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度范围:-55℃~+125℃,可编程为9位~12位A/D转换精度;测量精度:±0.5℃;分辨率:0.0625℃;工作电源:远端供电和,采用寄生电源方式;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距离多点温度检测系统。19“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.2DS18x20数字温度传感器硬件接口顾名思义单总线只有一根数据线设备主机或从机通过一个漏极开路或三态端口连接至该数据线这样允许设备在不发送数据时释放数据总线以便总线被其它设备所使用单总线端口为漏极开路其内部等效电路如图所示。简单硬件接口20“单总线”智能测温模块图中参考晶振的脉冲信号送给计数器1,测量晶振的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,四、硬件设计-外围电路接口-线缆接口采用隔离驱动3.3DS18x20工作原理21“单总线”智能测温模块如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。四、硬件设计-外围电路接口-线缆接口采用隔离驱动3.3DS18x20工作原理22“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.3DS18x20内部功能框图23“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.4DS18x20时序分析-初始化24“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.4DS18x20时序分析-写时序25“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.5DS18x20时序分析-读时序26“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.6DS18x20驱动接口设计分析1-Wire网络的可靠性在很大程度上取决于主机与1-Wire从机器件之间所采用的通信驱动电路的性能。下面介绍的一种1-Wire主机端接口,采用精细的阻抗匹配和智能(软件控制)强上拉等方法,保证网络在轻载到重载范围内均能可靠工作,且通信距离可达500m。27“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.6DS18x20驱动接口设计分析网络驱动器由下拉部分(Q1,R1,C1,R5)和上拉部分(Q2,R2,C2,R6)组成。晶体管Q3与周围的元件(C4、R7)组成强上拉电路,可为诸如EEPROM、温度传感器等器件提供额外电源。任何时候,三个晶体管中最多只有一个处于导通状态;当1-Wire不进行通信(空闲状态)时,这三个晶体管都不导通。28“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.7DS18x20接口驱动波形该图显示了总线复位脉冲和在线应答脉冲的时序,但更重要的是它表明了摆率受控制的主机和摆率不受控制的从机发送信号的区别。主机产生的下降沿是规则的没有负尖峰或自激,从机器件产生的下降沿是不受控制的,我们可以看到它会在总线上引起振铃和负冲。29“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.7DS18x20接口驱动波形该图为“读1”(Read1)或“写1”(Write1)的时隙图。主机将总线拉低大约10μs,然后释放总线,表明了受控摆率的下降。30“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.7DS18x20接口驱动波形该图是“写0”(Write0)时隙图。主机将总线拉低大约60μs,然后在下一个时隙前释放总线大约10μs。31“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.7DS18x20接口驱动波形该图表示“读0”(Read0)时隙。主机将总线拉低大约10μs,然后释放总线。然而从机器件又通过将总线保持在低电平更长的时间而返回一个0位,从机器件的时基可以在22μs和60μs之间变化。主控器在20μs时对总线数据采样因此在本例中读到的是一位0。32“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.8DS18x20命令概述典型的1Wire通信流程每个器件都有一个唯一64位ID号,使得在同一总线的器件中可以选择出任意一个器件,一旦器件的序列号已知通过访问序列号任何器件都可被唯一地选出以用于通信。所有通信的第一步都需要总线控制器发出一个复位信号以使总线同步然后选择一个受控器件进行随后的通信,这可以通过选择所有的受控器件或者选择一个特定的受控器件,利用该器件的序列号进行选择或者通过对半检索法找到总线上的下一个受控器件来实现。一旦一个特定的器件被选中那么在下一次复位信号发出之前所有其它器件都被挂起而忽略随后的通信。33“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.8DS18x20命令序列典型的单总线命令序列如下:第一步初始化第二步ROM命令跟随需要交换的数据第三步功能命令跟随需要交换的数据每次访问单总线器件必须严格遵守这个命令序列,如果出现序列混乱,则单总线器件不会响应主机。但是这个准则对于搜索ROM命令和报警搜索命令例外,在执行两者中任何一条命令之后,主机不能执行其后的功能命令,必须返回至第一步。34“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.8DS18x20命令-ROM命令1.搜索ROM[F0h]2.读ROM[33h]仅适合于单节点3.匹配ROM[55h]3.跳越ROM[CCh]仅适合于单节点通过在发出跳越ROM命令后跟随转换温度命令[44h]就可以同时命令总线上所有的DS18B20开始转换温度这样大大节省了主机的时间。5.报警搜索[ECh]35“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.8DS18x20命令-功能命令36“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.8DS18x20命令-ID搜索命令1-Wire®器件都有唯一的64位注册码它存储在只读存储器(ROM)中在1-Wire网络中注册码用于1-Wire主机对从机器件进行逐一寻址。64位唯一的ROM注册码搜索算法采用的是二叉树型结构,搜索过程沿各分节点进行,直到找到器件的ROM码即叶子为止。后续的搜索操作沿着节点上的其它路径进行,按照同样的方式直到找到总线上的所有器件代码。37“单总线”智能测温模块四、硬件设计-驱动接口设计-线缆接口采用隔离驱动3.8DS18x20命令-ID搜索命令FIRST:操作是搜索1-Wire总线上的第一个从机器件。NEXT:操作是搜索1-Wire总线上的下一个从机器件。一般情况下此搜索操作是在FIRST操作之后或上一次NEXT操作之后进行,保持上次搜索后这些值的状态不变执行又一次搜索即可实现NEXT。

1 / 80
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功