胡铖锟,陈致格,晏 泉,王 晶
(天津工业大学电子与信息工程学院,天津300387)
近年来,随着社会经济、医疗水平与日俱进,全球老龄化人口逐渐增多。国家统计局于2018年初发布的人口数据统计也表明我国65岁及以上的人口约占总人口的11.9%[1]。老年人由于自然的生理老化,会出现比正常人注意力难以集中、反应迟缓等现象,这对他们的自由出行造成很大影响。为满足该特殊群体独立生活的需求,具有康复护理功能的电动轮椅在助老领域广泛应用。
为兼顾残障人士与高龄老人的需求,国内外科研人员对现有的电动轮椅进行了智能化的开发,如Lee等[2]设计了一种融合肌电和头部姿态的轮椅控制系统,识别准确率高,控制效率提高到90%以上;张亚徽等[3]融合脑-机接口(brain-computer interface,BCI)与层级地图信息给出控制指令,使轮椅在复杂的室内环境中实现了半自主导航;吴佳宝等[4]设计了一种头戴视觉追踪装置,使用者能够通过眼睛的转动控制轮椅行进。当前对电动轮椅智能化的研究取得了一定的成果,而且大多是基于改进轮椅的控制方法,相较于传统电动轮椅的手动操纵杆结合按键的模式,一定程度上弥补了老年人手脚不灵活、反应迟缓的缺陷,但较少从轮椅的安全性、舒适性和经济实用等方面做进一步研究。鉴于此,文中考虑使用者在轮椅驾驶时的行为习惯,设计一种智能轮椅控制系统,将坐姿融入轮椅控制当中,采用现场学习训练的方式,使轮椅使用者的学习度更高,以期提高轮椅的安全性。
图1 系统架构框图Fig.1 System frame diagram
智能轮椅系统主要包括坐姿识别部分和运动控制部分,系统框架如图1。图1 中:单片机1 是系统的核心控制器,负责接收坐姿识别部分发送的坐姿类别信息,并根据接收的信息实现轮椅自主避障的运动控制;单片机2负责压力传感器的电压采集,并将压力传感器的电压数据传至树莓派,由树莓派建立分类器的模型。
目前坐姿主要利用机器视觉的技术或力学传感器的方法进行识别[5-6],但由于坐姿识别应用于轮椅在室外受到光线影响大,故文中采用压力传感器对人体分布在靠背和坐垫上的压力数据进行采集。
人体在正常坐姿时,压力分布并不均匀[7],故压力传感器需安装在压力比较敏感的点。测试过程中采用20个FSR402薄膜压力传感器按阵列式均匀分布在座椅表面,如图2。传感器为电阻式传感器,电阻会随压力变化而变化,将其与分压电阻串联,并供以3.30 V 基准电压,故A/D(模拟/数字转换器)采集的分压电阻电压变化可显示压力的变化。对每种坐姿采集20 组数据,每组数据包括20 个压力传感器的电压,当采集完单个压力传感器的10次电压时,对总电压求平均并将其作为最终记录数据,以此降低噪声的影响。
分析每种坐姿下每个压力传感器的电压数据,筛除变化不明显的点并标注,然后将该处的传感器继续移动到其他点进行测量,通过多次实验得出传感器的大致布局,结果如图3。
坐姿识别涉及的多分类问题是机器学习的重要研究领域之一,如机器学习中的支持向量机、逻辑回归、人工神经网络等算法均能实现多分类模型的构建。由于轮椅使用者体征各异,且不同使用者的坐姿习惯不同,为能够在小样本数据的情况下使分类器具有较强的泛化能力,文中采用支持向量机(support vector machine,SVM)作为分类器对小样本进行分类,并引入核函数进行非线性映射处理非线性问题。记输入训练样本集为D,待分类类别数为m,其计算公式为
图2 传感器阵列分布Fig.2 Sensor array distribution
图3 最终压力敏感点布局Fig.3 Final pressure-sensitive point layout
寻找一个能够划分样本类别的最优超平面,其计算公式为
其中:xi为样本集的自变量;yi为对应的目标变量即分类后期望的输出值;W 为平面法向量;b 为偏移量;N为自然数集合;m 为样本;i 为某个样本。当无法用一个超平面划分样本空间时,则用内积函数定义的非线性变换将输入空间变换到一个高维空间,然后在这个空间中求(广义)最优分类面[8]。支持向量机属于有监督学习,即使用的样本集包含标签类别信息数据,而上述方法针对的是二分类问题,样本中的标签类别只有两个,但文中需识别的坐姿有正常、左倾、右倾、前倾、后倾五类。所以需在SVM二分类基础上构建一个多值分类器[9],通过“一类对一类”的基本思想进行构造,即每次只选取其中两类样本输入SVM模型,采用投票计数的方式得到判断结果,对于m 类进行划分,则需m(m-1)/2 个子SVM 模型。通过树莓派利用python scikitlearn机器学习库实现上述SVM多分类器,处理流程如图4。
图4 SVM处理算法流程Fig.4 SVM processing algorithm
1.3.1 激光雷达与超声波传感器信息的获取
对于移动机器人障碍物的检测通常使用机器视觉、激光雷达、红外或超声传感器等方法。激光雷达通过扫描360°的环境状况及记录光脉冲发出到被接收经过的时间,可计算出扫描点的距离与角度信息。超声波传感器的检测原理类似,但其测量波束角较大导致方向性不强、测距不够准确,且无法提供障碍物的边界信息。轮椅在室内外移动环境变化大,依靠单一传感器存在探测盲区,导致避障不准确甚至引发危险。综合考虑性能、经济、技术等因素,文中采用激光雷达与超声波传感器融合对轮椅周围环境进行探测。激光雷达安装在轮椅的左前方距离地面约75 cm处,超声传感器安装在轮椅中部约45 cm处以防止转弯过程中触碰到较低的障碍物。
1.3.2 环境类别的建立
图5 中,将激光雷达扫描角度θ ∈[ ]30°,150° 的范围内设定为轮椅运动前方区域,其他区域设定为左右方,则将轮椅周围环境类别分为8种,如图5。
图5 障碍物方位Fig.5 Position of the barrier
图6 为轮椅运动二维平面图,设轮椅左右轮运动速度为v1,v2,r 为转动半径,ω0,v0为轮椅质心的角速度和线速度[11],L 为轮椅到障碍物的中心距离,则轮椅的质心线速度可以表示为
图6 轮椅运动二维平面图Fig.6 Two-dimensional plane of wheelchair’s motion
利用质心角速度表示右轮运动速度,即
故质心角速度可用左右轮线速度进行表示
由式(3),(5)且结合v0=rω0可得
因此可得转动半径为
轮椅电机驱动器经PID(比例、积分、微分控制器)整定后可认为在Δt 时间内输出功率不变,利用霍尔传感器测得左右轮速度,由式(3)得到轮椅运动线速度v0,而由Δθ=Δtω0可得Δt 时间内轮椅转向角度Δθ。
模糊控制器共有3个输入,即坐姿类别PN、环境类别EN、障碍物距离DN,两个输出,即速度v 以及转向角度θ。控制器结构如图7。
图7 模糊控制器处理过程Fig.7 Process of the fuzzy controller
坐姿类别论域为{0 ,1,2,3,4,5},模糊语言描述为{正常,左倾,右倾,前倾,后倾}。环境类别论域为模{0 ,1,…,6,7},糊语言描述为{无障碍,前方,左方,右方,左前,右前,左右,左右前}。障碍物距离输入的取值范围为连续值[0 ,250 cm/s],经量化因子转化为有限整数域上的取值,得到论域为{0 ,1,…,12} ,并在该论域上划分为5档,模糊语言描述为{近,较近,中,较远,远}。
轮椅速度和转角输出值是连续的,需通过比例因子进行清晰化后输出。轮椅速度取值范围为[0 ,150 cm/s],论域为{0 ,1,…,12} ,划 分 为4 档{0 ,v,2v,3v}。轮椅转角输出范围为[- 90°, +90°],论域为{- 6, -5,…, -1,0,1,…,5,6},划分为{-3θ, -2θ,-θ,0,θ,2θ,3θ} 。
利用文中所述方法制作轮椅实物,并对实物进行相关测试,以验证设计的坐姿传感及自主避障的轮椅控制系统的可行性与准确性。
采用1.1中的传感器布局,采集不同身高体重使用者的坐姿压力数据,利用支持向量机算法拟合多元方程,最终对使用者坐姿进行预测。
3.1.1 传感器空载与使用者正常坐姿时电压的测量
测量无使用者状态下的各传感器电压,传感器用3.30 V 电源供电,无使用者情况下传感器理想电压为3.30 V,使用者在轮椅上的坐姿不同,各传感器电压也将不同。分别测量轮椅空载和使用者在轮椅上正常坐定时各传感器的电压,结果如表1。
由表1可看出,与传感器理想电压3.30 V相比,实际测量的传感器电压存在0~0.4 V 的偏差。这是由于实际电路存在电阻,且实际测量存在不可避免的误差。但这属于正常现象,不影响实际测试。
3.1.2 不同坐姿下传感器电压的测量
使用者在轮椅上保持左倾、右倾、前倾、后倾坐姿,分别测量4种姿态下各传感器的电压,如表2。
测试发现当传感器受到压力时,传感器电压将变小,变化幅度与压力成对数关系。压力传感器分布如图3,理想状态下,使用者左倾时,传感器1~8号电压有所降低。使用者保持正常坐姿时,各传感器压力较均匀。以轮椅坐垫平面为xy平面,两直角边为xy 轴,传感器压力为z 轴,建立空间坐标系,如图8。使用者左倾时各传感器压力的等高线图如图9。从图9可看出:左倾时编号1~8号传感器的电压均明显减小,即传感器所受压力增大,均高于正常坐姿时的压力,符合预期。
表1 空载与使用者正常坐姿的传感器电压,VTab.1 Sensor voltage at no load and user'normal sitting posture,V
表2 使用者不同坐姿下传感器电压,VTab.2 Sensor voltage under different sitting postures of user,V
图8 传感器阵列空间坐标系Fig.8 Sensor array space coordinates system
图9 左倾时传感器压力等高线图Fig.9 Contour map of sensor pressure when leaning to the left
正常、右倾、前倾、后倾4种不同姿态下的传感器压力等高线图如图10。由图10可以看出:正常坐姿时,坐垫前部所受的压力较小,后部较大;右倾坐姿时,轮椅坐垫右半部分传感器电压明显小于左半部分,即坐垫右侧受到压力较大,符合右倾时的受力状态;前倾时,压力主要集中在坐垫前部,等高线图中,后半部分明显高于前半部分,符合预期。
图10 4种不同姿态的传感器压力等高线图Fig.10 Contour map of sensor pressure of four different postures
综上表明,设计的坐姿传感及自主避障的轮椅控制系统采用的传感器布局可对使用者的坐姿信息进行准确采集,利用采集到的坐姿数据可实现坐姿分类。
3.1.3 基于支持向量机的坐姿分类
对某使用者进行坐姿数据采集(每种坐姿采集200次),由1.2知5种坐姿分类需建立10个二分类子SVM模型,每个SVM模型的决策函数如式(8),其中K(xi,x)为第i 个系数对应的超平面映射函数,ai为第i 个超平面函数对应的比例因子,记回归因子为f(x),式中各参数利用树莓派python scikit-learn机器学习库对某使用者的坐姿数据进行训练后可得
3.1.4 分类准确性的验证
使用者在轮椅上作出5 种坐姿中的某种坐姿,利用建立的压力方程式(8)对使用者坐姿进行识别预测,且对预测准确率进行统计,结果如图11。由图11可看出,在200次使用者坐姿测试中,准确率达95%,在进一步测试的过程中准确率逐渐向95%收敛。由此表明,设计的坐姿传感轮椅控制系统可实现坐姿的准确分类。
通过超声波传感器与激光雷达检测轮椅与障碍物之间的距离,并通过模糊控制来实现。
3.2.1 超声波传感器与激光雷达的数据测试
超声波传感器能够探测周围障碍物与轮椅间的距离,将6 个超声波传感器均匀安装于轮椅的底部,如图5。为使障碍物环境类别更接近轮椅实际使用情况,在轮椅左前方与右前方摆放两个椅子充当障碍物进行测试实验。6 个超声波传感器中,左前方与右前方的超声波传感器起主要作用。规定轮椅朝向两障碍物的连线中点直线行进,以轮椅行进路线所在直线、障碍物连线分别为坐标轴,建立如图12所示的几何关系。
记轮椅与障碍物连线中点的距离为L0;轮椅与障碍物1 的距离为L1;轮椅与障碍物2 的距离为L2;将超声波传感器测量得到的L1,L2记为L′1,L′2;以轮椅行进路线为起点,顺时针方向为弧度增量,记障碍物1所在方位与轮椅行进路线的夹角为φ′1,障碍物2为φ′2;激光雷达测量得到的障碍物方位分别记为φ′1,φ′2。轮椅从远处不断靠近障碍物,每隔0.1 m收集1次激光雷达与2个超声波传感器的数据,结果如表3。
图11 使用者坐姿预测准确率Fig.11 Accuracy of the posture prediction
图12 障碍物方位Fig.12 Position of the barrier
表3 超声波传感器与激光雷达的测量结果Tab.3 Measuring results of ultrasonic transducers and the lidar
3.2.2 障碍物方位识别准确性检验
由表3中的数据计算得出理论上的L0,记为L′0,计算两者间偏差,记为ΔL,同时得出轮椅当前的环境类别,记为EN,结果如表4。表4中的结果表明,由激光雷达与超声波传感器测量得到的障碍物方位信息准确度较高,且轮椅系统判别的环境类别EN符合预期,故设计的轮椅系统具有识别障碍物方位的能力。
3.2.3 模糊控制测试
利用3.2.1中的障碍物,测试轮椅系统在坐姿控制与自主避障共同作用下的模糊控制规则。使用者操纵轮椅向障碍物行进,直至轮椅穿过障碍物,记录这一过程中使用者姿态、环境类别、障碍物距离类别与轮椅的行进方向。同时轮椅自主避障功能也将自主调整轮椅行进角度φ,以轮椅行进方向为轴、顺时针为正记录角度结果如表5。
表4 障碍物方位信息Tab.4 Position of the barrier
分析表5 中轮椅的行驶状态与各类别的关系,当轮椅与障碍物之间的距离在安全距离之内时(安全距离可依据使用者需求自行设置,表中设置为0.55 m),如图13 所示,使用者可以利用姿态自由控制轮椅行进。当轮椅行进至安全距离之内,如图14,为确保使用安全,使用者不可完全自由控制轮椅行进,即轮椅检测出某方位有障碍物时,使用者即使作出相应坐姿,也不能驱动轮椅。同时,分析表5中轮椅自主修正φ 可以看出,轮椅在接近障碍物时,会在确保使用者安全的前提下,相应自主调整行进角度,以远离障碍物,实现自主避障功能。
表5 实际运行中轮椅3种类别统计Tab.5 Statistics of the three categories of wheelchair
图13 轮椅正常行驶条件示意图Fig.13 Schematic diagram normal driving condition of wheelchair
图14 轮椅避障示意图Fig.14 Schematic diagram obstacle avoidance of wheelchair
考虑使用者在驾驶轮椅时的安全性与舒适性,设计基于坐姿传感及自主避障的轮椅控制系统,通过采集使用者的坐姿压力对坐姿进行分类,实现坐姿控制,并让使用者进行坐姿准确性测试。结果表明,该轮椅控制系统是一种结合坐姿控制与自主避障的智能轮椅系统,实现了应用坐姿对轮椅方向进行控制,提高了轮椅驾驶的安全性。研究的坐姿识别也可应用于其他压力特征识别领域,为其拓展应用提供了一定参考。