littlebot
Published on 2025-04-08 / 5 Visits
0

【源码】基于Python和ESP32的智能小车控制系统

项目简介

本项目是基于TCP协议的智能小车控制系统。利用Python编写服务端程序,可控制多辆小车的运动,并接收小车发送的定位和电池信息。客户端程序运行于ESP32开发板,借助Arduino环境开发,支持PID控制算法实现精确运动控制。

项目的主要特性和功能

  1. TCP通信:服务端与小车间通过TCP协议通信,数据采用JSON格式。
  2. 多车控制:能同时对多辆小车的运动进行控制。
  3. 定位与电池信息:服务端接收小车定位数据和电池电量信息并可视化展示。
  4. PID控制:小车程序集成PID控制算法,精确控制小车速度和方向。
  5. 灵活配置:服务端和客户端可通过配置文件调整参数,如IP地址、端口号等。

安装使用步骤

环境配置

服务端环境

  1. 安装Python 3.x,确保系统已安装该版本。
  2. 安装依赖包: bash pip install matplotlib numpy -i https://pypi.tuna.tsinghua.edu.cn/simple
  3. 配置路由器:
  4. SSID: Freedomislife
  5. 密码: Freedomislife
  6. 地址: 192.168.5.1

服务端程序配置

  1. 修改配置文件:编辑mylib/Config/config.py,设置服务端的IP地址和端口号。 python IPADDRESS = ("192.168.5.103", 5650)

启动服务端

  1. 运行服务端程序: bash python Server/main.py
  2. 查看运行界面:服务端启动后,会显示用于控制小车和查看小车状态的图形界面。

客户端配置

  1. 在VSCode中安装PlatformIO IDE插件。
  2. 使用PlatformIO将Client/Esp32_Arduino/src/main.cpp上传到ESP32开发板。
  3. 根据实际需求调整PID控制器的参数。

使用说明

  1. 通过服务端的图形界面发送控制指令给小车,如设置速度、方向等。
  2. 服务端会实时接收并显示小车的定位数据和电池电量信息。
  3. 根据小车的实际运动情况,调整PID控制器的参数以优化控制效果。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】