《用于物联网的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”的端口。

163255edec8aa5a5b2d85f3e166ce92a5de31498 40a6b93505b05c121b738c826813262d798a3edb

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的互联网连接了。

3b529e3532126c687e96acff3ed3d6b9b04caec9 3077486510bff5b7017ddcc2e1fd2a7c62cd3a75

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

2.4.5 最终的作品

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

70dd02fa4dc7f22d53502d7ae70944bd74c0a5b5
相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
1月前
并发编程之读写锁ReadWriteLock的详细解析(带小案例)
并发编程之读写锁ReadWriteLock的详细解析(带小案例)
19 0
|
5天前
|
搜索推荐 Java 程序员
【案例解析】从菜鸟到高手,如何优雅地使用Java条件语句?
【6月更文挑战第14天】本文介绍了Java编程中条件语句的重要性,特别是if-else和switch的使用。通过四个案例,展示了如何优雅地运用这些语句:案例一演示了基础if-else用于用户登录响应;案例二利用switch处理枚举类型,如订单状态;案例三展示了条件语句的嵌套与组合,用于游戏评分系统;案例四探讨了代码优化与重构,减少冗长的if-else结构。文章强调,掌握条件语句能提升编码效率和代码质量,鼓励开发者不断实践以写出高效优雅的代码。
|
1月前
|
数据采集 数据可视化 数据挖掘
利用 DataFrame 进行数据分析:实战案例解析
【5月更文挑战第19天】DataFrame是数据分析利器,本文通过一个销售数据案例展示其使用:读取数据创建DataFrame,计算产品总销量,分析月销售趋势,找出最畅销产品,并进行数据可视化。此外,还提及数据清洗和异常处理。DataFrame为数据处理、分组计算和可视化提供便利,助力高效数据分析。
52 3
|
1月前
|
传感器 存储 安全
【物联网】Arduino 实验合集
【物联网】Arduino 实验合集
40 2
|
1月前
|
开发框架 搜索推荐 安全
【Uniapp 专栏】基于 Uniapp 的电商应用开发案例解析
【5月更文挑战第12天】使用Uniapp跨平台框架开发电商应用,结合丰富的组件和API,实现首页、商品详情、购物车及订单等关键功能。注重界面设计和用户体验,处理商品逻辑、订单管理和支付接口集成。同时,适应多平台特性,加入个性化推荐、商品直播和社交分享等特色功能,以降低成本、提升竞争力,打造高效购物体验。此案例展示了Uniapp在电商领域的潜力和优势。
|
1月前
|
Java Spring 容器
【AOP入门案例深解析】
【AOP入门案例深解析】
25 2
|
1月前
|
缓存 NoSQL Java
Redis7的10大应用场景和案例解析
你在项目中使用 Redis 实现了什么应用场景,欢迎一起跟 V 哥讨论。同时也做个小调查,朋多少兄弟是需要了解 Redis 核心源码的,人多的话,下一篇 V 哥写 Redis7的源码分析,人少的话就算了,感谢。
|
1月前
|
传感器 存储 监控
编写Arduino代码:构建物联网设备,实现上网行为管理软件对网络的实时监控
使用Arduino和ESP8266/ESP32等Wi-Fi模块,结合传感器监控网络活动,本文展示了如何编写代码实现实时监控并自动将数据提交至网站。示例代码展示如何连接Wi-Fi并检测网络状态,当连接成功时,通过HTTP POST请求将“Network activity detected.”发送到服务器。通过调整POST请求的目标URL和数据,可将监控数据上传至所需网站进行处理和存储。
108 0
|
1月前
|
人工智能 决策智能 C++
【AI Agent教程】【MetaGPT】案例拆解:使用MetaGPT实现“狼人杀“游戏(1)- 整体框架解析
【AI Agent教程】【MetaGPT】案例拆解:使用MetaGPT实现“狼人杀“游戏(1)- 整体框架解析
254 1
|
1月前
并发编程之CountDownLatch和CyclicBarrier的详细解析(带小案例)
并发编程之CountDownLatch和CyclicBarrier的详细解析(带小案例)
14 0

相关产品

  • 物联网平台
  • 推荐镜像

    更多