
石化装置
-
2023年3月2日发(作者:钻石矿)石化生产装置中DCS与其他控制系统时钟同步技术开发
方宏昌;吕志全;蔡军;王虎威
【摘要】时钟是智能系统的一个基本参数,工业生产过程中各计算机控制系统间
的时钟同步对于装置监控操作有着重要意义。一般较大的石化装置内控制系统包括
DCS、SIS、ITCC、PLC等,各控制系统之间时钟不同步会给装置安全稳定生产带
来很大的隐患。某石化公司芳烃厂各生产装置控制系统间时钟同样存在不同步的问
题。该厂相关技术人员通过技术研发解决了这个问题。文章介绍了控制系统时钟出
现不同步的原因,进一步阐述了控制系统时钟同步问题的解决方案,最后详细的叙
述了装置控制系统时钟同步的具体实施。%Clockisaprimaryparameterfor
intellgentdevice,itissignificantofclocksynchronazitonbetween
computercontrolsystemsforprocessmonitoringandcontrollingin
lsystems,suchasDCS,SIS,ITCC,PLC,are
usedgenerallyinmajorpetrochemicalindustryunit,andclock
imsynchronizationwillresultinariskofmanufactureaccidentforprocess.
TheissuewasexistaswellinAromaticPlantofonePetrochemical
introducedforthereasonofclockimsynchronization,thesolutionwas
explainedforthatfurther,andthespecificimplementwasdescribedfor
clocksynchronazitonindetailatlastinthispaper.
【期刊名称】《仪器仪表用户》
【年(卷),期】2016(023)011
【总页数】4页(P26-29)
【关键词】时钟同步;DCS;SIS;ITCC;PLC;控制系统
【作者】方宏昌;吕志全;蔡军;王虎威
【作者单位】辽阳石化分公司芳烃厂,辽宁辽阳111003;辽阳石化分公司芳烃厂,
辽宁辽阳111003;辽阳石化分公司芳烃厂,辽宁辽阳111003;辽阳石化分公司芳
烃厂,辽宁辽阳111003
【正文语种】中文
大型的石油化工企业中,工艺过程多为联合生产装置,其工艺复杂,控制参数多。
因此,大型石化生产装置除了采用分散控制系统(DCS)外,重要工艺过程联锁
控制都采用一套安全仪表系统(SIS),关键压缩机组系统采用一套压缩机控制系
统(ITCC)[1]。除此外,某些单元装置也往往成套提供独立控制系统(一般为
PLC)。
石油化工生产装置DCS、SIS、ITCC,以及其他PLC等的时间标签对于装置的操
作监控、历史数据的查询以及事故事件的分析都非常重要。装置各控制系统时钟必
须一致才能保证整套装置的有效操作运行。然而,DCS、SIS、ITCC以及PLC等
彼此控制网络独立,每个控制系统各有自己的时钟,经长时间运行后控制系统间的
时间就会产生很大差别,这将影响装置过程的监控操作。
本公司芳烃厂各生产装置的控制系统时钟同样存在这个问题。厂内相关技术人员对
此进行了技术攻关,最终通过努力解决这个难题。
本厂的主要生产装置包括芳烃联合生产装置、140万吨/年重整-歧化联合装置、
45万吨/年PX装置及80万吨/年PTA装置,各装置控制系统情况见表1。
2.1装置控制系统的时钟同步情况
在工艺生产装置过程控制中,无论是DCS、SIS,还是ITCC等一般为工业以太网
络系统,通常装置DCS系统网络内部的时钟都是统一的[3]。但是,DCS和装置
其他成套控制系统(SIS、ITCC、PLC等)并不属于同一个控制网络,控制系统之
间的时钟严重不同步,时间相差少则几分钟,长期运行时间相差多达几小时。如重
整-歧化联合装置DCS与ITCC的控制器时间最多相差近2h,PX装置DCS与SIS
的控制器时间曾经相差了近8h。
此外,各装置SIS、ITCC、PLC等系统内部的控制器与上位机(工作站或操作站)
时钟也不同步。装置控制系统的时钟不同步给工艺安全稳定生产运行带来很大隐患。
2.2控制系统时钟不同步原因分析
化工生产装置控制系统的上位机(服务器、操作站或工程师站)一般为工业PC机,
各种控制器为一种特殊的工业计算机系统,控制系统的时钟都是内部计算机时钟。
一般计算机时钟有2个:1个是始终运行的、由电池供电的硬时钟(硬件CMOS
或BIOS);另1个是运行在计算机操作系统上的软件时钟。计算机系统由软件时
钟记录时间,硬件时钟只在计算机系统启动时来设置软件时钟。软件时钟:计算机
中Intel8254(或相同功能)的芯片来产生中断,BIOS中的软件对中断请求进行
计数,从而产生1个操作系统软件可以读取的时钟,并转化为相应的日期和时间。
一般中断的周期为54.936ms[5]。
计算机的硬件时钟的精度取决于所依靠的石英晶振(典型值32.769kHz)。由于
受环境温度、老化因素等影响,其频率不确定度≧1*10-5,大约每天有1s的误差;
软件时钟定时稳定度受中断稳定度的影响,任何改变中断请求的动作都会改变软件
时钟(如用户运行应用程序、防病毒软件程序、屏幕保护程序等)。计算机长时间
运行累计后的软件时钟会产生较大的误差,一般每天会有1~15s的起伏,平均5、
6s/天,典型的10s/天。
经过长时间运行后,各控制系统的时间就会有很大的差异,这就是时钟不同步的原
因所在。
装置控制系统时钟同步要求DCS、SIS、ITCC、PLC的控制器,以及上位机(HMI,
即操作站、工作站、服务器等)的时间要一致。由于装置的大部分工艺过程运行操
作在DCS进行,所以装置控制系统时钟同步就要求其他控制系统时钟跟踪DCS
时间。
装置控制系统间时钟同步具体工作主要包括3部分:
1)各DCS系统控制器组态编写相关功能程序,完成每天特定时间(一般在
23:00:00或01:00:00左右)输出1个定时脉冲信号至装置内的SIS、ITCC、PLC
等成套控制系统。(本篇文章具体阐述了芳烃联合装置DCS系统的相关定时脉冲
发生程序)
2)在SIS、ITCC、PLC等的控制器组态编写时钟同步的相关功能程序,使控制器
接收到DCS的定时脉冲触发信号后设置本机时钟。Tricon、Trident、Siemens
S7-400H控制器可以直接设置控制器时钟。
3)同时,SIS、ITCC、PLC等控制器接收到DCS的定时脉冲触发信号赋值相关变
量,该变量触发上位机的脚本程序运行,以此设置上位机电脑时间,完成HMI的
时钟同步。
有的控制系统(例如芳烃联合装置和重整-歧化联合装置HoneyWellSM系统)
控制器时间没有办法直接通过程序进行改写。解决办法:SM系统接收DCS的定
时脉冲信号后赋值相关变量,上位机服务器读取这个变量,变量为“1”时,触发
服务器相关脚本程序设置本机电脑时间,SM控制器、操作站通过SNTP协议实时
跟踪服务器时间,从而实现时钟同步。
本文具体阐述HoneyWellSM系统、TriconTS-3000系统、SiemensS7-400H
系统控制器和上位机的时钟同步校正。
芳烃联合装置和PX装置的ITCC系统时钟同步也采用跟踪上位机(INTOUCH)
时间的方式来进行,上位机时钟同步方式和TriconTS-3000系统上位机时钟同步
相同,这里不赘述。
TridentESD、TriconESD的时钟校正方式和TriconTS-3000相同;MAN
Turbolog、UOPCRCS均为不开放的黑匣子系统,时钟同步只需DCS定时给个
脉冲触发信号即可。
4.1DCS时钟同步脉冲信号的产生
芳烃联合装置DCS系统HoneyWellTPS控制网络和控制器为20世纪80年代的
TDC-3000系统,时钟同步工作如下:
1)在DCS系统中组态建立一个DO点TM01。
2)在DCS系统中用程序控制语言(CL)编写产生定时脉冲的程序,当控制器时
间为凌晨01:00:00时,将点TM01输出设置为“1”,延时1s后再将TM01输
出设置为“0”,即产生1s的脉冲并通过TM01输出。
程序代码如下:
SEQUENCETIME(HPM;POINTTIME)
ExternalTM01
phase
STEPONE
--SETNN(1)=NOW
STENN(1)=NUMBER(NOW)
SETNN(2)=3600
SETNN(3)=3601
IFNN(3)>=NN(1)ANDNN(1)>=NN(2)
=ONTHEN
WAIT1SECS
=OFF
GOTOSTEPONE
ENDTIME
3)时钟同步脉冲信号通过DO输出由硬线送至相关继电器,经继电器隔离后分别
送至其他相关控制系统。
4.2其他成套控制系统的时钟同步校正
1)HoneyWellSM系统时钟同步[4]
①在系统控制器中组态1个DI点接收DCS触发脉冲信号,该DI点送至内部变量
clock02,这里选用芳烃联合装置SIS系统时钟同步案例,DCS触发时间为
01:00:00。
②在SM系统服务器上位机软件项目文件中组态中间变量TIME01点,TIME01读
取控制器中clock02值。
在项目文件组态中编写TIME01的脚本程序,该脚本调用服务器中1个批处理程
序,程序路径为D:。脚本代码如图1所示。
DCS时间为01:00:05输出触发脉冲,TIME01为“1”执行文件脚本调用批处理
程序,将上位机时间设置为01:00:05,从而完成DCS和系统上位机每天1次的时
钟校对。
批处理程序脚本如下:
@time1:00:05
@set/p
exit
③控制器组态中设置时钟源为上位机服务器,使得控制器、操作站的时钟统一为服
务器时钟。
这样就实现了DCS和整个SM系统的时钟同步。
2)TriconTS-3000系统时钟同步工作
①在控制器中组态一DI点,程序框图如图2所示。DI点为TSK261,接收DCS
的脉冲触发信号,这里选用重整-歧化联合装置ITCC系统时钟同步案例,DCS触
发时间为23:00:00。
功能块TR_CALENDER读取控制器当前的日期、时间并送至相关变量[2]。时间变
量包括:小时变量为HourForSyn;分钟变量为MinuteForSyn;秒钟变量为
SecondForSyn。并将日期变量送至功能块TIME_SYN。
功能块TIME_SYN计算出控制器当前时间与DCS触发时间(23:00:00)的差值,
并送至功能块TIME_SET,当DCS时间为23:00:00时输出触发脉冲,TSK261为
“1”,功能块TIME_SET校正Tricon控制器时间为23:00:00,从而完成控制器
和DCS每天1次的时钟校对。
②TriconTS-3000系统的上位机软件平台都为INTOUCH,项目文件的标记名字
典中的变量HourForSyn、MinuteForSyn、SecondForSyn关联控制器中的3个
时间变量。
③上位机的时间校对:INTOUCH项目文件的应用程序脚本中编写相关程序,实现
当Tricon控制器时间为10:15:00时,将上位机时间设置为10:15:00,从而完成
上位机和系统控制器每天1次的时钟校对。这样就实现了DCS和整个TriconTS-
3000系统的时钟同步。相关应用程序脚本如下:
IFHourForSyn==10ANDMinuteForSyn==15ANDSecondForSyn==0
THEN
StartApp"CMD/CDATE"+StringFromIntg(YearForSyn,10)+
"-"+StringFromIntg(MonthForSyn,10)+"-"+StringFromIntg(DayForSyn,10);
StartApp"CMD/CTIME"+StringFromIntg(HourForSyn,10)+
":"+StringFromIntg(MinuteForSyn,10)+":"+StringFromIntg
(SecondForSyn,10);
ENDIF;
3)SiemensS7-400H系统时钟同步
①在S7-400H控制器中组态一DI点I8.4,当DCS时间为23:00:00时输出触发
脉冲,I8.4为“1”,执行功能块FC4,将控制器时间设置为23:00:00;并将C10
的CV值加1送至MW98(用于上位机的时钟同步)。S7-400H的功能块FC4完成
控制器和DCS每天1次的时钟校对,其程序代码如下:
程序段1:CALL"READ_CLK"SFC1--ReadSystemClock
RET_VAL:=MW50
CDT:=#Date_time
程序段2:LAR1P##Date_time
L#Hour
TB[AR1,P#3.0]
L#Minutes
TB[AR1,P#4.0]
L#Second
TB[AR1,P#5.0]
CALL"SET_CLK"SFC0--SetSystemClock
PDT:=#Date_time
RET_VAL:=MW51
②在系统上位机软件WINCC项目文件的全局脚本编写相关程序,程序运行触发变
量为sys_time,sys_time相关联控制器中的MW98,为M99.0。同样,当DCS
时间为23:00:00时,即当I8.4发生上跳变时,M99.0发生跳变,sys_time发生
变化,上位机项目文件执行脚本程序将时间设置为23:00:00,完成上位机和DCS
时间校对。脚本程序如下:
#include"apdefap.h"
intgscAction(void)
{#pragmacode("");
voidGetLocalTime(SYSTEMTIME*lpst);
BOOLWINAPISetSystemTime(SYSTEMTIME*lpst);
#pragmacode();
SYSTEMTIMEtime;
GetLocalTime(&time);
=23;
e=0;
d=0;
seconds=200;
SetSystemTime(&time);
return0;}
这样就实现了DCS和整个SiemensS7-400H系统的时钟同步。
芳烃生产装置的控制系统时钟同步技术攻关解决了控制系统间的时间不统一的问题,
优化各装置的监控与操作,保证了生产装置的安全稳定运行。装置DCS和其他控
制系统的时钟同步信号线采用硬线连接,触发信号几乎无滞后。控制系统的网络信
号传输会有滞后,通过微小调整各控制器的时钟校正时间可以解决这个问题,从而
使控制系统间的时间差为毫秒级。
ABB发布“新阶段”战略第三期部署
ABB集团发布了“新阶段”战略的第三期部署。其核心内容包括:打造四个以市
场为导向的事业部,保留电网业务并继续推动转型;充分挖掘ABB在数字化领域的
增长潜力;加速推进卓越运营;加强ABB品牌建设。
宜科智慧工厂解决方案推广活动
宜科公司的“物联驱动·智驭变革——宜科智慧工厂解决方案推广活动”将走进上
海。活动中将展现包括宜科生产执行系统(MES)、基于宜科云的IoT集成开发解决
方案、ElcoPad移动智能终端、基于VPN的远程数据传输解决方案DataBox等
智慧工厂的核心技术产品及解决方案。
菲尼克斯电气EduNet2016亚洲年会成功召开
菲尼克斯电气全球自动化教育联盟EduNet2016亚洲年会在新疆职业大学成功召
开,来自国内18所成员院校、新加坡、德国相关院校的近60位嘉宾出席会议。
【相关文献】
[1]TriStation1131FunctionsLibraryGeneralInformation[M].Triconex,2005.
[2]TriStation1131ControlFunctionsLibrary[M].Triconex,2005.
[3]ControlLanguageProcessManagerReference[M].Honeywell,1996.
[4]SafetyManagerSoftwareReference[M].Honeywell,2008.
[5]沈佳蓉.分布式控制系统CPU的时间同步系统[D].上海:中科院上海应用物理研究所,2006.