"Should you charge for a reading? What are the ethics of this?"
Another question that is a little deeper than it first seems!
I believe that if you're providing a service then you should charge for a reading. THAT IS, if you have studied, feel confident doing readings and providing the service, and have a guidelines of ethics listed out. You don't have to be as intense as I am - I have a complete Tarot Terms of Service here on the site because this is important to me.
It's important to let people know that whatever you say isn't set in stone. You aren't predicting the future, you aren't dictating their life.
Why mention all this during this post? Once people hand you money they feel that they own that service, and that you owe them an equal exchange. Making sure that tarot clients understand exactly what you are and are not providing is crucial and can help you with legalities as well.
If you're comfortable and ready for that, then sure, go ahead and charge folks. You can also keep it way more casual and charge someone a fiver for a few cards over coffee too - it all depends upon your skill level, you confidence level, and how intense you want to take this, as well as what the client is expecting and paying for.