Download presentation
Presentation is loading. Please wait.
1
PLC Coding and Local HMI
Swapnil Shrishrimal LCLS-II Software Review November 14, 2018
2
Charge 1. General a. Is the documentation and coding maturity consistent with schedule? 2. Equipment Protection a. Are all the equipment protections functions (in particular responses to abnormal conditions such as trips, alarms and interlocks)… traceable to PLC Code? 3. Definition and Documentation b. Is there traceability between documentation and the PLC Code? 4. Coding a. Are coding Rules adequately defined and implemented? b. Is the PLC code clearly developed, and consistent with documentation and coding rules? LCLS-II Software Review, November 14, 2018
3
Outline Software Development Coding Rules Traceability HMI Development
Schedule LCLS-II Software Review, November 14, 2018
4
Software Specification Developed by
Documentation Software Specification states control philosophy for each system developed by JLAB. Initial draft for all software specification is submitted in document control. The 4K Main Cold Box control philosophy is developed by Air Liquide and JLAB is responsible for PLC programming. Oil Processor was procured with PLC hardware & software. System Software Specification Developed by Gas Management JLAB Utility Warm Compressors Recovery Compressor 2K Sub-Atmospheric Cold Box 4K Main Cold Box Air Liquide *Oil Processor Vendor LCLS-II Software Review, November 14, 2018
5
PLC Hardware and Software Details
System Description Allen-Bradley PLC Type Programming Software Developed By Gas Management ControlLogix 1756-L81E Rockwell Automation Studio5000 JLAB Utility System 4K Main Cold Box 2K Cold Box Warm Compressor 1756-L71 Recovery Compressor Micro 850 2080-LC50-24QWB Connected Components Workbench *Oil Processor CompactLogix 1769-L30ERM Vendor LCLS-II Software Review, November 14, 2018
6
Coding Development LCLS-II Cryoplant PLC Code is modified version of running PLC code from JLAB’s CHL2 cryoplant. General software specification (79120-C6003) states coding rules for the software development. Sub-routines explained in LCLS-II General software specification ( C6003) are consistent in all the JLAB developed PLC codes for LCLSII cryo systems except for Recovery Compressors due to different development environment. These sub-routines are presently in-use on PLC codes across JLAB cryo systems (CHL2, CTF, HDR, etc). 4K Main Cold Box PLC code is developed using control philosophy document provided by Air Liquide (C1303-NT-400(X) and LCLS-II General software specification (79120-C6003). Note: Acceptance of 4K Cold Box PLC Code is planned and agreed by Air Liquide. LCLS-II Software Review, November 14, 2018
7
Consistency – PLC Code The JLab software is very modular, so it is easily adapted to any differences between the JLab and LCLS-II systems. These sub-routines are tested and presently in-use at JLAB CHL2 Cryo Plant. Sub-Routines used are explained in General Software specification and are consistent in all PLC Codes. LCLSII Utility System PLC Code LCLSII Gas Management PLC Code JLAB CHL2 Gas Management PLC Code LCLS-II Software Review, November 14, 2018
8
Coding Rules LCLSII coding rules are derived from JLAB’s internal coding rules. PLC controller name is LCLSII_System, where, System can be GMGT, Utility, SCB or MCB. The PLC Code is divided into different tasks (Main task, Periodic_100ms task, etc). Each task is then divided into various programs (Main Program, Cryocons,etc). Each Program is further divided into Master routine (MainRoutine) and various sub-routines (Alarms, cPID,etc). Sub-routines are executed directly or indirectly from the MainRoutine. PLC Modules are configured to set the analog inputs per their operating ranges and set the outputs to know fail-safe state. LCLS-II Software Review, November 14, 2018
9
Coding Rules Format used to develop PLC Code is Ladder Logic and structure text. Sub-routine naming is based on the task it’s performing (eg. All the alarms can be traced in Alarm sub-routine). All the user-defined tags have meaningful names in PLC code. All the IO tags have description & names per wiring drawings/software specification. The code is well commented, such that any competent programmer could quickly discern the code’s function. Tasks explained in software specifications can be clearly identified and traced in the PLC Code. PIDs, Alarms, Trips, flow calculation and I/O communication structure and naming suffix are same throughout all the systems. Some data elements are combined into arrays to minimize transfer overhead of tags between EPICS and PLC. LCLS-II Software Review, November 14, 2018
10
Example – PLC Code IO Name Ladder Logic
IO Description Comments Data Arrays Meaningful Names IO Name Ladder Logic Gas Management Digital Output Wiring Drawing ( ) IO Configuration LCLS-II Software Review, November 14, 2018
11
Traceability – General Software Specs (79120-C6003)
M. Alarms The alarms function loads the current channel value of tag into the _Alarm structure and calls the Alarm_Evaluation function. N. Alarm_Evaluation All of the following analog signals will have two high alarms and two low alarms, the first set of alarms is a warning ‘yellow alarm’ and the second set is a serious alarm ‘red alarm’ and operator should take actions. All alarm set points are to be modifiable by operators. Process values greater than the Hi alarm or lower than the Lo alarm are in a state of ‘yellow alarm’. Process values greater than the HiHi alarm or lower than the LoLo alarm are in a state of ‘red alarm’. Process values greater than the MaxRange alarm or lower than the MinRange alarm are in a state of ‘SLAC Defined alarm color’. A red alarm supersedes a yellow alarm. These alarms’ settings will exist in the software even if there is no intention to use a specific alarm setting and operator can disable particular alarm using a disable.INT tag. The setpoint tags use the same engineering units as the process variable. This subroutine handles the alarm status of an alarm channel, and synchronizes setpoints between local (HMI) and remote (EPICS) mode as changes are made. The channel that is being alarmed upon has to be moved into the alarm channel independently of this subroutine. i.e Alarm_Evaluation subroutine should be called in alarm routine. This subroutine compares the channel value with their corresponding setpoints and generates an integer. ( Lo=0, LoLo=1, NoAlarm=2, Hi=3, HiHi=4, MaxRange=5 or MinRange=6). This subroutine also latches the alarm if the HiHi, LowLow alarm is active for longer than the latch time. Reset will be required to clear the latch but alarm integer gets cleared once the alarm is ok (i.e auto reset of alarm). Hi, Lo, HiHi, LoLo, MaxRange, MinRange alarm setpoints should be displayed on the alarm screen LCLS-II Software Review, November 14, 2018
12
Traceability – Gas Management Software Spec (79120-C6002)
Description Tag Min Range Lo Lo Alarm Lo Alarm Hi Alarm Hi Hi Alarm Max Range Mass Out temperature CTP21040 0.0 270.00 275.00 320.00 325.00 400.0 Mass Out pressure CPT21040 6.30 8.00 15.00 18.50 28.0 Storage Pressure CPT21030 5.00 6.50 13.00 AMB HX temperature CTP21000 250.00 350.00 370.00 MPH-MP Bypass pressure CPT21032 1.00 3.00 6.00 14.0 Low pressure CPT21012 1.02 1.20 1.25 7.0 High temperature after final oil removal CTP21042 Medium pressure CPT21022 1.05 2.50 2.80 HP CBX temperature CTP21045 MP CBX temperature CTP21025 LP CBX temperature CTP21015 Cooldown pressure CPT21005 0.75 0.85 1.30 1.50 AMB HX pressure CPT21000 0.95 1.65 Primary CW Return CPT86046 1.0 2.0 3.0 3.5 8.0 Primary CW Supply CPT86036 2.5 Disable Primary CW HX CPDT86038 .5 1 100.0 Secondary CW Supply CTP23410 300.0 310.0 Secondary CW HX CPDT23406 Secondary CW CBX CPDT23420 1.5 Secondary CW Filter 1 CPDT23411 Secondary CW Filter 2 CPDT23412 LCLS-II Software Review, November 14, 2018
13
Traceability – PLC Code
Alarm Evaluation is performed here. LCLS-II Software Review, November 14, 2018
14
Traceability – HMI Local Touch panel Remote EPICS
LCLS-II Software Review, November 14, 2018
15
Adjustments required during Commissioning
PID loop Set points are initially chosen from JLAB’s CHL2 cryoplant. These setting will be entered in PLC and operator will be able to make changes as required. JLAB has requested Air Liquide to provide 4K Cold Box PID loop settings. Operator can make these changes from HMI (Local/Remote) or from PLC Code. LCLS-II Software Review, November 14, 2018
16
HMI Hardware and Software Details
System Description HMI Type Programming Software Developed By Gas Management Allen Bradley 2711P-T15C22A9P FactoryTalk View Studio JLAB Utility System 4K Main Cold Box 2K Cold Box Warm Compressor 2711P-T15C4A8 Recovery Compressor Automation Direct EA9-T8CL C-More *Oil Processor 2711P-T7C21D8S Vendor LCLS-II Software Review, November 14, 2018
17
Local HMI Development Rules
Local HMI provides option to operator to make changes to system during EPICS outage/breakdown. Operator must select local mode if he/she desires PLC to take actions from local touch panel. Essential system tags like PID loop, Alarms, Start, Stop commands are available to operator from touch panel. HMI displays are developed using available HMI displays/EPICS screen at JLAB so that they replicate P&ID’s. PLC Input tag Suffixes or structure are separate for HMI and EPICS. PLC synchronizes all the tags between HMI and EPICS when change made from either is reflected on other display. LCLS-II Software Review, November 14, 2018
18
Traceability - Local HMI
LCLS-II Software Review, November 14, 2018
19
Traceability – P&ID (79120-0002)
LCLS-II Software Review, November 14, 2018
20
Is the documentation and coding maturity consistent with the schedule?
System PLC - Draft Local TouchpanelHMI Start End Warm Compressors 2017 May 2018 Jun 2018 Gas Management Apr 2018 Utility Nov 2018 Jul 2018 4.5 K CB Aug 2018 Feb 2019 Oct 2018 Dec 2018 2 K CB - Refer Scope, Requirements, Deliverables & Schedule talk LCLS-II Software Review, November 14, 2018
21
Potential delays in the schedule
CAN communication for 2K Sub-atmospheric cold box – (under development/testing expected to be ready by Dec 2018) 4K Main Cold box Control Philosophy (Air Liquide Scope – initial draft developed on Nov 27th,2016) JLAB suggested corrections and meeting was held between JLAB, SLAC and AL on Sept 27th,28th 2018. Revised document received on Nov 12th, 2018. Bench Testing software fixes. LCLS-II Software Review, November 14, 2018
22
Charge Addressing 1. General a. Is the documentation and coding maturity consistent with schedule? YES 2. Equipment Protection a. Are all the equipment protections functions (in particular responses to abnormal conditions such as trips, alarms and interlocks)… traceable to PLC Code? YES 3. Definition and Documentation b. Is there traceability between documentation and the PLC Code? YES 4. Coding a. Are coding Rules adequately defined and implemented? YES b. Is the PLC code clearly developed, and consistent with documentation and coding rules? YES LCLS-II Software Review, November 14, 2018
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.