/smartcar

树莓派+STM32小车(底层+遥控部分)

Primary LanguageC

树莓派+STM32智能小车(遥控部分)

硬件

  1. 树莓派4B +摄像头
  2. STM32F103系列开发板
  3. 超声波传感器(ACC功能)
  4. 车架+电机舵机电调 等

软件

  1. PYTHON3
  2. KEIL V5

STM32主要功能

  1. 速度PID
  2. ACC
  3. 超声波测距
  4. OLED屏显示
  5. IMU 9250 9轴传感

遥控部分主要功能

  1. 用户登录(过于简单,建议改用FLASK-LOGIN)

  2. 模式切换

  3. 最高速度限制

  4. 方向与速度控制(摇杆或者按键实现,摇杆在不同设备须修改参数)

  5. 小车速度和距离实时显示(由STM32上传)

  6. 小车当前电机与舵机PWM显示

  7. 树莓派摄像头拍照显示

    要是你不需要树莓派的信息, 用蓝牙操控还是最简单的

可拓展功能(在树莓派上)

  1. SLAM
  2. 摄像头循迹,物体识别
  3. .....

通信

树莓派与STM32通信(基本不用考虑误码和校验)

  1. 树莓派发送"t"+"电机PWM or 速度"+"空格"+"舵机PWM" ("t0.8 1500")
  2. 树莓派收到stm32发送的“r"+"速度"+"空格"+"距离” ("r0.83 1.23")

前后端通信

基于websocket协议,前端用socket.io.min.js,后端用flask-socketio

设备与树莓派通信

在同一局域网内即可用IP+端口访问

可选用nginx+gunicorn+gevent+flask部署