там и одного на 100 байт достаточно, видимо, но проще математика
ну это решается элементарно, просто надо в нужном месте с нужным числом работать, а для этого надо четко определить: что имеем на входе и что нужно получить на выходе.
Я тоже уверен, что тяговое усилие гидромоторов ниразу не линейно зависит от степени открытости клапанов.
Нуу, можно функцию присобачить, но опять же по результатам натурных опытов.
И как это пережить без опытов?
для начала нормализовать показания органов управления. Потом подключить на стенде 1 клапан с мотором и замерить хотя бы зависимость угловой скорости от степени открытости клапана. Потом прийти к выводу, нужна линейная зависимость, или же степенная / обратно степенная функция с коэффициентом, или экспонента, или безье / степенной многочлен
Предлагаю (но не настаиваю) пока автор не ответит на основополагающие вопросы, воду в ступе не толочь
Приятно что вам интересна тема.
Начну с гидромоторов
Название BMP-315. Мощные и мало оборотистые не могу сказать точно какую скорость выдадут. Просто самодельщики подобных тракторов посоветовали.
Они все делают трактора на простых гидрораспределителя. То есть открыл трактор поехал закрыл трактор остановился. Скорость регулируется с помощью оборотов двигателя. Чем сильнее вращается насосо гидравлический тем больше производит мотор потребляет ровно столько сколько производит насос. Это классика всех мини тракторов.
Я от этой схемы отказался. У меня постоянное давление в гидросистеме. Даже есть гидроаккумулятор.
Испытания планируются сначала после написания кода изучить работу на столе с помощью мультиметра. Затем скомпоновать это на тракторе подвесить его и смотреть как это все реагирует. И только после приступать к испытаниям уже ходовых характеристик. Забегу сразу вперёд. Первый гидрораспределитель который ч приобрел в Китае, он не совсем для моторов поэтому скорей всего при резких отклонениях будет резко останавливаться или менять направление. И вы правильно заметили лучше всего. Продумать задержку реакции на резкие отклонения. Это нужно будет учесть сразу. Просто гидрораспределители для моторов они предусматривают типа наката. Но я хотел чтобы использовать двигатели как блокираторы движения. Поэтому заказал с жёсткой блокировкой. Буду заказывать восьми секционный там две секции для моторов конкретно. Но первый испытания буду проводить на том что есть.
Если честно я знаю гораздо более хорошее решение, но необходимо получать данные о текущей угловой скорости и направлении вращения каждого из обоих моторов. Если готовы в этом направлении пойти, то могу расписать модель кратенько
а каков накат и какова максимальная скорость трактора? Вообще если ответите по пунктам из сообщения # 43 то будет сильно легче
Я думаю с этими гидрораспределителями наката не будет. Скорость если 20 км/ч я думаю максимум. Прямолинейная. А угловая даже не задумывался пока. Но градусов 3-5 в секунду максимум больше не нужно.
то есть если резко дернуть ручку назад до упора, то можно на 20 км/ч вылететь из-за штурвала головой вперед?
я считаю что это прям необходимость!!!
Честно скажу пока не смотрел. Открыл интересно. Но прежде нужно до конца книгу по основам изучить. Чтобы не задавать глупых вопросов. Ну и работа конечно времени на все сразу не хватает. Но вашу тему в закладки сохранил. Я думаю там много всего интересного.
Получается по два мотора на каждую сторону. Подключены пследовательно. Стоят на каждом колесе. Ну и как говорил управляются каждая пара одним гидрораспределителем. Который в свою очередь управляется двумя соленоидами пропорционально.
Получается так
Левая сторона
2 мотора
1 гидрораспределитель
2 соленоида.
Правая сторона
2 мотора
1 гидрораспределитель
2 соленоида
Ну и отталкиваемся что максимальная скорость 20 км/ч.
Она может будет только 10 но это испытания покажут
я имею ввиду, что для лучшего эффекта контроллеру нужно знать, с какой скоростью и в каком направлении они вращаются. Можно конечно надеяться на то, что эта скорость всегда соответствует степени открытости клапанов, но лучше бы именно получать реальные, то есть подключить датчики угловых скоростей
Давайте сначала условимся, что танковый разворот и поворот в движении вперед/назад - это совершенно разные операции, “переключение” между которыми будет возможно только после полной остановки машины.
Пока пренебрегаем фрикционными эффектами гусениц (или что там у вас) при поворотах. Упростим модель трактора до тележки на двух колесах: левого и правого, оси которых расположены на одной линии как на гироскутерах. Радиус колес (ведущего зубчатого гусянок, я хз как называется) будет R. Между колесами расстояние W. Единицы измерения сами выберите (сантиметры, метры, километры) лишь бы были одинаковыми, во всех вычислениях будут использоваться и получатсья они.
С ездой прямо вроде всё ясно. Есть одинаковая угловая скорость вращения левого и правого колеса, какая-нибудь A (оборотов / единицу измерения времени). Расстояние S за время t будет S = A * t * 2 * Pi * R
А вот повороты могут быть резкими, а могут быть плавными. От чего это зависит? От радиуса дуги траектории, по которой движется трактор в повороте. А радиус этой дуги будет зависеть от скоростей вращения колес. Нужно математически разрешить обратную задачу: определить скорости вращения колес в зависимости от требуемого радиуса дуги поворота и текущей скорости вращения колес при прямолинейном движении. Причем мы же хотим чтобы изменялась скорость именно центра масс, верно?
Другими словами. Например. Вы хотите начать поворачивать влево. У вас слева от трактора, на каком-то расстоянии от центра трактора T, есть точка Q, которая будет центром поворота. Радиус поворота будет QT, расстояние от Q до левого колеса QT - W / 2, до правого QT + W / 2. Надо вычислить угловые скорости колес, при которых они пройдут дуги со своими радиусами в этих условиях.
Считайте, что ось, отвечающая за поворот джойстика отвечает за перемещение точки Q влево/вправо (чем сильнее отклонение ручки, тем Q ближе к T). Такая модель даст не только геометрически правильное управление по рулежке, но и позволит, например, пропорционально ограничивать резкость поворота в зависимости от текущей скорости.
Если интересно я продолжу математические рассуждения, в целом там банально пара уравнений вычисления длин дуг для каждого колеса, просто я этого раньше не делал и выводить впустую не хотелось бы.
По поводу плавности управления и правильного определения скорости колес у вас по сути всего два варианта.
Вариант 1. Вы эмпирическим путем определяете максимально возможное гарантированное (!) угловое ускорение колеса при полном (!) загрузе трактора в гору, и ни при каких раскладах не используете при управлении величину больше этого значения. Тогда ожидаемые рассчетные значения скоростей будут соответствовать реальным чуть менее, чем полностью. но только в случае, если не превышены нагрузки на ходовую, ничто (грязь, ветки, камни и т.д.) не мешает движению, и все компоненты полностью технически исправны.
Вариант 2. Правильный. Ставите датчики угловых скоростей на колеса, а алгоритм рассчитывает параметры “налету”, основываясь на текущие показания, делая упор на то колесо, которому сложнее изменить свою скорость (например при повороте налево правому колесу будет сложнее ускориться, нежели левому остановиться)
Я хотел поступить проще.
У нас есть нейтральное положение.
При отклонении джойстика вперёд подаётся напряжение на два соленоида назовем вперёд левый А вперёд правый В (назад С левый и Д правый) и чем больше отклонение тем больше напряжение на соленоиде тем больше скорость. При отклонении джойстика в сторону идёт ограничение напряжения соленоида той стороны в которую отклонили джойстик. При полном отклонении джойстика в сторону ограничение максимально. Не важно в каком положении отклонен джойстик вперёд. Тем самым добиваемся любого радиуса разворота. Соответственно при отклонении джойстика в сторону при нейтральном положении ничего не происходит. Так как ограничивать нечего. Но если нужно развернуться на месте то вращаем ручку влево или вправо. Чем сильней тем больше угловая скорость но не более 5 гр в сек. При любом отклонении джойстика в сторону. Угловое вращение прекращается с какой-то задержкой исключая разкую остановку. Чтобы не было такого при вращении случайно отклонил в сторону и он встал как вкопанный.
Расстояние между осями 1100 мм.
Колеса УАЗ 15 дюймов. Обычные.
Это для наглядности
3Д проект.
С разным навесным
Ну смотрите, оно как бы работать будет, да. Но при таких раскладах у вас трактор всегда будет тормозить в повороты, а торможение в повороте сами знаете чем чревато, если авто водите.
А еще при такой схеме у вас общий крутящий момент при повороте всегда будет уменьшаться, т.е. если подзастряли то выехать поворачивая будет сложнее для машины - дикие нагрузки на мотор внешнего колеса


