- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Arduino智能避障小车避障程序
首先建立一个名为modulecar.ino的主程序。 // modulecar.ino,玩转智能小车主程序 #include Servo.h //导入舵机库 #include NewPing.h //导入NwePing库 // 对照系统配线方案依次指定各I/O const int ENA = 3 ; //左电机PWM const int IN1 = 4 ; //左电机正 const int IN2 = 5 ; //左电机负 const int ENB = 6 ; //右电机PWM const int IN3 = 7 ; //右电机正 const int IN4 = 8 ; //右电机负 const int trigger = 9 ; //定义超声波传感器发射脚为D9 const int echo = 10 ; //定义传感器接收脚为D10 const int max_read = 300; //设定传感器最大探测距离。 int no_good = 35; //*设定35cm警戒距离。 int read_ahead; //实际距离读数。 Servo sensorStation; //设定传感器平台。 NewPing sensor(trigger, echo, max_read); //设定传感器引脚和最大读数 //系统初始化 void setup() { Serial.begin(9600); //启用串行监视器可以给调试带来极大便利 sensorStation.attach(11); //把D11分配给舵机 pinMode(ENA, OUTPUT); //依次设定各I/O属性 pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(ENB, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); pinMode(trigger, OUTPUT); pinMode(echo, INPUT); sensorStation.write(90); //舵机复位至90° delay(6000); //上电等待6s后进入主循环 } //主程序 void loop() { read_ahead = readDistance(); //调用readDistance()函数读出前方距离 Serial.println(AHEAD:); Serial.println(read_ahead); //串行监视器显示机器人前方距离 if (read_ahead no_good) //如果前方距离小于警戒值 { fastStop(); //就令机器人紧急刹车 waTch(); //然后左右查看,分析得出最佳路线 goForward(); //*此处调用看似多余,但可以确保机器人高速运转下动作的连贯性 } else goForward(); //否则就一直向前行驶 } 主程序用到了两个库,Servo库是IDE自带的,NwePing库是第三方库,需要下载安装。 接下来建立一个名为move.ino的标签。 //move.ino,机动模块。 //刹车 void fastStop() { Serial.println(STOP); //串行监视器显示机器人状态为STOP(停止) //左电机急停(注:L298N和L293D均带有刹车功能,在使能成立的条件下,同时向两相写入高电平可令电机急停,详见芯片手册) digitalWrite(ENA, HIGH); digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); //右电机急停 digitalWrite(ENB, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH); } //前进 void goForward() { Serial.println(FORWARD); //串行监视器显示机器人状态为FORWARD(前进) //左电机逆时针旋转 analogWrite(ENA,106); //左电机PWM,可微调这个数值使小车左右两侧车轮转速相等,右电机同理 digitalWrite(IN1, LOW); digitalWrite(IN2, H
您可能关注的文档
最近下载
- 2025一级造价工程师《案例分析(土建、安装)》学霸笔记.pdf VIP
- 江苏省2024年中职职教高考文化统考财会专业综合理论试卷.pdf VIP
- 江苏省职教高考财会专业综合理论调研考试试卷.docx VIP
- 河南省职业教育条例解读课件.pptx VIP
- 2024年公路水运工程试验检测师《水运结构与地基》考前必刷必练题库500题(含真题、必会题).docx VIP
- 二千年间 胡绳新格式.pdf VIP
- 瓷砖空鼓注浆施工合同.docx VIP
- 阅读理解之研究报告类-2025年新高考必威体育精装版英语模拟试题优选分类汇编(解析版).docx VIP
- 儿科护理新进展与跨学科教育模式探索题库答案-2025年华医网继续教育.docx VIP
- 全民所有自然资源资产清查指南.pdf VIP
文档评论(0)