Schedule Commands: Difference between revisions

From EOVSA Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
NOTE: All Schedule commands accept as optional arguments a list of antennas to which the command should selectively sent. Accepted syntaxes are:
= EOVSA Schedule Commands =


Command ant1 ant2 ant3
This page documents the **Schedule Commands** used by the {{Expanded Owens Valley Solar Array}} (EOVSA) Monitor & Control system to operate antennas, front-end electronics, digital control modules, frequency synthesizers, and safety monitors.


Command ant1-3
----


Command subarray1
== General Notes ==


Command subarray2
=== Antenna List Syntax (Optional) ===


If no antenna list is indicated, the command is sent to all antennas currently in subarray1.
All Schedule commands accept an optional **antenna list** specifying where the command should be sent.


== Commands handled directly by ACC ==
Accepted syntaxes:
<pre>
COMMAND ant1 ant2 ant3
COMMAND ant1-3
COMMAND subarray1
COMMAND subarray2
</pre>


=== ABORT ===
If no antenna list is provided, the command is sent to **all antennas currently in subarray1**, unless explicitly noted otherwise.


Aborts all commands sent to ACC but not yet executed
----


=== CLEAROFF [antenna list] ===
== Commands Handled Directly by ACC ==


Sets all AzEl or RaDec offsets to zero
=== Command Execution Control ===


=== DCMATTN HPOLattn VPOLattn [antenna list] ===
; ABORT
: Aborts all commands sent to ACC but not yet executed.


Indicates the VPOL and HPOL attenuations for the DCM modules indicated in the list. The attenuations are applied on the next second start.
----


<span style="color: red">Warning:</span>The command is executed only if the DCM modules are in manual mode (see the DCMAUTO-ON and DCMAUTO-OFF command below)
=== Pointing Offsets ===


=== DCMAUTO-OFF [antenna list] ===
; CLEAROFF [antennalist]
: Clears all Az/El or RA/Dec offsets.


Sets the DCM modules in the manual attenuation mode. This mode allows the attenuations requested by the DCMATTN to be applied.
----


=== DCMAUTO-ON [antenna list] ===
== Digital Control Module (DCM) Commands ==


Sets the DCM modules in the automatic attenuation mode. This mode ignores the manual DCMATTN commands and applies the attenuation set through the DCMREGIME mechanism.
=== DCM Operating Mode ===


=== DCMOFFSET level1 level2…..level50 ===
; DCMAUTO-OFF [antennalist]
: Sets DCM modules to '''manual attenuation mode''', allowing '''DCMATTN''' commands to be applied.


Sets the 50 DCM regime states to be cycled during each second, starting with the next second boundary. The command expects up to 50 arguments. If fewer arguments are provided, the existing set is repeated in the same sequence until all 50 slots are filled. This command is only intended for testing. During normal operations, the DCMREGIME states are requested by the DPP computer.
; DCMAUTO-ON [antennalist]
: Sets DCM modules to '''automatic attenuation mode''', ignoring '''DCMATTN''' and applying offsets via the '''DCMOFFSET''' mechanism.


<span style="color: red">Warning:</span> The command is executed only if the DCM modules are in auto mode (see the DCMAUTO-ON and DCMAUTO-OFF command below).
----


NOTE: The DCMREGIME settings are changed on the edge of the next second after a TCP/IP message is received by ACC at the TCP.dpp.port  (default port: 6344-set in ACC.ini file ). The message is expected to be a fixed length binary string having the following format
=== Manual DCM Attenuation ===


<pre>REGIME + blank space + 50 32bit integers (I32)</pre>
; DCMATTN HPOLattn VPOLattn [antennalist]
: Sets HPOL and VPOL attenuations for the listed DCM modules.
: Applied on the next second boundary.


=== DCMTABLE  [antennalist] filename ===
'''Warning''': Executed only when DCM modules are in '''manual mode'''.


Request the antenna list portion of a specific DCM base attenuation table to be uploaded on the respective DCM modules. The DCM table must have 30 columns and 50 rows, each pair of adjacent columns listing the HPOL-VPOL pairs for each of the 50 slots of a tuning sequence. The DCM table text file must be located in the ACC “c:\parm” directory and its default name is “DCM.txt”.
----


The DCM/table_timeout key in the ACC.ini files have to be manually edited in order to modify the default timeout (ms) of the DCM modules when a table is broadcasted.
=== DCM Offset Attenuation (Testing / DPP Interaction) ===


The actual DCM attenuations for a given tuning slot are calculated based on the following formula
; DCMOFFSET inc1 inc2 … inc50
: Defines up to 50 attenuation offset increments to be cycled once per second.
: If fewer than 50 values are provided, the sequence is repeated.
: Intended only for testing.


'''''atten[pol,tuning_index]=base_atten[pol,tuning_index]+regime*2db'''''
'''Warning''': Executed only when DCM modules are in '''automatic mode'''.


=== DPPOFFSET-OFF ===
'''Binary message format (DPP → ACC):'''
* TCP/IP port: TCP.dpp.port (default '''6344''', defined in ACC.ini)
* Payload: 50 × 32-bit signed integers (I32)


Ignores DCM offset attenuation recommendations sent by DPP but still allows setting the offsets via the DCMOFFSET schedule command.
----


=== DPPOFFSET-ON ===
; DCMOFFSET-CLEAR
: Clears the current list of 50 DCM offset attenuations.


Applies DCM offset attenuation recommendations sent by DPP but still allows setting the offsets via the DCMOFFSET schedule command.  
'''Warning''': This clears offsets for '''all''' DCM modules.


<span style="color: red">NOTE: This is the default behavior of the system after each hardware ACC reboot or after a REBOOT or RESET command is sent via TCP/IP to the emergency 6543 acc.solar.ini port</span>
----


=== FEM-INIT ===
=== DCM Base Attenuation Tables ===


Initialize all front-end module base attenuations with the values read from the ACC initialization file: “c:\ni-rt\startup\acc.ini”.
; DCMTABLE [antennalist] filename
: Uploads a DCM base attenuation table to the listed antennas.


=== FEMATTN level [antennalist] ===
Table requirements:
* 30 columns × 50 rows
* Adjacent column pairs represent HPOL/VPOL
* File location: <code>c:\parm\</code>
* Default filename: <code>DCM.txt</code>


Manually selects the front-end attenuation levels for the antennas indicated in the list to be applied on the next second boundary. The attenuation level selects the corresponding entry in the “c:\parms\FEMATTN.txt” attenuation FEM table located on each the cRIOs.
Timeout behavior is controlled by the <code>DCM/table_timeout</code> key in <code>ACC.ini</code>.


<span style="color: green">The attenuation  level set by this command is saved in the [FEM AGC] section of the “c:\ni-rt\startup\crio.ini” and it is automatically applied when the module is restarted.</span>
Attenuation formula:
<pre>
DCM_atten[pol,slot] =
    DCM_base_atten[pol,slot] + DCM_offset[broadcasted]
</pre>


<span style="color: red">Warning:</span>  The attenuation level setting may be overwritten by the AGC loop, if active.
----


The format of the table is as shown below (column heads are added here for clarity)
=== DPP Offset Interaction ===


{| class="wikitable"
; DPPOFFSET-ON
|FEMATT N level
: Applies DPP-recommended offset attenuations while allowing manual '''DCMOFFSET'''.
|First attenuation
: '''Default''' behavior after ACC reboot or emergency reset.
|Second attenuation
|Total attenuation
|-
|0
|0
|0
|0
|-
|1
|0
|2
|2
|-
|2
|0
|4
|4
|-
|3
|0
|6
|6
|-
|4
|0
|8
|8
|-
|5
|0
|10
|10
|-
|6
|0
|12
|12
|-
|7
|2
|12
|14
|-
|8
|2
|14
|16
|-
|9
|4
|14
|18
|-
|10
|4
|16
|20
|-
|11
|4
|18
|22
|-
|12
|4
|20
|24
|-
|13
|6
|20
|26
|-
|14
|8
|20
|28
|-
|15
|31
|31
|62
|-
|}


The actual FEM attenuations applied as the result of a FEMATTN command are given by
; DPPOFFSET-OFF
: Ignores DPP recommendations but allows manual '''DCMOFFSET'''.


'''''HPOL_ATTENUATION=HPOL_BASE+FEMATTN.txt(level)'''''
----


'''''VPOL_ATTENUATION=VPOL_BASE+FEMTTTN.txt(level)'''''
== Front-End Module (FEM) Commands ==


Where Attenuation, Base, and FEMATTN.txt(level) are two elements vectors indicating the settings for the First and Second attenuators.
=== Initialization and AGC ===


=== HATTN first second [antennalist] ===
; FEM-INIT
: Initializes FEM base attenuations from:
<pre>
c:\ni-rt\startup\acc.ini
</pre>


Sets the FEM  HPOL_BASE first and second attenuators for the antennas in the list, and overwrites the corresponding  sections in the global “c:\ni-rt\startup\acc.ini” file, as well as in the local “c:\ni-rt\startup\crio.ini” files.
; FEMAUTO-ON [antennalist]
: Enables AGC mode (equivalent to '''AGC 1''').


=== VATTN first second [antennalist] ===
; FEMAUTO-OFF [antennalist]
: Disables AGC mode (equivalent to '''AGC 0''').


Sets the FEM  VPOL_BASE first and second attenuators for the antennas in the list, and overwrites the corresponding  sections in the global “c:\ni-rt\startup\acc.ini” file, as well as in the local “c:\ni-rt\startup\crio.ini” files.
----


=== FSEQ-FILE filename ===
=== Manual FEM Attenuation ===


Tells ACC to upload to the Hittite synthesizer the frequency sequence located at  “c:\parm\filename”.  
; FEMATTN hlevel vlevel [antennalist]
: Selects FEM attenuation levels, applied on the next second boundary.


=== FSEQ-INIT ===
* Attenuation table: <code>c:\parm\FEMATTN.txt</code>
* Level saved in <code>crio.ini</code> and restored on reboot
* May be overridden if AGC is active


Initializes the Hittite synthesizer according to the settings defined in the [LO Configuration] section of the “c:\ni-rt\startup\acc.ini” file.
Attenuation calculation:
<pre>
HPOL = HPOL_BASE + FEMATTN(level)
VPOL = VPOL_BASE + FEMATTN(level)
</pre>


=== FSEQ-ON ===
----


Starts the tuning sequence
=== Base Attenuator Settings ===


=== FSEQ-OFF ===
; HATTN first second [antennalist]
: Sets HPOL base attenuators (first and second stage).
: Updates both <code>acc.ini</code> and <code>crio.ini</code>.


Stops the tuning sequence
; VATTN first second [antennalist]
: Same as '''HATTN''', for VPOL.


=== FSEQ-SCRIPT filename ===
----


Sends, line by line, to the Hittite synthesizer the command sequence listed in the “c:\parm\filename” script file.
== Frequency and LO Control ==


=== LO1A-REBOOT ===
=== Frequency Sequences ===


Commands the PDU controller to recycle the power on the LO1A Hittite synthesizer
; FSEQ-FILE filename
: Uploads frequency sequence file from <code>c:\parm\</code>.


=== LO1B-REBOOT ===
; FSEQ-INIT
: Initializes synthesizer using the [LO Configuration] section of <code>acc.ini</code>.


Not implemented yet
; FSEQ-ON / FSEQ-OFF
: Starts or stops the tuning sequence.


=== LO1A-WRITE command ===
; FSEQ-SCRIPT filename
: Sends synthesizer commands line-by-line from script file.


Sends the specified command to the LO1A Hittite synthesizer
----


=== LO1B-WRITE command ===
=== LO Hardware Control ===


Sends the specified command to the LO1B Hittite synthesizer
; LO1A-REBOOT
: Power-cycles the LO1A synthesizer via the PDU.


=== SERVICE [anttenalist] ===
; LO1B-REBOOT
: Not implemented.


Takes the antennas in the list out of subarray1 or subarray2 and drives them to the service position.
; LO1A-WRITE command
: Sends a raw command to the LO1A synthesizer.


<span style="color: red">Warning:</span>  Once in service position, the serviced antenna should be put in local operation mode in order to avoid it being controlled by a subsequent schedule command.
; LO1B-WRITE command
: Sends a raw command to the LO1B synthesizer.


=== SUBARRAY1 antennalist ===
----


Puts all antennas in the list into subarray1.  All antennas than are not listed, but currently in subarray1, are taken out from subarray1.
== Service and Subarrays ==


'''<span style="color: red">NOTE: As of Dec 03 2015, this command no longer switches by default the LO connector to an alternative source. To force the LO connector to switch switches, one must use the new explicit command</span> SUBARRAY1_SWITCH antennalist'''
=== Service Mode ===


=== SUBARRAY2 antennalist ===
; SERVICE [add|del|in|out] [antennalist]
: Updates the list of antennas placed into service mode.
: Default list is <code>ant1-15</code>.
: The service list is stored in <code>acc.ini</code>.


Puts all antennas in the list, which are not already in subarray1, into subarray2. In order to move a given antenna from subarray1 to subarray2, one should first redefine subarray1.
Aliases:
* add ≡ in
* del ≡ out


'''<span style="color: red">NOTE: As of Dec 03 2015, this command no longer switches by default the LO connector to an alternative source. To force the LO connector to switch switches, one must use the new explicit command</span> SUBARRAY2_SWITCH antennalist'''
After updating the service list, antennas are removed from subarrays and driven to the service position.


=== SYNC [anttenalist] ===
'''Warning''': Once in service position, antennas should be placed in '''local mode'''.


Restarts the real-time executable on all cRIOs corresponding to the antenna list.
----


NOTE: Unlike the general coinvention, not providing a list of antennas commands all cRIOs to restarts their execution.
=== Subarrays ===


=== TRACKTABLE filename [antennalist] ===
; SUBARRAY1 antennalist
: Assigns antennas to subarray1 (excluding SERVICE list).


Uploads to all antennas in the list the tracking table located at “c:\parm\filename”
; SUBARRAY2 antennalist
: Assigns antennas to subarray2.
: Antennas must not already be in subarray1.


=== TRAJ-FILE filename [antennalist] ===
'''Note''': Since Dec 03, 2015, LO switching is no longer automatic. 
Use explicit commands:
<pre>
SUBARRAY1_SWITCH
SUBARRAY2_SWITCH
</pre>


Uploads to all cRIOs corresponding to antennas in the list the trajectory file table located at “c:\parm\filename”
----


=== UNLISTEDCOMMAND  [antennalist] ===
=== Synchronization ===


Any command not listed above is sent for local execution to all cRIOs corresponding to antennas in the list.
; SYNC [antennalist]
: Restarts the real-time executable on listed cRIOs.


== <span style="color: red">Commands handled directly by cRIOs</span> ==
'''Note''': If no antenna list is provided, '''all''' cRIOs are restarted.


<span style="color: red">NOTE:  These commands are selectively sent by ACC to all antennas in the optional argument antenalist, or, if not present, to all antennas in subarray1</span>
----


=== AGC active [low [high [samples]]] ===
== Tracking and Motion Tables ==


Activates (1) or deactivates (0) the front end automatic gain control loop, which adjust the FEMATTN level when both of the HPOL and VPOL voltages, averaged over the given number of consecutive '''''samples''''' , cross the '''''low''''' and '''''high''''' voltage limits.  Missing parameter values are uploaded from the [FEM AGC] section of the local “c:\ni-rt\startup\crio.ini” file. All parameters provided when an AGC command is issued are saved in the same file for further use.
; TRACKTABLE filename [antennalist]
: Uploads a tracking table from <code>c:\parm\</code>.


NOTE: At startup, the AGC loop is activated or not according with the latest '''''active''''' value written in the initialization file.
; TRAJ-FILE filename [antennalist]
: Uploads a trajectory table from <code>c:\parm\</code>.


=== AZELOFF azoff eloff ===
; UNLISTEDCOMMAND [antennalist]
: Forwards the command directly to cRIOs for local execution.


Sets the Azimuth and Elevation offsets indicated in the argument list
----


=== RADECOFF raoff decoff ===
== Commands Handled by cRIOs ==


Sets the RA and DEC offsets indicated in the argument list
These commands are forwarded by ACC to the specified antenna list, or to all antennas in subarray1 if no list is provided.


=== FLUSH ===
----


Flush the existing tracktable from the associated antenna controller
=== AGC and Offsets ===


=== ND-ON and ND-OFF ===
; AGC active [low [high [samples]]]
: Controls the AGC loop.
: Parameters are saved in <code>crio.ini</code>.


Set on/off the local noise diode.
; AZELOFF azoff eloff
: Sets Azimuth and Elevation offsets.


=== POSITION azimuth elevation ===
; RADECOFF raoff decoff
: Sets RA and Declination offsets.


Requests a given azel position
----


=== RESTART ===
=== Motion and Control ===


Reboots the cRIO
; POSITION az el
: Requests an explicit Az/El position.


=== DRIVE-RESET ===
; TRACK
: Sets antenna to tracking mode.


Resets Antenna controller
; STOP
: Immediately stops antenna motion.


=== STOP ===
; STOW
: Stows the antenna.


Stops the antenna
; DRIVE-RESET
: Resets the antenna controller.


=== STOW ===
; RESTART
: Reboots the cRIO.


Stows the antenna
----


=== TRACK ===
=== Noise Diode ===


Sets antenna in track mode
; ND-ON / ND-OFF
: Enables or disables the local noise diode.


=== TEC-LOG ===
----


Dumps all TEC register values to the local log file “c:\tec.txt” for debugging purposes
=== TEC (Thermal Control) ===


=== TEC-INIT ===
; TEC-LOG
: Dumps TEC registers to <code>c:\tec.txt</code>.


Initializes the TEC controller with hard-wired register values read from a working controller.
; TEC-INIT
: Initializes TEC registers using hard-coded defaults.


=== TRAJ-ON and TRAJ-OFF ===
; TEC$BC
: Reboots the TEC controller.


Starts/Ends the execution of the trajectory script
; TEC$SC
: Clears the TEC error status.


NOTE: At startup, the WINDSCRAM loop is activated or not according with the latest '''''active''''' written in the initialization file.
----


=== BSCRAM-ON ===
=== Trajectory Execution ===


Activate the BRIGHTSCRAM Monitor
; TRAJ-ON / TRAJ-OFF
: Starts or stops trajectory execution.


=== BSCRAM-OFF ===
----


Deactivate the BRIGHTSCRAM Monitor
=== Safety Monitors ===


=== BSCRAM-CLEAR ===
==== BRIGHTSCRAM ====


Takes the antenna out of the BRIGHTSCRAM Active State independently of the brightness sensor state.
; BSCRAM-ON / BSCRAM-OFF
: Enables or disables the monitor.


If the BRIGHTSCRAM Monitor’s operation mode is set to STOW, clearing the BRIGHSCRAM ACTIVE state does not have any effect on the mechanical state of the antenna. If the BRIGHTSCRAM Monitor’s operation mode is set to OFFSET, clearing the BRIGHSCRAM ACTIVE state results in removing the AZEL offsets.
; BSCRAM-CLEAR
: Clears the active state.


Note: If the BRIGHTSCRAM Monitor is active, the antenna may get back in the Active State depending on the state of the brightness sensor.
; BSCRAM-SET
: Forces the active state.


=== BSCRAM-SET ===
; BSCRAM-WAIT seconds
: Sets clearing delay.


Force the antenna into the BRIGHTSCRAM Active State independently of the brightness sensor state.
; BSCRAM-STOW
: Sets operation mode to stow when active.


=== BSCRAM-WAIT seconds ===
; BSCRAM-OFFSET
: Sets operation mode to apply offsets.


Sets the BRIGHTSCRAM Monitor waiting time before clearing the BRIGHSCRAM ACTIVE state.
; BSCRAM-AZELOFF azoff eloff
: Sets offsets used in OFFSET mode (defaults: AZ=0°, EL=10°).


Note: This setting is saved in the crio.ini file and remains persistent until changed
----


=== BSCRAM-OFFSET ===
==== WINDSCRAM ====


Sets the BRIGHTSCRAM operation mode to apply offsets
; WSCRAM-ON / WSCRAM-OFF
: Enables or disables the monitor.


Note: This setting is saved in the crio.ini file and remains persistent until changed.
; WSCRAM-LIMIT value
: Sets wind speed threshold.


=== BSCRAM-AZELOFF azoff eloff ===
; WSCRAM-WAIT seconds
: Sets polling interval.


Sets the Azimuth and Elevation Offsets (degrees) for the BRIGHTSCRAM offset operation mode.
----


Note: This setting is saved in the crio.ini file and remains persistent until changed. Default values re AZOFF=0 and ELOFF=10
=== Diagnostics and Registers ===


<span style="color: red">Warning:</span> No action is taken if less than 2 arguments are provided
; UpdateElevationDiagnostics 1
: Updates elevation trip registers.
=== WSCRAM-ON ===


Activate the WINDSCRAM Monitor
; UpdateAzimuthDiagnostics 1
: Updates azimuth trip registers.


=== WSCRAM-OFF ===
----


Deactivate the WINDSCRAM Monitor
=== Low-Level Register Access ===


=== WSCRAM-LIMIT value ===
; REGWRITE address value [antennalist]
: Writes a value to a specific controller register (new antennas only).


Sets the wind speed threshold.
Example:
<pre>
REGWRITE 23386 2 ANT6
</pre>


Note: This setting is saved in the crio.ini file and remains persistent until changed.
Equivalent symbolic command:
<pre>
RUNMODE 2 ANT6
</pre>


=== WSCRAM-WAIT seconds ===
This is commonly used to enter '''velocity mode''' to safely drive an antenna off a hard limit.
 
Sets the WINDSCRAM Monitor waiting time between checking the wind speed.
 
Note: This setting is saved in the crio.ini file and remains persistent until changed.
 
=== UpdateElevationDiagnostics 1 ===
 
Requests an update of the elevation trip register.
 
=== UpdateAzimuthDiagnostics 1 ===
 
Requests an update of the azimuth trip register.

Revision as of 23:27, 7 January 2026

EOVSA Schedule Commands

This page documents the **Schedule Commands** used by the Template:Expanded Owens Valley Solar Array (EOVSA) Monitor & Control system to operate antennas, front-end electronics, digital control modules, frequency synthesizers, and safety monitors.


General Notes

Antenna List Syntax (Optional)

All Schedule commands accept an optional **antenna list** specifying where the command should be sent.

Accepted syntaxes:

COMMAND ant1 ant2 ant3
COMMAND ant1-3
COMMAND subarray1
COMMAND subarray2

If no antenna list is provided, the command is sent to **all antennas currently in subarray1**, unless explicitly noted otherwise.


Commands Handled Directly by ACC

Command Execution Control

ABORT
Aborts all commands sent to ACC but not yet executed.

Pointing Offsets

CLEAROFF [antennalist]
Clears all Az/El or RA/Dec offsets.

Digital Control Module (DCM) Commands

DCM Operating Mode

DCMAUTO-OFF [antennalist]
Sets DCM modules to manual attenuation mode, allowing DCMATTN commands to be applied.
DCMAUTO-ON [antennalist]
Sets DCM modules to automatic attenuation mode, ignoring DCMATTN and applying offsets via the DCMOFFSET mechanism.

Manual DCM Attenuation

DCMATTN HPOLattn VPOLattn [antennalist]
Sets HPOL and VPOL attenuations for the listed DCM modules.
Applied on the next second boundary.

Warning: Executed only when DCM modules are in manual mode.


DCM Offset Attenuation (Testing / DPP Interaction)

DCMOFFSET inc1 inc2 … inc50
Defines up to 50 attenuation offset increments to be cycled once per second.
If fewer than 50 values are provided, the sequence is repeated.
Intended only for testing.

Warning: Executed only when DCM modules are in automatic mode.

Binary message format (DPP → ACC):

  • TCP/IP port: TCP.dpp.port (default 6344, defined in ACC.ini)
  • Payload: 50 × 32-bit signed integers (I32)

DCMOFFSET-CLEAR
Clears the current list of 50 DCM offset attenuations.

Warning: This clears offsets for all DCM modules.


DCM Base Attenuation Tables

DCMTABLE [antennalist] filename
Uploads a DCM base attenuation table to the listed antennas.

Table requirements:

  • 30 columns × 50 rows
  • Adjacent column pairs represent HPOL/VPOL
  • File location: c:\parm\
  • Default filename: DCM.txt

Timeout behavior is controlled by the DCM/table_timeout key in ACC.ini.

Attenuation formula:

DCM_atten[pol,slot] =
    DCM_base_atten[pol,slot] + DCM_offset[broadcasted]

DPP Offset Interaction

DPPOFFSET-ON
Applies DPP-recommended offset attenuations while allowing manual DCMOFFSET.
Default behavior after ACC reboot or emergency reset.
DPPOFFSET-OFF
Ignores DPP recommendations but allows manual DCMOFFSET.

Front-End Module (FEM) Commands

Initialization and AGC

FEM-INIT
Initializes FEM base attenuations from:
c:\ni-rt\startup\acc.ini
FEMAUTO-ON [antennalist]
Enables AGC mode (equivalent to AGC 1).
FEMAUTO-OFF [antennalist]
Disables AGC mode (equivalent to AGC 0).

Manual FEM Attenuation

FEMATTN hlevel vlevel [antennalist]
Selects FEM attenuation levels, applied on the next second boundary.
  • Attenuation table: c:\parm\FEMATTN.txt
  • Level saved in crio.ini and restored on reboot
  • May be overridden if AGC is active

Attenuation calculation:

HPOL = HPOL_BASE + FEMATTN(level)
VPOL = VPOL_BASE + FEMATTN(level)

Base Attenuator Settings

HATTN first second [antennalist]
Sets HPOL base attenuators (first and second stage).
Updates both acc.ini and crio.ini.
VATTN first second [antennalist]
Same as HATTN, for VPOL.

Frequency and LO Control

Frequency Sequences

FSEQ-FILE filename
Uploads frequency sequence file from c:\parm\.
FSEQ-INIT
Initializes synthesizer using the [LO Configuration] section of acc.ini.
FSEQ-ON / FSEQ-OFF
Starts or stops the tuning sequence.
FSEQ-SCRIPT filename
Sends synthesizer commands line-by-line from script file.

LO Hardware Control

LO1A-REBOOT
Power-cycles the LO1A synthesizer via the PDU.
LO1B-REBOOT
Not implemented.
LO1A-WRITE command
Sends a raw command to the LO1A synthesizer.
LO1B-WRITE command
Sends a raw command to the LO1B synthesizer.

Service and Subarrays

Service Mode

SERVICE [add|del|in|out] [antennalist]
Updates the list of antennas placed into service mode.
Default list is ant1-15.
The service list is stored in acc.ini.

Aliases:

  • add ≡ in
  • del ≡ out

After updating the service list, antennas are removed from subarrays and driven to the service position.

Warning: Once in service position, antennas should be placed in local mode.


Subarrays

SUBARRAY1 antennalist
Assigns antennas to subarray1 (excluding SERVICE list).
SUBARRAY2 antennalist
Assigns antennas to subarray2.
Antennas must not already be in subarray1.

Note: Since Dec 03, 2015, LO switching is no longer automatic. Use explicit commands:

SUBARRAY1_SWITCH
SUBARRAY2_SWITCH

Synchronization

SYNC [antennalist]
Restarts the real-time executable on listed cRIOs.

Note: If no antenna list is provided, all cRIOs are restarted.


Tracking and Motion Tables

TRACKTABLE filename [antennalist]
Uploads a tracking table from c:\parm\.
TRAJ-FILE filename [antennalist]
Uploads a trajectory table from c:\parm\.
UNLISTEDCOMMAND [antennalist]
Forwards the command directly to cRIOs for local execution.

Commands Handled by cRIOs

These commands are forwarded by ACC to the specified antenna list, or to all antennas in subarray1 if no list is provided.


AGC and Offsets

AGC active [low [high [samples]]]
Controls the AGC loop.
Parameters are saved in crio.ini.
AZELOFF azoff eloff
Sets Azimuth and Elevation offsets.
RADECOFF raoff decoff
Sets RA and Declination offsets.

Motion and Control

POSITION az el
Requests an explicit Az/El position.
TRACK
Sets antenna to tracking mode.
STOP
Immediately stops antenna motion.
STOW
Stows the antenna.
DRIVE-RESET
Resets the antenna controller.
RESTART
Reboots the cRIO.

Noise Diode

ND-ON / ND-OFF
Enables or disables the local noise diode.

TEC (Thermal Control)

TEC-LOG
Dumps TEC registers to c:\tec.txt.
TEC-INIT
Initializes TEC registers using hard-coded defaults.
TEC$BC
Reboots the TEC controller.
TEC$SC
Clears the TEC error status.

Trajectory Execution

TRAJ-ON / TRAJ-OFF
Starts or stops trajectory execution.

Safety Monitors

BRIGHTSCRAM

BSCRAM-ON / BSCRAM-OFF
Enables or disables the monitor.
BSCRAM-CLEAR
Clears the active state.
BSCRAM-SET
Forces the active state.
BSCRAM-WAIT seconds
Sets clearing delay.
BSCRAM-STOW
Sets operation mode to stow when active.
BSCRAM-OFFSET
Sets operation mode to apply offsets.
BSCRAM-AZELOFF azoff eloff
Sets offsets used in OFFSET mode (defaults: AZ=0°, EL=10°).

WINDSCRAM

WSCRAM-ON / WSCRAM-OFF
Enables or disables the monitor.
WSCRAM-LIMIT value
Sets wind speed threshold.
WSCRAM-WAIT seconds
Sets polling interval.

Diagnostics and Registers

UpdateElevationDiagnostics 1
Updates elevation trip registers.
UpdateAzimuthDiagnostics 1
Updates azimuth trip registers.

Low-Level Register Access

REGWRITE address value [antennalist]
Writes a value to a specific controller register (new antennas only).

Example:

REGWRITE 23386 2 ANT6

Equivalent symbolic command:

RUNMODE 2 ANT6

This is commonly used to enter velocity mode to safely drive an antenna off a hard limit.