目录

工业嵌入式移动软件设计

目录

工业嵌入式移动软件设计

工业嵌入式移动应用对比服务器应用,运行的环境差异巨大,对软件设计需要经常考虑的情况有:

  • 有限的存储(持久化与非持久化存储)、CPU资源。

与动辄以G计的服务器,嵌入式的存储一般以Mb计,如果是单版机,则以Kb计。

服务器与桌面的CPU主频为GHz级别,嵌入式的低至MHz级别。

因此,大pool的申请是不可能的,小块的内存也应当得到良好的管理并适时释放。

持久化日志的生成需要谨慎,如果必须生成,需要定期压缩/删除,以免没多久就把空间用尽。

复杂的运算需要考虑是否能放在服务端,而不是嵌入式端。

  • 功耗

一般服务器是不需要考虑这方面的,但嵌入式设备的通常要考虑没有外部电源供电的情况,如车载设备,需要防止把汽车电瓶电耗光。

因此需设计好电源管理及运行模式,一般运行模式有:正常运行、低功耗运行/休眠、关机。每个模式需要控制好相关模块的电源是开/低功耗/关。

  • 网络稳定性

移动设备,一般通过电信运营商的移动网络(3G/4G/5G)接入互联网。与有线网络相比,存在更大的不稳定性。

因此,网络断连情况下数据的缓存、重连机制、重发机制也成为必须考虑的设计要点。虽然有些物联协议(如MQTT),

会部分的提供解决方案,但目前更多还是依赖于开发工程师的设计。

  • 远程升级/空中升级(OTA)

与部署相对有限的服务器应用相比,远程升级也是必须要考虑的,出了问题时才能便捷地解决