- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
避障程序.doc
源程序如下:
/*
Template to access ARIA (ActivMedia Robotics Interface for Applications)
using Microsoft Visual C++, console Projects.
*/
# include Aria.h
# include cstdlib
# include iostream
# include iomanip
# include fstream
# include ctime
# include math.h
# include cmath
using namespace std;
// the robot
ArRobot *robot;
ArSonarDevice sonar; // sonar, must be added to the robot
ArSick sick; // the laser
int step=0;
double d0,d1,d3,d2,d4,d15;
double th,r,PI=3.1415926;
double minimum=0;
//sonar sensor offset positions with respect to robot local coordinate frame
double robotSonarX[8] = {69,114,148,166,166,148,114,69};
double robotSonarY[8] = {136,119,78,27,-27,-78,-119,-136};
double robotSonarTh[8] = {90.0, 50.0, 30.0, 10.0, -10.0, -30.0, -50.0, -90.0};
double laserData[2][180];
double sonarData[5][16]; // last 5 sets of sonar readings
double posData[5]; // odometry readings
long frameCount = -1; //how many iterations of the sensor grabbing functions have been run
/*********************************************************************************
Files for logging position and sensor data
*********************************************************************************/
ofstream positionData(positionvals.txt);
ofstream sonarVals(sonarvals.txt);
ofstream globalFrame(globalFrame.txt);
/*********************************************************************************
Function Definitions
*********************************************************************************/
void grabNewPositionData(void);
void logPositionData(void);
void grabNewSonarData(void);
void logRawSonarData(void);
void MapToGlobalFrame(void);
bool flag = true;
bool weWantToTurnTheRobot = true;
bool decideWhichDirectionToTurn = true;
bool turnRobotRight = false;
bool turnRobotLeft = false;
void update(void)
{// Your Code Here
grabNewSonarData();
grabNewPositionData();
logPositionData();
logRawSonarData();
//grabNewLaserData();
MapToGlobalFrame();
int sequence[]= { 0, 1, 2,
您可能关注的文档
最近下载
- 美的专卖店运营手册.doc
- 人教版五年级数学上册第六单元《多边形的面积》导学案 .doc
- (24)--6.6 原子结构 概率密度、电子云、波函数和电子云的空间图像.pdf
- RealityCapture中文教程_最新教程【104页】.pdf
- 5.认识身边的数字设备(教学课件)-三年级信息科技全一册(河北大学版2024).pptx
- 野生动物知识竞赛考试题库(汇总600题).pdf VIP
- 《Is this your pencil》PPT精品课件7七年级上册英语人教版.pptx
- 市区燃气管道工程施工组织设计.pdf
- 李晓风-高考历史一轮复习教材分析和教学设计.ppt
- 液体渗透探伤规范-中英文(03版).pdf
文档评论(0)