This is an alternative, if you're looking for a fixed hinge on the umbrella spokes, using drivers.
Working Y up, X across.
4 Empties. A circular handle at the bottom, 'A' the slider, 'B' the hinge, 'C' the stop.
ABC must be isosceles: B's Y must be halfway between A's and C's
By Pythagoras, B's X must be the square root of (CB squared - (AC / 2 ) squared). ...
You could use a method similar to the one shown here, mounting the plates on a moving array of supports on the curve, to avoid deformation.
But since you would want some variety in the plates, you could use a Particle System emitted by the support-array, with settings as illustrated, rather than face-instancing:
EDIT: Thanks, @MrQuery, for pointing out a ...
Disable and Keep Transform
Hit the X to the right of influence slider. It "applies" the constraint and sets influence to 0
Script Equivalent, copy the transform, ie the world matrix, set the constraint influence to zero (disable) and reset the matrix world.
ob = bpy.context.object
constraint = ob.constraints.get("Copy Location")
Since someone has resurrected this thread, I thought I would just add a little more here. Here is an example I was tasked with a couple of years ago, bones only, copy rotation constraint for the 'R(number)' bones, A driver for the 'R(number - letter)' bones that just copy rotation in reverse and doubles it. Everything copies 'R0' bones local 'Z' rotation. ...