基于ARM及GPRS智能家居控制器的软硬件实现
GPRS通信模块安装在智能家居控制器中,主要功能为通过GPRS网络连接到Internet网络,并主动与监控中心建立通信链路,进行双向数据通信。GPRS通信模块设计采用了Freescale公司生产的内嵌TCP/IP协议的G24GPRSOEM。该模块尺寸小,功耗低,便于集成。
GPRS通信终端收发模块主要由G24模块、天线、SIM卡、相关的电平转换电路和RS232串口组成。模块的供电电压为5V,可采用USB端口供电。GPRS通信模块通过RS232串行口与智能家居控制器ARM进行通信。
G24收发模块采用AT指令操作,通过RS232串行口进行数据通信。GPRS网络通信原理为:首先通过SGSN节点使通信终端模块附在GPRS网络上;然后通过GGSN节点由PPP(PointtoPointProtocol)协议获得一个随机分配的IP地址,连接到Internet上;最后通信终端模块通过Internet,按照监控中心设定的端口号与监控中心建立通信链路。
(1)测试G24通信是否正常。首先选择串行口并设置波特率,G24波特率的范围为600到460800bit/s,支持自动波特率侦听,能够自动与监控中心通讯模块的波特率保持一致。发送“AT”,如果模块返回“OK”,则通信正常,否则重发。
(2)接入Internet。首先测试当地是否有GPRS覆盖,向模块发送“AT+CGPRS?”,如果返回“+CGPRS:1”,则有GPRS覆盖,否则隔5秒钟后再次检测。然后发送“AT+CGATT=1”使模块附在GPRS网络上。最后发送“AT+MIPCALL=1,cmnet”通过PPP协议建立与GGSN的无线连接,获得一个动态的IP地址,接入Internet。
(3)连接监控中心。向模块发送“AT+MIPOPEN=,,<“DestinationAddress”>,,”建立与监控中心通信连接。如果返回“+MIPOPEN:SocketID,1”,则说明与监控中心建立了通信连接,如果返回“+MIPSTAT:1,1”,则说明有物理链接中断,须重新进行连接。其中对AT+MIPOPEN指令的参数作以下说明:
SocketID:G24通信连接的ID号,G24有4个可用Socket,每个Socket有1372Byte缓冲区。
SourcePort:G24的数据传输端口号,其值为0~65535。建议采用1024以上的端口号。
DestinationAddress:目标端的IP地址,也就是监控中心监控服务器的IP地址。
DestinationPort:目标端的数据传输端口号,即监控中心监控服务器设定的传输端口号。
Protocol:传输通信协议,0表示TCP方式,1表示UDP方式。
(4)数据收发。与监控中心建立通信连接后,就可以进行数据收发了。发送数据用“AT+MIPSEND=1,’Data’;+MIPPUSH=1”。“Data”表示要发送的数据,本设计采用了G24默认的ASCII码编码,须用十六进制的ASCII码形式表示。一旦有数据到达,G24模块就会通过RS232串行口返回“+MIPRTCP:,,”。其中Left是一个十进制的数字,表示还有多少个字符在协议栈中尚未接收,如果数据全部接收,则Left为0;接收到的数据“Data”是十六进制的ASCII码形式。
(5)断开通信连接。向模块发送“AT+MIPCLOSE=SocketID”,模块返回“OK”,表示断开成功。
结语
本文提出了基于GPRS无线智能家居系统的总体解决方案。该方案主要是采用GPRS无线通信技术实现远程终端对家庭系统的远程控制;采用RS485总线技术实现家庭系统的组网;采用嵌入式系统方案搭建智能家居控制器的开发平台,并通过该平台实现对家用设备的智能管理和控制。最后本文提供系统核心GPRS芯片软硬件实现方法,为后续及相关工作提供技术基础。
该文观点仅代表作者,本站仅提供信息存储空间服务,转载请注明出处。若需了解详细的安防行业方案,或有其它建议反馈,欢迎联系我们。