玩转车联网1---初识OBD和行车助手
题目取得有点大,不免有博取眼球之嫌。车联网作为物联网的一个分支,预计在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和行车助手的更多相关文章
- 玩转Git之初识Git
git是什么 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目 Git 和 svn 有什么区别 它们之间的主要区别是Git是分布式的,而svn是集中式. 当然Git也可 ...
- [Android 4.4.3] 泛泰A860 Omni4.4.3 20140610 RC2.0 三版通刷 by syhost
欢迎关注泛泰非盈利专业第三方开发团队 VegaDevTeam (本team 由 syhost suky zhaochengw(z大) xuefy(大星星) tenfar(R大师) loogeo cr ...
- .Neter玩转Linux系列之一:初识Linux
一.为什么要学习Linux (1)首先我们欣赏一下,曾经的微软是如何看待Linux的,是不是很惊讶,微软还是很可爱的(#^.^#) 如今的微软看待Linux的态度:有人说微软技术那么厉害,难道微软就不 ...
- 不止是联网!教你玩转PC自带Wi-Fi网卡
前言:Wi-Fi对于现在的智能手机来说已经是再熟悉不过的配置了,而主板自带Wi-Fi网卡的设计也越来越普及,但有些玩家可能思维还停留在“Wi-Fi网卡 = 连无线网络用的网卡,我用有线就不需要”的层次 ...
- 第9章 初识STM32固件库—零死角玩转STM32-F429系列
第9章 初识STM32固件库 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/fire ...
- 第4章 初识STM32—零死角玩转STM32-F429系列
第4章 初识STM32 集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资 ...
- 《玩转D语言系列》一、通过四个版本的 Hello Word 初识D语言
对于D语言,相信很多朋友还没听说过,因为它还不够流行,跟出自名门的一些语言比起来也没有名气,不过这并不影响我对它的偏爱,我就是这样的一种人,我喜欢的女孩子一定是知己型,而不会因为她外表,出身,学历,工 ...
- 跟我玩ADB——初识ADB
ADB全称Android Debug Bridge, 是Android SDK的一个可以真实操作手机设备里面内容的工具. 一.功能介绍: 进入设备的shell进行命令行操作 使用5037端口,对设备进 ...
- 玩转mongodb(一):初识mongodb
简介: MongoDB是一个开源的文档数据库,支持高性能.高可用性.自动缩放. 在MongoDB中,一条记录就是一个文档,是由字段和值对构成一个数据结构,类似于JSON对象.字段的值可以包括其他文档. ...
随机推荐
- KindEditor 和 xss过滤
KindEditor 1.进入官网 2.下载 官网下载:http://kindeditor.net/down.php 本地下载:http://files.cnblogs.com/files/wup ...
- delphi IOS BLE 代理
代理方法 centralManagerDidUpdateState: peripheralManagerDidUpdateState:代理方法. centralManager:willRestoreS ...
- nginx root与alias区别
引用于文章https://blog.csdn.net/line_aijava/article/details/71473793 root: Sets the root directory for re ...
- VS2015编译VLC2.2.1(under WIN7-64)<转>
概述: 感谢https://github.com/sunqueen/vlc-2.2.1.32-2013 这个工程,我的工作基本上都是基于它,我只是觉得他的工程设置不够清晰,重新做了一次.区别在于我的工 ...
- jBPM4.4 eclipse插件安装
一.工具下载 jBPM 图形化流程设计器采用eclipse做为平台,我们可以先到jBPM官方网站下jBPM4.4,地址:http://sourceforge.net/projects/jbpm ...
- django-rest-swagger
前提工作 pip3 install --user django>=2.0.0 pip3 install --user django-rest-swagger 安装完成之后,创建一个django项 ...
- iOS 布局之 Springs and Struts
“springs and struts” 模式,就是代码中的autosizing masks布局控制. autosizing mask决定了一个view会发生什么当它的superview 改变大小的时 ...
- 词法解析 用reactjs和bootstrap创建页面IDE
- 解剖Nginx·模块开发篇(3)ngx_http_hello_world_module 模块的基本函数实现
还记得我们定义过一个结构体如下吗? typedef struct { ngx_str_t output_words; } ngx_http_hello_world_loc_conf_t; 它就是 He ...
- poi导出excle测试类
package poiexcel; import java.util.ArrayList; import java.util.List; public class Test { public stat ...