压力变送器的正确校验方法
发布时间:2019-07-22 08:36
阅读次数:
次
分享到:
压力变送器真正的校准是需要用一台标准压力源输入变送器的。因为不使用标准器而调量程(LRV、URV)不是校准,忽略输入部分(输入变送器的压力)来进行输出调节(变送器的转换电路)不是正确的校准。再者压力、差压检测部件与A/D转换电路、电流输出的关系并不对等,校准的目的就是找准三者的变化关系。强调一点:只有对输入和输出(输入变送器的压力、A/D转换电路、环路电流输出电路)一齐调试,才称得上是真正意义上的校准。
一、准备工作
压力源通过胶皮管与自制接头相连接,关闭平衡阀门,并检查气路密封情况,然后把电流表(电压表)、手操器接入变送器输出电路中,通电预热后开始校准。我们知道不管什么型号的差压变送器,其正、负压室都有排气、排液阀或旋塞;这就为我们现场校准差压变送器提供了方便,也就是说不用拆除导压管就可校准差压变送器。对差压变送器进行校准时,先把三阀组的正、负阀门关闭,打开平衡阀门,然后旋松排气、排液阀或旋塞放空,然后用自制的接头来代替接正压室的排气、排液阀或旋塞;而负压室则保持旋松状态,使其通大气。
二、常规差压变送器的校准
先将阻尼调至零状态,先调零点,然后加满度压力调满量程,使输出为20mA,在现场调校讲的是快,在此介绍零点、量程的快速调校法。调零点时对满度几乎没有影响,但调满度时对零点有影响,在不带迁移时其影响约为量程调整量的1/5,即量程向上调整1mA,零点将向上移动约0.2mA,反之亦然。
三、智能差压变送器的校准
用上述的常规方法对智能变送器进行校准是不行的,因为这是由HART变送器结构原理所决定了。因为智能变送器在输入压力源和产生的4-20mA电流信号之间,除机械、电路外,还有微处理芯片对输入数据的运算工作。因此调校与常规方法有所区别。
实际上厂家对智能变送器的校准也是有说明的,如ABB的变送器,对校准就有:“设定量程”、“重定量程”、“微调”之分。其中“设定量程”操作主要是通过LRV.URV的数字设定来完成配置工作,而“重定量程”操作则要求将变送器连接到标准压力源上,通过一系列指令引导,由变送器直接感应实际压力并对数值进行设置。而量程的初始、最终设置直接取决于真实的压力输入值。但要看到尽管变送器的模拟输出与所用的输入值关系正确,但过程值的数字读数显示的数值会略有不同,这可通过微调项来进行校准。由于各部分既要单独调校又必需要联调,因此实际校准时可按以下步骤进行:
1.先做一次4-20mA微调,用以校正变送器内部的D/A转换器,由于其不涉及传感部件,无需外部压力信号源。
2.再做一次全程微调,使4-20mA、数字读数与实际施加的压力信号相吻合,因此需要压力信号源。
3.最后做重定量程,通过调整使模拟输出4-20mA与外加的压力信号源相吻合,其作用与变送器外壳上的调零(Z)、调量程(R)开关的作用完全相同。
''标签解析异常!
Timeout 时间已到。在操作完成之前超时时间已过或服务器未响应。
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
在 System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
在 System.Data.SqlClient.TdsParserStateObject.ReadSniSyncOverAsync()
在 System.Data.SqlClient.TdsParserStateObject.TryReadNetworkPacket()
在 System.Data.SqlClient.TdsParserStateObject.TryPrepareBuffer()
在 System.Data.SqlClient.TdsParserStateObject.TryReadByteArray(Byte[] buff, Int32 offset, Int32 len, Int32& totalRead)
在 System.Data.SqlClient.TdsParserStateObject.TryReadString(Int32 length, String& value)
在 System.Data.SqlClient.TdsParser.TryReadSqlStringValue(SqlBuffer value, Byte type, Int32 length, Encoding encoding, Boolean isPlp, TdsParserStateObject stateObj)
在 System.Data.SqlClient.TdsParser.TryReadSqlValue(SqlBuffer value, SqlMetaDataPriv md, Int32 length, TdsParserStateObject stateObj)
在 System.Data.SqlClient.SqlDataReader.TryReadColumnInternal(Int32 i, Boolean readHeaderOnly)
在 System.Data.SqlClient.SqlDataReader.TryReadColumn(Int32 i, Boolean setTimeout, Boolean allowPartiallyReadColumn)
在 System.Data.SqlClient.SqlDataReader.GetValues(Object[] values)
在 System.Data.ProviderBase.DataReaderContainer.CommonLanguageSubsetDataReader.GetValues(Object[] values)
在 System.Data.ProviderBase.SchemaMapping.LoadDataRow()
在 System.Data.Common.DataAdapter.FillLoadDataRow(SchemaMapping mapping)
在 System.Data.Common.DataAdapter.FillFromReader(DataSet dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)
在 System.Data.Common.DataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
在 Whir.Repository.Database.Query(String sql, Object[] args)
在 Whir.Label.Dynamic.Content.E9MnLWGZP()
在 Whir.Label.Dynamic.Content.Render(HtmlTextWriter output)
''标签解析异常!
Timeout 时间已到。在操作完成之前超时时间已过或服务器未响应。
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
在 System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
在 System.Data.SqlClient.TdsParserStateObject.ReadSniSyncOverAsync()
在 System.Data.SqlClient.TdsParserStateObject.TryReadNetworkPacket()
在 System.Data.SqlClient.TdsParserStateObject.TryPrepareBuffer()
在 System.Data.SqlClient.TdsParserStateObject.TryReadByteArray(Byte[] buff, Int32 offset, Int32 len, Int32& totalRead)
在 System.Data.SqlClient.TdsParserStateObject.TryReadString(Int32 length, String& value)
在 System.Data.SqlClient.TdsParser.TryReadSqlStringValue(SqlBuffer value, Byte type, Int32 length, Encoding encoding, Boolean isPlp, TdsParserStateObject stateObj)
在 System.Data.SqlClient.TdsParser.TryReadSqlValue(SqlBuffer value, SqlMetaDataPriv md, Int32 length, TdsParserStateObject stateObj)
在 System.Data.SqlClient.SqlDataReader.TryReadColumnInternal(Int32 i, Boolean readHeaderOnly)
在 System.Data.SqlClient.SqlDataReader.TryReadColumn(Int32 i, Boolean setTimeout, Boolean allowPartiallyReadColumn)
在 System.Data.SqlClient.SqlDataReader.GetValues(Object[] values)
在 System.Data.ProviderBase.DataReaderContainer.CommonLanguageSubsetDataReader.GetValues(Object[] values)
在 System.Data.ProviderBase.SchemaMapping.LoadDataRow()
在 System.Data.Common.DataAdapter.FillLoadDataRow(SchemaMapping mapping)
在 System.Data.Common.DataAdapter.FillFromReader(DataSet dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)
在 System.Data.Common.DataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
在 Whir.Repository.Database.Query(String sql, Object[] args)
在 Whir.Label.Dynamic.Content.E9MnLWGZP()
在 Whir.Label.Dynamic.Content.Render(HtmlTextWriter output)