Задачка действительно интересная…
Код, который бы описывал крутящий момент и угадывал наперёд, так, чтобы передачи не прыгали туда-сюда, будет очень весёлый. Это вам не двигатель с постоянным по времени крутящим моментом, где можно выборку по нагрузке сделать минимальной.
+1
Видится система с несколькими входными параметрами: каденс, текущая скорость, положение тормозных ручек и некий предустанавливаемый параметр, типа «желаемой предельной мощности» (аналог ограничения выдачи ампер аккумулятором в электроприводе). Можем назвать его «стиль катания». Возможно еще один параметр – горизонт (едем вверх или вниз), но это скорее опционально.
Алгоритм приблизительно как у коробки-автомат: зависимость от крутящего момента, текущей скорости и положения педалей газа (каденс) и тормоза.
Параметр "стиль катания" - это набор параметров каденса, текущей передачи и текущей скорости. Каждый человек может выдавать разную мощность в зависимости от физического состояния или желания «поупираться». Но есть предел человеческих возможностей – один может держать каденс 100 на передаче 2-3. Другой в тех же условиях тот же каденс держит на передаче 2-2. В любом случае максимальный прилагаемый крутящий момент прямо пропорционален усилию (весу) человека (40…110 кг) умноженному на размер шатуна педалей (165…185 мм). Это когда человек «танцует» на педалях… недолго… При езде сидя прилагаемое усилие гораздо меньше. Вывод из всего этого такой – коробка-автомат хорошо работает с конкретным двигателем, так и в нашем случае необходимо иметь подстраиваемый параметр для каждого человека (двигателя) – «стиль катания».
«Стилей катания» может быть много – шоссе, асфальт, грунтовая дорога, тропинка, грунт, песок, трава, перепаханное поле, прогулка в парке и т.д., и т.п. Каждый «стиль катания» должен содержать некие оптимальные соотношения каденса, текущей скорости и передачи. Как узнать какие соотношения «оптимальные»? Вот тут и понадобятся «летчики-испытатели».
Ну и желательно переключение стилей катания тоже производить оперативно, нажатием какой-то кнопки, а не ковырянием в менюшках интерфейса.
Для быстрого («быстро» - тоже понятие растяжимое, кому-то 1 сек, кому-то 3 сек) переключения передач необходимо быстро получать входные данные. Значит по одному датчику каденса и скорости не обойтись. Надо по 4-6 датчиков.
Кстати скорость переключения, для разных «стилей катания», тоже неплохо бы настраивать.
по двум трем измерением не получится посчитать обороты точнее 20%.
потому или 4 магнита+4 датчика, или 3-5 оборотов на одном датчике.
Для быстрого переключения традиционные компоненты не очень подойдут. Лучше всего конечно планетарка. С обычными перекидками сложнее – автомат переключит (с высокой вероятностью) передачу в момент приложения усилия на педали человеком (несогласованное переключение между двигателем (человеком) и автоматом). Цепи и звездочки будут убиваться довольно быстро.
И такое проще организовать на планетарной втулке. Тогда система упрощается на один датчик.
В общем вывод такой. Простой система не будет. И сделать универсальный девайс для монтажа на любой существующий велосипед – идея сомнительная, слишком много доработок. Как направление развития – идея хорошая. Компы к этому готовы, технологически (по железу) тоже все вполне реализуемо. Но для массового потребления реализуемо только большой фирмой (создание прототипа, испытания, отладка, изготовление опытных экземпляров, опять испытания и доводка, технологическая подготовка производства, маркетинг и т.д.). Даже для прототипа нужны немаленькие средства и энтузиазм.
И помните: "Титаник делали профессионалы, а ковчег построил любитель".
