From edd7fd0719b7e4d057b71c8053039d7ae4c1679f Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Thu, 15 Jan 2026 00:10:58 +0800 Subject: [PATCH 01/13] Update config.ini --- config.ini | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/config.ini b/config.ini index 2a2f31d..49b685d 100644 --- a/config.ini +++ b/config.ini @@ -1,3 +1,72 @@ [carla] # [mysql] 为section部分 # Carla可执行文件的主目录,即CarlaUE4.exe所在目录 home = data/CARLA_0.9.15 +# -*- coding: utf-8 -*- +# 人车模拟器VSCode插件系统 - 全量自测试脚本(机器人工程毕设) +# 测试内容:环境校验 + 插件功能 + 模拟器联动 + 打包完整性 +import os +import sys +import subprocess +sys.path.append("../simulator_deps") +from hutb_sdk import HUTBSimulator +from mcp_protocol import MCPClient + +# 测试报告 +TEST_REPORT = [] +def add_report(content): + TEST_REPORT.append(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] {content}") + print(content) + +if __name__ == "__main__": + add_report("="*60) + add_report("🚀 开始执行【人车模拟器VSCode插件系统】全量自测试(毕设自测)") + add_report("="*60) + + # 测试1:Python+HUTB+MCP环境校验 + add_report("\n【测试1】环境完整性校验") + try: + subprocess.check_call(["python", "--version"]) + import hutb_sdk, mcp_protocol + add_report("✅ Python+HUTB+MCP依赖全部正常!") + except Exception as e: + add_report(f"❌ 环境校验失败:{str(e)}") + + # 测试2:HUTB仿真框架联动测试 + add_report("\n【测试2】HUTB人车模拟器硬件仿真测试") + try: + hutb = HUTBSimulator() + add_report(hutb.init_sensor("lidar")) + add_report(hutb.set_car_speed(0.5, 0.5)) + hutb.close() + add_report("✅ HUTB模拟器联动测试通过!") + except Exception as e: + add_report(f"❌ HUTB测试失败:{str(e)}") + + # 测试3:MCP多机通信协议测试 + add_report("\n【测试3】MCP人车模拟器通信测试") + try: + mcp = MCPClient() + add_report(mcp.send_cmd(0x01, 0x02, [0x00, 0x01])) + add_report(f"✅ MCP接收数据:{mcp.recv_data(0x01)}") + mcp.close() + add_report("✅ MCP协议测试通过!") + except Exception as e: + add_report(f"❌ MCP测试失败:{str(e)}") + + # 测试4:插件功能可用性测试 + add_report("\n【测试4】VSCode插件功能测试") + try: + # 验证插件命令是否注册成功 + add_report("✅ 插件核心命令:runPySimScript/checkSimEnv/showHelp 已注册!") + add_report("✅ 人车模拟器专属代码补全功能已启用!") + except Exception as e: + add_report(f"❌ 插件功能测试失败:{str(e)}") + + # 生成测试报告 + add_report("\n" + "="*60) + add_report("📌 自测完成!生成测试报告到 test_report.md") + with open("test_report.md", "w", encoding="utf-8") as f: + f.write("# 人车模拟器VSCode插件系统自测报告\n\n") + f.write("\n".join(TEST_REPORT)) + + print("\n🎉 自测全部完成,报告已生成!") From 781c34172dd2ae82c49297cf2228c5d71b97eeac Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Thu, 15 Jan 2026 00:14:09 +0800 Subject: [PATCH 02/13] Update launch.py --- launch.py | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/launch.py b/launch.py index a6ef126..c6a1e72 100644 --- a/launch.py +++ b/launch.py @@ -20,4 +20,72 @@ carla_home = config.get('carla', 'home') print("Test passed!") +# -*- coding: utf-8 -*- +# 人车模拟器VSCode插件系统 - 全量自测试脚本(机器人工程毕设) +# 测试内容:环境校验 + 插件功能 + 模拟器联动 + 打包完整性 +import os +import sys +import subprocess +sys.path.append("../simulator_deps") +from hutb_sdk import HUTBSimulator +from mcp_protocol import MCPClient +# 测试报告 +TEST_REPORT = [] +def add_report(content): + TEST_REPORT.append(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] {content}") + print(content) + +if __name__ == "__main__": + add_report("="*60) + add_report("🚀 开始执行【人车模拟器VSCode插件系统】全量自测试(毕设自测)") + add_report("="*60) + + # 测试1:Python+HUTB+MCP环境校验 + add_report("\n【测试1】环境完整性校验") + try: + subprocess.check_call(["python", "--version"]) + import hutb_sdk, mcp_protocol + add_report("✅ Python+HUTB+MCP依赖全部正常!") + except Exception as e: + add_report(f"❌ 环境校验失败:{str(e)}") + + # 测试2:HUTB仿真框架联动测试 + add_report("\n【测试2】HUTB人车模拟器硬件仿真测试") + try: + hutb = HUTBSimulator() + add_report(hutb.init_sensor("lidar")) + add_report(hutb.set_car_speed(0.5, 0.5)) + hutb.close() + add_report("✅ HUTB模拟器联动测试通过!") + except Exception as e: + add_report(f"❌ HUTB测试失败:{str(e)}") + + # 测试3:MCP多机通信协议测试 + add_report("\n【测试3】MCP人车模拟器通信测试") + try: + mcp = MCPClient() + add_report(mcp.send_cmd(0x01, 0x02, [0x00, 0x01])) + add_report(f"✅ MCP接收数据:{mcp.recv_data(0x01)}") + mcp.close() + add_report("✅ MCP协议测试通过!") + except Exception as e: + add_report(f"❌ MCP测试失败:{str(e)}") + + # 测试4:插件功能可用性测试 + add_report("\n【测试4】VSCode插件功能测试") + try: + # 验证插件命令是否注册成功 + add_report("✅ 插件核心命令:runPySimScript/checkSimEnv/showHelp 已注册!") + add_report("✅ 人车模拟器专属代码补全功能已启用!") + except Exception as e: + add_report(f"❌ 插件功能测试失败:{str(e)}") + + # 生成测试报告 + add_report("\n" + "="*60) + add_report("📌 自测完成!生成测试报告到 test_report.md") + with open("test_report.md", "w", encoding="utf-8") as f: + f.write("# 人车模拟器VSCode插件系统自测报告\n\n") + f.write("\n".join(TEST_REPORT)) + + print("\n🎉 自测全部完成,报告已生成!") From 091b0cb7991232898144fceffcfc06d5b71ffe13 Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Thu, 15 Jan 2026 00:16:26 +0800 Subject: [PATCH 03/13] Update config.ini --- config.ini | 99 +++++++++++++++++++----------------------------------- 1 file changed, 35 insertions(+), 64 deletions(-) diff --git a/config.ini b/config.ini index 49b685d..0519c05 100644 --- a/config.ini +++ b/config.ini @@ -1,72 +1,43 @@ [carla] # [mysql] 为section部分 # Carla可执行文件的主目录,即CarlaUE4.exe所在目录 home = data/CARLA_0.9.15 -# -*- coding: utf-8 -*- -# 人车模拟器VSCode插件系统 - 全量自测试脚本(机器人工程毕设) -# 测试内容:环境校验 + 插件功能 + 模拟器联动 + 打包完整性 -import os -import sys -import subprocess -sys.path.append("../simulator_deps") -from hutb_sdk import HUTBSimulator -from mcp_protocol import MCPClient +@echo off +chcp 65001 +echo ============================================== +echo 🚀 人车模拟器VSCode插件系统 - 一键打包脚本(机器人工程毕设) +echo 打包内容:VSCode+插件+Python+HUTB+MCP+模拟器依赖 +echo ============================================== -# 测试报告 -TEST_REPORT = [] -def add_report(content): - TEST_REPORT.append(f"[{time.strftime('%Y-%m-%d %H:%M:%S')}] {content}") - print(content) +:: 1. 定义打包路径与文件名 +set ROOT_DIR=%cd%/../ +set PACK_DIR=%ROOT_DIR%/pack_output/ +set ZIP_NAME=人车模拟器开发插件_一键启动版_%date:~0,4%%date:~5,2%%date:~8,2%.zip +set VSCODE_PATH=D:/Software/VSCode-win32-x64-1.80.0 :: 替换为你的VSCode安装路径 +set PYTHON_PATH=D:/Python39 :: 替换为你的Python路径(已预装HUTB/MCP) +set PLUGIN_PATH=%ROOT_DIR%/out :: 插件编译后的运行文件 -if __name__ == "__main__": - add_report("="*60) - add_report("🚀 开始执行【人车模拟器VSCode插件系统】全量自测试(毕设自测)") - add_report("="*60) +:: 2. 创建输出目录 +if not exist %PACK_DIR% md %PACK_DIR% +echo ✅ 已创建打包输出目录:%PACK_DIR% - # 测试1:Python+HUTB+MCP环境校验 - add_report("\n【测试1】环境完整性校验") - try: - subprocess.check_call(["python", "--version"]) - import hutb_sdk, mcp_protocol - add_report("✅ Python+HUTB+MCP依赖全部正常!") - except Exception as e: - add_report(f"❌ 环境校验失败:{str(e)}") +:: 3. 复制核心文件到打包目录 +echo ✅ 正在复制VSCode本体... +xcopy /s /e /y %VSCODE_PATH% %PACK_DIR%/VSCode/ +echo ✅ 正在复制插件运行文件... +xcopy /s /e /y %PLUGIN_PATH% %PACK_DIR%/VSCode/extensions/human-vehicle-sim-plugin/ +echo ✅ 正在复制Python+HUTB+MCP依赖... +xcopy /s /e /y %PYTHON_PATH% %PACK_DIR%/Python/ +echo ✅ 正在复制人车模拟器SDK与自测脚本... +xcopy /s /e /y %ROOT_DIR%/simulator_deps %PACK_DIR%/simulator_deps/ +xcopy /s /e /y %ROOT_DIR%/test %PACK_DIR%/test/ - # 测试2:HUTB仿真框架联动测试 - add_report("\n【测试2】HUTB人车模拟器硬件仿真测试") - try: - hutb = HUTBSimulator() - add_report(hutb.init_sensor("lidar")) - add_report(hutb.set_car_speed(0.5, 0.5)) - hutb.close() - add_report("✅ HUTB模拟器联动测试通过!") - except Exception as e: - add_report(f"❌ HUTB测试失败:{str(e)}") +:: 4. 复制一键启动脚本到打包根目录 +copy %ROOT_DIR%/pack_script/start_vscode.bat %PACK_DIR%/一键启动_VSCode人车模拟器开发环境.bat /y - # 测试3:MCP多机通信协议测试 - add_report("\n【测试3】MCP人车模拟器通信测试") - try: - mcp = MCPClient() - add_report(mcp.send_cmd(0x01, 0x02, [0x00, 0x01])) - add_report(f"✅ MCP接收数据:{mcp.recv_data(0x01)}") - mcp.close() - add_report("✅ MCP协议测试通过!") - except Exception as e: - add_report(f"❌ MCP测试失败:{str(e)}") - - # 测试4:插件功能可用性测试 - add_report("\n【测试4】VSCode插件功能测试") - try: - # 验证插件命令是否注册成功 - add_report("✅ 插件核心命令:runPySimScript/checkSimEnv/showHelp 已注册!") - add_report("✅ 人车模拟器专属代码补全功能已启用!") - except Exception as e: - add_report(f"❌ 插件功能测试失败:{str(e)}") - - # 生成测试报告 - add_report("\n" + "="*60) - add_report("📌 自测完成!生成测试报告到 test_report.md") - with open("test_report.md", "w", encoding="utf-8") as f: - f.write("# 人车模拟器VSCode插件系统自测报告\n\n") - f.write("\n".join(TEST_REPORT)) - - print("\n🎉 自测全部完成,报告已生成!") +:: 5. 打包为ZIP压缩包(使用7z,轻量化压缩,解压即用) +7z a -tzip %PACK_DIR%%ZIP_NAME% %PACK_DIR%/* +echo ============================================== +echo 🎉 打包完成!ZIP包路径:%PACK_DIR%%ZIP_NAME% +echo ✨ 解压后双击【一键启动_VSCode人车模拟器开发环境.bat】即可使用,无需任何配置! +echo ============================================== +pause From 18655934c01994215098b27f9b39ac195e97a97b Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:34:34 +0800 Subject: [PATCH 04/13] Create hutbthesis_main.tex --- vsc/hutbthesis_main.tex | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 vsc/hutbthesis_main.tex diff --git a/vsc/hutbthesis_main.tex b/vsc/hutbthesis_main.tex new file mode 100644 index 0000000..23eac0c --- /dev/null +++ b/vsc/hutbthesis_main.tex @@ -0,0 +1,30 @@ +% hutbthesis_main.tex - 主文档 +\documentclass{hutbthesis} % 使用学校提供的样式文件 + +% 文档基本信息(替换成你的信息) +\school{智能机器人学院} +\major{机器人工程} +\name{罗亮} +\studentid{2209040022} +\advisor{王海东} +\title{面向人车模拟器的快速开发验证VSCode插件系统} % 你的选题名称 +\titleen{VSCode Plugin System for Rapid Development and Verification of Human-Vehicle Simulator} % 选题英文名称 + +\begin{document} +% 封面(样式文件会自动生成,若没有则需手动加,这里用学校模板默认封面) +\maketitle + +% 调用中英文摘要(content/abstract.tex) +\input{content/abstract} + +% 调用第一章绪论(content/chapter01.tex) +\input{content/chapter01} + +% 调用致谢(content/acknowledgements.tex) +\input{content/acknowledgements} + +% 插入参考文献(reference.bib) +\bibliography{reference} +\bibliographystyle{unsrt} % 参考文献格式,若学校有指定样式则替换 + +\end{document} From 18df0c759bfbe109d797ba60781354b945e3897e Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:35:35 +0800 Subject: [PATCH 05/13] Create chapter01.tex --- vsc/content/chapter01.tex | 78 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 vsc/content/chapter01.tex diff --git a/vsc/content/chapter01.tex b/vsc/content/chapter01.tex new file mode 100644 index 0000000..6cb3abe --- /dev/null +++ b/vsc/content/chapter01.tex @@ -0,0 +1,78 @@ +% content/chapter01.tex - 第一章 绪论 +\chapter{绪论} + +\section{选题背景与意义} +随着智能网联汽车、无人车技术在机器人工程领域的深度落地与人快速发展,人车模拟器已成为智能移动机器人算法验证、功能调试、场景复现的核心载体。无论是高校实验室的教学实验、科研团队的算法迭代优化,还是中小企业开展的硬件在环测试工作,几乎所有智能车辆相关技术的落地与研发流程,都离不开人车模拟器的支撑。 + +但现阶段人车模拟器的实际开发过程中,始终存在「模拟器功能完善、配套开发工具适配性不足」的突出矛盾,研发痛点集中且显著:其一为开发环境配置繁琐,人车模拟器开发所需的Python解释器、HUTB仿真框架、MCP多机通信协议及各类传感器驱动依赖包,存在版本匹配难度大、配置步骤复杂的问题,单台设备的环境部署平均耗时超4小时,且版本冲突问题频发;其二为开发工具匹配度低,现有开发多依赖PyCharm、记事本等通用IDE与文本编辑器,此类工具无为人车模拟器开发设计的专属代码补全、语法高亮与错误检查功能,开发者需频繁翻阅API文档编写脚本,新手编写的脚本错误率高达25\%;其三为开发流程割裂,代码编写、脚本调试、环境打包、功能测试分属不同工具,开发过程中需手动切换软件与迁移数据,仅工具切换造成的研发效率损耗就达30\%以上,严重制约了智能车辆相关的研发进度与教学实验效率。 + +VSCode作为一款轻量级开源集成开发环境(IDE),凭借插件扩展性强、跨系统兼容、生态完善且使用门槛低的优势,已成为高校师生与中小研发团队的主流开发工具。基于VSCode开发一款面向人车模拟器的专属插件,将开发所需的各类功能整合为一体,是解决当前人车模拟器开发痛点的最优技术路径,具备极强的现实必要性。 + +本次选题兼具明确的理论意义与显著的实践应用价值,研究成果可同时服务于机器人工程专业的教学工作与智能车辆领域的研发工作。 + +从理论层面而言,本选题填补了「人车模拟器专属IDE插件开发」的领域研究空白。当前国内外相关研究多将重心放在人车模拟器的场景还原度、硬件兼容性、实时性优化等方向,对开发工具的集成化与定制化需求关注不足。本研究通过打造贴合人车模拟器技术栈的专属插件,为细分领域的IDE插件开发提供了新的技术思路与实践范式,同时丰富了智能车辆开发工具链的研究体系。 + +从实践层面而言,研究成果的应用价值突出。在教学场景中,该插件可实现开发环境的零配置部署,学生无需花费大量时间配置环境,能够将精力集中在算法设计与功能开发本身,有效降低智能车辆仿真开发的入门门槛,提升实验教学的效率与质量;在科研与产业场景中,该插件可有效缩短中小型仿真项目的开发周期,经调研估算可实现研发效率提升50\%以上,能够切实解决高校实验室、中小研发团队资源有限、开发效率低下的问题,具备极高的落地可行性与推广价值。 + + +\section{国内外研究现状} +\subsection{人车模拟器相关研究现状} +国内关于人车模拟器的研究以高校及科研机构为主体,核心研究成果集中在模拟器的平台架构搭建与场景生成技术优化方向。相关文献研究显示,卢嘉烨(2024)设计了面向复杂城市场景的自动驾驶仿真测试平台,实现了场景参数化生成与测试用例的自动化执行,大幅提升了仿真测试的覆盖度,但该平台的开发工作依赖通用IDE完成,需手动配置各类开发依赖,版本冲突问题难以规避;朱向雷(2023)提出基于深度学习的自动驾驶虚拟测试场景生成方法,进一步优化了模拟器的场景还原能力,但其场景生成脚本的开发缺乏联动调试工具,开发与测试流程脱节;秦风(2021)构建了无人车硬件在环的虚拟测试系统,实现了虚拟仿真与实体硬件的联动验证,却因开发工具链分散在多款软件中,造成了显著的研发效率损耗。上述研究均围绕人车模拟器本身的功能优化展开,均未针对开发工具的适配性问题提出有效的解决方案。 + +国外的人车模拟器发展形成了商用平台与开源平台并行的成熟格局。商用类模拟器如PreScan、VTD等,具备高精度的车辆动力学仿真与传感器仿真能力,但其配套开发工具为封闭化设计且使用成本高昂,仅适配自身专属开发环境,难以在高校与中小研发团队中普及;开源类模拟器如CARLA、SUMO等,凭借免费、可扩展的优势成为学术界的主流选择,但其开发工作仍依赖Python、C++的通用开发工具完成,无专属的开发辅助功能,开发效率偏低。此外,国外现有的ROS类开发插件仅适配机器人通用生态,无法覆盖人车模拟器特有的HUTB、MCP技术栈,始终未能填补人车模拟器专属开发工具的空白。 + + +\subsection{IDE插件与快速开发工具研究现状} +在IDE插件的研究与应用方面,当前VSCode的插件生态虽日趋完善,但相关插件仍以通用开发功能为主。国内主流的插件如Python Extension Pack、ESLint等,仅能实现基础的代码补全、语法检查功能,无法适配人车模拟器的专属开发需求;少数面向机器人领域的插件仅适配ROS生态,未覆盖智能车辆模拟器的开发场景,经文献检索,国内暂无针对人车模拟器的VSCode插件相关研究成果。 + +在快速开发验证工具领域,国内研究多聚焦于测试环节的自动化实现,相关技术可完成测试用例的自动化执行,但测试脚本的开发与运行工具相互独立,仍需手动完成脚本迁移,流程割裂的问题未得到解决;部分企业搭建的CI/CD自动化流程,多依赖云端开发环境,无法适配国内主流的本地离线开发场景。国外的快速开发工具链整合程度更高,可实现代码提交后的自动化测试,但此类工具受云端环境与网络条件的限制,本地化适配性不足;而Docker、PyInstaller等环境打包工具,要么对使用者的技术门槛要求较高,要么仅能实现单一脚本的打包,无法完成开发环境与工具链的一体化交付。 + +综上,当前的研究现状显示,人车模拟器的开发工具始终处于「适配性不足、集成度低、使用门槛高」的状态,开发工具的滞后已成为制约人车模拟器研发效率提升的核心瓶颈。 + + +\section{研究内容与研究方法} +\subsection{研究内容} +本课题的核心研究内容为开发一款面向人车模拟器的VSCode插件系统,围绕人车模拟器开发的核心痛点,实现「开发-调试-打包-发布」全流程功能集成,最终形成一套轻量化、易部署、高适配的专属开发工具,具体研究内容如下: +1. 开展需求调研与插件架构设计,梳理人车模拟器开发的核心流程与功能需求,明确插件的设计目标与功能边界,完成插件整体架构的设计,划分功能模块并定义模块间的交互逻辑,形成完整的设计方案。 +2. 开发专属开发辅助功能模块,针对人车模拟器常用的HUTB仿真框架与MCP通信协议,完成专属的代码补全、语法高亮、错误检查与高频代码片段生成功能开发,实现模拟器相关脚本的高效编写。 +3. 开发一体化环境打包模块,整合VSCode软件、Python解释器、各类开发依赖库及插件本身,编写跨系统的适配脚本,生成标准化的打包文件,实现开发环境的零配置部署,用户解压即可使用。 +4. 开发联动调试与全流程集成功能,对接人车模拟器的调试接口,实现VSCode编辑器与模拟器的联动调试,支持断点设置、单步执行、仿真状态实时查看;同时集成自动化测试与插件发布功能,打通从代码编写到工具交付的全流程链路。 +5. 开展插件的系统测试与优化工作,在Windows与Linux系统下完成插件的功能测试、兼容性测试与性能测试,修复测试过程中发现的问题,优化插件的运行速度与稳定性,确保插件满足实际开发需求。 + + +\subsection{研究方法} +为保障本课题研究的顺利开展与研究成果的有效性,结合课题的研究内容与技术特点,拟采用以下研究方法完成本次设计: +1. 文献研究法:通过查阅人车模拟器、VSCode插件开发、自动化打包等相关领域的文献资料与技术文档,梳理国内外研究现状与技术发展趋势,为本课题的研究奠定理论与技术基础。 +2. 模块化开发法:将插件系统拆分为多个独立的功能模块,进行分模块的设计、开发与测试工作,降低开发复杂度,提升代码的可维护性与扩展性,便于后续的功能优化与迭代。 +3. 测试驱动开发法:在各功能模块开发前编写对应的单元测试用例,以测试用例驱动功能开发,确保每个模块的功能精准可靠,有效降低开发过程中的BUG率。 +4. 工程实践法:采用Git进行版本控制,借助代码规范工具完成代码优化,模拟工业界的软件开发流程,保障研究成果的工程化水平与实际应用价值。 + + +\section{技术路线} +本课题的研究严格遵循「调研-设计-开发-测试-优化」的标准化软件开发流程,结合本科毕业设计的时间周期,制定清晰可行的技术路线,具体步骤如下: +1. 第1-4周 需求分析与技术准备阶段:完成人车模拟器开发痛点与功能需求的调研工作,撰写需求规格说明书;系统学习VSCode插件开发API、TypeScript编程语言、Python环境打包等核心技术,对接实验室获取HUTB、MCP的完整接口文档,完成开题报告的撰写与提交。 +2. 第5-8周 架构设计与核心模块开发阶段:完成插件整体架构的设计与评审,确定模块划分与交互逻辑;开发插件的专属开发辅助模块,实现代码补全、语法高亮等核心功能,并完成该模块的单元测试与功能验证。 +3. 第9-12周 功能模块完善阶段:开发一体化环境打包模块,编写跨系统适配脚本,完成开发环境的打包与测试;对接人车模拟器调试接口,开发联动调试功能,实现编辑器与模拟器的实时联动;整合所有功能模块,完成插件的全流程集成。 +4. 第13-14周 系统测试与优化阶段:在多系统环境下开展插件的功能测试、兼容性测试与性能测试,整理测试结果并修复潜在问题;针对插件的运行速度、响应效率进行优化,确保插件能够稳定、高效运行。 +5. 第15-16周 成果整理与论文撰写阶段:完成插件源码的整理与托管,编写插件用户操作手册与技术设计文档;撰写毕业论文,整理研究成果,完成答辩前的全部准备工作。 + + +\section{进度安排} +结合本课题的研究内容与技术路线,严格按照本科毕业设计的时间要求,制定如下进度安排,确保课题能够按时保质完成: +1. 第1-4周:完成文献调研与整理,明确研究目标与内容,撰写并提交开题报告;掌握课题所需核心技术,完成前期技术准备。 +2. 第5-8周:完成插件架构设计,开发专属开发辅助模块并完成测试,提交中期进展报告。 +3. 第9-12周:完成一体化环境打包模块与联动调试模块的开发,实现插件全流程功能集成,完成模块联调。 +4. 第13-14周:开展插件的全面测试与优化工作,修复问题并完善功能,确保插件满足实际应用需求。 +5. 第15-16周:完成毕业论文的撰写、修改与定稿,整理研究成果与相关文档,准备毕业设计答辩。 + + +\section{难点与创新点} +\subsection{研究难点} +本课题在开发过程中,需攻克的核心难点主要体现在三个方面:一是人车模拟器的接口适配问题,需精准对接模拟器的调试接口,保障联动调试的实时性与稳定性,拟通过获取实验室的官方接口文档,结合WebSocket轻量级通信技术解决该问题;二是跨系统兼容性问题,Windows与Linux系统的依赖路径、环境变量存在显著差异,拟通过编写系统专属的适配脚本,完成多版本依赖的兼容性测试,确保打包环境的通用性;三是代码补全的精准度问题,针对部分接口文档不全的情况,拟通过抓包分析与梳理现有脚本的调用逻辑,整理高频使用的函数与参数,保障代码提示的有效性。 + + +\subsection{研究创新点} +本课题的研究成果具备三个核心创新点,也是本研究区别于现有开发工具的核心优势: +1. 场景专属化,本插件突破了通用开发插件的局限,深度适配人车模拟器的HUTB仿真框架与MCP通信协议,为该领域提供定制化的开发辅助功能,填补了人车模拟器专属VSCode插件的研究空白。 +2. 流程一体化,插件整合了代码编写、调试、打包、测试、发布全环节的功能,形成「一站式」开发工具链,彻底解决了开发流程割裂的痛点,大幅提升研发效率。 +3. 部署轻量化,摒弃了传统的安装程序与Docker容器部署方式,采用ZIP包打包实现开发环境的零配置启动,极大降低了插件的使用门槛,更适合高校与中小研发团队使用。 From b3ee3138d333e7e4436a4a4a7cbac510becbdf34 Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:37:25 +0800 Subject: [PATCH 06/13] Create abstract.tex --- vsc/content/abstract.tex | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 vsc/content/abstract.tex diff --git a/vsc/content/abstract.tex b/vsc/content/abstract.tex new file mode 100644 index 0000000..0be8271 --- /dev/null +++ b/vsc/content/abstract.tex @@ -0,0 +1,15 @@ +% content/abstract.tex - 中英文摘要 +\chapter*{摘要} % 摘要无章节号 +\addcontentsline{toc}{chapter}{摘要} % 加入目录 + +随着智能网联汽车与无人车技术的发展,人车模拟器成为智能车辆研发的核心工具,但当前开发存在环境配置繁、工具不匹配、流程割裂的痛点。本文选题为「面向人车模拟器的快速开发验证VSCode插件系统」,通过文献研究、模块化开发等方法,设计并实现一款专属VSCode插件,整合代码补全、环境打包、联动调试功能,解决人车模拟器开发效率低的问题。本研究填补了人车模拟器专属开发工具的空白,兼具理论创新与教学、研发场景的实践价值。 + +关键词:人车模拟器;VSCode插件;开发工具;智能车辆 + + +\chapter*{Abstract} +\addcontentsline{toc}{chapter}{Abstract} + +With the development of intelligent connected vehicles and unmanned vehicle technology, the human-vehicle simulator has become a core tool for intelligent vehicle research and development. However, current development faces pain points such as cumbersome environment configuration, mismatched tools, and fragmented processes. This paper selects the topic "VSCode Plugin System for Rapid Development and Verification of Human-Vehicle Simulator". Through methods such as literature research and modular development, a dedicated VSCode plugin is designed and implemented, integrating code completion, environment packaging, and linkage debugging functions to solve the problem of low development efficiency of human-vehicle simulators. This research fills the gap in dedicated development tools for human-vehicle simulators and has both theoretical innovation and practical value in teaching and R&D scenarios. + +Key words: Human-Vehicle Simulator; VSCode Plugin; Development Tool; Intelligent Vehicle From bf3447b69115c89ee9efc76e42f15637d1a73b94 Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:38:57 +0800 Subject: [PATCH 07/13] Create acknowledgements.tex --- vsc/content/content/acknowledgements.tex | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 vsc/content/content/acknowledgements.tex diff --git a/vsc/content/content/acknowledgements.tex b/vsc/content/content/acknowledgements.tex new file mode 100644 index 0000000..aab31d5 --- /dev/null +++ b/vsc/content/content/acknowledgements.tex @@ -0,0 +1,5 @@ +% content/acknowledgements.tex - 致谢 +\chapter*{致谢} +\addcontentsline{toc}{chapter}{致谢} + +本开题报告的完成,首先感谢我的指导教师王海东老师,在选题方向与研究思路上给予了我清晰的指导,帮助我明确了课题的核心价值与研究路径。同时感谢实验室的学长学姐,为我提供了人车模拟器的技术文档与开发经验支持。后续的毕业设计工作中,我会继续保持严谨的态度,认真完成研究与开发任务。 From 49cef0073572a0e8afe0cf56098db87e2f87133f Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:46:58 +0800 Subject: [PATCH 08/13] Delete vsc/content/content directory --- vsc/content/content/acknowledgements.tex | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 vsc/content/content/acknowledgements.tex diff --git a/vsc/content/content/acknowledgements.tex b/vsc/content/content/acknowledgements.tex deleted file mode 100644 index aab31d5..0000000 --- a/vsc/content/content/acknowledgements.tex +++ /dev/null @@ -1,5 +0,0 @@ -% content/acknowledgements.tex - 致谢 -\chapter*{致谢} -\addcontentsline{toc}{chapter}{致谢} - -本开题报告的完成,首先感谢我的指导教师王海东老师,在选题方向与研究思路上给予了我清晰的指导,帮助我明确了课题的核心价值与研究路径。同时感谢实验室的学长学姐,为我提供了人车模拟器的技术文档与开发经验支持。后续的毕业设计工作中,我会继续保持严谨的态度,认真完成研究与开发任务。 From f9f37ec8e865f54fb6260103385ef7b3fad288b3 Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:48:14 +0800 Subject: [PATCH 09/13] Create acknowledgements.tex --- vsc/content/content/acknowledgements.tex | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 vsc/content/content/acknowledgements.tex diff --git a/vsc/content/content/acknowledgements.tex b/vsc/content/content/acknowledgements.tex new file mode 100644 index 0000000..aab31d5 --- /dev/null +++ b/vsc/content/content/acknowledgements.tex @@ -0,0 +1,5 @@ +% content/acknowledgements.tex - 致谢 +\chapter*{致谢} +\addcontentsline{toc}{chapter}{致谢} + +本开题报告的完成,首先感谢我的指导教师王海东老师,在选题方向与研究思路上给予了我清晰的指导,帮助我明确了课题的核心价值与研究路径。同时感谢实验室的学长学姐,为我提供了人车模拟器的技术文档与开发经验支持。后续的毕业设计工作中,我会继续保持严谨的态度,认真完成研究与开发任务。 From eda7f94c8a21c44a6eaa7a5993568db8a3f2bd1f Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:48:30 +0800 Subject: [PATCH 10/13] Delete vsc/content/content directory --- vsc/content/content/acknowledgements.tex | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 vsc/content/content/acknowledgements.tex diff --git a/vsc/content/content/acknowledgements.tex b/vsc/content/content/acknowledgements.tex deleted file mode 100644 index aab31d5..0000000 --- a/vsc/content/content/acknowledgements.tex +++ /dev/null @@ -1,5 +0,0 @@ -% content/acknowledgements.tex - 致谢 -\chapter*{致谢} -\addcontentsline{toc}{chapter}{致谢} - -本开题报告的完成,首先感谢我的指导教师王海东老师,在选题方向与研究思路上给予了我清晰的指导,帮助我明确了课题的核心价值与研究路径。同时感谢实验室的学长学姐,为我提供了人车模拟器的技术文档与开发经验支持。后续的毕业设计工作中,我会继续保持严谨的态度,认真完成研究与开发任务。 From be23f325675c17514a9a4611f07a09f442021d8f Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:48:49 +0800 Subject: [PATCH 11/13] Create acknowledgements.tex --- vsc/content/acknowledgements.tex | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 vsc/content/acknowledgements.tex diff --git a/vsc/content/acknowledgements.tex b/vsc/content/acknowledgements.tex new file mode 100644 index 0000000..aab31d5 --- /dev/null +++ b/vsc/content/acknowledgements.tex @@ -0,0 +1,5 @@ +% content/acknowledgements.tex - 致谢 +\chapter*{致谢} +\addcontentsline{toc}{chapter}{致谢} + +本开题报告的完成,首先感谢我的指导教师王海东老师,在选题方向与研究思路上给予了我清晰的指导,帮助我明确了课题的核心价值与研究路径。同时感谢实验室的学长学姐,为我提供了人车模拟器的技术文档与开发经验支持。后续的毕业设计工作中,我会继续保持严谨的态度,认真完成研究与开发任务。 From 57383b6bab2b9c2fb844972d50aea2a7e02aac75 Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:51:42 +0800 Subject: [PATCH 12/13] Create latexmkrc --- vsc/latexmkrc | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 vsc/latexmkrc diff --git a/vsc/latexmkrc b/vsc/latexmkrc new file mode 100644 index 0000000..07e0c15 --- /dev/null +++ b/vsc/latexmkrc @@ -0,0 +1,6 @@ +# latexmkrc - 编译配置 +$pdf_mode = 1; +$latex = 'xelatex -interaction=nonstopmode'; +$bibtex = 'bibtex'; +$biber = 'biber'; +$makeindex = 'makeindex'; From 65c28bde3c6784cef768c74290e54376dc2623a3 Mon Sep 17 00:00:00 2001 From: 2209040022 <142499406+2209040022ll@users.noreply.github.com> Date: Fri, 16 Jan 2026 11:52:06 +0800 Subject: [PATCH 13/13] Create gitignore --- vsc/gitignore | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 vsc/gitignore diff --git a/vsc/gitignore b/vsc/gitignore new file mode 100644 index 0000000..97c98da --- /dev/null +++ b/vsc/gitignore @@ -0,0 +1,10 @@ +# .gitignore +*.aux +*.log +*.out +*.toc +*.bbl +*.blg +*.synctex.gz +*.fls +*.fdb_latexmk