“云中论道”之——使用开源技术和Azure公有云服务快速搭建云端IoT解决方案(上)

“云中论道”技术课堂第一课开讲啦!微软各路技术咖们齐聚一堂,为你们带来干货不断!做为“云中论道“课堂的开课之做,咱们首先邀请到了微软Azure专家级的架构师:槐长清,他为咱们带来了关于“使用开源技术和Azure公有云服务快速搭建云端IoT解决方案”的精心讲解。

本文做者介绍:

 

微软Azure专家级架构师,江湖人称“槐长清”,曾连续5年被评为微软最有价值专家,多年云计算从业经验,对微软公有云解决方案有深刻研究。


涉及产品及技术:

树莓派(Raspberry Pi)、DebianLinux、Python、Azure,看到上面提到的技术,聪明的读者是否是认为走错了方向?这仍是微软技术分享吗?这纯粹就是开源技术分享,中间夹杂了一点Azure而已么?网络

这就要从微软开源谈起了,其实微软如今彻底是拥抱开源的态度,因此,你们没有看错,咱们确实就是要向你们展现,对于使用非微软平台和技术的用户,Azure如何帮助你们快速搭建IoT平台。因此,在这个解决方案里面,您将不会看到Windows 10 IoT操做系统,也不会看到.Net开发环境。另外,本文不仅讲理论,本文会一步一步带着你们真正实现IoT完整解决方案。架构

其实本文也是我为一个真实客户提供的Azure IoT解决方案的技术总结和分享。但愿经过本文讲解,能让你们可以更加深刻的了解到Azure IoT解决方案究竟可以作到什么,另外具体该怎么作;还有就是经过本文,你们能够了解到Azure对开源异构系统的支持状况。ssh

IoT解决方案架构:测试

 

经过架构图咱们能够看到,咱们会使用温度传感器ADT7410,树莓派RaspberryPi 2,无线网卡模块,WiFi路由器,最终链接到Internet,而后经过Azure进行云端的数据处理,最终将处理的数据进行数据分析展示。云计算

解决方案流程:spa

本解决方案的大体流程为:经过Raspberry Pi读取ADT7410温度传感器的温度值,而后Raspberry Pi会经过WiFi模块将收到的温度值实时上传到Azure事件中心服务(AzureEvent Hub),而后Stream Analytics服务会对Azure事件中心服务中收集上来的温度数据进行实时处理,并将处理完成后的数据存储到SQL Database服务中,最后咱们会经过Power BI对Stream Analytics或SQL Database中的数据进行分析和展示。操作系统

由于流程比较长,因此咱们将本解决方案作成系列文章,分两篇文章进行发布,其中本篇文章为你们介绍流程1-3,也就是Raspberry  Pi的设置和温度传感器的安装调试部分;而在下一篇文章中,咱们会为你们继续介绍流程的4-6,Azure相关服务的建立和配置、Python Azure应用程序的代码逻辑以及经过Power BI进行数据验证,最后对解决方案进行总结。.net

1. 对Raspberry Pi进行OS的安装和设置:3d

安装Linux操做系统,将OS写入到microSD,用以启动Raspberry Pi:调试

本解决方案中咱们选择Debian RASPBIAN,可从http://www.raspberrypi.org/downloads/进行下载,注意选择2015-05-05-raspbian-wheezy.img镜像。如图:

将下载的镜像写入microSD,本解决方案中咱们选择使用Win32 Disk Imager v0.9.5,可从http://sourceforge.net/projects/win32diskimager/进行下载,下载下来的文件名为:Win32DiskImager-0.9.5-install.exe。写入流程如图,注意来源选择2015-05-05-raspbian-wheezy.img镜像,目标Device选择microSD所在驱动器:

使用TeraTerm对RaspberryPi进行管理:

使用串口和USB转换模块链接Raspberry Pi和PC,如图:

从https://osdn.jp/projects/ttssh2/releases/63767下载TeraTerm,本解决方案使用的是teraterm-4.88.exe。对TeraTerm进行配置:TeraTerm 进行COM端口的设置,选择USB链接转换模块,并进行COM波特率设置,设置为为115200,启用控制台进行登陆,链接到Rapberry,以下图(左);配置好后,便可对Raspberry Pi进行管理,以下图(右):

对OS进行设置:

Pi用户密码和root管理员密码更改:

 

OS文件系统扩充:

执行raspai-config,选择ExpandFilesystem,如图:

RaspberryPi的无线LAN的设置和与PC的链接:

这一部分,跟所使用的无线网卡模块和WiFi路由器的具体配置具备相关性,你们能够按照本身所使用的无线LAN和WiFi路由器的使用说明进行配置。须要注意必定要选用Raspberry默认已经集成驱动的无线LAN。

配置完成后,Raspberry Pi便可接入网络,咱们即可使用TeraTerm经过IP对Raspberry进行管理。关闭Raspberry Pi以后,能够移除USB串口转换线缆。

3. 温度传感器的安装调试:

物理安装,如图:

配置I2C模块:

再次运行raspi-config,配置运行I2C内核模块,以及设置为默认开机加载:

向/etc/modules中添加i2c-dev模块:

I2cdetect命令查看ADT7410设备总线地址:

验证ADT7410温度传感器工做和链接是否正常,adt7410.py验证测试程序:

作完以上几步,树莓派和温度传感器相关的安装和配置已经完成,在下一篇文章里面,我将为你们讲述Azure相关服务的设置,其中包括Event Hub的建立和设置,SQLDatabase的建立和设置以及Stream Analytics的建立和设置。另外还会为你们详细介绍Raspberry Pi Python Azure程序的代码逻辑和如何经过Power BI进行数据验证。

更多信息,咱们下一期文章再见!敬请期待!

最后,小编还有一个呼吁:

 

当即访问http://market.azure.cn

相关文章
相关标签/搜索