现在谈起嵌入式这个概念,很多人都会和ARM、DSP、FPGA、LINUX、UCOS-II、UCGUI、MINIGUI等概念连续起来,马上联想到消费电子领域里面的智能手机、一些高端的无线传输产品、现在很流行的视频传输产品,还要比如GPS等汽车电子产品,一些酒店用来点菜用的PDA。无可否认这个在嵌入式邻域中所占的比重和地位,曾经我也渴望拥有这些技能和在那些高端领域中一展伸手。可是一直都没有机会啊。 一直以来,我都在计量检测仪器设备这个方向逗逗转转,从一开始用DS18B20和89C51设计的温度检测系统,到利用机器视觉和图像处理等研制的生丝黑板检测网络化设备、到现在研发基于差动变压器传感器和S3C2440的高精度(1um)的测微仪,我对嵌入式应用的一些初衷开发开始了变化。 以前认为做嵌入式应用开发就只是精通ARM、DSP、LINUX等一些流行的技术就OK了(不知道在其他的应用领域是不是这样)。现在慢慢进入嵌入式测量仪器的应用领域之后,我发现在这个领域里面还有更加重要的支撑技术,除了精通嵌入式的一些必要的开发技术之外,更重要的是精通计量测试里面的一些基础技术,比如说误差理论与数据处理。 嵌入式测量仪器的精髓是它的测量精度和稳定程度。我们可以用最好的嵌入式芯片,用最快的处理速度,做最漂亮和最友好的人机界面,设计最强大的数据库,添加红外、USB、无线、以太网等各种接口,将各种功能集于一身。但是,如果这个仪器的测量精度很低,重现性很差,运行不稳定的话,我想那些强大的界面和接口功能很难体现出它的价值。 那么是不是嵌入式仪器只要精度做好了,其他就不要了能。当然不是拉,我的老师告诉我,那些功能只是锦上添花,但是没有那些漂亮的界面,强大的接口技术和其他的辅助功能,这个测量仪器在市场上几乎没有什么竞争了。两天同样测量精度的仪器,用户宁愿多话一点钱也要使用功能强大,外观漂亮、界面友好的。 对于一台嵌入式测量仪器,实现它的所有功能并不是很难,但是要在这个基础上对其测量精度在提高,需要的技术和精力是难以估计的。比如说,对于有经验的嵌入式开发人员来说,在一台测量长度的仪器上面成功开发了USB接口之后,再需要在测量重量的仪器上面开发一个USB接口,我想不会再花费很大的精力。无论是LUNIX或者UCOS等其他操作系统,在一个系统上开发的成功之后,再在其他的系统上应用难道没有那么大了,我是看到我身边的人好像是这样的,不知道我的想法对不对。如果在开发好一台测量精度为10um测量位移的仪器,但是用户过段时间说国外大部分仪器已经达到1um了,要求对仪器精度提高。最常见的办法是先找几台类似的仪器来拆开看看,但是现在很多仪器都是集成专业IC或者使用DSP等微处理器,外面的电路就那么几块了,很多时候也看不出什么名堂。对于仪器的基本实现原理已经清楚了不能再清楚了,测量电路也熟悉得不能再熟悉了。说实在的,如果能够很容易的提高精度,在研发的时候早就做了。既然有这样的要求,就只要在原理熟悉的基础上再研究,通过大量的实验,测量电路中每个关键点的信号变化,分析测量误差的来源,利用各种数据处理手段,通过修改硬件和软件修正看看有没有办法提高仪器的测量精度。有时候好不容易将精度提高了,用户使用了一段时间又说跟其他同类的仪器相比,响应速度太慢拉。那怎么办啊,只要通过搜索目前一些先进的器件,比如说放大、AD等一些器件,用响应速度更快的芯片来替代原来的片子,这里当然需要折中考虑一些成本拉,毕竟卖家想要多赚点钱的。 当我们将这些要求做好了,就开始可以添枝加叶了。把一些仪器做成便鞋式或者式手持式的,将原来的LED或者点阵液晶显示换为真彩色的显示屏。现在我们在做的一个东西,用户对10.5英寸的液晶显示已经不再满足,要求我们设计一个转换接口将嵌入式的界面显示在17寸的液晶显示器上。当我们对原来的仪器改头换面之后,整个仪器的成本增加了不少,但是仪器的档次已经提高了好几级,想对于销售价格来说,增加的成本只是冰上一角。 总的来说,我觉得用户对嵌入式测量仪器除了要求高精度高稳定性之外,还需要具有下面的一些功能来增添色彩。 1、自动对零功能。 现在很多的传感器在使用之前都需要对零或者校准,那是一个比较烦琐的过程,也会直接影响测量的误差。在每次采样数据之前,嵌入式测量仪器对传感器的输出值自动清零,可以方便用户的使用,也可以降低因为测量系统漂移造成的误差。 2、量程自动切换功能。 一般的情况下,量程的增大会导致测量精度的降低。这时候需要仪器自动根据测量的大小改变测量范围,在保证测量范围的同时提高分辨率。 3、多点快速测量。 在对机械零件测量的时候往往需要测量几个点,在讲求效率的今天,需要仪器具有对多点自动快速测量的功能。 4、数字滤波功能。 数字滤波到现在已经发展得非常成熟了,随着DSP、FPGA等高数数字处理器的发展,进行数字滤波变得比较容易,而且对于一些模拟滤波无法消除的误差,可以通过数字滤波进行分析处理,从而抑制各种干扰。对于一些滤波电路用模拟来实现会非常复杂,用数字滤波不但变得简单而且整个仪器的电路也变得小巧简单。 5、自动修正误差。 许多传感器的特性是非线性的,而且容易受环境参数变化的影响,从而给测量仪器的使用带来误差。利用软件设计专门的算法对其进行修正处理,可以得到理想的测量结果。 6、数据处理功能。 现在的人都比较“懒”了,对于很多测量结果的处理都希望交给计算机去处理。数据处理是计算机的拿手好戏,现在的嵌入式处理器实现测量领域上的复的数据处理已经可以胜任,比如说统计分析、检索排序、函数变换、差值近似甚至频谱分析等等。 7、数据库功能。 在对目标进行测量的时候,数据往往是各种各样的,还要测试的各种条件,以前都是人工一个一个记录在纸上的或者一个一个输入电脑的,现在他们都要求嵌入式测量仪器可以将测量结果和测量条件等信息建立一个数据库,方便他们操作和查询。在LINUX上建立一个MYSQL数据库也不是很困难的。 8、多媒体功能 现在有写用户说能不能将仪器做成可以发声的,到测量完成或者是有异常的时候就大叫通知检验员来看,平时测试的时候,检验员可以在一边看看报纸。他们也太懒拉吧。现在利用嵌入式技术,是仪器具有声光和语音等功能已经比较容易实现了,这样可以增强检测系统的个性或者特色。 9、通信网络功能。 现在的嵌入式设备通信接口各种各样,RS232、RS485不用说了,红外、无线、USB、IIC、SPI、CAN、以太网等各种总线应有尽有,就看用户的需要进行配置拉。利用这些通信功能,可以大大增强检测系统的外部接口功能和数据传输能力,同时还可以拓展出一系列新颖的功能。 现在是一个信息化、网络化和智能化的时代,嵌入式测量仪器的网络化是大势所趋,我做到几个东东,没有一个不是要求网络化的。 我在一本书上看到他们这样描述网络化仪器:网络化仪器是在任何地点、在任何时间都能够远程操控、获取测试信息的所有软硬件条件的有机集合。网络化仪器可以实现任意时间、任何地点对测量系统的远程访问,实时地获得仪器的工作状态,通过友好的用户界面,对远程仪器的功能加以控制,进行状态的检测;还能将远程仪器的数据通过网络迅速传递给服务器主机。电子邮件服务器或者仪器直接通过GPRS等无线网络,可以将仪器的状态或报警信息发送给指定的接收人。维护人员接收到信息后,可以利用仪器的互联网地址做远程登陆,运行适当的诊断程序、重新进行配置或者下载新的固件以排除故障。当IPV6推出以后,据说地球上的每一颗沙子都可以分配到一个IP地址,一个测量仪器有一个自己IP应该没有问题哦。 好拉,说了这么多都只是我一个人在这段时间的认识和体会,我想我在这个领域继续学习下去,肯定会有新的体会和想法。希望我能喜欢嵌入式仪器开发这个领域拉,因为我觉得太多东西不懂了,曾经想做其他的东西,比如说写写软件,做做网站。 |
用户1108907 2007-6-4 19:11
用户485338 2007-6-4 17:10
用户85399 2007-6-4 14:17