本文汇总项目推进过程中检索到的全部参考资源,包括完整开源项目、教程文档、关键库依赖和硬件采购清单。
完整项目(源码可下载)
| 项目 | 链接 | 核心价值 |
|---|---|---|
| Autonomous Object Tracking Turret (Cornell ECE5725) | https://courses.ece.cornell.edu/ece5990/ECE5725_Spring2018_Projects/fy57_xz522_AutoTurret/index.html | 完整Python源码,多进程+PD+硬件PWM |
| Automatic Tracking Patrol Laser System | https://github.com/Zungu02/Automatic-Tracking-Tracking-Patrol-Laser-System | 树莓派+MobileNet-SSD+UART+ESP32+总线舵机+激光,上下位机架构参考 |
| laserpointerpi | https://github.com/triooy/laserpointerpi | 视觉伺服闭环对准激光点,PCA9685驱动,精度优化方向 |
| laser-tracking | https://github.com/danielmundi/laser-tracking | 坐标变换法、闭环改进思路,早期但思路清晰 |
| motion-tracking-opencv (Kalman+MOG2) | https://github.com/myronabotanel/motion-tracking-opencv | MOG2+卡尔曼追踪代码,卡尔曼追踪器来源 |
| pan_tilt_control.py (PCA9685) | https://github.com/dave-ct/ai_object_plus_water/blob/main/pan_tilt_control.py | PCA9685配置化pan/tilt控制 |
教程与文档
| 主题 | 链接 | 价值 |
|---|---|---|
| SunFounder Pan-Tilt摄像头模块教程 | https://docs.sunfounder.com/projects/pironman5/zh-cn/latest/pironman5_promax/optional_modules/pan_tilt.html | 树莓派5接SG90、GPIO接线、I2C启用、基础控制代码 |
| Raspberry Pi Servo Control: PWM and Robotics | https://blog.hashhackers.com/blog/raspberry-pi-servo-guide/ | gpiozero/RPi.GPIO/PCA9685三种方式对比+完整代码 |
| 树莓派4B Python3实战:SG90二维云台 | https://blog.csdn.net/fire9/article/details/152653135 | 硬件PWM vs 软件PWM分析、供电关键考量 |
| Motion tracking turret with Gobot and GoCV | https://blog.matiaspan.dev/motion-tracking-turret-with-gobot-and-gocv | C270+树莓派+两轴舵机+激光,完整博客系列(Go语言) |
| Python OpenCV – Background Subtraction | https://www.geeksforgeeks.org/python/python-opencv-background-subtraction/ | MOG/MOG2/GMG三种算法对比+完整代码 |
| OpenCV Kalman Filter with Python | https://www.geeksforgeeks.org/python/opencv-kalman-filter/ | KalmanFilter基础+鼠标追踪示例 |
| OpenCV samples kalman.py | https://docs.opencv.org/5.0/examples/samples_python_snippets_kalman_py.html | 官方KalmanFilter示例 |
| N76E003 UART串口通信教程 | https://circuitdigest.com/microcontroller-projects/uart-serial-communication-with-nuvoton-n76e003-microcontroller | N76E003芯片UART编程(如需逆向控制板固件) |
| N76E003AT20数据手册 | https://microcontrollerslab.com/n76e003at20-microcontroller-pinout-features-programming-and-peripherals/ | 引脚/外设/编程指南 |
关键库与依赖
| 库 | 安装 | 用途 |
|---|---|---|
| opencv-python | pip install opencv-python | 视觉检测(MOG2/Kalman/contours) |
| opencv-contrib-python | pip install opencv-contrib-python | 完整OpenCV含bgsegm(MOG/GMG) |
| numpy | pip install numpy | 数组计算 |
| pigpio | sudo apt install pigpio python3-pigpio + sudo pigpiod | 硬件PWM舵机控制 |
| RPi.GPIO | 系统自带 | GPIO控制(激光、软件PWM备用) |
| gpiozero | pip install gpiozero | 高层GPIO抽象(Servo等) |
| adafruit-circuitpython-pca9685 | pip install adafruit-circuitpython-pca9685 adafruit-circuitpython-motor | PCA9685驱动板 |
| adafruit-circuitpython-servokit | pip install adafruit-circuitpython-servokit | PCA9685高层封装 |
硬件清单(建议起步)
| 部件 | 型号/规格 | 估价 | 备注 |
|---|---|---|---|
| 主控 | 树莓派5 | 已有 | 8GB版更佳 |
| 摄像头 | 罗技C270 | 已有 | 720P UVC免驱 |
| 舵机 | SG90 x2 | 约10元 | 起步可用,蚊子场景建议升级MG90S金属齿 |
| PWM驱动板 | PCA9685 (16通道) | 约15元 | 备用方案B’,I2C直驱 |
| 激光笔 | KY-008 650nm 5mW 红光 | 约5元 | Class 2,有眨眼反射安全 |
| 隔离元件 | 2N2222/IRLZ44N + 电阻 | 约5元 | 激光笔开关隔离 |
| 外部电源 | 5V 3A | 约30元 | 舵机专用,与Pi5共地 |
| 云台机械件 | 亚克力pan-tilt套件 | 约15元 | 含SG90安装座 |