My initial attempt at controlling to a fixed amplitude has met with some success and promise.
I used the angle ( = amplitude) of the pendulum as given by my angle sensor as reference, phase shift that sinusoid by 90deg and feed that to the coil driver, and control the level of that voltage so that the level of the voltage from the angle sensor remains constant.
A block diagram of the electronics:
A Sine generator generates a sine wave at 5KHz and feeds a 600ohm-600ohm transformer which drives the differential angle capacitor sensor. The pickup sensor of said device is buffered and feeds a synchronous detector, driven by a reference Sine from the sine generator. The resulting DC output is amplified differentially and filtered. This resulting voltage is a representation of the pendulum angle since the senor is fitted to the pivot.
This 0.5Hz sine wave feeds an ADC read by the Nucleo processor, for later processing.
The 0.5Hz also feeds a 90deg phase shifter. The shifted phase is required since the pendulum drive is via a drive coil atop the pendulum, above the pivot, and is fed with a sine wave drive per swing, all the time. The 90deg shift ensures that the sinusoidal drive voltage is at its peak when the pendulum is at BDC, and minimum when the pendulum is at the extremes of swing. There are no impulses, just a good sine wave drive, and I hope this will result in almost no pendulum perturbation.
The driving voltage level is maintained within a closed gain control loop – the pendulum angle sinusoid feeds a Peak detector, which generates a DC voltage equal to the peak of the voltage of the pendulum swing extremes. This DC voltage controls a voltage Gain Controlled amplifier. The input to the amplifier is the 90deg phase shifted sinusoid, and the output is that sinusoid, level controlled , to ensure that the pendulum swing angle is maintained. An increase in angle( amplitude) increases the Peak detector output and the VGA gain is reduced, reducing the drive sinusoid voltage to the pendulum drive coil. Reduction of swing is a reduction of the DC output of the Peak detector, causing an increase of Gain in the VGA, and increased drive to the pendulum coil.
The RMS current in the drive coil is 0.14mA when the loop is stable. The angle sensor Peak to Peak voltage output for a 2 deg total pendulum swing is 2 volts PP. This voltage varies by less than 0.2mV over 3 hours with the loop stable.
The drive voltage from the coil driver is 1.2V PP, and feeds the 10ohm coil via 3000ohm series resistance.
The Peak detector output is summed with the output from a 16bit DAC. The DAC output will be used to provide a voltage offset to the VGA, causing an increase or reduction of the swing amplitude. The intention is to perform temp/pressure/humidity compensation is software, and to feed corrections via the DAC to the VGA.
Presently there is no microprocessor control at all. There is a Time to Digital convertor that measures the time in nanoseconds from the rising edge of a 0.5Hz reference pulse from my GPSDO, and the rising edge of the pulse from the pendulum BDC sensor ( an opto interrupter). This will be used to Phase lock the pendulum to the GPSDO 0.5Hz pulse initially, by control of the DAC, breaking the Peak detector loop. When phase locked to the GPSDO reference, the uP will
log the variation of DAC control voltage to maintain lock, as well as logging Ambient temp, pressure, Humidity, bob temp, and rod temp.
I hope to find a way to implement some sort of amplitude compensation using all that data as reference input, at which point the pendulum will be released again and be free running, with only the amplitude loop controlling it, and the uP performing environmental corrections only.
The phase shifter is also able to be voltage controlled. If the amplitude control of the coil drive voltage does not achieve the control required ( since period is largely independent of amplitude) then the VGA loop will control amplitude, and the DAC will be used to adjust the drive voltage phase, allowing a lag or lead drive voltage to slow or speed up the swing.
A lot of electronics and a lot to experiment with….quite enjoyable.
Starting some logging now to see how the phase lock to GPSDO performs, and now that the ADC is in place, I want to do a few run-down swings to try calculate Q…
Some photos of the the growing electronics.
Edited By Joseph Noci 1 on 29/08/2023 00:06:05