Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3110495
  • 博文数量: 396
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4209
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-04 13:04
文章分类

全部博文(396)

文章存档

2022年(1)

2021年(2)

2020年(8)

2019年(24)

2018年(135)

2017年(158)

2016年(68)

我的朋友

分类: 嵌入式

2018-10-09 14:50:53

Tbox电源模式

当 Tbox 进行电源模式切换时应该通知 CSP。在车辆熄火(ignition off)后 Tbox 有不同的电源模式。在执行远程车辆信息服务时电源模式将对用户体验产生影响。

Tbox 应该支持下面的电源模式:
  • Normal/working
    全功能,Tbox 与 CSP能够主要通过 mqtt 进行通信,如果 mqtt 通道无效,部分高优先级业务应该转到 SMS 通道。
  • Standby
    Tbox 处于低耗能状态,此状态支持 SMS、XCALL、MCU唤醒等。stanby 默认时长为熄火后 10 天。
  • sleep_poll
    在 Sleep 模式下,没有功能。定义一个轮询计划用来周期性唤醒tbox,并检查云端是否有待执行服务请求,与此同时,Tbox 将上报下一次唤醒时间以及一些车辆基本状态信息到 CSP。
    对于处于working模式的Tbox,CSP将仅仅发送MQTT消息。sleep_poll有两个阶段,阶段1持续 5 天,轮询频率周期为 2 hours;阶段2持续 10 天,轮询周期为 4 小时。
  • off
    无功能,无轮询,最小功耗。
Tbox应该通知 CSP 如下信息:
  • 从 stanby / sleep_poll 到 working状态,当进入working状态后,应该通知到CSP。
  • 从 working 到 standby,当离开working 到 standby时,tbox应该通知 CSP 说明其将要进入 standby。
  • 从 stanby 到 Sleep_poll,当离开 standby进入 sleep_poll时,CSP应该被通知下一次被唤醒的时间。
  • 在 sleep_poll时(sleep--polling--sleep...),在polling阶段结束时(在确认 CSP没有待执行服务请求时),CSP应该被通知下一次唤醒的时间。
  • 当进入 off 状态时,CSP应该被通知不再有轮询计划。此状态将在轮询状态结束后进入,或 CarMode 模式改变。对于部分车型来说,当tbox上传 tbox状态(例如电量状态)到csp时,csp收到电量状态后,将检查是否电量过低,如果是,CSP将以告警的形式通知移动 APP。

电源模式状态转换图

事件清单
  • working->standby
    No Telematics Business in past 2 minutes
    && 接收到MCU请求modem进入standby消息

MCU 根据 CAN_bus Sleep && KL 15 Off && USB off 等满足休眠条件后通知 modem 进入 standby。

  • standby->work
    Incoming SMS :modem唤醒后通知二次开发唤醒原因;
    || Incoming Call :modem唤醒后通知二次开发唤醒原因;
    || RTC Timer expired :提供设置/取消RTC接口,RTC唤醒通知唤醒原因;(modem RTC)
    || 或wakeup_in 有上延, mcu消息通知modem进入 working状态

wakeup_in 包含了以下具体事件:
|| BTN pressed :XCALL案件,MCU唤醒;
|| Movement :MCU唤醒;
|| WAN Antenna removal :暂时不做;
|| KL30 removal :MCU处理
|| CAN_bus Normal :MCU硬件唤醒modem
|| KL15 On :MCU硬件唤醒modem
|| USB On (一体机是通过mcu控制hu电源模式,故hu开机时,mcu一定处于working状态,故此时也会唤醒模块,从而使 usb on)

  • stanby->sleep polling
    RTC Timer expired:standby的RTC到期

  • sleep-> working
    MCU拉高模块Power_key引脚,mcu通知模块进入working状态

  • sleep_poll ->sleep
    轮询结束。

  • sleep_poll->working
    此状态转换分为两种情况:

    1. subsleep -> working
      mcu拉高power_key引脚,mcu消息通知切换到working状态
    2. subworking -> working
      mcu 消息通知切换到working状态(此场景是modem处于sleep_polling下的subworking时(通常此时mcu应该处于休眠态),但如果mcu被车辆事件唤醒,虽然modem已经处于working状态,但仍然需要通知modem进入working状态的消息)
      || incoming SMS
      || incoming xcall
      || csp有待执行请求

mcu启动modem流程



作者:penghuster
链接:
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
阅读(2831) | 评论(0) | 转发(0) |
0

上一篇:clock_time

下一篇:linux下openssl编程

给主人留下些什么吧!~~