Конструктор спутника "ОрбиКрафт"

Sidebar

en:fan_motor

This is an old revision of the document!

Engine-fans
Virtual consumption - 2000mA
Not included in the basic delivery kit

When in orbit, many satellites require precise orientation of certain surfaces in the correct direction - relative to the Earth, the Sun, stars or some other reference point. For example, the camera should be oriented towards the ground and the solar panels should be oriented towards the Sun. There are several known approaches for solving this problem. For example, you can use jet (rocket) orientation engines, which causes the spacecraft to rotate in the desired direction relative to the center of mass. The unique advantage of this method is the speed and accuracy of the turn. In this case, engine-fans (EF) are analogous to jet engines.

In our model, free rotation of the spacecraft is possible only around one axis - the vertical one. Therefore, it is recommended to install at least two fan units on the “satellite” to provide rotation in the horizontal plane, both clockwise and counterclockwise. For maximum efficiency, the fan units must be maximally separated from each other and from the “satellite” axis of rotation when assembling the spacecraft. In each block, there are two fans: one is responsible for rotating the spacecraft clockwise and the other for rotating the spacecraft counterclockwise - depending on which command signal is indicated when setting the speed for the whole block. Blocks are programmatically controlled independently of each other.

The following functions are used for working with the fan motor:

int fan_turn_on(uint16_t num); - initialization of the EF;
int fan_set_speed(uint16_t num, int16_t RPM, int16_t * confirm) Allows you to set the EF speed to the number 'num' in RPM, and if successful, it will return the LSS_OK code and the 'confirm' value equal to the required RPM. It should be mentioned that the permissible speed is 2000-3500 RPM in absolute magnitude. If you set the RPM value less than 2000 RPM, the EF's will stop.
int fan_request_speed(uint16_t num, int16_t * pRPM) - this function allows you to query the current rotation speed of the specified EF number 'num' in the variable 'pRPM';
int fan_request_reset(uint16_t num) - Reboot the EF controller number 'num';
int fan_turn_off(uint16_t num) - Deinitialization of the EF.