暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

1秒UPS的设置方法与参数保存

Lizzy的倍福园地 2021-07-13
3836

在工作中总结,在朋友圈分享,

做最接地气的公众号


简介

介绍倍福含1秒UPS(SUPS)的CX控制器在使用UPS进行参数保存时的相关设置,程序写法,注意事项等。

关键词

1秒UPS

正文 

三、含SUPS的主要CX产品
  1. CX5000系列,

    主要为CX5010CX5020

  2. CX5100系列,

    主要为CX5120CX5130CX5140

  3. CX8000系列

包括 CX8010~CX8095
由于含有SUPS的控制器产品颇多,设置方式比较类似,而CX5000系列由于性价比不高,渐渐淡出,因此本文主要按照介绍CX5120为主线介绍,其他两个系列在和CX5120不同的地方单独指出。

四、SUPS的主要设置

使用1UPS必须先要配置设置,而后要进行程序控制,任何一个地方设置不当或者程序不当,都会造成参数保存出现异常。主要设置有:

1.BIOS的设置
2.操作系统的设置
3.System manager的设置

PLC程序部分需要注意的地方:

1.库的引用
2.功能块的使用与UPS模式
五、BIOS的设置
BIOS中开启SUPS功能,默认是开启的,正常情况下不需要设置,当出现问题时可以检查BIOS设置是否正确,步骤如下:

1.给控制器连接显示器和键鼠(BIOS无法远程桌面显示)

2.开机按delete,进入如下画面

3.选到Power controller Option 

确保红框中已经勾上即可,额外的其他选项说明如下:

Hold USB:是否把UPS的电给USB

Delay:开机后UPS的延迟充电时间,注意断电后UPS是立刻开启的无法延时

       此外最下方还有一些UPS信息:

       Battery Load LevelUPS当前电量百分比

       Power fail counter:突然断电的次数,即是外部断电的次数

六、Win7Win10系统的设置
CX控制器有WES7系统(有时也简称win7系统)和CE系统两种。CE系统不用做任何操作系统的设置,Win7Win10则要注意磁盘写保护的功能,因为倍福CX的掉电参数保存机制是写一个文件在硬盘的某个路径下,一旦开启写保护,这个文件无法保存,也就是参数会恢复开机状态。

1.EWF保护系统

EWFEnhanced Write Filter,增强型写保护,EWF系统默认是关闭的,如果在程序需要在线保持掉电保持参数的话,这个功能需要保持关闭状态。
注意:改变EWF的状态后,需要重启生效,所以每次改之后都需要重启一下。EWF开启时,开机后所有程序数据都会一次性转移到RAM上,不会对ROM进行任何写操作,因此断电后ROM数据完全不变。此外这样做可以大大提高存储卡的使用寿命。 

2.FBWF

FBWFFile Based Write Filter,基于文件的写保护,FBWF默认也是关闭的,可以不用打开。如果打开之后还需要保存掉电数据,需要将掉电数据设置为例外,如下图所示,注意红圈的设置即可。 

  

3.UWF

UWF是微软提供的写保护工具,仅与Win10打包提供,倍福版UWF操作界面如下,设置方法可以咨询倍福技术人员。各项参数保持默认即可,确保掉电保持参数功能正常。

七、Systemmanager的设置

这个设置比较简单,勾上PLC设置中对应的boot程序和清除无效的Persistent数据,不过不清除问题也不大,因为当系统检测到数据文件无效时会自动使用备份的数据文件。并且在程序保存数据时会覆盖掉原始的掉电数据文件。 

八、1UPS保存数据的机制

1.含有1UPS控制器的断电与再启动步骤 

可以看到有SUPS的控制器在断电后会保存数据,并且执行快速关机,这种关机比正常关机要快很多。并且在开机后第一步会加载数据。其具有以下特点:

2.1UPS本质是个电容,使用时间长了,电容的容量会减小,断电后能持续的时间也缩短;正常一般都在3秒以上

3.最多只能存1MB的数据

4.SUPS不给Kbus或者Ebus以及以太网口或者其他总线供电

5.TC2中,掉电数据文件存在C:\TwinCAT\Boot\中,TCPLC_T_x.wbp是掉电数据文件,TCPLC_T_x.wb~ 是掉电数据备份文件,一般不需要进行改名操作;

6.TC3中,掉电数据文件存在C:\TwinCAT\3.1\Boot\Plc中,Port_85x.bootdata是掉电数据文件,Port_85x.bootdata-old 是掉电数据备份文件; 

九、PLC程序库和对应功能块
不同PLC需要使用不同的库文件:

1.CX5120需要调用TCSUPS_CX51x0.lib,调用功能块为FB_S_UPS_CX51x0

2.CX5020需要调用TCSUPS.lib,调用功能块为FB_S_UPS

3.CX8090需要调用TcSystemCX80xx.lib,调用功能块为FB_S_UPS_CX80xx

库文件调用错了,功能块和实物不匹配,都会导致掉电保存功能失效,大量的工程师使用错了库文件和功能块,导致UPS不起作用。
 十、编写程序
程序的两个核心功能:设置UPS的工作模式,获取UPS的在线状态。
虽然3种不同型号的控制器硬件不同,但这个功能块的接口是相同的,只是后台驱动的硬件不同而已,这里选取CX51x0做说明。

1.UPS状态获取

调用UPS的库文件后,会自动获取一个全局变量(定义在库文件内部的)如下:

eGlobalSUpsState: E_S_UPS_State; (*current ups state*)当前的UPS状态,可以在程序中直接使用,各种状态说明如下:

1) eSUPS_PowerOK:外部供电正常

2) eSUPS_PowerFailure:外部断电(这种状态只会持续1PLC周期)

3) eSUPS_WritePersistentData:在写掉电保持参数,(详见第八章讲叙的UPS断电和启动过程)

4) eSUPS_QuickShutdown:系统开始快速关机

5) eSUPS_WaitForRecover:等待外部供电恢复

6) eSUPS_WaitForPowerOFF:等待UPS电量耗尽关机

2. UPS工作模式的设置

调用FB_S_UPS_CX51x0功能块,设置相关的模式 

1) sNetID:本地控制可以为空

2) iPLCportTC2的默认是801

3) iUPSPortCX51x0系列是16#588CX50x0CX8000系列是16#4A8

4) tTimeout:可以不填

5) eUpsMode: 核心参数,这个参数有以下4个模式:

a) eSUPS_WrPersistData_Shutdown:保存数据,然后执行快速重启,注意,只有win7win10的系统才选择此项,如果CE系统选择此项后会触发重启(CE系统没有关机),重启之后的掉电可能造成数据丢失,功亏一篑!
b)  eSUPS_WrPersistData_NoShutdown模式,保存数据后,不关机。只有CE系统选择这个选项,保存完数据后,等待UPS电量耗尽关机。
c)  eSUPS_ImmediateShutdown模式,立即关机,不保存数据。
d)  eSUPS_CheckPowerStatus模式,只检查状态,不保存数据和关机。
6) ePersistentMode

SPDM_2PASS

7) tRecoverTime: 二次启动时间,当外部断电后,UPS激活,即使此时供电恢复了,UPS还是会将系统关机。从供电恢复后过tRecoverTime之后,系统自动开机。因此这个时间最好比UPS撑住的时间要长一些,建议设置为10~30秒,即外部断后又恢复了,PLC存完数据再关机,,然后再过过x秒后系统再重启,而不是立即重启,或者不重启。

十一、常见问题

1. 是否有必要在程序中循环写入Persisternt数据,如下图所示: 

答:没必要循环写入,可以增加一个手动写一次的触发。当外部改变参数值时,手动触发一次。正常来说这个功能块是供没有1UPS的控制器保存Persistent数据时使用,有1UPS的控制器不需要使用这个功能块,断电时系统会自动保存(可以见第8段关机流程)。


喜欢本文?识别二维码,可关注公众号

文章转载自Lizzy的倍福园地,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论