题目取得有点大,不免有博取眼球之嫌。车联网作为物联网的一个分支,预计在2015年市场会达到1500亿,特斯拉股票balabala,谷歌无人驾驶,

当然,我们是技术类博客,得找个能够快速上手,快速落地的东西。咱即使有车,也不是富二代,不可能改装了随便想怎么玩就怎么玩,于是我们

以车辆的USB--OBD为切入口说说怎么来整一套车联网的东西玩玩。

整个项目我们开发了两个多月,主要是早期OBD硬件的研究和原型,一个Android终端APP以及一个Asp.net mvc开发的后台系统。

整个系列我将把所有的开发历程进行描述和代码开源,并建立一个开发平台,让更多的移动爱好者和物联网爱好者能够快速上手。整个开发我们使用了Android(Bluetooth, service, notifcation),Asp.net mvc, Bootstrap, svn(以后可能会用git)版本控制, HTML解析技术(爬数据),cruise control(持续集成), SQL Server数据库,

示波器,当然还得有一两台车(这个想办法用软件模拟中)。

一.OBD是什么?

OBD是英文On-Board Diagnostic的缩写,中文翻译为“车载诊断系统”。在车上的方向盘的左下方一般都有这么一个16针的接口,这个接口最早是用来检测排放废气的,也用来故障诊断,现在市面上的家用车大都有这个接口。在车辆传统维修领域中,如果你的车辆发生了故障(内部发动机,水温过高),这时你仪表盘的故障灯就会亮起,4S店或维修厂可以用专业的故障检测仪插入这个接口进行故障检测并进行问题定位。

除了定位故障以外,还可以读取车速、发动机转速、水温、油位等数据(远远不止上述提到的数据)。随着蓝牙,互联网,移动终端的开发门槛越来越低,我们可以利用这个接口将这些数据通过蓝牙、WIFI或者串口读取到手机终端、PC终端或者上传到服务器上,进行数据挖掘和分析。

这些是市面上流行的OBD终端,几十元到几百元不等,最知名的莫过于ELM327。

   

蓝牙OBD                                          串口OBD                                         WifiOBD

二.行车助手APP能做什么?

有了OBD这个硬件,那么我们能用它来做什么呢?

1.你可以进行故障管理, AppStore或者安卓市场上搜 obd 一大堆。

2.你可以做个实时的仪表盘,例如知名的OBD软件TORQUE:http://www.xcar.com.cn/bbs/viewthread.php?tid=15620929

3.你可以做个百米加速度的测试工具,好像还没有找到类似的。

其实有很多种产品形态啦,暂且不谈商业模式(没有用户的商业模式都是耍流氓),我们决定在产品专注在油耗管理驾驶行为分析上面因为我发现

不管是仪表盘还是实时测试软件对于大众用户或者企业用户来说意义都不大,因为车上的仪表盘都可以看到那些数据了。我们应该利用这些数据做些有意义

的事情,哪怕这个点不是刚需,也一定要做专做透。

对于油耗管理:用户能精确知道我每天开车花了多少油,每周花了多少油,花了多少油钱,哪段路花了多少油,和官方公布的百公里油耗相比怎么样;

对于驾驶行为分析:目前还只是利用急加速,急刹车和超速这几个参数形成一个公式来计算驾驶行为分析,我想代码开源后可以真正获取大家的意见

来对算法进行修正。

先上软件界面图,APP的代码以后将上文章进行逐步分析(包括故障检测,行程管理,蓝牙自动连接):

                   

三.行车助手Web后台能做什么?

有了硬件OBD和行车助手 APP,那么必须得有互联网,这样才形成一个车联网的闭环(硬件-终端-互联网)。

Web后台系统我采用了Asp.net mvc和前端框架bootstrap进行开发,下面是行车助手Web后台的功能(模拟数据,持续更新升级中。。。。)

 

 

玩转车联网1---初识OBD和行车助手的更多相关文章

  1. 玩转Git之初识Git

    git是什么 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目 Git 和 svn 有什么区别 它们之间的主要区别是Git是分布式的,而svn是集中式. 当然Git也可 ...

  2. [Android 4.4.3] 泛泰A860 Omni4.4.3 20140610 RC2.0 三版通刷 by syhost

    欢迎关注泛泰非盈利专业第三方开发团队 VegaDevTeam  (本team 由 syhost suky zhaochengw(z大) xuefy(大星星) tenfar(R大师) loogeo cr ...

  3. .Neter玩转Linux系列之一:初识Linux

    一.为什么要学习Linux (1)首先我们欣赏一下,曾经的微软是如何看待Linux的,是不是很惊讶,微软还是很可爱的(#^.^#) 如今的微软看待Linux的态度:有人说微软技术那么厉害,难道微软就不 ...

  4. 不止是联网!教你玩转PC自带Wi-Fi网卡

    前言:Wi-Fi对于现在的智能手机来说已经是再熟悉不过的配置了,而主板自带Wi-Fi网卡的设计也越来越普及,但有些玩家可能思维还停留在“Wi-Fi网卡 = 连无线网络用的网卡,我用有线就不需要”的层次 ...

  5. 第9章 初识STM32固件库—零死角玩转STM32-F429系列

    第9章     初识STM32固件库 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/fire ...

  6. 第4章 初识STM32—零死角玩转STM32-F429系列

    第4章     初识STM32 集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资 ...

  7. 《玩转D语言系列》一、通过四个版本的 Hello Word 初识D语言

    对于D语言,相信很多朋友还没听说过,因为它还不够流行,跟出自名门的一些语言比起来也没有名气,不过这并不影响我对它的偏爱,我就是这样的一种人,我喜欢的女孩子一定是知己型,而不会因为她外表,出身,学历,工 ...

  8. 跟我玩ADB——初识ADB

    ADB全称Android Debug Bridge, 是Android SDK的一个可以真实操作手机设备里面内容的工具. 一.功能介绍: 进入设备的shell进行命令行操作 使用5037端口,对设备进 ...

  9. 玩转mongodb(一):初识mongodb

    简介: MongoDB是一个开源的文档数据库,支持高性能.高可用性.自动缩放. 在MongoDB中,一条记录就是一个文档,是由字段和值对构成一个数据结构,类似于JSON对象.字段的值可以包括其他文档. ...

随机推荐

  1. 机器学习,数据挖掘,统计学,云计算,众包(crowdsourcing),人工智能,降维(Dimension reduction)

    机器学习 Machine Learning:提供数据分析的能力,机器学习是大数据时代必不可少的核心技术,道理很简单:收集.存储.传输.管理大数据的目的,是为了“利用”大数据,而如果没有机器学习技术分析 ...

  2. Spring实战之处理自动装配的歧义性

    仅有一个bean匹配所需的结果时,自动装配才是有效的.如果不仅有一个bean能够匹配结果的话,这种歧义性会阻碍Spring自动装配属性.构造器参数或方法参数.为了阐述自动装配的歧义性,假设我们使用@A ...

  3. 用python3判断一个字符串 包含 中文

    在python中一个汉字算一个字符,一个英文字母算一个字符 用 ord() 函数判断单个字符的unicode编码是否大于255即可. s = '我xx们的88工作和生rr活168' n = 0 for ...

  4. dclcommon200.bpl

    xe6 dclcommon200.bpl xe7 dclcommon210.bpl xe8  dclcommon220.bpl xe7,xe8都有对应的文件,xe6为何没有?

  5. 跟我学算法-pca(降维)

    pca是一种黑箱子式的降维方式,通过映射,希望投影后的数据尽可能的分散, 因此要保证映射后的方差尽可能大,下一个映射的方向与当前映射方向正交 pca的步骤: 第一步: 首先要对当前数据(去均值)求协方 ...

  6. 利用redis限制单个时间内某个mac地址的访问次数

    一.思路 用户mac地址唯一,可以作为redis中的key,每次请求进来,利用ttl命令,判断redis中key的剩余时间,如果大于零,则利用incr进行+1操作,然后再与总的限制次数作对比. 二.代 ...

  7. JAVA_01

    Java局部变量 局部变量声明在方法.构造方法或者语句块中: 局部变量在方法.构造方法.或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁: 访问修饰符不能用于局部变量: 局部变量只在声明它 ...

  8. Alternative PHP Cache ( APC )

    简介: Alternative PHP Cache (APC) 是一个开放自由的PHP opcode 缓存.它的目标是提供一个自由.开放和健全的框架用于缓存和优化 PHP 的中间代码,加快 PHP 执 ...

  9. SPI子系统分析之一:框架

    内核版本:3.9.5 SPI子系统概述: 一个SPI主控制器对应一条SPI总线,当然在系统中有唯一的总线编号. SPI总线上有两类设备: 其一是主控端,通常作为SOC系统的一个子模块出现,很多嵌入式M ...

  10. centos7 yum 安装 mysql

    CentOS7默认数据库是mariadb,配置等用着不习惯,因此决定改成mysql,但是CentOS7的yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源. 1 ...