开发者社区> 华章计算机> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

《用于物联网的Arduino项目开发:实用案例解析》—— 2.4 Arduino Yún的无线连接(WiFi)

简介: Yún(云)是很高级的Arduino型号,是为物联网而设计的。对于初学者来说,Arduino Yún可能比Arduino Uno要复杂一些,不过它有内置的以太网和无线功能,所以就不再需要额外的盾板了。 在第1章中介绍过,本书会始终使用Arduino Uno。
+关注继续查看

本节书摘来自华章出版社《用于物联网的Arduino项目开发:实用案例解析》一 书中的第2章,第2.4节,作者[美]安德尔·杰韦德(Adeel Javed),更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.4 Arduino Yún的无线连接(WiFi)

Yún(云)是很高级的Arduino型号,是为物联网而设计的。对于初学者来说,Arduino Yún可能比Arduino Uno要复杂一些,不过它有内置的以太网和无线功能,所以就不再需要额外的盾板了。
在第1章中介绍过,本书会始终使用Arduino Uno。这一节只是给手上有Arduino Yún,又想用它来实现本书所介绍的原型作品的读者提供一个参考。尽管在本书的其他部分都不会再提到Arduino Yún,下载的代码还是会带有Arduino Yún兼容的部分。

2.4.1 硬件需求

把Arduino Yún连接到互联网上并不需要任何额外的硬件,所以图2-7中只有Arduino Yún。

2.4.2 软件需求

为了写互联网连接代码,需要Arduino IDE 1.6.4或更新版本的软件。

2.4.3 无线设置

与Arduino Uno不同,Uno需要插一块无线或以太网盾板,Arudino Yún则自带了内置的以太网和无线连接功能。Arduino Yún可以像电脑一样直接接入有线或无线的网络。所以,不需要为它写连接互联网的代码,而是需要配置它来连接到你的网络上去。本节就来介绍Arduino Yún的无线设置。

557087481c778e78aba36ffab2ee902b891ea8d4

1.用Micro USB线把Arduino Yún与电脑相连。
2.Arduino Yún也能以热点的方式工作,所以在你的电脑上,搜索Arduino Yún的WiFi信号。由于所购Arduino Yún的不同,在电脑能看到的WiFi连接中的名称可能会是ArduinoYunXXXXXXXXXXXX或LininoXXXXXXXXXXXX。如图2-8所示,让电脑无线连接上Arduino Yún。

44bcf77a6c15893119bd2ff68a5bbb93c19d06f0

3.一旦连上,在电脑上打开网页浏览器,输入http://arduino.local(如果这个网址打不开,就输入默认的IP地址:http://192.168.240.1)。Arduino Yún的登录屏幕,如图2-9所示。
4.如果这是你第一次访问这块Arduino Yún,就输入默认的密码arduino(如果这个密码不行,试试doghunter,再不然就得查看厂家的文档了)。如图2-10所示,单击“LOG IN”(登录)按钮。

96aadca1517d0e33ffd4d02508aa24f39d5a6ac8

5.成功登录后,就会跳转至Arduino Yún的配置页面,如图2-11所示。单击这里的“CONFIGURE”(配置)按钮。
6.如图2-12所示,你可以修改Arduino Yún板子的名字、密码和时区。在“WIRELESS PARAMETERS”(无线参数)中,从“DETECTED WIRELESS NETWORKS(检测到的无线网络)”中选择你常用的无线网络,并选择加密类型,然后输入网络密码。之后,单击“CONFIGURE & RESTART”(配置并重启)按钮。

c575d39caff94fedd436f8b1a8e2663c63af3036

7.Arduino Yún重启后,会采用新的设置,如图2-13所示。
8.如图2-14所示,在重启过程中,Arduino Yún会为你显示一条消息,表示连接到了常用的无线网络。重启之后,就能用无线路由器分配给Arduino Yún的IP地址来访问它了。如果你无法找出这个分配的IP地址,先按照下面的步骤操作,然后把2.4.4节中给出的代码上传,那个代码会打印出连接数据。
9.打开Arduino IDE,确保Arduino Yún已通过Micro USB线与电脑相连。按照图2-15所示的步骤,在“工具?开发板”中,选择“Arduino Yún”。
10.按照图2-16所示的步骤,从“工具?端口”中,选择标着“Arduino Yún”的端口。

163255edec8aa5a5b2d85f3e166ce92a5de3149840a6b93505b05c121b738c826813262d798a3edb

2.4.4 代码(Arduino)

这样Arduino Yún已经连接到了无线网络,就可以写代码来让Arduino发送和接收互联网上的数据了。因为Arduino Yún已经连接到了互联网,所需的代码就非常少了。不需要代码来做连接,只要用来使用无线连接就可以了。
启动Arduino IDE,输入下面的代码,或者从本书的网站下载代码文件然后打开。所有的文件都在单个源文件(*.ino)中,不过为了便于理解和重用,这个代码被分成以下三个部分:

  • 外部库
  • 互联网连接(无线)
  • 标准函数

外部库

程序2-11是代码的第一部分,引入了运行这个代码所需的所有外部库。对Arduino Yún而言,使得程序可以访问已经建立起来的互联网连接。另外还需要使用来打印出连接数据。Arduino IDE已经安装了这两个库。

c45f907f30a511e1abfb43c87624f44f91f40247

互联网连接(无线)

程序2-12是代码的第二部分,定义了将要用来显示连接数据的函数。因为Arduino已经连接到了无线网络,调用printConnectionInformation()函数就会打印出无线连接的数据。

cbd8dc6894ca306d8750f5db9b64a67ef8df7f3d

标准函数

最后,程序2-13给出了第三部分的代码。它实现了Arduino的标准的setup()和loop()函数。对这个作品而言,只需要打印出互联网连接数据,所以loop()是空的。
这个代码和之前的Arduino Uno的代码的不同是,你需要用Bridge.begin()来初始化桥接部分,这样就能访问到Arduino Yún的互联网连接了。

3b529e3532126c687e96acff3ed3d6b9b04caec93077486510bff5b7017ddcc2e1fd2a7c62cd3a75

至此,完成了编写Arduino代码。

2.4.5 最终的作品

要测试这个应用,按照第1章所介绍的,校验然后上传代码到Arduino。一旦代码上传完,打开串口监视器,就可看到如图2-17所示的日志消息。

70dd02fa4dc7f22d53502d7ae70944bd74c0a5b5

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
物联网入门训练营“W800开发板的奇思妙想”:基于WiFi模块的智能门锁系统
如果你有好的创意或者对文中的创意有更多延展想法,也可以在本文后评论,我们还有少数试用开发板的机会,期待你的评论。
0 0
带你读《面向Arduino用户的树莓派实用指南:物联网应用开发》之二:结识树莓派
本书全面介绍了树莓派开发板的配置步骤、开发环境构建和实际应用技术,讲述了在树莓派上采用C++语言和库进行开发的方法,更为难得的是介绍了结合使用Arduino和树莓派的工具和流程。全书共分为13章,第1章为完成书中的项目提供了一份购物清单;第2章~第5章从硬件设置、操作系统安装和管理、树莓派上C++开发的流程和库等方面进行了介绍;第6章~第11章则采用实例的方式介绍了树莓派在多个方面的开发过程;第13章为总结和建议部分。本书适用于有意学习树莓派开发的读者,尤其适合具有Arduino经验的读者快速入门,也可作为STEAM教育的课程设计蓝本。
59 0
《用于物联网的Arduino项目开发:实用案例解析》—— 2.3 Arduino Uno的无线连接(WiFi)
这一节要给Arduino Uno安装一块无线盾板,然后写代码通过WiFi连接到互联网。 如果你使用的Arduino板子有内置的无线功能,比如Arduino Yún,那么就不需要额外的无线盾板。Arduino Yún的互联网连接设置在本章后面介绍。
2560 0
《用于物联网的Arduino项目开发:实用案例解析》—— 2.2 Arduino Uno的有线连接(以太网)
这一节,我们要给Arduino Uno加一块以太网盾板,然后写代码来通过以太网把Arduino连接到互联网。 如果你用的Arduino具有内置以太网功能,比如Arduino Yún,就不需要额外的以太网盾板。Arduino Yún的互联网连接设置在本章后面会介绍。
1610 0
《用于物联网的Arduino项目开发:实用案例解析》—— 1.2 硬件需求
Arduino有各种模块(又叫作板子),每种板子有不同的规格。如果你的板子不具有你需要的功能,那么总可以找到支持所需功能的盾板(或称扩展板)。在Arduino的世界里,盾板和板子很类似,但是只支持特定的功能,比如可以连接到WiFi网络,或是能控制伺服电机。
1058 0
《用于物联网的Arduino项目开发:实用案例解析》—— 3.3 MQTT
MQTT是一个轻量级的机器对机器的协议。它采用的是发布者-订阅者模型,就是说由一个发布者把数据发布给服务器(也叫作代理),然后订阅者就能收到这个数据。发布者和订阅者彼此互不相识,但他们都连接在代理上,代理异步地完成这个通信。
2532 0
《用于物联网的Arduino项目开发:实用案例解析》—— 1.3 软件需求
Arduino用一种类似C的语言来给Arduino板子编程。我们会使用Arduino IDE来编写代码和上传代码给Arduino板子。
906 0
《用于物联网的Arduino项目开发:实用案例解析》—— 1.5 小结
本章我们学习了Arduino的硬件和软件基础,还研究了Arduino编程语言的一般代码结构,整本书的代码都像这个样子。 本章当然不可能是Arduino的完整内容,它只是实现本书中所有作品所需的基础知识。
1010 0
(原创) alljoyn物联网实验之手机局域网控制设备
AllJoyn开源物联网协议框架,官方描述是一个能够使连接设备之间进行互操作的通用软件框架和系统服务核心集,也是一个跨制造商来创建动态近端网络的软件应用。高通已经将该项目捐赠给了一个名为“AllSeen联盟”的组织,该组织由Linux基金会监督,这是迄今为止推动家庭和工业物联网应用与创新的最广泛的跨行业联盟(更多资料了解www.allseen.org)。
1103 0
文章
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
LoRaWAN广域连接技术 标准应用体会分享
立即下载
阿里云 IoT 芯片模组合作之美
立即下载
阿里云IoT芯片模组合作之美
立即下载