链接:https://www.zhihu.com/question/50247328/answer/212554698
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
摩拜的开锁原理,需要通过整体架构来梳理,分为几个部分:
- 智能车锁通讯控制系统
- 车辆资产管理系统
- 用户订单处理系统
通常的流程如下:
--->业务层:
用户扫码,读取一个匹配设备序列号,用户数据在后台订单系统做一次设备使用授权校验(比如押金余额),没有问题的话,下一步
--->设备层:
通知服务器下发一个开锁信号到车锁控制系统。简单的说就是业务层解决完了,处理开关问题。在以上最难的部分在于处理通讯开关问题,也就是车辆通讯控制系统,也是题主问题中最核心的一个原理需求,解决这部分才是重点。
智能车锁通讯控制系统主要采用的方案:
阶段1:主要使用短信指令,指令解析模块做在车锁控制板上.
这个版本把一串短信用 F32A200F33之类的组合进行,缺点是状态回传成本较高(服务器解析出状态),整个车锁电量,闭合状态等报告都要在空闲(深夜02-04点)回传,一般谈的短信公司接口都不会接特别多,一旦短信接口出现故障,就容易造成大规模瘫痪。此外,不方便做授权回收和车本身地理坐标跟踪。摩拜后面的版本几乎没有用。
阶段2:纯联网模式,通过服务器下发指令
物联网卡的成本很低,比起之前的GPRS+短信有很大的优势。包括各种车辆状态等。而可以获取的信息量更大,大概的机制如下,详细的使用说明可以参考@梅园小生的答案。
在摩拜另外一个开锁问题里面,有人提了摩拜是不是使用蓝牙开锁,答案是NO:
1. 各家手机商(安卓)蓝牙的芯片版本兼容太差,华为能开的话,魅族和小米不一定,何况市场上数十种安卓手机,同样是华为的在不同的版本都有兼容问题,目前的主要原因是因为采购的蓝牙芯片差异太大。
2. 实际测试:为了确认不是技术能力的问题,我在深圳街头测试所有自行车品牌(第一批上线的产品,后来陆续取消了蓝牙),结果如下:
3. 蓝牙锁基本上都需要开启蓝牙权限并建立建立连接,如果按照这个思路做的做法,在轻量级的微信小程序上面就无法使用。
之前深圳街头那些小蓝小鸣单车除了IOS系统外,失败率高达80%对于最终用户来说,锁开得慢没有关系,但是开不了就是要骂街了。而且蓝牙的故障率非常高,在深圳早上上班前,街头的摩拜单车和OFO数量大量减少(其实我不喜欢ofo,纯机械,资产根本无法管理),但是另外两个品牌大量空置,并非品牌知名度问题,而是你们基本开不了,现在第一代蓝牙车基本都被淘汰了。
那为什么开蓝牙的时候,开锁更快?
有人反馈说只要手机有蓝牙开启,开锁的速度会提高,这个不假,但是原理并非使用蓝牙通讯,而是车锁的蓝牙模块探测到周边的蓝牙设备,加快了锁的待机心跳状态(平时待机12秒,而探测到短距蓝牙,压缩到6秒),一来解决耗电(以前故障主要是车锁电池耗尽),二来提高了体验。
摩拜通过智能车锁,真正做到真正的车联网+互联网,后期在管理车辆资产以及数据准确性方面要强不少(ofo现在有多少车存活,主要分布情况和实时数据估计都拿不出来)。相比于OFO机械锁(纯虫族玩法),基于整套智能车锁进行大平台管理,后期的优化更容易。