Спидометр
Спидометр
Здравствуйте, решил собрать спидометр для велосипеда на датчике холла (магнит на колесе), скорость по этой формуле рассчитывал V=L/T (L - длина окружности, T - период, время одного оборота). Самого датчика пока нет, заменил блоком генератор с другой ардуины. Методом тыка добился правдоподобных значений. Помогите разобраться Speed.flp
Последний раз редактировалось Vano1989 30 июл 2017, 15:22, всего редактировалось 1 раз.
-
- Лейтенант
- Сообщения: 361
- Зарегистрирован: 07 сен 2015, 23:53
Спидометр
Во-первых зачем Вы расчитываете длительность импульса, если нужно считать количество ( для одометра) или количество за единицу времени (для спидометра) , а во вторых- вот готовый вариант http://forum.flprogwiki.ru/viewtopic.php?f=18&t=1067
А, понял, Вы считываете длительность паузы, тогда все правильно, только в уарт лучше отправлять значения не в каждом цикле, а раз в секунду. И добавить блок сравнения, если скорость меньше определенной величины, считать ее нулевой.
А, понял, Вы считываете длительность паузы, тогда все правильно, только в уарт лучше отправлять значения не в каждом цикле, а раз в секунду. И добавить блок сравнения, если скорость меньше определенной величины, считать ее нулевой.
Последний раз редактировалось OlegAn1962 31 июл 2017, 02:41, всего редактировалось 1 раз.
Спидометр
Я додумался только до такого варианта Speed2.flp , а как вторую цифру после запятой убрать? =)OlegAn1962 писал(а):И добавить блок сравнения, если скорость меньше определенной величины, считать ее нулевой.
Последний раз редактировалось Vano1989 31 июл 2017, 16:10, всего редактировалось 1 раз.
-
- Лейтенант
- Сообщения: 361
- Зарегистрирован: 07 сен 2015, 23:53
Спидометр
В блоке Sconv поставь 1Vano1989 писал(а):как вторую цифру после запятой убрать?
Спидометр
Еще бы точку вместо Ю на дисплее исправить и проект можно считать завершенным )
Добавлено (01.08.2017, 03:57)
---------------------------------------------
Переделал одометр по своему Speed & ODO.flp (1 метр, например, равен 2 оборотам колеса) в память сохраняет, а вот как сделать сброс в реальном времени, пробовал сделать, как у товарищей из примера http://forum.flprogwiki.ru/viewtopic.php?f=18&t=1067 , но не получается и ещё я правильно понимаю, как написано в описании, что EEPROM ограничен записью в 100 000 раз, т е потом перестает работать что ли? навсегда =)
Добавлено (01.08.2017, 03:57)
---------------------------------------------
Переделал одометр по своему Speed & ODO.flp (1 метр, например, равен 2 оборотам колеса) в память сохраняет, а вот как сделать сброс в реальном времени, пробовал сделать, как у товарищей из примера http://forum.flprogwiki.ru/viewtopic.php?f=18&t=1067 , но не получается и ещё я правильно понимаю, как написано в описании, что EEPROM ограничен записью в 100 000 раз, т е потом перестает работать что ли? навсегда =)
Последний раз редактировалось Vano1989 01 авг 2017, 05:21, всего редактировалось 1 раз.
Спидометр
Да. В вашем варианте через 100км нанка сдохнет )Vano1989 писал(а):как написано в описании, что EEPROM ограничен записью в 100 000 раз, т е потом перестает работать что ли? навсегда =)
Не понимаю зачем каждый метр писать в память?
Да и скорость в таком алгоритме будет скакать, ни чего не поймешь,
Надо брать несколько измерений и выводить среднее.
(кстати зачем обнуление больше 60км/ч)
Понимаю что это все ради эксперимента, не вижу смысла лепить это на велик.
Можно взять готовый вело компьютер, который в разы компактней, информативней, и дешевле.
Последний раз редактировалось rw6cm 01 авг 2017, 09:57, всего редактировалось 1 раз.
Win10-64, FLProg (portable)
Спидометр
Вот это костыль. Скорость действительно плавает, но только на больших скоростях , а 60 км/ч ограничил, потому что если, вторую ардуину отключить или сигнальный провод вытащить начинает казать космическую скорость =) а так ноль кажет.rw6cm писал(а):В вашем варианте через 100км нанка сдохнет )
А как у вас скорость рассчитывается, что за цифра 0.7 ? Как мне на лесопед переделать
СпойлерSPOILER_SHOW
![Изображение](http://i.imgur.com/5kotiE7.png)
Последний раз редактировалось Vano1989 01 авг 2017, 16:27, всего редактировалось 1 раз.
-
- Лейтенант
- Сообщения: 361
- Зарегистрирован: 07 сен 2015, 23:53
Спидометр
0.7- коэф. для скорости, второе число- для расстояния, подбирается опытным путем или расчетом. Советую приобрести внешнюю память, у ней до 1000000 циклов записи и записывать не через метр, а хотя бы через 10 или 100,Тогда хватит на 10000км
Последний раз редактировалось OlegAn1962 03 авг 2017, 02:35, всего редактировалось 1 раз.
Спидометр
Это не мой проект. Человек делал его под авто. С датчика КП на приборку шел свой набор импульсов.Vano1989 писал(а):что за цифра 0.7 ? Как мне на лесопед переделать
Чел подобрал множитель, чтобы были аналогичные показания на ардуине. Вам это не нужно.
Чет не понял, у вас на 2х ардуинах это сделано?Vano1989 писал(а):а 60 км/ч ограничил, потому что если, вторую ардуину отключить или сигнальный провод вытащить начинает казать космическую скорость =) а так ноль кажет.
Последний раз редактировалось rw6cm 03 авг 2017, 08:40, всего редактировалось 1 раз.
Win10-64, FLProg (portable)
Спидометр
Пожалуй я откажусь от одометра, я "поездил" на космических скоростях с включенной записью теперь не известно сколько жить осталось нанкеOlegAn1962 писал(а):Советую приобрести внешнюю память
Да, так как сам датчик пока в пути, в роли его ардуинка (времено для тестов), пробовал на одной сделать, но что то отказался светодиод мигатьrw6cm писал(а):Чет не понял, у вас на 2х ардуинах это сделано?
Может можно по другому скорость рассчитывать? или мне на лесопед только так V=L/T ?
Спидометр
Не знаю что вы там мудрите), в качестве датчика можно использовать геркон.Vano1989 писал(а):Да, так как сам датчик пока в пути, в роли его ардуинка
Win10-64, FLProg (portable)
Спидометр
Поспешил с датчиком холла, заказал индуктивный датчик - его не надо будит колхозить и судя по всему он герметичный и на 5в
![Изображение](http://i.imgur.com/7aa6Wq5.jpg)
![Изображение](http://i.imgur.com/7aa6Wq5.jpg)
Спидометр
Да в принципе, для этого простая математика вполне пойдет.Vano1989 писал(а):Может можно по другому скорость рассчитывать?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64, FLProg (portable)
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Контактная информация:
Спидометр
Используйте внешний счётчик, независимый. При необходимости подключились, считали. Питание - литиевая батарейка.Vano1989 писал(а):Пожалуй я откажусь от одометра, я "поездил" на космических скоростях с включенной записью теперь не известно сколько жить осталось нанке
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Спидометр
_uVideoPlayer({'url':'');
Спидометр
В алгоритме время бралось константой, измерялся пройденный путь за это время.Vano1989 писал(а):спасибо за подробные разъяснения к схеме, буду сидеть разбираться
Не достаток в том, что при увеличении частоты импульсов, таймер флпрог начнет давать погрешность (скажется в занижении скорости).
Можно и на оборот, путь брать константой, измерять время на его прохождение.
Здесь должна быть скорость более точнее, т.к. используется таймер на прерываниях.
Для экспериментов вам подойдет.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64, FLProg (portable)
- RedSky
- Лейтенант
- Сообщения: 576
- Зарегистрирован: 19 дек 2016, 20:07
- Откуда: Днепропетровск
- Имя: Алексей
Спидометр
Тоже делал подобное для авто. Вот блок для подсчёта количества импульсов и времени между импульсами.
Входы: preset -входзначения предустановки после включения из EEPROM.
prst - установить значение (пока здесь 1 на выходе значение из preset, нужно через Rtrigger).
rst - сброс счётчика(нужно через Rtrigger).
Выходы: Count - подсчитанное количество импульсов.
mov - 1 если есть движение (сбрасывается если более 2с не поступают импульсы).
time - время между импульсами (в микросекундах).
Блок работает по прерыванию(rising), датчик подключать на пин №3. Нужна подтяжка к земле.
А для сохранения можно отслеживать отключение питания, тогда запись в EEPROM будет гораздо реже.
Входы: preset -входзначения предустановки после включения из EEPROM.
prst - установить значение (пока здесь 1 на выходе значение из preset, нужно через Rtrigger).
rst - сброс счётчика(нужно через Rtrigger).
Выходы: Count - подсчитанное количество импульсов.
mov - 1 если есть движение (сбрасывается если более 2с не поступают импульсы).
time - время между импульсами (в микросекундах).
Блок работает по прерыванию(rising), датчик подключать на пин №3. Нужна подтяжка к земле.
А для сохранения можно отслеживать отключение питания, тогда запись в EEPROM будет гораздо реже.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось RedSky 08 авг 2017, 23:55, всего редактировалось 1 раз.
Спидометр
Спасибо за блок, сделал Спидоодовольтметр , жду датчик и протестирую на колесе так сказать, пока через ардуину вроде все окRedSky писал(а):Вот блок для подсчёта количества импульсов и времени между импульсам
![Изображение](http://i.imgur.com/nZUl1hy.png)
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость