Для чего нужен ОрбиКрафт
Подсистемы конструктора
Инструкции по работе с ОрбиКрафт
Уроки
Лабораторная оснастка
Знакомство с Arduino
Полезная нагрузка на базе Arduino
Обратная связь
Новости
Для чего нужен ОрбиКрафт
Подсистемы конструктора
Инструкции по работе с ОрбиКрафт
Уроки
Лабораторная оснастка
Знакомство с Arduino
Полезная нагрузка на базе Arduino
Обратная связь
Новости
Описанные ниже функции используются для взаимодействия с подсистемами при написании программ для конструктора спутника ОрбиКрафт на языке C.
Стандартные коды, возвращаемые функциями библиотеки #define LSS_OK 0 #define LSS_ERROR 1 #define LSS_BREAK 2
float battery_get_charge(void);
Возвращает текущий заряд виртуальной СЭП (мА*Ч)
float battery_get_discharging_current(void);
Возвращает текущий ток разряда СЭП (мА)
int magnetometer_get_state(uint16_t num);
Возвращает текущее состояние магнитометра (включен/выключен)
int magnetometer_request_raw(uint16_t num,int16_t *pRAW_dataX,int16_t *pRAW_dataY,int16_t *pRAW_dataZ);
Возвращает LSS_OK и записывает текущие показания магнитометра с номером num в переменные pRAW_dataX - pRAW_dataZ
В случае ошибок на шине возвращает LSS_ERROR
В случае отсутствия питания на магнитометре возвращает LSS_BREAK
int magnetometer_request_reset(uint16_t num);
Перезагружает магнитометр номер num
int magnetometer_turn_off(uint16_t num);
Выключает магнитометр номер num
int magnetometer_turn_on(uint16_t num); Включает магнитометр номер **num**
int hyro_get_state(uint16_t num);
Возвращает текущее состояние ДУС (включен/выключен)
int hyro_request_raw(uint16_t num,int16_t *pRAW_dataX,int16_t *pRAW_dataY,int16_t *pRAW_dataZ);
Возвращает LSS_OK и записывает текущие показания ДУС с номером num в переменные pRAW_dataX - pRAW_dataZ
В случае ошибок на шине возвращает LSS_ERROR
В случае отсутствия питания на ДУС возвращает LSS_BREAK
int hyro_request_reset(uint16_t num);
Перезагружает ДУС номер num
int hyro_turn_off(uint16_t num);
Выключает ДУС номер num
int hyro_turn_on(uint16_t num);
Включает ДУС номер num
int sun_sensor_get_state(uint16_t num);
Возвращает текущее состояние солнечного датчика номер num (включен/выключен)
int sun_sensor_request_maxraw(uint16_t num, uint16_t *pMAXRAW_data1, uint16_t *pMAXRAW_data2);
Возвращает LSS_OK и записывает текущие максимумы показаний сенсоров солнечного датчика с номером num в переменные pMAXRAW_data1 и pMAXRAW_data2. Максимум - максимальное показание которое когда-либо детектировал сенсор с момента перезагрузки
В случае ошибок на шине возвращает LSS_ERROR
В случае отсутствия питания на солнечном датчике возвращает LSS_BREAK
int sun_sensor_request_raw(uint16_t num, uint16_t *pRAW_data1, uint16_t *pRAW_data2);
Возвращает LSS_OK и записывает текущие показания сенсоров солнечного датчика с номером num в переменные pRAW_data1 и pRAW_data2.
В случае ошибок на шине возвращает LSS_ERROR
В случае отсутствия питания на солнечном датчике возвращает LSS_BREAK
int sun_sensor_request_reset(uint16_t num);
Перезагружает солнечный датчик номер num
int sun_sensor_set_calibrate(uint16_t num,uint8_t mode);
Не используется
int sun_sensor_set_minvalue(uint16_t num,uint16_t value);
Не используется
int sun_sensor_turn_off(uint16_t num);
Выключает солнечный датчик номер num
int sun_sensor_turn_on(uint16_t num);
Включает солнечный датчик номер num
int motor_get_state(uint16_t num);
Возвращает текущее состояние маховика номер num (включен/выключен)
int motor_request_reset(uint16_t num);
Перезагружает маховик номер num
int motor_request_speed(uint16_t num,int16_t *pRPM);
Возвращает LSS_OK и записывает текущую скорость маховика с номером num в переменную pRPM
В случае ошибок на шине возвращает LSS_ERROR
В случае отсутствия питания на маховике возвращает LSS_BREAK
int motor_set_speed(uint16_t num,int16_t RPM,int16_t *confirm);
Возвращает LSS_OK и записывает заданную скорость для маховика с номером num в переменную confirm, задает эту скорость маховику
В случае ошибок на шине возвращает LSS_ERROR
В случае отсутствия питания на маховике возвращает LSS_BREAK
int motor_turn_off(uint16_t num);
Выключает маховик с номером num (не рекомендуется краткосрочное выключение и включение!)
int motor_turn_on(uint16_t num);
Включает маховик с номером num
int camera_get_state(void);
Возвращает текущее состояние камеры (включена/выключена)
int camera_turn_off(void);
Выключает камеру
int camera_turn_on(void);
Включает камеру
int camera_take_photo(uint16_t num);
Делает фотографию с помощью камеры в ячейку с номером num
int transmitter_get_state(uint16_t num);
Возвращает текущее состояние ВЧ передатчика (включен/выключен)
int transmitter_transmit_photo(uint16_t num, uint16_t nPhoto);
Передает фотографию из ячейки камеры номер nPhoto с помощью ВЧ передатчика номер num на ВЧ приемник (на землю)
int transmitter_request_reset(uint16_t num);
Перезагружает ВЧ передатчик номер num
int transmitter_turn_off(uint16_t num);
Выключает ВЧ передатчик номер num
int transmitter_turn_on(uint16_t num);
Включает ВЧ передатчик номер num
int transceiver_get_state(uint16_t num);
Возвращает текущее состояние передатчика телеметрии номер num (включен/выключен)
int transceiver_request_buff(uint16_t num,uint8_t *data);
Не используется
int transceiver_request_reset(uint16_t num);
Перезагружает передатчик телеметрии номер num
int transceiver_send(uint16_t tx_num,uint16_t rx_num,const uint8_t *data,uint16_t len);
Посылает пакет данных с данными data длинны len от передатчика телеметрии номер tx_num в адрес приемника телеметрии номер rx_num (на землю)
int transceiver_turn_off(uint16_t num);
Выключает передатчик телеметрии номер num для снижения энергопотребления
int transceiver_turn_on(uint16_t num);
Включает передатчик телеметрии номер num
void dump_buffer(uint8_t *buf,size_t len);
Не используется
void mSleep(int msec);
Пауза в программе на msec миллисекунд
void Sleep(int sec);
Пауза в программе на sec секунд
int bus_setup(void);
Подготавливает все устройства на шине к приему информации. По умолчанию устройства после включения или перезагрузки могут начать обмен только после завершения хотя бы одной посылке на шине (для любого устройства) данная функция просто посылает пустое сообщение адресованное всем.