查看: 435|回复: 0

8路寻迹舵机小车

[复制链接]

该用户从未签到

发表于 2018-12-6 21:24 来自手机 | 显示全部楼层 |阅读模式
我的寻迹小车舵机反应总是慢一步,前面的红外对管已经检测到了,但还是冲出赛道 舵机没转(低速的时候可以转过来,但速度稍微快一点就不行了)请问是程序的问题吗?大佬求解ÿ! 下面是程序

#include<Servo.h>Servo myservo;int pos=108;unsigned int i; int a=0;void setup() {  Serial.begin(9600);    myservo.attach(3);//舵机  pinMode(5,OUTPUT);  pinMode(6,OUTPUT);//电机  pinMode(8,INPUT);  pinMode(9,INPUT);  pinMode(10,INPUT);  pinMode(11,INPUT);  pinMode(A0,INPUT);  pinMode(A1,INPUT);  pinMode(A2,INPUT);  pinMode(A3,INPUT)//红外对管8个;  myservo.write(pos); }void loop() {     analogWrite(5,60);  analogWrite(6,60);Serial.println(a);a=digitalRead(8)*17+digitalRead(A0)*13+digitalRead(9)*11+digitalRead(A1)*9+digitalRead(10)*7+digitalRead(A2)*5+digitalRead(11)*3+digitalRead(A3)*1;   switch(a){           case 4:     //    1和0    myservo.write(pos-6);    pos=pos-6;    delay(55);    break;    case 30:  //7和6    myservo.write(pos+6);    pos=pos+6;    delay(55);    break;    case 8:    myservo.write(pos-4);   //2和1      pos=pos-4;    delay(45);    break;    case 12:   //3和2    myservo.write(pos-1);    pos=pos-1;    delay(35);    break;     case 20:     //4和5    myservo.write(pos+1);    pos=pos+1;    delay(35);    break;case 24:         //5和6    myservo.write(pos+4);    pos=pos+4;    delay(45);    break;               case 17:    myservo.write(pos+7);    pos=pos+7;    delay(60);    break;  case 13:    myservo.write(pos+5);    pos=pos+5;    delay(50);    break;  case 11:    myservo.write(pos+1);    pos=pos+3;    delay(40);    break;  case 5:    myservo.write(pos-1);    pos=pos-3;    delay(40);    break;   case 3:    myservo.write(pos+5);    pos=pos+5;    delay(50);    break;   case 1:    myservo.write(pos-7);    pos=pos-7;    delay(60);    break;      default:    myservo.write(pos);    delay(40);      break;  }  //判断是那种情况   if(pos > 139)                        {      pos = 139;  }  else if(pos < 85)  {      pos = 77;  }  myservo.write(pos); //防止舵机度数太大打死}}
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

热门推荐

博哥零基础教你玩转ESP8266(十三) ESP8266WiFiGeneric库
博哥零基础教你玩转ESP826
帖子导航帖 博哥零基础教你玩转ESP8266(一) 重识ESP8266 博哥零基础教你玩转ESP8266
求助!WeMos D1 WiFi怎么接0.96寸OLED?(ㄒoㄒ)
求助!WeMos D1 WiFi怎么
求助!WeMos D1 WiFi怎么接0.96寸OLED?(ㄒoㄒ) 想用WeMos D1 WiFi接收服务器的数据然
串口发送16进制指令求助
串口发送16进制指令求助
我准备串口发出16进制指令到我的外置设备 代码如下图 我分别监控ARDUINO的tx口和USB口
一文教你选择Arduino开发板,小白进
一文教你选择Arduino开发
笔者在2016年接触了Arduino,跳了万条坑,行了千里弯,到今天也算是Arduino的一
大神们!1602显示屏上的MQ2浓度示数不是实时监测的何解
大神们!1602显示屏上的MQ
本人小白,刚刚接触arduino,长时间的查阅资料后,通过复制修改代码接线实现了DHT11实
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
快速回复 返回顶部 返回列表