Dead, ну как я понял автора - минимальной моделью сичтается одномерный балансир. То есть штуковина на двух колесах, находящихся на одной оси (умеет ездить вперед-назад, поворачивать не умеет). Ось приводится в движение единственным мотором. ЦТ системы выше этой оси.
Ну а требования - вот:
Michael_K писал(а):Еще раз - ставим задачу сделать балансера, который сможет балансировать
1. Заведомо не зная собственных масс, моментов, размеров, углов.
(то есть, например, сможет взять в руку кирпич, который изменит положение ЦТ, массу, моменты инерции)
2. На наклонной плоскости.
3. Учитывая неизвестные погрешности и нелинейность датчиков и актуаторов.
ИМХО, завышенные требования. Я бы ограничил их так:
1. Известны пределы изменения механических параметров (положения ЦТ, момента инерции, вроде для одномерного хватит этого) и максимальные скорости их изменения. Точные значения параметров неизвестны.
2. Максимальный наклон плоскости известен, реальный - неизвестен.
3. Погрешности датчиков и актуаторов ограничены известными величинами.
Тогда что-то можно сделать. По пункту 1 - этому удовлетворяет конструкция с известной геометрией и заданной максимальной грузоподъемностью. 2 - тут вообще-то есть один момент, не важный для гипотетического балансира, но важный для реального - если колеса немного неодинаковы, он повернет и колеса окажутся не на одной высоте, что может привести к опрокидыванию балансера вбок. Но это уже отдельные рабочие моменты, плюс при переходе к балансеру с двумя управляемыми колесами эта проблема уйдет.
По датчикам - система имеет 2 степени свободы (движение и наклон) - нужно, ИМХО, 2 датчика. В качестве датчика движения подойдет энкодер, в качестве датчика наклона - одноосный горизонтальный акселерометр. Но показания этих датчиков сильно перемешаны (аксель меряет сумму проекции силы тяжести и собственно ускорения системы по горизонтали, энкодер - разность углов поворота колес и наклона корпуса), чтобы вычленить реальные величины, нужно будет из акселя вычитать вторую производную энкодера, а из энкодера - показания акселя, с соотв. коэффициентами. Ну и вторая производная от сигнала энкодера - это не слишком красивая штука, а если тиков на оборот у него мало - то просто жопа
. А, еще это все без проскальзываний.
Гироскоп (ДУС) явно добавит системе точности, т.к. даст отдельную быструю оценку угла наклона без примеси ускорения(а от акселя тогда потребуется только медленная ее коррекция).
Ну а адаптация этого всего под меняющиеся условия - это отдельная песня, но касается она по идее только системы управления, датчики все равно будут те же.