I am designing a charging dock for my bot, and a lot of what @Rich said, I'm already doing in the background...I'm already in touch with a few great programmers willing to help - compensated of course. However I think we need to approach this problem from a different angle? If sensors or coding is so much work, why not do it from the engineering/mechanical perspective? I have a few ideas I'm drawing up, I will post this on the forum maybe we can all dissect it.
Here's one of them(rough sketch of course be kind):
I was thinking omni wheels going on the back of the bot, sideways, so all it needs to do is find the QR code or distance sensor, and the wheels would pretty much "force" the robot to go to the corner of the wall, where the charging leads could touch. we can do it to where the charging leads are hidden or have some cover on it, that will pop open (using the distance sensor) when the bot is within the vicinity. Any thoughts? This seems doable to me.