""" 配置文件 - 所有可配置参数集中管理 """ import os # 基础路径(部署后对应 ~/work/agv_app) BASE_DIR = os.path.dirname(os.path.abspath(__file__)) # ========== 网络配置(集中管理所有 IP 地址 — 修改此处即可全局生效)========== AGV_HOST = "192.168.60.80" ARM_HOST = "192.168.60.120" # ========== AGV 参数 ========== AGV_CONFIG = { "device": "/dev/agvpro_controller", "baudrate": 10000000, "move_speed": 1.0, "turn_speed": 1.0, } # ========== 机械臂 TCP 客户端 ========== ARM_CONFIG = { "host": ARM_HOST, "port": 5002, "timeout": 8, "retry_times": 3, "retry_interval": 1, } # ========== 地图 ========== MAP_CONFIG = { "map_dir": "/home/elephant/agv_pro_ros2/src/agv_pro_navigation2/map/", "map_file": "map.yaml", } # ========== 摄像头 ========== CAMERA_CONFIG = { "device_index": 4, # AGV 摄像头 video4(Orbbec Gemini 彩色流,YUYV 640x480) "backend": "v4l2", # 使用 V4L2 后端获取标准彩色格式(640x480) "qr_detect_interval": 0.5, "capture_delay": 0.5, } # ========== 机械臂摄像头流 ========== ARM_CAMERA_CONFIG = { "url": f"http://{ARM_HOST}:5003/api/camera/preview", "snapshot_url": f"http://{ARM_HOST}:5003/api/camera/snapshot", } # ========== HTTP 上传 ========== UPLOAD_CONFIG = { "url": "https://ts.zhijian168.com/prod-api/file/uploadImage", "timeout": 30, "max_retries": 3, } # ========== Flask 服务器 ========== SERVER_CONFIG = { "host": "0.0.0.0", "port": 5000, "secret_key": "agv630_secret_key_2024", "debug": False, } # ========== 任务配置存储路径 ========== DATA_DIR = os.path.join(BASE_DIR, "data") os.makedirs(DATA_DIR, exist_ok=True) # ========== 关节角度范围限制 ========== JOINT_LIMITS = { "J1": (-180.0, 180.0), "J2": (-270.0, 90.0), "J3": (-150.0, 150.0), "J4": (-260.0, 80.0), "J5": (-168.0, 168.0), "J6": (-174.0, 174.0), } # ========== 机械臂默认速度 ========== DEFAULT_ARM_SPEED = 1000 # ========== 状态定义 ========== class State: SETTING = "setting" RUNNING = "running" PAUSED = "paused" IDLE = "idle" class PhotoType: FRONT = "front" BACK = "back" NAMEPLATE = "nameplate"