Проблема с проектом

Katsu
Offline
Зарегистрирован: 30.03.2018

У меня Aruduino Nano.

Я хочу сделать умную мусорку, но при измерении расстояния, датчик как-будто выключается, и не присылает расстояние в консоль порта. Но отключив серво, все работает идеально. Возможно ли, что питания не хватает?И как это можно исправить? Помогите пожалуйста.

 

#include <Servo.h>

#include <NewPing.h>
#define trigPin 3
#define echoPin 4
NewPing sonar(trigPin, echoPin, 100);
Servo servo;
#define servoPin 5
long duration;
#define MAX_DISTANCE 100


void setup() {

  
  servo.attach(servoPin);
  pinMode(trigPin,OUTPUT);
  pinMode(echoPin,INPUT);
  
  
Serial.begin(9600);
}
void loop() {
delay(500);
  unsigned int measure2 = sonar.ping(); // Send ping, get ping time in microseconds (uS).
  Serial.print("Ping: ");
   measure2=(sonar.convert_cm(measure2));
  Serial.print(measure2); // Convert ping time to distance and print result (0 = outside set distance range, no ping echo)
  Serial.println("cm");
int measure=measure2;

  if (measure < 40 && measure>0){
    Serial.println("Open");
    servo.write(0);
     
    delay(5000);
   
      
    
  }
  
  else{
    Serial.println("Close");
    servo.write(60);
      delay(5000);
  }}


 

Andrey_Y_Ostanovsky
Offline
Зарегистрирован: 03.12.2012

Для проверки гипотезы по питанию - можно какую-то часть платы запитать от литиевой батарейки 4.2V.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Достаточно просто посмотреть осциллографом, что происходит с напряжением питания при включении серво.