Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Fixed Sharepoint link

This page shows the basics of setting up a PV with BSA. More details and documents are in Sharepoint

The main aspects of using BSA are configuring BSA PVs in an IOC, setting up and running event definitions (edefs) to acquire data, and using BSA data e.g. in Matlab programs.

...

the BSA database defines a PV for feeding data from your Data Source to the rest of the BSA system. When configuring the BSA database, be sure the name matches the Data Source PV. The BSA internals depend on the PV names being composed of the same $(DEVICE) and $(ATRB) parts. It would cause confusion if the history buffers had a name that didn't correspond to the data in them.

The BSA database can be defined by using Bsa.db or one of the following templates:

bsaATTREdef.db

bsaBPMSEdef.db

bsaBPMSCavityEdef.db

bsaTOROEdef.db

bsaFARCEdef.db

bsaBLENEdef.db

bsaPMTEdef.db

bsaWIREEdef.db

bsaAMPLEdef.db

bsaPHASEdef.db

bsaPWREdef.db

bsaEnergyEdef.db

The only difference in these two approaches is in macros.  Bsa.db is meant to be used in st.cmd, where the device is passed as macro and you need one line for each device.

Our recommendation is to use substitutions files in Db so that syntax is checked while executing make vs during ioc startup.  This will prevent possible run time problem about macros while rebooting the IOC.

 example:   In your application you need to create the substitutions file such as:

 evrLabApp/Db/bsaTrainerAll.substitutions

In the substitution file, it has to import the the *.db file that you choose, for example Bsa.db:

file Bsa.db

{

# Device type used for the test.

 pattern { DEVICE     , ATRB  }

         { LEPTON:1   , COUNTER }

…..

}