服务机器人上的安卓系统其实没什么好说的,比较成熟、没有难点,但是它却牵扯着设计资源、影响着系统的稳定性,在工作量上占了一大块,所以简单聊几句。
服务机器人的交互系统目前主要是两种:安卓系统和window系统。window系统主要是办公场景使用,面向比较正式的场合,一般toB场景会用到,因为很多办公软件是在windows上开发的。android系统诞生于手机,很适合娱乐消费型的服务机器人,内容非常丰富,开发资源也很多。
当开发服务机器人产品时,安卓系统这块一般有两种做法(这里的安卓系统包含硬件电路和软件系统):一种是面向toB市场的,大多采购现成的工控机;另外一种是toC的,自己定制开发。
安卓系统给我们带来了很多方便,各种应用软件可以直接从商店下载,丰富了我们的产品体验,开发人员也很多。但是在做机器人时我们不得不面临一个问题:
如果是toB使用安卓工控机,还好一点,我们选择工控机时一定是选择资源满足我们需求的,但大部分情况不会有那么匹配的,见得比较多的情况是usb口、串口不够用,这种情况就得采用usb hub、usb转串这些配件,能解决问题,但是机器人内部走线布局就比较乱,稳定性也会有不确定性。
如果是toC一般就得自己设计安卓系统硬件了,基本上类似于设计个平板电脑、手机,可想而知要做好、做稳定需要投入多少资源。机器人上的安卓系统和手机、平板还有区别,它还需要根据机器人的产品需求加入一些功能,如一些传感器、状态指示灯、控制一些外设等,这些功能需要一同设计到安卓电路板上(当然可以换架构方式),那么就需要调试电路、编写驱动、修改framework、做sdk等,引入很多工作量及不确定性。
但是机器人有很多更重要的环节要做,操作系统应该是基础设施,做机器人产品时不应该在这个环节上费精力与资源。
做服务机器人不应该在安卓系统搭建的环节上投入过多的资源,它虽然重要但不是核心的部分,技术负责人可以尝试从机器人架构、模块化的角度来解决这个问题,以免陷入到安卓系统中。