actually it's simpler than that, in general cases we use ""could"" to describe abilities that we had in past tenses or to imagine hypothetical abilities in conditional cases, and it's so usable in spoken language, in the other hand ""able to"" is so similar but more flexible because we can use it in future tenses for example, which we cannot use either "can" or "could", so we are forced to use "able to". and that's the only observable difference