片上中红外波长调制光谱气体传感技术

MEMS 2023-09-28 00:01

光学气体传感器逐渐由体积较大的分立系统向片上集成系统演变,片上集成的光波导气体传感器具有便携、功耗小、无需光路校准等优点。气体分子在中红外波段的吸收系数比近红外大,所以使用片上传感器在中红外波段进行气体检测可以获得更好的性能。在片上传感技术方面,与广泛使用的直接吸收光谱(DAS)技术相比,具有抑制噪声能力的波长调制光谱(WMS)技术很少用于片上波导气体传感器。

据麦姆斯咨询报道,近期,吉林大学电子科学与工程学院集成光电子学国家重点联合实验室和吉林省红外气体传感技术工程研究中心的科研团队在《光学学报》期刊上发表了以“片上中红外波长调制光谱气体传感技术”为主题的文章。该文章第一作者为皮明权,通讯作者为杨悦。

本文主要探究了基于中红外硫系玻璃材料的光波导气体传感器,利用剥离法制备了下包层为氟化镁(MgF₂)、芯层为硫系玻璃的波导,在3291 nm波长处,利用WMS技术,开展了甲烷(CH₄)检测实验。优化了狭缝波导的结构后,在实验结果的基础上,根据实验测试得到的噪声,理论分析了狭缝波导气体传感器结合WMS技术的性能,研究了环境压强和工艺误差对狭缝波导气体传感器性能的影响。本工作为基于WMS的片上气体传感器的设计与制备提供了指导。

梯形光波导甲烷传感器的制备与测试

传感原理

传感波导及系统的示意图如图1(a)所示,系统的主要单元为光源和探测器,传感波导的长度为L。

图1 传感波导结构。(a)传感波导及系统的示意图;(b)梯形波导的截面结构;(c)狭缝波导的截面结构

基于红外吸收光谱的片上气体传感原理遵循朗伯-比尔定律。在WMS技术中,在激光器的驱动信号上叠加高频调制信号,对吸收信号解调并提取二次谐波,二次谐波的幅值反映了气体浓度。仿真WMS传感性能时,需要用到激光器的输出功率和输出波长随驱动电流的变化特性、气体吸收系数随波长的变化特性。详细的仿真方法可以参考先前的报道。

波导结构

波导的下包层为MgF₂,MgF₂在中红外波段中具有较高的透过率,折射率约为1.4。波导的芯层为硫系玻璃,所用的硫系玻璃材料为Ge₂₈Sb₁₂Se₆₀,折射率约为2.6。梯形波导的截面结构如图1(b)所示。波导的制备流程如下:用热蒸发法(IT-302,LJUHV)在硅(Si)衬底上沉积MgF₂薄膜;用剥离法在MgF₂包层上制备Ge₂₈Sb₁₂Se₆₀芯层。波导的上包层为CH₄,目标吸收波长为3291 nm。传感波导的长度为2 cm。波导截面的扫描电子显微镜图像如图2所示,芯层呈现梯形结构,这是由剥离法的特性造成的。使用COMSOL软件进行仿真计算得到γ=8%。在波导上集成了聚二甲基硅氧烷(PDMS)气室用于后续的气体传感实验。

图2 波导截面结构的扫描电子显微镜图像

传感系统

基于WMS的波导气体传感系统图如图3所示。正交锁相放大器的功能由基于LabVIEW的锁相放大器实现。电流驱动器和温度控制器用于驱动带间级联激光器(ICL,Nanoplus,德国)。ICL发射的波长约3291 nm的光,通过反射形准直器(RC08,Thorlabs,美国)耦合到单模氟化铟(InF3)光纤(Le Verre Fluoré,法国)。对波导与单模光纤进行端面耦合,用碲镉汞(MCT)探测器(PVI-4TE-5,VIGO System,波兰)探测波导的输出光。探测器输出的信号由数据采集卡(USB6361,National Instruments,美国)采集,由LabVIEW进行数据处理,得到二次谐波信号。数据采集卡产生叠加正弦波与三角波的信号用于控制电流驱动器,以驱动ICL。气体混合系统(Series 4000,Environics,芬兰)控制纯CH₄和纯氮气的流速,以获得不同体积分数的CH₄气体样品。仿真的纯CH₄在3291 nm波长的吸收光谱如图4所示,光程为1 cm。

图3 基于WMS的波导气体传感器系统图

图4 仿真的纯CH₄的吸收光谱

传感性能

对基于WMS的波导传感器性能进行了分析。将体积分数分别为0、1×10⁻¹、2×10⁻¹、3×10⁻¹和4×10⁻¹的CH₄样品通入PDMS气室。将CH₄样品注入气室之前,将纯N₂通入气室以除去残留的CH₄。图5(a)为CH₄体积分数4×10⁻¹条件下,测得的二次谐波信号。图5(b)为CH₄体积分数从0到4×10⁻¹条件下,二次谐波幅值数据点、相应拟合结果以及仿真的二次谐波幅值数据点。传感器的线性度较高,仿真结果与实验结果吻合较好,表明仿真模型具有较好的准确性,为后续狭缝波导气体传感器的仿真提供了支持。将纯N₂通入气室,此时气体对光没有吸收,测得系统的噪声水平为0.15 mV,之后将根据实验测得的噪声结果进行理论研究。

图5 CH₄传感结果。(a)CH₄体积分数4×10⁻¹下的二次谐波信号;(b)不同甲烷体积分数下的二次谐波幅值、二次谐波幅值拟合结果和仿真的二次谐波幅值

狭缝波导传感器优化与性能模拟

狭缝波导的结构优化

狭缝波导的截面结构如图1(c)所示,狭缝波导在非悬浮结构的波导中具有较大的γ,结构较悬浮波导更加稳定。接下来,研究狭缝波导传感器的性能。设定狭缝波导的下包层为MgF₂,芯层为Ge₂₈Sb₁₂Se₆₀。在优化狭缝波导时,需要使狭缝波导的有效折射率大于MgF₂的折射率(1.36),获取较大的γ,并考虑制备工艺的可行性。γ和波导的TE模式有效折射率随芯层厚度的变化如图6(a)所示,此时狭缝宽度为50 nm,狭缝两侧条形结构的宽度为0.6 μm。γ和波导的有效折射率随芯层厚度的增大而增大,芯层厚度要大于390 nm才能满足导模条件。同时,为了便于狭缝的制备,需要尽可能地减小芯层厚度来降低刻蚀难度,因此芯层厚度取为0.4 μm,芯层厚度可以通过校准热蒸发设备的膜厚仪来保障。γ和波导的TE模式有效折射率随狭缝两侧条形结构的宽度的变化如图6(b)所示,此时狭缝宽度为50 nm,芯层厚度为0.4 μm。γ和波导的有效折射率随狭缝两侧条形结构的宽度的增大而增大,狭缝两侧条形结构的宽度要大于590 nm才能满足导模条件,狭缝两侧条形结构的宽度对γ的影响相对于芯层厚度的影响较小,因此狭缝两侧条形结构的宽度取0.6 μm,狭缝两侧条形结构的宽度可以通过优化光刻和刻蚀的工艺参数得到保障。γ和波导的TE模式有效折射率随狭缝宽度的变化如图6(c)所示,此时狭缝两侧条形结构的宽度为0.6 μm,芯层厚度为0.4 μm。γ和波导的有效折射率随狭缝宽度的增大而减小,狭缝宽度要小于55 nm才能满足导模条件,狭缝宽度太小又会增加制备难度,所以狭缝宽度取50 nm,狭缝宽度可以通过优化光刻和刻蚀的工艺参数得到保障。狭缝宽度为50 nm、芯层厚度为0.4 μm、狭缝两侧条形结构的宽度为0.6 μm时,仿真得到γ=0.42,光场分布见图7(a)的插图。

图6 狭缝波导的优化。(a)γ和波导的TE模式有效折射率随芯层厚度的变化;(b)γ和波导的TE模式有效折射率随狭缝两侧条形结构宽度的变化;(c)γ和波导的TE模式有效折射率随狭缝宽度的变化

图7 狭缝波导的仿真性能结果。(a)不同αWG条件下,2f幅值随L的变化(插图:狭缝波导的光场分布);(b)不同αWG条件下,Cmin随L的变化

狭缝波导传感器的性能模拟

狭缝波导传感器的二次谐波幅值在不同波导损耗αWG条件下随L的变化如图7(a)所示,这里CH₄体积分数C=1×10⁻²。在不同αWG条件下,狭缝波导传感器的Cmin随L的变化如图7(b)所示。可以发现,当αWG=0 dB/cm时,二次谐波幅值随L的增加而线性增大。当αWG=3 dB/cm、长度为Lopt时,狭缝波导的Cmin约为1×10⁻³。所以,当αWG<3 dB/cm时,Cmin才可以小于1×10⁻³,此时不同损耗条件下的Lopt<5 cm。可知,同时制备长度为1 cm、2 cm、3 cm、4 cm和5 cm的波导可以尽可能地使波导长度接近于不同αWG条件下的Lopt,最大限度地避免波导损耗变化带来的影响。此外,进一步减小系统的噪声也可以降低Cmin

环境压强对狭缝波导传感器的影响

环境压强会影响气体分子的吸收系数,以上仿真和实验工作是在常压环境下进行的,之后将理论分析改变环境压强对狭缝波导气体传感器性能的影响。改变气体分子的吸收系数将直接影响二次谐波的幅度。从图7的仿真结果可知,在狭缝波导损耗为3 dB/cm、长度为1 cm、环境压强为1×10⁵ Pa时,仿真的二次谐波幅度为1.81 mV,Cmin为1.1×10⁻³。在环境压强为7×10⁴~1.3×10⁵ Pa的范围内,环境压强对二次谐波的幅度和Cmin的影响如图8所示。随着压强的增大,气体分子的吸收系数减小,导致二次谐波幅度的降低和Cmin的升高,但是在该压强变化范围内,Cmin的变化量小于1.2×10⁻⁵,因此环境压强变化带来的影响可以忽略。

图8 环境压强对二次谐波的幅度和Cmin的影响

工艺误差对狭缝波导传感器的影响

工艺误差会直接影响γ,之后将理论分析工艺误差对狭缝波导气体传感器性能的影响。在狭缝波导损耗为3 dB/cm、长度为1 cm时,工艺误差对狭缝波导传感器的影响如图9所示。芯层厚度的误差和狭缝两侧条形结构的宽度的误差在±0.2 μm范围内时,γ的相对误差分别在±8%和±5%范围内,Cmin在±1×10⁻⁴范围内。狭缝宽度的误差在±5 nm范围内时,γ的相对误差在±2%范围内,Cmin在±7×10⁻⁵范围内。在工艺较成熟的条件下,芯层厚度的误差对传感器性能的影响最大,因此需要通过控制工艺精度来确保芯层厚度的大小。

图9 工艺误差对狭缝波导传感器性能的影响。(a)γ的相对误差和Cmin随芯层厚度的变化;(b)γ的相对误差和Cmin随狭缝两侧条形结构宽度的变化;(c)γ的相对误差和Cmin随狭缝宽度的变化

结论

本文制备了下包层为MgF₂、芯层为Ge₂₈Sb₁₂Se₆₀的光波导CH₄传感器,将WMS技术与片上光波导气体传感器相结合,进行了CH₄传感实验,实验测试得到的二次谐波幅度与仿真结果一致,证明了仿真模型的准确性。根据实验测得的系统噪声结果,研究了狭缝波导CH₄传感器结合WMS技术后的性能,仿真了波导参数对狭缝波导传感器性能的影响,减小αWG、选择合适的波导长度可以增加二次谐波幅值,提升传感器的性能。当αWG<3 dB/cm时,Cmin<1×10⁻³。理论分析了环境压强和工艺误差对狭缝波导气体传感器性能的影响,在狭缝波导损耗为3 dB/cm,长度为1 cm,环境压在7×10⁴~1.3×10⁵ Pa范围内变化时,Cmin的变化量小于1.2×10⁻⁵,环境压强变化带来的影响可以忽略。芯层厚度的误差对传感器性能的影响最大,所以需要确保芯层厚度的大小。本工作为基于WMS的片上气体传感器的设计提供了指导。

这项研究获得国家自然科学基金(62175087、62235016、61960206004、62105118)、吉林省科技发展计划(20230201054GX)和长春市重点研发项目(21ZGN24)的资助和支持。

论文链接:

DOI: 10.3788/AOS231328

延伸阅读:
《气体传感器技术及市场-2022版》
《盛思锐气体传感器SGP40产品分析》
《盛思锐气体传感器SGP30产品分析》

MEMS 中国首家MEMS咨询服务平台——麦姆斯咨询(MEMS Consulting)
评论 (0)
  • 基于单片机的工业级液晶显示控制芯片
    TFT-LCD液晶显示控制芯片RA8889ML3N的优势:
    低功耗及功能强大:这款芯片最大支持分辨率为1366x2048,内置128Mb SDRAM,可为内容显示进行快速刷新,同时内置视频解码单元,支持JPEG/AVI硬解码播放,为普通单片机实现视频播放提供可能。
    支持多种接口:RA8889ML3N支持MCU端的8080/6800 8/16-bit 非同步并列接口和3/4线SPI及IIC串列接口,以及最大驱动1366x800分辨率的TFT LCD。
    显示功能强大:RA8889ML3N提供多段的显示记忆体缓冲区段,支持多图层功能,并提供画中画(PIP)、支持透明度控制与显示旋转镜像等显示功能。
    应用范围广:这款芯片广泛应用于自动化控制设备、电力监测控制、测量检测仪器仪表、电教设备、智能家电、医疗检测设备、车用仪表及工控自动化等领域。
  • 基于单片机的TFT-LCD液晶显示控制芯片选型表
    基于单片机的TFT-LCD液晶显示控制芯片选型表
  • 工业级液晶显示控制芯片RA8889ML3N原理图
    TFT-LCD液晶显示控制芯片RA8889ML3N的优势:
    低功耗及功能强大:这款芯片最大支持分辨率为1366x2048,内置128Mb SDRAM,可为内容显示进行快速刷新,同时内置视频解码单元,支持JPEG/AVI硬解码播放,为普通单片机实现视频播放提供可能。
    支持多种接口:RA8889ML3N支持MCU端的8080/6800 8/16-bit 非同步并列接口和3/4线SPI及IIC串列接口,以及最大驱动1366x800分辨率的TFT LCD。
    显示功能强大:RA8889ML3N提供多段的显示记忆体缓冲区段,支持多图层功能,并提供画中画(PIP)、支持透明度控制与显示旋转镜像等显示功能。
    应用范围广:这款芯片广泛应用于自动化控制设备、电力监测控制、测量检测仪器仪表、电教设备、智能家电、医疗检测设备、车用仪表及工控自动化等领域。
  • CS5511数据手册
    CS5511是一个将DP/eDP输入转换为LVDS信号的桥接芯片,此外,CS5511可以用作在DP/eDP输入到DP/eDP输出场景中桥接芯片
  • XPM52C规格书 65W USB PD 多协议降压芯片
    XPM52C 是一款集成同步开关的降压转换器,支持多种输出快充协议、支持 USB Type-C 和 PD 等多种快充协议,包括 USB Type-C 和 PD 协议,高通 QC2.0/3.0/3.0+,华 为 FCP/SCP/HVSCP,VOOC 2.0/4.0 协议,联发科 PE,三星 AFC,USB BC1.2 DCP 以及 Apple 2.4A 充电规范,为车载充电器、各种快充适配器、智能排插等供电设备提供完 整的解决方案。
  • 13、如何解决直插差模电感的异响问题
    13、如何解决直插差模电感的异响问题
  • CS5511芯片设计原理图
    CS5511的LVDS输出可以配置为在120 Hz时支持高达1920x1080或在100 Hz时支持1920x1200。CS5511 LVDS接口支持单端口和双端口模式。CS5511具有5个配置引脚,可支持32个不同面板分辨率和LVDS工作模式与一个闪光图像的组合。
  • 16、谷景电子贴片电感在智能电梯领域应用取得新进展
    16、谷景电子贴片电感在智能电梯领域应用取得新进展
  • 基于单片机的工业级液晶图形显示控制芯片RA8889ML3N-Datasheet
    TFT-LCD液晶显示控制芯片RA8889ML3N的优势:
    低功耗及功能强大:这款芯片最大支持分辨率为1366x2048,内置128Mb SDRAM,可为内容显示进行快速刷新,同时内置视频解码单元,支持JPEG/AVI硬解码播放,为普通单片机实现视频播放提供可能。
    支持多种接口:RA8889ML3N支持MCU端的8080/6800 8/16-bit 非同步并列接口和3/4线SPI及IIC串列接口,以及最大驱动1366x800分辨率的TFT LCD。
    显示功能强大:RA8889ML3N提供多段的显示记忆体缓冲区段,支持多图层功能,并提供画中画(PIP)、支持透明度控制与显示旋转镜像等显示功能。

    应用范围广:这款芯片广泛应用于自动化控制设备、电力监测控制、测量检测仪器仪表、电教设备、智能家电、医疗检测设备、车用仪表及工控自动化等领域。

    技术咨询与交流:QQ2851189731, 微信13760238805

  • RadarSensors_ARS404-21_cn数据手册​
    RadarSensors_ARS404-21_cn数据手册
  • 浅谈地下污水厂智能照明控制应用

    结合某地下污水厂项目,从结构、系统组成、系统功能、控制要求、场景模式等方面介绍了地下污水厂智能照明控制系统,探索了一套适用于地下污水厂的智能照明控制策略,以确保地下污水厂正常运行的照明需求。

  • [完结11章]技术大牛成长课,从0到1带你手写一个数据库系统
    大家好,今天我将给大家分享关于如何开发一个数据库系统的知识,将从0到1手把手带着一步步去开发这个项目,希望我的分享对大家的学习和工作有所帮助,如果有不足的地方还请大家多多指正。

    一、什么是数据库系统
    数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成 

    二、数据库管理系统的主要功能包括
    数据定义功能:DBMS提供数据定义语言(Data Definition Language,DDL),用户通过它可以方便地对数据库中的对象进行定义
    数据组织、存储和管理:DBMS要分类组织、存储和管理各种数据,包括数据字典、用户数据、数据的存取路径等。
    数据操纵功能:DBMS提-供数据操纵语言(Data Manipulation Language,DML),用户可以使用DML操纵数据,实现对数据库的基本操作,如查询、插入、删除和修改等
    数据库的事务管理和运行管理:数据库在建立、运用和维护时由数据管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用以及发生故障后的系统恢复
    数据库建立和维护功能:数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。

    三、数据库系统结构
    1.1模式(概念模式或逻辑模式)
    定义:数据库中全体数据的逻辑结构特征的描述,是所有用户的公用数据库结构。

    特性:

    一个数据库只有一个模式
    模式与应用程序无关,只是数据的一个框架
    1.2子模式(外模式或用户模式)
    定义:数据库用户所见和使用的局部数据的逻辑结构和特征的描述,是用户所用的数据库结构

    特性:

    子模式是模式的子集
    一个数据库有多个子模式,每个用户至少使用一个子模式
    同一个用户可以使用不同的子模式,每个子模式可为不同的用户所用
    1.3内模式(存储模式)
    定义:是数据物理结构和存储方法的描述。它是整个数据库的最低层结构的表示。

    特性:

    一个数据库只有一个内模式,内模式对用户透明
    一个数据库由多种文件组成,如用户数据文件,索引文件及系统文件
    内模式设计直接影响数据库的性能

    以下是开发流程:
    在idea中构建如下几个子模块工程:
    @PostMapping("/doLogin")
    @ApiOperation(value = "一键注册登录接口", notes = "一键注册登录接口", httpMethod = "POST")
    public GraceJSONResult doLogin(HttpServletRequest request,
                                   HttpServletResponse response,
                                   @RequestBody @Valid RegisterLoginBO registerLoginBO,
                                   BindingResult result);
    验证的字段上方可以写一些相关的注解,系统识别后会自动检查
    RegisterLoginBO.java
    public class RegisterLoginBO {

        @NotBlank(message = "手机号不能为空")
        private String mobile;
        @NotBlank(message = "短信验证码不能为空")
        private String smsCode;

        public String getMobile() {
            return mobile;
        }

        public void setMobile(String mobile) {
            this.mobile = mobile;
        }

        public String getSmsCode() {
            return smsCode;
        }

        public void setSmsCode(String smsCode) {
            this.smsCode = smsCode;
        }

        @Override
        public String toString() {
            return "RegisterLoginBO{" +
                    "mobile='" + mobile + '\'' +
                    ", smsCode='" + smsCode + '\'' +
                    '}';
        }
    }

    如果校验有问题,那么可以直接获得并且放回给前端即可。
    BaseController.java
    /**
     * 验证beanBO中的字段错误信息
     * @param result
     * @return
     */
    public Map<String, String> getErrors(BindingResult result) {
        Map<String, String> map = new HashMap<>();
        List<FieldError> errorList = result.getFieldErrors();
        for (FieldError error : errorList) {
            // 发生验证错误所对应的某一个属性
            String errorField = error.getField();
            // 验证错误的信息
            String errorMsg = error.getDefaultMessage();
            map.put(errorField, errorMsg);
        }
        return map;
    }
    一般来说,admin系统不会有主动注册功能,账号都是分配的,那么默认就会存在一个基本账户,这也是预先通过代码生成用户名和密码的。直接手动生成即可:
    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>

    同理,查询操作也是类似JPA的操作,再继承Repository后直接使用其内置api即可:
    FriendLinkMngControllerApi.java
    @PostMapping("getFriendLinkList")
    @ApiOperation(value = "查询友情链接列表", notes = "查询友情链接列表", httpMethod = "POST")
    public GraceJSONResult getFriendLinkList();
    首先可以在数据库通过写sql脚本实现查询
    SELECT
    c.id as commentId,
    c.father_id as fatherId,
    c.article_id as articleId,
    c.comment_user_id as commentUserId,
    c.comment_user_nickname as commentUserNickname,
    c.content as content,
    c.create_time as createTime,
    f.comment_user_nickname as quoteUserNickname,
    f.content as quoteContent
    FROM
    comments c
    LEFT JOIN
    comments f
    on
    c.father_id = f.id
    WHERE
    c.article_id = '2006117B57WRZGHH'
    order by
    c.create_time
    desc
    目前我们所搭建的eureka是单机单实例的注册中心,如果挂了,那么整个微服务体系完全不可以,这是不应该的,所以为了实现eureka的高可用,我们可以搭建集群。
    在进行集群构建之前,大家先参照目前的eureka再去构建一个一模一样的工程,可以取名为 springcloud-eureka-cluster。
    为集群中各个eureka节点配置host
    eureka:
      instance:
        hostname: eureka-cluster-${port:7001}    # 集群中每个eureka的名字都要唯一
      # 自定义eureka集群中另外的两个端口号
      other-node-port2: ${p2:7002}
      other-node-port3: ${p3:7003}
      client:
    #    register-with-eureka: false
    #    fetch-registry: false
        service-url:
          # 集群中的每个eureka单实例,都需要相互注册到其他的节点,在此填入集群中其他eureka的地址进行相互注册
          defaultZone: http://eureka-cluster-${eureka.other-node-port2}:${eureka.other-node-port2}/eureka/,http://eureka-cluster-${eureka.other-node-port3}:${eureka.other-node-port3}/eureka/
    我们自己测试的时候时间可以设置为10秒内有10次,我认定非法请求,直接限制这个ip访问15秒,15秒后释放。(像有的网站会出现二维码让你扫描通过,或者手机验证码或者人机交互判断你当前是否是人还是机器,因为有可能是爬虫请求)
    开发步骤:
    首先在yml中设置基本参数:
    @Override
    public Object run() throws ZuulException {
        System.out.println("执行【IP黑名单】Zuul过滤器...");

        // 获得上下文对象requestContext
        RequestContext requestContext = RequestContext.getCurrentContext();
        HttpServletRequest request = requestContext.getRequest();

        // 获得ip
        String ip = IPUtil.getRequestIp(request);

        /**
         * 需求:
         * 判断ip在10秒内请求的次数是否超过10次,
         * 如果超过,则限制访问15秒,15秒过后再放行
         */
        final String ipRedisKey = "zuul-ip:" + ip;
        final String ipRedisLimitKey = "zuul-ip-limit:" + ip;

        // 获得剩余的限制时间
        long limitLeftTime = redis.ttl(ipRedisLimitKey);
        // 如果剩余时间还存在,说明这个ip不能访问,继续等待
        if (limitLeftTime > 0) {
            stopRequest(requestContext);
            return null;
        }

        // 在redis中累加ip的请求访问次数
        long requestCounts = redis.increment(ipRedisKey, 1);

        // 从0开始计算请求次数,初期访问为1,则设置过期时间,也就是连续请求的间隔时间
        if (requestCounts == 1) {
            redis.expire(ipRedisKey, timeInterval);
        }

        // 如果还能取得到请求次数,说明用户连续请求的次数落在10秒内
        // 一旦请求次数超过了连续访问的次数,则需要限制这个ip了
        if (requestCounts > continueCounts) {
            // 限制ip访问一段时间
            redis.set(ipRedisLimitKey, ipRedisLimitKey, limitTimes);

            stopRequest(requestContext);
        }

        return null;
    }

    private void stopRequest(RequestContext requestContext){
        // 停止继续向下路由,禁止请求通信
        requestContext.setSendZuulResponse(false);
        requestContext.setResponseStatusCode(200);
        String result = JsonUtils.objectToJson(
                GraceJSONResult.errorCustom(
                        ResponseStatusEnum.SYSTEM_ERROR_BLACK_IP));
        requestContext.setResponseBody(result);
        requestContext.getResponse().setCharacterEncoding("utf-8");
        requestContext.getResponse().setContentType(MediaType.APPLICATION_JSON_VALUE);
    }
    上面这些都是通过不同key要执行多次才能得到结果,一般来说我们会使用es的aggs功能做聚合统计,会更好。
    通过一个脚本来统计男女数量:
    POST http://192.168.1.203:9200/fans/_doc/_search
    {
        "size": 0,
        "query":{
            "match":{
                "writerId":"201116760SMSZT2W"
            }
        },
        "aggs": {
            "counts": {
                "terms": {
                    "field": "sex"
                }
            }
        }
    }

    以下就是数据库系统开发的整个流程讲解,感谢大家的阅读

  • RadarSensors_ARS308-21_cn数据手册
    RadarSensors_ARS308-21_cn数据手册
  • 安科瑞 ASCB1系列智能微型断路器样本
    ASCB1 系列智能微型断路器是安科瑞电气股份有限公司全新推出的智慧用电产品,产品由智能微型断路器与智能网关两部分组成,可用于对用电线路的关键电气因素,如电压、电流、功率、温度、漏电、能耗等进行实时监测,具有远程操控、预警保护、短路保护、电能计量统计、故障定位等功能,应用于户内建筑物及类似场所的工业、商业、民用建筑及基础设施等领域低压终端配电网络。
  • 首个基于Transformer的分割检测+视觉大模型视频课程(附源码+课件)
    众所周知,视觉系统对于理解和推理视觉场景的组成特性至关重要。这个领域的挑战在于对象之间的复杂关系、位置、歧义、以及现实环境中的变化等。作为人类,我们可以很轻松地借助各种模态,包括但不仅限于视觉、语言、声音等来理解和感知这个世界。现如今,随着 Transformer 等关键技术的提出,以往看似独立的各个方向也逐渐紧密地联结到一起,组成了“多模态”的概念。

    多功能
    通过引入灵活的提示引擎,包括点、框、涂鸦 (scribbles)、掩模、文本和另一幅图像的相关区域,实现多功能性;
    可组合
    通过学习联合视觉-语义空间,为视觉和文本提示组合实时查询,实现组合性,如图1所示;
    可交互
    通过结合可学习的记忆提示进行交互,实现通过掩模 引导的交叉注意力保留对话历史信息;
    语义感知
    通过使用文本编码器对文本查询和掩模标签进行编码,实现面向开放词汇分割的语义感知。

    超大规模视觉通用感知模型由超大规模图像、文本主干网络以及多任务兼容解码网络组成,它基于海量的图像和文本数据构成的大规模数据集进行预训练,用于处理多个不同的图像、图像-文本任务。此外,借助知识迁移技术能够实现业务侧小模型部署。

    超大规模视觉通用感知模型面临的挑战:
    (1)网络参数量庞大,通常超十亿参数,训练稳定性、收敛性、过拟合等问题相较于小网络挑战大很多。
    (2)原始数据集包含数十亿异质低质量图片与海量文本,多步训练以利用异质的多模态多任务数据,流程复杂,存在灾难性遗忘,难以定位精度等问题。
    (3)实验成本高,通常需要上千块GPU并行训练数周,需要研究者有敏锐的分析能力和扎实的知识基础。
    (4)工程挑战多,海量数据的吞吐,大型GPU集群上的并行算法,超大参数量模型的内存管理。

    提示工程
    大多数视觉数据集由图像和相应文本标签组成,为了利用视觉语言模型处理视觉数据集,一些工作已经利用了基于模版的提示工程,
    text_descriptions = [f"This is a photo of a {label}" for label in cifar100.classes]  
    text_tokens = clip.tokenize(text_descriptions).cuda()

    除了此类大型视觉语言基础模型外,一些研究工作也致力于开发可以通过视觉输入提示的大型基础模型。例如,最近 META 推出的 SAM 能够执行与类别无关的分割,给定图像和视觉提示(如框、点或蒙版),指定要在图像中分割的内容。这样的模型可以轻松适应特定的下游任务,如医学图像分割、视频对象分割、机器人技术和遥感等

    从模型训练、模型分发、模型商业化,美图体系化地同创作者和开发者共建模型生态:

    (1)模型训练:提供二次训练能力,并持续不断地为创作者提供服务,包括培训、社区和模型创作大赛。

    (2)模型分发:创作者和开发者共建的模型可以在美图的产品内进行分发,在分发过程中持续优化模型。

    (3)模型商业化:行业客户可通过 MiracleVision 的 API 和 SDK 进行商业使用,创作者和开发者通过商业合作获得经济收益。
    通用视觉-语言学习的基础模型
    UNITER:结合了生成(例如掩码语言建模和掩码区域建模)和对比(例如图像文本匹配和单词区域对齐)目标的方法,适用于异构的视觉-语言任务。
    Pixel2Seqv2:将四个核心视觉任务统一为像素到序列的接口,使用编码器-解码器架构进行训练。
    Vision-Language:使用像 BART 或 T5 等预训练的编码器-解码器语言模型来学习不同的计算机视觉任务。
    模型整体结构上,抛弃了CNN,将 BERT 原版的 Transformer 开箱即用地迁移到分类任务上面,在使用大规模训练集的进行训练时,取得了极好的效果。
    同时,在大规模数据集上预训练好的模型,在迁移到中等数据集或小数据集的分类任务上以后,也能取得比CNN更优的性能。
    模型整体结构如下图所示,完全使用原始 BERT 的 Transformer 结构,主要是对图片转换成类似 token 的处理,原文引入了一个 patch 的概念,首先把图像划分为一个个的 patch,然后将 patch 映射成一个 embedding,即图中的 linear projection 层,将输入转换为类似 BERT 的输入结构,然后加上 position embedding,这里的 position 是1D的,最后加上一个learnable classification token 放在序列的前面,classification由 MLP 完成。

    这里我们用 RAM 提取了图像的语义标签,再通过将标签输入到 Grounding-DINO 中进行开放世界检测,最后再通过将检测作为 SAM 的提示分割一切。目前视觉基础大模型可以粗略的归为三类:
    textually prompted models, e.g., contrastive, generative, hybrid, and conversational;
    visually prompted models, e.g., SAM, SegGPT;
    heterogeneous modalities-based models, e.g., ImageBind, Valley.

    CoCa 通过将所有标签简单地视为文本,对 web-scale alt-text 和 annotated images 进行了从头开始端到端的预训练,无缝地统一了表示学习的自然 语言 监督。因此,CoCa 在广泛的下游任务上实现了最先进的性能,零样本传输或最小的任务特定适应, 跨越视觉识别(ImageNet,Kinetics-400/600/700,Moments-in-Time )、跨模式检索(MSCOCO、Flickr30K、MSR-VTT)、 多模式理解(VQA、SNLI-VE、NLVR2)和图像字幕(MSCOCO、NoCaps)。在 ImageNet 分类中,CoCa 获得了 86.3% 的 zero-shot top-1 准确率, frozen encoder and finetune classifier 是 90.6%,finetune encoder 可以到 91.0%。

    截止目前国内外已经发布了许多包括 NLP, CV 和 多模态在内的大规模模型,但是这些模型在应用落地上还是有待进一步探究的,目前应用落地较好的有华为 的盘古,在电网和金融圈都有应用;智源的悟道系列在诗词图文上都有广泛应用,可以帮助学生看图写作,根据文字生成插图等;百度的文心也发布了在金融方 面的应用。但截止目前为止大模型在实际中的应用还不是很理想,大模型发展的初衷是使用一个预训练好的大模型代替一堆小作坊似的根据不同任务训练的小模 型,通过模型蒸馏知识迁移等技术在小模型上使用少量数据集达到超过原来小模型性能的目标。CV 大模型在应用上的一个难点是与实际应用相结合,目前社会中 用的较多的视觉相关的深度学习模型主要包括物体检测,人脸识别以及缺陷检测(部分)相比 NLP 模型在实际中的使用少很多,因此将 CV 模型与实际生产相 结合发现更多的应用场景很关键。另外一个 CV 大模型应用的难点就是如何快速高效的使用蒸馏和知识迁移技术提升下游任务的性能,这两点难题的解决在 CV 大模型的实际应用中都刻不容缓。

    总结起来,将大模型应用于更高分辨率的下游视觉任务具有以下好处:提高感知能力、改善定位精度、提升语义理解、改善细节保留和边缘清晰度、增加鲁棒性和泛化能力,以及推动研究进展。这些好处使得大模型在处理高分辨率图像时能够获得更准确、更细致和更真实的结果。随着深度学习和计算资源的不断发展,我们可以期待更先进的大模型和相关技术的出现,进一步推动计算机视觉在高分辨率图像任务中的应用和突破

  • 非接触精密洁净设备在锂电池领域有广泛的应用,主要用于生产制造过程中的Roll to Roll及sliting工艺、电芯预处理等环节。针对卷板、薄膜、膜片制造工艺中的大宽幅、裁切后边部处理再清洁、除异物、毛刺等需求,非接触精密洁净设备通过高旋轴与特制气嘴的优化排列,可满足现有干燥炉、再复合、精度提升等新工艺中的洁净度要求。具体的应用环节如下:锂电池生产过程中的Roll to Roll工艺和sliting工艺,非接触精密洁净设备通过高精度的洁净环境和控制,保证了锂电池的制造质量和安全性。电芯预处理过
    SHLZ 2023-11-30 11:49 194浏览
  •    本文介绍在ALPS平台上进行SSL测试的内容和方法   什么是SSL SSL全称是Secure Sockets Layer,指安全套接字协议,为基于TCP的应用层协议提供安全连接;SSL介于TCP/IP协议栈的第四层和第五层之间,广泛用于电子商务、网上银行等。 SSL协议有三个版本,其中SSL2.0和3.0曾被广泛使用,其中SSLv3.0自1996提出并得到大规模应用成为了事实上的标准,在2015年才被弃用。1999年,IETF收纳了SSLv3.0并
    信而泰市场部 2023-11-30 15:08 151浏览
  • By Toradex胡珊逢 简介 双屏显示在显示设备中有着广泛的应用,可以面向不同群体展示特定内容。文章接下来将使用 Verdin iMX8M Plus 的 Arm 计算机模块演示如何方便地在 Toradex 的 Linux BSP 上实现在两个屏幕上显示独立的 Qt 应用。 硬件介绍 软件配置 Verdin iMX8M Plus 模块使用 Toradex Multimedia Reference Image V6.4.0 版本,其包含 Qt5.15 相关运行环境。默认系统中已经使
    hai.qin_651820742 2023-12-01 11:53 199浏览
  •        2023年,全球服务器市场开始走低,出货数据双位数的下滑,给整个产业链带来巨大冲击(具体数据如表格)。     中国区服务器市场的IDC数据暂时没有获取,但是可以提供两个新闻供大家参考:  1.新浪财经11/08新闻 浪潮信息前三季业绩双降股价跌52% 应收账款149亿占营收28%存货增四成|浪潮信息_新浪财经_新浪网 (sina.com.cn)(作者:长江商报)   日前
    天涯书生 2023-12-02 13:43 74浏览
  • 前言 在网络部署之后和业务开展之前,运营商迫切希望了解当前网络的性能状态,以便为商业规划和业务推广提供必要的基础数据支持。因此,高可靠性和高精确度的性能测试方法对于运营商评判网络性能的优劣,显得尤为重要,而RFC 2544等传统测试标准已不足于鉴定当今的服务等级协议(SLA)。SLA是服务提供商(如ISP)及其最终用户之间的协议,它规定以太网服务的开通或验证必须进行测量,且必须达到SLA的规范要求。目前,对以太网服务进行测试和故障诊断的最佳选择无疑是ITU-T Y.1564标准。 &
    信而泰市场部 2023-11-30 15:06 114浏览
  • 印刷部分 这本书印刷和普通书籍不太一样,类似笔记本的手写体印刷和笔记的网格,有亲近感和新鲜感内容部分 分为通信工程 ;传感器工程;磁传感器工程;太阳电池功能几大部分通信电路是一种用于传输信息的电子电路,可以用于无线通信、有线通信和网络通信等各种通信系统中。传感器电路则是用于感知和测量环境参数的电路,可以探测光、温度、压力、湿度、运动等各种物理量。在学习通信电路方面,可能会接触到模拟通信电路和数字通信电路。模拟通信电路主要涉及模拟信号的传输和处理,如调制解调、信号放大、滤波等。数字通信电路则涉及数
    陇南有只大花猫 2023-11-30 19:01 286浏览
  • Achronix推出基于FPGA的加速自动语音识别解决方案 提供超低延迟和极低错误率(WER)的实时流式语音转文本解决方案,可同时运行超过1000个并发语音流2023年11月——高性能FPGA芯片和嵌入式FPGA(eFPGA IP)领域的领先企业Achronix半导体公司日前自豪地宣布:正式推出Achronix与Myrtle.ai合作的最新创新——基于Speedster7t FPGA的自动语音识别(ASR)加速方案。这一变革性的解决方案,实现了高精度和快速响应,可将超过1000个并发的实时
    电子科技圈 2023-11-30 11:52 185浏览
  • 听力危机不可不慎,助听器市场的发展概况根据世界卫生组织WHO于2021年所发布的世界听力报告(World report on hearing)统计,全球目前有20%左右的听损人口;其中「轻度」与「中度」听损人口就占了大约15亿人左右。台湾方面,根据2021年卫生福利部统计处的数据显示,台湾则约有12万人有听力损失的问题,其中更有高达56% (约71,543人)确诊为轻度听损。足以看出听力受损问题已逐渐成为全球新兴的健康议题。听力损失的成因及轻重程度因人而异,但无论如何,或多或少都会影响到我们的日
    百佳泰测试实验室 2023-11-30 17:26 174浏览
  • 高低温探针台是一种用于材料科学、物理、化学等领域的实验设备,主要用于在高温和低温环境下对材料进行各种实验和研究。下面是高低温探针台的工作原理。工作原理是将样品放置在加热和冷却组件上,然后使用各种测量仪器对其进行实验和测量。具体来说,其工作流程如下:将样品放置在加热和冷却组件上;启动加热系统,将样品加热到所需的温度;启动制冷系统,将冷却组件降温到所需的温度;通过各种测量仪器对样品进行实验和测量;记录实验数据并进行分析和处理;结束实验后,关闭加热和制冷系统,并解除真空状态,取出样品。总之,高低温探针
    锦正茂科技 2023-12-01 14:50 190浏览
  •     按照 IPC术语,连接盘/Land 是指一块导体,通常用于连接和/或固定元器件的导电部分。    为了增强孔的机械强度,所有的金属化孔或者镀覆孔,在穿过每一层铜箔时,都应该有连接盘,连接盘的形状不限。前面提过的孔环也是连接盘的一种形式。在允许的条件下,孔环和连接盘的尺寸都要尽量大一些。    前面提到过,铜层图案(连接盘)和孔是在不同的工序制作的。由于加工公差的存在,用常见的圆形连接盘和圆孔来说,并不能保证孔和连接盘保持精确的同
    电子知识打边炉 2023-11-30 21:32 227浏览
  • 用了好几年的吹风机坏了,我决定自己把它拆开修理一下。本来我是以为内部是有一定的电路板的,但是当我打开吹风机的外壳,眼前的景象让我大吃一惊。吹风机内部非常简单,就是电机带着风扇吹一个发热电阻丝。第一步,打开开关部分,仔细检查了一下开关,就是一个普通的开关,串联一个二极管,形成了不同的档位,对应不一样的电流,用的时候就是大风和小风。检查完开关后,发现开关没有问题。第二步,打开吹风机电机部分,也是最重要的部分,但是组成也是比较简单的,就是电机在吹风,前面是电阻丝在发热。检查了一下电阻丝,没有断裂的地方
    curton 2023-12-02 17:20 7浏览
  • 作者:Shawn Prestridge,IAR资深现场应用工程师 / 美国FAE团队负责人 安全一直都是一个非常热门的话题,似乎每周都会听到这样的消息:某某公司如何被入侵,数百万用户的数据被泄露。 我们看到这么多的安全问题,部分原因在于我们对待安全的方式:安全性通常被认为是事后考虑的问题,是在开发结束时才添加到设备上的东西。然而,复杂的系统,尤其是嵌入式系统,有一个很大的攻击面,这让攻击者有机可乘,能够在“盔甲”上找到破绽。如果你去研究大部分黑客试图入侵系统的方式,你很快就会发现,在他们的武
    电子科技圈 2023-11-30 14:43 170浏览
  • 在电力系统中,过电压保护器是一种重要的设备,它对电力设备的安全运行具有重要的作用。下面我们来了解一下过电压保护器的基本结构。过电压保护器通常由三个主要部分组成:间隙、非线性元件和触发器。1. 间隙:间隙是过电压保护器的基本结构之一,它是由两个金属电极组成的,通常采用球形或棒形结构。间隙的间距通常在几毫米到几厘米之间,它能够承受一定的电压,并在过电压条件下进行放电。2. 非线性元件:非线性元件是过电压保护器的另一个重要组成部分。它是一种特殊的电阻器,能够在高电压下呈现出非线性的特性。当电压超过一定
    保定众邦电气 2023-11-30 14:49 212浏览
  •    电源连接器的插针遭受损坏的情况非常普遍,这种故障会让连接器的电流传输受到影响,进而影响设备的正常使用,那是什么因素导致电源连接器的插针遭到损坏呢?下面Amass将为您分析其中的原因。   1、应用环境高温 1. 在高温环境下,电源连接器插针易受腐蚀影响,形成氧化层,损失接触压力,甚至可能发生接头烧损情况。对于这种环境,电源连接器需要具备耐高温性能,不仅需满足环境温度要求,还须考虑其在工作状态下的热量散发。  
    艾迈斯电子 2023-11-30 16:33 179浏览
  • 随着汽车电子进入电动化+智能网联的时代,新能源、车联网、智能化、电动化四个领域带来了CAN数据的需求,企业车队管理需要数据,汽车运营需要数据,改装、解码、匹配工具打造需要数据,现在就连简单的LED汽车照明控制,也需要匹配数据。这一切,逃脱不了CAN、LIN、SENT、BSD、MOST各种协议下,不同ECU控制单元在不同年份,不同款式下的数据,可以这么说,在新能源这个前提下,我们要做的工作和要做的事情可能要更为复杂、多变。 前日,我拿出一份13年左右丰田的CAN协议,里边包括车灯控制、车
    lauguo2013 2023-11-30 15:45 159浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦