




已阅读5页,还剩66页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
辽宁工程技术大学毕业设计(论文) 1 0 前言 当今的社会里,石油是是不可却很少的能源之一,随着国民经济的迅速发 展,对地下开采石油量的需求不断增长,现代钻井技术有了新的发展,一个好 的测井深系统就必不可少,方便、快捷、准确地测量井深不仅能够保证钻井工 作安全顺利的进行,而且也能节约时间、资金,带来巨大的经济效益。在进行 石油钻探过程中,由于井下状况复杂且不易预测,需及时掌握钻井的状态,以 保证钻探的质量和钻井的安全。在石油钻探现场广泛采用的就是用来检测钻井 状态的重要智能设备。 传统的测井深设备体积庞大、不易安装、输出信号一般为模拟信号,测量 精度不高、实时性差、出现故障也不易排除,因此给钻井工作带来了巨大的隐 患;另外一些新上市的测井仪虽然在速度、准确度方面有一定的优越性,但其 价格过于昂贵,应用范围受到限制,而且一旦损坏,后果不堪设想。 因此从安全性和性价比两个方面综合来考虑,可采用单片机来测井深,利 用单片机作为主控元件,能使仪器仪表数字化、智能化,提高他们的测量速度、 测量精度、简化仪器仪表硬件结构,便于使用、维修和改进,另外,单片机体 积小、价格低廉,结构灵活、便于集成,所以单片机不仅占领了原来使用小型 机的各个领域,而且广泛应用于过程控制等场合,此外,还可以用于过去计算 机无法深入的方面,如测量仪器、教学装置、医疗设备、家用电器等。本设计 就采用双 cpu 测井深,其可靠性有了很大的提高,两个 cpu 有明确的分工, 一个 cpu 负责测量,一个 cpu 负责事务处理,仪器中再加上监控电路,就能 避免单 cpu 同时响应多个请求时,漏掉检测信号的可能性。同时其测量精度可 达 20mm,响应速度也较快,其价格也比较低廉,因此其应用前景将会十分广 阔。 齐晓苗:基于双 cpu 的井深测量系统设计 2 1 双 cpu 井深测量系统的测量原理和整体框图 由于井比较深,不可能像机械加工那样用一根钻头完成钻井工作全过程。 图 1-1 是钻井系统结构示意图。实际的钻井动力驱动机构有绞盘、大钩、多节 钻杆和钻头组成。在向下钻探的过程中,当钻杆下降到卡座位置时,大钩与钻 杆脱离,向上提升到一钻杆的高度,接入一根钻杆,再将大钩与钻杆重新连接, 继续向下钻探一根钻杆的深度。如此反复,可完成几百、上千米的钻井任务。 因此,钻井深度的测量公式为: 钻井深度=钻杆数量单根钻杆长度-大钩距地面高度 (1) 1234 a b c d 4321 d c b a title numberrevisionsize a4 date:8-jun-2006 sheet of file:f: 1.ddbdrawn by: 绞盘 大钩 钻杆 卡座 钻头 图 1-1 是钻井系统结构示意图 fig.1-1 the structure of drilling system 当需要向上提升钻头时,有大钩向上提升出一根完整的钻杆,然后由井架 底部的卡座加紧地下的其他钻杆和钻头,这时候就可以将地面上的钻杆移去。 地面上的钻杆移去后,大钩向下运动,与卡座夹住的钻杆连接,再松开卡座, 于是又可向上提升钻头。重复这一过程就可以把地下很深的钻头提升到地面1。 从式(1)可以看出,测量井深的关键在于统计井下钻杆的数量。因为工作现 场的特殊性,更换钻杆的数量不能由人工输入到计算机,只能由测量仪器自动 判断。由于钻井过程复杂,在实际操作过程中会出现多次加钻杆、减钻杆的操 作。因此准确判断增加、减少钻杆的操作是确保统计井下钻杆数量的关键。根 据上面介绍,可以通过大钩的位置和载荷来判断是否在进行增加、减少钻杆的 辽宁工程技术大学毕业设计(论文) 3 操作:若大钩的载荷为零,说明钻杆被卡座卡住,要进行增加、减少钻杆的操 作。若大钩载荷变为零时大钩的位置在井架的底部,表明要增加一根钻杆;若 大钩载荷变为零时大钩的位置在井架的上部,表明要移去一根钻杆。 大钩与绞盘上的绞绳相连接,绞盘转动控制绞绳的收放,从而实现大钩的 升降。在一台特定的井架中,绞盘的直径 d,绞绳的直径、每层能缠绕的圈数 是固定的。因此,通过测绞盘的转动圈数与转动位置,即可测量出大钩的实际 高度。 根据井深测量系统的原理,我设计完成的双 cpu 井深测量系统,做到了下 述技术要求,其总体设计的电路结构框图如图 1-2 所示。 图 1-2 双 cpu 井深测量系统框图 fig.1-2 double-cpu depth measurement system diagram 齐晓苗:基于双 cpu 的井深测量系统设计 4 2 设计原则 2.1 先进性 在系统设计中采用目前世界上先进的前端测量备和主控电路。按照国际上 成熟的系统结构进行工程安装。 2.2 扩展性 整个系统的设计满足目前各个所在的需要,同时考虑到以后系统升级扩展 的需要,我为系统留有余地。在本设计中,设计已考虑到系统的基本容量,而 且系统的输入输出都还可以扩充。 2.3 安全性和可靠性 系统设备都选用技术先进、性能可靠的成熟产品,所有这些设备的技术参 数都符合国家有关标准的规定。控制电路具保护功能,防止非法修改内部参数; 主控设备都具有自动诊断系统故障的能力,便于提前发现设备早期出现的故障, 最大限度的保障系统长期安全可靠的运行。 辽宁工程技术大学毕业设计(论文) 5 3 总体设计技术要求、技术措施 3.1 技术要求 在进行石油钻探过程中,由于井下状况复杂且不易预测,需及时掌握钻井 的状态,以保证钻井的质量与钻井的安全。在石油钻探现场广泛使用的井深仪 就是用来监控钻井状态的重要智能。我们经过长期调查研究,从技术上认真分 析,认为需满足下列技术要求,方能实现功能完善、操作方便这两个主要目标: 1)显示大钩的高度位置。 2)时显示钻井深度。 能记录钻井过程中的工况数据和操作状态。这些数据可以通过仪器查询、显示, 也可以通过仪器打印出来存档,还可以通过通讯接口 3)到位管理计算机进行处理和观察。 4)现场掉电保护功能,在现场突然停电的情况下,能保存好各种现场数据, 在现场恢复供电后能根据保存的数据继续工作。 5)校正功能。 3.2 技术措施 上述要求是一项艰巨的任务但也是必须要达到的目标。为此我经过长期努 力,采用以下技术措施,实现了上述目标: 在设计的过程中采用了为了实时显示大钩高度选用了 max191 型 a/d 转换 器,显示钻井深度选用了 tlp521-4 光电隔离器件。为了即使显示和处理突然停 电的情况,选用了 max813 监控电路。在钻井过程中需要记录各种时间则选用 了 w29c040 数据存储芯片。 齐晓苗:基于双 cpu 的井深测量系统设计 6 4 系统总体设计 为了准确测量大钩的高度和换钻杆的过程,井深测量仪必须一直监视大钩 悬重信号和绞盘的编码器信号。编码器信号是数字信号,可以采用中断方式接 收,但悬重信号是模拟信号,必须由 cpu 一直采样测量并监视。在仪器运行过 程中,还有一些信号需要 cpu 及时相应,如何打印机送数据、lcd 显示状态 的查询、键盘的处理、管理计算机通信的响应等。显然,当 cpu 结构响应其他 工作请求时,就有可能漏掉对悬重信号的监测。为此,本设计采用了双 cpu 结 构,一个 cpu 负责测量,一个 cpu 负责事物处理,仪器的内部结构如图 4-1 所示。 打印机lcd 显示器键盘接口 串行通信接口事务处理 cpu 实时时钟 运行记录芯片 信息交换接口up 监控电路 大钩号悬 重信接口 测量处理 cpu绞盘编码器信 号接口 运行状态指令 图 4-1 井深系统内部结构 fig.4-1 depth system internal structure 4.1 事物处理 cpu 设计 在本设计中事物处理 cpu 和测量 cpu 都采用的是 atmel 公司生产的 at89s52 单片机作为下位机节点的微处理器。at89s52 是一个 8k 字节可编程 eeprom 的高性能微控制器。具有内存较大,功能强,抗干扰能力强、软硬件 资源都比较丰富等特点,其外围接口电路简单,具有很高的性价比,成本低, 其价格仅是 dsp 的五分之一,而且它经过多年的发展,技术也相当的成熟。它 辽宁工程技术大学毕业设计(论文) 7 与工业标准 mcs-51 的指令和引脚兼容,因而是一种功能强大的微控制器,它 对很多嵌入式控制应用提供了一个高度灵活有效的解决方案。at89s52 的引脚 如图 4-2 所示: 图 4-2 at89s52 引脚图 fig.4-2 pin of at89s52 at89s52 性能简介: 1) 主电源引脚 vcc接电源端。 gnd 是接地端。 2) xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。 xtal2:来自反向振荡器的输出。 3) rst:复位输入。当振荡器复位器件时,要保持 rst 脚两个机器周期 的高电平时 4)ale/:当访问外部存储器时,ale(地址锁存允许)的输出电平用于p 锁存地址的低位字节。在 flash 编程期间,引脚用于输入编程脉冲。在平时, ale 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此 它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部 数据存储器时,将跳过一个 ale 脉冲。如想禁止 ale 的输出可在(sfr)8eh 地址置 0。此时,le 只有在执行 movx,movc 指令是 ale 才起作用。另外, 齐晓苗:基于双 cpu 的井深测量系统设计 8 引脚被略微拉高。如果微处理器在外部执行外部程序时,该设定禁止 ale 位无 效。 5):外部程序存储器的读选通信号。由外部程序存储器取指期间,wr/rd 每个机器周期两次 有效。但在访问外部数据存储器时,这两次有效的信号将不 出现。 6)/vp:外部访问允许端。当保持低电平时,则在此期间外部程序存ea 储器(0000hffffh),不管是否有内部程序存储器。注意加密方式 1 时, 将内部锁 reset;当端保持高电平时,此间内部程序存储器。在 flash 编程 期间,此引脚用于施加 12v 编程电源(vpp)。 7)p0 端口(p0.0p0.7):p0 口为一个 8 位漏级开路双向 i/o 口,每个引 脚吸收 8 个 ttl 门电流。当 p0 口的管脚第一次写 1 时,被定义为高阻输入端。 p0 能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。 8)p1 端口(p1.0p1.7):p1 口为一个内部上拉电阻的 8 位双向 i/o 口, p1 口的缓冲器可接收,输出 4 个 ttl 门电流,当 p1 口被写“1”时,其管脚被内 部上拉电阻拉高,且作为输入。并因此作为输入时,p1 口的管脚被外部拉低, 将输出电流。这是由于内部上拉的缘故。 9)p2 端口(p2.0p2.7):p2 口为一个内部上拉电阻的 8 位双向 i/o 口, p2 口缓冲器可接收,输出 4 个 ttl 门电流,当 p2 口被写“1”时,其管脚被内部 上拉电阻拉高,且作为输入。并因此作为输入时,p2 口的管脚被外部拉低,将 输出电流。这是由于内部电阻上拉的缘故。p2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,p2 口输出地址的高八位。在给出地址“1” 时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,p2 口输 出其特殊功能寄存器的内容。p2 口在 flash 编程和校验时接收高八位地址信 号和控制信号。 10) p3 端口(p3.0p3.7):p3 口管脚是 8 个带内部上拉电阻的双向 i/o 口,可接收输出 4 个 ttl 门电流。当 p3 口写入“1”后,它们被内部上拉为高电 平,并用作输入。作为输入,由于有内部上拉电阻,那些被外部信号下拉低的 引脚将输出电流(ill)。 p3 口也可作为 at89s52 的一些特殊功能口,管脚功 能表 4-1 所示: 辽宁工程技术大学毕业设计(论文) 9 表 4-1 各口线的第二功能表 tab.4-1 the second fuction of each table p3 口第二功能 p3.0rxd (串行口输入口) p3.1txd(串行口输出口) p3.2int0 (外部中断 0 输入) p3.3 int1(外部中断 1 输入) p3.4t0(定时器 0 的外部输入) p3.5t1(定时器 1 的外部输入) p3.6 (外部数据存储器“写”选通)wr p3.7 (外部数据存储器“读”选通)rd 事物处理 cpu 系统以 at89s52 单片机为核心构成。详细说明如下各小节 介绍。 4.1.1 实时时钟芯片 井深仪需要记录各类时间发生的时间,因此在仪器中需要有实时时钟芯片, 设计中选择了 ds12887。ds12887 是 dallas 公司制造的并行接口实时时钟芯 片,具有日历时钟、报警时钟、实时时钟功能,内部带有 114 字节不易失性 ram,目前在单片机系统中得到广泛的应用2。 齐晓苗:基于双 cpu 的井深测量系统设计 10 图 4-3 ds12887 引脚排列 fig.4-3 ds12887 pin arrangement 1)一脚说明 ds12887 采用 24 引脚双列直式封装。引脚排列如图 4-3 所示各引脚功能叙 述如下: vcc 和 gnd:vcc 接电源正端,vcc=5v(以 gnd 为参考点) 。gnd 接 地,所有电平均以此为参考点。 mot:两种总线模式选择引脚。当 mot 接 vcc 时,选择 motorola 模 式。此时,总线(ad0ad7、ds、as 和)的时序与 motorolaw/rcs 系列微机的总线匹配。当 mot 接 intel 系列微机(例如 8085、8088、单片机 mcs51 和 8096 等)的总线时序匹配。 sqw:方波输出引脚。通过对寄存器 a 频率选择位 rs3rs0 赋值,可以 选择 ds12887 内部 15 级分频器中 13 个抽头之一,从引脚 sqw 输出。这 13 个 抽头所对应的方波周期在 500ms(2hz)122.07s(8.192khz)之间。 :中断请求输出引脚,低电平有效。ds12887 有周期中断、报警中断irq 和更新结束中断,若相应的控制位允许,当中断条件满足时,就会在该脚输出 一个低电平脉冲。引脚为漏级开路输出,需要外接上拉电阻。irq :复位输入,低电平有效。引脚保持低电平的时间应不小于rstrst 200s。 ad0ad7:数据/地址复用总线。在总线周期(微处理器读或写 ds12887 内部寄存器或 ram 期间)的前半段时间,ad0ad7 为微处理器发送的地址信 号在总线周期的后半段时间,ad0ad7 为数据信息(微处理器写 ds12887 时, ad0ad7 为微处理器提供的数据信息。微处理器读 ds12887 时,ad0ad7 为 ds12887 输出的数据信息) 。 as(ale):地址选通输入正脉冲,用于实现总线数据/地址信号分离。as 出现在总线周期的前半段时间(ad0ad7 为地址信号) 。as 在地址信号开始 有效上升为高电平,在地址信号失效前下降为低电平。as 的下降沿将地址锁存 在 ds12887 内。当 ds12887 与 intel 系列微机连接时,可以把 cpu 的 ale 辽宁工程技术大学毕业设计(论文) 11 引脚与 ds12887 的 as 引脚接在一起。 ds:数据选通正脉冲。读(高电平时)或写(低电平时)控制信号。w/r 微处理器加到 ds12887 引脚 ds 和的信号适当配合起来,可以实现对w/r ds12887 的读写操作。当选用 in-tel 方式时,ds 和为读(rd) 、写w/r (wr)控制引脚,ds(rd)和(wr)引脚所需的控制信号正好与w/r mcs51 和 mcs96 等单片机引脚和输出的控制信号相匹配。rdwr :片选信号,低电平有效。在对 ds12887 的整个访问(读或写)期间,cs 必须保持低电平。如果为高电平,则不能对 ds12887 进行访问。当 vcccscs 低于 4.25v 时,无效。从而禁止存取,以保护 ram 中的数据。cs 2)寄存器分配 ds12887 内部有 128 字节 ram。其中 4 字节为寄存器,10 字节用于存放 实时时钟、日历和警报,114 字节作为用户 ram。它们的地址分配如图 4-4 所 示。这 128 字节大都可直接读或写,只有少数例外: a)寄存器 c 和 d 为只读 b)寄存器 a 的第 7 位为只读 c)秒字节的最高位为只读 图 4-4 ds12887 内部存储器地址分配 齐晓苗:基于双 cpu 的井深测量系统设计 12 fig.4-4 ds12887 interior memory allocation 3)时间、日历和警报单元的应用方法 a)功能 图 4-4 中存放秒、分、时的单元(地址分别为 00h、02h、04h)的内容始 终表示现时时间。存放时、星期、日、月份和年的单元(地址分别为 06h、07h、08h 和 09h)始终表示当前的日期。实时时钟存放单元的初值可由 程序设定。一旦设定(写入)初值后,随着时间的推移,这些单元的内容便每 秒更新一次。 秒警报、分警报和时警报这 3 个单元存放和 05h。这 3 个单元的数值由程 序设定。实时时钟秒更新时,把现时时间与警报时刻 3 个存放单元的内容比较, 如果两者相等,且允许中断,便使引脚变为低电平,发出报警中断。irq b)正确读写时间、日历和警报单元 存放时间、日历和警报的 10 个字节(内部 ram 地址为 00h09h)随时可 读可写(00h 的最高位除外) 。虽然它们的结构是双缓冲的,任何时候对它们读 或写不会影响实时时钟的精确性,但是在进行数据更新时所读取的结果可能是 不正确的,应该在两次数据更新的空闲时间读取数据。常用方法是查询寄存器 a 的更新标志位 uip 来判断更新是否正在进行。如果 pip=1,表明一次更新即将 进行,不可读取数据;如果 uip=0,表明暂时不会发生更新,此时可以读取数 据。 c)数据格式 上述时间、日历和警报单元 10 个字节在设置初值时,可用二进制形式,也 可用 bcd 码形式。如果将寄存器 b 的 dm 的位置位设置为“1”,则选用二进制 数;若 dm 设置为“0”,则选 bcd 码。bcd 采用压缩格式,每字节两位 bcd 码,且高位在前。 关于报警单元的设置作一下说明:如果时警报、分警报和秒警报字节的最高 两位不全为 1,每分和每秒字节的值不大于 60,小时字节的值不大于 24,则 每 24 小时发生一次警报(采用 24 小时模式) ,或每 12 小时发生一次警报(采 用 12 小时模式) 。如果某字节的最高两位均为 1(cohffh) ,则该字节为不 关心值。如果警报字节为不关心值,则每小时发一次警报;如果 3 个字节均置 辽宁工程技术大学毕业设计(论文) 13 为不关心值,则每秒发一次警报。 为了保证在写字节过程中不发生数据更新,在写时间、日历和报警寄存器 之前,应先把寄存器 b 的 set 位置为“1”,写完数据之后立即将 set 位清“0”。 4) 控制与状态寄存器 ds12887 有 4 个寄存器,下面说明它们的功能和用法。 a)寄存器 a(控制寄存器) 寄存器 a 的格式如表 4-2 所示。其中 d7 为最高位。各位功能和用法如下: 表 4-2 寄存器 a 的格式 tab.4-2 a register of the format 位 d7 d6d5d4d3d2d1d0 符号uipdv2dv1dv0rs3rs2rs1rs0 uip:更新正在进行标志位,只可读。当 uip=1 时,表明数据更新将很快 发生。若 uip=0,表示未来 244s 之内不会发生数据更新,此时可读 ram 中的 时间、日历和警报信息。uip=不受引脚 rst 复位的影响。 dv2、dv1、dv0:晶振和复位分频链控制。ds12887 在出厂时,内部晶振 处于关闭状态,实时时钟不工作,不消耗内部锂电池。若把 dv0、dv1、dv2 置为 010,将启动晶振,实时时钟开始计时。如果把 11x(x 为任意值)写入 dv0、dv1、dv2,则数据更新停止,500ms 以后才开始下一次更新,这称为 分频链复位。dv0、dv1、dv2 的其他状态组合均关闭晶振。 rs3、rs2、rs1、rs0:分频器抽头选择控制。把这 4 位设置为不同形式, 可选择 15 级分频器的 13 个抽头之一(每一抽头频率不同) 。此抽头信号在 pie、sqwe 位的控制下,产生中断信号或方波输出。也就是说,在引脚发irq 出的周期中断请求和时间间隔和在 sqw 引脚输出方波的频率,就是所选分频 抽头信号的周期或频率。 b)寄存器 b(控制寄存器) 寄存器 b 的格式如表 4-3 所示。该寄存器的所有位均可读写,不受芯片内 部功能的影响。各位功能如下: 表 4-3 寄存器 b 的格式 tab.4-3 b register of the format 位 d7 d6d5d4d3d2d1d0 齐晓苗:基于双 cpu 的井深测量系统设计 14 符号setpieaieuiesqwedm24/12dse set:数据更新控制位,可读写,且不被 rst 复位修改。若把 set 位置 为“1”,禁止时间和日立字节更新,此时可对这些字节进行读写。若把 set 位 清“0”,则更新正常进行,每秒更新一次。 pie:周期中断允许控制位,可读写。若把 pie 置为“1”,则允许周期中断 发生。在这种情况下,如果寄存器 c 中的周期中断标志位 pf 为“1”,则立即把 引脚拉低,请求中断。pf 位变为“1”的周期由 rs3rs0 决定。若置 pie 为irq “0” ,则禁止周期中断。rst 复位时将使 pie 位清“0”。 ale:警报中断允许控制位,可读写。每次数据更新时,都自动把 3 个时 间字节(时、分、秒)和 3 个警报字节(时警报、分警报和秒警报)进行比较。 若各对应字节相等,则把寄存器 c 的 pf 位置“1”,表示警报时间到。如果警报 字节有不关心字节,则比较时该字节将被忽略。如果置 aie 位为“1”,并且 pf 位也为“1”,则立刻把引脚拉低,申请警报中断。如果 aie 位为“0”,则不irq 会发生警报中断。rst 复位会使 aie 位清“0”。 sqwe:方波输出允许控制位,可读写。如果 uie 位被置为“1”,则允许在 sqw 引脚输出方波。方波频率由频率选择位 rs3rs0 决定;若置 sqwe 位为 “0”,则 sqw 引脚保持低电平。rst 复位使 sqwe 位清“0”。 dm:数据模式控制位,可读写。若置该位为“1”,则 10 个字节的时间、 日历和警报信息为二进制数形式;若把该位置置“0”,则 bcd 码。dm 位不会 被 rst 复位所改变。 24/12:小时格式控制位,可读写。把该位“1”,选择 24 小时模式;把该位 置“0”,为 12 小时模式。rst 复位不影响该位。 dse:夏令时允许控制位,可读写。当 dse 位置“1”时,允许两种特殊更 新:在四月份的第一个星期日,时间从 1:59:59am(上午 1 时 59 分 59 秒)变到 3:00:00am;在十月份的最后一个星期日,把时间从 1:59:59am 改为 1:00:00am。当 dse 为“0”时,这种特殊修改不会发生。此位不受 rst 复位影 响。 c)寄存器 c(状态寄存器,只读) 此寄存器的格式如表 4-4 所示。寄存器 c 中的 d7d4 定义为状态位。读寄 辽宁工程技术大学毕业设计(论文) 15 存器 c 或 rst 复位均可使这些位清“0”。d3d0 未定义,读出值总为“0”。各位 功能如下: 表 4-4 寄存器 c 格式 tab.4-4 c register of the format 位 d7 d6d5d4d3d2d1d0 符号irqfpfafuf0000 pf:周期中断标志位。当探测到分频器链中抽头发生正跳变时,pf 位置 “1”,请求周期中断。pf 置“1”与 pie 的状态无关。 af:警报中断标志位。当现时时间(图 4-4 中时、分、秒单元)与警报时 间(图 4-4 中时警报、分警报和秒警报时间单元)相匹配时,af 位便使“1”, 请求警报中断。如果此时 aie 为“1”,便拉低引脚,发出警报中断请求信号。irq uf:更新结束中断标志位。每次数据更新结束便立即把 uf 位置“1”,请求 更新结束中断。如果此时 uie 为“1”,便拉低引脚,发出更新结束中断请求irq 信号。 irqf:发出中断标志位。当对应的 3 个中断标志位(pf、af 和 uf)中至 少有一个为“1”,且对应的中断允许控制位(pie、aie 和 uie)中至少有一个 为“1”,即至少有一个满足中断条件,便将引脚拉低,发出中断请求,同时irq 也把 irqf 位置“1”。irqf 为“1”表明至少发出了一个中断请求。由此推出逻辑 表达式为 irqf=pf*pie*+af*aie+uf*uie。 d)寄存器 d(内部锂电池状态标志,只读) 寄存器 d 的格式如表 4-5 所示。寄存器 d 的所有位置只可读而不可写。其 中 d6d0 未定义,读出值总为“0”。vrt 位功能如下: vrt:电池状态标志位。这一位在出厂时已由 dallas 公司置为“1”,锂 电池正常时读取应为“1”。如果读出为“0”,说明内部锂电池已耗尽,此时内部 ram 和各时间单元的数据已不可信。 表 4-5 寄存器 d 格式 tab.4-5 d register of the format 位 d7 d6d5d4d3d2d1d0 齐晓苗:基于双 cpu 的井深测量系统设计 16 符号vrt0000000 4.1.2 数据存储芯片选择 钻井过程中要记录的数据有当前日期、时间、累计工作时间、累计空闲时 间、当前井深等。若选择 1m 井深记录一次数据,一口井最深 10000m,一个记 录按 16 字节计算,则保存整口井的数据需要 160k 的存储容量。考虑到有其他 数据,如显示点阵数据、系统校正参数等,设计方案中选择 winbond 公司的 w29c040。其引脚排列如图 4-5 所示。 图 4-5 w29c040 引脚排列 fig.4-5 w29c040 pin arrangement w29c040 是单 5v 供电、cmos 工艺、容量为 512k8bit 的 eeprom。数 据可保存 10 年,是单片机系统中理想的数据保存芯片。w29c040 采用 dip40 封装,各引脚说明见表 4-6。 表 4-6 w29c040 引脚说明 tab.4-6 w29c040 of pin explanation 引脚符号 功能说明 a0a18 dqdq7 ce we oe 地址线 数据输入/输出线 片选允许 写允许 读允许 辽宁工程技术大学毕业设计(论文) 17 vcc gnd 电源 地 w29c040 的读操作与普通 ram 和 rom 的操作方法相同。但芯片的擦除、 编程、写保护等操作需要用特定的命令来实现。这些命令其实就是以特定的顺 序,向 w29c040 特定的地址单元写特定的内容。w29c040 常用的命令格式见 表 4-7。 表 4-7w29c040 常用命令表 tab.4-7 w29c040 commonly used order table 命令第 0 次写 (5555h) 第 1 次写 (2aaah ) 第 2 次写 (5555h) 第 3 次写 (5555h) 第 4 次写 (2aaah) 第 5 次写 (5555h) 启动写保护 关闭写保护 正片擦除 准备读芯片 id 退出读芯片 id aah aah aah aah aah 55h 55h 55h 55h 55h a0h 80h 80h 80h f0h aah aah aah 55h 55h 55h 20h 10h 60h 例如,欲启动 w29c040 的写保护功能,需连续向 w29c040 写入 3 个命 令字节,其中第 1 个字节为 aah(写入 5555h 单元) ;第 2 个字节为 55h(写 入 2aaah 单元) ;第 3 个字节为 a0h(写入 5555h 单元) 。在写命令过程中, 5555h、2aaah 单元并不存放写入的内容(aah、55h), w29c040 能够自动 把写入的数据解释为命令信息,不进行数据存储处理。 在相 w29c040 写数据时,应注意以下事项: 1)w29c040 的写操作以页为基本单元,必须写入一整页的数据。若该页 的某些单元未写入数据,数据固化时会将这些单元的内容自动填为 0ffh。一页 为 256 字节,由地址总线的 a7a0 寻址。 2)写入数据时,应将一页的内容写完,芯片内部固化结束后再写其他页。 因此,在写一页数据时,地址总线 a18a8 不能变化。 齐晓苗:基于双 cpu 的井深测量系统设计 18 3)一页数据的写入不分先后顺序,可以重复写入。 4)当两次写数据的时间间隔超过 200s,或从 w29c040 读取数据,都意 味着数据写入结束。此时 w29c040 内部开始固化数据,不再接收写入的数据, 若连续两次读出数据的 d6 位不同,则说明正在固化,若相同,则说明固化已 结束。 5)启动了写入保护的 w29c040 不能直接写数据。每次写页面数据时必须 先启动写保护,然后紧接着写入数据。数据写入结束、芯片固化后,若还要写 入数据,则必须再次启动写保护,然偶紧接着写入数据。因此,启动写保护命 令也是一个允许数据写入的命令。若关闭了写保护,则每次可直接写入数据。 为了数据的安全,一般在使用 w29c040 时都应启动写保护3。 4.1.3 键盘输入接口设计 本仪器的键盘采用遥控键盘,串行数据的传输速率固定。为了能准确接收 键盘数据,设计中采用中断方式,在 cpu 中 ctc 定时器来识别每个数据位的 时间间隔。整个接收过程的识别主要由硬件完成,接收可靠性好,且不需要 cpu 过多的干预,减少了软件设计工作量,提高了实时性。电路中,遥控键盘 的接收信号从 con2 插座输入,连接但单片机的引脚。0int 4.1.4 打印机的配置 打印机内部有 cpu,端口有锁存功能。因此只需要按接口时序和数据格式 要求,依次向打印机发送数据和打印命令即可。本设计中,打印机接口信号用 con3 的 db25 插座连接,单片机监视打印机的 ack、busy 信号,其中的 ack 连接到单片机的,根据实际要求既可用查询方式,也可用中断方式来1int 实现单片机与打印机的联络。因此设计方案选用 tppb40 型打印机4。 tpp 系列打印机是智能点阵式针式串行击打式打印机,打印机内部有一个 8031 单片机对打印机进行控制。内有 448 个打印字符、40 条 esc/p 兼容的打 印命令,可实现诸如字符图形的放大、打印格式的设置、打印方式的选择等多 种功能,并提供了硬汉字库打印的相关命令,可在机内安装多达 600 个 1616 点阵的汉字,只要接收标准的内机交换码,即可打印出漂亮的汉字。 1)tpp40 的字符代码和打印命令 辽宁工程技术大学毕业设计(论文) 19 tpp40 打印机共有 256 个代码(其中 00h 无效): 代码 10h1fh 为由用户定义的代码。 代码 20h7fh 为标准 ascii 代码 01h0fh 为打印命令代码,其含义如表 6-20 所示。 代码 80hffh 为非 ascii 代码,包括少量汉字、希腊字母、块兔兔符和 一些特殊字符。 应该注意,tpp 系列中各型号,同一个命令代码,其含义及所进行的操作 可能不完全相同。 tpp40 打印机每行可打印 40 个(曾宽系数为 1 时)字符。输入字符不 足 40 个,可用“0d”(回车换行)命令回车换行,如果输入代码已足 40 个,打 印机自动回车换行。 必须把打印控制命令送给 tpp40,tpp40 才能打印。打印机命令由 一个命令字节和若干个参数字节组成,如表 4-8 所示。其中,命令字节在 01h0fh 均为单字节,参数字节数因打印内容不同而异。 表 4-8 tppb40 打印机命令代码及功能 tab.4-8 tpp-b40 printer order code and function 命令代码 (16 进制) 命令格式功能说明 01 02 03 04 05 06 07 01 02 03 04 05yy1yy6 06yy 07 字符(图)曾宽为,为 01,02,02,04 字符(图)曾宽为,为 01,02,02,04 字符(图)宽和高均增为倍,为 01,02,02,04 更换(或定义)行间距为,为 00hffh 用户将代码自定义为点阵式样 yy1yy6,为 10h1fh 把代码 yy 换成代码所定义的点阵,为 10h1fh,yy 为 20hffh 水平制表跳区,此命令使从下一区开始打印,每行分 为 0,1,2,3 共 4 个区 齐晓苗:基于双 cpu 的井深测量系统设计 20 08 09 0a 0b,0c 0d 0e 0f 01 09 0a 0d 0e 0fnnyy1yyn 垂直(制表)跳行(空行数) ,为 1255 把用户定义代码替换的代码恢复为 ascii 代码,并清 除已输入打印机但尚未打印的字符串 送空字符码 20h 后回车换行 无效 回车换行或 06 命令的结束码 重复打印 yy 个代码字符,yy 为 0255,0 表示 256 打印 nn 列点阵图,nn 为 01hfoh(1240), yy1yyn 共 nnh 个,每个均为一字节 说明:上表中命令格式栏中,两个字符为一个十六进制字节 2) tppb40 与计算机接口 可以用扁平电缆通过打印机背面的 20 芯插座与主计算机连接起来。20 芯插座 各插孔的排列和名称如图 4-6 所示。其中: 图 4-6 tpp40 打印机插座孔排列 fig.4-6 tpp-40 printer plug hole arrangement gnd:地。 db0db7:数据线,单向,由主计算机输入打印机。 stb:数据选通信号,输入,低电平有效。stb 为低电平时,把数据送入 打印机的锁存器。stb 的上升沿把数据所存在打印机的锁存器里。 busy:“忙”信号,是打印机的输出信号,高电平有效。当 busy=1 时, 打印机正忙于处理数据,主计算机不得送数据。 ack:应答信号,是打印机的输出信号,低电平有效。若 ack=0,说明打 印机已取走数据。 err:出错信号,打印机的输出,低脉冲。如果主计算机送给打印机的命 令有错误,打印机首先输出一个宽度约 30ms 的低脉冲,然后打印出错误代码。 辽宁工程技术大学毕业设计(论文) 21 各种出错代码含义如下: error:0放大系数出界,即放大倍数时 1,2,3,4 以外的数字。 error:1定义非法代码。10h1fh 的代码所规定的字形码可由用户定 义。如果定义所用代码不是 10h1fh,便是犯了此类错误。 error:2非法换码命令。换码命令只能用 10h1fh(自定义代码)去 代换驻留在 eprom 中的字符代码(代码为 20hffh) ,否则非法。 error:3绘图命令错误。程序中制定图形每行字节数为 0 或大于 240 则认为是错误的。 error:4垂直制表命令错误。如果制定两行间空格数为 0,则认为错误。 图 4-7 是 tpp40 打印机与单片机 89c52 接口电路。按图中接法,错误 命令信息 err 采用查询方式读取。忙信号 busy 用于请求中断,也可以采用查 询方式。89c52 执行输出指令时 stb 为低,把命令写入 tpp40,执行输入 指令把 err 读入累加器。 图 4-7 tpp40 与 at89s52 接口 fig.4-7 tpp-40 and at89s52 connection 4.1.5 显示器件的配置 对液晶显示器控制包括显示控制、复位与亮度调节。电路中采用 con4 实 现信号连接。液晶显示器的接到单片机的地址线 a0,这样奇数地址传递d/c 齐晓苗:基于双 cpu 的井深测量系统设计 22 控制指令,偶数地址传递数据。液晶显示器的复位信号与 ds12887 共用,上电 复位时间要比单片机的复位时间长。上电后单片机应过一段时间再对液晶显示 器进行初始化5。 考虑现场显示的参数多,为便于用户操作,设计方案选用汉字提示,配备 了 lcd240128a 液晶显示器。其控制芯片采用 t6963a。 1)模块简介 lcd240128a 是热致液晶 stn 型图形点阵式显示模式,它由 stn 型液晶 板、液晶显示控制器、液晶驱动器、背光板组成,图 4-8 是 lcd240128a 模块 的结构框图。他的整屏尺寸为 114104mm,有 240128 点,可显示 16 点阵汉 字 158 个,亦可显示各种图形。因此,在智能式电子仪器中,lcd240128a 可 用来作为显示器,以显示各种图形和文字信息。该模块的外部引脚定义如表 4-9 所示。 t6963a 内部含有共 128 字节的字符发生器 cgrom,可外接 8k(最大为 表 4-9 lcd240128a 的引脚定义 tab.4-9 lcd240128a pin definitions 引脚号信 号意义 1 2 3 4 5 6 7 8 9 10 1118 19 fg vss vdd vee wr rd ce c/d n.c reset db0db7 f.s 框架地 信号地,0v 模块电源输入端,+5v 10% lcd 工作电压输入端 写信号 读信号 片选信号 “1”为指令码, “0”为数据码 悬空脚 复位信号 数据位 18 点阵模式选择。 “1”选择 58 点阵, “0”选择 88 点阵 辽宁工程技术大学毕业设计(论文) 23 20vout-10v lcd 驱动电压输出端 图 4-8 是 lcd240128a 模块的结构框图 fig.4-8 the lcd240128a module structure diagram 128k)字节的 ram 作为外部的显示缓冲区及字符发生器 cgram,并允许 mpu 访问显示缓冲区,甚至还可进行位操作6。 根据 t6963a 的特性设计出的 lcd240128a 模块与 at89s52 单片机的接口 电路如图 4-9 所示。 齐晓苗:基于双 cpu 的井深测量系统设计 24 图 4-9 lcd240128 模块与 at89s52 单片机的接口电路 fig.4-9 lcd240128 modules and the interface circuit scm at89s52 在图 4-9 中,at89s52 单片机作为控制液晶模块 mpu,扩展的 16k 字节 eprom27128 用于存放 16 点阵汉字的字模数据。也可以看出液晶模块的控制 指令端口为 4001h,数据端口为 4000h,可通过电位器 r2 来调整液晶的显示效 果。 2)控制命令 t6963a 的指令格式为:数据 1+数据 2+指令字节,有的指令只含有一个数 据或根本就没有数据。lcd240128a 模块选择的是单屏结构,每行最大为 80 个 字节,总行数为 16 的显示模式。 4.1.6 操作键盘配置 由于井深仪的操作需要在钻经现场进行,键盘要有良好的密封性能。设计 方案采用遥控键盘,将操作键盘与仪器分离,键盘的密封能够很好地实现。遥 控键盘采用目前家电(如电视机、vcd 等)中常用的遥控键盘,这些键盘可靠、 价廉,经过适当的改造即可作为仪器的操作键盘。 遥控键盘的输出是所键盘的编码信号,由于只有一个发射头和以一个接收 头,因此编码数据是进行串行传输的。采用不同的编码芯片,遥控键盘输出数 辽宁工程技术大学毕业设计(论文) 25 据的格式各不相同。本仪器采用 m50462ap 型遥控键盘,其输出信号的时序如 图 4-10 所示。 图 4-10 遥控键盘输出信号时序图 fig.4-10 remote control keyboard output signal timing plans 一个键盘编码数据 16bit,共 17 个脉冲。其中,第 0 个脉冲为数据起始同 步脉冲。每个脉冲的宽度是确定的,为 0.40.5ms。脉冲之间的间隔决定了该位 数据是 0 还是 1,若间隔时间为 1.11.2ms,表示数据“0”;若间隔时间为 2.22.3ms,表示数据“1”;若间隔超过 4.6ms,表示一个数据发送结束7。 一次按键后,遥控键盘会将键盘值数据重复发送三次,以确保接收端能正 确接收数据。16 位数据中,前 8 位为固定的标志位“11100010”,后 8 位数据才 是按键的编码。 4.1.7 译码电路 本设计中,单片机系统中各种外设的地址译码由一片 gal16v8 实现,译 码控制逻辑及地址范围如下: /cs0=psn/a15c/a14/a13 ;6264 00001fffh /cs1=psn/a15c/a14/a13 ;ds12887 20003fffh /cs2=psn/a15ca14/a13/wr ;打印机 40005fffh /cs3=psn/a15ca14/a13 ; lcd 60007fffh /cs4=psna15c ;29040 8000ffffh 齐晓苗:基于双 cpu 的井深测量系统设计 26 由于 gal 的灵活性与良好的逻辑实现功能,采用 gal 比采用电路灵活,系 统结构简单、可靠性高。 4.1.8 测井仪与通信接口电路设计 由于管理计算机无特殊要求,测井仪与管理计算机的通信选用了 rs232 标 准,本设计直接选用了 max232 接口芯片。max232 是一种非常通用的芯片, 该芯片是 maxim 公司生产的低功耗、单电源双 rs232 发送/ 接收器。 适用 于各种 eia -232e 和 v. 28/ v. 24 的通信接口。max232 芯片内部有一个电 源电压变换器, 可以把输入的 + 5v 电源变换成 rs - 232c 输出电平所需 10v 电压, 所以采用此芯片接口的串行通信系统只要单一的 +5v 电源就可以。 max232 外围需要 4 个电解电容 c1、c2、c3、c4, 是内部电源转换所 需电容。其取值均为 1f/25v1 宜选用钽电容并且应尽量靠近芯片。c5 为 0. 1f 的去耦电容。max232 的引脚 t1in、t2in、r1out、r2out 为接 ttl/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45690-2025地理标志产品质量要求普洱咖啡
- 出版业的生产流程管理考核试卷
- 锡冶炼中的废物资源化考核试卷
- 金属制品在建筑D打印中的材料研发考核试卷
- 防晒伞结构与性能考核试卷
- 妇产科手术麻醉
- 卫生间空间功能自我分析
- 医院民生实事工作专题汇报
- 诊断学基础:肝脏疾病
- 麻醉科业务培训体系
- 2025年山东省高考招生统一考试高考真题化学试卷(真题+答案)
- 2025至2030年中国月子中心行业竞争格局分析及市场前景趋势报告
- 2025年山煤国际招聘笔试冲刺题(带答案解析)
- 2024-2025学年初中英语七年级下册期末考试综合测试卷及参考答案
- 2025年山东省济南市长清区中考二模道德与法治试题(含答案)
- 冠心病的规范化诊培训课件
- 未来中国检测市场发展趋势简析(精)
- 2025年AI+赋能中小企业:出海营销的创新与发展
- 四川电网新建电源并网服务指南(2025年)
- 2024北森图表分析题库
- 事故隐患内部报告奖励制度
评论
0/150
提交评论