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

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

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


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

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

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

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

Уроки

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

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

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

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

Новости

ru:camera_subsys

Камера ДЗЗ
Виртуальное потребление - 200мА

 Камера Камера дистанционного зондирования Земли (ДЗЗ) - полезная нагрузка для съемки Земли из космоса, ради которой и проектируется космический аппарат в нашем случае. В реальности, кроме камер для съемки Земли, существует огромный спектр различных полезных нагрузок для космических аппаратов - приборов научного, образовательного, военного, технологического назначения.

В экспериментах с конструктором, камера будет являться полезной нагрузкой аппарата, а передача качественной фотографии заданного участка «земной» поверхности - целевой задачей «запуска». Камера имеет 10 секторов памяти для сделанных ей фотографий, которые заполняются с помощью функции (на языке C):

  int32_t take_photo(uint16_t num)

После заполнения очередного сектора фотография остается в ней до тех пор, пока не будет перезаписана новой фотографией. Также в любой момент фотография может быть передана на Землю по высокоскоростной радиолинии с помощью функции:

  int32_t transmit_photo(uint16_t num) //Изменено в версии 1.0
Шлейф для подключения камеры должен быть максимально коротким и аккуратным (не длиннее 40см) не должно оставаться отрезков неиспользованного шлейфа за разъемами после сборки шлейфа.
Подключать камеру можно только непосредственно в разъем камеры на центральном компьютере.
О том как работать с камерой конструктора ОрбиКрафт Вы можете прочитать в разделе использование камеры ДЗЗ.

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

	#include "libschsat.h"
 
	/*
	** Lab 6: 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)
ru/camera_subsys.txt · Последние изменения: 2020/03/25 16:28 (внешнее изменение)

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