中电网移动|移动中电网|高清图滚动区

智能家居基于CortexM3/M0的感知与控制子网设计

引言

在真正的物联网智能家居系统中,不应当再按功能划分为各个独立的抄表网、环境网、电控网、安防网等,而只是按传输接口形式和信息流的走向,融合为感知/控制子网。对于具有多主竞争总线接口的模块(如CAN、ZigBee等),融合为感知/控制子网;而对众多仅具单主总线的RS485模块,则按信息流的流向,融合成循环检测的感知子网和点控的控制子网。NXP CortexM3/M0系列ARM微处理器的优异性能,低廉的价格为这样的设计开发提供了良好的条件。

1 系统体系结构

物联网智能家居系统如图1所示,它实际上是一个分布式测控系统。

它的上层管理网是以太网,用于在广阔的互联网范围内信息共享,其上连接有各种管理、存储及远程控制设备。

它的下层,不再以功能(环境、抄表、安防、电控等)切割分块,而是按信息流走向整合形成感知/控制网。感知网以多主或轮询的方式向上传送信息,而控制网则可采用一主多从方式向下传送控制命令。

在感知/测控网中,按媒体连接型式则有RS485总线网、CAN总线网、ZigBee总线网、WiFi总线网等。

http://6.eewimg.cn/news/uploadfile/2021/0528/20210528085715675.png

连接上、下层的是多个嵌入式通信服务器。通信服务器是智能家居中的核心模块,它在整个智能家居系统中不仅起到了上下信息传递的作用,而且进行数据融合、分类以及安全管理,是感知网的管理主机。

2 嵌入式通信服务器

嵌入式通信服务器是智能家居中的核心模块,选用的是NXP公司CortexM3系列中的LPC1768处理器。LPC1768处理器是一个低功耗,具有强大功能的32位ARM芯片。

LPC1768单片机内部包含有一个功能齐全的10/100 Mbps以太网RMII接口控制器,它可以通过RMII接口(通常简化为媒体独立接口MII)外接一个物理接口收发器(PHY),再接上网络变压器和RJ45接口,就组成了一个完整的以太网通信接口,如图2所示。

http://6.eewimg.cn/news/uploadfile/2021/0528/20210528085716546.png

PHY芯片选用美国国家半导体公司的DP83848,这是10/100 Mbps单路物理层器件功能,用于为LPC1768芯片提供物理层接口。

以太网 MAC,通过RMII 接口与片外PHY 相连。如图2所示,LPC1768的以太网模块使用RMII(简化MII的媒体独立接口)来连接外部PHY 芯片(DP83848)。其中有8根RMII的串行数据总线,还有2根MIIM(媒体独立接口管理)接口管理控制线,从而实现与片外以太网PHY 之间的连接。DP83848的复位信号可以共用LPC1768的复位信号。

以太网RMII 的引脚信号如下:

① ENET_TX_EN为输出发送数据使能;

② ENET_TXD[1:0]为输出发送数据,2 位;

③ ENET_RXD[1:0]为输入接收数据,2 位;

④ ENET_RX_ER为输入接收错误;

⑤ ENET_CRS为输入载波侦听/数据有效;

⑥ ENET_REF_CLK/ENET_RX_CLK为输入参考时钟用于外部PHY的媒体独立接口管理(MIIM)的信号;

⑦ ENET_MDC为输出MIIM 时钟;

⑧ ENET_MDIO为输入/输出MI 数据输入和输出。

DB83848通过TD+、TD-、RD+、RD-经隔离变压器、RJ45口输出,L、R驱动LED,指示输入、输出状态。

3 CAN接口及CAN感知网

在智能家居中采用CAN感知/控制子网,这里面有CAN以太网关、CAN路由器、CAN感知/控制模块。由于CAN以太网关和CAN路由器需要以太网控制器(MAC)和2个CAN控制器,所以CAN以太网关、CAN路由器均由CortexM3的LPC1768来承担,而CAN感知/控制模块则由CortexM0的LPC11C12/24来承担。

3.1 CAN以太网关、CAN路由器

如图3所示,LPC1768内部集成有CAN控制器,外接CAN收发器就构成了嵌入式通信服务器的CAN通信接口,所以能很方便地构成以太CAN网关。又由于LPC1768内部集成有2个CAN控制器,因而它支持2个CAN子网,能很方便地构成CAN路由器。

http://6.eewimg.cn/news/uploadfile/2021/0528/20210528085716829.png

LPC1768的CAN控制器支持控制局域网(CAN),提供了一个完整的CAN 协议(遵循CAN 规范V2.0B)实现方案,因而它能很方便地兼容/混用过去的SJA1000 CAN系统。

3.2 CAN总线感知/控制模块

CAN感知/控制模块均选用基于CortexM0的LPC11C14/24。LPC11C14内部集成有一个CAN控制器,而LPC11C24是在LPC11C14的基础上集成了一个CAN收发器TJF1051。采用LPC11C14/24比过去采用51单片机+TJF1050+SJA1000方式,不仅性能大大提高,而且占用PCB板面积大大减小,芯片材料成本减少了40%。

新旧系统混用最好都采用同样的CAN收发器。由于原CAN系统中CAN收发器芯片采用的是TJF1050,而TJF1051是与TJF1050高度兼容,因而以LPC11C14/24构成的CAN模块和采用51单片机+TJF1050+SJA1000的CAN模块高度兼容/混用。

4 RS485接口及RS485感知网

在原智能家居系统中有不少的感知网采用RS485总线,而且采用的是80C51系列的9位多机通信方式。在新系统中选用CortexM0/M3后,也完全可兼容/混用原系统。LPC11C14的CAN接口如图4所示。

http://6.eewimg.cn/news/uploadfile/2021/0528/20210528085716604.png

4.1 LPC812M101FDH20的感知/控制网从机模块

LPC812M101FDH20是NXP CortexM0系列中的20引脚廉价芯片,它有16K闪存、4K SRAM和3个串口。如图5所示,LPC812M101FDH20通过开关矩阵分配引脚充当U0/U2/U3_TXD、U1/U2/U3_RXD、U1/U2/U3_RTS,连接MAX485即构成了RS485通信接口。在软件中,通过CFG配置寄存器的第3、2位设置成10(9位通信模式),这就成了兼容于MCS51的多机通信方式(即可进行软件地址检测和收发器方向控制的RS485通信)。

http://6.eewimg.cn/news/uploadfile/2021/0528/20210528085716107.png

由于LPC800系列微处理器串口的9位通信方式中的第9位仅能进行奇偶校验设置,不能人为设置1/0(地址/数据),所以它只能在RS485感知/控制网中充当从机。

在充当从机使用中,先要将USART CTRL寄存器第2位(ADDRDET使能地址检测模式)设置为1,这时仅对主机发来的地址数据,产生一个接收数据中断。软件随后便检查接收地址数据,判断是否是本机地址。如果是,则软件会清零ADDRDET位,所有后续输入数据均会被正常接收处理。在一次轮询应答响应完后,再将USART CTRL寄存器第2位(ADDRDET使能地址检测模式)设置为1,等待下次轮询本机。

LPC800的串口由于在设置波特率时,还可使用小数分频器,使其在各种晶振下均能获得精准波特率;同时,它采用3次采样接收,接收数据是3个样本“投票”中的2个,当有 1个样本与其他不同时,会将USART状态寄存器第“15”位设置状态标志(接收噪声中断标志),从而大大降低了误码率。

4.2 LPC1768的感知/控制网主机模块

RS485感知/控制网中的主机通常都是嵌入式通信服务器,所以选用CortexM3系列中的LPC1768作为感知/控制网中的主机。LPC1768虽有4个串口,但只有UART1具有RS485模式。在这个模式中有3个专门用于RS485通信的寄存器(控制寄存器、地址匹配寄存器、延时值寄存器)。

作为主机在轮询发送时,首先要将LPC1768的U1LCR线控制寄存器的1、0位设置成11(8位字符长度,相当于MCS51的9位数据长度含TB8/RB8的通信);再视所发送的是轮询从机的地址还是数据,将U1LCR线控制寄存器第5、4位设成10(将第9奇偶校验位强制为1地址),或设成11(将第9奇偶校验位强制为0数据)。

作为主机在接收时,不再需要对自身地址匹配,所有的数据都必须接收。

通过U1RS485DLY延时值寄存器,可设置发送完最后一个停止位(移出 TXFIFO) 和DTR转为接收信号之间的延时(0~255个波特率时钟周期)。

5 ZigBee及WiFi接口

通过SPI接口,接入CC2530就构成了ZigBee接口。通过SPI接口,接入WiSmart EC32L12 模块就构成了WiFi接口。

结语

采用NXP CortexM3/M0系列微处理器开发物联网智能家居系统,有以下几大优点:

① 新系统的感知/控制网是32位系统,性能得到了极大地提高;
② CortexM3/M0系列ARM微处理器中都有一定的ROM API库,加块了开发速度,也减少了开发成本。
③ 集成度高,并有开关矩阵定义引脚,从而大大提高了硬件的适应性。
④ 智能家居24小时工作不断电,CortexM3/M0微处理器超低功耗设计,使新系统的待机功耗仅为旧系统的20%。

猜你喜欢
中电网移动|移动中电网|频道导航区