linux ioc operations at nstx - an overview
DESCRIPTION
Linux IOC Operations at NSTX - An Overview. P. Sichta 28Mar2005. References. EPICS website ( www.aps.anl.gov/epics ) 3.14.7 Applications Developer Guide . Training documents. Tech-Talk mailing list. NSTX Documents VxWorks IOC NSTX-WBS6-OP-009, EPICS IOC Reboot - PowerPoint PPT PresentationTRANSCRIPT
Linux IOC Operations at NSTX- An Overview
P. Sichta
28Mar2005
References• EPICS website (www.aps.anl.gov/epics)
– 3.14.7 Applications Developer Guide .– Training documents.– Tech-Talk mailing list.
• NSTX Documents– VxWorks IOC
• NSTX-WBS6-OP-009, EPICS IOC Reboot• NSTX-WBS6-OP-005, EPICS IOC Shutdown• NSTX-WBS6-OP-015, Configuring IOC Boot Parameters• NSTX-WBS6-DV-003, Preparing an MVME-177 for vxWorks
– Linux IOC• NSTX-WBS6-DV-015, Building EPICS Base, Extensions, and a softIOC on
Linux for a Linux target.• NSTX-WBS6-OP-027, EPICS Linux IOC Operations.• NSTX-WBS6-??-???, Managing a Linux IOC.• Plan to restructure ‘Linux’ IOC documents.
Introduction
• This presentation describes how to operate the IOC, not how to:– build it,– configure it,– get databases onto it,– get sequence programs onto it,– troubleshoot problems.
vxWorks and Linux IOCs- Introduction
• A Linux IOC offers a much lower-cost and higher-performance solution for an EPICS control system.
• A Linux IOC is not a real-time system, so its Application should be reviewed in this light.
• The CI&C operator’s user interface with the Linux IOC is quite different from the vxWorks IOC.
what is epics?
Getting Started with EPICS: Introductory Session IPioneering Science andTechnology
Office of Science U.S. Department
of Energy
Power Supply
Beam Position Monitor
Vacuum Gauge
Computer Interface
Computer Interface
Computer Interface
Process Variables:
Channel Access Server
S1A:H1:CurrentAO
S1:P1:x
S1:P1:y
S1:G1:vacuum
iocC
ore
Channel Access Client
Channel Access Client
Channel Access ClientChannel Access Client
EPICS Configuration at NSTX
Windows
Linux
Solaris
vxWorks
KEY
NSTX Firewall
Engineering
Physics/PPPL
x-term OPI
vxWorks IOCs
epicsrv1
CA clients
nstxpc09 (LV Web Server)
epicsgate02•EPICS Gateway•CAR-2, Archive Data Server
epicsrv2
nstxIOC1(Linux IOC)
no OPERATIONS role,only vxWorks supportepicsrv4
epicsrv3
Linux IOCs
x86 OPI
CA clients
VxWorks and Linux IOCsCategory Some things are the same Some things are different
Network & CA clients
From the network and CA client point of view, a Linux IOC and a vxWorks IOC look the same. That is, they both use the Channel Access protocol over TCP/IP.
No differences!
Database A ‘database’ file can run on either type of IOC... same flat-file, ASCII format.
•Some records call device support and driver support that are specifically written for vxWorks and VME modules. •Many records in EPICS Base can use soft Device support, which works with both OS’s.
Sequencer Programs
A ‘sequencer program’ can run on either type of IOC... same source syntax (SNL in an .st file).
Existing SNL programs may need to be rewritten in an OSI-compliant manner.
Subroutines A ‘subroutine’ can run on either type of IOC... same source syntax (C file).
Existing subroutines may need to be rewritten in an OSI-compliant manner.
vxWorks and Linux IOCs- The Physical
vxWorks Linux
vxWorks and Linux IOCs- The iocCore Software Tasks
vxWorks Linux
vxWorks and Linux IOCs- a ‘Terminal’ Session
LOCAL
REMOTE
vxWorks Linux
•RS-232 connection to Console port.•MACse running VersaTerm.•PC running HyperTerm.
•Maybe no local Console, otherwise local VGA/kybd..•(Probably) no Linux graphical interface (text only).•Use the Screen utility to access the IOC Shell.
•rlogin protocol to vxWorks using tornado user account.•One remote user at a time.•Use logout command to terminate session.
•SSH to Linux, using xxx user account.•Use the Screen utility to access the IOC Shell.•Use ‘Ctrl-A D’ command to terminate (IOC shell) session.
vxWorks and Linux IOCs- Booting & Starting iocCorevxWorks Linux
•Power up VME Crate or RESET the CPU.•Use ‘boot’ vxWorks script, e.g:
<st.boot_ioc1
•Power up Linux PC or reboot the CPU.•Use ‘boot’ Linux script, e.g.:
boot_ioc
vxWorks and Linux IOCs- Status Check
vxWorks Linux
•MEDM displays•Alarm Handler•Terminal sessions
•MEDM displays•Alarm Handler•Terminal sessions
vxWorks and Linux IOCs- Shutdown
vxWorks Linux
•No graceful IOC shutdown needed at this time, but once I/O is present it may be required.
•Probably run a ‘shutdown’ script, then the normal exit command.•Linux needs an orderly shutdown.
•This vxWorks scripts gracefully terminates communications tasks, and shuts down the IOC.
The First
ONLINE
Linux IOC at NSTX
NSTX’s First Linux IOC
• It is on the NSTX Physics (.15) network.– The computer’s name is nstxioc1.pppl.gov .
• It’s purpose is to foster secure integration between ‘Engineering ops’ and ‘Physics ops’.
• It is presently an orphaned Dell L667 desktop machine, but will be something else in FY06.
• Integrated into MEDM and Alarm Handler.– It sees the Engineering IOC’s via the EPICS Gateway– Engineering IOC’s see it directly
• Use a reverse gateway?
Looking deeper, it’s a prototype
• The computer’s name is nstxioc1.pppl.gov.• The IOC’s medm and ALH name is ‘IOCs1’.• The ioc’s Linux process/task is ‘lin7’.• The ioc home directory is
/eprun/epicApps/ioc157/iocBoot/ioclin7• The IOC’s operator account is epics.• The computer is presently in Sichta’s office, but will
move into the NSTX Control Room.• The database was made using VDCT on Sichta’s office
PC. Database hand-transferred to nstxioc1 using sftp, using the freeware WinSCP.
• In the near future, this needs to change (somehow) to provide a reasonable way of ‘doing business’.
Linux IOC
Status via
MEDM
Linux IOC in the Alarm Handler
What does it do?• Monitors LabVIEW Web Server (nstxpc09).
– ALH monitors these records to alarm if Web Server VI crashes.
• Will soon receive EPICS Events for NSTX Clock Events (sourced by IOC1).
• Would like to use it to field NSTX Clock Control commands from Ben LeBlanc:– his computer’s hole through the NSTX firewall can be closed– his epicsrv account can be disabled
• Would like to use it to receive ca_puts from critical NSTX VMS and unix tasks:– indicate that they are running, ready, etc...– DAS CAMAC Link and crate status– status these items on MEDM displays (e.g. COE display)– Integrate items into the Alarm Handler
vxWorks and Linux IOCs- Summary
• The CI&C operator’s user interface with the Linux IOC is quite different from the vxWorks IOC.
• Future work that will affect IOC Operations: – CyberSecurity– improved IOC Shell access? – remote boot and management– device and driver support for I/O
To figure out...
• how to:– name it.– build it.– configure it.– get databases onto it.– get sequence programs onto it.– manage code for vxWorks and Linux targets.– troubleshoot problems.