一种高同步多传感器I2C并行采集方法与流程

摘要: 本发明一般涉及高同步多传感器i2c并行采集,具体涉及一种高同步多传感器i2c并行采集方法。背景技术:1、多传感器阵列同步数据采集是工业测控、无人机姿态融合、振动...
一种高同步多传感器I2C并行采集方法与流程

本发明一般涉及高同步多传感器i2c并行采集,具体涉及一种高同步多传感器i2c并行采集方法。

背景技术:

1、多传感器阵列同步数据采集是工业测控、无人机姿态融合、振动监测、惯性导航等领域的核心技术环节。随着无人机、机器人和工业物联网对感知精度与实时性要求的持续提升,单个系统中集成的传感器数量不断增加,对多传感器之间采集时序一致性的要求也日趋严苛。

2、目前,绝大多数商用传感器(如加速度计、陀螺仪、磁力计、温湿度传感器、气压传感器等)均采用标准i2c总线接口作为通信方式。标准i2c总线采用共享串行时钟线与串行数据线的架构,所有从设备并联挂接在同一组总线上。然而,将该架构直接应用于大批量多传感器同步采集场景时,主控必须按地址逐一寻址并轮询读取各传感器数据,导致不同通道的采集时刻存在毫秒级甚至数十毫秒的先后偏差,无法满足高精度融合对纳秒级同步的需求;同时要求每字节传输后强制插入ack应答时钟周期,在多通道并行采集场景下,若多个传感器同时尝试在各自sda线上回复ack,由于各通道电气特性不一致,会产生应答信号间的串扰与电平竞争;综上,现有方案在多传感器阵列高同步、高效率、高可靠并行采集方面存在明显技术空白。

技术实现思路

1、鉴于现有技术中的上述缺陷或不足,期望提供一种高同步多传感器i2c并行采集方法。

2、本发明提供一种高同步多传感器i2c并行采集方法,所述i2c总线具有串行时钟线和多个独立设置的串行数据线,主控制器的每一个通用输入输出端口分别引出一条独立的sda走线作为所述串行数据线与一个传感器的sda引脚相连,以使每一所述传感器和主控制器均形成一个独立的通信通道,所述采集方法包括如下步骤:

3、所述主控制器中的共享时钟驱动单元经由串行时钟线输出端向各传感器对应的scl引脚发送数据采集信号,所述数据采集信号为脉宽特征或频率特征经瞬时调制后的特定时钟波形;

4、基于各所述数据采集信号,在各所述传感器对应的外置时序识别电路经由各所述通信通道识别到所述数据采集信号后,在同一时钟边沿同步输出采集启动电平至各自所连接的传感器,驱动所有传感器在同一时刻执行ad采样与数据锁存,得到采样数据;各所述通信通道设定有对应的补偿参数,所述补偿参数用于使全部通信通道的采样数据边沿在后续捕获时对齐至同一时钟窗口;

5、所述主控制器通过每一所述串行数据线接收各所述传感器锁存的采样数据,以使所有串行数据线上的裸数据同步到达主控制器输入端。

6、根据本发明提供的技术方案,所述主控制器中的共享时钟驱动单元自系统上电后,还包括:

7、所述共享时钟驱动单元自系统上电后经由其串行时钟线不间断输出恒定频率的同步节拍信号至各传感器的scl引脚,使所有传感器持续锁定于同一物理时钟基准并处于待命监听状态。

8、根据本发明提供的技术方案,所述特定时钟波形为在所述恒定频率的同步节拍信号中,插入至少一个脉宽压缩至常态脉宽1/3以下的第一特殊时钟周期,或插入至少一个脉宽扩展至常态脉宽2倍的第二特殊时钟周期;

9、所述特定时钟波形的总持续时间小于或者等于所述同步节拍信号的3个完整时钟周期。

10、根据本发明提供的技术方案,所述外置时序识别电路内部预存有与所述特定时钟波形对应的脉宽计数阈值范围或频率计数基准;

11、所述外置时序识别电路实时监测所述串行时钟线上的实际波形,当检测到实际波形的脉宽超出所述脉宽计数阈值范围的上边界或下边界时,或检测到实际波形的频率偏移超出所述频率计数基准的容差范围时,判定为特定时钟波形识别成功,则在同一时钟边沿输出所述采集启动电平;所述采集启动电平为持续一个或多个时钟周期的硬件电平脉冲,直接驱动传感器的使能引脚。

12、根据本发明提供的技术方案,所述主控制器通过每一所述串行数据线接收各所述传感器锁存的采样数据,包括:

13、所述共享时钟驱动单元在发出所述特定时钟波形后,等待预设时间间隔,并在与所述预设时间间隔相邻的首个稳定数据窗口内,直接于同一时钟窗口一次性并行捕获所有所述串行数据线上的裸数据。

14、根据本发明提供的技术方案,所述主控制器配置有与每一通信通道对应的可编程硬件延迟单元,所述补偿参数的确定过程为:

15、所述主控制器通过每一所述通信通道中的可编程硬件延迟单元,向各所述通信通道发送标准校准边沿信号;

16、逐路检测每一路所述通信通道上标准校准边沿信号相对于预设统一串行时钟线时钟捕获边沿的实测相位差;

17、根据各所述通信通道的实测相位差,独立配置每一所述通信通道的补偿参数,以补偿所有所述通信通道在同步捕获裸数据时的时序偏差。

18、根据本发明提供的技术方案,该方法还包括:

19、所述主控制器实时监测各所述通信通道上的电平跳变完整性、信号边沿陡峭度及数据码型合法性,并根据所述电平跳变完整性、信号边沿陡峭度及数据码型合法性,确认每一所述通信通道的通讯状态;

20、当判断任意所述通信通道的通讯状态为故障状态时,则切断该通信通道与主控制器输入端之间的物理连接,并从预置的冗余备用sda通道组中调用一条空闲备用通道,更新通道映射表,将处于所述故障状态的通信通道对应的传感器的输出物理切换至所述空闲备用通道。

21、根据本发明提供的技术方案,所述主控制器在同一个连续时钟窗口内捕获所有串行数据线上的裸数据的同时,以所述恒定频率同步节拍信号作为同源时间基准,瞬时读取当前时间计数值,为当前批次所有通信通道的采样数据绑定统一的时间戳。

22、综上所述,本技术方案具体地公开了一种高同步多传感器i2c并行采集方法,包括:主控制器中的共享时钟驱动单元经由串行时钟线输出端向各传感器对应的scl引脚发送数据采集信号,数据采集信号为脉宽特征或频率特征经瞬时调制后的特定时钟波形;基于各数据采集信号,在各传感器对应的外置时序识别电路经由各通信通道识别到数据采集信号后,在同一时钟边沿同步输出采集启动电平至各自所连接的传感器,驱动所有传感器在同一时刻执行ad采样与数据锁存,得到采样数据;各通信通道设定有对应的补偿参数,补偿参数用于使全部通信通道的采样数据边沿在后续捕获时对齐至同一时钟窗口;主控制器通过每一串行数据线接收各传感器锁存的采样数据,以使所有串行数据线上的裸数据同步到达主控制器输入端。

23、有益效果:本发明通过将串行时钟线重定义为持续不间断输出的全局时钟基准、串行数据线重定义为各传感器向主控单向传输裸数据的独立物理通道,配合时钟波形调制触发与硬件延迟校准,降低全通信通道时序偏差;通过摒弃地址匹配与ack应答、在同一连续时钟窗口内一次性并行捕获全部sda数据,提升采集效率;通过外部参考源锁相校准与数据锁存瞬时硬件绑定同源时钟时间戳,降低全通信通道的时序偏差;通过独立sda物理隔离、并行故障检测与冗余通道无感切换,实现单点故障隔离与系统容错;上述特征协同突破标准i2c“共享总线、串行轮询、必须应答”的固有架构约束,为大批量传感阵列高同步、高效率、高可靠并行采集提供了全新路径。