Faits: A. Le Ministère public de l'arrondissement de Lausanne (ci-après: le Ministère public) conduit deux enquêtes contre A._ pour voies de fait, menaces, vol et subsidiairement appropriation illégitime. Ces instructions font suite à des plaintes de B._, qui lui reproche de l'avoir saisie au cou en la menaçant de mort et de lui avoir dérobé son chien. Le 23 juin 2011, A._ a demandé qu'un conseil d'office lui soit désigné en la personne de Me Christophe Tafelmacher. Par ordonnance du 27 juin 2011, le Ministère public a rejeté cette requête, en considérant notamment que le prévenu ne se trouvait pas dans un cas de défense obligatoire au sens de l'art. 130 du code de procédure pénale suisse (CPP; RS 312.0) et que la cause ne présentait pas des difficultés en fait et en droit au sens de l'art. 132 al. 2 CPP. B. Saisie d'un recours de A._, la Chambre des recours pénale du Tribunal cantonal du canton de Vaud (ci-après: le Tribunal cantonal) a confirmé cette décision par arrêt du 11 juillet 2011. En substance, cette autorité a estimé qu'il ne s'agissait pas d'un cas de défense obligatoire au sens de l'art. 130 let. b CPP, qu'il était douteux que l'on puisse considérer que l'affaire n'était "pas de peu de gravité" au sens de l'art. 132 al. 3 CPP et qu'en tous les cas la cause ne présentait manifestement pas des difficultés justifiant l'assistance d'un défenseur (art. 132 al. 2 CPP). C. Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral de réformer cet arrêt en ce sens que la requête de désignation d'un défenseur d'office est acceptée, Me Christophe Tafelmacher étant désigné en cette qualité. Il conclut subsidiairement au renvoi de la cause à la juridiction cantonale pour nouvelle décision. Il requiert en outre l'octroi de l'assistance judiciaire devant le Tribunal fédéral. Le Ministère public et le Tribunal cantonal ont renoncé à se déterminer. 