Thanks for all the input.
My head hurts from all the other reading I've done, but this is what I'm hoping happens in the new circuit:
R1 limits the current from the piezo. I've read piezos can generate upto 100v, although in the circumstance (the piezo won't be compressed directly) I don't think this will occur. Choosing R1=100k means that for 100v the maximum transient current from the piezo will be 10mA (which I think is what gilshultz was suggesting above).
I've removed the capacitor across the piezo. It was there to act as low pass filter (in conjunction with R1) but on reflection I don't think there is any point.
R2 will both pull the input low and and act as a bleed resistor for the piezo. So if the the piezo gets knocked when the circuit isn't powered, any current is lost through R2. But being a large resistance it won't have much other effect on the circuit.
Being a Zener diode, D1 (1N4730A) acts to protect the arduino's digital input from voltages above Vz = 3.9v and below -Vf = -1.2v
But the digital input needs protecting from negative voltages, so the Schottky diode limits that to Vf of the Zener.
If I have any of this right, I'm still struggling to choose a Schottky diode. I've read that most have a Vf of around 0.3v, but the datasheets I've looked at either don't list Vf or it's around 0.7v which I don't think is better than a lot of standard diodes.
