CPS实验教学系统软件体系结构如图10.22所示,包括因特网服务器、物件服务引擎、操作系统、存储管理、电源管理、I/O管理、设备管理和网络管理模块。
图10.22 CPS实验教学系统软件体系结构
1.操作系统
由于系统的资源有限,CPS节点基于多任务操作系统Contiki。Contiki支持IPv4/IPv6通信,提供了uIPv6协议栈,支持TCP/UDP,还提供了线程、定时器、文件系统、I/O管理、网络驱动等功能。Contiki同时提供完整的IP网络和低功率无线电通信机制。
2.因特网服务器
在操作系统Contiki之上构建因特网服务器,管理并存储不同的控制页面,通过访问控制页面可以实现远程用户与CPS节点的交互。
3.物件服务引擎
在操作系统Contiki之上构建物件服务引擎,提供对接入物件的访问控制和数据交换服务的开放式API,基于这些API开发不同的物件服务应用程序,具有可扩展性。服务引擎可以接收来自因特网服务器对物件的控制命令、参数设置和数据交换请求,处理和物件的有线/无线连接控制、数据传输等功能。
如图10.23所示,物件服务引擎将用户请求派发给相应的物件服务应用程序。
图10.23 物件服务引擎请求处理示意图(www.daowen.com)
4.队列结构
为了实现高效率的数据处理和数据交换,在共享RAM中创建两个环形队列,一个队列用于存放用户请求,另一个队列用于存放与物件交换的数据。每一个环形队列的结构如图10.24所示(图中阴影部分为存有数据的区域,非阴影部分为空闲区域)。
图10.24 队列结构
5.双MCU数据处理流程
图10.25说明了用户通过浏览器发送HTTP请求给CPS节点,请求数据交换的处理流程,比如,用户要读取传感器数据、生产加工设备状态等。相反地,用户可以下达控制命令和任务参数给物件,数据处理流程是类似的。
图10.25 用户请求数据处理流程
6.用户访问权限管理
为了CPS的安全性,允许合法的用户访问CPS节点,进而访问所连接物件。可以在CPS节点中存储授权的用户名、密码,甚至存储其固定的IP地址及MAC地址。远程用户访问CPS节点时,要比较用户、密码,只有合法用户才可以通过因特网访问CPS节点。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。