I have been working on such a project since early Spring. Given the fact that I limited my testing to those items I had on hand and not purchasing expensive equipment.
Even with the use of two blast shields in front of the gun, the shock wave still knocked my dummy chrono and tripod down. (I was smart and didn't put my real clock out front)
The military now uses radar units stationed along the path of the projectile. I expect that the equipment is very costly and is probably beyond the means of the average cannon shooter.
I have used a rather unscientific approach by utilizing a stop watch and GPS. The stop watch gives the time of flight and the GPS measures the distance to the target. The distance to the target need not be an even 200, 400, 600 yards etc. I simply pick an obvious target and fire at it then find the time and distance.
My method has some obvious faults. At ranges of less than 200-300 yards you must be very exact on starting and stopping the clock. The other downside is having the ability to shoot to longer distances. I have the advantage of being able to fire for several miles if I so decide. Many cannon shooters are limited to much shorter ranges.
As I continue to compile data, a graph will begin to emerge showing time of flight and average velocity. The other limitation is being able to see the fall of shot at longer ranges. Out to about 1200 yards the ball kicks up enough dust to see it, after that it starts to get tricky.