The decision and execution of autonomous robot behaviors highly depend on constant perceiving of the situated environment, in order to respond to various changes. Existing control architectures for robot software generally follow a sequential sense-model-plan-act (SMPA) architecture, in which the sensing activity only interacts with the modelling activity that triggers the planning and acting activity. However, in dynamic world, the constant changes of environment not only influence robot's behavior decisions but also affects their plan execution. The robot behaviors to fulfill tasks are often required to be accompanied with a series of sensing activities. To deal with this issue, this paper presents a robust software architecture for autonomous robot software, in which sensing activity interacts with the modeling, planning and acting activities. Such approach enables autonomous robot software to constantly sense environment and obtain expected percepts in different phase of control loop. Therefor it enriches autonomous robot capability to take behaviors based on the sensing and improves the robustness of autonomous robot software. This paper details the model of architecture, designs behaviors schedule algorithm and presents a mutual data store mechanism to support the interactions between the activities in architecture. We also conduct a comparative experiment on humanoid robot NAO, and the result validates the enhanced robustness of our proposed architecture over traditional structure.