历史上的今天
返回首页

历史上的今天

今天是:2024年08月26日(星期一)

正在发生

2020年08月26日 | GPS车辆跟踪器

2020-08-26

本文介绍了一种简便的跟踪汽车位置、验证汽车驾驶员是否经过授权的方法。这种方法可用于汽车防盗、自动建立行车日志和货运、公交车队管理等。

 

车辆的经度、纬度信息通过标准移动电话文本信息传输,从而得到车辆位置的精确信息。

 

为该方案提供的代码可以从以下网站下载:


EPD-v2-01-3E.BSP:BASIC Stamp 主程序


1WIRE-ID.BSP:读取 DS1990A iButton 序列号的子程序


组成部分

该方案由下列各部分组成:


GPS 接收器(Garmin GPS 35),它提供车辆的位置信息

 

GSM 模块(Siemens TC35),用于将 SMS (文本信息)发送到预先设定的移动电话

 

iButton (DS1990A),用来验证驾驶人员是否被授权使用车辆

 

Parallax 公司的 BASIC Stamp (BS2P)控制模块,连接一个 BASIC Stamp 开发板(www.parallaxinc.com)。

 

软件:

 

EPD-V2-01-3E.BPS:BASIC Stamp 主程序


1WIRE-ID.BSP:读取 DS1990A iButton 序列号子程序


原理框图

 

图 1. 原理框图
 

GPS 接收器提供的信息以'NMEA'格式输出(NMEA 是美国国家航海电子协会缩写),纬度和经度信息从'$GPRMC'文句中提取出来,(按格式:"北纬 ABC","西经 DEF"输出)。

 

GSM 模块将 SMS 信息(文本信息)发送到预置的移动电话上。

 

而 DS1990A iButton (即所谓的"序列号 iButton")用于身份验证或"钥匙"。它包含一个全球唯一的 6 字节长的身份识别号码和 2 字节长的 CRC 校验码。序列号为“只读”类型,一个系统可以配备 2 枚 iButton 钥匙,其中一枚作为备用或提供给第二位授权司机。当然,也可以方便地配备更多的钥匙。


工作原理

系统启动过程中,BASIC Stamp 不断扫描,检测:


iButton 是否插入输入端?


汽车点火器是否工作?


要想汽车正常工作,该车被授权的 iButton 必须插入读写口,然后,汽车将在设定的 25 秒内启动。

 

如果出现下列情形,则被认为出现非法入侵:


已检测到汽车点火器开始工作,而合法的 iButton 并未在要求的 25 秒内启动汽车。


如果汽车启动后 25 秒内没有 iButton 连接到系统,同样被认为非法入侵。


一旦确定发生了非法入侵,BASIC Stamp 就开始查询来自 GPS 接收机的信息。等待'$GPRMC'信息出现在 GPS 接收机的串行输出端口。


BS2P 把 SMS 信息,包括从 GPS 接收到的'GPRMC'文本中提取的信息发送到预先设定的移动电话。


每隔 2 分钟上述过程重复一次,以便让车主时刻知道车辆位置。


系统集成

该设计的核心是 BASIC Stamp,它把 GPS 接收机、GSM 调制解调器、iButton 及汽车点火器检测有机的连接在一起,构成一个完整的系统。

 

点火线用于检测汽车是否被发动,当然,也可使用其他指示器(比如:超声波传感器或其他防入侵检测器等。)


GPS 接收器输出连接到 BASIC Stamp 的 P0。


GSM 接收模块的输入连接到 BASIC Stamp 的'Sout'或引脚 1。


BASIC Stamp 的 P1 引脚连接到点火器,输入高电平表明点火器在工作,反之亦然。


P15 用于与 iButton 接口。


需要提醒的是,BASIC Stamp 系列产品中 BS2P 支持 iButton 的 1-Wire 总线接口协议,而早期产品不支持。


登录移动电话号码


可按如下方法编程,输入移动电话号码:

 

======================================================


DEBUG "+44********** " ' Enter the destination mobile phone number here


======================================================

 

输入号码必须按下列格式:

 

+ 国家代码(上例中的 44 代表英国代码) + 个人移动电话号码。

 

该号码将是系统发送管理信息的目的号码,包括车辆的位置信息。


登录 iButton 序列号


输入将要使用的 iButton 序列号,如果只有一个 iButton 在该系统使用,则需要将该号码重复写入为备用 iButton 预留的存储器中。

 

iButton 代码的写入如下列程序所示。本例中,举例用的 iButton 代码已被输入系统。实际写入代码时,请用具体 iButton 的代码代替范例程序中'$'符号后面的数字,序列号以 16 进制表达。

 

一个单独的子程序可用于显示指定 iButton 的序列号,该串行号码被登录到最终程序代码,再下载到 BASIC Stamp 处理器中。

 

'登录第一个 iButton 序列号:'

 

IF romData(0) <> $03 THEN CheckSecond 'First Byte


IF romData(1) <> $F0 THEN CheckSecond 


IF romData(2) <> $BC THEN CheckSecond


IF romData(3) <> $08 THEN CheckSecond 


IF romData(4) <> $10 THEN CheckSecond


IF romData(5) <> $00 THEN CheckSecond


IF romData(6) <> $00 THEN CheckSecond


IF romData(7) <> $30 THEN CheckSecond 'Eighth Byte 

 

GOTO ButtonOK

 

CheckSecond:

 

'登录第二个或其余的 iButton 序列号:'

 

IF romData(0) <> $01 THEN BadButton 'First Byte


IF romData(1) <> $68 THEN BadButton 


IF romData(2) <> $21 THEN BadButton 


IF romData(3) <> $24 THEN BadButton 


IF romData(4) <> $08 THEN BadButton 


IF romData(5) <> $00 THEN BadButton


IF romData(6) <> $00 THEN BadButton 


IF romData(7) <> $31 THEN BadButton 'Eighth Byte 

 

完成上述修改后即可跟踪汽车。


推荐阅读

史海拾趣

中微股份(Cmsemicon)公司的发展小趣事

作为一家以技术创新为核心竞争力的企业,中微股份(Cmsemicon)始终坚持以市场需求为导向,持续推动技术创新和产品升级。近年来,公司在刻蚀设备领域取得了一系列重要突破,包括成功研制出针对先进逻辑和存储器件制造中关键刻蚀工艺的高端产品等。这些技术成果不仅提升了公司的核心竞争力,也为行业的发展做出了积极贡献。

ALSC [Alliance Semiconductor Corporation]公司的发展小趣事

ALSC公司成立于XXXX年,初创期面临着激烈的市场竞争和技术壁垒。然而,创始人凭借对半导体技术的深刻理解和市场需求的敏锐洞察,决定专注于开发高性能、低功耗的半导体产品。经过多次尝试和不断改进,公司成功推出了一款具有竞争力的产品,并逐渐在市场上获得了一席之地。

Connective Peripherals Pte Ltd公司的发展小趣事

随着产品质量的不断提升和市场口碑的积累,ALSC开始积极拓展国内外市场。公司不仅在国内建立了完善的销售网络,还与多家国际知名企业建立了战略合作关系。通过与国际伙伴的紧密合作,ALSC成功将产品推向全球市场,进一步提升了公司的知名度和影响力。

DIOTEC公司的发展小趣事

多年来,DIOTEC一直致力于半导体技术的研发和创新。公司不断推出具有竞争力的新产品,以满足市场的不断变化。同时,DIOTEC还积极关注行业发展趋势,及时调整产品战略和市场布局。正是这种持续的创新和进取精神,使得DIOTEC能够在竞争激烈的电子行业中保持领先地位。

Alorium Technology公司的发展小趣事

随着中国经济的快速崛起,电子市场需求不断增长。为了抓住这一机遇,DIOTEC于2005年在中国上海设立了分公司,即德欧泰克半导体(上海)有限公司。这家分公司凭借DIOTEC在全球的技术和品质优势,迅速在中国市场打开了局面。如今,德欧泰克半导体(上海)有限公司已经成为中国电子行业的重要供应商之一。

Anderson Power Products公司的发展小趣事

为了进一步完善全球产业布局,DIOTEC于2007年在印度普纳建立了新的生产基地。这座工厂紧邻印度的“门户城市”孟买,为DIOTEC在印度市场的拓展提供了有力支持。印度工厂的投产,不仅加强了DIOTEC在全球市场的竞争力,也进一步巩固了其在亚洲市场的地位。

问答坊 | AI 解惑

28335控制板ADDA的奇怪问题

最近一直都在调试我的控制板上外扩的ADDA,但是遇到了一个非常让人不爽的问题:同一个程序在不同的电脑上现象不同,在我的笔记本上ADDA都能调通,但是在实验室的电脑死活不行。前一段时间CCS3.3不知道为什么老出问题,我卸了好几次,昨天重装了一遍 ...…

查看全部问答>

关于uboot里norflash的驱动问题

U-Boot 1.1.1 (Development build, svnversion: u-boot:已导出 , exec:已导出 ) (Build time: Jan 18 2010 - 21:30:42) BBBdr_hertz=333000000, ddr_ref_hertz=50000000, ddr_config_valid_mask=1 BBBdr_interface_mask=1, ddr_config_valid_mask ...…

查看全部问答>

关于扫描无线网络channel的问题

利用WINCE开发一个无线网络监控程序,希望能扫描得到当前可用的无线资源(这已实现)。 有个问题是,能不能指定扫描的channel呢?就是说,假设有11个CHANNEL可以用,但是我在扫描的时候只想扫描1、3、6号channel,如何在程序中设置呢? 哪位大侠能 ...…

查看全部问答>

SOPC工程顶层例化问题

用SOPC的IP核生成了一个工程文件(暂时把这个顶层叫vip吧)之后,想要将vip模块作为我一个子模块例化一下。可是这样做了之后编译不能通过,报错如下:Error (10613): VHDL syntax error at video_conver_top.vhd(153): experienced unexpected end- ...…

查看全部问答>

我的LED应急灯制作过程(5)-我制作的第二套LED应急灯

第一套应急灯我做的是3W功率的LED,这个是我独立设计并制作完成的。第二套LED应急灯是灰太狼设计的、我组装的采用MAX16804的应急灯。再次谢谢SOSO 琳子姐姐,还有灰太狼!有机会请你们吃饭!!  下面也是图片展示制作过程:…

查看全部问答>

C的一些问题

 1、C语言缺少显式的字符串数据类型,这是一个优点还是一个缺点?2、具有空函数可以作为存根使用,你如何对这类函数进行修改,使其更加有用?3、如果一个值的类型无法简单地通过观察它的位模式来判断,那么机器是如何知道应该怎样对这个值进行 ...…

查看全部问答>

[诚寻] DSP开发 DSP测试 RF测试工程师 上海 15-22万 非诚勿扰

请自荐或是推荐的朋友发送简历到以下邮箱: Jerome.zhang@focu-search.com   QQ:727190736 申请职位请务必在邮件中注明所申请职位的名称、目前的薪酬大致情况和期望、您目前的工作地点。 谢谢! 统招本科 硕士优先(本科3年左右 硕士2 ...…

查看全部问答>

脉冲序列

如何产生这样的脉冲组,它有高电平时间,低电平时间,脉冲组间隔,循环次数。这组脉冲的四个量均为上位机输入,且多个这样的脉冲组串联,间隔有可能为0。该时序为产品工作时序,实际最长时间为8000秒(单脉冲)整个脉冲组有可能到10000小时。Fpga新手,望回复 ...…

查看全部问答>

STM32F4双ADC采样ADC2无数据

最近在调STM32F439的板子,想用双ADC同时采样,发现ADC1数据正常,ADC2无数据,求大神指点。 下边是程序代码: uint16_t ADC_Value[8]; #define ADC1_DR_ADDR  0x4001204C      //ADC1_DR 地址 static void Init ...…

查看全部问答>

基于串口的数字万用表创意进度帖+RL78G14开发环境的安装

有朋友问我怎么安装开发环境,过程中遇到了一些问题,特别是注册那个激活码。 我这里重新搞一遍,与大家分享一下经验 如图,建议把所带光盘使用UltraISO软碟通将光盘制作成ISO文件,然后加载到虚拟光驱,这样运行速度更快.安装更省时. 然后运行根目 ...…

查看全部问答>