116 lines
2.7 KiB
Batchfile
116 lines
2.7 KiB
Batchfile
@echo off
|
||
chcp 65001 > nul
|
||
setlocal enabledelayedexpansion
|
||
|
||
:: 机械臂客户端启动脚本 (Windows版本)
|
||
:: 包含虚拟环境激活和客户端启动
|
||
|
||
:: 设置脚本目录
|
||
cd /d "%~dp0"
|
||
|
||
:: 颜色定义 (Windows CMD不支持颜色,使用echo代替)
|
||
echo ================================================
|
||
echo 🦾 机械臂客户端启动器 (Windows)
|
||
echo ================================================
|
||
echo.
|
||
|
||
:: 检查虚拟环境是否存在
|
||
if not exist "venv" (
|
||
echo [ERROR] 虚拟环境不存在,请先运行 start_service.bat 创建虚拟环境
|
||
pause
|
||
exit /b 1
|
||
)
|
||
|
||
:: 激活虚拟环境
|
||
echo [INFO] 正在激活虚拟环境...
|
||
call venv\Scripts\activate.bat
|
||
if %errorlevel% neq 0 (
|
||
echo [ERROR] 虚拟环境激活失败
|
||
pause
|
||
exit /b 1
|
||
)
|
||
echo [SUCCESS] 虚拟环境已激活
|
||
|
||
:: 检查必要文件是否存在
|
||
echo [INFO] 检查必要文件...
|
||
if not exist "src\robot_client.py" (
|
||
echo [ERROR] 缺少必要文件: src\robot_client.py
|
||
pause
|
||
exit /b 1
|
||
)
|
||
echo [SUCCESS] 所有必要文件存在
|
||
|
||
:: 解析命令行参数
|
||
set SERVER=http://localhost:5000
|
||
set MOCK=--mock
|
||
|
||
:parse_args
|
||
if "%~1"=="" goto :end_parse
|
||
if "%~1"=="--server" (
|
||
set SERVER=%~2
|
||
shift
|
||
shift
|
||
goto :parse_args
|
||
)
|
||
if "%~1"=="--real" (
|
||
set MOCK=
|
||
shift
|
||
goto :parse_args
|
||
)
|
||
if "%~1"=="--mock" (
|
||
set MOCK=--mock
|
||
shift
|
||
goto :parse_args
|
||
)
|
||
if "%~1"=="-h" goto :show_help
|
||
if "%~1"=="--help" goto :show_help
|
||
if "%~1"=="/?" goto :show_help
|
||
|
||
echo [ERROR] 未知参数: %~1
|
||
echo 使用 %~nx0 --help 查看帮助
|
||
pause
|
||
exit /b 1
|
||
|
||
:show_help
|
||
echo 用法: %~nx0 [选项]
|
||
echo.
|
||
echo 选项:
|
||
echo --server SERVER 服务器地址 (默认: http://localhost:5000)
|
||
echo --mock 使用模拟控制器 (默认)
|
||
echo --real 使用真实机械臂控制器
|
||
echo -h, --help, /? 显示帮助信息
|
||
echo.
|
||
echo 示例:
|
||
echo %~nx0 # 基本启动(模拟模式)
|
||
echo %~nx0 --server http://192.168.1.100:5000 # 连接远程服务器
|
||
echo %~nx0 --real # 真实机械臂模式
|
||
pause
|
||
exit /b 0
|
||
|
||
:end_parse
|
||
|
||
:: 显示启动信息
|
||
echo.
|
||
echo [INFO] 启动配置:
|
||
echo - 服务器地址: %SERVER%
|
||
if not "%MOCK%"=="" (
|
||
echo - 控制模式: 模拟模式
|
||
echo [WARNING] 当前使用模拟控制器,不会控制真实机械臂
|
||
) else (
|
||
echo - 控制模式: 真实机械臂
|
||
echo [WARNING] 当前使用真实机械臂控制器
|
||
)
|
||
echo.
|
||
|
||
echo [INFO] 按 Ctrl+C 停止客户端
|
||
echo ================================================
|
||
echo.
|
||
|
||
:: 切换到src目录
|
||
cd src
|
||
|
||
:: 启动客户端
|
||
echo [INFO] 正在启动机械臂客户端...
|
||
python robot_client.py --server %SERVER% %MOCK%
|
||
|
||
pause |