Снова про стрелочный спидометр |
( Пред. 1, 2, 3, 4 След. ) |
Подписчиков (4) |
![]()
Ссылка на это сообщение:
|
||||||
Добавлено: 18:37 / 14.05.18 Условие можно убрать. В вашем случае прерывание срабатывает четко, когда на входе 2 сигнал меняется с высокого на низкий. В моем случае приходилось делать эту проверку т.к. прерывание срабатывало просто при любой смене сигнала. Здесь, если провод не подключен, на входе 2 должен быть всегда высокий уровень сигнала т.к. мы командой pinMode(WIRE, INPUT_PULLUP); включаем пулап-резистор, который подтягивает вход к +5В. Фактически датчик Холла должен замыкать этот вход на минус, просто, как кнопка. Можно не включать пулап, и поменять прерывание на attachInterrupt(digitalPinToInterrupt(WIRE), hall, RISING); Тогда срабатывание будет происходить при смене сигнала с низкого на высокий т.е. когда магнит подходит к датчику, а не когда отходит от него. Может так датчик будет лучше отрабатывать. TIME_MAX нужно увеличивать. Это период переключения аж шести магнитов в электроколесе, раскрученных до 6000 об/мин. Можно отказаться от Калмана, просто запоминать предыдущее значение скорости, складывать его с текущим и делить напополам - находить среднее значение скорости. Потом это значение масштабировать до значений шкалы. Но Калман самый плавный из всего, что я перепробовал. И это скорее всего он глючит т.к. коэффициенты надо подбирать. У вас один магнит на колесе будет? |
||||||
| ||||||
Ссылка на это сообщение:
|
||||||
Добавлено: 09:36 / 15.05.18
Попробовал оба ванианта, условие убрал, стрелка ведет себя так же, немного сдвигается, а потом пошла гулять до максимума и вниз, может есть какое то условие?
Планировал один, но для точности считывания думаю можно несколько поставить) TIME_MAX увеличивал и уменьшал - результат тот же. Мне пока сложно понять как проходит расчет, пытаюсь вникнуть) |
||||||
![]()
Ссылка на это сообщение:
|
||||||
Добавлено: 10:00 / 15.05.18 А есть еще одна ардуина? Собрать бы генератор, имитирующий работу ДХ, чтобы дрель не крутить, тогда было бы проще настраивать. |
||||||
Ссылка на это сообщение:
|
||||||
Добавлено: 10:05 / 15.05.18
Есть) Поищу сейчас прошивку под генератор |
||||||
![]()
Ссылка на это сообщение:
|
||||||
Добавлено: 12:32 / 15.05.18 Давайте посчитаем немного. Пусть у нас шкала заканчивается на 60 км/ч. По моему калькулятору: http://www.magazinmopedov.ru/speed_calculator - получается, что на этой скорости колесо диаметром 26 дюймов делает примерно 8 оборотов в секунду. Значит нам нужен генератор 0-8 Герц, если мы используем один магнит. Это значит, что TIME_MAX должен быть равен 125000. Попробую фильтр перенастроить, если получится. |
||||||
![]()
Ссылка на это сообщение:
|
||||||
Добавлено: 14:53 / 15.05.18 Переписал код в этом посте. Проверял аналоговым генератором, он при выключении питания дико глючит, а это хорошо, ввёл дополнительные условия для правильной работы. Перевел всё на миллисекунды. Так же дописал вывод на serial monitor. Стрелку не подключал, но на мониторе видно, что шаги меняются плавно, фильтр Калмана отрабатывает. Пробуйте, интересно, как оно в реале заработает. |
||||||
![]()
Ссылка на это сообщение:
|
||||||
Добавлено: 15:53 / 15.05.18 | Последний раз редактировалось: Hammer (18:31 / 15.05.18), всего редактировалось 2 раз(а) Переписал для тиньки, залил в свой спидометр, проверил с генератором, работает. Конечно не аналоговые движения стрелки, но и не дерганные цифровые. Вобщем норм.
|
||||||
Ссылка на это сообщение:
|
||||||
Добавлено: 17:36 / 15.05.18
Дмитрий!!!! Он заработал!!!! Удивительно!!!) Извиняюсь что так редко отвечаю, но он рабоооооотает!!!!!) Проверил даже дрелью! С компортом на много удобнее стало) Большое спасибо, оно ожило))) Единственное что не хватает подвижности стрелки, она слишком медленно реагирует на изменения, это можно как то изменить? |
||||||
![]()
Ссылка на это сообщение:
|
||||||
Добавлено: 17:48 / 15.05.18 Можно delay(5); укоротить или совсем убрать. В самой библиотеке тоже есть настройки скорости, я их менял как-то под свой шаговый двигатель. Если не поможет, то крутить коэффициенты фильтра, но это прям целый челлендж обычно. Но не советую увлекаться, шаговый двигатель начнет пропускать шаги. Надо на ходу смотреть, вполне может оказаться, что сам велосипед медленнее стрелки. Кардинально сделать стрелку более живой можно только путем добавления магнитов на колесо. |
||||||
Ссылка на это сообщение:
|
||||||
Добавлено: 18:03 / 15.05.18
delay прбовал убрать - не очень помогло, точнее разницы на глаз совсем не заметил)
Это понял) Огромнейшее спасибо) Буду пробовать установить на колесо, а там уж видно будет) |
||||||
![]()
Ссылка на это сообщение:
|
||||||
Добавлено: 18:10 / 15.05.18 Можно в самом файле библиотеки SwitecX25.cpp в строках 16 и 23 поменять значения на более низкие, я так делал. Но там как раз просчитаны значения задержек с учетом инерции стрелки. Но мне кажется, что это всё же фильтр тормозит. Можно выводить данные не на serial monitor, а на serial plotter, он рисует графики. Менять коэффициенты фильтра так, чтобы график быстро разгонялся, но медленно тормозил, иначе стрелка будет сильно дергаться. Отлично, ждем ходовых испытаний! |
||||||
Ссылка на это сообщение:
|
||||||
Добавлено: 18:17 / 15.05.18
Непременно) Сейчас попробовал добавить указание количества магнитов на колесе, правильно?
Это создал значение постоянно магнитов и в формуле расчета скорости делил на эту константу
|
||||||
![]()
Ссылка на это сообщение:
|
||||||
Добавлено: 18:19 / 15.05.18 Ну или просто второй строкой: speed = speed / MAGNIT; |
||||||
Ссылка на это сообщение:
|
||||||
Добавлено: 18:21 / 15.05.18
Понял, огромное спасибо) Буду экспериментировать) |
||||||
Ссылка на это сообщение:
|
||||||
Добавлено: 12:59 / 27.12.18
Я прошу прощения, может, конечно, и не в тему... Подскажите, пожалуйста, со спидометром на логометре (старая приборка ВАЗ 2110) Ваша прошивка будет работать? Контроллер ардуино Мини Вообще я новичок в ардуино, поэтому ищу любую инфу... про стрелки на шаговых моторах инфы полно, а на логометрах нету.. Сможете помочь? Спасибо |
||||||
|
Подписчиков (4) | ( Пред. 1, 2, 3, 4 След. ) |
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах |
© ДЫРЧИК.РУ 2018 info@dyr4ik.ru |
|
Мобильная платформа для втуберов |