现在的位置: 首页 > 自动控制 > 科技·视野 > 正文

功耗、联网与交互:可穿戴设备操作系统问题解读

2016-05-18 11:16 科技·视野 ⁄ 共 2406字 ⁄ 字号 暂无评论

智能设备包括很多类,有大有小,例如机器人、无人飞行器、IoT物联网设备、智能家居设备、可穿戴设备等等。这些智能设备上的计算中枢和服务器、桌面、平板、手机有着很多不同,各自有各自的特点。在服务器、桌面、手机上,操作系统是成熟的市场,新的操作系统难以获得机会。针对整个智能设备,这个题目有些大,而且也一直觉得,不同类型的东西它对应的操作系统也不见得就可以统一起来。所以这里只拎出其中的一小部分,只叙述可穿戴类设备的操作系统。

可穿戴设备形态包括很多种,例如:手环、手表、眼镜、虚拟现实头盔、体温计、衣服、袜、鞋、帽、戒指、项链、心率带、耳机等。这其中从计算的角度有复杂的也有简单的,简单的如温度计,复杂的如眼镜、虚拟现实头盔等,从目前的应用看,首先它不是一个独立的设备,而一定是一个联网的设备,这个网主要的一个是手机,因为手机太普及,是一个很好的通讯桥梁。

在可穿戴设备中需要考虑的计算问题包括:

  • 功耗问题
  • 联网问题
  • 人机交互
  • 数据采集
  • 体积问题

可穿戴设备操作系统考虑的主要问题是其中的软件问题,所以我们把关注点更多地放在和软件相关的部分,体积不在考虑之列(但体积问题又会极大地限制电池的容量,这样反过来制约了功耗)。按传统说法,操作系统是计算资源管理者,广义来说,操作系统更应该考虑用户的友好性(或者说应用的友好性)。

功耗问题

首先功耗问题关键在于硬件,只有硬件层面的功耗降低,才有可能降低整体功耗,增加设备的使用时间。从电路来说,电路的功耗等于:电压x电流。要想降低功耗,可以降低电压,也可以降低电流。假定电压恒定,我们绘制一幅电流按照时间变化的图,可以得出功耗时:从起点到终点,电流图上的面积。(如果电压也变化怎么办?好吧,绘制一个三维图,然后计算其中的体积)

功耗电流时序图

设备运行时,一般不会让它持续的全力工作(笔记本也有风扇转和不转的时候),这其中包括了CPU、RAM、闪存、传感器、外设、无线通信等。理想的状态是,当这些资源不使用,能够停掉,进入睡眠低耗电模式。这些硬件资源的工作电流(激活工作时及休眠省电时)决定了整机的耗电量。需要注意的是,硬件功耗情况,也和它待机时的底电流密切相关,因为休眠时间可能占据整个时间的90%,休眠低电流是1mA还是100uA,这个差别将直接导致待机时间相差十倍。理想的功耗电流时序图是,大多数时候是待机状态,电流为0uA,工作时电流上升,但最好是仅仅上升成一个非常细的尖峰,时间段一定要短,这样面积也相应的小!

对于操作系统来说,它需要恰到好处的关闭不再使用的硬件,包括CPU/RAM/外设等等。另外也需要着重考虑的是,应用本身的耗电情况。例如微信,5分钟醒来接收一次消息和30秒就收一次消息是完全不一样的。如何有效管理应用的耗电情况是一个十分值得探索的话题。

联网问题

可穿戴设备上低功耗蓝牙(BLE,或Bluetooth Smart)比较流行,因为它能够在连接时保持非常低的电流,激活再行收发数据也非常迅速。不过BLE如果在传输数据量比较大时,就比较尴尬了,目前它的数据传输速度非常有限(有所得必有所失嘛)。其他的连接技术还有,2G/3G、Wi-Fi等,Wi-Fi会比较耗电。这些是数据传输的问题,对于操作系统来说,更需要提供的是设备、手机和云的数据交互便捷性。这部分,JSON作为数据交互消息格式有很强的适应性,不管在手机还是在云端都能够很方便地剥离出其中的有效数据,同时即使是人眼来查看这些数据也具备良好的可读性。

人机交互

有一点很明确的是,可穿戴设备不是PC桌面(办公方式的大屏幕)、手机(便携方式的小屏幕),因为体积的关系,能够提供的只能算微屏幕,或者投影方式(眼镜)。从交互上说,必然是另外一种人机交互方式,不是键盘(Server),不是鼠标(Desktop),也不是手指(Phone)。所以想让Linux用于Desktop,Windows用于Phone,Android用于Wear都有很大挑战性,原有的应用程序并不能够无缝迁移。智能设备操作系统需要新的交互方式,或类似于科幻片中的3D手势交互,或直接的语音智能交互,或脑电波方式的人机思维交互等等,而不再局限于屏幕!也非常有可能,你随身携带的可穿戴设备就是你的交互输入端。

数据采集

可穿戴设备可以想象成另外的触角,把人(或人周边的环境)与计算机网络(大脑)连接起来了,所以数据采集是可穿戴式设备基本功之一。如何采集到数据,并灵活运用起来是可穿戴设备主要考虑的问题之一。提供相应的低功耗传感器框架,并把数据方便地派发到其他的组件(算法,云端)是这类操作系统要重点考虑的问题。

从以上的分析,可穿戴设备操作系统应该具备以下的一些特征:

  • 提供良好的功耗管理,不仅仅包括硬件也应该包括应用的功耗管理;
  • 不局限于屏幕的人机交互方式(屏幕可能仅是提供信息的辅助手段之一);
  • 有效的采集周边数据,并派发到其他组件(算法软件、手机或云端);
  • 便利的联网能力及交互格式。

智能将主要体现在数据上面,可以是第三方定义的算法,也可以是自行进行的算法纬度小调整,而后送到(不同的)计算大脑中,是大脑的一个个触角。

关于智能手表,再多说两句。最近Apple Watch已经发布了,各种体验满天飞,其中最被吐槽的还是它的一天18小时的新设定,这也暴露出目前硬件上当前技术的短板。如果我们向后展望3年、5年,谁也不知道到时的具体情况,也许是电池技术的长足长进,也许是芯片及外围硬件功耗的进一步探低。64位,8核芯片要出现在手表上可能还需要一段时间,手表应该不会是一个计算见长的设备。值得关注的是,ARM新发布的Cortex-M7核心,在200MHz/300MHz时,Coremark分数已经达到了1000/1500的分值,这已经可以媲美Cortex-A8的性能了,但它具备非常好的低功耗特性。

作者介绍:熊谱翔(@午夜熊),RT-Thread创始人,现RT-Thread内核维护人

给我留言

留言无头像?