对流行的各类常规防盗装置的不足进行了分析,研究并成功试制了一种新型嵌入式汽车防盗系统。系统基于ARM的S3C44B0X微处理器进行开发,提高了系统的稳定性和可扩展性,利用GPRS的网络优势达到远程控制的目的,且具备汽车报警系统现有的其他功能,可靠地实现防盗控制功能。
引言
随着人们生活水平的提高,汽车已逐步进入家庭,但日益猖獗的汽车盗窃案件也呈上升趋势,如何有效防止汽车被盗是车主们最关心的问题。近年来,科学技术飞速发展,结合各种新技术的新型汽车防盗装备相继出现。随着通信技术的发展,无线远程通信技术也被应用于汽车领域中。基于S3C44B0X网络型汽车防盗控制系统是采用ARM7微处理器构造的嵌入式系统,结合了传统防盗技术和新型的GPRS无线通信技术,实现已有防盗器现有各种功能的基础上,开发了远程控制功能,提高了防盗系统的安全性、灵活性和可靠性。
1系统设计
1.1 系统特点和功能
在对各类汽车防盗系统的特点进行分析后,设计了基于S3C44B0X网络型汽车防盗控制系统,它充分利用基于GSM网络的GPRS无线通信技术的优势:无处不在、接入迅速、永远在线、流量计费等特点。同时也利用了ARM7微处理器的优点:32位核、高性能、低成本、功耗低的RISC微处理器,有众多的合作开发伙伴。由于防盗系统的功能越来越复杂,为了便于系统程序的有效开发和系统功能的扩展,在此采用嵌入式系统进行开发,提高了系统的灵活性、安全性和可靠性。系统主要实现的功能有如下几个方面:
(1)基于GSM全球联网功能利用GPRS通讯网络实现全国范围内防盗报警功能。
(2)智能遥控或采用手机实现上锁、解锁功能,方便、快捷的进入防盗状态和解除防盗状态。
(3)一旦警情发生均可在很短时间内发送信息到您的手机,实现无声自动报警,达到“我知贼不知”的独特效果。
(4)车辆被抢或被盗时,用手机向汽车防盗器发送控制短信息,实现断电或断油,强制汽车停车。
(5)防盗设定后,不经车主允许,强行打开车门、后备厢、引擎盖,或车辆被振动,均在可报警和发送短信息到车主的手机上。
(6)微电脑断电断油功能,进入防盗状态,通过微电脑控制自动断电断油,车辆无法启动。
(7)进入防盗状态后,即使盗贼切断电源,可照常报警,并且每间隔1分钟报警一次,即发送信息到手机上。
1.2 系统硬件设计
系统硬件主要由两个部分组成:一是采用S3C44B0X微处理器构建一个嵌入式系统平台,外带GPRS模块,用作汽车防盗的主控板;另一部分是汽车电路信号接口板,主要用于获取汽车的状态信号和向汽车发送控制信号。
CPU采用SAMSUNG公司的ARM7系列芯片S3C44B0X。S3C44B0X有出色的内核性能,丰富的外部接口和低功耗。系统时钟66MHz,支持LCD,具有8个内存BANK,最大内存能扩展到256M,并方便连接各种类型的内存;能运行不带MMU管理的操作系统,能高效、方便的实现比较复杂的控制;在系统中我们用到2种内存,一种SDRAM,一种FLASH;
SDRAM动态存储器,运行速度快,但掉电后不能保存数据,在系统主要是用来运行操作系统、应用程序和各类数据的缓存,SDAM类型很多,有各种厂家的产品,性能差别不是太大,主要考虑内存的容量,我们选用一种较通用芯片,hynix公司的HY57V641620HC,它是1M×l6bit×4bank的同步DRAM。
FLASH内存较SDRAM运行速度慢,但掉电后能保存数据。FLASH有NAND和NOR两种类型,NOR的特点是芯片内执行,这样应用程序可以直接在flash闪存内运行,不必再把代码读到系统RAM中。NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是较慢的写入和擦除速度大大影响了它的性能。NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理和需要特殊的系统接口。在系统中也选用一种通用的FALSH(SST39LV160),容量为2MB,主要用于固化启动代码和控制应用程序,并保存一些系统数据和车主手机号码。
与手机的通信,使用SIMCOM有限公司提供的SIM100GSM/GPRS模块,该模块具有标准AT命令接口,可以提供GSM语音、短信和GPRS上网等业务。在系统中采用短信的方式实现远程无线防盗控制。
在系统中还增加了LCD和键盘,LCD采用1602,可以显示2行字符,每行16个字母,主要用于显示一些提示和状态信息,键盘用于设置车主手机号码。
主控板上增加了与汽车控制检测板的接口,通过检测接口,主控板能获取汽车的当前状态,如车门的开、关状态,脚刹和手刹状态,汽车是否启动等,根据这些状态,便于控制器对汽车实施相应的控制。主控板通过控制接口对汽车实施相应的控制,主要是汽车双蹦灯、报警喇叭和断火的控制。
1.3 系统软件设计
汽车防盗的软件系统可分为两个部分:一部分是设防状态的处理;另一部分是没有设防状态的处理。
在设防状态下,汽车被偷或被破坏时,报警器会声光报警,并向车主手机发送报警短信,车主根据信息进行真假判断:若是真警,可报警,并可同时控制汽车断火;若是假警,则可通过手机撤消报警,并使汽车再次处于防盗监控状态。设防状态又分为有声防盗和无声防盗,在有声防盗下,若被盗,则声光同时报警;在无声防盗下,若被盗,则只有灯光报警,没有声音报警,在两种情况下,均会向车主手机发送被盗短信息。
在不设防状态下,不会报警,仅仅在一些违规操作时,通过声光对车主进行危险提示,如汽车启动时,车门没关好等。
3系统关键技术
系统采用的关键的技术主要有两个,一个是GPRS远程无线数据传输,另一个是FLASH存储器的读写。
3.1 GPRS数据传输流程
GPRS远程无线数据传输主要是通过串口完成对SIM100GSM/GPRS进行短信的收发操作。当有短信到来时,SIM100GSM/GPRS将发送“+CMTI:”SM”,N”给ARM的串口,其中N为短信编号。如第五条,则N为5,串口收到短信后,处理函数先根据“+CMTI:”SM”,5”的内容解析出收到的短信的ID为5,打包成“AT+CMGR=5”的命令发给GPRS模块,约1~2秒之后该模块会返回一个确认数据“AT+CMGR=5”,再过一段时间,该模块才返回ID号为5的短信,其内容为:“+CMGR:”RECREAD”,”+8613978319414″,”04/07/22,10:54:23+00″#13#10dX#13#10#13#10OK”。为了确保控制的合法性,程序先对发送过来的短信号码进行合法性检查,只有与设定的手机号码相符合的短信的内容才作为控制命令处理,而对于其他的短信,都给予屏蔽掉,阻止错误操作。
若通过GPRS模块发送短信,ARM系统先向GPRS模块发送控制命令“AT+CMGS=XXXX”,GPRS模块收到命令后返回“AT+CMGS=XXXX#13#10>”信息,等待输入要发送的短信内容。如若发送内容为“YourCarHasStolen!”,系统程序先将此内容通过串口发给GPRS模块,之后再发确认命令“ctl+z”,表示数据发送完毕。GPRS模块收到短信数据和确认命令后,马上向ARM系统返回“AT+CMGS=XXXX#13#10>#13#10YourCarHasStolen!#13#10”信息,表示系统发送的数据和命令已经被GPRS模块接收到。然后GPRS模块将短信数据发送给车主手机,大约5秒之后GPRS模块给系统返回是否发送成功的回馈信息,如果返回“#13#10+CMGS:19#13#10#13#10OK#13#10”表示成功发送,结束。如果返回“ERROR”表示发送失败,则在下次轮循中系统会继续发送同样内容的短信,直到发送成功为止。
3.2 FLASH的读写技术
由于不同厂商的FLASH存储器在结构和读写操作是有区别的,所以FLASH存储器的烧写、擦除程序一般不具有通用性。系统所用的FLASH是SST39LV160,可以对任一扇区进行读、写或擦除操作,而不影响其他部分的数据。对FLASH的编程指令只能使二进制位由‘1’变为‘0’,而擦除命令可使‘0’变为‘1’,因此正确的操作顺序必须是先擦除,后编程,否则就会导致FLASH存储器复位,致使操作命令无法完成。当FLASH存储器被擦除后,读出的内容全是0XFF。
对SST39LV160进行烧写操作需要遵循几个固定的步骤。每个步骤是首先向FLASH存储器的特定寄存器写入地址和数据命令,然后由其内部的编程或擦除算法自动完成编程或擦除操作。如擦除操作,第一步程序向地址1(0X5555)写数据1(0XAAAA),第二步向地址2(0X2AAA)写数据2(0X5555),第三步再向地址1(0X5555)写数据3(0X8080),这样完成了擦除扇区的第一阶段,接着的第二阶段与第一阶段几乎一样,只不过最后一次是向地址0X10000写数据0X3030,然后程序再用一个循环,来检测该扇区的内容是否变成了0XFF。如果该扇区的内容变成了0XFF,那么说明擦除扇区的操作已经完成,可以进行下一步的操作,写数据到FLASH的指定地址了。
写操作和擦除类似,也是遵循几个固定的步骤,其具体步骤应参考对应FLASH芯片的技术资料。写操作执行后应对数据进行检查,如果成功写入则进行下一字节的写入,否则继续等待,如果超时,则退
该文观点仅代表作者,本站仅提供信息存储空间服务,转载请注明出处。若需了解详细的安防行业方案,或有其它建议反馈,欢迎联系我们。