开发心得(1):我眼中的Andriod智能硬件及其开发流程

描述

 

通过总结大大小小多个Andriod智能硬件开发项目,记录了智能硬件产品开发的全流程、智能硬件开发所涉及的技术体系概述的心得,并附上在主板选型、串口通信、屏幕显示、常用外接设备上一些品类的特点和差异,分析了我的开发流程习惯原因,以供交流。

硬件1.Android智能硬件的定义与应用领域

关于智能硬件的定义,以我理解的角度来看,首先这是一个不同于移动手机的硬件,它本质还是一个可触碰的实质物体;其次关于智能,只要是基于Android系统开发的硬件就可称之为智能,因为智能硬件最关键的特性就是与外部连接通信,也称之为物联网,而Android系统自带优秀的外部连接通信体系。

 

我们最常听到与见到的智能硬件有手环、智能音箱、智能家居这些比较成熟的消费级商品,这些智能硬件大部分都是没有界面的,与我从事的领域有所不同。没有界面的智能硬件大部分都不是Andriod系统,而有触屏界面的智能硬件我敢说80%以上都是Android系统,因为Android的交互体系绝对是最好的。

 

市面上成熟的Android智能硬件有:手持POS机、自动售货机、政务自助机、人脸识别门禁、收银机、汽车多媒体、电子班牌、快递柜、影院取票机、广告视频机等等。

硬件2.一款智能硬件产品开发的全流程

导入需求,分析确定需求细节,讨论方案的技术可行性。

确定项目负责人、产品经理、硬件工程师、软件工程师、结构工程师、UI设计师。

由需求确定使用哪些外设,对外设进行选型,需充分考虑性能、质量、结构设计、价格、供应商支持度等各方面的因素。

优先确认使用什么Android主板,确认主板与外设选型后告知结构工程师进行结构外形设计。

硬件工程师负责外接设备的控制板开发并提供接入协议,硬件工程师还须将外设接入Android主板的线材适配好。

UI设计师提供界面给软件工程师(Android),开始进入进行软件开发阶段。

产品样品建模制作出外壳,打磨、喷漆后进行所有元件的组装。

样品烧入程序,开始交予测试。

程序bug修改,稳定性测试。

所有测试通过后,撰写用户文档与操作手册。

一款智能硬件样品全部制作完毕。

 

硬件3.智能硬件开发所涉及的技术体系概述

Android UI

列表(RecycleView)

弹窗(Dialog)

动画(Animation)

文字与按钮(TextView)

手势(Gesture)

 

外部通信

串口通信(UART)

以太网

Wifi、热点

4G

蓝牙

USB

NFC

I2C

GPIO

 

存储

TF卡

U盘

FTP

 

Linux系统

脚本

点亮屏幕

固件升级

 

NDK

音视频播放

设备通讯协议加密

接入已有的C库

语音识别

人脸识别

 

外接设备

二维码

摄像头

红外感应器

喇叭、麦克风

触摸屏

LCD液晶屏

打印机

NFC模块

IC类读卡器

硬件4.关于主板选型

Android主板的选型一定要放在首位,因为这是整个产品的控制中心,核心元件,如果不能自己定制主板,那就只能依赖于供应商提供方案。现行市面上非常多做安卓工业主板的,不愁找不到主板,但想要很特殊的定制可能会比较麻烦,除非你的量很大,否则只能用人家的标准板。依赖供应商还有一个特别麻烦的事情,就是系统功能定制的沟通,这是一个特别漫长而痛苦的过程。

 

4.1 Anroid系统在智能硬件中所必要的功能

结合多个项目的经验,总结出智能硬件在安卓系统中所基本必要的功能。

硬件

 

4.2 主板CPU芯片的选择

CPU芯片是一块主板最核心的元件,对于智能硬件而言CPU价格是不能太高的,不然会导致产品成本过高竞争力下降,但CPU性能又不能太差以让产品毫无竞争力可言。

从我观察的情况来看,现在市面上的智能硬件基本是三家芯片厂商占据了绝大部分市场,它们分别是:

瑞芯微 Rockchip,简称RK

全志 AllWinner

飞思卡尔 FreeScale

 

瑞芯微是我接触比较多的,在百度搜安卓主板出来的广告厂商基本都是采用瑞芯微方案的,总体来说瑞芯微方案是最成熟的。

 

全志的安卓主板给我的感觉就是很便宜但系统都是4.2或4.4,说实话有点落后时代,不是5.0系统以上的主板我都不想碰,界面太丑系统还有点卡。

 

最后关于飞思卡尔,这是一个国外厂商,我手上还没接触过这个芯片的板子,很少见搭载这个芯片的安卓主板,也许在某些特定应用场景才会考虑这个芯片吧。

 

下面重点介绍下瑞芯微(下面简称RK芯片)系列4款常见的芯片。

硬件

 

以疫情之前的价格来说,RK3288工业主板的价格大概在350~500 之间,RK3399价格在500~700之间,RK3188比3288便宜,RK3368介于3288与3399之间。

 

对于绝大多数应用场景而言,RK3288绝对能满足需求,价格也比较适中,系统一般是Android5.1不用进行运行时权限适配。RK3399主要用于对于运算能力要求比较高的场景,比如人脸识别,3399还有一大优势就是板子面积相对而言比较小。我目前基本都是采用3288进行开发的,对于智能硬件而言成本还是首要考虑因素,毕竟制造业利润低。

 

下图是一块3288的主板示意图及规格说明

硬件

 

硬件


 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分