1 1999/Ph 514: Lab #2 : IOC Database EPICS Lab #2 IOC Database.

Slides:



Advertisements
Similar presentations
Introduction to Microsoft Access
Advertisements

Introduction to Alarm Handlers Randy Flood Karen Schroeder AOD/OPS.
Components: Sansa Clip Mp3, earbuds, USB cable, Quick Start Guide.
Copyright © 2005 Rockwell Automation, Inc. All rights reserved. 1 Micro Logix 1100 RSLogix 500 LAB#2 Timing, Counting & Comparing.
Networking By: Matt Motl… Programmer Brent Everson… Programming Mentor.
Tool removed during cycle Fault #2 Conditions for setting Tool cocked prox switch goes open during cycle AND force on load cell drops below limit in fault.
Module 4: Analog programming blocks. Module Objectives Analyze a control task that uses analog inputs. Connect a potentiometer to LOGO! controller and.
1 Burn-in Viewer User’s Guide Version 2.0 February 17, 2005 LukasTomasek
UNESCO ICTLIP Module 4. Lesson 3 Database Design, and Information Storage and Retrieval Lesson 3. Information storage and retrieval using WinISIS.
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
Procurement Card Training Strategic Account Management (SAM)
Creating And Maintaining A Database. 2 Learn the guidelines for designing databases When designing a database, first try to think of all the fields of.
EProcurement Job Aid Requisitions & Receipts. Table of Contents Creating a Requisition Define Requisition Vendor.
DEMONSTRATION FOR SIGMA DATA ACQUISITION MODULES Tempatron Ltd Data Measurements Division Darwin Close Reading RG2 0TB UK T : +44 (0) F :
Lecture 5: Sensors. A sensor is any element that provides information from the to the robot, either about the environment or about the robot itself. Sensing.
Microsoft Office 2007 Access 2007 Chapter 9 Administering a Database System.
Packet Tracer: Novice Session
Packet Tracer 4.1: Novice Session
Module 4: Analog programming blocks. Module Objectives Analyze a control task that uses analog inputs. Connect a potentiometer to LOGO! controller and.
1 1999/Ph 514: State Notation Language EPICS State Notation Language (SNL) Ned D. Arnold APS.
STEP 1: Determining the exact image width STEP 1: Determining the exact image width Position of X-ray Filter Position of X-ray Filter STEP 5: Crop Extra.
Industrial Process Control System Simon Hui Engineer Control and Informatics, Industrial Centre.
Moodle (Course Management Systems). Assignments 1 Assignments are a refreshingly simple method for collecting student work. They are a simple and flexible.
4 May I/O Control. 4 May What is I/O Control? A Doors feature that allows you to program input events to drive output responses – for example:
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
1 Experimental Physics and Industrial Control System (EPICS) Database Bob Dalesio, May 31,2010.
Experimental Physics and Industrial Control System (EPICS) Database Bob Dalesio, June 27,2001.
Gauge Operation and Software by Scott A. Ager. Computer Recommendations 750 MHz Pentium III 64 Meg SRAM 40 Gig Hard Drive 1024 x 768 graphics CD Writer.
Vintage Computer Hardware 101 Featuring the MITS Altair 680b Bill Degnan.
VistA Imaging Capture via Scanning. October VistA Imaging Capture via Scanning The information in this documentation includes only new and updated.
Office 2003 Advanced Concepts and Techniques M i c r o s o f t Access Project 5 Enhancing Forms with OLE Fields, Hyperlinks, and Subforms.
Pack Company Procedures. Accepting a HIP request from a supplier Allocating the Component Providers Sending the instruction through to the Component Providers.
Nursing Library Training using Sunrise Press data.
1 1999/Ph 514: EPICS Database II EPICS EPICS Database II Ned D. Arnold APS.
Prachi Chitnis.  The CSS feel  SDS – Synoptic Display Studio  ADL Converter  PV table, Probe…
Dreamweaver MX. 2 Overview of Templates n Forms enable you to collect data from ______. n A form contains ________ such as text fields, radio buttons,
Support.ebsco.com Introduction to EBSCOhost Tutorial.
January 2009EPICS Seminar in Indore1 Practice SNL and Sequencer Tatsuro KEK January 2009.
Slide 1 Project 1 Task 2 T&N3311 PJ1 Information & Communications Technology HD in Telecommunications and Networking Task 2 Briefing The Design of a Computer.
JAZLER SHOW2 JAZLER SHOW2 AUTOMATION SOFTWARE. EASY PLAYBACK JAZLER SHOW2 AUTOMATION SOFTWARE Jazler Show is a program that lets you load audio files.
1 Micro Economix 1500 RSLogix 500 LAB#3 Sequencing and Subroutines.
Use of a Relational Database at Leda Bob Dalesio
XP New Perspectives on Microsoft Office FrontPage 2003 Tutorial 7 1 Microsoft Office FrontPage 2003 Tutorial 8 – Integrating a Database with a FrontPage.
1 1999/Ph 514: Flow of Control EPICS Flow of Control Marty Kraimer APS.
Service Section Technical Training December 2005.
1 2003/P571: Lab #2 : IOC Database EPICS Lab #2 IOC Database.
1 1999/Ph 514: Lab #1 : CA Clients EPICS Lab #1 CA Clients.
1 1999/Ph 514: Lab #5 : Course Projects EPICS Lab #5 Course Projects.
EPICS and LabVIEW Tony Vento, National Instruments
HEI/OCAN College Access Program Data Submissions.
EPICS Records J. Frederick Bartlett Fermilab June 1,1999.
Tool Removed During Cycle Fault #2 Conditions for Setting Tool cocked prox switch goes open during cycle AND force on load cell drops below 5 lbs. Active.
1 Top Level of CSC DCS UI 2nd PRIORITY ERRORS 3rd PRIORITY ERRORS LV Primary - MaratonsHV Primary 1 st PRIORITY ERRORS CSC_COOLING CSC_GAS CSC – Any Single.
Chapter 10 Using Macros, Controls and Visual Basic for Applications (VBA) with Excel Microsoft Excel 2013.
Exploring Taverna engine Aleksandra Pawlik materials by Katy Wolstencroft University of Manchester.
Using Zappers in a Common Learning Space A guide for tutors Created by Adam Warren Learning and Teaching Enhancement Unit.
Multi camera.
Fujitsu Training Documentation Hardware Installation
Store Multiple Results?
Assembler Design Options
MicroEconomix 1500 RSLogix 500 LAB#2
ET 438B Sequential Control and Data Acquisition
MicroEconomix 1500 RSLogix 500 LAB#1
DB Implementation: MS Access Forms
Digital Chart Recorder Operation
Using the Software ProtoMED Practice Management and Electronic Medical Records software enables users to … View schedules View patient information View.
EET 2259 Unit 7 Case Structures; Sequence Structures
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
SLC-Aware IOC Magnet Functional Requirements
Presentation transcript:

1 1999/Ph 514: Lab #2 : IOC Database EPICS Lab #2 IOC Database

2 1999/Ph 514: Lab #2 : IOC Database EPICS Lab #2 IOC Database u Real Life Example #2 : After returning from your vacation, you have an requesting the following enhancements to the LINAC Control System: u Add Beam Transport Efficiency calculations (and PVs) for FC1 and FC2 u Provide a PV that allows the operator to enter their name. Display this PV on the medm display labeled “Operator In Charge” u Turn off gun and set cathode current to 0 if cathode temperature exceeds 180 degrees u Don’t allow the Beam On button to be activated unless the cathode temperature is within range u Define an “Open Access” PV which gets its state from a toggle switch u Define appropriate records to keep all power supplies at 0 current when in “Open Access” u Turn on a warning light when beam reaches either faraday cup. Reflect the amount of beam hitting the faraday cup on the analog gauge.

3 1999/Ph 514: Lab #2 : IOC Database EPICS New PVs u You can either create a new database file for your PVs or add them to ~/ioc/linac/linacApp/Db/xxLinacSim.db u To start jdct … cd ~/ioc/linac/linacApp/Db jdct & u Load database definition file … From file menu, Open../../dbd/linacApp.dbd u Save edited (or new) database … From file menu, Save as../linacApp/Db/_.db  If you created a new database, edit Makefile.Host and execute gnumake. You must also edit ~/ioc/linac/iocBoot/ioclinac/st.cmd to load the new database.

4 1999/Ph 514: Lab #2 : IOC Database EPICS New PVs u Create Beam Transport Efficiency PVs for FC1 and FC2 u Create a calc record studnt_:FC1:transportRatioM that provides the required calculation (FC1/CM1). Scan it periodically at 1 second. u Create a calc record studnt_:FC2:transportRatioM. that provides the required calculation (FC2/CM1). Use the.CP attributes on the input links to have it scan when necessary. u Add readouts for these PVs on the medm display u Provide a PV that allows the operator to enter their name. Display this PV on the medm display labeled “Operator In Charge” u Create a stringin record named studnt_:OP:operator. Have the value initialize to “None”. u Create a text entry on the medm display for operator entry

5 1999/Ph 514: Lab #2 : IOC Database EPICS Auto-shutdown - gun u Turn off gun and set cathode current to 0 if cathode temperature exceeds 180 degrees u Create a calcout record that monitors cathode temperature. When temperature exceeds 180 degrees, have the calcout record force the processing of a sequence record that turns the gun off and sets the cathode current to 0. u NOTE : APS is very careful to distinguish between “equipment protective interlocks” and “prudent operating procedures”. We do not rely on EPICS to perform “equipment protective interlocks”. The above example assumes that there is a hardwired interlock protecting the cathode at 190 degrees.

6 1999/Ph 514: Lab #2 : IOC Database EPICS Beam On Inhibit u Don’t allow the Beam On button to be activated unless the cathode temperature is within range u Create a calc record ( studnt_:cathodeTempCheck ) whose value is 1 when the cathode temperature is within the appropriate range ( degrees) and 0 when it is not within range. u Set the studnt_:gunOnC.SDIS to fetch the above record. Set studnt_:gunOnC.DISV to 0 to disable the record when the cathode temperature is out of range. u Does this work as you expect ?

7 1999/Ph 514: Lab #2 : IOC Database EPICS Beam On Inhibit u Another approach … u Copy studnt_:gunOnC to a new PV studnt_:gunOnRequestC u Set the following fields of studnt_:gunOnRequestC : u.FLNK to studnt_:gunOnC u.SDIS to studnt_:cathodeTempCheck.VAL u.DISV to 0 u Change the following fields of studnt_:gunOnC : u. DOL to studnt_:gunOnRequestC . OMSL to closed_loop u.SDIS to NULL .DISV to 1 u Use studnt_:gunOnRequestC as the operator control on the medm display, but still monitor studnt_:gunOnC u Does this work like you want it to ? u What happens if the beam is on and the cathode temperature decreases ?

8 1999/Ph 514: Lab #2 : IOC Database EPICS Beam On Inhibit u Yet another approach : Use the “Mask” mode of a sequence record to perform a conditional set of operations (i.e turn gun on or reset the request) u Define a calc record ( studnt_:gunOnRequestCheck ) which yields the following result: u If studnt_:gunOnRequestC is 0, result is 2 u If studnt_:gunOnRequestC is 1 and studnt_:cathodeTempCheck is 0, result 1 u If studnt_:gunOnRequestC is 1 and studnt_:cathodeTempCheck is 1, result 4 u Set. FLNK to studnt_:gunOnRequestSQ  Set studnt_:gunOnRequestC.SDIS to NULL and studnt_:gunOnRequestC.DISV to 1 u Define a sequence record ( studnt_:gunOnRequestSQ ) as follows : . SELM = Mask,.SELL to studnt_:gunOnRequestCheck.VAL u.DLY1 = 0.5,.DOL1 = 0,.LNK1 to studnt_:gunOnRequestC (cancels request) u.DLY2 = 0,. DOL2 = 0,. LNK2 to studnt_:gunOnC to 0 (turns gun off) u.DLY3 = 0,. DOL3 = 1,. LNK3 to studnt_:gunOnC to 0 (turns gun on)

9 1999/Ph 514: Lab #2 : IOC Database EPICS Open Access Mode u Add a PV to monitor an “access mode” switch u Create a bi record named studnt_:accessMode. u. DTYP : Bitbus Device u. INP : #L0 N1 P0 u. ZNAM : Open Access,. ONAM : No Access u Keep all power supplies at 0 current if toggle switch is in “Open Access” u Create a calcout record ( studnt_:psHoldOffCO) that forces the processing of a sequence record ( studnt_:psHoldOffSQ ) if the toggle switch is in the “Open Access” state. u Define the sequence record studnt_:psHoldOffSQ to hold the set current of all power supplies to 0. Forward link to another sequence record that finishes the job. Decide on the appropriate way to process these records.

/Ph 514: Lab #2 : IOC Database EPICS Beam Alert u Provide an indication on the I/O panel when beam reaches either faraday cup u Define a binary output record ( studnt_:beamPresentLedC) to turn on an LED u DTYP : Bitbus Device u OUT : #L0 N1 P0 u ZNAM : No Beam ONAM : Beam On u Define an analog output record ( studnt_:beamPresentMeterC) to drive the panel meter u DTYP : Bitbus Device u OUT : #L0 N1 P0 u EGUF : 20 EGUL : 0 u Define two calcout records to drive the above records based on the current present at the faraday cups. u EXTRA CHALLENGE : Enhance the above implementation by blinking the light if the beam at the faraday cup exceeds 5 mA (Hint : this can be done by adding one record).

/Ph 514: Lab #2 : IOC Database EPICS Additional Database Exercises u Rate-of-change on ao record u Monitor studnt_:BM1:setCurrentC.OVAL (with medm or probe) while changing studnt_:BM1:setCurrentC.VAL. u Set studnt_:BM1:setCurrentC.OROC to 10. Set studnt_:BM1:setCurrentC.SCAN to '1 second'. Monitor studnt_:BM1:setCurrentC.OVAL again while changing studnt_:BM1:setCurrentC.VAL. u Create a record that indicates when studnt_:BM1:setCurrentC has not reached its setpoint (i.e. indicates that it is still ramping). Indicate this on the medm display with a yellow box around the set point text entry. u I/O Panel - (Make sure these don't interfere with the other uses of the I/O panel) u Create the necessary records so three LEDs on the I/O panel (0,1,2) count in binary while switch 0 is on and stop counting when the switch is off. u Create the necessary records so the meter follows the potentiometer when all switches are on.

/Ph 514: Lab #2 : IOC Database EPICS Additional Database Exercises u Add the following lines in ~/ioc/iocBoot/ioclinac/st.cmd cd startup asSetFilename("CA_ACCESS") u Change studnt_:BM1:setCurrentC.ASG to SUPERUSER. u Add other security conditions as desired. UAG(users) {studnt_} ASG(DEFAULT) { RULE(1, READ) RULE(1, WRITE) } ASG(SUPERUSER) { RULE(1, READ) RULE(1, WRITE) { UAG(users) } u Implement Channel Access Security such that only studnt_ can control studnt_:BM1:setCurrentC. u Create an access security configuration file named CA_ACCESS in ~/ioc/iocBoot/ioclinac/.