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

Перевод этой страницы:

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


Боковая панель

Для чего нужен ОрбиКрафт

Подсистемы конструктора

Инструкции по работе с ОрбиКрафт

Уроки

Лабораторная оснастка

Знакомство с Arduino

Полезная нагрузка на базе Arduino

Обратная связь

Новости

terra_01

Работа с комплексом "Терра"

Центр управления полетами

Назначение Центра управления полетами (**ЦУП**)

ЦУП работает на «наземном» компьютере и обеспечивает необходимый функционал для приема и отображения данных с Орбикрафт (со «спутника») - как телеметрии о работе бортовых систем, так и данных с полезной нагрузки. «Наземными» устройствами являются ВЧ-приемник и УКВ-приемник, которые подключаются при помощи кабеля USB-RS485 к компьютеру.

В случае использования комплекса имитаторов космической среды «Терра», к компьютеру подключаются имитатор Земли (глобус) и блок управления имитатором магнитного поля Земли (магнитной рамкой).

Установка ПО ЦУП и драйвера кабеля USB-RS485

Установка драйвера кабеля USB-RS485

  • Скачайте драйвер для USB кабеля из раздела Драйвера со страницы Необходимое ПО
  • Откройте скачанный архив ch341ser.zip
  • Запустите файл SETUP.EXE и дождитесь сообщения об успешной установке драйвера

Установка драйвера

  • Нажмите ОК
  • Закройте окно установки драйвера

Установка ПО ЦУП

  • Скачайте ПО ЦУП из раздела Центр управления полетами ЦУП со страницы Необходимое ПО
  • Содержимое скачанного архива распаковать в раздел C:\ (корень диска С)
  • Зайдите в папку Ground_Control_(версия)
  • Запустите файл GroundControl_(версия).exe
Также вы можете установить ПО ЦУП в любую другую папку. Важно чтобы путь нахождения папки был прописан на латинице, без использования специальных символов (!#@ и т.д.), не содержал пробелов и не начинался с цифры.

Интерфейс окна ЦУП

 ЦУП

ЦУП имеет одно окно с набором полей:

  • Выбор порта
    После подключения кабеля USB-RS485 из набора конструктора к компьютеру в выпадающем списке должен появиться порт USB-SERIAL CH340;
  • Карта
    Это поле используется при работе с лабораторной оснасткой «Терра». Точка (4) обозначает спутник, который движется по орбите (3). Выделенные темным поля (5) обозначают зоны действия наземных приемных станций УКВ, а красные точки - станции приема ВЧ-сигналов;
  • Прием телеметрии
    Внизу расположено окно отображения телеметрической информации, поступающей с бортового УКВ передатчика Орбикрафт (со «спутника» на «Землю»);
  • Изображение с камеры ДЗЗ
    В этом поле появятся снимки, которые вы будете получать с камеры ДЗЗ.

Получение снимка с камеры

Получение снимка с камеры требует работы с программой ЦУП из раздела Необходимое ПО и выполнения некоторой последовательности действий, изложенной ниже.

Скриншоты могут отличаться для разных версий операционной системы Windows.

Подключение Камеры

Подключите камеру при помощи специального шлейфа DB-9F папа-папа к БКУ.

О том как собрать шлейф Вы можете прочитать здесь.

Подключение ВЧ-передатчика

Подключите ВЧ-передатчик в сеть конструктора Орбикрафт.

При работе ВЧ-канала на конструкторе, светодиод ВЧ-передатчика излучает световой сигнал, а сенсор на ВЧ-приемнике его улавливает.

Настоящий ВЧ-канал на космических аппаратах не использует световых сигналов, а работает на базе высокочастотной радиосвязи. В конструкторе Орбикрафт снимки передаются при помощи имитаторов ВЧ-приемника и ВЧ-передатчика, а на самом деле снимок передается по Wi-Fi каналу между БКУ и FTP-сервером, разворачиваемом автоматически на персональном компьютере при запуске ЦУП (GroundControl_(версия).exe). Такой подход позволяет смоделировать процесс передачи изображений на Землю.
ВЧ-приемник может быть подключен к компьютеру пользователя с помощью USB-адаптера, входящим в комплект конструктора. Во время работы с глобусом могут быть использованы ВЧ-приемники, встроенные в глобус.
Обязательно иметь ВЧ-передатчик в сети конструктора для передачи снимка. Использовать ВЧ-приемник для приема снимка необязательно, так как снимок должен передаться и появиться в окне ЦУП и без него.

Установка статического IP адреса

  • Зайти в Панель управленияСеть и интернетЦентр управления сетями и общим доступом

 Центр управления сетями и общим доступом

  • Нажать Беспроводное сетевое соединение

 Беспроводное сетевое соединение

  • Нажать Свойства

 Свойства

  • Нажать Протокол интернета версии 4 (TCP/IPv4)

 Протокол интернета версии 4 (TCP/IPv4)

  • В открывшемся окне поставить галочку у пункта Использовать следующий IP-адрес:
  • Прописать IP-адрес 192.168.42.42
  • Щелкнуть на пустых графах пункта Маска подсети, в них автоматически появится адрес 255.255.255.0.
  • Нажать ОК
После завершения работы с конструктором нужно поменять настройки обратно на «Получить IP-адрес автоматически»? иначе стандартное Wi-Fi соединение не будет работать!

Отключение Брандмауэра Windows

Брандмауэр Windows может блокировать передачу снимков через Wi-Fi канал, поэтому его необходимо отключить.

  • Нажать Панель управленияБрандмауэр Windows

 Брандмауэр Windows

  • Нажать Дополнительные параметры

 Дополнительные параметры

  • Нажать Свойства Брандмауэра Windows

 Свойства Брандмауэра Windows

  • Откроется окно, содержащее 4 вкладки. В выпадающем списке вкладки Профиль домена в поле Состояние брандмауэра сменить состояние Включить на Отключить, то же самое повторить во вкладках Частный профиль и Общий профиль.
Восстановить защиту компьютера после завершения работы с конструктором можно, вернувшись в окно «Брандмауэр Windows» и нажав кнопку «Восстановить рекомендуемые параметры».

Запуск ЦУП

Запустите ЦУП. О том как запускать ЦУП (GroundControl_(версия).exe) можно прочитать здесь.

При запуске ЦУП автоматически запускается FTP-сервер в фоновом режиме. По сути, именно он и принимает снимок с камеры. Одновременно должен работать только один FTP-сервер для корректного приема снимка.

Если Вы уже ранее запускали ЦУП (Ground Control.exe), то убедитесь, что в диспетчере задач запущен только один процесс ftpdmin. Нажмите одновременно на клавиатуре Ctrl+Alt+DeleteДиспечер задач (Task Manager) → Вкладка Процессы.

На рисунке ниже показан пример, когда запущено несколько таких процессов. Это неправильно и нужно отключить все процессы ftpdmin (выбрав процесс и нажав кнопку Снять задачу), а потом заново запустить ЦУП.

 Свойства Брандмауэра Windows

Запуск программы

  • Запустите программу для съемки и передачи изображения

О том как создать и запустить программу Вы можете прочитать в разделе Первое знакомство

Следующая тестовая программа, (которая также представлена в разделе Камера ДЗЗ), выполнит получение десяти снимков подряд и передачу их в ЦУП. При этом в программе ЦУП (GroundControl_(версия).exe), запущенной на компьютере пользователя, будут отображаться получаемые изображения.

Пример кода проверки камеры и ВЧ-передатчика на языке С

	#include "libschsat.h"
	// Camera capture demo
	void control(void)
	{
		int i;
 
		if (LSS_OK == camera_turn_on()) {		
			for (i = 1; i < 10; i++) {
				printf("Take photo #%d\n", i);
				if (camera_take_photo(i)) {
					puts("\tFail!");
				}
			}
		}
		else {
			puts("\tFail!");
		}
		printf("Turn-on transmitter #1\n");
		if (LSS_OK == transmitter_turn_on(1)) {
			for (i = 1; i < 10; i++) {
				printf("Transmit photo #%d\n", i);
				if (transmitter_transmit_photo(1, i)) {
					puts("\tFail!");
				}
			}
		} 
		else {
			puts("\tFail!");
		}
		printf("Turn-off transmitter #1\n");
		if (transmitter_turn_off(1)){
			puts("\tFail!");
		}
	}

Пример кода проверки камеры и ВЧ-передатчика на языке Python

# Программа получения одного снимка и его передачи
def control():
 
	#Инициализируем переменные
	num = 1
	frame = 0
	err = 0
	err_transmitter = 0
 
	#Включаем камеру и передатчик и ждем их загрузки
	camera_turn_on()
	transmitter_turn_on(num)
	sleep(1)      
 
	# Делаем снимок 
	err_camera = camera_take_photo(frame)  
 
	if err == 1:
		print 'Camera access error, check the connection', frame 
 
	elif err == 2:
		print 'Camera interface errorr, check the code', frame 
 
	#Передаем снимок
	err_transmitter = transmitter_transmit_photo(num, frame)
 
	if err_transmitter == 1:
		print 'Transmition failed'
 
 
	#Выключаем устройства		
	camera_turn_off()    
	transmitter_turn_off(num)
Полученные фотографии находятся в папке FTP, которая создается автоматически в папке Ground_Control, из которой и запускается программа GroundControl_(версия).exe. Файлы могут находиться в папках catched и missed, в зависимости от попадания сигала в ВЧ-передатчик: если сигнал попал, то данные записываются в папку catched (принятые), в случае слабого сигнала или его отсутствия файлы считаются утерянными и записываются в папку missed (пропущенные).

Получение телеметрии по УКВ

УКВ-приемник из состава конструктора имитирует работу радиоприемной части наземной станции приема телеметрической информации по низкоскоростному УКВ каналу. Аналогичные приемники смонтированы внутри имитатора Земли (внутри глобуса), однако для предварительной отработки работы со спутником в комплекте также поставляется данный УКВ-приемник телеметрии с USB проводом для подключения.

Сам приемник работает совместно с ПО ЦУП. При передаче данных телеметрии бортовым радиоканалом и подключенном УКВ-приемнике в наземной сети, эти данные будут автоматически приниматься наземным радиоканалом и отображаться в окне телеметрии пользовательского интерфейса ПО ЦУП.

УКВ приемник в конструкторе ОрбиКрафт имеет номер «1» (указан на корпусе).

Код для приема данных по УКВ

Код для приема данных по УКВ на языке C

UHF_Test_C.c
	#include "libschsat.h"
	/*
	** Lab 8: UHF transceiver demo.
	*/
	void control(void)
	{		
		const uint16_t tx_num = 2;
		const uint16_t rx_num = 1;
		const char hello[] = "hello, world!";
		printf("Enable transceiver #%d\n", tx_num);
		transceiver_turn_on(tx_num);
		Sleep(1);
		bus_setup();
		printf("Send data from #%d to #%d\n", tx_num, rx_num);
		if (LSS_OK != transceiver_send(tx_num, rx_num, (uint8_t *) hello, sizeof(hello)))
			puts("Fail!");
		printf("Disable transceiver #%d\n", tx_num);
		transceiver_turn_off(tx_num);
		return;
	}

Код для приема данных по УКВ на языке Python

UHF_Test_Py.py
def control(): # Основная функция программы, в которой нужно вызывать остальные функции
 
	#Прием и передача обычно обозначаются как tx и rx от английских слов transmit  и receive
	# То есть в данной программе	tx - передающий УКВ - приемопередатчик, rx - принимающий УКВ - приемопередатчик
	rx_num = 1 # Номер принимающего УКВ-приемопередатчика
	tx_num = 2 # Номер передающего УКВ-приемопередатчика
 
	data = "Hello world!" #Сообщение для передачи
 
	print "Enable transceiver №", tx_num # Активируем передатчик. Приемник находится на приемной станции и не контролируется нашей программой
	transceiver_turn_on(tx_num)
	sleep(1)
 
	bus_setup()  #Готовим шину к передаче данных
	print "Send data from transceiver №", tx_num, " to transceiver №",  rx_num
 
	error = transceiver_send(tx_num, rx_num, data)
 
	if not error:
		print "data has been transmitted"
	elif error == 1: # если датчик вернул сообщение об ошибке 1
		print "Fail because of access error, check the connection" 
	elif error == 2: # если датчик вернул сообщение об ошибке 2
		print "Fail because of interface error, check your code"
 
 
	print "Disable transceiver №", tx_num # Выключаем передатчик
	transceiver_turn_off(tx_num)
terra_01.txt · Последние изменения: 2020/03/25 16:28 (внешнее изменение)

Инструменты страницы