微软Win10 IoT系统初探 只支持三款硬件平台
在物联网时代,微软希望通过Windows 10 IoT系统,将业务扩展到物联网及其它智能硬件领域。据笔者了解,目前Windows 10 IoT支持三大系列的硬件设备,分别是树莓派2、英特尔的MinnowBoard Max及Galileo X86平台、Arduino。其它硬件暂时还不支持。
上图的启动画面大家应该很熟悉,但这里笔者要告诉大家的是,这个画面并不是桌面版Windows 10的,而是Windows 10 IoT物联网操作系统的启动画面。
7月底,Windows 10操作系统正式发布,除了桌面版及手机版外,微软首个真正意义上的物联网操作系统Windows 10 IoT版本也同时发布。
在今年深圳Maker Faire活动上,微软就展示了Windows 10 IoT的跨平台应用。当时,微软工作人员对笔者表示,各个版本的Windows 10内核架构是一样的。软硬件可以使用统一的驱动、API、界面。这样,只要用户的电脑、手机、智能设备用的是Windows 10的平台,开发者开发的Windows应用程序就可以完美实现跨平台应用。开发的程序不用任何更改,就可以安装到使用Windows 10的各种智能设备上,省去了应用移植的麻烦。同时,智能硬件设备也自然实现了互联互通。
在微软Win10公测时,笔者就在树莓派2上安装了IoT的版本,当时在调试这个版本时,走了不少弯路。在正式版Win10 IoT系统发布后,笔者也随即下载并安装了正式版的Win10 IoT系统。
树莓派2是在2015年春节前推出的升级版开源硬件,与前一代树莓派相比,处理器由原先的博通单核ARM11架构BCM2835升级到了四核Cortex-A7架构BCM2836,主频由700MHz提升到900MHz。内存由512MB提升到1GB。由于是开源硬件,在购买树莓派2时有很多种选择,笔者使用的树莓派2是由欧时电子代理的B型产品,由英国生产。
先上两张不同的版本的主界面截图:
第一张是测试版的主界面,版本号为10.0.10152
第二张是正式版的主界面,版本号为10.0.10240
界面的主要区别是正式版中增加了多国语言选择及官方教程。
与测试版相比,正式版的Windows 10 IoT系统安装正加简便,安装界面由原来直接使用DOS命令,改为了图型界面。安装是需要准备一张容量至少8GB的TF卡(Micro SD卡)。
系统安装完成后,这张8GB的TF卡容量变为64MB。通过磁盘管理软件可以看到安装程序对这张卡进行了分区。四个分区中只有第一个64MB的分区被分配了盘符,所以在Windows下只能看到一个分区。
系统盘准备好后,把这张TF卡插到树莓派2的TF插槽上,连接网线、HDMI线、USB有线或无线鼠标(也可以插上USB键盘),接通5V2A电源后,系统顺利启动。
系统启动后,电脑Windows 10系统中的Windows IoT Core Watcher监测及应用部署程序会检测到树莓派的系统已经启动并联网。
通过Powershell程序可以对Windows 10 IoT系统进行设置。
也可以通过Web管理界面对硬件系统进行简单的设置。
Windows 10 IoT正式版提供了详细的教程,通过教程程序员可以轻松入门。
值得说明的是,要为Windows 10 IoT开发程序,需要使用微软Visual Studio 2015开发套装产品。如果用于商用场合,这个开发套装不是免费的。如果只是用来学习,可以使用免费的community版本。
Windows 10 IoT正式版自带了一个Blink闪光DEMO程序,按主界面的开始按钮后,树莓派2上的绿色LED指示灯就会根据设定的时间间隔闪烁。
据笔者了解,在Windows 10 IoT上也可以使用无线网卡或蓝牙,以摆脱网线的限制。但目前为止,这个系统在树莓派2上只支持Broadcom BCM43143的USB无线网卡,这个网卡基本上只能从国外购买。在英特尔MinnowBoard Max上,Windows 10 IoT支持多种常见芯片的USB无线网卡,但由于MinnowBoard Max开发板价格较贵,在国内创客中的普及率并不高。
笔者认为,一个折衷的办法是,使用一个具备AP功能的无线路由器,可以一定程度上让Windows 10 IoT摆脱网线的困扰。现在不少几十元的无线路由器都具备AP功能,使用路由器中的 无线中继模式(wireless repeater) ,再将配置好AP功能的无线路由通过网线连接树莓派2,即可实现远距离无线连网。
在物联网时代,微软希望通过Windows 10 IoT系统,将业务扩展到物联网及其它智能硬件领域。据笔者了解,目前Windows 10 IoT支持三大系列的硬件设备,分别是树莓派2、英特尔的MinnowBoard Max及Galileo X86平台、Arduino。其它硬件暂时还不支持。其中,在创客领域中流行的Arduino产品,微软是通过Windows Remote Arduino 开源Windows Runtime组件库及Windows Virtual Shields for Arduino开源库两种方式,让创客实现了对Arduino的控制及开发。
从现在的情况来看,微软IoT支持的硬件平台还比较少,与Google阵营相比,在物联网时代,微软还有很多工作要做。