Лишние срабатывания carduino
- Войдите на сайт для отправки комментариев
Втр, 19/04/2016 - 00:39
Помогите кто чем может. Есть вот такая вещь http://carduino.ru/product_info.php?products_id=1911 и вот такой датчик http://amperka.ru/product/hc-sr04-ultrasonic-sensor-distance-module. Надобно при расстоянии менее 40 см включать реле шилд. Но во время подачи питания проскакивает секундное переключение реле,что портит весь феншуй. Менять пины не спасло,задержка не выручает,питание пробовал разное, скетч blink тоже щелкает,менять местами low и high-щелчков еще больше. Как жить дальше?
int echoPin = 5;
int trigPin = 4;
int relePin = 7;
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(relePin, OUTPUT);
}
void loop() {
int duration, cm;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
cm = duration / 58;
if (cm > 40) {
// turn LED on:
digitalWrite(relePin, HIGH);}
else {
// turn LED off:
digitalWrite(relePin, LOW);
}
}
Есть вот такая вещь http://carduino.ru/product_info.php?products_id=1911
Это чё? Нанка за 0x03FF (оно же 2^10-1, оно же 1023) рублей??? Оххххх.
А по сути,
во-первых, всегда следуйте правилам форума при публикации программ.
во-вторых, поменяйте схему так, чтобы пеле включалось сигналом HIGH, а не LOW как у Вас сейчас. Тогда ничего проскакивать не будет.
а оно у него и включается HIGH, просто в начале выстави его в HIGH, а включай LOW
а оно у него и включается HIGH, просто в начале выстави его в HIGH, а включай LOW
Нет, Джеймс, смотрите
Как раз, когда расстояние меньше 40 (надо включить) он подаёте LOW.
Отсюда и проблема. При включении МК там сидит LOW - реле включено и будет включено пока явно туда HIGH не пропишет. Отсюда и дергание. А если сделать, что LOW - это выключено, то никакого дергания не будет.
Пробовал, вместо одного короткого срабатывания аж три проскакивает
Пробовал, вместо одного короткого срабатывания аж три проскакивает
Так не бывает. Выкладывайте схему (наверняка, к земле не притянули) и актуальный скетч.
Если и впрямь не приятнули к земле, то поставьте резистор килоом пять от ноги, управляющей реле к земле.
Не, не притянул, но мысли были, спасибо. А 1 ком пойдет? Лень специально ехать в магазин
вот оно чё:) а дело то в железе:)
Я думал, что если это дребезг, то щелчки должны идти не только при включении
Не, не притянул, но мысли были, спасибо. А 1 ком пойдет? Лень специально ехать в магазин
Ну, в принципе-то подойдёт, но это предел, меньше не стоит. Сами смотрите. 5В / 1000ом = 5мА - т.е. при подаче туда HIGH целых 5мА пойдёт через резистор на землю. Это совершенно непроизводительная трата энегрии и нагрузка на контроллер.
Т.е. в притяжке это общая идея: чем меньше резистор, тем качественнее притяжка, но тем и больший ток пойдёт в землю.
а если еще и программнопритянуть?
Не понял, зачем притягивать? У модуля реле на входе стоит оптрон
Не понял, зачем притягивать? У модуля реле на входе стоит оптрон
Эм... и че?
Ну и для чего светодиод притягивать к GND?
а зачем на схеме IN1 вообще? и ты уверне что правильно его включил?
а вот мне интересно как ты диод зажигаешь? чем управляешь?
извиняюсь, включил не ты. хотя если смотреть по нику, то все может быть.
а если еще и программнопритянуть?
К земле? К сожалению, не этом МК. Нету у него такого.
а зачем на схеме IN1 вообще? и ты уверне что правильно его включил?
а вот мне интересно как ты диод зажигаешь? чем управляешь?
извиняюсь, включил не ты. хотя если смотреть по нику, то все может быть.
IN1 - это индикатор, который отображает состояние реле
включен IN1 правильно, последовательно со светодиодом оптрона. При последовательном включении ток в цепи не нужно увеличивать, а по напряжению еще и излишки остаются которые на резисторе превратятся в тепло
Оптрон управляется пином ардуины, тока 10-20мА для зажигания светодиодов достаточно
Так как на пины ардуины можно нагружать до 40мА
Оптрон управляется пином ардуины, тока 10-20мА для зажигания светодиодов достаточно
Так как на пины ардуины можно нагружать до 40мА
ладно про ин1 я понял, сначала подумал, что схема самодельная, а вот обясни, мне пожалуйста, если ты питаешь с пина ардуины, нахрена там источник питания? или они у тебя встречно на оптрон? VCC - это же не ножка дуины?
12В лампочка по приколу, вот просто как оптроны подключаю я
Зачем R4?
Q2 никода не откроется, так как у него нет соединения с общим проводом оптрона
А премычку ты не заметил? Перемычка конфигурирует питание от ардуины или от внешнего источника
поменяйте ваше подключение на это и все будет ок
подтяжка не помогает,хоть резистором,хоть программно.Поставил в void setup перед serial begin delay (5000)-при включении молчит,через 5 сек проскакивает вкл-выкл. Добавил в serial print отправку ON-OFF при условии срабатывания реле- лишние срабатывания не отображаются. Попробовал другой реле-модуль-то же самое. Удивительное рядом. Мыслев больше нет
Схему не в зуб не понял,я в этом не копенгаген,можно,пожалуйста, на пальцах-какой проводок к какой палочке. Или это модуль перепаивать?