2021-4-9 | 无线通信论文
作者:刘崇翔 高美凤 单位:江南大学自动化研究所
无线通信电路主要由ATmega48单片机和CC1101无线收发模块组成。CC1101芯片通过4线SPI兼容接口(SI、SO、SCLK、CSn)配置通信工作。GDO0和GDO2是2个专用的配置引脚,能输出对内部状态信息,用来对MCU产生外部中断。它内部有2个64字节FIFO,一个用来接收数据,另一个用来发送数据。ATmega48的PD0(RxD)、PD1(TxD)用于连接MAX232电路,因为要使用UART0与RS232接口的设备进行基本的通信,就需要一个RS232转换器将TTL电平转换成RS232电平。CC1101芯片和ATmega48的电路连接图如图3所示。
系统软件设计系统的软件设计包括在ADS1.2编程环境下利用C语言编写基于MiniARM工控板的嵌入式系统程序。计算机监测软件是利用VB语言进行编程和调试;CC1101的开发与配置利用SmartRFStudio软件。
小车数据采集与无线通讯的软件设计数据采集部分的设计包括:温度传感器DS18B20的驱动程序,烟雾浓度报警程序,以及串口通信程序,控制器对DS18B20进行温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位操作,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能进行预定的操作,本设计采用12位转换精度,在该精度下,温度每变化0.0625℃,输出的二进制数会增1,程序只要将测得的数值先转换成十进制再乘以0.0625就能得到实际的温度值。DS18B20温度传感器软件流程图如图4所示。无线通信部分的软件设计包括对控制器ATmega48初始化、CC1101初始化,CC1101芯片的发送和接收程序的设计,ATmega48通过CC1101的SPI接口来控制CC1101的发送模式和接收模式两个控制状态。当CSn为低电平时,SPI接口开始工作,准备接受一条指令,CSn由高到低跳变时开始转换指令。无线通讯的软件流程图如图5所示。
计算机监控界面的设计计算机检测软件采用VB编写,其中包括串口参数设置区,温度状态显示区,烟雾报警模块,小车运动控制模块。串口设置区包括对于串口号、波特率、数据位、停止位和校验位等进行设置,温度状态显示区包括温度的当前值、平均值、最大值、最小值,温度曲线显示,以及最近两百次温度的记录。计算机与小车数据采集部分的通信主要是利用VB中的MSComm控件,它通过串行端口传输和接收数据,为应用程序提供了串行通信功能。利用msflexgrid控件来显示网格数据,该控件提供了高度灵活的网格顺序、合并和设置功能,网格中可以包含字符串和图片。利用picturebox绘制曲线,使温度值的整体变化情况可以更加直观地显示出来。
小车数据采集部分与计算机的串口通信参数设置为:数据传输的波特率为4800bps,1位开始位,8位数据位,1位停止位,无奇偶校验位。数据采集部分每秒向计算机发送1帧数据,每帧数据由12个字节组成,第一个字节定义为二进制常数FF,第二个字节为烟雾浓度数据,第三、四个字节为温度数据,后面的八个字节表示四个超声波传感器测得的四个方向距障碍物的距离。数据是以压缩的BCD码编码方式,即用四位二进制数来表示一位十进制数中的0~9。计算机监测软件采用窗口化界面,图形显示,操作简单,功能齐全,基本上满足系统的设计要求。
本文对无线传输小车监控系统的设计进行了详细的介绍该监控系统能够将传感器测得的环境的温度、烟雾的浓度通过无线传输的方式发送给计算机,监控系统采用VB编写图形界面,可以清楚的反应环境的变化,此系统功耗低,可靠性高。