Troubleshooting
故障排查指南
常见问题的诊断与解决:硬件(电机、A4988 过热、真空泵、吸力、异响)、软件(串口、依赖、摄像头、固件烧录、GUI)、运动与视觉问题。
故障排查指南
常见问题的诊断与解决办法
1. 硬件问题
问:上电后电机不动?
可能原因:
-
电源未接通或电压不足
-
A4988 驱动没有插好
-
电机使能引脚(ENABLE)接错
解决办法:
-
用万用表检查 12V 电源电压
-
检查 A4988 指示灯是否点亮
-
发送
M17手动使能电机 -
检查 GPIO12(ENABLE)接线是否正确
问:A4988 过热?
原因: 限流设置过高
解决办法:
-
立即断电
-
安装散热片
-
调节 A4988 电位器(逆时针调小电流)
-
参考电流公式:Vref = I × 8 × Rs(Rs=0.1Ω)
-
NEMA17(1.5A)对应:Vref ≈ 1.2V
问:真空泵不工作?
检查项:
-
继电器接线是否正确(输入、VCC、GND)
-
发送
M121时继电器指示灯是否点亮 -
泵的电源接线是否正确(12V)
-
把泵直接接到电源上测试
问:吸力不足?
可能原因:
-
气管接头漏气
-
电磁阀损坏
-
吸盘老化
解决办法:
-
检查所有气管接头,确保插紧
-
手动测试电磁阀(通电时应有"咔哒"声)
-
更换老化的吸盘
问:机械异响?
检查:
-
球头关节是否装好,不过紧也不过松
-
齿轮啮合是否正确、有无缺齿
-
电机固定螺丝是否拧紧
-
机械臂运动时是否与其他部件干涉
2. 软件问题
问:串口连接失败?
解决办法:
-
检查端口号:打开设备管理器 → 端口(COM 和 LPT),确认正确的 COM 口
-
安装驱动:下载 CP2102 或 CH340 驱动
-
关闭其他程序:确保 Arduino IDE 或其他串口工具没有占用端口
-
重新插拔 USB:换一个 USB 口试试
问:Python 依赖报错?
# 升级 pip
python -m pip install --upgrade pip
# 清缓存后重装
pip cache purge
pip install -r requirements.txt --force-reinstall
# 某个库安装失败时(如 opencv)
pip install opencv-python==4.10.0.84
问:摄像头无法识别?
检查:
-
Windows 设置 → 隐私 → 摄像头,确认已允许 Python 访问
-
用 Windows 相机应用测试摄像头
-
把
VideoCapture(0)改为VideoCapture(1)或2
问:固件烧录失败?
检查:
-
开发板选择正确:ESP32 Dev Module
-
端口选择正确
-
上传时按住 BOOT 键(自动复位失败时)
-
降低上传速率:115200 → 57600
问:GUI 无法启动?
# 确认 Python 版本
python --version # 必须是 3.10
# 确认 PySide6
python -c "import PySide6; print(PySide6.__version__)"
# 报错时重装
pip uninstall PySide6
pip install PySide6
3. 运动问题
问:机械臂定位不准?
可能原因:
-
臂长参数不正确
-
发生丢步
-
电机电流太小
解决办法:
-
重新测量臂长:用卡尺测量后更新
robotGeometry.cpp -
调大限流:把 A4988 电位器顺时针稍微调一点
-
降低加速度:减小 GCode 中的
F值(如G1 X10 F500)
问:运动卡顿或不均匀?
检查:
-
球头关节是否过紧(手动转动应顺滑)
-
A4988 细分设置(推荐 16 细分)
-
机械臂是否有摩擦(给球头关节上润滑)
问:报超出范围错误?
原因: 目标坐标超出工作空间
工作空间范围:
-
径向:R ≈ 100mm(中心到 XY 平面的距离)
-
Z 轴:-320mm ~ -140mm(相对底座)
解决办法: 检查目标坐标是否在范围内
问:每次回零位置不一致?
检查:
-
使用限位开关时,检查是否每次都可靠触发
-
使用 HOME_STEPS 时,确保电机没有丢步
-
加装机械限位,提供稳定的参考点
4. 视觉问题
问:YOLOv8 检测不准?
优化方法:
-
改善光照:避免强阴影,使用均匀照明
-
标定摄像头:运行棋盘格标定校正畸变
-
调整置信度阈值:代码中
model(frame, conf=0.5) -
训练自定义模型:采集你自己的物体数据集进行训练
问:坐标变换误差大?
重新标定步骤:
-
在工作空间重新标记 4 个或更多标定点
-
准确记录像素坐标与物理坐标
-
重新生成
homography_matrix.npy -
用已知位置的物体验证
问:视频流卡顿?
优化方法:
# 降低分辨率
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 640)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 480)
# 降低帧率
cap.set(cv2.CAP_PROP_FPS, 15)
# 使用更小的 YOLOv8 模型
model = YOLO('yolov8n.pt') # nano(最快)
仍然无法解决?
向我们寻求帮助:
-
邮件支持(service@nenpower.com)
-
社区论坛
-
邮箱:service@nenpower.com
最后更新 21 Sep 2026