Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

NN = two-digit IOC number

/* conversion 2'scomp fixed point (18_17bit) to floating point */

#define LENGTH 18
double Fixed1817toFloat(unsigned u)

{
int u32;

u32 = (u & 1<<(LENGTH-1))? (~0x3ffff) |u : u;

return (double) u32 / (double) (0x1ffff);
}

volt = Fixed1817toFloat(u) * 5.;

PV nameDescription for PVRemarks (register name)YCPSW nameCalculaton FormulaAlarm Limits
<prefix>:SIMVERFirmware version number for MoFreqLocker ModuleVersion

<SIM_prefix>:M:MFL:Version:Rd


<prefix>:MODAC_RBVReadback value for DAC_OUTPUT3_REMOTE registerDAC_OUTPUT3_REMOTE<SIM_prefix>:M:MFL:DAC_OUTPUT3_REMOTE:Rd

Value inside FPGA is a 18bit signed 2'comp value. 

MATLAB expect value to be a non-offset signed binary range from +/-(2^(18-1))

This value should not be displayed

  Instead, there should be a separate PV that converts this value, and map to +/-5V.

Because this is the real value that makes the most sense to any operators beside the developer

<prefix>:MODACVOLTDAC readout in VoltSoft PV [-5...+5V]


<prefix>:MODACVOLTDAC readout in VoltSoft PV [-5...+5V]

LOLO:

LOW:

HIGH:

HIHI:

<prefix>:MODACSet value to DAC_OUTPUT3_REMOTE registerDAC_OUTPUT3_REMOTE

<SIM_prefix>:M:MFL:DAC_OUTPUT3_REMOTE:St

<prefix>:MODACSet value to DAC_OUTPUT3_REMOTE registerDAC_OUTPUT3_REMOTE

<SIM_prefix>:M:MFL:DAC_OUTPUT3_REMOTE:St

Value inside FPGA is a 18bit signed 2'comp value. 

MATLAB expect value to be a non-offset signed binary range from +/-(2^(18-1))

This value should not be displayed

Because there is an MATLAB high level app running.  Only the readback value should be display



MO RF-locking Matlab script PVs

...

PV nameDescription RemarksAlarm Limits

<prefix>:VTUNE_VOLT

V tune voltage

ao, V
<prefix>:FREQFrequency readbackao, Hz
<prefix>:LOCK_ENABLELock enable/disablebo, 0=Enable,1=Disable

ZSV:

OSV:

<prefix>:FREQ_SETPTFrequency setpointao, Hz

LOLO:

LOW:

HIGH:

HIHI:

<prefix>:FREQ_ERRFrequency errorao, Hz

LOLO:

LOW:

HIGH:

HIHI:

<prefix>:WDOG_CNTWatchdog countlongout

Frequency Counter PVs

Note: all <attribute> names are from the frequency counter Agilent53220A driver module.

...

PV nameDescription for PVRemarksAlarm Limits

<prefix>:FREQ_RBCK_PROC_

Internal PV for Agilent53220A package

When the frequency read back value is valid,

it pushes the value to the rea back PV

No use for user level

<prefix>:SET_TRIG_LEVEL

Set trigger level in voltage

<prefix>:SET_TRIG_PERCENT

Set trigger level (relative, in %)

<prefix>:asyn




<prefix>:UPDATE

Internal PV for Agilent53220A packageNo use for user level

<prefix>:GET_IMPEDANCE

Get input impedance1M Ohm or 50 Ohm

<prefix>:GET_COUPLING

Get input couplingAC or DC

<prefix>:GET_NOISE_REJ

Get noise rejectionON or OFF

<prefix>:RESET

Reset and update all status PVs

<prefix>:SET_IMPEDANCE

Set input impedance1M Ohm or 50 Ohm

<prefix>:SET_COUPLING

Set input couplingAC or DC

<prefix>:SET_NOISE_REJ

Set noise rejectionON or OFF

<prefix>:GET_AUTO_LEVEL

Get input auto level statusOFF/ON/ONCE

<prefix>:IDENTITY

Get IDN

<prefix>:FREQ_RBCK_RAW

Frequency Readback value (raw value)

<prefix>:FREQ_RBCK

Frequency Readback value (in Hz)

<prefix>:GET_TRIG_LEVEL

Get trigger level

<prefix>:GET_TRIG_PERCENT

Get trigger level (relative)

<prefix>:SET_AUTO_LEVEL

Set input auto levelOFF/ON/ONCE
<prefix>:GET_ROSC_SOURsource selection for reference oscillator (readback)INT/EXT
<prefix>:SET_ROSC_SOURsource selection for reference oscillator (set value)INT/EXT
<prefix>:GET_ROSC_EXTFREQFrequency readback for extern reference oscillator1MHz/5MHz/10MHz
<prefix>:SET_ROSC_EXTFREQFrequency Set Value for external reference oscillator1MHz/5MHz/10MHz
<prefix>:GET_DISPDIG_AUTOdisplay digit auto option (readback)OFF/ON
<prefix>:SET_DISPDIG_AUTOdisplay digit auto option (set value)OFF/ON
<prefix>:GET_DISPDIGnumber of digit for display (readback)

<prefix>:SET_DISPDIGnumber of digit for display (set value)

SIM PLL (master) PVs

<prefix> = PRL:SYS0:<NN>

...