项目简介
本项目由PES大学的Sanjay K N和Aryaman Dubey在物联网中心,于Dr. Adithya B的指导下完成,属于暑期实习项目。项目设计了2个漫游车,拥有5种控制模式,其中2种通过WiFi实现,3种通过蓝牙实现,为智能机器人控制提供了多样化解决方案。
项目的主要特性和功能
- 多种控制模式
- 蓝牙控制:可借助手机应用程序便捷操控漫游车。
- 手随动模式:漫游车能跟随手部动作移动。
- WiFi控制:通过网页应用远程控制漫游车。
- ROS控制:利用ROS框架,基于发布 - 订阅模型实现对漫游车的高级控制。
- 路径记忆与模仿:漫游车可记录行驶路径并重复该路径。
- 不同硬件适配
- 手随动机器人采用Arduino UNO,搭配多种传感器实现特定功能。
- 多地形漫游车采用ESP 32 DOIT DEVKIT V1,具备多地形越野能力。
安装使用步骤
手随动机器人
- 硬件组装
- 焊接电机电线,搭建底盘并安装电机。
- 将电机电线连接到L293D电机驱动器。
- 按图示安装Arduino板、HC - 05模块、开关、电池组和传感器。
- 连接电机驱动器到Arduino,连接电源到开关并接入L293D电机驱动器。
- 用跳线将传感器和HC - 05模块连接到电机驱动器的模拟引脚。
- 软件设置
- 下载Arduino IDE,安装所需库并编译代码。
- 通过Arduino Uno电缆将代码上传到Arduino,上传前断开蓝牙模块。
- 安装“Bluetooth RC Controller”应用程序。
- 操作使用
- 打开应用程序,连接HC - 05蓝牙模块。
- 使用箭头键驱动机器人,按停车灯按钮进入手随动模式,在设置中开启手势控制。
多地形漫游车
- 硬件组装
- 焊接电机电线,搭建底盘并安装电机。
- 将电机电线连接到L298N电机驱动器。
- 在底盘上安装面包板、开关、移动电源、12V电源和电机驱动器。
- 将ESP32固定在面包板上,将电机驱动器引脚与ESP 32并联。
- 连接12V电源到开关,将开关端子连接到面包板,并联电压和接地引脚。
- 连接ESP32到移动电源供电。
- 蓝牙控制模式
- 安装“Arduino Joystick”应用程序,连接到ESP32板。
- WiFi控制模式
- 在IDE的板管理器中安装最新的ESP 32板包,选择“DOIT ESP32 DEVKIT V1”板。
- 安装所需库,编译并上传Final Codes子目录中WiFi漫游车的代码。
- 连接到“C - IoT wifi rover”无线网络,在浏览器中输入“192.168.4.1”,使用自定义界面驱动漫游车。
- ROS控制模式
- 在Linux Ubuntu环境(如Docker、VM或系统OS)中设置,推荐使用18.04(Bionic Beaver)或20.04(Focal Fossa)版本。
- 下载对应Ubuntu版本的ROS(18.04为ROS Melodic,20.04为ROS Noetic),安装Rosserial和Teleop twist keyboard包。
- 在代码中替换IP/WiFi设置为自己的信息。
- 按顺序在至少3个终端中执行以下命令:
roscore
、rosrun rosserial_python serial_node.py tcp
、rosrun teleop_twist_keyboard teleop_twist_keyboard.py
。
- 路径记忆和模仿模式
- 下载Arduino IDE,在偏好设置中添加板管理器URL,安装ESP32板包,选择“DOIT ESP32 DEVKIT V1”板。
- 安装所需库,编译并上传代码到ESP32板。
- 打开“Arduino Joystick”应用程序,连接到ESP 32板,使用箭头键驱动漫游车,按“X”停止,按“Δ”模仿路径,按“O”重置路径。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】