A steam cannon is a cannon where projectiles are launched by steam. The first steam cannon was designed by Archimedes during the Siege of Syracuse. Leonardo da Vinci was also known to have designed one. The device is metal tube, which would be placed in a furnace: one end of the tube is closed and the other loaded with a projectile. Once the tube reached a high enough temperature, a small amount of water in injected in behind the projectile. Leonardo da Vinci guessed that the water would rapidly expand into vapour, blasting the projectile out the front of the barrel.
See how the ArchiMITes cannon is working: http://web.mit.edu/2.009/www//experiments/steamCannon/ArchimedesSteamCannon.html