Make this work with epics
Download
1 / 6

Make “This” work with EPICS! - PowerPoint PPT Presentation


  • 89 Views
  • Uploaded on

Make “This” work with EPICS!. 2006 [email protected] Where does new “This” fit in?. EPICS Block Diagram. EDM, StripTool. Host (WS 1, WS2, FS 1). CA Client. Ethernet (CA). CA Server. CA Client. IOC (IOC1, IOC2). Database. Device Support. Driver. WS 2. IOC 1. WS 1. LD 1.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Make “This” work with EPICS!' - drew-hoover


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Make this work with epics

Make “This” work with EPICS!

2006

[email protected]


Where does new this fit in
Where does new “This” fit in?

EPICS Block Diagram

EDM, StripTool

Host

(WS 1, WS2, FS 1)

CA Client

Ethernet (CA)

CA Server

CA Client

IOC

(IOC1, IOC2)

Database

Device Support

Driver

WS 2

IOC 1

WS 1

LD 1

IOC 2

FS 1

NWD 1


Low level driver
Low-Level Driver

  • Typically in C, C++

  • Provides basic methods to find, initialize, read, write the device

  • Usually it's not specific to EPICS or anything in particular except the OS

    • vxWorks, RTEMS, Linux, Win32, …

  • Vendor of device might already provide it.

  • If not: Consider use of EPICS 'OSI' routines

    • Makes it specific to EPICS, but offers portability across OSs.


This vme vxi isa pci cpci board
This=VME/VXI/ISA/PCI/cPCI board?

  • Put into VME crate or PC

  • Load EPICS base software

  • Connect low-level driver to iocCode:

    • Add subroutine record 'init' and 'process' routines.

      • Initially easy, but sub record doesn't add much.

    • Add SNL code, invoke low-level driver from within states.

      • Works quite well for one-off setups, but can result in a mess if used without restraint.

        b) Add device support for existing record types

      • More initial work, but benefits from AI, BI, … functionality, and results in "standard" setup that others might best understand.

        c) Add new record types specific to the device

      • Don't know an example where this worked out OK.


This something else
This=Something else

  • Since it's not physically in the front-end computer, and in the past only vxWorks-based IOCs could run iocCore, the answer was:Connect it to the EPICS network via CA

    • Write custom CA server

    • Or use CA client lib to 'push' data into an IOC.

  • Since EPICS R3.14, iocCore runs on most platforms

    • Can use subroutine rec, device support, SNL, …


Acknowledgements
Acknowledgements

  • Material has been copied from

    • Martin Pieck (LANL)

  • Ideas

    • Bob Dalesio and many others


ad