So, amazingly, 57 had something like this on the robot this year. For punching pesky tubes out of the way. Or out of reach of other bots. Admittedly, it only worked for 2-3 rounds at the end of LSR and then the plate was broken off from a ram delivered by another robot, but the idea proved sound eventually.
It was a stored energy system much like people are considering here, high stiffness springs attached to a PVC shaft that was pulled back. The trick we discovered is that pulling back something under high tension is (relatively) easy. But the more stress a release mechanism is under, the more difficult it is to release. Usually.
Our final solution was to retract the shaft via spectra cord wound onto a pulley. The pulley was driven by a worm gear with the worm on a BB tranny/motor combo. Now here’s the trick. The BB tranny + worm assembly was pivoted and sprung so it would naturally pull away from the worm gear. Unless it was pushed into the worm gear by a cam on a servo.
So, starting with the shaft extended it went: turn servo cam to engage worm, start motor to retract punch, stop motor via micro switch when retracted, wait for the right moment… turn servo cam to release worm gear and pulley, AND reverse motor briefly to break static friction.
The two important details we discovered were that last bit there and that turning the worm in one direction made it tend to pull into the worm gear, while turning the other direction pushed away. It’s pretty important to use the former for retraction and the latter for release, else you might put too much pressure on your servo cam. The other trick is simply deciding on how to balance retraction speed and rate of fire with the speed and power of the punch/hammer.
I can take some pics of the silly thing if all of that was about as clear as mud. But I think you could make a pretty hard hitting hammer with this even at beetleweight. Making a swinging, Deadblow style hammer would just substitute torsion springs and direct driving of the hammer shaft.
Now you do have to consider good-ole Mr. Newton here. Hitting something very hard is also going to transfer a good amount of force to your own robot. For a swinging hammer, this is going to translate into your robot jumping everytime you fire. For the punch, hitting another robot will push you backwards, though the force there in on the springs and spring supports which should already be able to handle it. If you miss, though, something on your robot is going to need to arrest that punch pretty rapidly, and that could be as rough on your robot as your punch is on another. So I wouldn’t recommend missing.