235 lines
6.9 KiB
Markdown
235 lines
6.9 KiB
Markdown
ADCS - Attitude Determination and Control System
|
||
# Функциональная схема
|
||
|
||
Из SwissCube: [[S3-B-C-ADCS-1-3-ADCS_HW_and_System.pdf]]
|
||
![[Лелеков Вестник Ed1.pdf]]
|
||
|
||
(убрать TLE, пропагатор, модель магнитного поля Земли - не нужны для B-dot)
|
||
# Уровень 1 (контекст, границы)
|
||
Система имеет 2 основные функции
|
||
### Функция определения ориентации
|
||
- Принимает данные датчиков о состоянии аппарата во внешней среде
|
||
- Выдает измеренное состояние аппарата
|
||
### Функция управления ориентацией
|
||
- Принимает требуемое состояние
|
||
- Принимает измеренное состояние
|
||
- Выдает управляющие сигналы на активные элементы
|
||
# Уровень 2 (принцип построения)
|
||
### Активные элементы
|
||
Магнитные катушки (по 3 осям)
|
||
- Принимают управляющий сигнал
|
||
- Выдают момент вращения
|
||
### Набор датчиков
|
||
- Магнитометр (3-осный)
|
||
измеряет вектор магнитного поля Земли
|
||
- Гироскоп (3-осный)
|
||
измеряет вектор угловой скорости
|
||
- Акселерометр (3-осный)
|
||
измеряет вектор углового ускорения
|
||
- Солнечные датчики (фотодиоды, 6 граней)
|
||
позволяют вычислить вектор направления на Солнце
|
||
- Датчики температуры (сколько?)
|
||
позволяют компенсировать дрейф других датчиков
|
||
# Уровень 3 (декомпозиция)
|
||
### Определение ориентации
|
||
- (расширенный?) Фильтр Калмана (устранение шума)
|
||
### Управление ориентацией
|
||
- B-dot (демпфирование)
|
||
### Датчики
|
||
- Калибровка (алгоритм?)
|
||
- Температурная компенсация (модели, алгоритм?)
|
||
- Вычисление вектора на Солнце (алгоритм?)
|
||
|
||
|
||
|
||
# Перечисление функций
|
||
Измерение
|
||
- Калибровка датчика
|
||
- Опросить датчик
|
||
- Отфильтровать шумы
|
||
- Агрегировать разные датчики
|
||
- Получить измеренную ориентацию
|
||
- Компенсировать температурный дрейф
|
||
Управление
|
||
- Вычислить вектор B-dot
|
||
- Сформировать управляющий сигнал
|
||
- Вычислить текущую ошибку
|
||
Взаимодействие с подсистемами
|
||
- Сохранить данные в общую память
|
||
- Сформировать объект телеметрии
|
||
- Регулировать катушки через СЭП?
|
||
- Выполнить команду от БС
|
||
|
||
# Режимы
|
||
|
||
| Режим | Выполняемые функции |
|
||
| ------------- | --------------------------------------------------------------------------------- |
|
||
| Выключена | Нет |
|
||
| Ожидание | Ожидание команд |
|
||
| Измерение | ~<br>Опрос датчиков, фильтрация, сохранение<br>Формирование телеметрии |
|
||
| Демпфирование | ~<br>Вычисление B-dot<br>Формирование вектора для катушек<br>Управление катушками |
|
||
|
||
|
||
|
||
|
||
|
||
Из [[S3-B-ADCS-1-4-ADCS_Hardware.pdf]]
|
||
![[attachments/Pasted image 20260420231042.png]]
|
||
|
||
|
||
![[Pasted image 20260420231401.png]]
|
||
|
||
![[Pasted image 20260420231548.png]]
|
||
|
||
|
||
Из [[S3-B-C-ADCS-1-0-Sytem_Engineering before delta-PDR.pdf]]
|
||
![[Pasted image 20260420232949.png]]
|
||
|
||
![[Pasted image 20260420233430.png]]
|
||
|
||
|
||
Из [[S3-B-C-SET-1-2-Delta-PDR Mission_System_Overview.pdf]] (обновленная)
|
||
![[Pasted image 20260420234221.png]]
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Диаграмма через D2:
|
||
```d2
|
||
#direction: right
|
||
|
||
outer: Внешняя среда {
|
||
field: Магнитное поле Земли
|
||
sun: Солнце
|
||
}
|
||
|
||
adcs: Система ориентации {
|
||
control: Алгоритмы управления
|
||
determ: Алгоритмы определения ориентации
|
||
actuators: Актуаторы (катушки)
|
||
sensors: Датчики {
|
||
mag: Магнитометр (3d)
|
||
gyro: Гироскоп (3d)
|
||
accel: Акселерометр (3d)
|
||
sun: Солнечные датчики (x6)
|
||
}
|
||
}
|
||
|
||
cubesat: Кубсат
|
||
|
||
desired: Требуемое состояние
|
||
|
||
estimated: Вычисленное состояние
|
||
|
||
noise: Шум
|
||
|
||
sum: + {
|
||
width: 30
|
||
height: 30
|
||
shape: circle
|
||
}
|
||
|
||
adcs.control -> adcs.actuators -> cubesat: управляющий момент
|
||
adcs.sensors -> adcs.determ
|
||
noise -> adcs.determ
|
||
|
||
desired -> sum
|
||
sum -> adcs.control
|
||
adcs.determ -> estimated -> sum
|
||
|
||
outer -> cubesat: возмущающие моменты
|
||
outer -> adcs.sensors: измеряемое воздействие
|
||
cubesat -> adcs.sensors
|
||
|
||
|
||
```
|
||
|
||
```mermaid
|
||
flowchart LR
|
||
|
||
subgraph outer["Внешняя среда"]
|
||
|
||
field["Магнитное поле Земли"]
|
||
|
||
sun["Солнце"]
|
||
|
||
end
|
||
|
||
|
||
|
||
subgraph adcs["Система ориентации"]
|
||
|
||
control["Алгоритмы управления"]
|
||
|
||
determ["Алгоритмы определения ориентации"]
|
||
|
||
actuators["Актуаторы (катушки)"]
|
||
|
||
subgraph sensors["Датчики"]
|
||
|
||
mag["Магнитометр (3d)"]
|
||
|
||
gyro["Гироскоп (3d)"]
|
||
|
||
accel["Акселерометр (3d)"]
|
||
|
||
suns["Солнечные датчики (x6)"]
|
||
|
||
end
|
||
|
||
end
|
||
|
||
|
||
|
||
cubesat["Кубсат"]
|
||
|
||
desired["Требуемое состояние"]
|
||
|
||
estimated["Вычисленное состояние"]
|
||
|
||
noise["Шум"]
|
||
|
||
sum((+))
|
||
|
||
|
||
|
||
%% Основные связи
|
||
|
||
control --> actuators
|
||
|
||
actuators -->|управляющий момент| cubesat
|
||
|
||
sensors --> determ
|
||
|
||
noise --> determ
|
||
|
||
|
||
|
||
desired --> sum
|
||
|
||
sum --> control
|
||
|
||
determ --> estimated
|
||
|
||
estimated --> sum
|
||
|
||
|
||
|
||
%% Внешние воздействия
|
||
|
||
outer -->|возмущающие моменты| cubesat
|
||
|
||
outer -->|измеряемое воздействие| sensors
|
||
|
||
cubesat --> sensors
|
||
``` |