杨丹青,单兴华,吕妙芳,朱美美
(1.河北汉光重工有限责任公司,河北邯郸 056017;2.河北省双介质动力技术重点实验室,河北邯郸 056017)
显控台集显示终端和操控设备于一体,是重要的舰艇作战设备之一[1-2]。为保证光线较弱环境下的使用,显控台各个交互模块上通常会设有指示灯,而灯光亮度能否有效随环境变化而变化,是影响使用者能否顺利操作显控台的关键因素[3-5]。传统手动调节方式存在操作频繁不便捷的困扰;基于传感器的自动调节方式,因不同使用者对同一亮度值的感觉略有不同,而存在固定化和共性化问题[6-7]。为此该研究提出一种显控台个性化调光系统,该系统基于BP 神经网络构建了个性化调光模型,在实现对显控台各模块自动调光的同时,还能满足不同使用者的个性化需求。
该文采用分层架构[8]设计了一种用于显控台的个性化调光系统,系统架构图如图1 所示。系统通过一系列传感器采集基础数据,通过显控台上的调光旋钮以及系统软件接口采集用户个性化需求,进而利用ARM 架构设计调光控制模块,通过CAN 通信和PWM 脉冲实现自动调光功能,提高调光效率,减少操作频率;基于神经网络构建个性化调光模型,以实现个性化调光功能,提高用户操作显控台的舒适感和体验感;此外系统还设计了用户管理模块,对于登录和使用系统的用户,系统会构建并存储其对应的个性化调光模型,这样当用户再次登录时,系统会自动调用个性化调光模型通过调光控制模块实现对显控台的自动和个性化调光。
图1 系统架构图
该文设计显控台包含电子机箱单元、显示单元、操控单元和数据采集单元,台体各模块及接线关系如图2 所示。具体包含人机接口计算机、显示器、背光键盘、鼠标、指示灯、调光控制模块、USB 接口扩展模块、调光旋钮、温度传感器、照度传感器、湿度传感器、色温传感器。
图2 显控台各模块及接线关系图
随着深度学习的发展,神经网络回归模型在解决预测回归问题方面得到广泛应用且取得了较好的效果[9-10],该文选取应用最广泛的BP(Back Propagation)神经网络构建个性化调光模型。
2.2.1 样本选取
基于照度叠加理论[11]结合先验知识,该文选取了八个影响亮度值的因素,分别为月、日、时、分、温度、照度、湿度和色温,由此构成个性化调光模型的输入变量X={MONTH,DAY,HOUR,MINUTE,S1,S2,S3,S4}。其中每个元素均为集合,每位使用者共采集1 152 条数据(一年12 个月,每个月采集8 天,每天每隔两小时采集一次,共12×8×12 条数据),因此输入变量X是一个1 152×8 的矩阵。个性化调光模型的输出变量为显控台各调光模块的亮度值Y={Q},是一个1 152×1 的矩阵。输入变量X和输出变量Y共同构成了模型的样本数据集D={X,Y},该文按照8∶1∶1的比例将样本数据集分为训练集、验证集和测试集。
2.2.2 样本数据采集及预处理
数据集中的MONTH、DAY、HOUR、MINUTE 由人机接口计算机通过操作系统时间获得,S1、S2、S3、S4数据分别由温度传感器、照度传感器、湿度传感器以及色温传感器通过I2C 通信传输到人机接口计算机而获得,其采样周期不大于500 ms,数据格式均为Float 型。
标签数据集Q由使用者通过调光旋钮根据环境条件手动调节而获得。调光旋钮是一种带支架的旋转式编码器,其结构示意图如图3 所示。
图3 调光旋钮结构示意图
该编码器有两个输出信号A 和B,其原理图如图4 所示,当触点与黄色金属片接触时信号会发生跳变沿,可能是上升沿或下降沿,由A、B 引脚和金属片默认电平状态决定。当编码器旋转一定角度后,A、B 信号会交替出现脉冲,如图4 所示,触点B 在金属片上,因此B 为高电平,触点A 不在金属片上,所以A 为低电平。逆时针旋转编码器时,触点A 比触点B 先接触到金属片,所以A 的高电平超前B 的高电平,而顺时针旋转时触点B 比触点A 先接触到金属片,所以B 先出现高电平,基于该特点,该文从A、B出现脉冲的先后判断旋钮旋转方向,从脉冲个数判断出旋转角度,再将旋转角度转换为对应亮度值,从而构成标签数据集Y。
图4 调光旋钮原理图
文中MONTH 数值范围为1~12,S1、S2、S3、S4数值范围为1~10 000,其范围差异较大。为了使模型加速收敛,选取Min-Max Normalization[12]的方法对输入数据集X的原始数据进行标准化预处理,如式(1)所示。
其中,xmin为样本数据的最小值,xmax为样本数据的最大值。
根据隐藏层节点数经验公式(式(2)),该文设计了8×5×3×1 的BP 神经网络模型,如图5 所示。
图5 个性化调光模型网络结构图
其中,Hnum为隐藏层节点数,Xnum为输入层节点数,Ynum为输出层节点数,α为[1,10]范围内的整数。
模型输入样本数据集X=(xi,j)922×8和标签样本数 据集Y=(yi,j)922×1,并设置模型参数:epoch=1 000,batch_size=50,lr=0.001;输出预测的亮度值以及模型损失值,具体训练过程如下:1)对输入样本数据进行归一化;2)随机初始化隐藏层参数W={w1,w2,w3}和B={b1,b2,b3};3)采用ReLu 激活函数计算各隐藏层输出值,采用均方差MSE 计算模型损失函数;4)采用Adam 算法[13]进行梯度下降,该算法可计算每个参数的自适应学习率,对于稀疏数据集有较好的训练效果。模型训练过程损失值随迭代次数的变化如图6所示。
图6 模型训练过程Cost函数变化图
该模块接收个性化调光模型输出的亮度值,经主控芯片STM32F107VCT6 处理后实现对显控台各模块的个性化调光功能。STM32F107VCT6[14]是一款高性能的互联型产品,集成了各种高性能工业标准接口,可满足个性化调光的需求,且具有电路设计简单,运行稳定性高的优点。
该模块与显控台其他待调光模块的通信关系如图7 所示,文中各模块调光主要通过CAN 通信实现,对指示灯的调光则通过PWM 脉冲直接调节。
图7 自动调光各模块间通信关系图
CAN 通信是国际上应用最广泛的现场总线之一,具有高可靠性和良好的错误检测能力,调光控制模块通过心跳报文间接检测与各模块的通信状态,当该模块通过RS232 通信接收到个性化调光模型输出的预测亮度值后,则通过调光报文将亮度值传输给各待调光模块,进而待调光模块完成自身的亮度调节,其中CAN 通信报文格式如表1 所示。
表1 CAN通信调光报文
个性化调光模型的构建是在Jupyter 平台[15]上采用Python 语言基于Pytorch 库实现的,其运行并存储在显控台的人机接口计算机上;自动调光功能是在Keil 开发平台上采用C 语言基于STM32 库设计实现,运行在调光控制模块中;系统其余部分采用Python 语言实现,运行在人机接口计算机中。系统流程图如图8 所示,其中新用户登录时需要构建个性化调光模型后才能进行个性化调光。
图8 系统流程图
由于个性化调光结果受使用者主观因素影响较大且目前没有统一的评估标准,因此该文采用心理学测量方法,以调查问卷的方式[16],对使用者操作显控台过程中关于调光的体验和感受进行分析,以被试者的自我报告为依据,间接获得系统的评估结果。
为全面评估个性化调光系统的性能,实验共招募了43 位使用者,年龄分布在20~55 岁之间,其中,男士23 位,女士20 位,熟练操作显控台的使用者31位,从未接触过显控台的使用者6 位。针对手动、自动和个性化三种调光方式,实验从操作繁琐度、调光舒适度和延迟度三方面设置测评问题,问题设定及统计结果如表2 所示。使用者通过五个等级的李克特量表[17-19](评分等级从“完全反对”到“完全同意”,对应分数从1 到5)进行评分,为方便后续分析,该文采用一致性原则设置测评问题,即每个问题的评分越高,说明个性化调光系统的性能越好。
表2 测评问卷问题及统计结果
评估实验过程如下:
1)特定环境和条件下,参试者采用手动调节的方式操作显控台三个小时,回答问卷第一个问题;
2)特定环境和条件下,参试者通过自动调节的方式操作显控台三个小时,回答问卷第二、三个问题;
3)特定环境和条件下,参试者通过个性化调节的方式操作显控台三个小时,回答问卷第四、五个问题。
注:1)评估实验前,系统已构建了所有参试者的个性化调光模型;2)三种方式的调光使用的都是同一型号显控台,其中手动调节时,系统禁用了个性化调光模型和调光控制模块,只开放旋钮调光;自动调光时,系统禁用了个性化调光模型。
从表2 的结果可以看出,个性化调光系统可有效减轻使用者的操作频繁度,使得使用者能更好地使用显控台的其他功能,且相比自动调光,个性化调节的亮度值让使用者感到更为舒适,可见系统极大提高了使用者操作显控台的满意度和舒适度。
该文提供了一种应用于显控台的个性化调光设计方案,选用高性能的STM32 芯片,通过CAN 通信和PWM 脉冲,设计调光控制模块,实现自动调光功能;基于BP 神经网络构建个性化调光模型,实现满足用户个性化需求的个性化调光功能。心理学测量评估实验表明,该系统能有效降低手动调光操作的频繁度,解决自动调光存在的调光值固定化和共性化的问题,且极大提高使用者操作显控台的满意度和舒适度,对保证不同环境下使用者顺利操作显控台具有重要意义。