The purpose of this paper is design of a three axis attitude control algorithm for sample remote sensing satellite. According to the orbital and physical characteristics of sample satellite, three attitude control algorithms are designed. These algorithms can simultaneously control the satellite’s attitude and its rotational rate in the presence of parametric uncertainties, unknown and nonlinear dynamics and variable disturbances. The proposed structure provides the possibility of designing reduced order control system and increases stability and robustness of system against the uncertainties. This approach can also lead to simplification at implementation of control system. The first algorithm is inverse dynamic based control which is nonlinear and static control method. Second algorithm is designed based on adaptive control principal. This way has the capability to control satellite in the presence of uncertainties. In this method, when the value of angular velocity is large, the magnitude of control effort is high. This property results in increased power consumption and actuator saturation. On the other hand, the adaptive control algorithm in some conditions becomes unstable. So using this method is only suitable for pointing and imaging mode. Hence to solve the problem of this method, supervisory adaptive control method is proposed. in the structure of supervisory adaptive control, a high level supervisor which works based on fuzzy logic determines the contribution of low level controllers according to the characteristics of them. In this control algorithm, accuracy is higher than the tow algorithms that were introduced above, while controlling torque will be less. This approach avoid the saturation of actuators while have the advantages of other two algorithms are presented as well. The advantages of supervisory algorithm can be pointed to the proper operation and optimum performance in different control modes. All three designed control algorithms are evaluated with simulations.