CRI Atom Craft 外部(外部プロセス)で実行したスクリプトから、ロボット機能を使用することができます。
リモート実行時の外部実行スクリプトとの通信には TCP/IP プロトコルを使用します。
リモート実行を行うには、「スクリプト」メニューから「サーバー」、「スクリプトサーバーを起動する」を選択して、ロボット機能の通信処理用サーバーを起動します。
サーバー設定(IPアドレス、ポート番号)は、「スクリプト」メニューの「スクリプト設定」から行います。
サーバーを起動したら、外部のクライアントからスクリプトにて接続を行います。
Python スクリプトのローカル実行 用に作成したスクリプトは、コンソール版 CRI Atom Craft からも実行することができます。
コンソール版 CRI Atom Craft については、 CRI Atom Craftターミナル(コマンドライン)ビルドについて を参照してください。
(1) CriAtomCraftC.exe にオプション-runrobotserver
を与えて開始します。また、任意でIPアドレスとポート番号を指定することが可能です。
(2) コンソールツールがスクリプトの待機状態になります。
(3) スクリプトの待機中に-serverexit
を入力してエンターを押すと、コンソールツールが終了します。
スクリプトの待機中、下記のコマンドのみを受け付けます。実行ファイルに指定するオプションは使用できません。
コマンド | 説明 |
---|---|
-serverexit | サーバーの通信待機処理を終了し、アプリケーションを終了させます。 |
-serverreboot | サーバー処理を再起動します。何らかの原因でリモートAPIが正しく処理出来なくなった場合に使用してください。 |
リモート実行用スクリプトでは、リモート実行用プラグインパッケージ内のモジュールを使用します。
リモート実行用プラグインパッケージには、リモート実行のための 通信 モジュール 「cri.atomcraft.criatomcraft_api_lib」 が用意されています。
この 通信 モジュール をインポートし、機能の初期化、CRI Atom Craft との接続を行うことで、リモート実行が可能になります。
※ リモート実行用プラグインパッケージの設定については、 リモート実行のための環境設定 をご覧ください。
例えば「 Hello World をスクリプトログに表示する 」チュートリアルのスクリプトをリモート実行対応にすると次のようになります。
このスクリプトを helloworld.py として保存し、ターミナル(コマンドプロンプト)から下記コマンドを実行すると、CRI Atom Craft に文字列が出力されるのが確認できます。
※ 環境によっては、Python3 の実行ファイルは "python3" ではなく "python" の場合もあります。