一种基于DSP的张力、深度、速度测量系统
1 引言
在油田测井过程中,地面操作人员需要知道油井的深度、电缆下井速度及电缆所承载的负荷。只有及时准确地掌握这些数据,才能使测井工作顺利进行,以保证测井过程安全可靠。因此,我们开发了基于DSP的张力、深度、速度测量系统。该系统准确度高,可靠性强,处理速度快,是地面操作人员理想的监测工具。
2 应变传感器及光电编码器
2.1 应变传感器
电缆所受张力使应变传感器产生机械变形,传感器将机械变形转化为电信号输出,从而测得张力。
.工作电压:直流12V
.输出范围:0~12mV
.输出灵敏度:1mv/v
2.2 光电编码器
将光电编码器的转轴同轴地固定在周长已知的量轮的圆心上,当量轮转动时编码器同步转动并输出脉冲信号。这样,一定的长度便对应一定数量的脉冲信号,通过计算脉冲信号便可换算出深度值。对单位时间的深度值采样便得到速度值。
.工作电压:直流5V
.工作电流:40mA
.脉冲类型:两路正交的脉冲信号,通过逻辑电路可完成对光电编码器转动方向的识别和对深度脉冲的输出。
3 系统结构及工作原理
将应变传感器产生的毫伏信号输入到放大器进行放大,然后送入A/D转换器进行模数转换,转换成处二进制序列后送入DSP处理。为保证A/D转换的可靠性,采用V/F器件LM331实现模数转换,将电压信号转换为频率信号。此器件可靠性高,占用资源少。
由光电编码器产生的两路正交信号输入到CPLD,经处理后,产生两路信号。一路为辨向脉冲,用于识别光电编码器的转动方向。另一路为计数脉冲,用于完成深度参数的换算。两路脉冲均输入到DSP。见图1。
图1 系统硬件实现框图
4 核心硬件电路设计
4.1 TMS320VC33处理器
该芯片为TI公司推出的32位浮点高性能数字信号处理器。指令周期分为13ns和17ns两种,单周期完成32位整数、40位浮点乘法运算。片内34K 32bitSRAM,分为2个16K和2个2K 的块,块上集成一个DMA通道,一个同步串口,两个32bit的定时器;总存储空间为 16M 32bits, 程序、数据及I/O空间均包含在其中,可根据不同的要求划分地址空间;具有程序引导功能,系统复位后,可将程序从慢速的外部存储器中装载到快速的片内RAM中运行;支持IEEE Std 1149.1(JTAG)标准;0.18-m工艺,1.8V核心电压,3.2VI/O电压;低功耗(<200mW@150MFLOPS)。该芯片结合了浮点运算和定点运算的长处,具有很高的运算精度和很快的运算速度,适用于快速处理的场合。
4.2 高精度实时时钟/日历SD2001E
本系统要求对测试数据进行24小时以内的实时记录(即“黑匣子”功能),因此选用具有I2C总线接口的实时时钟器件SD2001E,用以记录测量参数、操作人员的姓名及具体操作时间(年、月、日、时),作为问题分析的资料。该器件可提供32k bits及100亿次擦写次数的非易失性SRAM;内部集成了晶振、电池及电源管理电路,在系统掉电时能保证该芯片正常工作,时钟走时时间为10年以上;I2C总线接口(包括实时时钟部分和SRAM部分);内置高精度晶振,精度< 5ppm, 即一个月内,走时误差不超过13秒(25C);年、月、日、星期、时、分、秒的BCD码输入/输出;自动日历到2099年(包括闰年自动换算功能)。
4.3 SST39VF320存储器
该芯片为CMOS多用途 FLASH器件,2M 16容量,是理想的大容量存储器。可满足本测量系统中24小时以内数据记录的要求,记录的内容为张力、深度、速度的测量值。该器件提供2.7-3.6V的工作电压;超可靠性,10万次擦写次数,永久数据保存;低功耗,有效电流9mA,备用电流3A,自动低功耗模式3A;70ns及90ns的快速读取时间;地址及数据锁存功能;2KWord 扇区擦写能力及32KWord块擦写能力;快速擦写及字编程能力;兼容CMOS I/O口。
4.4 串行E2PROM AT24C512
该芯片为64k字节的串行E2PROM,具有I2C总线接口。测量数据存于其中,当系统掉电时数据不会丢失,给操作人员带来很大的方便。该器件擦写次数有限,工作可中先将数据写入SD2001E片内的NVRAM,当NVRAM写满后再将数据传送到AT24C512中,这样可大大降低其刷新次数,从而延长了使用寿命。
4.5 中文图文液晶显示模块OCMJ4X8C
OCMJ4X8C为具有串/并接口且内部含有中文字库的液晶显示模块,具有较强的控制显示功能;液晶显示点阵为128 64,可显示4行,每行8个汉字;具有2Mbits的中文字型CGROM,该字型ROM中含有8192个16 16点阵中文字型库,可方便地显示汉字;具有16kbit的16 8点阵的ASCⅡ字符库,可可方便地显示英文字符和其他常用字符;提供了一个64 256点的GDRM绘图区域,可方便地构造图形;提供了4组16 16点阵的造字空间,可方便地造文字;能实现汉字、ASCⅡ码 、点阵图形、自选字形的同屏显示。
通过采用此液晶显示模块,实现了友好的中文图形及数字人机界面。
4.6 微型汉字打印机
本系统采用MP-A(D)16-8型打印机,该打印机带有2k字节的数据缓冲区及汉字字库,具有较快的打印汉字和图形的速度;具有丰富的文字修饰功能和方便的接口;带有16 16点阵与12 12点阵及国标一二级汉字库;可方便地打印汉字和德文、法文、英文、日文等文字;可打印全部ASCⅡ字符、数学符号、专用符号、自选符号、点阵曲线及条码等;能同行打印16 16、12 12、8 16、16 8、8 8、6 12点阵汉字或5 7、6 8、8 12、8 16点阵ASCⅡ字符。
5 系统软件设计
5.1 主流程介绍
程序流程见图2,本流程为系统的主流程。程序由汇编语言编程,采用模块化程序设计,调用某一模块时执行其相应的功能,便于修改和维护。设置两个检测单元,主循环中检测此单元的内容是否发生变化,若有变化,说明系统有异常,重新进行初始化设置。软件中,采用冗余技术及看门狗技术,确保程序正确执行。外部中断1完成键盘管理任务,当有键按下时,申请外部中断1中断,执行键盘监控程序;深度脉冲经整形后输入到外部中断0,进行脉冲记数。此时,由I/O口判断辨向脉冲的电平。规定低电平时编码器为正转,高电平时编码器为反转。正转时执行加法程序,反转时执行减法程序。张力信号经V/F变换后,转换为频率信号送入计数器1,完成张力信号的计算。定时器0产生系统的时钟信号 ,设定其为最高中断优先级。
图2 软件实现主流程
图3 键盘管理流程1
图4 键盘管理流程2
图5 键盘管理流程3
图6 键盘管理流程4
5.2 键盘监控流程介绍
图3~图7为系统键盘管理流程图,键盘管理芯片为8279,由外部中断1完成键盘操作程序。该系统共有16个键,6个功能键,10 个数字键。其中,每个功能键均为双功能复合键,各键分别为:K1/K2;角度/打印、记录模式;张力报警/张力增量报警;深度报警/即时深度;当量/速度报警;清零/恢复。K1/K2键为系统的入口键,只有先按此键,才能进入键盘操作,其键值为28H,由标志位K的值来判断是上档键功能还是下档键功能。位K为1时为上档键功能,位K为0时为下档键功能,系统初始化时标志位K清零。 K1模式为上档键功能,对应角度、张力报警、深度报警、当量及清零,键值分别为29H、30H、31H、38H及39H。K2模式为下档键功能,对应打印及记录模式、张力增量报警、即时深度、速度报警及恢复, 键值分别为39H、40H、41H、48H及49H。反复按压K1/K2键,键盘功能在K1模式及K2模式之间来回切换。数字键1、2、3、4、5、6、7、8、9及0的键值分别为01H、09H、11H、19H、21H、00H、08H、10H、18H及20H。键盘中断程序流程见图3~图7。
图7 键盘管理流程5
5.3 深度脉冲采样及张力信号采样流程介绍
由编码器产生的两路正交脉冲信号经CPLD处理后产生辨向脉冲及计数脉冲,分别输入到TMS320VC33处理器的I/O口和外部中断0,完成对编码器旋转方向的判别和对深度脉冲的累计,见图8。
图8 外部中断0中断服务程序流程
定时器0作为系统的公共时钟,产生张力A/D时钟及速度采样时钟。记数器1记录由张力模拟信号经A/D转换后产生的数字信号。定时器0的初始值对应的时间为A/D转换器的采样时间,该定时器启动后做减计数,减为0后产生中断信号。系统转入中断服务子程序,定时器0重新赋予初值,读取记数器1的数值到数据缓冲区,见图9。
图9 定时器T0 中断服务程序
6 结束语
该测量系统经过多次现场使用,测量准确、工作稳定。能可靠地记录下24小时以内的实时测量数据,顺利实现“黑匣子”功能,为用户查找事故原因提供了可靠依据,受到用户的好评。
|