почему не работает?

Шарик_на_метле1
Offline
Зарегистрирован: 29.11.2016

при создании машинки которая сама объезжает препятствие, был написан код.

После загрузки, расстояние определяется, а машинка не ездит

вот код:

 

 
//Драйвер моторов
const int PIN_IN1 = 5;//OUTPUT
const int PIN_IN2 = 4;//OUTPUT
const int PIN_IN3 = 3;//OUTPUT
const int PIN_IN4 = 2;//OUTPUT
int echoPin = 7;
int trigPin = 8;
 
void setup() {
  Serial.begin (9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  //Драйвер моторов
  pinMode(PIN_IN1, OUTPUT);
  pinMode(PIN_IN2, OUTPUT);
  pinMode(PIN_IN3, OUTPUT);
  pinMode(PIN_IN4, OUTPUT);
  Serial.println("Setup Motors");
}
 
 
void loop() {
  int duration, cm;
  digitalWrite(trigPin, LOW);
  delayMicroseconds(3);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  cm = duration / 58;
  Serial.print(cm);
  Serial.println(" cm");
  delay(100);
  if ( cm <= 100 ) {
    
      digitalWrite(PIN_IN1, LOW);
      digitalWrite(PIN_IN2, HIGH);
 
      digitalWrite(PIN_IN3, LOW);
      digitalWrite(PIN_IN4, HIGH);
 
    }
 
 
 
    else {
 
      
        digitalWrite(PIN_IN1, HIGH);
        digitalWrite(PIN_IN2, LOW);
 
        digitalWrite(PIN_IN3, HIGH);
        digitalWrite(PIN_IN4, LOW);
 
    }
    }
 
 
ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Опубликуйте код как положено.

Шарик_на_метле1 пишет:

при создании машинки которая сама объезжает препятствие, был написан код.

После загрузки, расстояние определяется, а машинка не ездит

Принято к сведению. Когда у Вас появтся вопросы, не стесняйтесь их задавать.

Шарик_на_метле1
Offline
Зарегистрирован: 29.11.2016

//Драйвер моторов
const int PIN_IN1 = 5;//OUTPUT
const int PIN_IN2 = 4;//OUTPUT
const int PIN_IN3 = 3;//OUTPUT
const int PIN_IN4 = 2;//OUTPUT
int echoPin = 7;
int trigPin = 8;

void setup() {
  Serial.begin (9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  //Драйвер моторов
  pinMode(PIN_IN1, OUTPUT);
  pinMode(PIN_IN2, OUTPUT);
  pinMode(PIN_IN3, OUTPUT);
  pinMode(PIN_IN4, OUTPUT);
  Serial.println("Setup Motors");
}


void loop() {
  int duration, cm;
  digitalWrite(trigPin, LOW);
  delayMicroseconds(3);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  cm = duration / 58;
  Serial.print(cm);
  Serial.println(" cm");
  delay(100);
  if ( cm <= 100 ) {
    
      digitalWrite(PIN_IN1, LOW);
      digitalWrite(PIN_IN2, HIGH);

      digitalWrite(PIN_IN3, LOW);
      digitalWrite(PIN_IN4, HIGH);

    }



    else {

      
        digitalWrite(PIN_IN1, HIGH);
        digitalWrite(PIN_IN2, LOW);

        digitalWrite(PIN_IN3, HIGH);
        digitalWrite(PIN_IN4, LOW);

    }
    }