Catching rate is depending on luck, but usually peoples caught it with around 40 Ultra Balls.
And I suggest you to inflict Paralyze instead of Sleep. Sleeping Pokemon can awake but Paralyzed Pokemon won't healed by itself.
Just keep trying.
Patience is they key. I haven't caught Articuno in my FR but back in my RBY days, it took me 3 hours to catch the little bugga. so just keep trying and luck will prevail sometime.
Take something (not a Grass type!) that can cause Paralysis and is around the same level, possibly five higher or lower, then lower it's HP, Paralyze, and throw Ultra Balls like a madman.
volt tackle is obtainable in ruby, sapphire, leaf green and fire red. for the articuno just get a lot of ultra balls, some timer balls would be good cause i caught mine with a timer ball. I would prefer that articuno is paralyzed because it it was asleep it would wake up and you would have to put it asleep again. this wastes one turn. if you poisen it, it will just faint eventually. just save and keep trying. its basically luck.
Just keep trying. Catching the legendaries is TOUGH. It took me at least an hour to catch Arti and I still cant get Zap,havent gine for Molt though.... On the Volt tackle front Zapdos cant learn it. The only way to get Volt Tackle is to trade in a Pichu from Emerald that has it. Later!!!!!
Paralzye it , and keep using super fang or false swipe until its down to zero. Even then you must still rely on luck , for some reason Articuno is harder to catch this gen then it was on red,blue and yellow.