diff --git a/README.md b/README.md
new file mode 100644
index 0000000..73a4318
--- /dev/null
+++ b/README.md
@@ -0,0 +1,92 @@
+# 智慧医疗2026年代码仓库
+
+# 一、文件夹说明
+## `dependencies`
+`dependencies.txt`存储依赖名称
+
+## `src`
+存放源代码
+
+## `bashes`
+自动脚本的存放路径
+
+---
+
+# 二、关于雷达驱动自动配置脚本的说明
+## 1. 配置说明:在设备上配置开机自启动(仅使用雷达的情况直接看第二点)
+1. 放到固定位置并授权
+ ```bash
+ sudo cp 你的脚本路径 /usr/local/bin/radar-driver-switch.sh
+ sudo chmod +x /usr/local/bin/radar-driver-switch.sh
+ sudo chown root:root /usr/local/bin/radar-driver-switch.sh
+ ```
+2. 创建 systemd 服务文件
+ ```bash
+ sudo vim /etc/systemd/system/radar-driver-switch.service
+ ```
+ 编辑内容:
+ ```ini
+ [Unit]
+ Description=雷达驱动自动切换程序
+ After=sysfs.target udev.target systemd-udevd.service
+ Before=multi-user.target
+
+ [Service]
+ Type=oneshot
+ ExecStart=/usr/local/bin/radar-driver-switch.sh
+ User=root
+ Group=root
+ StandardOutput=journal+console
+ StandardError=journal+console
+
+ [Install]
+ WantedBy=multi-user.target
+ ```
+3. 应用开机自启
+ ```bash
+ sudo systemctl daemon-reload
+ sudo systemctl enable radar-driver-switch.service
+ ```
+4. 测试与debug
+ - 测试一次
+ ```bash
+ sudo systemctl start radar-driver-switch.service
+ ```
+ - 查看状态 / 日志(排查必用)
+ ```bash
+ sudo systemctl status radar-driver-switch.service
+ ```
+ - 看 dmesg 日志
+ ```bash
+ dmesg | grep 雷达驱动自动切换程序
+ ```
+---
+### 特别说明
+1. 关于退出码对应的情况,详见sh文件开头
+2. 日志输出在`/dev/kmsg`文件中,使用`dmesg | grep 雷达驱动自动切换程序`命令即可查看
+
+## 2. 使用说明:
+1. 设备开机自动启动脚本连接雷达。若开机时雷达与设备没有物理连接,则需要手动启动脚本连接雷达
+2. 查看雷达是否物理连接
+ ```bash
+ lsusb
+ ```
+ 返回的数据中,如果有` ID 1a86:55d4 QinHeng Electronics USB Single Serial`,则物理连接成功。
+3. 查看是否成功驱动雷达
+ ```bash
+ ls /dev/tty*
+ ```
+ 看返回数据,默认串口连接设备为`ttyACM*`,名为`ttyACM0`的设备是IMU,如果存在`ttyACM1`,则雷达连接失败;
+
+ 如果出现`ttyCH340`,则说明雷达设备驱动成功
+
+---
+
+# 三、其它说明
+我设置了一些自定义指令,方便终端调试:
+```bash
+rosbuild # 编译指定包
+build_debug # 以调试模式编译指定包
+foxglove # 启动foxbridge
+```
+
diff --git a/bashes/README.md b/bashes/README.md
new file mode 100644
index 0000000..42b9182
--- /dev/null
+++ b/bashes/README.md
@@ -0,0 +1,52 @@
+## 关于雷达驱动自动配置脚本的说明
+### 在设备上配置开机自启动
+1. 放到固定位置并授权
+ ```bash
+ sudo cp 你的脚本路径 /usr/local/bin/radar-driver-switch.sh
+ sudo chmod +x /usr/local/bin/radar-driver-switch.sh
+ sudo chown root:root /usr/local/bin/radar-driver-switch.sh
+ ```
+2. 创建 systemd 服务文件
+ ```bash
+ sudo vim /etc/systemd/system/radar-driver-switch.service
+ ```
+ 编辑内容:
+ ```ini
+ [Unit]
+ Description=雷达驱动自动切换程序
+ After=sysfs.target udev.target systemd-udevd.service
+ Before=multi-user.target
+
+ [Service]
+ Type=oneshot
+ ExecStart=/usr/local/bin/radar-driver-switch.sh
+ User=root
+ Group=root
+ StandardOutput=journal+console
+ StandardError=journal+console
+
+ [Install]
+ WantedBy=multi-user.target
+ ```
+3. 应用开机自启
+ ```bash
+ sudo systemctl daemon-reload
+ sudo systemctl enable radar-driver-switch.service
+ ```
+4. 测试与debug
+ - 测试一次
+ ```bash
+ sudo systemctl start radar-driver-switch.service
+ ```
+ - 查看状态 / 日志(排查必用)
+ ```bash
+ sudo systemctl status radar-driver-switch.service
+ ```
+ - 看 dmesg 日志
+ ```bash
+ dmesg | grep 雷达驱动自动切换程序
+ ```
+---
+### 特别说明
+1. 关于退出码对应的情况,详见sh文件开头
+2. 日志输出在`/dev/kmsg`文件中,使用`dmesg | grep 雷达驱动自动切换程序`命令即可查看
\ No newline at end of file
diff --git a/bashes/radar-driver-switch.sh b/bashes/radar-driver-switch.sh
new file mode 100644
index 0000000..c64b9ce
--- /dev/null
+++ b/bashes/radar-driver-switch.sh
@@ -0,0 +1,101 @@
+#!/bin/bash
+
+# 退出码说明
+# 0 - 成功
+# 1 - 错误:等待TTY设备就绪超时
+# 2 - 错误:未找到CH343驱动
+# 3 - 错误:雷达端口上未找到CH34x设备
+# 4 - 错误:未从cdc_acm找到雷达接口
+# 5 - 错误:解绑cdc_acm驱动失败
+# 6 - 错误:绑定usb_ch343驱动失败
+
+# ── 配置 ────────────────────────────────────────────
+TTY_DEVICE="/dev/ttyACM*"
+CDC_ACM_PATH="/sys/bus/usb/drivers/cdc_acm"
+USB_CH343_PATH="/sys/bus/usb/drivers/usb_ch343"
+RADAR_USB_PORT="1-1.4" # 雷达 CH34x 的 USB 物理端口(固定不变)
+CHECK_INTERVAL=1
+MAX_WAIT_SECONDS=30
+
+# ── 初始化 ──────────────────────────────────────────
+start_time=$(cut -d. -f1 /proc/uptime)
+
+# ── 1. 等待 TTY 设备就绪 ────────────────────────────
+while true; do
+ for dev in /dev/ttyACM*; do
+ [ -e "$dev" ] || continue
+ if [ -c "$dev" ] && [ -r "$dev" ] && [ -w "$dev" ]; then
+ echo "[雷达驱动自动切换程序] 设备 $dev 已就绪!" > /dev/kmsg
+ TTY_DEVICE="$dev"
+ break 2
+ fi
+ done
+
+ if [ ${MAX_WAIT_SECONDS} -gt 0 ]; then
+ current_time=$(cut -d. -f1 /proc/uptime)
+ elapsed_seconds=$((current_time - start_time))
+ if [ ${elapsed_seconds} -ge ${MAX_WAIT_SECONDS} ]; then
+ echo "[雷达驱动自动切换程序] 错误:等待 ${TTY_DEVICE} 超时(${MAX_WAIT_SECONDS}秒)!" > /dev/kmsg
+ exit 1
+ fi
+ echo "[雷达驱动自动切换程序] 仍在等待${TTY_DEVICE}(已等待${elapsed_seconds}秒)..." > /dev/kmsg
+ fi
+ sleep ${CHECK_INTERVAL}
+done
+
+# ── 2. 确认 CH343 驱动已加载 ────────────────────────
+if [ -d "${USB_CH343_PATH}" ]; then
+ echo "[雷达驱动自动切换程序] CH343驱动已加载,继续..." > /dev/kmsg
+else
+ echo "[雷达驱动自动切换程序] 错误:未找到CH343驱动!" > /dev/kmsg
+ exit 2
+fi
+
+# ── 3. 通过物理端口定位雷达 CH34x ───────────────────
+radar_sysfs="/sys/bus/usb/devices/${RADAR_USB_PORT}"
+
+if [ ! -d "${radar_sysfs}" ]; then
+ echo "[雷达驱动自动切换程序] 错误:端口 ${RADAR_USB_PORT} 上无设备!" > /dev/kmsg
+ exit 3
+fi
+
+vendor_id=$(cat "${radar_sysfs}/idVendor" 2>/dev/null)
+product_id=$(cat "${radar_sysfs}/idProduct" 2>/dev/null)
+
+if [ "${vendor_id}" != "1a86" ] || [ "${product_id}" != "55d4" ]; then
+ echo "[雷达驱动自动切换程序] 错误:端口 ${RADAR_USB_PORT} 上 VID:PID=${vendor_id}:${product_id},非雷达CH34x!" > /dev/kmsg
+ exit 3
+fi
+
+echo "[雷达驱动自动切换程序] 雷达确认位于端口 ${RADAR_USB_PORT},VID:PID=${vendor_id}:${product_id}" > /dev/kmsg
+
+# ── 4. 查找 cdc_acm 下雷达的接口 ────────────────────
+cdc_acm_sub_addr=$(ls "${CDC_ACM_PATH}" 2>/dev/null | grep "^${RADAR_USB_PORT}:" | head -n 1)
+
+if [ -z "${cdc_acm_sub_addr}" ]; then
+ echo "[雷达驱动自动切换程序] 错误:cdc_acm驱动中未找到端口 ${RADAR_USB_PORT} 的接口" > /dev/kmsg
+ exit 4
+fi
+
+echo "[雷达驱动自动切换程序] 雷达 cdc_acm 接口:${cdc_acm_sub_addr}" > /dev/kmsg
+
+# ── 5. 解绑 cdc_acm ─────────────────────────────────
+echo "${cdc_acm_sub_addr}" | sudo tee "${CDC_ACM_PATH}/unbind" > /dev/null 2>&1
+if [ $? -eq 0 ]; then
+ echo "[雷达驱动自动切换程序] 已解绑 cdc_acm:${cdc_acm_sub_addr}" > /dev/kmsg
+else
+ echo "[雷达驱动自动切换程序] 错误:解绑 cdc_acm 失败" > /dev/kmsg
+ exit 5
+fi
+
+# ── 6. 绑定 ch343 ───────────────────────────────────
+echo "${cdc_acm_sub_addr}" | sudo tee "${USB_CH343_PATH}/bind" > /dev/null 2>&1
+if [ $? -eq 0 ]; then
+ echo "[雷达驱动自动切换程序] 已绑定 usb_ch343:${cdc_acm_sub_addr}" > /dev/kmsg
+else
+ echo "[雷达驱动自动切换程序] 错误:绑定 usb_ch343 失败" > /dev/kmsg
+ exit 6
+fi
+
+echo "[雷达驱动自动切换程序] 雷达驱动切换完毕!" > /dev/kmsg
+exit 0
diff --git a/bashes/radar-driver-switch.sh.bak b/bashes/radar-driver-switch.sh.bak
new file mode 100644
index 0000000..edf5f15
--- /dev/null
+++ b/bashes/radar-driver-switch.sh.bak
@@ -0,0 +1,129 @@
+#!/bin/bash
+
+# 退出码说明
+# 0 - 成功
+# 1 - 错误:等待TTY设备就绪超时
+# 2 - 错误:未找到CH343驱动
+# 3 - 错误:未找到含Qingheng的USB设备
+# 4 - 错误:未找到对应USB地址
+# 5 - 错误:未找到cdc_acm绑定的对应USB设备
+# 6 - 错误:解绑cdc_acm驱动失败
+# 7 - 错误:绑定usb_ch343驱动失败
+
+# 变量设置
+TTY_DEVICE="/dev/ttyACM*" # 替换为你要等待的tty设备路径
+CDC_ACM_PATH="/sys/bus/usb/drivers/cdc_acm"
+USB_CH343_PATH="/sys/bus/usb/drivers/usb_ch343"
+CHECK_INTERVAL=1 # 检查设备就绪的时间间隔(秒)
+MAX_WAIT_SECONDS=30 # 最大等待时间(秒),0表示无限等待
+
+# 初始化变量
+start_time=$(cut -d. -f1 /proc/uptime)
+current_time=0
+qinheng_id=""
+usb_address=""
+vendor_id=""
+product_id=""
+cdc_acm_sub_addr=""
+
+
+# ----------------- 1. 等待TTY设备就绪 -----------------
+# 循环等待tty设备就绪(检查设备节点是否存在+是否可读写)
+while true; do
+ for dev in /dev/ttyACM*; do
+ [ -e "$dev" ] || continue
+ if [ -c "$dev" ] && [ -r "$dev" ] && [ -w "$dev" ]; then
+ echo "[雷达驱动自动切换程序] 设备 $dev 已就绪!" > /dev/kmsg
+ TTY_DEVICE="$dev"
+ break 2 # 跳出两层循环
+ fi
+ done
+
+ if [ ${MAX_WAIT_SECONDS} -gt 0 ]; then
+ current_time=$(cut -d. -f1 /proc/uptime)
+ elapsed_seconds=$((current_time - start_time))
+ if [ ${elapsed_seconds} -ge ${MAX_WAIT_SECONDS} ]; then
+ echo "[雷达驱动自动切换程序] 错误:等待 ${TTY_DEVICE} 超时(${MAX_WAIT_SECONDS}秒)!" > /dev/kmsg
+ exit 1
+ fi
+ echo "[雷达驱动自动切换程序] 仍在等待${TTY_DEVICE}(已等待${elapsed_seconds}秒)..." > /dev/kmsg
+ fi
+
+ sleep ${CHECK_INTERVAL}
+done
+
+# ------ 2. 查看CH343是否存在 ------
+if ls /sys/bus/usb/drivers/usb_ch343 > /dev/null 2>&1; then
+ echo "[雷达驱动自动切换程序] 检测到CH343驱动存在,继续执行..." > /dev/kmsg
+else
+ echo "[雷达驱动自动切换程序] 错误:未找到CH343驱动!" > /dev/kmsg
+ exit 2
+fi
+
+
+# ------------- 3. 查找Qingheng对应的usb接口 -------------
+echo "[雷达驱动自动切换程序] 开始提取QinHeng设备ID..." > /dev/kmsg
+
+# 执行lsusb并过滤含QinHeng的行,提取ID(核心逻辑)
+qinheng_id=$(lsusb | grep "QinHeng" | awk '{print $6}' | head -n 1)
+
+# 检查是否提取到ID
+if [ -z "${qinheng_id}" ]; then
+ echo "[雷达驱动自动切换程序] 错误:未找到含QinHeng的USB设备!" > /dev/kmsg
+ exit 3
+else
+ echo "[雷达驱动自动切换程序] 成功提取QinHeng设备ID:${qinheng_id}" > /dev/kmsg
+ # 将ID拆分为vendor_id和product_id
+ vendor_id=$(echo "${qinheng_id}" | cut -d ':' -f 1)
+ product_id=$(echo "${qinheng_id}" | cut -d ':' -f 2)
+fi
+
+# -------------------- 4. 提取USB地址 --------------------
+echo "[雷达驱动自动切换程序] 开始查找idVendor=${vendor_id},idProduct=${product_id}的USB地址..." > /dev/kmsg
+# 核心命令:过滤dmesg日志,提取USB地址
+usb_address=$(dmesg | grep -E "idVendor=${vendor_id}, idProduct=${product_id}" | grep -oE "usb [0-9]+-[0-9.]+:" | awk '{print $2}' | sed 's/://' | tail -n 1)
+
+# 检查是否提取到USB地址
+if [ -z "${usb_address}" ]; then
+ echo "[雷达驱动自动切换程序] 错误:未找到对应USB地址" > /dev/kmsg
+ exit 4
+else
+ echo "[雷达驱动自动切换程序] 成功找到USB地址:${usb_address}" > /dev/kmsg
+fi
+
+# ---- 5. 找到cdc_acm驱动对应的usb设备 ----
+echo "[雷达驱动自动切换程序] 开始从${CDC_ACM_PATH}提取${usb_address}对应的子地址..." > /dev/kmsg
+
+cdc_acm_sub_addr=$(ls "${CDC_ACM_PATH}" 2>/dev/null | grep "^${usb_address}:" | head -n 1)
+
+if [ -z "${cdc_acm_sub_addr}" ]; then
+ echo "[雷达驱动自动切换程序] 错误:${CDC_ACM_PATH}中未找到${usb_address}绑定的对应USB设备" > /dev/kmsg
+ exit 5
+else
+ echo "[雷达驱动自动切换程序] 成功提取cdc_acm子地址:${cdc_acm_sub_addr}" > /dev/kmsg
+fi
+
+# 6. 切换驱动
+echo "[雷达驱动自动切换程序] 开始切换cdc_acm驱动到USB地址${usb_address}..." > /dev/kmsg
+
+echo "${cdc_acm_sub_addr}" | sudo tee "${CDC_ACM_PATH}/unbind" 2>/dev/null
+if [ $? -eq 0 ]; then
+ echo "[雷达驱动自动切换程序] 成功解绑cdc_acm驱动:${cdc_acm_sub_addr}" > /dev/kmsg
+else
+ echo "[雷达驱动自动切换程序] 错误:解绑cdc_acm驱动失败" > /dev/kmsg
+ exit 6
+fi
+
+echo "${cdc_acm_sub_addr}" | sudo tee "${USB_CH343_PATH}/bind" 2>/dev/null
+if [ $? -eq 0 ]; then
+ echo "[雷达驱动自动切换程序] 成功绑定usb_ch343驱动:${cdc_acm_sub_addr}" > /dev/kmsg
+else
+ echo "[雷达驱动自动切换程序] 错误:绑定usb_ch343驱动失败(检查驱动是否加载)" > /dev/kmsg
+ exit 7
+fi
+
+
+# 执行完成
+echo "[雷达驱动自动切换程序] 雷达驱动自动切换完毕!" > /dev/kmsg
+
+exit 0
\ No newline at end of file