henge1
发表于 2015-12-22 09:02:51
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?快速注册
x
" w) i5 a2 J7 X3 h/ f
传感器的数量在整个地球表面和人们生活周遭空间激增,提供世界各种数据讯息。这些价格亲民的传感器是物联网(IoT)发展和我们的社会正面临数字化革命,背后的驱动力,然而,连接和获取来自传感器的数据并不总是直线前进或那么容易,以下有5个技巧以协助缓解工程师与传输接口到传感器的第一次战争。
* ~! d3 W( m( @( D, R: F" Q* v) p- U/ m
技巧1―先从总线工具开始
' m$ o/ }5 p6 w3 {- o' ]) L4 B6 X+ z* J8 c
第一步,工程师应当采取首次介接到传感器时,是透过一个总线工具的方式以限制未知。一个总线工具连接一台个人计算机(PC),然后到传感器的I2C、 SPI或其他可让传感器可以“说话”的协议。与总线工具相关的PC应用程序,提供了一个已知与工作来源用以发送和接收数据,且不是未知、未经认证的嵌入式微控制器(MCU)驱动程序。在总线工具的工作环境下,开发人员可以传送和接收讯息以得到该部分如何运作的理解,在试图于嵌入式等级操作之前。
R( I; h) B9 {& _. |# G4 k5 y4 H- Q6 ]) G% l
技巧2―在Python编写传输接口码
; D0 W! ^" c3 Q' N/ H& W2 P* O2 e( T; z, [$ A2 {
一旦开发者已尝试使用总线工具的传感器,下一步就是为传感器编写应用程序代码。并非直接跳到微控制器的代码,而是在Python编写应用程序代码。许多总线 工具在编写脚本(writing scripts)配置了插件(plug-in)和范例码,Python通常是随着.NET中可用的语言之一。在Python编写应用程序是快速且容易的, 其并提供一个方法已在应用程序中测试传感器,这个方式并未如同在嵌入式环境测试的复杂。拥有高层级的代码,将使非嵌入式工程师易于挖掘传感器的脚本及测 试,而不需要一个嵌入式软件工程师的照看。
9 C1 k! q/ s% w5 H9 C1 ~) C2 p- c/ ?! ?" E$ r0 C. g% K
技巧3―以Micro Python测试传感器6 x' t) S, Q% J+ X
9 P; y' W$ B- J/ h h5 W V1 @( | 在Python写下第一段应用程序代码的其中一个优势是,透过调用Micro Python,应用程序调用到总线工具应用程序编程接口(API)可易于进行更换。Micro Python运作在实时嵌入式软件内,其中有许多传感器可供工程师来了解其价值,Micro Python运作在一个Cortex-M4处理器,且其是一个很好的环境,以从中为应用程序代码除错。不仅是简单的,这里也不需要去写I2C 或SPI驱动程序,因为它们已被涵盖在Micro Python的函式库中。(可在EDN网站阅读Using Micro Python for real-time software development或5 Advantages of using Micro Python for Embedded Software Programming两篇文章,以获得更多相关细节。)
1 N$ l2 L) b: u! R8 D" |; Q9 q% G
) Q& S! D! H# m3 l; r* g* M 技巧4―利用传感器供货商代码
6 \1 v% g" N6 J) [$ o. ^( B' `* Y3 ?- K& `1 o
任何可以从传感器制造商“搜括”到的范例码,工程师需要走一段很长的路才能了解传感器如何工作的原理。不幸的是,许多传感器供货商并非嵌入式软件设计的专家,因此不要期待可以发现一个可投入生产的漂亮架构和优雅的例子。就使用供货商代码,学习这部分如何运作,之后重构的挫折感将出现,直到它可以被干净利索地整合到嵌入式软件。它可能如“意大利面条般(spaghetti)”开始,但利用制造商对其传感器如何运作的理解,在产品推出之前,将有助于减少许多得 被毁掉的周末时间。
1 B4 C* @ o* i4 q+ Q9 w! X# i9 I$ h
技巧5―使用一个传感器融合函式库; {7 e: W& x2 F! l) j
3 c8 d5 \% r) t1 C- N. F
机 会是,传感器的传输接口并不是太新,且先前没有人这么做过。已知的所有函式库,如由许多芯片制造商提供的“传感器融合函式库”,以协助开发人员快速掌握、 甚至更好,更可避免他们陷入重新开发或大幅修改产品架构的轮回。许多传感器可以被整合至一般类型或类别,而这些类型或类别将使驱动程序顺利被开发,若处理得当,几乎是普遍或是少可重复使用。寻找这些传感器融合函式库,并学习它们的优点和短处。
! V$ Q, i; _0 S5 s" L7 J5 F$ u" k+ T. g( q5 k- b6 V
最后的想法
3 Q$ z0 O; O1 _& ?# H6 L, C( V& J5 d3 }: Y
感测器被整合至嵌入式系统时,有许多方式可以帮助提高设计时程和易用性。开发者在开始设计时,透过一个高层次抽象概念,以及在把传感器整合进一个较低等级的 系统之前,学习传感器如何运作,就绝对不会“走错路”。今天存在的众多资源将可协助开发人员“旗开得胜”,而无须从头开始。 |
|
|
|
|