# atk-java-demo **Repository Path**: cislunarspace/atk-java-demo ## Basic Information - **Project Name**: atk-java-demo - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-28 - **Last Updated**: 2026-02-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ATK Java Demo 本项目演示如何使用 **Java** 客户端以 Connect 模式与 **ATK**(国防科技大学空天科学学院)交互,完成场景构建、卫星轨道仿真、可见性分析及报表生成。 代码基于 `ATKConnectorTools.jar` 封装,避免了直接操作 ATK TCP 端口的繁琐细节。 --- ## 📂 项目结构 ``` atk-java-demo/ ├─ pom.xml # Maven 项目配置 ├─ ATKConnectorTools.jar # ATK 提供的 Java 客户端工具 ├─ src/ │ ├─ main/java/com/example/atk/ │ │ ├─ Main.java # 程序入口,演示完整场景 │ │ ├─ AtkConnector.java# 封装 Java 客户端三大核心命令 │ │ └─ AtkScript.java # 示例业务脚本 │ └─ main/resources/ # 资源文件目录 └─ target/ # 编译输出 ``` --- ## 🚀 运行环境 - **JDK** 1.8(建议安装 JRE 1.8.0_151 或兼容版本) - **Maven** 3.6+ - 已安装并可启动的 **ATK** 软件(本案例使用 ATK 3.5.3 验证通过) - `ATKConnectorTools.jar` 放置于项目根目录(可从 ATK 安装包中获取) --- ## 🔧 编译与运行 ### 1. 修改配置路径 在 `Main.java` 中配置本地 Java 可执行文件路径和 `ATKConnectorTools.jar` 路径,例如: ```java private static final String JAVA_EXE = "C:\\Program Files\\Java\\jre1.8.0_151\\bin\\java.exe"; private static final File ATK_JAR = new File("D:\\Codes\\atk-java-demo\\ATKConnectorTools.jar"); ```` ### 2. 启动 ATK 打开 ATK 软件,但**不要**加载任何场景。 ### 3. 编译运行 可以直接使用 IDEA 运行 `Main.java`。 --- ## 📜 示例执行内容 示例脚本会: * 创建场景并设置时间 * 添加地面站、卫星、传感器 * 配置可见性约束 * 计算可见性并生成 `Access.txt` 报表 所有 ATK Connect 指令均通过 `atkConnect` 调用,并通过返回值 `rtnData` 获取运行结果。 --- ## ⚠️ 避坑指南 1. **选对文档** * ✅ **正确**:使用《ATK二次开发使用手册》 * ❌ **错误**:参考《Connect模式功能介绍》(它是 ATKClient 客户端的命令说明,不是 Java API) 2. **Java API 核心方法** * `atkOpen(host, port)` * `atkConnect(conID, command, objPath, cmdParamString)` * `atkClose(conID)` 3. **获取执行结果** * **不要**去监听 ATK 服务端口 * **直接**用 `atkConnect` 的返回值接收运行结果(`rtnData`) 4. **理解交互原理** * Java 客户端并不直接访问 ATK TCP 端口,而是通过 `ATKConnectorTools.jar` 进行封装和通信 --- ## 📚 参考 * 《ATK 二次开发使用手册》