走进MEasy的世界:基于STM32MP1的IOT参考设计
前言:在万物互联快速发展的趋势下,板卡处理器性能、内存大小、接口外设等都是人们非常关心的硬件参数,但是如何让硬件的作用实现它的功能最大化,一套完善的软件支持尤为重要。
背景:随着HTML5技术的发展,Web的功能和性能获得大幅度的提高,Web应用的跨平台特性使得其能够运行在嵌入式平台上成为可能。米尔电子为解决用户的难点以及行业痛点,提供了MEasy IOT参考设计等特色系统应用,这是采用MYD-YA157C开发板作为硬件平台,基于多种语言设计而成的一套由Web Demo组成的人机交互系统。
下面我们继续了解关于基于STM32MP1的IOT参考设计:
一、什么是MEasy IOT?
MEasy IOT是深圳市米尔电子有限公司开发的一套由WEB Demo组成的人机交互系统。硬件平台基于MYD-YA157C;软件基于YOCTO制作生成的linux文件系统,包含Python WEB运行环境和WEB应用程序。Web Demo是基于Python2.7编写的B/S架构的应用,包含Flask, Javascript,css, HTML等多种组件。MEasy IOT的结构框图如下所示:
该系统分为应用层、驱动层以及硬件层,目前推出了Web Demo应用提供给用户参考,有下面几个特点:
1、轻量化连接:MEasy IOT使用D-Bus作为应用程序和底层硬件的访问接口,高效低延迟。例如ADC,LED的控制都是通过D-BUS的实现的Method和Signal来进行访问和控制的。
2、模块化拓展:MEasy IOT中的网络管理应用则使用开源Connman作为中间层来实现对网络设备的控制, Connman也是一个基于D-Bus的完全模块化的系统,可以通过插件化进行扩展,以支持EtherNet、WIFI、3G/4G、Bluetooth等网络设备的管理。
3、集成化应用:MEasy IOT软件在目标板上目录结构包含由YOCTO配方直接生成的应用程序和库。
二、使用简介
1.登录
使用前准备开发板上电前请网线插到对应的接口。开发板网口1设置的静态IP为192.168.1.100,需要在PC添加192.168.1网段的IP,然后将开发板和PC机接入交换机中或者直连,WEB默认的url为http://192.168.1.100:8080,进入后的欢迎页面如下图所示:
进入欢迎页面后需要登录才能进行操作,点击右上角的Login按钮进行登录,默认帐号为admin,密码为admin.
2.系统信息
本页面展示了MYD-YA157开发板的软硬件信息:
3.设置
可以根据使用需要进行以太网、WiFi、蓝牙的开关以及地址设置:
三、应用展示
在当今火热的IOT领域,一个符合物联网MQTT通信协议以及电力IEC61850标准的设备能够让您的设计轻松融入云的世界。
基于这两个物联网协议标准,米尔电子推出了一套完整的物联网框架参考设计,下面为Web的Demo的演示界面,提供基于网页的远程配置和通信协议演示,支持RS232、RS485、WiFi/BT、4G/GPS、以太网等丰富的通信和无线接口。
1.MQTT协议:
MQTT(消息队列遥测传输)是ISO 标准下基于发布/订阅范式的消息协议,工作在 TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。
MQTT协议演示界面展示:
远程发布消息,接受消息,并操作本地硬件进行动作响应
测试步骤
1.通过WIFI设置页面进行WIFI连接,等待左侧的导航栏上面WIFI状态徽章变为你所连接的WIFI名称。
2.进入MQTT应用界面,点击 MQTT服务器页面中的连接按钮,来连接MQTT服务器。
3.点击MQTT订阅页面中的订阅按钮,然后再点击MQTT发布页面中的发布按钮,订阅页面中即可收到消息。
IEC61850协议:
IEC61850是变电站自动化系统(SAS)中通信系统和分散能源(DER)管理的国际标准。它通过标准的实现,实现了智能变电站的工程运作标准化。使得智能变电站的工程实施变得规范、统一和透明。
IEC61850协议演示界面展示:
基于板卡和PC的通信演示,实现AD采样的实时上报
测试步骤
测试LED:
1. 点击IECScout(需用户自行下载)主界面下面的 Discover IED 按钮,然后输入输入服务端的IP地址 192.168.1.100 ,输入完成后点击 Discover 按钮。
2.进入Browser页面,可以看到以MYIR1命名的IED设备模型。点击IED设备模型下面的Data Models->LD1->GGIO1进入通用I/O控制界面。双击GGIO1下面的LED1数据对象,可以看到Switch这个数据属性,然后点击上方菜单栏的Write按钮即可对LED1进行控制.
3.在Value栏选择true,然后点击Write按键,此时开发板上的LED D2就被点亮了,同时WEB页面IEC61850应用中LED的状态也被打开了。
测试ADC:
1.在IECScout软件通用I/O控制界面,依次点击ADC1->adcMag即可看到ADC的值,这个值和当前WEB页面IEC61850应用中的ADC的值是一样的。
2.在WEB页面IEC61850应用中点击ADC下面的更新按键,此时WEB页面中ADC的值更新到了最新值,同时ADC的值也写入到了IEC Server中,此时需 要在IECScout软件中点击菜单栏的Read all按钮来更新通用I/O控制界面中ADC的值。
四、硬件平台介绍
米尔MYD-YA157C开发平台由核心板MYC-YA157C和底板MYB-YA157C组成,邮票孔方式连接。该平台采用STM32MP157系列高性能处理器,提供了HDMI+RGB+MIPI高性能显示,千兆以太网,WIFI/蓝牙,RS232/RS485/CAN等丰富接口,贴合应用场景的产品定义,稳定可靠的硬件设计,有助于简化工业制造、消费电子、智能家居、医疗等行业应用高性能解决方案的开发。
小结:米尔精心打造的基于STM32MP1的IOT参考设计,采用硬件+MEasy IOT系统的方式,能够帮助用户轻松解决上层应用以及底层驱动之间的大部分开发难题,同时提供丰富的硬件接口资源,以及出色的成本优势,满足您物联网产品开发的80%基础需要。
目前该产品已经上市热售,可以前往米尔官方淘宝店铺进行购买。更多产品详情点击如下链接了解:
http://www.myir-tech.com/product/myd-ya157c.htm
走进MEasy的世界:基于STM32MP1的IOT参考设计的更多相关文章
- [C#] 走进 LINQ 的世界
走进 LINQ 的世界 序 在此之前曾发表过三篇关于 LINQ 的随笔: 进阶:<LINQ 标准查询操作概述>(强烈推荐) 技巧:<Linq To Objects - 如何操作字符串 ...
- 走进缓存的世界(三) - Memcache
系列文章 走进缓存的世界(一) - 开篇 走进缓存的世界(二) - 缓存设计 走进缓存的世界(三) - Memcache 简介 Memcache是一个高性能的分布式内存对象缓存系统,用于动态Web应用 ...
- C#7.2——编写安全高效的C#代码 c# 中模拟一个模式匹配及匹配值抽取 走进 LINQ 的世界 移除Excel工作表密码保护小工具含C#源代码 腾讯QQ会员中心g_tk32算法【C#版】
C#7.2——编写安全高效的C#代码 2018-11-07 18:59 by 沉睡的木木夕, 123 阅读, 0 评论, 收藏, 编辑 原文地址:https://docs.microsoft.com/ ...
- 走进JavaWeb技术世界1:JavaWeb的由来和基础知识
本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...
- ESP8266开发之旅 基础篇① 走进ESP8266的世界
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 走进JavaWeb技术世界3:JDBC的进化与连接池技术
走进JavaWeb技术世界3:JDBC的进化与连接池技术 转载公众号[码农翻身] 网络访问 随着 Oracle, Sybase, SQL Server ,DB2, Mysql 等人陆陆续续住进数据库 ...
- 走进JavaWeb技术世界14:Mybatis入门
本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...
- [转]走进 LINQ 的世界
序 在此之前曾发表过三篇关于 LINQ 的随笔: 进阶:<LINQ 标准查询操作概述>(强烈推荐) 技巧:<Linq To Objects - 如何操作字符串> 和 <L ...
- 小丁带你走进git的世界三-撤销修改
一.撤销指令 git checkout还原工作区的功能 git reset 还原暂存区的功能 git clean 还没有被添加进暂存区的文件也就是git还没有跟踪的文件可以使用这个命令清除他们 g ...
随机推荐
- docker启动redis端口映射错误问题解决
今天使用docker安装redis,使用的时候出现了一些问题.第一次安装好后,在虚拟机后台启动了redis,然后在连接虚拟机的redis的时候怎么也连不上.出现这种情况我第一反应是防火墙没有开启所以我 ...
- Spring-data-Jpa项目搭建
传送门:Spring Data 学习 Spring Data 开发环境搭建 Spring-data-jpa详解 简介 Spring Data是什么 Spring Data是一个用于简化数 ...
- Python多重继承之菱形继承
继承是面向对象编程的一个重要的方式,通过继承,子类就可以扩展父类的功能.在python中一个类能继承自不止一个父类,这叫做python的多重继承(Multiple Inheritance ). 语法 ...
- MQTT协议的学习
MQTT是一个客户端服务端架构的发布/订阅模式的消息传输协议.它的设计思想是轻巧.开放.简单.规范,易于实现.这些特点使得它对很多场景来说都是很好的选择,特别是对于受限的环境如机器与机器的通信(M2M ...
- qt连接mysql数据库实例
qt5.2版本已经封装进去了mysql驱动,所以省去了我们现编译的麻烦!!! #include <QCoreApplication> #include <QDebug> #in ...
- python 迭代器和生成器详解
一.迭代器 说迭代器之前有两个相关的名词需要介绍:可迭代对象:只要定义了__iter__()方法,我们就说该对象是可迭代对象,并且可迭代对象能提供迭代器.迭代器:实现了__next__()或者next ...
- POJ_1564_dfs
题目描述: 每组数据给定一个大的数,和一系列降序的数值,要求列出不重复的数值中挑选的数的和为大数的方案,每一种方案里,每个数值最多只能使用一次. 思路: dfs基础题,每次记录大数和当前总和的差值,当 ...
- constrainlayout布局
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/r ...
- BZOJ 2161 布娃娃(权值线段树)
题意 给n<1e5个娃娃,每个娃娃有属性\(p\),\(c\),\(l\),\(r\)(均在ll范围内),问你对每个娃娃\(i\),满足所有\(l_j\leq p_i\leq r_j\)的娃娃\ ...
- css中flex布局
一.Flex布局是什么? Flex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性. 任何一个容器都可以指定为Flex布局. .box{ display: flex; ...