Инструменты пользователя

Инструменты сайта


fan_motor

Двигатель-вентилятор
Виртуальное потребление - 2000мА
Не входит в комплект базовой поставки

При движении по орбите многим спутникам требуется точная ориентация определенными гранями в нужном направлении - относительно Земли, Солнца, звезд или как-то иначе. Например, чтобы навестись фотокамерой на землю или солнечными батареями на Солнце. Есть несколько известных подходов для решения этой задачи. Один из них - использование реактивных (ракетных) двигателей ориентации, которые, расходуя рабочее тело, заставляют разворачиваться аппарат в нужном направлении относительно центра масс. Осоновное достоинство такого способа - быстродействие и точность разворота. Аналогом реактивных двигателей в данном случае выступают двигатели-вентиляторы (ДВ).

В нашей модели свободное вращение макета возможно только вокруг одной оси - вертикальной. Поэтому на «спутник» рекомендуется устанавливать не менее двух блоков вентиляторов, обеспечивающих развороты в горизонтальной плоскости, как по, так и против часовой стрелки. Для максимальной эффективности вентиляторные блоки при сборке аппарата следует максимально разнести друг от друга и от оси вращения «спутника». В каждом блоке два вентилятора: один отвечает за вращение аппарата по часовой стрелке, второй - за вращение против часовой стрелки - в зависимости от того, какой знак указан при задании скорости всему блоку. Блоки управляются программно независимо друг от друга.

Для работы с двигателем-вентилятором используются следующие функции:

int fan_turn_on(uint16_t num); - инициализация ДВ;
int fan_set_speed(uint16_t num, int16_t RPM, int16_t * confirm) Позволяет задать скорость ДВ номер 'num' в оборотах в минуту (RPM), в случае успеха возвращает код LSS_OK и значение 'confirm', равное требуемому RPM. Следует ответить, что допустимые значения скоростей по модулю 2000..3500 RPM. Если задать величину RPM по модулю меньше 2000 - ДВ остановится.
int fan_request_speed(uint16_t num, int16_t * pRPM) - эта функция позволяет запросить текущую скорость вращения указанного ДВ номер 'num' в переменную 'pRPM'
int fan_request_reset(uint16_t num) - Перезагрузка контроллера ДВ 'num'.
int fan_turn_off(uint16_t num) - деинициализация ДВ.

fan_motor.txt · Последние изменения: 2016/02/20 17:54 — admin