PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > AndroidCar > Дополнительные устройства

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2015, 10:59   #1
mr_nixon
Старший Пользователь
 
Регистрация: 28.02.2013
Город: Севастополь
Регион: 82
Машина: Mitsubishi
Сообщений: 222
mr_nixon is on a distinguished road
По умолчанию глюк при включении АРДУИНО, нужен совет

Прблемма связана с переменной 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;
}
}
}
mr_nixon вне форума   Ответить с цитированием
Старый 30.10.2015, 12:00   #2
lti1
Старший Пользователь
 
Аватар для lti1
 
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
lti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond repute
По умолчанию

Где вы взяли этот скетч, чувствуется моя рука, но кто то в нем покопался?
Попробуйте так:
PHP код:
int ACC 4;
int Hub 5;
int Nexus 6;
int flagACC 0;
unsigned long pauseTime 0;

void setup()
{
pinMode(ACCINPUT);
pinMode(HubOUTPUT);
digitalWrite(HubLOW);
pinMode(NexusOUTPUT);
digitalWrite(NexusLOW);
}
void loop()
{
if (
digitalRead(ACC)== HIGH && flagACC == 0)
{
digitalWrite(NexusLOW);
pauseTime millis();
flagACC 1;
}

if (
millis()-pauseTime>=3000 && flagACC == 1)
{
digitalWrite(HubLOW);
pauseTime 0;
}

if (
digitalRead(ACC)== LOW && flagACC == 1)
{
digitalWrite(HubHIGH);
pauseTime millis();
flagACC 0;
}

if (
millis()-pauseTime>=2000 && flagACC == 0
{
{
digitalWrite(NexusHIGH);
pauseTime 0;
}
}

lti1 вне форума   Ответить с цитированием
Старый 30.10.2015, 12:11   #3
mr_nixon
Старший Пользователь
 
Регистрация: 28.02.2013
Город: Севастополь
Регион: 82
Машина: Mitsubishi
Сообщений: 222
mr_nixon is on a distinguished road
По умолчанию

Цитата:
Сообщение от lti1 Посмотреть сообщение
Где вы взяли этот скетч, чувствуется моя рука, но кто то в нем покопался?
}[/PHP]
Спасибо за то что Автор нашёлся, собрал я сам из нескольких(от сюда и из драйв2)-очень похожих.
к сожалению Ваш проблему не исправил+ с флагами чуть у вас не получилось, у меня релюхи управляются LOW и с вашим при включении идёт срабатывание обеих, но это не принципиально.
проблемма выглядит (повторяюсь), если просто соеденительнцй проводок воткнуть в 4 ногу, то начинается произвольное срабатывания Nexus. А если брать и для работы схемы подкулючать на 4 ногу 3,3в и потом откл, то всё работает чётко.
мне кажется проблема тут

if (millis()-pauseTime>=3000 && flagACC == 0) // пауза 2 секунды
{
{
digitalWrite(Nexus, HIGH);
pauseTime = 0;
}

ЗЫ управление как будто сенсорное или емкостное получается и только с одной из переменных Nexus
mr_nixon вне форума   Ответить с цитированием
Старый 30.10.2015, 12:25   #4
lti1
Старший Пользователь
 
Аватар для lti1
 
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
lti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond repute
По умолчанию

Какой проводок, к какой ноге, Вы можете апеллировать понятиями 0 и 1 или хотя бы общий - и +5 в. И схему подключения неплохо бы увидеть, есть подтягивающий резистор на D4? ИМХО Управление по LOW не самый лучший вариант для управления питанием.
lti1 вне форума   Ответить с цитированием
Старый 30.10.2015, 12:37   #5
mr_nixon
Старший Пользователь
 
Регистрация: 28.02.2013
Город: Севастополь
Регион: 82
Машина: Mitsubishi
Сообщений: 222
mr_nixon is on a distinguished road
По умолчанию

Цитата:
Сообщение от lti1 Посмотреть сообщение
Какой проводок, к какой ноге, Вы можете апеллировать понятиями 0 и 1 или хотя бы общий - и +5 в. И схему подключения неплохо бы увидеть, есть подтягивающий резистор на D4? ИМХО Управление по LOW не самый лучший вариант для управления питанием.
о сорри сча попробую

У меня ARDUINO UNO
нога D4 по которой управляется ACC
если к D4 ничего не подключено и я подаю на неё 5вольт, то схема работает чётко.
А вот если в D4 просто воткнуть провод в разъём и ничего не подавать ни 0 ни 1, то начинаются хаотические срабатывания D6, также срабатывание D6 можно совержить просто коснувшись этого провода рукой.
D6 или например D12 значение не имеет
mr_nixon вне форума   Ответить с цитированием
Старый 30.10.2015, 12:43   #6
lti1
Старший Пользователь
 
Аватар для lti1
 
Регистрация: 17.01.2010
Возраст: 48
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
lti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond repute
По умолчанию

Поставьте подтягивающий резистор 10 kOm от общего - к D4.
И всё равно вынести в void setup()
Цитата:
pinMode(Hub, OUTPUT);
digitalWrite(Hub, LOW); или digitalWrite(Hub, HIGH)
pinMode(Nexus, OUTPUT);
digitalWrite(Nexus, LOW); или digitalWrite(Nexus, HIGH);
lti1 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 16:05.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot