前面,我们在 MYS-6ULX-IOT 开发板上成功地驱动了 RTL8188 WiFi 模块,也为 MYS-6ULX-IOT 的系统增加了 curl 命令。接下来,我们就来通过这个 WiFi 模块连接云端实现一个最简单的物联网应用。


提供 Web API

  在本示例中,我的 web 服务器部署在阿里云上,大家也可以通过局域网内的服务器进行实验。

  Web 服务器实现了 HTTP 和相关的 TCP 连接处理,同时具有 web 资源管理等功能。常见的 Web 服务器有 Nginx、Apache、IIS(Windows),而嵌入式领域则通常采用轻量级的 lighttpd、thttpd、minihttpd 等等。

  这里,我们实现一个物联网的点灯实验。在我的服务器上创建了一个 JSON API,它的内容如下:

{"led": true
}

  在 MYS-6ULX-IOT 端,我们尝试用 curl 去获取这个 API:

# curl http://www.luckydarcy.top/2018/iot/api.json
{"led": true
}

  很棒,看起来已经获取到云端数据了!
  


Python 实现连接

  实际上,上述的 api.json 为我们提供的是 LED 的状态信息,我们的目的是让设备通过 Web API 实现 LED 的亮/灭操作。因此,我们要编写程序实现 HTTP 请求,并从中解析 LED 的状态。
  MYS-6ULX-IOT 的 Base 系统已经包含了 Python2.7,那么简单起见,我们这里用 Python 来实现。示例程序如下:

# cat led.py
import urllib2
import json
import os, timewhile True:results = urllib2.urlopen('http://www.luckydarcy.top/2018/iot/api.json').read()status = json.loads(results)['led']if status == True:print "Light ON"os.system("echo 1 > /sys/class/leds/user/brightness")else:print "Light OFF"os.system("echo 0 > /sys/class/leds/user/brightness")time.sleep(3)

  首先使用 urllib2.urlopen 发起 HTTP 请求;然后使用 json.loads 解析 api.json,获取 LED 状态值;最后通过 os.system 调用本地 Shell 命令,对 LED 的文件 I/O 进行操作。为了降低请求频率,对每次请求增加了3秒的延时。

  好啦,我们在 MYS-6ULX-IOT 开发板运行 python led.py 看看。

安装 json 模块

  很遗憾,出现了 “ImportError: No module named json” 这样的错误,显然是因为当前系统没有 json 模块所造成的。然而,也没有 pip,所以我们需要手动安装 json 模块了。
  登录 https://pypi.org/ 查找 json 模块,这里我们安装的是 simplejson,选择下载源代码 simplejson-3.15.0.tar.gz。

  在 MYS-6ULX-IOT 开发板上解压缩 simplejson-3.15.0.tar.gz,进入目录 simplejson-3.15.0,然后执行以下命令安装即可:

python setup.py install

测试

  别忘了,我们还要将 import json 修改为 import simplejson as json
  然后再次执行,可以看到终端打印“Light ON”,并且 MYS-6ULX-IOT 开发板上的蓝色 USER LED 亮起来了。登录服务器将 api.json 修改为 "led": false,此时终端打印“Light OFF”,并且 LED 灭。

# python led.py
Light ON
Light ON
Light ON
Light OFF
Light OFF

  嗯哈!这样,我们就实现了一个简单的物联网应用啦~

MYS-6ULX-IOT 开发板测评——实现简单的物联网应用相关推荐

  1. MYS-6ULX-IOT 开发板测评——面向高端物联网的极具性价比解决方案

    上周在爱板网成功申请了 MYS-6ULX-IOT 开发板的试用,收到米尔科技的 MYS-6ULX-IOT 开发板之后,嗯-比我想象中的要小巧,包装盒不大,也没有搭配过多的配件. 打开盒子一看,里面除了 ...

  2. 2021物联网开发学习——基于小熊派IoT开发板Bear-Pi-IOT、E53_IA1_智慧农业拓展板与小熊派-鸿蒙·季Bear-Pi-HM Nano并接入Hi-Link

    2021物联网开发学习--基于小熊派IoT开发板Bear-Pi-IOT.E53_IA1_智慧农业拓展板与小熊派-鸿蒙·季Bear-Pi-HM Nano并接入Hi-Link 目录 作者介绍 目的 用到的 ...

  3. 【致敬未来的攻城狮计划】--RA2E1 开发板测评(2)LED闪烁

    前言 (1)首先感谢 李肯前辈的活动,从而申请到了RA2L1开发板的测评. (2)注意,学习本文之前要学习 瑞萨Renesas RA2L1 开发板测评(1)--keil环境配置: (3)我们拿到开发板 ...

  4. UDI Tegra K1 SOC安卓游戏开发板测评

    UDI Tegra K1 SOC安卓游戏开发板测评 据我所知,优地科技的这款开发板是业内首款基于NVIDIA 的Tegra K1主芯片的安卓嵌入式高性能计算开发板,它的强大之处,可能只有亲自体验才能真 ...

  5. AB32开发板测评:GPIO控制RGB彩灯

    文章目录 [AB32VG1]开发板测评:RGB彩灯 一.初始准备 1.硬件平台 2.软件平台 二.操作步骤 1.RTT环境生成 2.RTT程序编写 3.程序下载,观察现象 三.心得 [AB32VG1] ...

  6. 【致敬未来的攻城狮计划】--RA2E1 开发板测评(4)UART通讯

    前言 (1)首先感谢 李肯前辈的活动,从而申请到了RA2L1开发板的测评. (2)学习本文之前要具备的知识: [致敬未来的攻城狮计划]--RA2E1 开发板测评(1)keil环境配置: [致敬未来的攻 ...

  7. 华为认证物联网开发利器:小熊派IoT开发板

    今年8月份我和小伙伴们协同研发的基于NB-IoT的智慧路灯监控系统有幸入选华为开发者大赛IoT赛道决赛,决赛期间留意到70%以上的个人/学生开发者团队都使用到华为认证(匹配HCIP:华为认证ICT高级 ...

  8. 小熊派IoT开发板系列教程正式发布——免费学习

    小熊派介绍 小熊派IoT开发板一款由南京厚德物联网有限公司联合华为技术有限公司基于STM32L431RCT6设计的高性能物联网开发板.开发板充分考虑物联网感知层设备的多样性,具有强大的可扩展性,用于提 ...

  9. 鸿蒙IOT开发板 小熊派上手体验

    鸿蒙IOT开发板 小熊派上手体验 一.简介 二. 上手搭建开发环境 1. 准备开发工具 2. 使用VMWare 创建虚拟机 4. 设置磁盘映射 5. 在ubuntu里获取源码 6. 编译代码 三.连接 ...

  10. 海图SD3403开发板测评

    今天给大家带来一款高性价比的嵌入式开发板测评--海图HT-SD3403.这是一款基于SD3403芯片设计的嵌入式开发板,最近使用的人很多啊,笔者这里也是买了一块,我们来看一下,他的具体的情况. 首先, ...

最新文章

  1. 如何设计Lighthouse定位接收电路
  2. Druid 执行时间分布规则
  3. UNITY_MATRIX_IT_MV[Matrix]
  4. MySQL 优化原理(三)
  5. Jquery中表单序列化提交到后台是怎样进行URL解码查看参数
  6. (18)css常用样式—定位属性
  7. ELAS_ROS算法在KITTI数据集上生成稠密点云
  8. python椭圆花瓣_python之花瓣美女下载详解
  9. Laravel框架从零搭建
  10. 软件人员kpi制定模板_软件科技公司绩效考核办法模板.doc
  11. hdu5773 The All-purpose Zero(DP)
  12. 可口可乐市场调查失败的原因_经典案例可口可乐一次市场调研失败的教训
  13. 超简单的visio安装教程——史上最简单(office版本不撞车)
  14. AD中PCB板设计中如何将正反面相互对调
  15. 小白如何启动Vue项目?
  16. Linux基本命令---Linux进程管理指令
  17. macbook pro下安装三系统
  18. 计算机导论第二章习题答案,计算机导论课后习题答案.doc
  19. android activity 后的形式 藏
  20. SDN-OpenFlow1.0协议分析

热门文章

  1. python热力图_一、python可视化——热力图
  2. 【文件加密】电脑文件夹简单加密教程
  3. Threejs 精灵火焰特效 Sprite Firey Aura effect
  4. 项目开发流程_【直播回放】房地产开发项目全流程全税种税收筹划
  5. 360 Pika 主从配置
  6. 裂变海报设计的落地干货,为什么海报在裂变活动中这么重要?
  7. 用小马激活的千万小心!!
  8. 基于火焰传感器的火焰警报
  9. BlowFish算法Java实现
  10. 脚踏实地、仰望星空的贵系学子们