APP下载

支持嵌入式Web服务器的多层级力觉交互仿真

2021-11-17

计算机仿真 2021年7期
关键词:虚拟环境层级嵌入式

余 景

(西安石油大学,陕西 西安 710065)

1 引言

现阶段随着网络信息以及嵌入式系统[1]技术的快速发展,嵌入式接入Internet端口服务器已经在网络服务器中广泛应用,因为其可以运用本身的通用性以及交互性来为嵌入式设备提供新的网络端口,实现网络的远程监控。

多层级力觉交互技术[2]是指在网络中构建一个既模拟又真实的场景,保证操作过程具有良好且真实的环境感受。在虚拟场景构建中,为了打造相对逼真的模拟物理场景,需要把该场景中的全部物体特征反馈给操作者。在交互过程中,所应用的场景信息均是肉眼可见的视觉信息,在此基础上,借助一定的工具对模拟环境进行具体操作,由此来感受该环境带来的反作用力。同时为了加强交互系统整体的真实感,需要结合图显和力觉显示,才能够明显的感受出力觉交互。

力觉交互系统是一个拥有反馈能力的人机交互设备,这个系统还可以让实际运行者对虚拟环境中的物体进行实际操作,以实现感受到物体反作用力[3]的目的。

宋达等人[4]设计一种结合虚拟现实(VR)技术的柔索牵引式力觉交互机器人。首先,根据微重力环境中物体的运动特性设计机器人构型,建立移动平台、驱动单元、人推物体运动过程的动力学模型并进行运动学分析。然后,针对系统冗余驱动及力控制任务,提出一种复合控制策略,即以柔索长度变化为速度控制内环,力的外环控制为力/速混合控制,完成力觉交互研究。

王坤等人[5]提出采用基于位置的流体来模拟刚体工具与流体的交互。该方法在传统光滑粒子动力学算法的基础上进行改进,基于CUDA并行计算平台实时模拟交互过程,并结合力觉交互设备实时输出交互力,完整二者之间的在线交互变化研究。

但是上述两种方法的模拟过程过于复杂,且模拟场景真实性较差。基于此,提出支持嵌入式Web服务器的多层级力觉交互方法,在嵌入式Web服务器的基础上添加离散LOD模型,获取相对应的多层级力觉交互序列号。根据SCP层级映射算法,获得模型的速度参数值以及切换速度,完成力觉交互。

2 嵌入式Web服务器框架设计

通常情况下,嵌入式服务器会将Web引入到控制测试设备中,在拥有相对硬件、软件系统支持的情况下,让该技术变成底层通信协议,形成以Web为中心的网络测试和控制端口设备。该设备的具体执行功能是:网络页面信息发布,其中包括静态与动态信息;提供固定接口,进行有效的检测设备连接。由于这项技术的公共开放性和本身独有的平台特性,在一定程度上会大幅度减少软件系统设计以及维护工作的难度,从根本上提升对连接端口设备的管理能力。

常见的嵌入式系统有Boa、httpd等系统,其中Boa[6]是一个运行在整体系统中的单独服务器,它的特征是小巧便捷,所以更加适合用于嵌入式环境。在Boa运行中,假设有两个用户同一时间内进行访问,那么就会出现其中某一用户必须等待的情况,该服务器会形成一个独立的进程步骤来处理这一情况,因此便会占用少部分的资源,具体的服务器结构如下图1所示。

图1 Web服务器结构图

嵌入式系统运用单片机及以太网控制器作为整个服务器的核心电路。其中采用具有16位的单片机,该单片机同时拥有16个通道、10位模拟数学转换器,它的优点是具有较高的适用性以及更好的系统扩展性。传统嵌入式系统开发选择以太网的目的是完成PC机系统设计,在实际运用中这些组成器件都具有结构复杂且体积过大的缺点。嵌入式Web服务器在一般情况下采用协同式任务处理方式,可以与Microchip TCP/IP协议栈和主应用程序共存。

3 基于速度驱动的力觉渲染

3.1 速度驱动模型构建

根据人们接触某种物体的感觉规律,在人与虚拟环境进行力觉交互的过程中,交互速度和操作人员感觉到的物体特征之间存在必要关系。相关实验证明,当所探测物体平面的曲率取值过高时,探测操作者便会自动降低探测LOD模型[7]的整体速度。

此外,在实际的交互过程中因为具体的交互速度具有明显差异,因此会直接导致计算耗时和复杂程度有所不同。在碰撞检测算法中,用HIPi表示力觉设备点的基本位置,HIPi-1则表示上一次循环时力觉设备点的位置,SCPi-1表示上一次循环时虚拟工具点的位置,那么循环轨迹线段长度就可以定义为li=|HIPi-1HIPi|。用vi描述循环时人机交互的速度,即交互运动设备的运动速度,则循环轨迹线段长度可以表示为

li=T·vi

(1)

其中,T表示循环耗时。

根据上式可得知,轨迹线段的具体长度与运动速度成正比例关系。在交互过程中,操作人员的手速越快,就会出现具体运动轨迹越长的情况,在这其中经过碰撞检测的三角片[8]也会出现迭加,这一情况也间接的让力觉循环耗时变长,从而直接影响交互结果的真实性。

根据上述分析可知,在满足力觉真实性的前提下,虚拟模型可以支撑的整体交互时间与相对模型之间具有一定的关联性,并且可以得知在运行过程中,交互过程用时越短,对应的模型复杂度就会越小,是一种整体呈递减性的函数。在此基础上,依据线性规律可以得知创建LOD模型的基本思想。所以依据下图2,提出基于LOD模型的速度驱动模型,在该模型中层级越小就会越细致,而细致程度会随着具体序列号的提升而逐渐递减。

图2 速度驱动模型

根据上图2可知,图中层级的切换精准度是由不同模型的需求决定的,其中速度参数值则需要根据不同模型的实验来确定。因此需要针对不同层级模型进行交互计算,根据计算结果确认能否满足模型的限制速度阈值条件,从而确定模型的速度参数值以及切换速度。

在实际交互操作中,假设三个层级中前两个层级需要进行切换,其中L0与L1之间的切换速度V01,L1和L2之间的切换速度V12。在应用速度驱动LOD力觉渲染算法的过程中,当速度小于或等于V01时,就会采用相对精细的层级L0,当速度高于V01且小于V12时,将采用中间的层级L1,最后当速度大于等于V12时,则会采用相对较粗糙的层级L2。

在进行力觉交互的过程中,需要先计算出相对交互速度,然后得出目标多层级的序列号,设置对应交互层级从而完成LOD速度驱动模型的构建。

3.2 多层级力觉交互映射算法

在对上述模型进行验证后,发现在层级切换过程中存在明显的振动幅度,因此在对振动原因分析后,在LOD速度切换模型的基础上提出SCP多层级映射算法。振动是由于层级之间的结构误差而导致的,为了解决这一问题,映射算法的整体研究过程如下:

首先如下图所示,在交互速度减缓的时候,虚拟环境中的交互模型需要对其进行切换层级,从力觉渲染[9]的整体过程可以明显看出之前的碰撞结果,并且目前的交互状态也正位于某一碰撞的发生阶段。根据映射来对SCPi进行求解,从而确保多层级力觉交互的连续性,并且消除振动感。

图3 多层级映射图

其次为了可以在实际操作中更明显的指出某一处问题,通过映射交互算法判定映射约束线段[10]和映射约束包围盒单元[11],具体过程分别如下所示:

(2)

(3)

2)映射约束包围盒单元:根据上述映射线段即可将其包围盒单元看做是一个完全相交的哈希单元,如图4所示,在计算出Li上的某一点SCPi时,就要将p1和p2的网格交点进行计算,便可通过网格之间的联系将三角片和p1p2进行交点计算,进一步得出SCPi。

图4 映射约束线段、包围盒单元

在完成上述映射交算法判定的基础上,采用GHOST SDK计算二者的正交函数,具体计算过程如下所示:

选择一条长度为L的约束线段;

依据SCPi和Fi-1来构建映射约束,并且对映射约束包围盒集合进行计算;

对包围盒单元进行探测,寻找具有关联性的三角片,假设有对应关联的三角片,那么将根据具体理论判断是否与映射线段之间有交点,相交则进行记录,不相交则判定包围盒是否结束[12]。

4 力觉交互的稳定性分析

在实际操作力觉交互系统时,需要确保力觉交互设备、构建的虚拟环境以及被动操作者阻抗组合后系统的整体稳定性。在一般的虚拟环境性质下,两个端口系统绝对稳定的理论可以计算出确保系统稳定性的虚拟环境参数范围,则系统的整体混合参数方程为:

(4)

Re(Yep·fh)≥0

(5)

其中,Re(.)表示稳定性函数,Yep表示力觉交互设备和构建的虚拟环境参数值。

在纯质量虚拟环境中,系统针对虚拟环境的模拟能力是根据虚拟环境质量范围来判定的。其中系统绝对稳定的必要条件为:

Yep≥2Ktr-mω2

(6)

其中,Ktr表示稳定参数,m表示稳定干扰系数,ω表示范围指数。

当范围指数ω=0时,上式的右侧将会选取最大值,因此则有:

Yep≥2Ktr

(7)

根据式(7)可以完成系统稳定性的估测。

5 仿真研究

为了验证支持嵌入式Web服务器的多层级力觉交互方法的综合性能,进行对比实验。在实际仿真中,将对多种不同精度的层级进行切换速度的交互实验,经过不同的实验场景来进一步证明复杂程度以及层级(具体是指上述中的三角片数量)、实际操作中层级之间的切换速度以及算法之间的稳定性关系。实验参数设置如表1所示。

表1 实验参数设置

根据表1中的实验参数设置进行仿真验证实验,并将所提方法与基于虚拟现实以及基于位置的交互方法进行对比验证。

5.1 平面滑动探查试验

首先构建出正方形平面,这个平面在坐标系处于xOy平面中,其中心点与坐标原点重合。根据所提出的方法,对交互过程中的稳定性影响以及场景影响的交互速度进行分析。为了得知变量对稳定性的影响因素,实验分为以下部分:

1)在一定程度上对交互实验中的三角片进行数量控制,并且单独分析不同的复杂场景对稳定性的具体影响;

2)在固定三角片数量的场景下,再次研究交互的速度对稳定性的影响。

下列将详细描述本次仿真的结果:

交互场景整体复杂度对稳定性的影响,针对场景三角片数量分别为800与5000两种情况,进行快速(平均速度120mm/s以上)滑动交互,其输出力信号及相对应的速度曲线分别如下图所示。图5(a)中曲线和圆圈分别表示x,y方向的力信号,图5(b)中曲线表示z方向的速度信号。

图5 三角片数量800的力觉曲线、速度曲线

根据图5、图6可以得知,在场景层级数量少的时候,进行相对加速与减速的估测,力觉信号都会很稳定,并且这时的效果是最真实的,但由于此步骤为平面探查实验,所以在图5中横轴与纵轴的方向分力都是0,当交互工具进入自由空间时,z方向的分力也将会是0。反之,当交互层级一直叠加到5000的时候,如图6所示,横轴与纵轴方向变发生了变化,三个方向也同时都发生了力觉改变,这时在实验中操作人员就可以感受到了交互设备的振动感,从而导致不满足于必要的交互条件。

图6 三角片数量5000的速度曲线

5.2 受力分析精准性对比

对力觉交互系统的受力情况进行分析,可以增加操作人员的施力准确性,从而完成精准的力觉交互,因此对比不同方法对力觉交互系统的受力分析精准性是极其重要的。将所提方法与基于虚拟现实以及基于位置的交互方法进行对比验证。受力分析精准性对比结果如图7所示。

图7 受力分析精确性对比

分析图7可知,在实验次数不断增加的情况下,所提方法的受力分析精准程度时钟保持在90%以上,而两种对比方法的受力分析精准性均小于所提方法,两种对比方法的最低受力分析精准性均在60%以下,远低于所提方法。

6 结论

现阶段随着网络信息的快速发展,传统的力觉交互方法已经无法满足现有力觉交互的基本需求,因此提出支持嵌入式Web服务器的多层级力觉交互的方法。在Web服务器的基础上提出一种离散LOD速度驱动模型,然后通过对其模型的计算,获取出对应的目标多层级交互序列号。根据SCP层级映射算法,判定映射约束线段、映射约束包围盒单元,最后针对该算法,进行力觉交互的稳定性分析。仿真实验结果表明,所提方法可以有效解决在力觉交互过程中出现的振动现象,并且具有较高的稳定性与适用性。

猜你喜欢

虚拟环境层级嵌入式
基于IMX6ULL的嵌入式根文件系统构建
科室层级护理质量控制网的实施与探讨
前庭刺激对虚拟环境三维空间定向的影响及与空间能力的相关关系
如何通过虚拟环境有效管理Python第三方库
层级护理模式对血液透析患者的影响
职务职级并行后,科员可以努力到哪个层级
2014—2016贵州英语学考、高考学生认知水平分析
动画广告设计中虚拟环境的构建方法与运用
论高校思想政治教育网络虚拟环境的特征
高校图书馆开展嵌入式信息素质教育的思考