王希友,解 雷,朱岩纯,孙林港
(中油(新疆)石油工程有限公司 设计分公司,新疆维吾尔自治区 克拉玛依 834000)
随着GSM移动通信网络的迅速普及和竞争的日益激烈,新技术和新业务的开发应用已提到非常重要的位置。GSM模块是继GSM手机外,又一种非常重要的GSM通信系统终端设备。它是传统调制解调器与GSM无线移动通信系统相结合的数据终端设备。因此,也叫无线调制解调器。由于调制解调器必须通过PSTN或者其他专用通讯网进行通信,因而受地域、线路等影响,在应用上有很大的局限性,而GSM模块则无此限制,所以基于这种模块,以GSM网络作为无线传输网络,可以开发出多种前景及其各类应用。在单片机技术日趋成熟的今天,其灵活的硬件电路的设计和软件的设计,让单片机得到了广泛的应用,几乎是从小的电子产品,到大的工业控制,单片机都起到了举足轻重的作用[1]。
目前市场上常见的防盗报警系统的通信方式有固定电话拨号、以太网、集群系统等。但它们有各自的缺点:
图1 硬件结构框图Fig.1 Hardware structure block diagram
1)固定电话拨号容易被盗贼在入室抢劫前切断电话线或恶意占线,使其在关键时刻失灵。
2)以太网同样面临着线路被切断的隐患,且不易普及。
3)集群系统功耗很大,网络架设和维护费用很高,而且需要购买固定的频点。
针对以上通信方式的优缺点,设计了基于GSM彩信模块的家庭防盗报警系统。该综合设计实验——基于GSM彩信提醒的家庭防盗设备由硬件和软件两大部分组成。硬件部分是前提,是整个系统执行的基础,它主要为软件提供程序运行的平台;而软件部分,是对硬件端口所体现的信号,加以采集、分析、处理,最终实现防盗设备所要实现的各项功能,达到控制器自动与手动相结合的家庭防盗设备智能控制。
基于GSM彩信提醒的家庭防盗设备主要由双串口单片机、GSM模块、蜂鸣器、摄像头、继电器、有线门磁构成。其输入参数是当有外力破坏有线门磁后,系统自动启动摄像头的图像采集功能,通过GSM模块将该信息传递到预先设定好的手机号码中。硬件结构框图见图1。
在明确防盗器的设计思路后,考虑到本系统所安装的环境影响因素比较多,且存在单片机反应延迟时间及数据传送时间等,都会导致报警不及时,所以在设计过程中,电子元器件的选用、线路布置和设备的安放要充分考虑到缩短延迟时间问题。同时,在设计过程中,电子元器件的选用、线路布置和设备的安放要充分考虑到抗干扰问题。
在对系统进行实际调试时,首先应对硬件进行静态调试。静态调试主要是排除明显的硬件故障。在电路搭建好后,对其进行仔细检查,查看端口是否正确连接,连接是否可靠。同时还应当用万用表检查电路,看应当开路的地方是否开路,应当短路的地方是否短路,电源地线连接是否可靠。在焊接后,查看焊接是否牢固,有无虚焊或短路等。在将芯片、传感器等元件插到电路板上时,要保证各处电源极性、电压正确,以防止因电源极性接反或电压过高损坏芯片或传感器。此外,插入芯片必须在断电的情况下进行,特别注意芯片的方向不要插反。
图2 主程序流程图Fig.2 Main program flowchart
在单片机硬件系统的基础上,再配上相应的软件,才能构成一个完整的系统。用户软件的开发与系统硬件有着密切的关系。在系统的硬件及输入输出方法确定后,程序软件就可以完全独立地进行设计、开发。在程序设计过程中,采用合理的程序设计结构是一项关键技术[2]。在本系统的设计过程中,总体设计采用自上至下的设计思想,将主程序设计好,而在各个部分展开成从属程序或子程序时,是将各个小模块分别进行设计和编程,同时在编程的过程中又用到了结构化程序设计的思想。
主程序的基本任务是调用子程序,一个主程序可以调用多个子程序,对于51系列单片机,系统资源有限,主程序通常是一个无限循环的过程,即是一个反复调用子程序的过程。子程序主要分为中断子程序和功能子程序,它们之间可以互相嵌套和调用。在应用软件的设计中,尽可能把各个功能模块写成子程序的形式,并通过主程序调用,这将使得程序流程更加清晰[3]。
主程序是整个控制系统的核心部分,接受和执行命令,把控制转到相应的处理子程序的入口,起引导作用。本系统中主程序模块主要包括对系统各功能寄存器及外围器件的初始化,读取实时时钟并将时间值显示。主程序流程图见图2。
工作流程:
1)开启摄像头电源。
2)调用拍照函数进行拍照(jpg_ok()函数实现)。
3)通知模块进行图片存储(用at指令实现)。
4)连续进行分包读取,再转发给模块。
5)读完,发完返回。
在对系统硬件进行完静态调试之后,同时对系统软件进行初步调试,此后再对软件和硬件进行动态调试,最后才能使系统进入正常工作。
系统软件程序在编制好以后,可通过汇编软件对源程序进行汇编,变为可执行的目标代码,在汇编过程中出现的错误,要及时纠正。
在软件调试时采用软件模拟开发系统对程序进行调试,这种模拟开发系统是在计算机上利用模拟软件实现对单片机的硬件模拟、指令模拟及运行状态模拟,从而完成应用软件开发的全过程。调试过程中的运行状态、各寄存器状态、端口状态等都可以在指定的窗口区域显示出来,通过这些显示结果随时跟踪程序运行状态,以确定程序运行无错误[4]。
控制系统的软件和硬件是密切相关的,软件模拟开发系统不能对硬件部分进行诊断,同时也不能实时在线仿真,所以用户程序还需跟硬件连接起来进行联调,同时对软件和硬件进行检查和诊断。
程序调试完毕后,利用在线编程器将程序固化到单片机中,使整个系统运行起来。
随着自动化技术的普及,人们都致力于使用智能家庭防盗器,在这种情况下家庭防盗技术发展的也越来越完善。通过对基于GSM彩信模块的家庭防盗系统进行研究,设计了一个智能防盗器,并利用Protues进行了仿真。通过总结,主要结论如下:
1)根据控制需要,选择具有双串口功能单片机STC12C5A32S2作为主控芯片,有线门磁作为报警触发开关,摄像头作为图像采集工具,GSM彩信模块M20作为无线通信通道,继电器电路作为报警电路。
2)利用KEIL编程软件编写摄像头拍照程序模块、GSM图像传输程序模块及GSM图像接收程序模块,各个程序模块间协调工作,实现彩色图片通过彩信通道由发送端传送到接收端,从而达到彩信提醒的目的。
3)通过软硬件的调试,门磁开关触发,采集图像后能够发送彩信。接收报警指令短信后,报警器报警,验证了整个系统的有效性。