This forum often gets posts about iMessage not working well I have discovered on issue with it that is a possible cause for the send button to be greyed out when it should otherwise work.
When you start an iMessage there is a line called Subject on the input screen. If you simply type your complete message in the subject line the send button will always be greyed out.
When sending an iMessage you must either;
Type a subject and then type text into the text space below the subject line.
Leave the subject line blank and just type your message in the body space.
The next time that your iMessage won't send check where you have typed it it's very esay to start typing in the subject line by mistake.
Personally I would call this a bug I can't see why a system like iMessage needs a subject header but maybe others see differently, obviously Apple do.