第一次提交

This commit is contained in:
氧原子
2025-05-14 12:34:56 +08:00
parent 64518bf42d
commit 8b2d592220
14 changed files with 929 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
#include<iostream>
#include<string>
#include<vector>
#include"eyebot++.h"
#include"maze_func.h"
#include"maze_parameter.h"
using namespace std;
/*---定义数据---*/
/*---定义全局常量---*/
const int DIST_cell = 360 ; //单元格长度
const int DIST_wall = 130 ; //与墙壁的距离
/*---定义全局变量---*/
/*---容器类---*/
vector<vector<int>> mark(1,vector<int>(1,0)); //定义mark容器二维容器容器初始为1行1列 1=为已访问
vector<vector<vector<int>>> wall(1,vector<vector<int>>(1,vector<int>(2,0))); //定义wall容器三维容器容器初始为1行1列且每个格子内带有2个墙壁信息 1=墙壁0=通路
/*---数组类---*/
// int mark[4][4] = {}; //1=为已访问
// int wall[5][5][2] = {}; //1=墙壁0=通路
// int map[4][4] = {}; //最短路径求解地图
// int copy_map[4][4] = {}; //copy复制地图
// int path[4][4] = {}; //最短路径结果地图
// int mark[mazesize_x][mazesize_y] = {}; //1=为已访问
// int wall[mazesize_x + 1][mazesize_y + 1][2] = {}; //1=墙壁0=通路
// wall[1][1][0] = 1; //定义迷宫的初始小车背后为墙
// int map[mazesize_x][mazesize_y]; //最短路径求解地图
// int copy_map[mazesize_x][mazesize_y]; //copy复制地图
// int path[mazesize_x][mazesize_y]; //最短路径结果地图
/*---机器人坐标---*/
int rob_x0 = 0; //机器人起点X坐标
int rob_y0 = 0; //机器人起点Y坐标
int rob_x = 0; //机械人当前X坐标初始为0
int rob_y = 0; //机器人当前Y坐标初始为0
int rob_dir = 0; //机器人当前的朝向初始为0
/*---递归算法---*/
/*---PID算法---*/
const float Kp = 1, Ki = 0, Kd = 0.5; //定义PID的参数
float Kpid; //定义PID计算后输出的倍率
const int Kpid_base = 2, speed = 24; //定义基本角速度和速度
const int speed2 = 0.75*speed; //快到目的地时减速
int err, err_old, err_sum, err_diff; //定义误差,上一次误差,积分误差,微分误差
const int eI_max = 20; //定义积分限幅
/*---目标点的坐标---*/
const int target_x = 4; //声明目标点的X坐标
const int target_y = 4; //声明目标点的Y坐标
/*---定义结束---*/