Autonomous vertical landing on an oscillating platform: an internal-model based approach