A robot comprising: a housing; an electronic control unit coupled to the housing, wherein the electronic control unit comprises a non-transitory memory that stores a set of machine readable instructions and a processor for executing the machine readable instructions; a projector coupled to the housing and communicatively coupled with the electronic control unit; a human recognition module coupled to the housing and communicatively coupled with the electronic control unit; a camera communicatively coupled with the electronic control unit to output image data to the electronic control unit; and a projection surface identification module coupled to the housing and communicatively coupled with the electronic control unit, wherein when executed by the processor, the machine readable instructions cause the robot to: recognize a human in the physical presence of the robot using the human recognition module; identify a location of the human using the human recognition module; detect movement of the human by analyzing the image data across frames of the image data; predict a future location of the human based on the detected movement of the human; identify a projection area based on the predicted future location of the human using the projection surface identification module; and project an image on the identified projection area with the projector. a housing; an electronic control unit coupled to the housing, wherein the electronic control unit comprises a non-transitory memory that stores a set of machine readable instructions and a processor for executing the machine readable instructions; a projector coupled to the housing and communicatively coupled with the electronic control unit; a human recognition module coupled to the housing and communicatively coupled with the electronic control unit; a camera communicatively coupled with the electronic control unit to output image data to the electronic control unit; and a projection surface identification module coupled to the housing and communicatively coupled with the electronic control unit, wherein when executed by the processor, the machine readable instructions cause the robot to: recognize a human in the physical presence of the robot using the human recognition module; identify a location of the human using the human recognition module; detect movement of the human by analyzing the image data across frames of the image data; predict a future location of the human based on the detected movement of the human; identify a projection area based on the predicted future location of the human using the projection surface identification module; and project an image on the identified projection area with the projector. recognize a human in the physical presence of the robot using the human recognition module; identify a location of the human using the human recognition module; detect movement of the human by analyzing the image data across frames of the image data; predict a future location of the human based on the detected movement of the human; identify a projection area based on the predicted future location of the human using the projection surface identification module; and project an image on the identified projection area with the projector.