【物联网中间件平台-05】YFIOs策略开发指南

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介:

 

1 YFIOs简介

YFIOs就是YFSoft I/O Server的简称,在物联网、云计算时代,一切以数据为中心,不同的传感器通过不同的方式接入网络,通过云计算的方式为不同的终端用户提供服务。

为了适应这种新形势的发展,加速和降低各种传感器、智能模块的入网代价,以微软成熟的.NET Micro Framework系统为基础,打造出物联网时代的轻量级嵌入式组态系统 —— YFIOs

详情请参见《YFIOs技术白皮书》。

2 策略开发

2.1 YFIOs SDK安装

请参见文档《YFIOs安装指南》。

2.2新建策略项目

选择YFIOs Strategy模板进行策略开发。

 

2.3代码模板

 

  public StrategyInfo GetStrategyInfo()

 {

      StrategyInfo info = new StrategyInfo();

      info.Name = Name;

      info.ConfigSize = 0;

      return info;

 }

代码模板会自动生成如上代码。

2.4 Hello world

我们在OnRun函数里,添加如下代码:

 public int OnRun(IOperate op, StrategyMode mode,object arg)

 {

        op.Print(MessageType.Debug, "OnRun", Name);

        op.Print(MessageType.Information, "Hello World!!!", this.Name);

        return 0;

 }

2.5 策略测试

2.5.1 编译添加策略

 

编译我们刚刚编写的策略代码。然后启动YFIOs Manager程序,单击树形控件 中的【策略列表】项,双击列表控件中的【新建…】选项,则弹出用户策略窗体。

我们选择策略Debug\le\ YFIOsStrategy1.pe文件。

 

进入【执行模式】面板,我们选择执行模式为Loop,设置循环周期为200ms。

2.5.2 配置项目属性

单击树形控件中的【项目属性】选项,双击列表控件中配置数据,则弹出如下界面,默认情况下,用户调试、普通信息、系统调试信息选项是没有勾选的。

 

我们勾选所有的选项。

2.5.4 项目部署调试

保存项目后,单击【调试】->【部署】菜单(或单击部署图标)进行项目部署。

 

2.5.5 项目运行

单击【调试】->【启动】菜单(或单击启动图标)让项目开始运行。

 

从信息输出窗口中,可以看到,策略已经正确加载,也输出了 Hello World!!!

3 策略调试

虽然编写的策略可以在YFIOsManager通过信息输出的方式进行调试,但是如果策略比较复杂,这种调试方法还是不太理想。

因此我们构建一个TinyIOsEmulator,在Visual Studio 2010环境里进行策略调试。

由于YFSoft.DriverTest是一个标准的.NET Micro Framework程序,所以调试的时候,需要把系统设置为.NET Micro Framework系统模式。

 

确保PF9GND连接。

3.1 构建TinyIOsEmulator

 

TinyIOsEmulator项目里需要引用我们刚刚创建的策略。

测试的主要代码如下:

     public class YFIOsEmulator

    {

        YFIOS ios = new YFIOS();

        public void Run()

        {

            YFIOsStrategy1 mvs = new YFIOsStrategy1();

            mvs.OnLoad(ios.operate, null);

            while (true)

            {

                mvs.OnRun(ios.operate, new StrategyMode(), null);

                Thread.Sleep(3000);

            }

        }

    }

3.2 单步调试

从下图可以看出,在Visual Studio开发环境里,我们已经可以进行调试了,并且调试窗口也输出了Hello world!!!信息。

 

4额外说明

本篇文章仅仅是一篇策略开发入门的文章,要编写一个比较复杂的策略,还需要深入学习各种开发知识。

高阶策略开发相关的内容如下:

(1)       策略运行模式设定;

(2)       策略图形开发;

(3)       策略互相调用;

(4)       策略代码引用第三库;

(5)       策略YFIOBC操作;

(6)       策略直接调用驱动;

5相关资源

1、.NET Micro Framework 官方网址

http://www.microsoft.com/netmf/default.mspx

2、.NET Micro Framework官方博客

http://blogs.msdn.com/netmfteam/

3、中文博客

http://blog.csdn.net/yefanqiu

http://www.cnblogs.com/yefanqiu

4、叶帆科技

http://www.sky-walker.com.cn/

5、物联网中间件技术开发论坛

http://www.yfios.net

 

YFIOs/YFHMI免费试用

从2012-12-21起YFIOs和YFHMI将开展为期半年的免费试用活动,符合申请条件的用户,将依次获取YFIOs和YFHMI的试用机会。

申请表下载:http://sky-walker.com.cn/MFRelease/document/yfios_yfhmi_application.doc







本文转自yefanqiu51CTO博客,原文链接:http://blog.51cto.com/yfsoft/1108715,如需转载请自行联系原作者

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
8月前
|
编解码 小程序 JavaScript
阿里云IoT小程序应用开发和组件实践
通过实验,了解阿里云IoT小程序的应用开发的方法,了解其内置的基础组件使用,以及基于Vue.js实现可复用的自定义组件的方法。
345 1
|
11月前
|
自然语言处理 算法 物联网
阿里云正式发布「IoT消费电子应用引擎解决方案」,应用开发提效70%
阿里云正式发布「IoT消费电子应用引擎解决方案」,应用开发提效70%
217 0
|
存储 传感器 运维
从开源社区到商业核心,EMQ打造物联网数据的全生命周期管理平台
随着5G和物联网技术在各行各业的深度融合,全球物联网应用和设备正处于爆发式增长阶段,或在不久的未来,将真正迎来亿级万物互联的新时代。 “在我们物联网从业者看来,例如汽车、工业领域由于本身就有很多的设备,这些设备会有一个天然的互联需求,形成车联网、工业互联网。”EMQ映云科技(以下简称EMQ)联合创始人兼CPO金发华认为,“物联网一方面可以帮助客户对外把用户体验做得更好,另一方面可以对内实时监控设备的运行状况,提前预警来降低业务中断的风险,从而降低运营成本。因此物联网的需求是一个长远的需求,是一片蓝海市场。”
389 0
|
物联网 中间件 芯片
4.0 IoT方案开发:方案获取|学习笔记
快速学习4.0 IoT方案开发:方案获取
101 0
4.0 IoT方案开发:方案获取|学习笔记
|
网络协议 物联网 AliOS-Things
平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(三)| 学习笔记
快速学习平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台
288 0
平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(三)| 学习笔记
|
边缘计算 人工智能 编解码
平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(四)| 学习笔记
快速学习平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台
269 0
|
边缘计算 编解码 算法
平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(一)| 学习笔记
快速学习平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台
694 0
平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(一)| 学习笔记
|
存储 安全 算法
平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(二)| 学习笔记
快速学习平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台
270 0
平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(二)| 学习笔记
EMQ
|
JSON 运维 Prometheus
易操作、可观测、可扩展,EMQX如何简化物联网应用开发
本文将从可操作性、可观测性、扩展性三个方面分享大规模分布式物联网MQTT消息服务器EMQX 5.0在运维监测、问题排查以及功能扩展中的功能优化,探索如何利用这些优化助力物联网应用开发。
EMQ
366 0
易操作、可观测、可扩展,EMQX如何简化物联网应用开发
|
开发框架 前端开发 JavaScript
万屏互联时代,如何实现物联网产品的轻量级开发?
编辑语: 应用速递栏目:应用速递是面向IoT厂商推荐芯片开放社区(OCC)上的典型应用案例,便于IoT厂商精准获取方案,快速实现产品落地。
175 0
万屏互联时代,如何实现物联网产品的轻量级开发?