综合资讯 在线阅读 原文阅读 在线商城 下载专区 DATASHEET 技术论坛 商务频道

嵌入式系统  单片机  D S P  EDA/PLD  接口电路  存储技术  显示光电  电源技术
传感/控制  模拟技术  通信网络  无线通信  电测仪表  消费电子  汽车电子

所在的位置:首页技术文章汽车电子正文
 
基于SoPC的汽车安全监控系统设计
发布日期:2005-07-17 作者:郭书军 王玉花 来源:单片机与嵌入式系统应用

摘要:介绍基于Altera公司SoPC的汽车安全监控系统,利用嵌入在FPGA中的Nios处理器软核CPU,配合GPS和GSM系统,对汽车的停放和运行状态进行监测和控制。文中详细介绍系统的硬件组成,并给出对GPS和GSM的C语言管理程序。

关键词:SoPC Nios GPS GSM


引 言

  基于SoPC的汽车安全监控系统采用Altera公司最新的SoPC(可编程片上系统)解决方案——Nios处理器软核为核心,配合GPS和GSM系统,对汽车的停放和运行状态进行监控。系统监测、记录和储存汽车在行驶过程中的各种数据,一旦出现安全问题,立即采用GSM无线通信方式通知相关人员和单位,并随时发送通过GPS获得的汽车位置等数据,为问题的解决提供及时、准确和可靠的信息,必要时通过GSM对汽车进行远程控制。

  基于SoPC的汽车安全监控系统可广泛应用于汽车的防盗、日常维护和交通事故的处理,为车辆故障提供有效的测试手段。

1 系统硬件组成

  设计采用Altera公司的SoPC开发工具。系统的开发包括硬件和软件两大部分。使用SoPC Builder生成Nios嵌入式处理器,Nios嵌入式处理器开发工具允许用户配置一个或多个Nios CPU,从标准库中添加外围设备,综合处理自定义系统,与Quartus II设计软件一起编译系统。软件开发的步骤是:利用SoPC Builder生成的软件文件,用文本编辑器编写汇编语言或C/C++源程序,用GNUPro软件开发工具进行程序设计、连编和调试。GNUPro将源程序连编(包括汇编/编译和连接)成可执行程序,通过下载电缆对可执行程序进行调试和运行。Quartus II设计软件提供全面有效的设计环境,将设计、综合、布局和验证以及第三方EDA工具接口集成在一个无缝的环境中。利用集成在Quartus II 3.0中的SoPCbuilder可以创建自己的Nios CPU系统。Nios是Altera公司开发的16/32位嵌入式处理器软核。
* 校科研基金项目“基于SOPC的汽车安全监控系统”资助。

  Altera公司推出了新一代多种系列FPGA,本设计选用低成本的Cyclone系列器件EP1C12,其具有12 060个逻辑单元,52个M4K RAM块,239 616个RAM位和2个锁相环,最大用户I/O引脚249。

  系统硬件组成框图由Nios系统和外部设备两部分组成,如图1所示。

  Nios系统包括CPU(Nios)、存储器(memory)、定时器(timer)、总线和并/串行接口(key_pio、led_pio、lcd_pio、ccs_pio、uart_0和uart_1)等,并/串行接口分别实现与键盘、LED和LCD显示器、汽车中控系统以及GPS和GSM系统等外部设备的连接。Nios系统设计和设计结果分别如图2和图3所示。
      
                图1系统硬件组成框图
  
                   图2Nios系统设计
  
                  图3Nios系统设计结果

  Nios系统同键盘、LED和LCD显示器、汽车中控系统以及GPS系统等外部设备的连接比较简单,GSM系统的连接较为复杂,如图4所示。

  整个系统的工作过程是:来自汽车中控系统和GPS系统的信息可以显示在LED和LCD显示器上,也可以通过GSM系统进行无线发送。用户可以通过键盘对系统进行控制,也可以通过GSM系统对汽车中控系统进行远程无线控制。

2 系统软件组成

  系统软件主要由主程序、GPS管理子程序和GSM管理子程序等部分组成。

  主程序完成系统的初始化,以及键盘、LED、LCD显示器和汽车中控系统的操作管理等。

  GPS管理子程序主要负责从GPS系统接收时间和位置信息。

  请求GPS系统返回ASCII时间位置信息的二进制命令为:
@@EqmC<CR><LF>
其中,m为0时,输出一次响应信息(查询),m为1~255时,每1~255 s输出一次响应信息(连续);
C为校验和(Eqm按字节“异或”);
<CR>为回车(十六进制0d);
<LF>为换行(十六进制0a);
命令长度为8字节。
命令的响应信息为:
@@Eq,mm,dd,yy,hh,mm,ss,dd,mm.mmmm,n,ddd,mm.mmmm,w, shhhhh.h,sss.s,hhh.h,m,t,dd.d,nn,rrrr,aa,CCC<CR><LF>
日期:mm是月(01~12),dd是日(01~31),yy是年(99~19)。
世界时间(UTC):hh是时(00~23),mm是分(00~59),ss是秒(00~59)。
纬度:dd是度(00~90),mm.mmmm是分(00~59.9999),n是方向(N是北,S是南)。
经度:ddd是度(000~180),mm.mmmm是分(00~59.9999),w是方向(W是西,E是东)。
信息长度是96字节。
对应的管理子程序为:
int eq[8]={'@','@','E','q',1,'C',0x0d,0x0a};
void gps_txd(int data[], int n) {
volatile int m,sum=0;
for(m=0;m<n;m++) {
while(~na_uart_0->np_uartstatus & 0x40);
//等待发送准备好
if(m!=n-3) {
sum^=data[m];//计算校验和
na_uart_0->np_uarttxdata=data[m];//发送数据
}else
na_uart_0->np_uarttxdata=sum; //发送校验和
}
}
int gps,gps_buf[46];//定义全局变量
void gps_rxd(int context) {//接收中断服务程序
gps_buf[gps]=na_uart_0->np_uartrxdata; //接收数据
if(gps_buf[gps++]=='q') gps=0; //数据定位
if(gps>46) gps=46;//忽略无用数据
}
GSM管理子程序主要负责GSM系统的数据收发管理。
GSM系统的数据收发以短信形式进行,选择短信格式的AT命令为AT+CMGF,收发短信的AT命令分别为AT+CMGR和AT+CMGS,对应的管理子程序为:
cmgf[20]={'A','T','+','C','M','G','F','=','1',0x0d};//短信格式void gsm_txd(int data[], int n) {
volatile int m;
for(m=0;m<n;m++) {
while(~na_uart_1->np_uartstatus & 0x40);
//等待发送准备好na_uart_1->np_uarttxdata=data[m]; //发送数据
}
}
int gsm=2,gsm_buf[18]={'A','T'};
void gsm_rxd(int context) {
//接收中断服务程序
gsm_buf[gsm]=na_uart_1->np_uartrxdata; //接收数据
if(gsm_buf[gsm]=='T') gsm=1;
//数据定位
if(++gsm==18) gsm=2;
}
 
                图4TC35i GSM系统连接图
3 设计调试方法和设计结果

  在Quartus II中使用SignalTapII嵌入式逻辑分析仪可以实时观测系统中节点的信号数据。被观察的信号可以多进制数值显示也可以用波形显示,但它需要占用芯片更多的资源,因此在对某个模块的测试结束后,可以在设置中把SignalTapII嵌入式逻辑分析仪取消,并重新编译生成以减少LE资源占用量。

  实际试用结果表明:基于SoPC的汽车安全监控系统运行正常,定位准确,数据传输可靠,操作管理方便。如果再配备上GIS(地理信息系统),整个系统将如虎添翼。

                  参考文献
1 郭书军,王玉花,葛纫秋.嵌入式处理器原理及应用.北京:清华大学出版社,2004
2 Motorola. M12 Oncore Users Guide Supplement, 2000
3 Siemens. TC35 Siemens Cellular Engines Hardware Interface Description, 2001
4 Siemens. TC35 Siemens Cellular Engines AT Command Set, 2002
郭书军:副教授,主要研究方向为数据通信及其信号处理和嵌入式系统。


 (全文结束)

信息发布:   转引自: 【 】 【打印】 【关闭
 相 关 文 章
GSM短消息在GPS交通控制中的应用 (12-24)
利用GSM短消息业务实现GPS车辆监控 (12-20)
基于DSP技术汽车定位防盗系统的体系结构研究 (11-21)
一种新的GPS出租车调度系统的设计与实现 (12-25)
基于SOPC的嵌入式工业以太网控制器设计 (12-12)
自动语音记录系统(AVRS)的SOPC设计与实现 (10-30)
GPS车辆追踪系统的实现 (12-20)
GPRS与GPS在汽车信息服务系统中的设计应用 (09-05)
cdma2000-1x系统中GPS时钟算法 (10-18)
基于GPS/北斗卫星技术的无盲区车辆调度系统 (10-22)
利用GPS探测水汽 (10-11)
GPS集中差分技术在城市车辆智能交通管理中的应用 (09-05)
uCOS-II在车载GPS移动终端中的应用 (09-04)
基于W77E58单片机的通用GSM无线传真终端实现 (07-04)
基于W77E58单片机的通用GSM无线传真终端实现 (07-04)
嵌入式GSM短信息接口的软硬件设计 (01-04)
手机电磁辐射的性能要求 (08-14)
GSM手机外置天线的原理及制做 (08-14)
GPS定位信息的单片机控制显示系统 (10-23)
GSM手机接收设计的关键技术 (01-02)
基于GSM公网的自动抄表系统的设计与实现 (11-16)
基于CDMA的移动无线数据传输系统 (09-04)
GPS接收机射频IC (12-07)
NIOS软核处理器的Linux引导程序U-boot设计 (03-24)
基于FPGA的新型谐波分析仪设计 (03-24)
基于Nios II的自动指纹识别系统设计 (06-16)
基于NIOS 软核处理器的uClinux的移植 (10-22)
应用SoPC Builder开发电子系统 (05-02)
中频数字接收机中的NIOSⅡ设计与应用 (02-15)
基于Nios平台的光信号采集片上系统设计 (03-24)
跳频技术在GPS移动车辆监控系统中的应用 (01-09)
SoPC与嵌入式系统软硬件协同设计 (01-21)
车载GPS接收器测试工具指南 (12-04)
北京公交GPS车辆监控系统研究 (12-20)
GPS PC卡参考设计 (12-24)
基于“Jupiter”GPS接收机的应用设计 (12-24)
一种应用于车载系统的GPS接收机射频前端的设计 (11-09)
关于我们 ┋ 友情链接


深圳市福田区海滨广场恒福花园恒华阁11F
电话:0755-88305872 传真:0755-88305880
Copyright©2005-2007 无忧电子开发网版权所有

粤ICP备05064233号