Тахометр

Измерение частоты вращения путём подсчёта времени между импульсами

Пользовательские блоки дополняющие набор стандартных блоков
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25.01.2018{, 22:23}
Репутация: 95
Откуда: Bukovyna
Имя: Василий

Тахометр

#41

Сообщение Labu559 » 11.06.2021{, 13:18}

Davit07 писал(а):
11.06.2021{, 02:02}
А дисплей вообще не получается запустить
И не получится если не читать внимательно описание/предназначение в теме блоков TM1637 (сочувствую, эту муть почти никто не читает) :
1. TM1637LabUWCombi предназначен для других целей (модулей), если используются гистограммы (барграф-индикаторы, линейки светодиодов) совместно с числовым отображением на 7-сег.индикаторах. Используйте блок ТМ1637LabUW9Main с отключенной опцией switchKeyScan (0) в параметрах и attach digits ==4.
2. На вашем модуле удалите неправильные конденсаторы (это очень секретная информация :yes: , мусируется почти в каждом сообщении в теме), которые не дают работать шине данных на нужной скорости обмена (Bit-banging аля I2C, описано там-же).
3. 8-битные ATMega не очень "любят" многобайтные данные long, String, Float, и не умеют на аппаратном уровне производить мат. действия умножения/деления. Ваши две операции деления в проекте можно заменить одним: (100000000/х) /2 == 50000000/х (математика 4-класс).
4. Нет смысла обрабатывать строку и слать данныё в ТМ1637 в каждом цикле, используйте детектор изменения числа для включения отдельной платы в проекте с блоком дисплея и блоком преобразования строк. Если появится уверенность, что причиной Ваших бед есть блок дисплея- предоставлю Вам быстрый/лёгкий блок на чистом Си ТМ1637 для Атини13 для теста в Вашем проекте.
Варианты:
Можно попробовать увеличить скорость UART, до максимальной. Если действительно есть проблемы с блоком тахометра , можно модуль датчика Холла, который имеет аналоговый выход, подключить на вход АЦП (опрос по времени, возможно понадобится параллельно входу конденсатор) Ардуинки и с помощью масштабирования привести к Вашему интервалу оборотов двигателя, тогда возможно в Ардуинке прибавится времени для других функций. Можно таким методом (аналоговое измерение) применить и цифровой выход модуля (после компаратора LM393) как генератор импульсов (типа как ШИМ) на емкостной нагрузке (конденсатор и делитель на входе) подобрав подстроечником на плате оптимальную скважность(порог компаратора) импульса при мин/макс оборотах мотора.

Удачи!
Добавил ссылку на подробную информацию по ТМ1637 выше.
Последний раз редактировалось Labu559 11.06.2021{, 17:21}, всего редактировалось 2 раза.

Аватара пользователя
Davit07
Сержант
Сообщения: 119
Зарегистрирован: 05.01.2020{, 03:39}
Репутация: 5
Имя: Давит

Тахометр

#42

Сообщение Davit07 » 11.06.2021{, 16:52}

Labu559, благодарю за ответ .
Буду пробовать .
О математике за 4 класс Вы правы, аш стыдно стало ))). О упрощение не думал , хотел получить хоть какой то результат . По поводу дисплея , на нем установлены какое то конденсаторы . Но о них говорите или нет, их удалить или заменить ?
для интереса был загружен скеч и дисплей заработал ,но показания не соответствовали
image.jpg
.
Можно более подробно о подключение конденсатора на аналоговом входе?
Благодарю за ответ
Последний раз редактировалось Davit07 11.06.2021{, 17:43}, всего редактировалось 3 раза.

Аватара пользователя
Davit07
Сержант
Сообщения: 119
Зарегистрирован: 05.01.2020{, 03:39}
Репутация: 5
Имя: Давит

Тахометр

#43

Сообщение Davit07 » 11.06.2021{, 17:23}

Описание данного блока читал но получилось , что смотрю в книгу вижу ....

Отправлено спустя 1 час 2 минуты 44 секунды:
Перечитав внимательно, все заработало .
Благодарю за помощь с блоком дисплея .
Теперь вопрос по работе датчика Хол . Как получить правильные показания

Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25.01.2018{, 22:23}
Репутация: 95
Откуда: Bukovyna
Имя: Василий

Тахометр

#44

Сообщение Labu559 » 11.06.2021{, 19:57}

Davit07 писал(а):
11.06.2021{, 18:26}
Перечитав внимательно, все заработало
А ведь "магёте", поздравляю! :smile9:
Davit07 писал(а):
11.06.2021{, 18:26}
...по работе датчика Холла...
С позволения Ув. ТС (RedSky), если скетч из видео сообщения №42 рабочий и я ничего не напутал с оптимизацией (математикой, избавлением от Float), и Вы любезно согласитесь протестировать мазню ниже и она ещё окажется работоспособной и полезной, то :victory: ... Иначе удалю с темы. Жду вопросы / результаты/замечания. :)
Так как сделано в этом видео/скетче/блоке по его мотивам делать нежелательно, т.е. пихать в обработчик прерываний функцию вместо флага, но оказалось Вам просто показометр нужен, а не управление скоростью шпинделя и МК не использует другие прерывания, то сойдёт :smile198: .
Успехов!
Вложения
Tachometer_Lab_U55beta01.flp
(400.65 КБ) 105 скачиваний

Аватара пользователя
Davit07
Сержант
Сообщения: 119
Зарегистрирован: 05.01.2020{, 03:39}
Репутация: 5
Имя: Давит

Тахометр

#45

Сообщение Davit07 » 12.06.2021{, 00:37}

Labu559, Доброго дня.
Прошу не ругаться, общение наше ушло не в ту тему.
Я просто поделится своей ситуацией )
Видео же с поста 42 было приведено как пример по работе дисплея, что он работает и без пайки.
Благодарю Вас за помощь, обязательно протестирую и отпишусь

Отправлено спустя 1 час 23 минуты 20 секунд:
Labu559, большое Вам спасибо

Скажите пожалуйста, во время расчета скорости учитывается диаметр вала?
Данный блок работает с одним импульсом на оборот. Для бочее точного и быстрого расчета скорости можно изменить количество импульсов на оборот ? К примеру: 2;4;8
Было бы удобно для таких как я ))) установить количество импульсов на оборот с наружи или внутри блока
Можно данным блоком произвести расчёт оборотов с оптического энкодера ?

Пытаюсь понять работу,заглянул в блок, но нечего не понял (прям как на аватарке ). К сожалению нет у меня понимание в написание кода .
Спасибо Вам за уделенное время

Gruni
Рядовой
Сообщения: 8
Зарегистрирован: 31.01.2021{, 11:26}
Репутация: 0
Имя: Дима

Тахометр

#46

Сообщение Gruni » 14.11.2021{, 13:54}

Подскажите пожалуйста, как переделать блок под ESP8266?

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Тахометр

#47

Сообщение AlexCrane » 14.11.2021{, 15:50}

Gruni, ESP8266 не годится для таких задач... В нем главный WiFi, всё остальное побоку.
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Gruni
Рядовой
Сообщения: 8
Зарегистрирован: 31.01.2021{, 11:26}
Репутация: 0
Имя: Дима

Тахометр

#48

Сообщение Gruni » 14.11.2021{, 16:22}

AlexCrane писал(а):
14.11.2021{, 15:50}
ESP8266 не годится для таких задач... В нем главный WiFi, всё остальное побоку.
ЕСП32 годится?

Nazar
Рядовой
Сообщения: 81
Зарегистрирован: 31.05.2020{, 19:07}
Репутация: 6
Имя: Nazar

Тахометр

#49

Сообщение Nazar » 14.11.2021{, 16:45}

AlexCrane писал(а):
14.11.2021{, 15:50}
Gruni, ESP8266 не годится для таких задач... В нем главный WiFi, всё остальное побоку.
В режиме точки доступа работает как надо

Ответить

Вернуться в «Триггеры, таймеры, счетчики, детекторы сигнала»