• OIS、EIS原理


    OIS概念

    光学防抖OIS,全称Optical Image Stabilization,从字面理解就是稳定的光学图像。其工作原理是基于陀螺仪检测并进行位移补偿。即通过镜头内的陀螺仪侦测手机抖动产生的微小移动,然后将信号传至CPU处理,CPU会即刻计算需要补偿的位移量,再根据计算结果移动相机镜片组中的悬浮镜片,以抵消抖动产生的微小位移,从而有效克服因相机振动产生的影像模糊。

    注:OIS可以稳定由于摄影师手抖造成的图像模糊,但它无法补偿由场景运动引起的模糊。

    OIS补偿方式

    OIS的补偿方式分为两种:lens shift和module tilt,如下图所示:

    其中:

    • Lens Shift的位置传感器主要采用Hall Sensor
    • module tilt的位置传感器主要采用Photo-sensor
    • Lens Shift无法进行补偿roll维度的抖动
    • Lens Shift能够补偿的角度相对小一些
    • module tilt相对会增加模组的高度

    补偿原理

    一开始在稳定状态下,物体能够投射到sensor中心位置,但是当发生晃动或者抖动的时候,物体并没有成像在sensor中心,这时就需要OIS进行补偿,改变光路,使其物体重新成像在sensor中心。本文以Lens Shift为例,演示OIS的补偿过程。

    OIS防抖工作原理

    OIS系统组成部分

    OIS的大体俯视图如下所示,其电路主要由四个主要组件组成,分别是Gyro sensor、Hall Sensor、Driver IC和MCU。

    • Gyro sensor

    能够感知手机上的运动或振动,但目前相机模组上不单独安装Gyro Sensor,而是通过SPI来获得手机端Gyro Sensor的数据,可以节省相机模组的空间。(问:为什么用SPI方式传输数据,而不是常用的I2C)

    答:陀螺仪的精度是决定整个系统性能的关键特性,是控制精度的基础。phase delay必须减少到最小,以避免在控制环时序中插入延迟;zero-rate offset必须接近于0,来减少积分误差;输出数据速率必须高于要控制的系统频率的两倍(过采样);测量范围必须保证高达±250dps;速率噪声密度必须非常低才能最大限度地提高信号的精度;功耗在正常模式和待机模式下都必须极低以适应手机。最重要的一点是陀螺仪的角度数据必须快速稳定的发送到MCU中,所以建议使用SPI方式,其能达到6Mbit/sec的速率,比I2C要快。

    • Hall sensor

    感知lens的移动位置。

    • Driver IC

    主要有两个功能:(1)根据控制算法的计算,将Lens(Module)引导到正确的位置;(2)从Hall Sensor中获得有关Lens(Module)的位置信息。

    • MCU

    (1)执行控制算法来矫正相机位移;(2)另外还应进行采集信号的预处理和Hall Sensor校准补偿(由于温漂造成的);(3)与Gyro sensor和Driver进行通信,告知Driver新的参考位置。

    OIS系统计算流程

    (1)由主板的(Gyro和加速计)提供角速度和加速度信息;

    (2)加速度可以得到重力方向信息

    (3)角速度积分后(积分后是角位移?),换算成手机X/Y方向上的位移量;

    (4)为了抵消位移量,计算出期望的Lens X/Y位置的Hall target,传给OIS driver的闭环控制;

    (5)开始闭环控制:计算Hall target和Hall数据的差值,通过PID controller输出到执行器,使Hall数据达到Hall target。

    OIS 执行器的种类和实现原理

    Ball-type OIS 马达:semco 技术主导的 OIS 执行器类型。镶嵌在导槽的滚珠滚动让 Lens
    可动,通过磁石和音圈的相互作用实现 Lens 在 X/Y 方向的位移,抵消手机的位移。优点:
    结构简单、OIS 性能较好, 缺点:serve off 后镜头晃动、滚珠和润滑油在极端气候下影响大。

    SMA OIS 马达:SMA(shape memory alloy)主要由英国 CML、国内某供应商供应,模组
    LG innotek 推动的 OIS 执行器类型。利用 SMA 热敏记忆合金,通过电流控制长度”电流→温
    度→长度“,拉动 Lens 在 bracket 中位移,一般需要一对 SMA 线(2 wires)来控制一个方向。
    优点:结构简单、肩高较低、没有磁性器件(不影响手机的其他器件/多个 AF 模组的情况)
    、容易实现 rotation 控制。缺点:虽然薄但面积较大、成本较高。

    悬丝(弹片)OIS 马达:Apple 主要使用的 OIS 马达。金属丝或者簧片既作供电功能又具
    有弹性,令 Lens 可动,通过磁石和音圈的相互作用实现 Lens 在 X/Y 方向的位移。优点:成
    本低、国产成熟。缺点:结构较大、OIS 性能一般、容易产生镜头 tilt、可靠性风险。

    OIS driver 内部各模块

    简单介绍一下 OIS 内部 各模块
    Orientation: 是 因为 OIS 和 陀螺仪本身 可能存在 XY 轴 互换 因此在 OIS 中 通过
    该模块 对 X Y 作对调。
    GETGRX/Y : 这里是 OIS 最先获取的 陀螺仪的原始数据,但是注意的是 如果存在 XY
    互换,那么经过 Orientation 获取的 GETGRX 的值 实际上 是 陀螺仪的原始 Y 数据。
    Gyro filter : 信号滤波。
    XGG/YGG : Xgain 和 Ygain 数字放大。
    Polarity : 极性翻转 如果存在陀螺仪的 X 方向的正方向 和 对应的是 OIS X 轴的
    负方向,所以需要将 OIS 的 X 轴作一下极性的翻转。
    SRX/Y : 最终通过 OIS 内部 硬件算法处理后 的 OIS 的 X Y 的 位移值 ,最终 OIS
    会根据 这个位移值时时调整 镜头的位置。

    OIS 的 bring up

    ois porting 的主逻辑和 sensor 以及其他 sub device 一样,主要分为三步:

    1. 配置 dtsi 保证上电时序和电压参数正确
    dtsi 的配置不过多追述基本和其他 sub devices 一致,主要注意就是电压的范围设置,
    I2C 的配置这些

    2. 配置 xml,主要是 slave addres,以及各个 mode 下的寄存器设置,简单介绍一下,xml
    里面的主要一些 porting 相关的参数
    0x68
    //ois i2c 地址
    FAST_PLUS
    //ois i2c 速率

    //ois 上电时序


    //ois 下电时序



    // ois init
    //ois enable


    // ois disable

    // ois centeringOn

    // ois disable centeringOn


    0x0000

    0x0000

    0x0000

    0x0000

    2

    1
    122

    上面这一段是 OIS 固件升级传到内核的一些参数;如果该 OIS 的升级流程走的是高通
    的默认的升级 code,则需要和 fae 校对各地址去填写,保证正常升级。

    3. 编译,调试,验证

    这里主要讲一下验证,因为早期 在板子上很难看出来 OIS 的效果,所以我们只需要保
    证 OIS 的上电正常 并且 I2C 通信能通就行。


    如果有 vendor 的 fae 在的话,可以让他们抓一下 打开相机时 OIS I2C 上数据通信,确
    保下的寄存器值正确且下的时序正常。


    如果 vendor 不在的情况下,一般就是加一下 log 打印,一点时确保 OIS 的 config mode
    走对了,二是打印一下对应的寄存器,比如重点的读一下 enable 的寄存器在打开后是
    否使能。

    EIS

  • 相关阅读:
    技术学习方法分享
    npm 设置取消代理
    分布式文件系统对比与选型参考
    汽车零部件制造企业如何选择合适的ESOP电子作业指导书系统
    【金九银十必问面试题】站在架构师角度分析问题,如何解决TCC中的悬挂问题
    Hadoop大数据开发__HBase分布式集群安装部署
    Java_递归
    uboot自定义命令
    Redis6 八:Redis的发布和订阅
    [React]关于React的组件
  • 原文地址:https://blog.csdn.net/weixin_42136255/article/details/133418630