#!/bin/bash # 快速开始脚本 - Linux/macOS echo "==========================================" echo "车辆运动模型校准 - 快速开始" echo "==========================================" # 检查Python依赖 echo "检查Python依赖..." python3 -c "import serial, numpy, scipy, matplotlib" 2>/dev/null if [ $? -ne 0 ]; then echo "安装依赖..." pip3 install pyserial numpy scipy matplotlib fi # 提示用户连接硬件 echo "" echo "请确认:" echo "1. 车辆已放置在空旷场地" echo "2. UART5已连接到电脑" echo "3. GPS/IMU工作正常" echo "" read -p "按回车继续,或Ctrl+C退出..." # 检测串口 echo "" echo "可用串口:" if [ "$(uname)" = "Linux" ]; then ls /dev/ttyUSB* 2>/dev/null || echo "未找到USB串口" ls /dev/ttyACM* 2>/dev/null read -p "请输入串口号 (例如 /dev/ttyUSB0): " PORT else echo "请手动输入串口号" read -p "串口号: " PORT fi # 记录数据 echo "" echo "==========================================" echo "步骤1: 数据记录" echo "==========================================" echo "现在将启动数据记录..." echo "请在车辆上:" echo " 1. CH8拨到 < 1500" echo " 2. CH7拨到 > 1800" echo " 3. 等待48秒测试完成" echo "" read -p "按回车开始记录..." python3 tools/calibration_logger.py -p "$PORT" # 查找最新的日志文件 LOGFILE=$(ls -t calibration_*.log 2>/dev/null | head -1) if [ -z "$LOGFILE" ]; then echo "错误:未找到日志文件" exit 1 fi echo "" echo "日志文件: $LOGFILE" # 分析数据 echo "" echo "==========================================" echo "步骤2: 数据分析" echo "==========================================" read -p "按回车开始分析..." python3 tools/calibration_analyzer.py "$LOGFILE" # 显示结果 echo "" echo "==========================================" echo "完成!" echo "==========================================" echo "输出目录: calibration_results/" echo "" echo "生成的文件:" echo " - calibration_parameters.json (参数文件)" echo " - *.png (可视化图表)" echo "" echo "下一步:" echo " 1. 查看 calibration_results/calibration_parameters.json" echo " 2. 复制 recommended_config 中的参数" echo " 3. 更新到 STM32H743/FML/motion_config.h" echo " 4. 重新编译、烧录、测试" echo ""