30.10.2015, 10:59 | #1 |
Старший Пользователь
Регистрация: 28.02.2013
Город: Севастополь
Регион: 82
Машина: Mitsubishi
Сообщений: 222
|
глюк при включении АРДУИНО, нужен совет
Прблемма связана с переменной NEXUS, а именно
если подключены исключительно реле (4 проводка) и подаёшь внешнее питание, то реле связаное с переменной NEXUS(иноггда 2 раза из 3х) включается на 2 сек и отключается, а если я подключаю провод к ноге 4 , То начинается ложное срабатывание(то в произвольно порядке(раз в сек 15-30), то срабатывание просто от прикосновением пальцами до провода) опять же реле связанного с переменной nexus. реле местами перекидывал эффекта 0. А в остальном схема функционирует как надо ***********************СКЕТЧ********************** int ACC = 4; int Hub = 5; int Nexus = 6; int flagACC = 0; unsigned long pauseTime = 0; void setup() { pinMode(ACC, INPUT); } void loop() { if (digitalRead(ACC)== HIGH && flagACC == 0) { pinMode(Nexus, OUTPUT); digitalWrite(Nexus, LOW); pauseTime = millis(); flagACC = 1; } if (millis()-pauseTime>=3000 && flagACC == 1) { pinMode(Hub, OUTPUT); digitalWrite(Hub, LOW); pauseTime = 0; } if (digitalRead(ACC)== LOW && flagACC == 1) { digitalWrite(Hub, HIGH); pauseTime = millis(); flagACC = 0; } if (millis()-pauseTime>=2000 && flagACC == 0) { { digitalWrite(Nexus, HIGH); pauseTime = 0; } } } |
30.10.2015, 12:00 | #2 |
Старший Пользователь
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
|
Где вы взяли этот скетч, чувствуется моя рука, но кто то в нем покопался?
Попробуйте так: PHP код:
|
30.10.2015, 12:11 | #3 | |
Старший Пользователь
Регистрация: 28.02.2013
Город: Севастополь
Регион: 82
Машина: Mitsubishi
Сообщений: 222
|
Цитата:
к сожалению Ваш проблему не исправил+ с флагами чуть у вас не получилось, у меня релюхи управляются LOW и с вашим при включении идёт срабатывание обеих, но это не принципиально. проблемма выглядит (повторяюсь), если просто соеденительнцй проводок воткнуть в 4 ногу, то начинается произвольное срабатывания Nexus. А если брать и для работы схемы подкулючать на 4 ногу 3,3в и потом откл, то всё работает чётко. мне кажется проблема тут if (millis()-pauseTime>=3000 && flagACC == 0) // пауза 2 секунды { { digitalWrite(Nexus, HIGH); pauseTime = 0; } ЗЫ управление как будто сенсорное или емкостное получается и только с одной из переменных Nexus |
|
30.10.2015, 12:25 | #4 |
Старший Пользователь
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
|
Какой проводок, к какой ноге, Вы можете апеллировать понятиями 0 и 1 или хотя бы общий - и +5 в. И схему подключения неплохо бы увидеть, есть подтягивающий резистор на D4? ИМХО Управление по LOW не самый лучший вариант для управления питанием.
|
30.10.2015, 12:37 | #5 | |
Старший Пользователь
Регистрация: 28.02.2013
Город: Севастополь
Регион: 82
Машина: Mitsubishi
Сообщений: 222
|
Цитата:
У меня ARDUINO UNO нога D4 по которой управляется ACC если к D4 ничего не подключено и я подаю на неё 5вольт, то схема работает чётко. А вот если в D4 просто воткнуть провод в разъём и ничего не подавать ни 0 ни 1, то начинаются хаотические срабатывания D6, также срабатывание D6 можно совержить просто коснувшись этого провода рукой. D6 или например D12 значение не имеет |
|
30.10.2015, 12:43 | #6 | |
Старший Пользователь
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
|
Поставьте подтягивающий резистор 10 kOm от общего - к D4.
И всё равно вынести в void setup() Цитата:
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | Поиск в этой теме |
|
|