传感器作为一种检测装置,它的应用早已渗透到诸如工业生产,宇宙探索,海洋探测,环境保护,资源调查,医学诊断,生物工程,甚至文物保护等等极其之广泛的领域,可以毫不夸张地说,从茫茫的太空,到浩瀚的海洋,以及各种复杂的工程系统,几乎每一个现代化项目,都离不开传感器。
目前,市面上已经存在大量各种类型,各种型号,不同厂家生产的各种传感器,例如,温度,湿度,电压,电流,压强,光照,加速度,角速度等等,它们的应用场景,产品参数,使用方法都不尽相同,这往往使许多项目开发人员在使用传感器时举步维艰:添加一个传感器,就要编写对应的驱动,提供一套访问这个传感器的接口。
通常情况下,在一个复杂的系统中,传感器往往不止一个,可能存在几个或几十个甚至更多不同种类的传感器,若这些传感器的使用接口都不相同,那么可想而知,软件方面的工作量和复杂度又会有多大,电流传感器无形中又增加了很大的开发难度,不仅如此,若基于多种传感器开发的应用程序想跨平台复用,而底层各个传感器的接口却千奇百怪,那么,这样的工作量和复杂度又会上升到什么程度。
为了解决这些问题,AWorks定义了通用的传感器接口,适用于各式各样的传感器,只要是挂载在AWorks系统中的传感器,都可以通过相同的操作接口来访问,同时,只要是基于这些通用接口开发的应用程序,都不会与具体的硬件设备绑定,换句话说,底层更换使用不同型号的传感器,对应用程序不会造成影响,应用程序可以不做任何改动。
从功能上看,传感器实现了对真实世界中某种物理信号(温度,湿度,气压等)的采集,在使用传感器时,*重要的操作就是从传感器中获取出相应的数据,接下来,进一步介绍如何通过接口获取传感器数据作。
传感器通道ID。
在介绍接口的使用方法之前,需要简单了解一个概念,AWorks之所以能够实现电流传感器 使用一套相同的接口访问所有类型的传感器,是因为AWorks对系统中的传感器进行了统一的管理,为了实现对各式各样的传感器进行统一管理,在AWorks中,定义了“传感器通道”的抽象概念,一路传感器通道用于完成一路物理信号的采集,系统为每个传感器通道分配了一个唯壹的ID,例如,若此时系统中存在三个传感器,分别为温湿度传感器HTS221(能为系统提供一路温度和一路湿度通道),三轴磁传感器LIS3MDL(能位系统提供X,Y,Z轴三路磁数据通道和一路温度通道)和光照传感器BH1730(能为系统提供一路光照度采集通道)。
1,进气压力温度传感器损坏现象:。
①ON档,发动机故障灯常亮,②原地缓踩油门时冒少量黑烟,急加速冒大量黑烟,③发动机没劲,④故障码:P01D6(进气压力传感器电压低于下限)原因分析:进气压力信号异常,ECU无法接收到正确的进气量信息,导电流传感器致喷油量也随之异常,则燃烧不充分,发动机没劲,在加油过程中冒黑烟,线束连接出问题和传感器失效都会导致该故障,解决措施:检查进气压力温度传感器。
2,水温传感器损坏现象:。
①ON档,发动机故障灯常亮,②ON档水温始终显示*大值120℃,③发动机限扭,没劲,④故障码:P003D(水温传感器电压低于下限值)原因分析:水温传感器失效,ECU检测到水温传感器输出信号不可信时使用替代值,ECU出于保护发动机的目的,限制发动机的扭矩,解决措施:检查水温传感器。
3,机油压力传感器损坏现象:。
①启动后,机油压力指示灯常亮,②发动机故障灯常亮,③怠速,机油压力值显示为0.99,④故障码:P01CA(机油压力传感器电压高于上限)原因分析:机油压力传感器探头严重损坏,ECU检测到机油压力传感器无连接,仪表显示值为ECU内部替代值,解决措施:检查机油压力传感器。 |