嵌入式设计应用
随着现代生活节奏的加快,生活品质的不断提高,以及人们对私人生活的一种知晓欲,家庭情况的实时监控显得尤为重要。而目前比较常用的方法就是在室内固定地点安装监控摄像头,由一台PC机进行控制,这种传统的方法既显得笨拙,又不够智能;此外,对于实时监控系统数据的保存也不够安全。本文所研究的控制系统是利用Android智能移动设备的特点,实现数据监控的智能化,并利用ZigBee无线传输模块(SZ05-STD-SMA)的功耗小、组网形式多样化、抗干扰能力强和传输距离相对较远等特点,实现实际环境智能监控的通用性。
智能移动设备控制系统架构如图1所示
图1 智能移动设备控制系统架构图
Android智能设备串行通信利用MODBUS通讯协议进行数据传输,通过该协议可以实现将不同厂家的控制设备组装成相关网络。考虑到一致性问题,Android智能移动串行通信设备参数通常设置为:数据位8、停止位1、奇偶校验无、9600b/s。
另外,利用Android的ADK开发包实现软件层和硬件控制层设计。基于Google的OpenAccessoryProtocol(开放式附件协议),利用USB通信部分所封装的API,设计人员毫不费力就可实现外围移动设备的控制,从而实现Android智能移动设备通过串行通信实现数据的读写操作。
Android智能移动设备控制系统是由SZ05-STD-SMA组成的ZigBee无线传输模块和计算机数据采集系统2大部分共同组成。为了实现数据的有效传输,将整个系统部署在Android智能移动设备控制下进行,智能移动设备数据采集流程如图2所示。
图2 智能移动设备数据采集流程图
基于Android的智能移动设备控制模块SZ05-STD-SMA,采用了加强型的ZigBee无线数据传输技术,它可以实现RS485/RS232串行通信与ZigBee无线通信相互转换,并为智能移动设备控制系统实现数据有效传输。它因尺寸小而易于安装;通讯距离相对较远,2个模块间无障碍距离可达200~2000m;采用2.4G的DSSS扩频技术,抗干扰能力较其它设备强;组网的灵活性好,节点类型和网络结构灵活多样,可实现多设备间的数据透明传输。
主板数据采集模块是采用S3C2440嵌入式ARM系统设计思路,在设计的时候充分考虑到CPU的性能最大化,以及系统功能的完整性和扩展性,本系统设计了包含各种功能模块的接口,如以太网接口、USB主从接口、摄像头接口和JTAG下载接口等。这样可以在本系统基础上方便用户将来开发自已的目标系统。
利用Header11x2芯片实现红外测温功能扩展设计。在此扩展接口上分别预留出开关量输入输出、模拟量输入、I2C、UART、SPI等相关信号引脚,可以满足设计者设计其它的传感电路板。红外传感器检测电路设计如图3所示。
图3 红外传感器检测电路设计图
24C02是具有I2C总线接口的E2PROM,芯片存储容量为2Mb(128K×8位)。A0、A1、A2为器件的地址线,WP为写保护引脚,SCL为串行时钟端,SDA为串行数据端。摄像头接口电路设计如图4所示。
图4 摄像头接口电路设计图
鉴于系统设计的主要任务和功能考虑,本系统采用速度和存储量都较大的STM32F103ZET6单片机作为主控设备。它采用功能强、功耗低的ARM32位的CortexTM-M3内核,接口有CAN接口、USB接口等,12通道的DMA控制器支持大量外设,另外还有强大的定时器功能,定时器个数多达11个。由STM32和CAN总线的智能步进电机驱动模块构成的分布式串行驱动架构如图5所示。
图5 分布式串行驱动架构图
在系统中通过STM32单片机来控制相关电机,同时对编码器信息进行处理,STM32和ARM之间通过串口通信来控制所输出的PWM数据。但由于有的串口通信并没有明确规定通信协议,所以就要对两者之间的串口通信协议进行人为设定。数据发送和接收包格式设置分别如图6和图7所示。
数据发送包内容说明如表1所示。
表1 数据发送包参数说明
数据发送包内容说明如表2所示。
表2 数据接收包参数说明
从设定的参数可以看出,通过对编码器的实际脉冲频率进行测量,并根据电机一般情况下的减速比和电机转动一周所需要的脉冲周期,从而计算出电机当前速度并获得即时数据。
基于ZigBee的Anddroid智能移动设备控制系统设计,很好地解决了传统数据采集控制系统的不足,优点是利用ZigBee技术实现低功耗、低成本、低速率、短延时、易扩展和高安全性等,Android端实现了数据的实时接收并查看。缺点是ZigBee的传输距离和传输带宽不够理想。接下来想采用LPWAN组网技术,对整个系统进行改进,从而实现系统数据的远距离传输。
全部0条评论
快来发表一下你的评论吧 !