Changes between Version 8 and Version 9 of EcnlProtoTool


Ignore:
Timestamp:
May 6, 2017, 2:37:29 PM (7 years ago)
Author:
coas-nagasima
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • EcnlProtoTool

    v8 v9  
    1919 1.GR-PEACHは固定のIPアドレス「192.168.137.110」となっているので、サブネットの合っているPCのブラウザから「[http://192.168.137.110/]」をURLとして開きます。(IE、Edge、Chrome、FireFoxでは、表示されますが、Operaでは表示が途中て止まってしまいます。原因は未調査です。)
    2020
    21  2.画面は、ブロック、Ruby、出力のタブがあり、ブロックのタブにはメインループやECHONET機器やノードに対応するクラスを選択する領域と、Blocklyによるプログラミング画面があります。Blocklyの部分にはツールボックスがあり、標準のブロックの他にTOPPERS/ECNLのAPIブロックとECHONET機器のプロパティブロックがあります。また、GR-PEACH自体の制御のためにArduinoブロックがあります。ArduinoブロックはGR-CITRUSのRuby版Arduino APIをブロック化してあります。動作はLEDのdigitalWriteしか確認が出来ていない状況です。
     21 2.画面は、ブロック、Ruby、出力のタブがあり、ブロックのタブにはメインループやECHONET機器やノードに対応するクラスを選択する領域と、Blocklyによるプログラミングの領域があります。Blocklyの部分にはツールボックスがあり、標準のブロックの他にTOPPERS/ECNLのAPIブロックとECHONET機器のプロパティブロックがあります。また、GR-PEACH自体の制御のためにArduinoブロックがあります。ArduinoブロックはGR-CITRUSの[https://github.com/wakayamarb/wrbb-v2lib-firm/blob/master/firmware_release/description/Ruby%20Firmware%20on%20GR-CITRUS.pdf Ruby版Arduino API]をブロック化したものです。動作はLEDのdigitalWriteしか確認が出来ていない状況です。
    2222
    2323 3.上の操作例では、「新しい機器オブジェクト」の追加画面から「一般照明」を選択して追加します。
     
    6161WebアプリのビルドにはVisual Studio 2015を使用します。
    6262
    63 「webapp\webmrbc\webmrbc.sln」を開いてビルドします。C#で書かれたコードはBridge.NETによりJavaScriptにコンパイルされ、「webapp\webmrbc\js」フォルダに「webmrbc.js」が出力されます。Bridge.NETはNuGetパッケージで、Visual Studio 2015のビルド時に自動的にダウンロード、インストールされて、ビルドに使用されます。Webアプリはこのプロジェクトで、デバッグすることが出来ます。
     63「webapp\webmrbc\webmrbc.sln」を開いてビルドします。C#で書かれたコードは[http://bridge.net/ Bridge.NET]によりJavaScriptにコンパイルされ、「webapp\webmrbc\js」フォルダに「webmrbc.js」が出力されます。Bridge.NETはNuGetパッケージで、Visual Studio 2015のビルド時に自動的にダウンロード、インストールされて、ビルドに使用されます。Webアプリはこのプロジェクトで、デバッグすることが出来ます。
    6464
    6565ビルドが成功するとビルド後のビルドイベントのコマンド実行により、「httpd-fs」フォルダにGR-PEACHに書き込むWebコンテンツがコピーされ、「tools\makefsdata.exe」で「httpd-fs.bin」にFatFSのディスクイメージとして、まとめられます。
    6666
    67 Webアプリには、Rubyコードをブラウザ上でmrubyのバイトコードにコンパイルするために「mrbc.js」というファイルが含まれています。これはmrubyのコマンドmrbcをEmscriptenでJavaScriptにコンパイルしたものです。手順としてはこちらを先に行う必要があります。
     67Webアプリには、Rubyコードをブラウザ上でmrubyのバイトコードにコンパイルするために「mrbc.js」というファイルが含まれています。これはmrubyのコマンドmrbcをEmscriptenでJavaScriptにコンパイルしたものです。mrbc.jsはコンパイルしたものがリポジトリに登録してあるため、Webアプリのビルドでは省略できますが、mrubyを更新する場合は、こちらを先に行う必要があります。
    6868
    6969mrubyのビルド環境にEmscriptenのtoolchain定義を追加してビルドします。「mruby-1.2.0\tasks\toolchains\emscripten.rake」がEmscriptenのtoolchainの定義です。
     
    133133mrubyの拡張機能mrbgemのmruby-socketを含んでいるので、Ruby版Socket APIを使用出来ます。
    134134
    135 下の例では、「[http://blog.codebook-10000.com/entry/20130809/1376057341 RubyでSocketプログラミング超入門編]」に書かれている記事のRubyコードを実行した様子です。GR-PEACHとBash on WindowsのRubyとのTCP通信を行う例です。
     135下の例では、「[http://blog.codebook-10000.com/entry/20130809/1376057341 RubyでSocketプログラミング超入門編]」に書かれている記事のRubyコードを実行した様子です。GR-PEACHのmrubyで実行したものとBash on WindowsのRubyで実行したものとでTCP通信を行う例です。
    136136
    137137[[Image(tcp_echo.gif)]]