如何DIY一个属于你的超声波测距传感器三:程序的构思和设计
2009-02-09 20:35:43| 分类:
单片机
|字号
前文:
图1 将被赋予“智慧”的东东
二、需求分析
测距传感器的核心功能是测量距离,但当其用于不同场合时,会有许多不同的需求。
如果是传统的传感器概念,只需将“非电量转换为便于测量的电量”即可,这是一个比较通俗也基本正确的定义,“便于测量的电量”通常为:直流小电流、小电压以及方波等。
这类传统传感器给系统带来了不少“麻烦”,因为其输出的所谓“便于测量的电量”只是物理上的,充其量达到“可测”而已,由于其输出的不统一、不灵活,甚至有些“粗糙”,使得系统不得不付出一些开销去弥补之。
就拿GP2D12来说,其输出是直流电压,可与距离的关系是非线性的,且是反比例,输出还是非连续的,就这三个特征就足以让系统耗费不少周折才能得到想要的距离值。
还有很多类似的例子,如热电偶温度测量传感器、光敏传感器等,在此就不一一枚举了。
从系统设计的角度考虑,最好是传感器将所测量的量转换成数字信息,系统不必再去理会这些“底层”的处理,专心于功能的实现。如同现在的PC操作系统,有统一的设备接口,系统级应用是“与硬件无关”的,设备的差异由各设备厂家通过驱动程序实现统一。
以往由于技术和成本的限制,为了节省开支,将很多功能都交给了主控系统完成,形成所谓“树形”架构,只有“主干”是有智能的,其余都是“末梢神经”,只具备最低级的信号采集能力,也就是传统传感器的角色。
随着单片机的功能提升、价格下降,新的构架方式逐渐显现:一个系统中,每个部分都自成体系,主控只是负责策略、协调,各个独立的功能模块“自行其事”。这就是“分布式”系统。
分布式系统概念的普及,催生了智能传感器的需求。
所谓“智能传感器”,至少有以下特征:
1) 能够将被测量转换为数字值,而非简单的模拟量;
2) 能够根据要求独立完成测量;
3) 能够通过数字通讯接口接受命令、输出数据。
具备此特征的传感器已有很多,有些已制成IC,如常见的温度传感器 18B20。
智能传感器除了降低了系统的软硬件开销外,附带的一个好处就是便于传送,传统传感器的输出信号传输时的“干扰”和“衰减”是最令设计者头痛的!
因此,智能传感器是未来的方向。实际也是如此,读者可搜索一下新兴的MESM(微机电系统)传感器,不论是两轴、三轴加速度,还是陀螺仪等,新产品几乎都是I2C、SPI等数字总线接口。