partizan Опубликовано 19 июля, 2016 Жалоба Поделиться Опубликовано 19 июля, 2016 Кто может помочь с кодом? Нужно чтоб по нажатию кнопки выставлялось заданное положение по датчикам от ровера Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AROKH Опубликовано 19 июля, 2016 Жалоба Поделиться Опубликовано 19 июля, 2016 А можно поинтересоваться сначала, прежде чем ответить на вопрос?Это "напишите мне скетч для готового блока" ?Или "дайте совет, вот тут у меня проблема в коде, не знаю где ошибка"? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
partizan Опубликовано 19 июля, 2016 Автор Жалоба Поделиться Опубликовано 19 июля, 2016 А можно поинтересоваться сначала, прежде чем ответить на вопрос? Это "напишите мне скетч для готового блока" ? Или "дайте совет, вот тут у меня проблема в коде, не знаю где ошибка"? ну и это и то ) ардуино недавно начал изучать . вот код на два положения, пока с одним датчиком , я в правильном направлении?) Новый текстовый документ.txt Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AROKH Опубликовано 20 июля, 2016 Жалоба Поделиться Опубликовано 20 июля, 2016 Нуууу... как тебе сказать...Попробую по порядку, то что явно вижу.Нумерацию строк лучше включи, проще будет указывать. Файл-настройки-нумерация1. Строки 46-48... У тебя одним проводом управление... двумя клопами? Строка 46 "дать +5в на канал 8", строка 48 "дать массу на канал 8"Там дальше что-то интеллектуальное, распознающее +5 и 0 ? Не понял этого момента... пока не буду ничего говорить.2. В целом... Нет, так, вероятно, не будет работать. Одним циклом в лупе управиться не удастся. Нужно в лупе проверять показания с пинов кнопок и передавать нужные параметры в функцию. И уже в функции творить цикл установки.Дело в том, что ты сам заблудишься скоро в скетче, ибо "линейный" алгоритм.А надо писать отдельные функции для каждой мелкой операции.3. Переменная visota - это будущий счетчик, как я понял? Ее наличие непонятно пока(((4. 32-34, 53-55... эммм... а зачем переприсваивание, а потом следующим условием проверка того, что только что присвоил? Нипанятна.... То же самое, запутаешься в линейном алгоритме((( то есть ты указал visota = 1, но потом следующая строка if visota==1.... Это условие бессмысленно в данном месте.5.if (visota == 2) { analog = analogRead(0); // Serial.println(analog); } if (analog <= 450 && visota == 2) digitalWrite(9, HIGH); // UP if (analog >= 460 && visota == 2) digitalWrite(9, LOW);зачем каждый раз перепроверять visota? Внеси в тело условия, вот так. Две проверки станут не нужныif (visota == 2) { analog = analogRead(0); // Serial.println(analog); if (analog <= 450) digitalWrite(9, HIGH); // UP if (analog >= 460) digitalWrite(9, LOW); }6. Сейчас алгоритм работает "пока держишь кнопку, идет установка". Если ты хотел сделать по одиночному нажатию, то нужны функции.Короче, функции вообще архинеобходимы. Изучай, без них никак Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
partizan Опубликовано 21 июля, 2016 Автор Жалоба Поделиться Опубликовано 21 июля, 2016 а я то думал что уже доделал )) вот видео красный подъем , желтый спуск Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AROKH Опубликовано 21 июля, 2016 Жалоба Поделиться Опубликовано 21 июля, 2016 П. 1 - я ошибаюсь, виноват )))Смотрел в блокноте, не заметил elseНа объективность не претендую, я не профразработчик, тема самому достаточно новая.Я имел ввиду - скетч не универсален. Не хватает много условий.В данный момент работает как "одностороннее поддержание уровня", верно?То есть: включен режим 1. При этом любое показание >=100 вызовет срабатывание.Что будет- если положение авто в данный момент по датчику 80 ?- если авто не может достичь заданного предела 100, а прошло уже много времени ?- если это будет 4 датчика и 8 клапанов? Отлаживать все положения вручную?Ну и нужны будут допуски. идеальных поверхностей мало.Линейно сложно решить. Да, теоретически, наверное, возможно, но сложно.Однако продолжай, весьма интересно.Может еще кое-кто подключится в тему, он тоже пишет свою версию))) Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AROKH Опубликовано 21 июля, 2016 Жалоба Поделиться Опубликовано 21 июля, 2016 тенденция:в лупе отслеживать нажатие кнопоки передавать нужные данные в функцию, которая сравнивает аналогрид с данными и делает операцииИбо я щас представил себе во что вырастет проверка всех условий по всем датчикам Dimetriy 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.