счетчик пропускает сигнал от датчика

при подключенном дисплее 44780 по i2c

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#1

Сообщение Daimer » 22.01.2019{, 13:17}

Сигнал следует со скоростью 20мс ON 20мс OFF при програмно отключенном дисплее счет идет верно а, когда с дисплеем произходит пропуск сигнала :smile250:
Вложения
Итоговая V9.2 доработано однократное сраб каретки.flp
(933.72 КБ) 52 скачивания

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#2

Сообщение Sancho » 22.01.2019{, 13:57}

Daimer, Или используйте скоростной счётчик, на прерываниях, или внешний.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#3

Сообщение Daimer » 23.01.2019{, 08:39}

Sancho, почему просто стандартный счетчик в связке с I2C 44780 дисплеем пропускает поступления импульсов длительностью 20мсек. а без дисплея считает правельно что у ардуины мощей не хватает? Как организовать скоростной счетчик ведь он считает сколько импульсов за единицу времени. Еще не применял его, низнаю как применить к своему проекту.

Отправлено спустя 2 минуты 27 секунд:
есть пример счетчика? который в реальном времени показывает количество импульсов

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#4

Сообщение Sancho » 23.01.2019{, 09:31}

Daimer писал(а):
23.01.2019{, 08:42}
Sancho, почему просто стандартный счетчик в связке с I2C 44780 дисплеем пропускает поступления импульсов длительностью 20мсек. а без дисплея считает правельно что у ардуины мощей не хватает?
Писал тут
Daimer писал(а):
23.01.2019{, 08:42}
есть пример счетчика? который в реальном времени показывает количество импульсов
Возьми любой ПБ энкодера с выходом количества импульсов. Например этот.

Отправлено спустя 18 минут 39 секунд:
Или вот готовый, нашёл в закормах.
Вложения
Тест скоростного счётчика для Daimer.flp
(58.75 КБ) 65 скачиваний
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#5

Сообщение Daimer » 26.01.2019{, 10:19}

Sancho, Здравствуйте попробывал приминить блок Speed_Ports_V3 подключил к 7пину не помогло, (ошибка счета).Пример: Тест скоростного счётчика для Daimer.flp не пробывал т.к. не понемаю как обрабатывать значение

Отправлено спустя 8 минут 24 секунды:
Еще говорят можно применить блок энкодера, не понял какой конкретный блок это делает, мне бы блочек скоростного счетчика только с фунционалом стандартного т.е. со сбросом, установкой значения по входу, выходом текущего значения и выходом достижение текущего значения :smile427:

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#6

Сообщение Sancho » 26.01.2019{, 10:28}

Daimer, Ждал этого вопроса :)
Понимаете в чём дело - обработка сигнала происходит в момент обращения программы к пину.
А программа работает циклически, т.е. если у Вас сейчас выводится значение на дисплей и происходит смена уровня, потом выводятся/вычисляются другие дела и произойдёт опять смена уровня, то программа этого не заметит, совсем. Читайте ссылки выше.
Если использовать счётчик на прерываниях, то его значение меняется независимо от момента времени основной программы. Другое дело, что Вы это значение увидите, когда Ваша программа начнёт его, значение, как-то переваривать. Но к этому времени может быть уже слишком поздно/много....
Нужно реально обдумать алгоритм: чего и что нужно делать, какие задачи и уже исходя из этого придумывать решение.
Как-то так.

Отправлено спустя 4 минуты 16 секунд:
Попробуйте разогнать I2C до 400к - может успеет по Вашему проекту...

Отправлено спустя 47 секунд:
Переведите ВСЕ пины на speed
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#7

Сообщение Daimer » 26.01.2019{, 10:35}

Sancho писал(а):
26.01.2019{, 10:33}
Отправлено
а как?

Отправлено спустя 55 секунд:
ВСЕ пины на speed

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#8

Сообщение Sancho » 26.01.2019{, 10:38}

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

Отправлено спустя 2 минуты 4 секунды:
Попробую переделать Ваш проект, сегодня, но немного позже.
Библиотеку, шину, разгоните сами, описывал.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#9

Сообщение Daimer » 26.01.2019{, 10:40}

Вообще то индикация не является первостепенной задачей, во первых нужен правельный счет которого нет и с отключенным дисплеем, щас пойду с осциллографом на вход посмотрю)

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#10

Сообщение Sancho » 26.01.2019{, 11:57}

Daimer, Посмотрел Ваш проект - используется антидребезг, и тогда нет необходимости использовать промежуточные переменные. Всё ок.

Отправлено спустя 1 час 4 минуты 34 секунды:
Daimer, Получится переместить/поменять местами входы - пин 2 и 3 сделать входами для импульсов?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#11

Сообщение Daimer » 28.01.2019{, 05:41}

Sancho здравствуйте, вы предлагаете установить входы (2,3) для счетчика, я вас правельно понял ? какие нибудь дополнительные действия?

Отправлено спустя 21 минуту 19 секунд:
Длительность импульса 7мсек
СпойлерПоказать
IMG_20190126_140329.jpg

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#12

Сообщение Sancho » 28.01.2019{, 09:11}

Daimer писал(а):
28.01.2019{, 06:02}
Sancho здравствуйте, вы предлагаете установить входы (2,3) для счетчика, я вас правельно понял ? какие нибудь дополнительные действия?
Правильно поняли.
Теперь вопрос в другом - если оставить всё как есть, будет ли цикл программы меньше, чем время между импульсами? Иначе можем получить два импульса за цикл - это перебор или не страшно?

Отправлено спустя 53 минуты 50 секунд:
Вот, попробуйте допилить
Вложения
Итоговая V9.2 доработано однократное сраб каретки_01.flp
(838.78 КБ) 33 скачивания
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#13

Сообщение Daimer » 30.01.2019{, 09:54}

Sancho здравствуйте, я подключил Ваш счетчик теперь пропуска счета не наблюдается но стали произвольно добавлятся во время продолжения программы пока счета нет

Отправлено спустя 52 секунды:
Вот
Вложения
Итоговая V9.2 доработано однократное сраб каретки_02.flp
(781.83 КБ) 36 скачиваний

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#14

Сообщение Sancho » 30.01.2019{, 10:03}

Daimer писал(а):
30.01.2019{, 09:55}
Sancho здравствуйте, я подключил Ваш счетчик теперь пропуска счета не наблюдается но стали произвольно добавлятся во время продолжения программы пока счета нет
Добавлятся кто/что?

Отправлено спустя 2 минуты 23 секунды:
Ещё. Посмотрите мой проект - там уменьшено число блоков за счёт добавления однотипных входов, типа "или" "И". Зачем раздувать картинку?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#15

Сообщение Daimer » 30.01.2019{, 10:09}

Станок автомат для сетки рабицы.
Алгоритм такой:
задаем количество оборотов навивки секции
пуск---навивка секции(1)---рез ножницами---переезд каретки с намотчиком для так сказать зеркальной секции(2)---навивка секции(2) И т.д.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#16

Сообщение Sancho » 30.01.2019{, 10:16}

Подтяжку внешнюю сделали?
Или измените в блоке setup
pinMode(2,INPUT_PULLUP);

Отправлено спустя 1 минуту 33 секунды:
Sancho писал(а):
30.01.2019{, 10:05}
Добавлятся кто/что?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#17

Сообщение Daimer » 30.01.2019{, 10:55}

Sancho писал(а):
30.01.2019{, 10:17}
Подтяжку внешнюю сделали?
Или измените в блоке setup
pinMode(2,INPUT_PULLUP);

Отправлено спустя 1 минуту 33 секунды:
Sancho писал(а):
30.01.2019{, 10:05}
Добавлятся кто/что?

Сделал подтяжку внутреннюю и внешнюю на 1ком на плюс питания, конденсатор на 100нф на минус питания, думал что вход счетчика ширины болтается, оказалось что нет, на входе счетчика тишина а процесе программы счет добавляется сам по себе и к началу следующего счета счетчику уже начислено непонятно кем(

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

счетчик пропускает сигнал от датчика

#18

Сообщение Sancho » 30.01.2019{, 11:09}

Daimer, Для теста - замкни на общий.

Отправлено спустя 1 минуту 54 секунды:
Чудес не бывает. Это я знаю.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
Daimer
Рядовой
Сообщения: 15
Зарегистрирован: 20.12.2018{, 12:45}
Репутация: 0
Откуда: Кыргызстан
Имя: Максим

счетчик пропускает сигнал от датчика

#19

Сообщение Daimer » 30.01.2019{, 11:14}

удалил лишние блоки логики раньше не видел)

Отправлено спустя 7 минут 12 секунд:
Sancho писал(а):
30.01.2019{, 11:11}
Daimer, Для теста - замкни на общий.

Отправлено спустя 1 минуту 54 секунды:
Чудес не бывает. Это я знаю.
Счет идет когда переход с плюса на минус подтяжка же на плюс замыкал, и начисляется пока выполняется рубка и переезд коретки на входе счетчика в это время четкие +4.89 вольта осциллограф смотрит, мега запитана от БП 9Вольт 2Ампера

Отправлено спустя 6 минут 50 секунд:
импульсы от датчика четкие без помех.
и сейчас работает с дисплеем так вот ставишь к примеру счет трех импульсов от датчика навивки у датчик металла светодиод моргнул два раза осцилл тоже два увидел, а счетчик типа три посчитал

Отправлено спустя 2 минуты 13 секунд:
Может в одну плату все скомпоновать) Не поможет)
Вложения
Итоговая V9.2 доработано однократное сраб каретки_03.flp
(786.59 КБ) 46 скачиваний

Аватара пользователя
Grafsaxar
Лейтенант
Сообщения: 377
Зарегистрирован: 06.09.2015{, 16:04}
Репутация: 6
Откуда: Маркс-Энгелс
Имя: Alexander

счетчик пропускает сигнал от датчика

#20

Сообщение Grafsaxar » 01.02.2019{, 17:46}

Считать импульсы- выдавать импульсы и в то же время отсылать это все по I2C
ещё тот геморой. Нехватает ресурсов у меги.
Я с этим год назад бодался. I2C медленный.
Пробовал и на меги2560 и на меги328 та же ерунда.

В итоге взял 2 меги328 соединил по уарт , одна считает импульсы- другая
управляет дисплеем. Всё заработало но раз в день пропускал пару импульсов.

через пару месяцев зашёл товарищ пива попить ну и показал я ему своё решение.
Он долга плевался и матерился на меги . Назвал моё решение извращенским, хотя мне нравилось:))

Подправил код под STM32 и все проблемы испарились.
Очень жалко что в Flprog нет полной поддержки STM32, хотя голосование было больше года назад.

По цене STM32 стоит как Nano v3 а вот ресурсов имеет раз в 50 больше.
Может поднимем тему интеграции STM32 в Flprog ????
Кто за ????
Качество — это делать что-либо правильно, даже когда никто не смотрит

Ответить

Вернуться в «Спросить у знатоков»