The interaction of humans and robots has the potential to set new grounds in industrial applications as well as in service robotics because it combines the strengths of humans, such as flexibility and adaptability, and the strengths of robots, such as power and precision. However, for a successful interaction the safety of the human has to be guaranteed at all times. This goal can be reached by the use of specialised robot hardware but we argue that safety in human-robot interaction can also be done with regular industrial robots, if they are equipped with additional sensors to track the human's position and to analyse the human's verbal and non-verbal utterances, and if the software that is controlling the robot is especially designed towards safety in the interaction. For this reason, we propose three design principles for an increased safety in robot architectures and any other software component that controls a robot for human-robot interaction: robustness, fast reaction time, and context awareness. We present a robot architecture that is based on these principles and show approaches for speech processing, vision processing, and robot control that also follow these guidelines.