前言
近年来物联网快速发展,各种标准、技术层出不穷,物联网的应用领域不断拓展,国际数据公司预测,到2020年,全世界联网装置将超过2120亿个,市值将达到万亿美元。技术多样化发展的同时,也为物联网互联互通带来隐患,业界制定统一标准的呼声也越来越高。2016年10月,OCF(Open Connectivity Foundation,开放互联基金会)成立,探索建立物联网统一标准,真正开发一套通用的物联网互联架构,为物联网未来的发展提供了新的思路。
OCF由Linux基金会负责运营,目前包括各种各样的会员,涉及芯片、模块、产品、安全、家电、系统、集成等多方面的物联网厂商,这种跨领域组成的OCF,有助于开发一套通用的物联网互联架构,为未来物联网更加广泛的应用提供了技术保障。
OCF最初的框架来源OIC和AllJoyn开源项目,采用Apache和BSD许可协议。无论是终端产品、应用、服务,通过OCF技术就可以互相通信。OCF是由开放、统一的框架和核心资源组成,让开发者通过其软件开发框架开发各种应用,以便使邻近的系统、应用或设备得以互联互通、控制及共享资源。OCF最终希望打造一个跨平台、接入方式、编程语言的开放软件架构,可以让不同的设备(例如电视、路由器、冰箱、洗衣机、智能照明系统)和其他设备无缝地连接起来,并跨越iOS、Android、Windows、Linux或Mac等不同的操作系统。
本书以当前物联网的发展为背景,总结OCF技术的原理及应用方法。从物联网技术开发方法出发,系统地介绍如何利用OCF技术进行不同系统下的产品研发,继而进行相应的应用。因此,本书面向未来的物联网工业创新与发展,通过OCF软件架构,紧紧跟随技术的发展,为物联网技术的发展提供创新型人才。同时,本书总结了实际科研中的应用技术,不仅包括处理能力较强的各种标准客户端系统应用,也包括能力相对较弱的瘦客户端系统应用,希望对教育教学及工业界有所帮助,起到抛砖引玉的作用。
本书的主要内容包括如下几个方面:物联网的发展概述,主要介绍物联网的产生、架构、技术及发展情况;OCF技术的基本原理,阐述OCF技术框架及核心功能;OCF资源模型,主要描述OCF的资源定义以及资源的操作、功能交互和消息传递方法;OCF的具体开发方法,包括基于Mac、Windows、Linux、Android和Arduino开发的方法,主要描述软件工具、编译方法、实例代码和综合实例。
本书的内容和素材主要来自OCF的官方网站(www.openconnectivity.org)。首先,本书是作者近几年承担的科研成果和教育成果的总结,在此特别感谢林家儒教授的鼎力支持和悉心指导;其次,本书是作者指导的研究生在物联网和智能硬件方面的研究工作及成果的总结,在此特别感谢万昊、谭扬、黄旭新、陈佳丰、王玥等同学的大力协助;再次,OCF联盟为本书提供了第一手资料,在此向联盟的鼎力支持表示感谢;最后,父母妻儿在精神上给予我极大的支持与鼓励,才使得此书得以问世,向他们表示感谢!
本书由北京市教育科学“十二五”规划重点课题(优先关注)、北京市职业教育产教融合专业建设模式研究(ADA15159)资助;同时,本书也由北京邮电大学教育教学改革项目(2017JY04)资助,在此一并表示感谢!
本书内容由浅入深,先系统后实践,技术讲解与实践案例相结合,以满足不同层次人员的需求;同时,本书附有实际开发的软件实现代码,供读者自我学习和自我提高使用。本书可作为大学信息与通信工程及相关领域的高年级本科生及研究生的教材,也可以作为物联网、OCF技术开发人员的技术参考书,还可以为物联网方向的创客提供帮助。
本书主要由李永华编著。此外,李昕烨、陈河泉、李和禹、陈向梅、张秋彤、张国利也参与了部分内容的编写。
由于作者的水平有限,书中难免存在疏漏之处,衷心地希望各位读者多提宝贵意见及具体的整改措施,以便作者进一步修改和完善。
李永华于北京邮电大学
2018年4月