zoukankan      html  css  js  c++  java
  • 【物联网中间件平台05】YFIOs策略开发指南

    文档名称

    YFIOs策略开发指南

    版本

    V1.0.0

    作者

    叶帆

    日期

    2012-12-25

    历史

    文档列表

    http://www.sky-walker.com.cn/MFRelease/YF_document_list.pdf

    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

  • 相关阅读:
    Laravel $request添加数据或数据修改
    PHP 生成随机字符串
    MySQL 的日期类型有5个,分别是: date、time、year、datetime、timestamp。
    Windows10系统PHP开发环境配置
    yii 分页查询
    win10系统 安装好composer后 cmd 命令行下输入composer提示不是内部或外部的命令,也不是可执行的程序或批处理文件
    MySQL锁机制&&PHP锁机制,应用在哪些场景中呢?
    linux 自总结常用命令(centos系统)
    HTTP和HTTPS有什么区别? 什么是SSL证书?使用ssl证书优势?
    怎么在vi和vim上查找字符串
  • 原文地址:https://www.cnblogs.com/yefanqiu/p/2845713.html
Copyright © 2011-2022 走看看