I am new to arduino, but I do have a little knowledge about how batteries should be charged.
First, read this: The RV BATTERY CHARGING PUZZLE « HandyBob's Blog
Second, get the detailed specifications for your batteries - the manufacture will usually tell you EXACTLY how to charge (bulk, absorb, float and equalize).
Bulk charge is normally dynamically driven based on voltage and current, absorb is often implemented as time bound, float is indefinite, and equalize is time driven (and only occasional)