Translate

2016年5月19日木曜日

Arduino "Ciao CPU"を翻訳してみた

前回の記事の続き

Ciao CPU
http://labs.arduino.org/Ciao+CPU


だけ 翻訳してみました。
at your own risk で参考にしてください。



-----

Ciao CPU


Arduino Ciaoは、MCUのためにSketch記述がしやすいシンプルで軽量なライブラリと、ボードのCPU/MCUサイドを越えて動作するpythonで実装されたコア、の2つのパーツで構成されています。

Arduino Ciaoのこちら側のパーツはCiao Coreにより定義されます:ネットワーク・プロトコルを使った通信のために、いくつかのMPUからのコミュニケーション経由でコマンドを受け取り、ネットワーク・プロトコルやサードパーティのサービスやプラットフォームを使った通信のために、いくつかの(コネクタと呼ばれる)モジュールと相互接続する強力なソフトウェアです。

CiaoのMCU側はこの文章に説明があります。

Getting Started



Ciao コアは、全体としてモジュール化されており設定可能な状態になっています。ローカルリソース(ファイルシステム、コンソール、メモリ)と相互接続して、多くの標準的なプロトコル(XMPP、HTTP、WebSocket、COAP等)やアプリケーション(Jabber、WebChat、Twitter、Facebookなど)による通信のためいくつかの"コネクタ"が提供されています。

図→ http://labs.arduino.org/dl1271?display

CPU/MPU


Ciaoの CPU/MPU 側は Ciao コアといくつかのコネクタで構成されています。今日まで我々はあなたがイメージしている者と同等のコネクタをサポートするために開発してきました。

Ciao Core


Ciao はMCUと相互接続し、すべての組み込みコネクタを使ったルータとして振る舞うために開発されたマルチスレッドコンポーネントコアです。Ciao Coreは、コンソール(ttyATH0)のようなコンソールを使ってCPUのシリアル共有経由でMCUと通信をおこないます。

シンプルですが効果的な文字列エンコーディングは、MCUに登録済み/有効なコネクタを無制限にCPUと通信させるために開発されてきました。

Ciao Core は、MCUによって開始されハンドルされます。

Ciao コネクタ


コネクタは、JSONを使ってTCP経由でCiao Coreと通信するためのスタンドアロンモジュールです。
コネクタはあなたの好きなどんなプログラム言語でも開発することが可能です。

コネクタは2つのタイプに分類可能です:
  • managed:開始停止がCiao Coreにより管理される
  • independent:有効な場合CiaoCoreへ接続するソフトウェアを手動(もしくは自動で)開始停止する

それぞれのコネクタは、Ciao Coreが必要とする情報を提供するための設定ファイルを少なくとも1つ持っています:
 
  • コネクタ名は?
  • コネクタはenabledか?それともdisabledか?
  • どのような機能をコネクタが提供するか(読み取り、書き込み、返信の書き込み)?

そのような設定ファイルはCiao ライブラリの設定ディレクトリに格納されている:/usr/lib/python2.7/ciao/conf/

List of Connectors


既に有効なコネクタの発見やセットアップ方法の学習などは、Ciaoコネクタページをチェックしてください。

新しいコネクタの開発


上記のとおり Ciao Coreはモジュールとなるように設計されています。このように必要があれば誰でも1つ以上のコネクタを開発することができます。

コネクタは、LininoOS上でTCPプロトコルやJSON文字列をあつかえればどんなプログラミング言語を使って開発してもかまいません。これ以上の新規コネクタの開発方法やTCP経由でCiao Coreと相互接続する方法は次のページを参照してください。

------

コネクタの定義ファイル上に通信固有の情報を書き込みSketchからはciaoライブラリ経由でname値を指定して呼び出す仕組みになっている。

私が購入したArduino YunのLininoOSはバージョンが古く、Ciaoを動かすには更新しなければならない。

0 件のコメント:

TensorFlow 1.3.0 rc0 がリリースされたことを知る

今朝、Twitterのタイムラインに #TensorFlow 1.3.0rc0 has been released! Please see the release notes for details on added features and changes: htt...