Jonathan,
I have been speed scanning the Arduino book and while I have not absorbed the detail, I can follow most of the logic. The programming itself looks relatively straightforward although the syntax is different to what I was used to (I wrote a commitment accounting and property management system in Foxpro). The interfacing with the external inputs and outputs is something new as I only had to worry about keyboards, screens and printers!
Can I pick up on two points in your last post?
Firstly you say that one Arduino board could control the seven servos needed to operate the turrets but how do you allow for the fact that in order to zero in on a selected bearing, four turrets would need to turn in one direction and the other three in the opposite one? One set of turrets might only have to say, move 30 degrees to bear on the target but the others would need to turn the reciprocal which would be a much greater movement. In fact several of the turrets would need to turn by different amounts to line up together. This is why I assumed that each turret would need its own decoding unit to compare where it was with where it needed to be.
Secondly, re your point about what happens when the model gets to the end of the lake. This is essentially the same as what happened when Beatty's forces ran into the High Seas Fleet at Jutland. Initially all the turrets were bearing to port but Beatty had to make a 180 degree turn so as the ships turned round all the turrets had to swing back through the centreline and bear on the opposite beam.
I can't see any real need to dynamically control the speed of the turret rotation, in reality they would all be around the same as makes no difference but I can see that it would be necessary to set a default speed to be able to fine tune what looks 'right' on the model. Presumably a variable can take care of that if controlled by the Arduino board.
With regard to the jitter you describe, assuming that the actual servo is capable of smooth movement, as most are, then would it be possible to deal with the speed adjustment mechanically, using gears to achieve the desired rate of turn with full voltage applied to the servo. Then, could the Arduino board simply apply full power to the servo until it reached the stipulated bearing? This would obviously entail a 'hard stop' but if the turrets are turning relatively slowly anyway it might be OK. Or, if as you say soft starts and stops can be accommodated, then could the board apply full power to the servo until within perhaps 5 degrees of the required bearing and then go into soft stop mode? I think it would be something of a suck it and see situation for which a test turret mechanism would need to be constructed.
We learn something new every day!
Colin