CRI ADX  Last Updated: 2024-07-17 10:48 p
Python脚本的远程运行

在CRI Atom Craft外部的脚本运行

从CRI Atom Craft外部(外部进程)运行的脚本可以使用Robot功能。
远程运行时使用TCP/IP协议与外部运行脚本进行通信。

启动脚本Server

要执行远程运行,从"脚本"菜单中选择"Server"和"启动脚本Server"后,启动Robot功能的通信处理用Server。

可以在"脚本"菜单的"脚本设置"中,对Server设置(IP地址和端口号)进行配置。

一旦启动Server,就会从外部客户端连接到脚本。

从控制台版本CRI Atom Craft远程执行

为 criatom_tools_atomcraft_api_buildin 创建的脚本也可以从CRI Atom Craft的控制台版本执行。
有关CRI Atom Craft的控制台版本,请参阅 CRI Atom Craft终端(命令行)构建

执行图像

(1) 使用选项“-runrobotserver”启动 CriAtomCraftC.exe。您还可以选择指定 IP 地址和端口号。

CriAtomCraftC.exe -runrobotserver
CriAtomCraftC.exe -runrobotserver 127.0.0.1 9000

(2) 控制台工具将等待脚本。

(3) 在等待脚本时,输入 -serverexit 并按 Enter 键退出控制台工具。

等待命令

当脚本等待时,仅接受以下命令。无法使用可执行文件中指定的选项。

命令 描述
-serverexit 终止服务器的通信待机进程并终止应用程序。
-serverreboot 重新启动服务器进程。如果由于某种原因无法正确处理远程 API,请使用此选项。

用于远程运行的脚本的编写

远程运行用脚本中将使用远程运行用的插件包中的模块。
远程运行用插件包中包含用于远程运行的 cri.atomcraft.criatomcraft_api_lib
可以通过导入此 通信模块 ,初始化功能并将其连接到CRI Atom Craft,执行远程运行。
关于远程运行用的插件包的设置,请参照 远程运行的环境设置

例如,通過 在脚本日志上显示Hello, World 教程的脚本与远程运行兼容,将如下所示。

import sys
import cri.atomcraft.criatomcraft_api_lib as acconnect
import cri.atomcraft.debug as acdebug
# 初始化
result = acconnect.initialize()
if result != 0:
print("initialize error")
sys.exit()
# 执行连接
result = acconnect.connect("127.0.0.1", 9000)
if result != 0:
print("connection failed")
acconnect.finalize()
sys.exit()
# 执行命令
acdebug.log("Hello World!")
# 连接结束
acconnect.disconnect()
# 结束处理
acconnect.finalize()

通过将此脚本另存为 helloworld.py ,并从终端(命令提示符)执行以下命令,字符串将输出到CRI Atom Craft。

python3 helloworld.py

根据不同环境,Python3的可执行文件可能是 "python" 而不是"python3" 。