Требуется помощь в написании кода

В секунду

А какая разница, сколько там импульсов? Вы никак принцип не поймете ))

И да

Один импульс на оборот для вторички - лучше и не заморачиваться тогда

А вы поняли? Передачи меняються за сикунды( это не газона косилка или станок) частота оборотов меняеться за доли секунды, а самих оборотов(количество) очень мало чтоб с такой точностью определить передаточное число. Можно отсчитать обороты одного вала и другого и поделить одно на другое но так как датчик мереет целые, а передаточные числа с запятой надо мерить большее число. Будет такое количество за время пока на данной передачи? При условии что какое-то число уйдёт на предыдущий отсчет с ложным результатом.

Или сравнивать время периода одного вала с суммой времени периодов второго. Не обязательно через частоту оборотов не важно сколько раз этот период в секунду поместиться)) Но тут тоже не целые числа и датчики не обязательно одновременно начнут отсчет( при ускорении у одног будет какое-то время с минимальной скоростью у второго нет, закончит измерение уже с максимальной скоростью для данного измерения + обрежиться время после запятой.)

Обновлять на индикаторе 10 раз в секунду не надо, тут бы хоть раз совпало условие.

Я - да. А вы уперлись в синхронизацию оборотов и валите в кучу все сразу. Еще раз: подсчет скорости вращения коленвала - один процесс, подсчет скорости вторички - второй процесс, вывод номера передачи (и ее определение, соответственно) - третий процесс. Между собой они никак не связаны.

Аминь, яффсио :sweat_smile:

Коленвал в один день мерием, вторичку в другой и получаем точнейший результат?)) Или надо мерить в один день? Час? Минуту? Секунду? Милисикунду? Если думаешь что за милисикунду ни чего не меняеться посмотри на осцилограммы

Вот можно было бы посмеяться, но тут уже впору от горя поседеть. Извини, бро, не нужно было мне тебе советовать. Лучше пусть тебе кто-нибудь за деньги сделает, сам ты не потянешь :wink:

Парни, ну что вы тут устроили за дебаты.

Всё прекрасно работает.

Даже при скорости движения в 2 км/ч вторичный вал делает не менее 2 оборотов в секунду (если ведущая звезда маленькая то и того больше).

При периоде считывания информации в 500мс оба канала получают свои данные минимум один импульс на период (для вторичного вала), коленчатый вал в свою очередь совершает не менее 15 об/сек, а этого уже достаточно чтобы высчитать передаточное число, плюс погрешность в 10% позволяет делать верный для отображения расчёт во всех диапазонах движения.

Решение вашего вопроса по индикации передачи возможно только при включенном сцеплении, которое стоит на коленвале. Поэтому разбирать и ставить, иначе пропадает смысл. Решение вопроса - 2 датчика на переключатель и поиск места установки датчика нейтральной передачи.

Выжимаем сцепление, даём газу и получаем деление на 0, если делим обороты двигателя на обороты вторичного вала. Либо 0 при включенной первой передаче.

Это не страшно .

А по другому и не получится.

Только физическая контактная группа.

Если придётся кого-нибудь разбирать мотор, то поставлю, а пока этого достаточно будет.

Смысловой нагрузки в этом нет, так, лишь бы ошибка не висела.

Тогда лучше выводить дельту вращений, чтобы был смысл отслеживания нагрузки на сцепление замена которого - дорогая и муторная работа. Дельту можно как раз вывести на передачу, где чем выше передача - тем больше разница между вращением коленвала и первичной шестерней.

Ты наверно не понимаеш что такое ускорение? На примере коленвала когда начинаеш движение на первой передаче от момента когда диски не буксуют и до полного газа.

Частота вращения вала меняется с 600 об/мин до 4000 об/мин за 2 секунды. Нам нужно найти, на сколько изменится частота за каждый оборот.

Для этого:

  1. Рассчитаем изменение частоты вращения (в об/мин):

\Delta n = n_{конечное} - n_{начальное} = 4000 - 600 = 3400 \, \text{об/мин}

  1. Теперь определим, за сколько времени происходит это изменение — 2 секунды. Чтобы найти, на сколько изменяется частота за каждый оборот, нужно понять, сколько оборотов происходит за 2 секунды. Для этого:

n_{среднее} = \frac{n_{начальное} + n_{конечное}}{2} = \frac{600 + 4000}{2} = 2300 \, \text{об/мин}

Преобразуем это значение в об/сек:


n_{среднее} = \frac{2300}{60} = 38.33 \, \text{об/сек}

Теперь, учитывая, что изменение частоты за 2 секунды составило 3400 об/мин (или 3400/60 об/сек), вычислим, на сколько изменяется частота за один оборот:

  1. За 2 секунды вал совершит 2 * 38.33 = 76.66 оборотов. Теперь найдем, сколько изменится частота за один оборот:

\Delta n_{\text{за 1 оборот}} = \frac{\Delta n}{\text{Количество оборотов за 2 секунды}} = \frac{3400}{76.66} \approx 44.3 \, \text{об/мин на оборот}

Таким образом, частота вращения изменяется примерно на 44.3 об/мин за каждый оборот.

То есть каждое новое значение переменной оборотов коленвала будет +44.3 об/мин, а переменная вторичного вала обновится когда коленвал сделает 6 оборотов 44.3х6=265.8 и как ты говоришь “ в любой момент” мы будем делить старое значение одной переменной равное среднему из 6 оборотов где каждый +44.3 на новое + ещё 44.3

И это не куча измерений в секунду, а всего одно измерение, за время которого всё значительно меняеться.

Рука/лицо :woozy_face:

Дальше даже читать не стал. Уж прости :wink:

Да, и если бы это была гозонакасилка или станок то все отлично работает. Но на мотоцикле не едут на одних оборотах, и для перехода на следующую передачу надо изменить обороты двигателя от мин почти до полных. Когда я ездил на иже на 1 без пробуксовки сцепления 1 сек, дальше вторая 2-3сек, третья чуть дольше… и то в потоке самый “вялый”. табуретка обгоняла как стоячего

Тахометр когда-то видел? Видел там стрелочка перемещается? По наблюдай за сколько она от 600 до 4000 на первой перемещается при обычном разгоне на любой машине. А это ИЖ у него 15км/ч на первой, 30 км/ч на второй

Я даже спидометр видел. И совершенно уверен, что скорость и обороты двигателя жёстко связаны передаточным числом КПП. За сколько бы секунд обороты не менялись :wink:

Разбирать не чего не надо, педаль кпп легко снимаеться, на неё можно приварить маленький рычажок который будет тянуть тросик(как на педали тормоза). Тросик можно вывести туда где будет жить ардуина и там либо два концевика или переменный резистор. Датчик нейтрали есть с завода.

Мне тут перегазовка на 51/52 газонах вспоминается, я когда первый раз ее пременил, иструктор в УПК имел бледный вид))

Ты откуда это знаешь спросил он))

У меня было детство на Тамбовских полях , ответил я ему))

4 лайка

В часах тоже минутная стрелка и часовая жёстко связаны передаточным числом. Но это не мешает крутить минутную стрелку один оборот за час, второй за пол, третий за минуту…. А за сколько сделает часовая стрелка можно узнать только после 12 оборотов минутной. И на скорость какого оборота надо делить чтоб узнать передаточное число?

В этом и проблема, “сцепления” там нет))

Или может я не въехал и дичь порю?

Ото хочет сказать, что из-за не целого передаточного числа мы будем получать мгновенные значения частот с разнесением по времени. И эта погрешность окажется больше разницы передаточных чисел соседних передач. И мы в динамичном разгоне на 1-2 передаче за 2 секунды будем очень расстроены что лампочка передачи будет немного отставать на 1 позицию. А мотоциклист в силу частых падений головой в разгоне уже не способен без подсказки что-нибудь понять про текущую передачу. Хотя в разгоне ее абсолютный номер значения вообще не имеет, важно в оптимальный момент топать следующую. Весь этот показометр важен когда выжал сцепление в торможении и не понимаешь, какую сейчас воткнешь.

Т.е. как подсказывает логика полезности этой приблуды, важно фиксировать показание на момент выжима сцепления. Если же при выжиме сцепления частоты разлетаются в неизвестное соотношение и показометр отображает ничего, то пользы от него нет. Значит нужен датчик сцепления.

1 лайк