Zigbee何时成为主流

一个月以前和德国同事开会的时候,我提起是不是应该考虑一下物联网IoT时代通讯协议的事情,然后就自然而然的谈起了Zigbee。比较意外的反应有两个,一个是大多数人的茫然,完全不知道我在说什么。只有一个同事低头笑了一下,苦笑着说一句:都二十年了,这个该死的协议还活着啊?

第一拨同事的表现其实在我的预想中,因为Zigbee基本上是一种工业领域碰不到的东西。开玩笑说:我们给产品命名从来都是用凶猛的动物,比如老鹰,老虎。再怎么着也不会用这么偏门的蜜蜂名字。其实来Zigbee的目标市场从来都是家住商用领域(也不能完全这么说,北京4号线延长段已采用Zigbee),和工业真是没有多少交际。

而那个同事所说的话让我思考了半天。

Zigbee协议是1990年就提出了,2004年成为IEEE 802.15.4-2003标准。算起来真是不算很短的历史了。可是,为什么这个如此被人推崇的协议,却有如此被人“唾弃”呢?

Zigbee
目标无所不包的Zigbee标准,实际中却不惹人爱

这里进行一个情景分析:如果我自己用Arduino做一个项目,我会采用什么样的协议来做模块间的通讯呢?

  • NRF24L01 2.4G 无线模块,淘宝价格10块,Arduino有现成的库
  • W5100 以太网扩展+SD扩展+Web服务, 30块
  • ESP8266 WiFi模块,15块
  • 蓝牙模块,20块,直接使用串口读写,可以和手机连接
  • XBee模块,50块,需要master+router方式将通讯转入以太网

考虑到10个节点规模的一个室内环境监测和安防物联网,如果采用XBee这个Zigbee的方案,光是通讯就比所有其他的主要器件加起来还要昂贵了。为什么主打家居市场的Zigbee如此昂贵呢,我们看到了目前主流支持Zigbee的芯片SOC供应商只有那么几个,和蓝牙,以太网控制器SOC的供应商相比简直惨不忍睹。

mesh networking
Zigbee的自组网能力是蓝牙和Wi-Fi缺乏的,但其节点类型的要求却成为设计者的难题。

开放上呢,Zigbee是不是有什么巨大的优势,可以减轻MCU侧的开发量呢?就Arduino来说,其他的协议有着非常直白清晰的开发接口——直接将这个通讯接口当作串口来读写即可,其他的收发验证,重发都无需处理。而Zigbee的难度简直就要上升到操作系统的级别。对于我提到这这个case,末端模块的工作只是每五分钟读取一下温度,湿度传送上来这样的工作,在Zigbee本身上开发的时间远远超过核心任务本身。

这样头重脚轻的样子,看来Zigbee就变成了一种不是很讨好的标准。而事实上的情况也说明了这一切。随着蓝牙4.0的推出,低功耗的优势在慢慢的退却,只有自组网这个特点还能让人有所期待。

能下的断言就是:Zigbee,你还没有为迎接IoT的到来下定决心。

比较Wi-Fi,蓝牙协议这些年的改进真是可以说日新月异。几乎每一两年就有新的标准推出,不但修正了以前的问题,还从对手那里学习到了很多新的特点。经过这几年Wi-Fi和蓝牙的不断竞争,两个协议都没有死,而且都更加健壮了。例如蓝牙不断突出自己节能的特点,而Wi-Fi也是步步紧逼,最近瑞芯发布的RKi6000就直接将功耗瞄准蓝牙4.0 LE。反观Zigbee几十年走下来,却基本上还是老样子,出生时候的毛病还都在,直到2007年才推出了PRO版本的增长型升级。

更加重要的就是作为一个协议,你需要的是参与者。恨你的人不是敌人,沉默才是你的敌人。时下做产品的,都希望有一个活跃的社区,大量的会员,众多的厂商来参与。其方法就是尽量采用更加开放的姿态,积极的鼓励这些参与者为这个协议添砖加瓦,最终营造一个摩天大厦。开放的TCP/IP 从娘胎里面就是抱着这个姿态出来的,这也是为什么基本上是全面压倒性的获得了市场地位。蓝牙在最早的时候还是很封闭的,直到被Wi-Fi的大量同类功能震撼到,感到了危机感马上也改变了策略。而Zigbee我只能说还在自己的黄粱美梦中,忘记了世界正在改变,这还真是像极了很多工业产品的特征。缺少参与者和贡献者的Zigbee变得越来越曲高和寡,开发平台和成本都成为了短板。

一个案例就是关于GPL兼容的问题。Zigbee的license和GPL等很多开源协议有冲突,这个问题经过协会的board讨论后,结论是Zigbee没有做出任何妥协。我猜测原因就是会员费基本是这个标准最大的收入来源,所以不能妥协。所以冲突的那条就是:商业用途的Zigbee软件是要收会员费的(每年3500刀)。不知道这个会员费是按什么计算到了,如果Linux集成了这个协议栈进去,到底会收谁的钱?就这样通向物联网的大门几乎可以说是Zigbee自己关闭的。最近 Google Brillo华为LiteOS还有更多的厂家纷纷推出了针对物联网的操作系统,大部分还是基于Linux和其他开源平台的,可以说封闭起来的Zigbee慢慢的缩小了自己通往成功的道路。

前有堵截,后又追兵,Z-Wave的兴起为嵌入式设备带来了一阵新风。单元这两个Z开头的标准能够在即将开始的厮杀中渐渐真正成长起来,为我们带来稳定、低价、方便的物联网通讯新标准。

产品定价的原则和方法

作为产品经理最为头疼的事情往往不是技术和团队,而是在激烈市场的竞争和复杂的组织下达成对自己产品的一致支持。而价格则是4P(Product,Pricing,Place,Promotion)其中关键和复杂的一个因素。对于大一点的公司,研发一个新产品可能需要两三年的时间,但价格的讨论常常也需要将近半年的时间才能完成。

价格不是产品的全部,但它是产品中重要的一部分。
价格不是产品的全部,但它是产品中重要的一部分。

总结一下在工作中为什么需要花费如此长时间才能达成结果,其中最重要的是我们有时候忘记了一下几点:

  • 谁应该参加价格的确定?
  • 定价的总体目标是什么?
  • 价格商议的流程,价格和重要其他因素的关系是否清晰,达成共识?

关于第一点,不同的公司其实来有不同的决策者和参与者,很难用同一的分析来断定。不过,我们要让主要的stakeholders参与到定价的过程中。谁是key stakeholders貌似需要更多的时间来展开话题,这里先打住不跑题了。

定价的目标基本上在决策过程是最容易被悄悄遗忘的。如果有像曾经我做过的项目一样独立项目办公室,在讨论这个话题的几个月,不妨将你们定价的原则和目标贴在墙上。比如常见的定价目标有:

  • 利润目标,如公司的总体EVA, EBIT,ROI设定,或者一个非常有竞争力的产品通过极高的溢价来获取高额的利润。
  • 市场占有率目标,比如新产品要占据市场前三名,那么除了产品本身价格必须比第三和第二有竞争力
  • 宣传和渠道目标,例如不同的渠道采用不同的型号和价格,或者对不同的目标群采用不同的宣传和形象而采用不同的价格。

定价的流程也是要在开始协商价格之前和主要stakeholders明确的,在过程中可以对此进行修改,但要保证所有人能够明确其职责,避免死循环般无休止的讨论。因为平产的价格的讨论无法在一次性讨论后结束,这个流程其实来也是需要进行迭代的。

  1. 建立定价委员会和决策者
  2. 明确定价目标
  3. 定义市场范围,定位和竞争对手
  4. 选择定价方法并尝试定价
  5. 分析竞争对手反应
  6. 分析可获取市场规模
  7. 是否完成定价目标,如果没有回到4
  8. 参与者是否对结果有共识,如果没有回到3
  9. 达成定价

在竞争激烈的市场中,选择目标市场的定位(Market Positioning)和竞争对手(或者替代者)是非常重要的任务。市场区分和定位是很多公司总体的规划,相对很稳定。但很多次失败的定价,由于竞争对手目标的变动造成的不在少数。和开篇所谈到的,一个产品的研发需要很长的时间,在此期间开始瞄准的目标可能已经变化了,我们也需要及时的更新这些信息,在项目中不断的调整产品。这样才不至于在产品上市前期才匆忙的进行应对。

亚马逊定价一贯以低价和长期服务和在线购买收益为准绳,最成功的案例就是Kindle。不过它也有失败的案例,比如去年发布的Fire Phone,盲目自信的定价注定了从开始这个产品就不能成功。
亚马逊定价一贯以低价和长期服务和在线购买收益为准绳,最成功的案例就是Kindle。不过它也有失败的案例,比如去年发布的Fire Phone,盲目自信的定价注定了从开始这个产品就不能成功。

在定价操作中最为实务的就是选择并使用定价方法(或者定价模型)。不同的方法对定价目标有不同的现实意义,需要参与者的角色也有变化。下面列出一些最常用的定价方法。

  • 根据客户定价
    • 期望价格,在投标或者客户总价已经确定的一些项目中,产品的价格首先要在客户预期范围内寻找价格目标。以产品底价为基础,通过添加功能和了解客户期望来增加价格也是非常常见的手段。
    • 心理定价,比如常见的用¥199代替¥200的尾数定价法,让客户觉得价格合适。市场中对一些产品有一些习惯性的价格预期,在此范围内定价。
    • 高溢价定价,让客户感受到产品之外的品牌价值,比如名牌跑车,iWatch。有利于塑造产品优质,高尚的形象。
    • 撇脂定价,和高溢价很类似,不过这是在一个新兴的市场中全新产品可以采取的方法,客户对价格不太敏感,从而在开始赚取高额利润,随着竞争对手的进入,产品开始下调价格。最早的跨大西洋海底电报就是这样定价的,很快就在竞争对手进入之前收回了巨额的投资。
  • 根据竞争和市场定价
    • 跟随竞争对手定价,这是最常见的定价方式,比如国内小米的竞争对手如果远离小米的价格范围,生存是很困难的。
    • 渗透式定价,产品以低价推出,通过快速增长销量来摊薄成本,使得产品的总利润达到目标。其前提是市场上主要竞争对手无法对其低价进行有效的反击。
    • 组合价格,为了和竞争对手有区别,可以将直接竞争之外的一些产品和服务打包在一起出售。比如价格和竞争对手一样,但提供额外的服务,或者易耗品的长期使用费用的优惠。这样竞争对手就很难直接对比价格。
  • 根据公司内部原则定价
    • 公司产品线定价,对于大型的公司会拥有不止一个产品线,公司内部必须对产品线之前的价格有明确的区分。每个产品的定价只能在规定的范围内调整。
    • 成本定价,售价必须满足规定的盈利条件,之上就是客户的买价。关于成本和利润的计算很多公司的方法也是各异的,但一般不仅仅要包含产品的直接成本,而且还要考虑各种摊销和基本的毛利。
    • 免费或者低价,是的很多公司采用免费的策略来定价,然后通过服务,或者其他的产品来获得利润,比如Google。而比如吉利剃须刀是通过低价卖刀架和基本组合,但通过在剃须刀片上加上利润来获取利润的。

实际使用中,这些定价方法有时候是组合使用的,因为一个公司的定价原则一般不是完全单一的,很难用一套简单的定价方法来达成这个目标。

工业4.0的猜想

时下工业界最为热闹的主题除了物联网,就是工业4.0这个话题了。说白话,就是号称第四次工业革命。既然是革命,而且在革命发生前就开始广为宣传的,估计是前无古人的事情了。比较好奇的事情是,既然是这将是第四次革命,那么前三个工业革命是什么呢?查遍网络,却发现根本没有统一,标准的唯一的答案。这里先写一个大家目前比较普遍认可的说法:

The first car

第一次工业也革命叫做“机械化”。起源就是以瓦特发明了蒸汽机为标志,而亨利·福特的流水线为高潮。这场革命的结果是工业实现了机械化,让物质生产脱离了人力的限制,从而人类进入了规模生产的时代。这次革命是全世界最为认可的所谓“工业革命”。

第二次工业革命可以叫做“电气化”。电的使用和产生成为了标志性事件,它们分别是1866年德国人西门子(Siemens)制成发电机,和1870年比利时人格拉姆(Gelam)发明电动机。电力的使用让商品的生产和运输脱离和机械和资源距离的限制,而人类也理所当然的进入了电气时代。随着电气化的推广,在资本主义发展迅速的国家,国内市场以及全球化的商品市场的初步形成。

第三次工业革命是“自动化”。随着计算和控制理论的发展,各种类型的控制器,微型计算机,PLC等自动化控制设备开始遍布工业的各个角落,大量设备具备初步自动运行的能力,大量需要操作人员进行的重复计算被取代了。而与此同时,工业界的数据和信息开始变得日渐重要,我们迎来了信息时代。

值得注意的是,很多人并不认同第三次工业革命的说法,他们认为第三次工业革命充其量只是第二次工业革命的延续,其特点就是将标准化产品生产推广到极致,而没有变化出什么革命性的花样来。于是,除了工业4.0这个说法外,市面上我们还可以听见推广第三次工业革命即将到来的声音。

从这些争论不休的名词中逃脱出来,为什么这个时代大家开始讨论革命呢?难道我们辉煌的工业时代真的遭遇到了什么急需改革的窘境?全球工业现状到底如何呢?我决定坐在电脑前,将这些之言碎语拼接起来。

从重要性来说,我们经历了网络泡沫,金融泡沫之后,世界上主要国家仿佛都进入了新一轮的理性回归——工业再次变得越来越重要了。甚至连美国这个全球高科技的领头羊都在高高挥起工业回归的大旗。自从像是苹果,特斯拉这些新兴美国实体产业的成功制造了万丈光芒,连GoogleFacebook这些互联网巨人们都似乎开始着急玩一些“硬”的产品了。工业发展速度即便是在2009金融危机后的五六年内也基本保持着平稳的增长势头,这让工业GDP成为真正稳定的市场增长,让市场有信心的增长。

回头看中国在过去十几年的发展中,工业制造和设备水平也是得到了长足的发展和增长。各种精密的设备,自动化技术的应用,信息系统,以及从西方学习和借鉴来的先进管理运营经验都在国内公司中出现了,普遍了。很多时候去一些国内客户参观,它们早就不是传统的血汗工厂,而是和国外没有太大区别的现代化工厂了。

既然工业现状如此美好,为什么有这么多人在推广新一轮的工业革命呢?到底我们的工业在当下都有什么新的问题出现呢?

高度自动化的产品已经渗透到了所有量产的产品中,但高效的标准化产品也消灭了产品的多样性。
高度自动化的产品已经渗透到了所有量产的产品中,但高效的标准化产品也消灭了产品的多样性。

最大的问题就是我们开始遭遇市场瓶颈:随着规模制造工业水平的提高,为客户提供足够的商品在主要的市场国家已经不再是主要的问题。我们面对的主要问题是市场已经开始不满足这些标准化生产线上走下了的商品了。因为客户有了主动权,他们需要商品更进一步的满足他们不断增加,更加复杂的个性化的需求。不要不相信,看看苹果的手机款式和iWatch不断增加品种的发展趋势,你就能相信即便是苹果也拗不过这日益贪婪的市场。

那为什么制造业不能多制造一些品种,多开一些工厂,满足各种奇怪的需求呢?这不是更进一步的扩大了市场,让更多的企业受益的好事情吗?

当我们试图将互联网上成功的长尾理论移植到制造业,我们会发现现实是如此的残酷。制造业并没有IT业那样灵活的身手,他们的耳朵和手脚离得很远,制造一个产品后销售渠道的复杂性,供应链的复杂性让他们很难和最终用户和供货商直接的充分交换结构化的信息。大量的制造虽然有自动化来辅助,但很多其实来还是人工,半人工的。大量的品种,复杂的供应链,销售渠道的滞后性,会让制造的质量无法保证一致性。如果链条上任何一环有波动,就会产生大量的死库存。

当互联网企业享受着投资人的追捧的同时,实体制造业却还在面临资金短缺的困扰。特别是国内,制造业企业的资金回收速度都是非常缓慢的,企业间的付款条件极其复杂,而私有中小微企业的融资能力都是很薄弱的。创新总是需要大量前期投入的,这却是生活在那些长尾上企业的毒药。即便是大一些的企业,在国内劳动力成本日渐增长的当下,日子其实来也是非常艰难的。融资困难,成本却不断增长,这基本是国内制造业面临的通病。

雾霾
环境是生存的基础,是马斯洛模型的最底层,没有这个基础一切发展和创新都没有意义

另外一个严峻的现实就是所有的工业化都逃脱不了一个现实,GDP的快速增长和我们脆弱的环境之间成为敌人。当工业巨人越来越伟大的同时,环境却成为了我们的努力。就像是柴静纪录片中描述的矛盾,我们必须发展,但环境不能成为牺牲品。可现在的工业现状貌似并不能和谐的解决这个致命的矛盾。

所以说,现在的工业在成就伟大奇迹的同时,也身患重病。我们急需的是一剂猛药,一个手术,一次升级,一场革命。

我心目中的工业应该至少满足一下几点

  1. 绿色的,满足客户的需求,不要过度设计,在最节省能源和资源的方式下生产制造运输
  2. 无人工厂,人天生就应避免每天机械式的重复工作。我们老祖宗虽然每年都去种庄稼,但庄稼怎么生长,我们不需要日日的协调和辅助,我们只需要关注要什么,过程怎么样,结果怎样。
  3. 发挥人的创造力,not thinking as artist, to be it. 人人都可以成为设计者,制造商,这个世界不再缺乏商品,唯一缺乏的将是创造力

那么相像一下工业的下一次革命会是怎样呢?

沟通的鸿沟将荡然无存

商品不再是从制造商单向输送给最终使用者的物品,所有的商品将是一个双向交流平台,甚至是一个多向交流的平台。你对商品的使用,反馈,别人的经验将可以充分的在任何商品上分享。就像是现在的社交网络那样,每个商品都应该是“活”的。你对商品的不满会立刻变成改进,你的使用习惯会帮助别人,你会通过它认识更多的朋友。我们谈论的不是社交网络,我们谈论的是社交性的商品。

小米不仅只是制造了手机,而且创造了一个巨大的社交团体来收集反馈,主动的帮助小米推广产品,让小米可以在很短的时间售出巨量的产品。
小米不仅只是制造了手机,而且创造了一个巨大的社交团体来收集反馈,主动的帮助小米推广产品,让小米可以在很短的时间售出巨量的产品。

制造业从此也就因为商品的这个特性而改变。像是我这样的产品经理就不会为了了解产品需求和反馈而发愁了。制造商会零距离的接近了每一个使用它的客户,即便是你不说,制造商也知道客户需要的到底是怎样的一个商品。产品没制造出来之前就可以在“云”中的虚拟客户中分析出产品受众的反馈到底如何。而产品本身也就是自己最好的推销员,服务人员,以及说明书。客户再也不用等很多年得到你想要的产品,因为供应链知道你需要什么,而每个OEM的下一级也一样,我们都只提供恰恰好的产品,不用浪费任何资源。

期待更加创新的科技的出现

自动化和信息化这些陈词滥调已经招摇了好多年,而革命性的东西往往是我们还不知道怎么称呼他们的。

时下最火爆的创新之一——3D打印到底算不算一种革命性的创新呢?我至少认为它的确打开了一点潘多拉的盒子。任何人都可以在3D软件上设计一个模型,然后交给网上的3D打印服务商制造出一个实体的产品来。通过这个微小的创新,标准化,规模化的制造业就再也不是阻碍创新的瓶颈了。更多的人会将自己的想法变成实体,就像是几十年前那些伟大的黑客创建了GNU,Linux那样。

与众不同
从上世纪所有人都穿着一样的衣服,听一样的流行歌曲不同,这个时代有了更多的异类,个性化的需求孕育着一个缤纷的新市场。

物联网(IoT)也许也是一个期待创新出现的土壤。我们知道所有的大型厂商都对物联网虎视眈眈,这片田野已经变成了传统工业巨头,IT新兴巨头,各种民间爱好者鱼龙混杂的底盘。但目前为止,没有一个像是以太网那样让这片土壤有共同语言的标准出现,也许Zigbee还在努力,不过差距看来还是不小。《圣经》上说所有的人都说一种语言,他们就能干成任何他们想要做成的事情。也许这个真需要一点奇迹。

除了实物的创新,理论上的革命也是必须的。控制论已经停滞在那里很多年了。当年写论文搜索的那些关键词,多少年还是没有变过,而落在实际工业控制系统中的,更是少之又少。当我们过多的把目光投在搜索,广告,金融投机算法上的时候,就把目光投向历史更深远处的机会丧失了。新的时代我们需要一群大师的兴起,就是20世纪波澜壮阔的几十年那样,为我们绘画出未来的蓝图。

金融、信息和工业的大融合

RMB.人民币.资源
货币的本质就是市场中所有人对政府的信任,比特币则是建立在大家对算法的信任,资本就是在这些信任的基础上运作的。

逐利是资本的本性。但资本如同和黄仁宇在《资本主义和二十一世纪》中说的金钱的说到底就是信用,货币就是国家的信用。为什么工业没有能得到足够的金钱,就可以说为什么一个新的产品得不到足够的信任呢?很显然后面这种解释让我们更加能明白我们在创造新产品的时候需要的是什么——让投资者对你的产品有信心,让消费者对你的产品有兴趣。如果这些都能直接的做到,我们可以直接跳过金钱这个媒介。

未来我们要做到的就是金融和工业的融合。

今天,我们的制造业承担了太多的风险和责任。而其实来这一切都是可以通过金融手段来解决的。如果我们能创造一个广泛而统一的平台为一些制造商提供全面的信用服务,这些制造商之间完全就可以避免相互交换信用和资本的损失,实物的生产将全面通过证卷化的方式进行同步虚拟交易。制造商再也无需提前投入大量的资金,担当严峻的风险进行设计,生产,运输了。

Kickstarter这里说的比较晕,感觉离我们的现实如此遥远。不过我们已经发现有这样一些新兴的服务开始为制造业提供支持。像是Kickstarter,任何有创意和想法的人都已直接向投资者,潜在消费者兜售你脑子里面的创意,直到凑够了能制造那个产品的资本后,你可以才开始动工真的生产。当这种类型的制造变成一种常态,就像是产品在出生前就有了和客户的契约,客户对产品本身已经有了共识,推广和营销的花费就无形中得到了消减。

而融资租赁业务也越来越成为一种标准的金融服务方式,为那些短期无法提供回本,却可以有长期收益的制造业提供融资。用户可以租用,也可投资者个产品,甚至通过政府补贴,节能节水等结余来支付。而让我们更值得称道的就是电子商务的兴隆,让制造商彻底从复杂的销售渠道,供应商网络中解脱出来,直接面对供应商,直接面对最终客户。物流,销售,资本等等都已经变成了触手可得的资源。

资本在这个时代是一个个巨大的企业,而在下一个时代他们是平台,让无数个小型的企业在容器中快速的迭代他们的创意,交换资源而无需为资本和资源而担忧。现在的VC在做类似的事情,但前景还远远不止与此。让所有可以通过证卷化来解决的问题都将彻底的虚拟化成为资本的游戏,威尼斯人创造的保险产品让航运成为有利可图的稳妥生意,而创兴的风险也可以慢慢的成为可以量化的商品来出售。各式各样的人才不再限于公司,外包已经让我们慢慢感受到让那些专业人士来处理自己不能应对的问题是多么的高效,未来这样的事情会在更高的层次继续,人类分工的细化也将更微妙。大公司的竞争不是谁提供了更好的产品,而是谁能够提供给更多创新者更好的平台。

一个小的展望

相比于现在,未来的基础是建立在全面数字化管理的基础上的,市场,新能,设计,用户的喜爱,可靠性……一切都通过资本化的数字来描述。究其原因,我们没有办法避免组织的碎片化和扁平化,但我们有了更加高效的工具来管理这一切——信息的高效自由的流通。就同弗莱德曼所说,这个世界是平的,世界的结构是一个扁平化的组织结构。因为新兴的技术和管理方式让我们能够这样管理这个新的工业时代,能够让这个工业时代各个角落的人如此靠近。这注定是一个融合的时代,我们开始慢慢的明白为什么在这半个世纪我们发明了这么一大堆貌似毫无关系的技术,现在我们需要探索的就是如何把这一切都联系起来。

 

Raspberry Pi 的WiFi设置

本来不是什么复杂的事情,但是由于我的树莓派网线接口损坏,使用无线网络成了这个模块最后的选择。为了让这个模块和无线网络连接费了不少力气,所以必须在这里记述一下。

由于网线口损坏,电脑和树莓派的连接是靠串口来连接的,这里用到一个 TTL 转 USB 的工具。设置为 115,200bps 8N1 UTF 编码格式,然后通过 putty 来登录。

首先树莓派能接受的无线网卡并不丰富,这里主要有两个限制:

  • 树莓派 USB 口的驱动能力有限,必须选择能耗低的网卡。一般那种拇指型的 USB 设备能耗还都是可以的。不过即便是选择了很小能耗的网卡,也要保证电源需要有一些余量,我用了个 700mA 的黑莓手机充电器,结果完胜山寨 2A 的 USB 电源。如果供电有问题,可以在终端中看到系统无法正常启动,经常启动到 USB 部分时停滞,重复启动等。这时候需要考虑增加电源供电能力。
  • 只能是 USB 接口的无线网卡,而且网卡的驱动必须得到树莓派系统的支持,最好在购买前到这个网址 http://elinux.org/RPi_USB_Wi-Fi_Adapters 检查一下。这里用了 Ralink 腾达 W311M 150M Mini 无线迷你小 USB 网卡,内部的 RT5370 芯片驱动已经集成在标准 Debian 上了,无须额外安装。启动后,可以通过 lsusb 看看驱动有没有识别正确。在用 iwconfig 来看看是不是识别了这个新的网卡。

如果以上检查都没有问题,我们就可以进行网络的配置。

编辑 /etc/network/interfaces 文件来设定网络接口的特性,其中主要的部分是对无线网络接口 wlan0 的设置:

auto lo
iface lo inet loopback
iface eth0 inet dhcp
allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
pre-up wpa_supplicant -B -Dwext -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf
post-down killall -q wpa_supplicant

文件最后两行,我们会在使能网络的时候启动 wpa_supplican 程序来进行 WPA 无线网络密码登录,其中它的配置文件放置在 /etc/wpa_supplican/wpa_supplican.conf 这个位置。接线来就是设置这个密码问文件了。

ctrl_interface=/var/run/wpa_supplicant
network={
    ssid=“网络 id“
    proto=WPA2
    key_mgmt=WPA-PSK
    pairwise=TKIP
    group=TKIP
    psk=” 密码 “
 }

这里就没有太多要说的了,需要记住的就是 key_mgmt 貌似只能设置成这个,换了别的不好用。

总结一下,这里面容易碰的坑:

  • 没有正确启动 wpa_supplicant 获取 IP 地址,那叫一个愁人。这个程序需要 root 权限。
  • 找一个合适的电源很重要,否则频频重启。
  • 如果 lsusb, lsmod 不能正确的发现设备,例如 TP-LINK WN725N V2 版模块,说明 Wi-Fi 模块的驱动没有被正确的安装过,需要自己编译安装,如果在网络上找已经编译好的模块,比如 WN725N V2 的模块名字叫做 8188eu.ko,需要找到内目前运行内核版本完全一致的,否则无法正常运行。需要注意编译内核模块需要很大的磁盘空间(几百兆)和很长的时间。

有了网络,接下来可以玩的有:

  • 通过 xrdp 配合远程桌面访问树莓派
  • 安装 Apache,MySQL 等等做个网站(不过树莓派在那颗 SD 卡上的 I/O 能力超弱)
  • 安装私有云 owncloud 等
  • 安装 Mercurial 服务器来做版本管理服务器

工业以太网的一点思考

当下,工业以太网可以说是以势不可挡的趋势在四处蔓延。所有重量级的工厂自动化设备供应商都推出了自己的工业以太网解决方案和丰富的产品。连很多客户都从质疑转变了殷切的期望。一个大一统的自动化通讯网络标准呼之欲出。在这种热闹的背后,我们是不是缺少一些冷静的思考——以太网存在已经几十年,为什么这样一种成熟的技术,现在才开始在工业界慢慢的转热呢?

在笔者看来,限制以太网在工业界大展拳脚的条件主要有以下这些

  • 通讯的实时性,工业界的设备实时通讯是必要特性。
  • 成本,包含设备、材料,以及设计、实施的总成本。
  • 统一的标准,无论各家的设备都可以自由的交换数据。
  • 必要性,真的有必要将工业设备连接到互联网(Internet, Intranet)中吗?

目前市面上现场级别的通讯总线,基本上架构于RS-485(MODBUS RTU, PROFIBUS, USS)和CAN(CANopen,DeviceNet)两种标准上。而这两种大有廉颇老矣的标准,却可以充分满足以上的要求,所以也屹立工业界多年不倒。

而以太网呢?

TCP/IP协议的设计并不是以实时通讯为基础所设计的。当我们点击desiyi.com上的链接的时候,并不能知道服务器什么时候能给出反应。在TCP/IP协议栈上,从链路层,IP层,TCP层到应用层,都没有太多考虑实时通讯。即便是后来考虑到实时数据传输(RTP),以及QoS(Quality of Service)管理中,TCP/IP也只能保证“尽可能”的让数据传输的实时性得到保证。所以,为了实现实时通讯这个工业通讯的第一要求,工业界不得不改造已经存在多年的以太网标准,从底层开始对协议进行修正来保证连接到这个网络的几千个设备能够高效的实时交换数据。而以往的现场总线中节点的数量则不过是几百个。

为了实现实时通讯,只有改造TCP/IP协议的底层,从硬件层面重新设计来保证部分关键流量的实施传输。目前市面上所有廉价的商用以太网设备都是无法支持这种从底层协议栈修改过的以太网通讯的。而这种专用硬件设备的要求,也就造成了设备成本的急剧增加。

所有IT技术所依赖的都是芯片。而芯片的价格则依赖于产量。现在我们能够享受到几十块钱的路由器和网络设备,正是因为此类设备所使用的通用网络处理器的产量综合是非常惊人的。每个安装宽带的家庭,其实来就是分担这部分制造成本的一部分。但,工业以太网如果使用专用硬件,所面对的挑战就是制造成本无法和民用网络一样具备价格优势。如果各个厂家都使用自己的硬件平台,其制造成本将更高。

这就引出了最关键的话题——统一的工业以太网标准。

目前,工业以太网已经不是以前PROFIBUS那样神秘的通讯协议了。我们在电视、新闻上看到的关于“物联网(Internet of Thing)”的报道,其实来就包含了工业以太网。只不过“物联网”的含义更加宽泛,不仅工业设备要联网,连家里的家电,农业机械,楼宇设备都要联起来。工业界的西门子罗克韦尔分别开发了自己的工业以太网标准和设备。后起的通用电气公司通过挖掘硅谷IT人力资源的方式,组建了一个400人的团队进行这方面的研发。IBM的“智慧地球”项目算是一个概念,而网络巨头思科和高通更是早早就提出了“Internet of Everything”的理念,并大力开始推进实施。所有的工业巨头都意识到互联网的革命将改变工业格局,只是他们没有想好怎么来一起进行这场伟大的变革。

就像是“互联网”这个名字一样,这应该是一个大一统的网络。所有设备可以在上面自由的获取想要的数据。控制器,可以连接到工厂任何角落的传感器,控制车间里面的每一个马达速度。但前提是,他们必须说一种语言。而现况是,各个工业巨头发明的各种方言之间确实无法交流的。这就像圣经里面巴比塔的故事。如果世界上工业界讲述同一种语言,也许我们就能改变整个工业界,但目前为止这种交流被扰乱着,远远达不到我们想要的效率。

在这种吵吵闹闹的纷争中,其实来有一个被遗忘的命题——到底这些工业设备需要不需要接入到互联网中?

从效率上讲,一个TCP/IP报文的长度最短也有近70个字节。而工业设备中简单的设备中使用的报文通常只有七八个字节。虽然以太网可以达到100M/s,但分给更多的设备,每个设备占用更多的报文空间后,其网络利用率并没有显著的提高。而频繁的握手、冲突解决等活动更是降低了实际网络传输带宽。大量简单的设备驳接进以太网,公用一个网络介质进行频繁的数据交换,总体效率并不高。

此外消费领域的互联网运营模式也无法生搬硬套进工业领域。比如数据的产生和消费模式在互联网中主要有三种:服务器=》客户端;客户端《=》服务器;客户端《=》客户端。分析一般用户带宽比例,我们可以知道客户端主要是一个数据消费者。比如web应用中,浏览器主要的作用是下载网页。但工业中,更多的数据是来自末端的传感器和各种简单设备的,位于中心的控制器则负责发号施令。所有设备都一拥而上去请求控制器,则造成不必要的网络负担。如果服务器去一一查询末端设备,则效率低下。如果各个客户端之间自由交换数据,则单个末端设备的设计复杂性和成本会提高。

另据报道,一个意大利的安全公司在几小时内就可以发现SCADA系统大量的安全隐患。大量的工业控制软件是为特定用户特别开发的,没有大量用户的测试基础。更大量的安全隐患是否存在。这不由的让人疑惑,如果接入外部网络,像是破坏伊朗核设施的震网病毒是不是就可以轻而易举的控制工业设备?

如果回头十几年前,我们对现在的互联网是不是也有一样的困扰。交换机曾经还是一个稀罕物,路由器指的是那种几千块的铁盒子。慢的不能再慢的网络带宽里面,各家使用奇奇怪怪的协议通讯,就算是HTTP也会出现完全不同标准下设计的浏览器问题。网络安全问题让各个杀毒软件公司赚的盆满钵满。我们还自信满满的说,手机就是打电话和发短信的,要上网功能干什么。

这并不是说我们无需担忧,同样的问题在工业界也一定有办法会解决,而是我们还看不到工业以太网有当年互联网一样解决问题的基础——庞大的用户群体。他们会一年半换一部手机,三年换一台电脑的速度推进互联网基础的变革。而工业界这样的前提却不存在。

所以这就注定了工业以太网要走一条和互联网完全不同的发展路线,一场自上而下的变革,一场巨头之间的博弈。而接下来的纪念这个伟大的博弈必将越来越激烈,也必将越来越精彩。