I'm not convinced by the argument that you should charge your children once they're earning, lest they be shocked by the cost of living when they leave home. Financial education doesn't just happen when they hit adulthood - it should be a lifelong process, and if you haven't done that, then you've under-performed in an important part of parenthood.
Kids understand that their parents have to work to pay bills, and there isn't money to buy whatever they want, whenever they want. They would have been brought up to save a bit of their birthday or pocket money for bigger purchases, and learned about delayed gratification. There should have been conversations about what's value for money, and how to make a budget.
If you've build this foundation when they're younger, then your children will most likely be budgeting and saving for their own goals while working - be that study, travel, a house deposit or a car. If they respect your support while living at home and contribute to the housework (as you would expect them to regardless of whether they were working or not), why not let them save more and reach their goals faster?
Now, if you're in desperate need of their financial contribution, then that may be another story - but own the limits of your own financial situation, rather than dressing it up as pure concern for their welfare as future independent adults. (Again - this is part of responsible, lifelong learning about managing your money.)
It seems many people forget that becoming an independent adult isn't all woe and financial outlay. Having the freedom to decide where and how you live is usually well worth the cost (and the possible in living standards from the parental nest).