[Amps] W8ZR Autotune Amplifier Progress Report

gregg.w6izt at gmail.com gregg.w6izt at gmail.com
Wed Dec 23 11:58:02 EST 2020


For band selection you could use the udp broadcast messages from the logging program. I use this for antenna selection and it works very well. It also enables the ap to be addressable in the case of multiple amps.

My 2c worth

73
Gregg W6IZT

-----Original Message-----
From: Amps <amps-bounces at contesting.com> On Behalf Of Jim
Sent: Wednesday, December 23, 2020 10:53
To: amps at contesting.com
Subject: Re: [Amps] W8ZR Autotune Amplifier Progress Report

Jim
What about an input for band selection to help speed up auto tuning. 
Such an input would be from a logging program (parallel port on a PC), or simply band data from a transceiver in the form of a single input line (active low) per band, or the Icom band data voltage, to "preset" 
the band switch but also the tune and load caps.

Looks great, and thanks for the timing on this!  I'm thinking that I want to build a remote station, but not being forced into using a solid state amplifier.

Icom band data voltage:

10 	0V
50 (unofficial) 	1.0 ~ 2.0V
28 & 24 	2.0 ~ 3.0V
18 & 21 	3.0 ~ 4.0V
14 	4.0 ~ 5.0V
7 	5.0 ~ 6.0V
3.5 	6.0 ~ 7.0V
1.8 	7.0 ~ 8.0V


Thanks
73
Jim W7RY

On 12/19/2020 8:40 PM, MU 4CX250B wrote:
> Hi gang
> Here’s a response I made to a question from my friend Paul W9AC. Paul 
> and I have known each other for years, and he is a very savvy, 
> technically competent ham (as you probably already know).  I hadn’t 
> intended on sharing this exchange  with the List because it’s pretty 
> technical, but I’m happy to go do so.
> 73,
> Jim w8zr
>
> Sent from my iPhone
>
> Begin forwarded message:
>
> *From:* Jim Garland <4cx250b at miamioh.edu>
> *Date:* December 19, 2020 at 5:14:17 PM MST
> *To:* Paul Christensen <w9ac at arrl.net>
> *Subject:* *Re: [Amps] W8ZR Autotune Amplifier Progress Report*
>
> Good question, Paul. I'm using five of the eight available 
> microprocessors, or "cogs" as  Parallax calls them. Currently, COG0 is 
> the "base" cog, which manages the entire program and offloads chores 
> to other cogs when necessary or convenient. I've loaded COG0 with some 
> chores I'll eventually direct elsewhere. For example, at the moment 
> when RF at the amp input is detected and authenticated (to verify it's 
> in a valid range, that the amp is on-line, etc.), then the bandswitch, 
> tune, and load caps are moved sequentially. That works fine for the 
> tune and load caps, since they adjust in a fraction of a second, but 
> depending on circumstances, the bandswitch may take a couple of 
> seconds. My plan is to move that tuning to other cogs so the three 
> steppers readjust simultaneously.  Ditto for the initialization 
> routine which zeros the steppers at power up and starts the warmup 
> countdown. I want to add some timing features to a dedicated timing 
> cog, COG2, along with an intelligent power up and power down routine 
> for blower control and temperature measurement. All COG2 does now is count seconds and blink an LED to tell me the circuit is working.
>
> COG7 is dedicated to computer interfacing. It outputs and inputs 
> serial data to a USB port, which is used to download firmware into the 
> Propeller and to display messages and data onto a PC monitor. It also 
> controls the 4-line LCD, as shown on the YouTube video.
>
> COG 1 is dedicated to manual tuning, including managing the 
> band-stacking register. Implementing manual tuning turned out to be my 
> hardest programming challenge.  Reading and updating memory when the 
> tuning buttons were pressed, along with the Save feature, interfacing 
> manual tuning with autotuning so the two modes didn't fight each 
> other, etc., took a couple of months to work out.
>
> COG3 is a system frequency counter, which runs all the time.  It 
> detects and measures RF at the amplifier input with a sensitivity of 
> 250uV and a resolution of 1 kHz, then passes the measurement as a 
> variable to COG0 which makes sure the frequency is in a valid ham 
> band. The frequency counter works better than I expected. I initially 
> had planned to use a Schmitt trigger to clean up the input RF, but 
> didn't need to do that. I measure every signal twice, with 
> measurements spaced out 100mS, and require both measurements to agree before deciding the result is valid.
>
> I made a design decision early-on not to arbitrate or control QSK and 
> ordinary T/R switching. There's plenty of spare capacity in the 
> Propeller to do that, as well as to measure RF power, SWR, plate 
> voltage and current, grid current and safety trip features, but for 
> now I'm not going down that road. Most of these extra functions are 
> easily controlled with standard or dedicated circuitry (e.g., we each 
> have our own QSK designs) and already exist in commercial amplifiers. 
> By avoiding them in this project, it's easy for other builders to use 
> the Propeller as an add-on to existing amplifiers. All that's really 
> needed is to sample the RF at the input of their amplifier, and 
> mechanically connect stepper motors to the switch and variable 
> capacitor shafts. It's tempting to look at all the available 
> programming space and start adding features, but for now anyway I want to make the project as easy to implement as possible!
>
> I hope to start laying out a PCB based on my breadboard within the 
> next week or so. The basic circuit seems to work well, so I don't 
> foresee any major problems lurking in the shadows. Famous last words, probably.
> 73,
> Jim W8ZR.
>
> On 12/19/2020 3:12 PM, Paul Christensen wrote:
>
> "The PX32A is a sophisticated device containing eight fully 
> independent
>
> 32-bit microprocessors that share 31 read/write IO ports and a common 
> memory
>
> for storing variables.
>
>
> Jim, what amplifier functions are being divided across the eight 
> independent
>
> microcontrollers?  For example, does one exclusively manage the T/R
>
> function?  Perhaps another is dedicated to monitor power supply 
> parameters,
>
> etc.?
>
>
> My 8877 amp uses an Arduino Mega 2560 but I cram the code for all 
> functions
>
> into one loop.  To make this work with one microcontroller, delay 
> commands
>
> are invoked by comparing time registers. The main loop never stops 
> running
>
> at full speed no matter what delays are present.
>
>
> Within the constraints of memory, it's possible to load unrelated 
> programs
>
> into the same microcontroller.
>
>
> Paul, W9AC
>
>
> _______________________________________________
>
> Amps mailing list
>
> Amps at contesting.com
>
> http://lists.contesting.com/mailman/listinfo/amps
> _______________________________________________
> Amps mailing list
> Amps at contesting.com
> http://lists.contesting.com/mailman/listinfo/amps

_______________________________________________
Amps mailing list
Amps at contesting.com
http://lists.contesting.com/mailman/listinfo/amps



More information about the Amps mailing list