关键词:虚拟现实仿真 机器人 ARM9 FPGA
Abstract: This paper has analyzed the requirements of the oil well robot simulation and combined the suppositional well database with the oil well logging signal in design to achieve the simulation of the oil well enviornment. The depth signal has been chosen to take as the simulation system drive signal. Through analyzing the simulation system of signal transmission mechanism, the ensemble architecture of the simulation system has been constructed, whose coin is the embedded processor. And the work process of the simulation system has been designed. Based on this, the realization scheme has been proposed about the virtual reality simulation system. The system hardware has also been provided in the paper.
Keyword: Virtual real-time simulation , robot, ARM9 , FPGA
1 前言
测井作业是一个高风险和技术性非常强的野外作业,对设备的操作工程师有非常高的要求,必须进行严格培训,执证上岗。而传统的操作员培训只能采取理论学习和跟井作业见习的方法,培训时间长,效果差。因而开发测井机器人的虚拟仿真系统,实现在室内对地面系统整机进行功能与性能分析,并解决操作工程师的培训问题,使地面系统调试和操作人员能在实验室有身临其境的效果,对测井机器人的推广应用具有十分重要的意义,并具有良好的经济和社会效益。
2 仿真系统工作过程简介
一个测井机器人系统是由地面系统、电缆遥传系统、深度测量系统和下井仪器组成的。地面系统是整个系统的数据处理和控制核心。在操作工程师的操作控制下,地面系统接收由电缆遥传系统送来的下井仪器测量数据和深度系统传来的深度信号,对这些信息进行处理,并显示记录测井的资料和结果。同时操作员的操作指令和系统指令经遥传系统发送到井下仪器,对其进行控制。每项仿真研究都应从所研究系统的说明开始,只有对该系统具有深入的了解,明确需要解决的问题和应达到的目标,并且在这些问题上与决策者取得一致意见,才能为仿真建模与仿真运行提供可靠的基础。实际测井过程中,操作人员控制地面系统,首先配置与所选下井仪器一致的服务表,配置服务表使下井仪器完成初始化,并开始等时测井过程。此时电缆遥传系统与下井仪器均下入油井,在井筒中快速下行。此时每隔一定时间间隔,地面系统的DSP采集模块自动向下井仪器发送采集命令,下井仪器采集一组测井数据并存储,DSP采集模块经一段短暂的固定时间自动向下井仪器发送数据上传命令,下井仪器与遥传系统把存储测井数据回传到地面测井系统。地面系统利用此测井数据判断下井仪器下放是否受阻。当下井仪器下入井底,操作人员控制地面绞车缓慢上提电缆,并操作地面系统开始等深测井过程。在等深测井过程中,每隔一定深度间隔,地面系统的DSP采集模块自动向下井仪器发送采集命令,下井仪器采集一组测井数据并存储,DSP采集模块经一段短暂的固定时间自动向下井仪器发送数据上传命令,下井仪器与遥传系统把存储测井数据回传到地面测井系统。在等深测井过程中,反映地层岩石物性的大量测井数据被地面系统采集处理,得到相应测井结果。
3 系统总体设计方案
测井作业都与实际测井时下井仪器所处的深度有关,所有的测井信号都是该深度的测井信息,因此整个仿真系统都应在深度信号驱动下进行同步。在测井系统中,深度信号由称为“马丁代克”的深度测量装置产生,其原理就是通过测量轮带动光电码盘,光电码盘产生1280/米个脉冲。对此脉冲进行计量,就可得出仪器所处的深度和仪器运动的速度。为此必需设计一个与此深度信号相仿的深度信号产生电路,该电路输出的1280/米深度信号驱动地面系统,同时驱动仿真系统输出虚拟井相应深度的测井信号。地面系统接收的测井信号是由电缆遥传系统经电缆传来的测井信号。各遥传系统都有自己的编码体制,本文所仿真的机器人系统采用的是LDT遥传系统体制,其中包含WTS总线和3506、3508模式。根据以上分析,仿真系统必须具有深度系统和LDT体制的电缆遥传系统接口、虚拟的井下资料数据库,并由一个控制核心进行控制和数据处理。由于测井时除上述测井信号外,还有一些辅助的信号,如电缆张力、磁记号等,故仿真系统的总体结构如图一所示。
图 一 :系统结构框图
不同测井项目有不同的测井数据和组织格式,开始仿真时,地面系统配置服务表,仿真设备接收相应命令,判断为何种测井项目,若存储设备中存储有此种测井项目数据,则选择此测井项目,发送深度信号,并马上进入等时测井工作状态,若无此项目数据,应输出报告,通知操作工程师下载相应数据。下载数据时,操作员需连接通信接口到上位机,并通过上位机把所需数据下载入仿真设备的存储系统。仿真设备判断为测井数据则自动接收,并保存为相应文件。存储设备支持断电保存功能,可长期保存测井数据。
仿真设备进入等时测井工作状态后,操作员即可仿真测井操作。可通过人机交互接口模拟缆车操作,选择测井速度,仿真设备输出相应的深度脉冲信号。深度脉冲输出到地面处理系统,地面系统依据此脉冲发送采集与上传命令,仿真设备按命令发送等时测井数据。到达相应深度后,操作员控制仿真仪器缓慢上提电缆,操作SL-6000型地面处理设备开始等深测井操作,仿真设备接收地面处理系统命令并实时响应,输出仿真测井信号。操作员可由人机交互接口随时改变测井速度,直到地面处理设备停止测井作业。地面系统在仿真信号源的作用下,与实际测井一样,可对数据记录,显示存储,并输出测井结果,其测井资料可与标准资料进行对比,一方面可确定地面处理系统的性能,另一方面可对操作员的操作作出评价。
4 关键模块的实现
4.1控制模块的设计
测井机器人传输的最大数据率为230Kb/s,仿真设备不仅要提供如此的数据量,而且要考虑能同时支持人机交互设备(如显示屏、触摸屏、键盘等)并进行数据存储,这就要求所选控制器的速度、存储器管理单元(MMU)、高速缓存(Cach)、流水线等方面的综合性能达到任务要求。仿真系统的深度脉冲达到计数要求时,需及时产生所有相关的测井信号,如此才能保证测井信号与下井仪器的相应深度协调一致,否则,仿真实验将产生误差,误差过大会导致整个仿真过程的失败,这就要求系统提供很强的实时性保障,给控制模块的选取提出了要求。
选用CPU芯片设计控制模块,费时费力,增加设计难度并延长设计周期。因此设计采用了已有的控制模块ARM通用板卡。ARM通用板卡采用S3C2410X处理器,处理器内部集成ARM920T内核,实现了MMU、五级整数流水线、AMBA总线、Harvard Cach结构,最高频率203MHz,采用低功耗设计,与实时操作系统配合可有效保证系统的实时性能。芯片内部集成了SD卡接口、USB接口、触摸屏接口和LCD控制器等通用外设,极大的减小了外围元件的添加,减小了电路板的面积和设计工作量。另一方面,三星公司提供的资料比较齐全,提供最小系统与基本外设的原理图,有多种外设的测试程序可供参考,给软硬件开发带来方便。调试可使用基于JTAG 的调试系统,不需要在目标系统运行相应程序,就可访问系统状态和内核状态,并可在RAM、ROM程序中设置断点等,调试方便。ARM通用板卡只有普通名片大小,全部采用低功耗器件,大大降低了仪器的功耗、体积,同时给结构设计带来便利。
4.2 通信模块的实现
目前较有竞争力的通信接口包括USB、以太网和1394接口。其中1394接口性能最好,硬件代价高,目前只在高端应用。USB和以太网应用非常普遍,成本低,性能可靠。在选用ARM通用板卡的基础上,可选择的通信方式包括UART(通用异步收发器)、Ethernet(以太网接口)、USB1.1(通用串行总线接口)。UART接口技术简单成熟,性能可靠,但UART控制器性能差。以太网连接具有较高的可靠性,传输速度高达10M、100Mbps,适合大数据量传输,并且通信距离远,普通双绞线的组网方式可以达到150m的连接范围,通过中继则可连接到更远距离,已成为当今互联网络中底层链接不可缺少的部分。此外USB总线具有低成本、兼容性好、功能强大、易于使用、易于扩展、支持即插即用等特点,已被广泛采用,但通信距离不应超过3m。
基于以上分析,仿真设备采用以太网和USB两种通信方式。采用以太网接口便于仿真设备与地面处理系统通信。仿真机器人内部使用10/100M自适应交换机,与主机通信速率为100Mbps,故仿真设备的网络接口也选用了100M的网络控制器DM9000,下载500MB的数据仅需几十秒,速度可以满足要求。DAVICOM公司生产的DM9000网络控制芯片是一款10/100M自适应单芯片以太网控制器,集成了MAC层控制器、PHY层控制器和片内4K dword SRAM缓存器,支持8位、16位、32位微处理器接口,支持MII接口,采用低功耗设计,工作温度范围0~85℃,IO引脚5V耐压,采用了LQFP100的贴片封装。
DM9000具有三种不同的配置模式:默认模式,IO限定引脚模式和EEPROM模式。三种模式的优先级为EEPROM最高,IO引脚模式其次,默认模式最低。EEPROM模式,DM9000的配置信息存储在外部的串行EEPROM里,系统上电复位时,DM9000通过SPI接口,自动将配置信息读出; IO限定引脚模式,DM9000的配置信息(包括总线宽度、IO基址、中断极性等)都由特定引脚的电平决定,在系统上电复位时完成;特定引脚都内置了60KΩ的下拉电阻,默认为低电位,即默认模式。在本课题中,为方便地完成初始化配置过程,选用默认模式,不必使用专用的ROM,降低了设计的复杂度。本设计中采用默认的配置模式,使用16位数据总线,分配地址0x86000000用于访问寻址端口,分配地址0x86000004用于访问数据端口,分配INT9作为DM9000中断输入口,图二给出了DM9000硬件接口电路。
图 二 :DM9000接口示意图
4.3 人机接口模块的实现
人机交互模块需有命令接收和状态显示功能。为了便于操作,设计中没有选择键盘、鼠标等输入方式。旋钮、按钮等操作方式灵活性差,不利于功能扩展,设计中也没有采用。LCD与触摸屏组成的人机接口结构紧凑,性能可靠,是比较合适的选择。S3C2410集成有触摸屏接口和LCD控制器,更大大简化了硬件设计,增强了可靠性,减小了仪器体积。
LCD屏包括定制显示、字符显示、全图显示三种类型,为便于灵活显示选用全图显示LCD屏。集成的LCD控制器支持STN LCD和TFT LCD,支持多种尺寸的LCD屏。考虑LCD性能及设备外形与装配,选用台湾元太公司生产的TFT液晶屏V16C6448AC, 6.4inch,全彩色,可视角度15/35(L/R),55/55(U/D),解析度640×480。触摸屏选择流行的四线电阻式触摸屏,性能可靠,屏的大小也为6.4inch,与LCD屏匹配。
LCD控制器用来发送视频数据并产生必需的控制信号,主要包括REGBANK、LCDCDMA、TIMEGEN、VIDPRCS。REGBANK用来配置控制器,使之与LCD面板相匹配。TIMEGEN 产生LCD控制信号,如VSYNC,HSYNC,VCLK,VDEN等。LCDCDMA为专用DMA,可自动传送帧存储区视频数据到LCD驱动器,不受CPU的干预。VIDPRCS从LCDCDMA接收数据,转变为合适的格式发送到LCD驱动器。
5、总结
本文的创新点是:在设计中,采用以实物为基础实时仿真机制,以ARM9处理器S3C2410和FPGA为核心成功搭建了硬件仿真平台;实现了底层驱动程序与上层软件程序的编写与调试,可进行测井项目的虚拟仿真实验。经过测试,系统能够按照实际机器人的工程作业过程,对地面系统的性能进行全面仿真和模拟。
参考文献:
[1] 马忠梅, 徐英慧.ARM嵌入式处理器结构与应用基础. 北京:航空航天大学出版社
[2]曾繁泰,陈美金著.VHDL程序设计.北京:清华大学出版社,2003
[3] 郝立果,王玉东等, 基于CPLD和MCU网络的服务机器人研究,北京,《微机算计信息》,2005.No.10-2
[4]黄田苗,嵌入式系统设计与实例开发.北京:清华大学出版社,2002