CN117348590A - 基于多线程的plc通道信号自动标定检测方法 - Google Patents

基于多线程的plc通道信号自动标定检测方法 Download PDF

Info

Publication number
CN117348590A
CN117348590A CN202311372582.1A CN202311372582A CN117348590A CN 117348590 A CN117348590 A CN 117348590A CN 202311372582 A CN202311372582 A CN 202311372582A CN 117348590 A CN117348590 A CN 117348590A
Authority
CN
China
Prior art keywords
calibration
multithreading
detection method
plc channel
thread
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311372582.1A
Other languages
English (en)
Inventor
李沁贇
章晓春
虞鸿江
祝娟
钱国飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Yuanchuang Intelligent Control Technology Co ltd
Original Assignee
Zhejiang Yuanchuang Intelligent Control Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Yuanchuang Intelligent Control Technology Co ltd filed Critical Zhejiang Yuanchuang Intelligent Control Technology Co ltd
Priority to CN202311372582.1A priority Critical patent/CN117348590A/zh
Publication of CN117348590A publication Critical patent/CN117348590A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0256Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults injecting test signals and analyzing monitored process response, e.g. injecting the test signal while interrupting the normal operation of the monitored system; superimposing the test signal onto a control signal during normal operation of the monitored system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24065Real time diagnostics
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Measurement Of Resistance Or Impedance (AREA)

Abstract

本发明公开了一种基于多线程的PLC通道信号自动标定检测方法,包括以下步骤:S1、在上位机软件中创建多线程标定检测单元;S2、将待检测的多台PLC同时接入上位机软件,对PLC的输入输出模块进行数据采集与预处理,得到预处理数据;S3、通过多线程标定检测单元对预处理数据进行标定计算;S4、对结果进行测试。本发明具有能够有效提高效率的特点。

Description

基于多线程的PLC通道信号自动标定检测方法
技术领域
本发明涉及一种PLC通道信号标定方法,特别是一种基于多线程的PLC通道信号自动标定检测方法。
背景技术
随着生产自动化的不断发展,PLC在工业生产中扮演着越来越重要的角色。而PLC通道信号的自动标定检测则成为了一个重要的问题,因为在实际应用中,PLC通道信号往往存在幅度、相位、噪声等多种因素影响,导致信号精度下降或者甚至无法正常工作。而一般PLC的标定检测,大多采用人工或者单台进行标定检测的方案进行生成,生产的效率较低,假设一台PLC标定检测所需的时间为5分钟,一个小时最多12台,这种生产方式势必导致生产效率低下,如果使用人工的话人工成本也会偏高,生产效率低下势必导致供不应求,从而导致效益降低。因此,现有的技术存在着效率较低的问题。
发明内容
本发明的目的在于,提供一种基于多线程的PLC通道信号自动标定检测方法。本发明具有能够有效提高效率的特点。
本发明的技术方案:基于多线程的PLC通道信号自动标定检测方法,包括以下步骤:
S1、在上位机软件中创建多线程标定检测单元;
S2、将待检测的多台PLC同时接入上位机软件,对PLC的输入输出模块进行数据采集与预处理,得到预处理数据;
S3、通过多线程标定检测单元对预处理数据进行标定计算;
S4、对结果进行测试。
前述的基于多线程的PLC通道信号自动标定检测方法中,步骤S1中,多线程标定检测模块使用C#语言的多线程方法,通过C#语言中的包含对象的线程创建方法,将要传送给线程函数的信息封装成一个对象,然后调用Thread类的构造函数来创建标定检测线程。
前述的基于多线程的PLC通道信号自动标定检测方法中,步骤S2中,上位机软件采集数据后,对数据依次进行信号滤波和去噪处理。
前述的基于多线程的PLC通道信号自动标定检测方法中,步骤S3中,标定过程包括模拟量输入的标定和模拟量输出的标定。
前述的基于多线程的PLC通道信号自动标定检测方法中,模拟量输入标定的具体过程为:先计算标定曲线中0欧姆对应的采样值Y0和2000欧姆对应的采样值Y2000,并测量激励电流作用在1000欧姆精密电阻上时的采样值Y1000,把Y0、Y1000和Y2000作为标定参数存储到系统中;
当环境温度变化到T℃时,每过10个完整采样周期进行一次1000欧姆的采样得到采样值Yt1000,根据等比公式可以确定:
因此,Yt0=Yt1000*Y0/Y1000;Yt2000=Yt1000*Y2000/Y1000;
根据Yt0和Yt2000得到模拟量输入标定曲线。
前述的基于多线程的PLC通道信号自动标定检测方法中,模拟量输出标定的过程为:
通过写入寄存器2个使输出分别接近0mA和20mA的值Xcode1和Xcode2,得到(Xcode1,Y1)和(Xcode2,Y2)两个点;利用线性关系在上位机软件计算出(Zcode,0)和(Scode,20),根据(Zcode,0)和(Scode,20)得到模拟量输出标定曲线。
前述的基于多线程的PLC通道信号自动标定检测方法中,测试采用五点测试法,将量程分为平均五个点进行测试,若测试结果都在精度范围内,则该PLC的标定测试过程结束。
与现有技术相比,本发明通过在上位机软件设置多线程方式,在多个线程中同时对多台PLC进行标定检测,大大提高了PLC的生产效率,具有高效、精准、快速等优势,效率提高了几倍甚至几十倍。与此同时,本申请还采用特定的标定方法,使得PLC的标定检测更加的精准和高效。综上所述,本发明具有能够有效提高效率的特点。
附图说明
图1是模拟量输入标定曲线的示意图;
图2是模拟量输出标定曲线的示意图。
具体实施方式
下面结合实施例对本发明作进一步的说明,但并不作为对本发明限制的依据。
实施例。基于多线程的PLC通道信号自动标定检测方法,包括以下步骤:
1.数据采集与预处理
数据采集是PLC通道信号自动标定检测的关键步骤,需要通过合适的传感器对输入输出模块的信号进行采集。在采集到数据后,还需要进行数据预处理,包括信号滤波、去噪等操作,以保证后续算法的准确性和稳定性,数据的预处理在本方案中起到重要作用,因为数据的预处理可以过滤掉数据中的尖峰和毛刺,使得到的数据能正确反应信号源的值,只有信号源的输入值正确且稳定,才能保证对后续计算没有影响。
2.多线程并行计算
基于多线程的PLC通道信号自动标定检测方案采用软件多线程并行计算的方式,将每个PLC的标定过程分别放到不同的线程中计算,以提高计算效率。同时,多线程并行计算也能够避免单线程计算过程中的阻塞现象,保证算法的实时性和准确性。理论上可以接任意个数的PLC,该方案的上限取决于电脑和网络的性能。
本方案中使用了C#语言的多线程方法,通过C#语言中的包含对象的线程创建方法(ParameterizedThreadStart),将要传送给线程函数的信息封装成一个对象,然后调用Thread类的构造函数来创建标定检测线程,即通过Thread thread=new Thread(newParameterizedThreadStart(CalibrateThread));的方法来创建线程,并且设置线程的属性thread.IsBackground=true;将线程设置为后台运行,通过thread.Start(ip_Dic);来启动线程。如果点击暂停,则通过threads.Suspend();方法来暂停线程;如果点击继续,则通过threads.Resume();方法来重新启动线程;如果点击结束,则通过thread.Abort();方法来终止线程。
3.标定计算
标定计算主要通过选定两个参考点,快速计算出PLC标定曲线,提高标定精度和效率,以使得PLC通道信号能够精确地识别输入信号或输出设定的信号值。
标定主要分为了对AI(模拟量输入)和AO(模拟量输出)的标定,数字量(DI/DO)不需要进行标定。标定用通俗的话来说就是把与标准有差异的数据通过标定值进行补偿,校准零点和满量程点,使其达到标准状态。
包括:
温度补偿算法
本系统在测量外部电阻信号时采用ADC芯片内部输出激励电流来测量,考虑到测量电路上电阻分量随时间和环境温度的变化,需要对标定值进行补偿。
如下图2所示,下部的线条是常温下进行标定操作时的电阻与采样值对应关系曲线,在工厂生产过程中,会计算标定曲线中0欧姆对应的采样值Y0和2000欧姆对应的采样值Y2000,并测量激励电流作用在1000欧姆精密电阻上时的采样值Y1000,生产标定中会把Y0、Y1000和Y2000作为标定参数存储到系统的Flash中。当环境温度变化到T℃时,实际的采样值与电阻值对应关系曲线如上部的线条所示,温度补偿需要做的就是计算T℃下的0欧姆采样值Yt0和2000欧姆采样值Yt2000,然后根据Yt0和Yt2000计算实际采样值对应的电阻值。
在处理电阻采集信号时,每过10个完整采样周期(6路UI轮询完成一次采样为一个完整采用周期),程序进行一次内部1000欧姆的采样值Yt1000,根据等比公式可以确定:
因此,Yt0=Yt1000*Y0/Y1000;Yt2000=Yt1000*Y2000/Y1000。
AO输出标定
AO驱动输出是通过改变输出硬件电路输入端PWM波形的占空比来改变输出电流和电压的,PWM波形占空比一共设置了30000阶,该30000值是由以下过程计算得出的。
PWM波形的频率设为400Hz左右即板卡设置波形频率f为400Hz,定时器AHB时钟为96MHz的主时钟MAINCLK,定时器分频器为PR,PWM单周期分辨率为PWMSTEP,可知各个量有如下关系:
理论上PWMSTEP取值越大(也就是PR越小),PWM波形分辨率越高,输出过渡越平滑。由于标定过程中对PWMSTEP值的传递使用的为有符号16位数值(因为可能出现输出零点标定码小于零,所以使用有符号数),所以PWMSTEP理论最大值为32767。PR取值为7,此时PWMSTEP值为30000,所以单周期PWM波分为30000阶。
在PWM波为30000阶的情况下,按0~20mA计算,输出的分辨率为0.00033mA;设计指标要求分辨率为12位,即0.00033mA<0.0049mA,满足设计指标。
写入匹配寄存器的值为0-30000,对应的PWM波的占空比为0%-100%。
标定过程是找出PWM波形占空比和输出电流值之间的关系的过程。标定数据保存的是量程零点和量程点(分别是0mA和20mA)的寄存器值。
如下图2所示,匹配寄存器(PWM占空比)与输出值之间呈固定的线性关系。标定过程中通过写入寄存器2个使输出分别接近0mA和20mA的值Xcode1和Xcode2,得到(Xcode1,Y1),(Xcode2,Y2)两个点,利用线性关系在上位机软件计算出(Zcode,0)和(Scode,20),再将Zcode和Scode下发到板卡。板卡最后只需知道要输出的伏值,便可通过标定码值驱动端口输出相应伏值。
4.结果反馈
完成标定后,还需要将结果反馈给用户以进行测试。测试采用五点测试法,将量程分为平均五个点进行测试,若测试结果都在精度范围内,则该PLC的标定测试过程结束。

Claims (7)

1.基于多线程的PLC通道信号自动标定检测方法,其特征在于,包括以下步骤:
S1、在上位机软件中创建多线程标定检测单元;
S2、将待检测的多台PLC同时接入上位机软件,对PLC的输入输出模块进行数据采集与预处理,得到预处理数据;
S3、通过多线程标定检测单元对预处理数据进行标定计算;
S4、对结果进行测试。
2.根据权利要求1所述的基于多线程的PLC通道信号自动标定检测方法,其特征在于,步骤S1中,多线程标定检测模块使用C#语言的多线程方法,通过C#语言中的包含对象的线程创建方法,将要传送给线程函数的信息封装成一个对象,然后调用Thread类的构造函数来创建标定检测线程。
3.根据权利要求1所述的基于多线程的PLC通道信号自动标定检测方法,其特征在于,步骤S2中,上位机软件采集数据后,对数据依次进行信号滤波和去噪处理。
4.根据权利要求1所述的基于多线程的PLC通道信号自动标定检测方法,其特征在于,步骤S3中,标定过程包括模拟量输入的标定和模拟量输出的标定。
5.根据权利要求4所述的基于多线程的PLC通道信号自动标定检测方法,其特征在于,模拟量输入标定的具体过程为:先计算标定曲线中0欧姆对应的采样值Y0和2000欧姆对应的采样值Y2000,并测量激励电流作用在1000欧姆精密电阻上时的采样值Y1000,把Y0、Y1000和Y2000作为标定参数存储到系统中;
当环境温度变化到T℃时,每过10个完整采样周期进行一次1000欧姆的采样得到采样值Yt1000,根据等比公式可以确定:
因此,Yt0=Yt1000*Y0/Y1000;Yt2000=Yt1000*Y2000/Y1000;
根据Yt0和Yt2000得到模拟量输入标定曲线。
6.根据权利要求4所述的基于多线程的PLC通道信号自动标定检测方法,其特征在于,模拟量输出标定的过程为:
通过写入寄存器2个使输出分别接近0mA和20mA的值Xcode1和Xcode2,得到(Xcode1,Y1)和(Xcode2,Y2)两个点;利用线性关系在上位机软件计算出(Zcode,0)和(Scode,20),根据(Zcode,0)和(Scode,20)得到模拟量输出标定曲线。
7.根据权利要求4所述的基于多线程的PLC通道信号自动标定检测方法,其特征在于,测试采用五点测试法,将量程分为平均五个点进行测试,若测试结果都在精度范围内,则该PLC的标定测试过程结束。
CN202311372582.1A 2023-10-23 2023-10-23 基于多线程的plc通道信号自动标定检测方法 Pending CN117348590A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311372582.1A CN117348590A (zh) 2023-10-23 2023-10-23 基于多线程的plc通道信号自动标定检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311372582.1A CN117348590A (zh) 2023-10-23 2023-10-23 基于多线程的plc通道信号自动标定检测方法

Publications (1)

Publication Number Publication Date
CN117348590A true CN117348590A (zh) 2024-01-05

Family

ID=89362671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311372582.1A Pending CN117348590A (zh) 2023-10-23 2023-10-23 基于多线程的plc通道信号自动标定检测方法

Country Status (1)

Country Link
CN (1) CN117348590A (zh)

Similar Documents

Publication Publication Date Title
CN101709983B (zh) 正余弦编码器在线实际误差补偿系统
CN108089141B (zh) 一种基于分流器的电流测量装置的误差修正方法及装置
CN1210571C (zh) 在非易失性存储器中存储引线校准数据的基于事件的测试系统
CN106526332B (zh) 一种检测电容触摸屏扫描线上电容的系统及方法
CN107101607B (zh) 电机旋转角度测量设备及方法
EP0534583A2 (en) Convertible energy meter
CN103033738A (zh) 一种电路板全自动测试系统
CN201795812U (zh) 正余弦编码器在线实际误差补偿系统
CN109884511A (zh) 一种磁性传感器芯片的测试方法及系统
CN112685239A (zh) 一种针对多核dsp+fpga构架处理电路的自动测试系统及方法
CN205720565U (zh) 一种用于测试信号调理芯片的批量测试板
CN117348590A (zh) 基于多线程的plc通道信号自动标定检测方法
CN115308664B (zh) 霍尔电流传感器的校准装置及方法
CN1234119A (zh) 用于电表中振荡器补偿的方法和装置
CN115373372A (zh) 一种模拟量测量模块的校准方法
CN104236606B (zh) 基准信号发生装置和基准信号发生系统
CN100427958C (zh) 抖动测量装置与测量方法
US10866079B2 (en) Position sensing device
CN112187263B (zh) 针对电阻分压采样技术的ad采样值补偿系数迭代方法及系统
CN114296019A (zh) 一种直流电流传感器温度补偿结构
CN103760436A (zh) 一种智能电子设备程控测试仪
CN104280098B (zh) 基于Labview的船舶液位传感器测试方法
LDC1612 LDC1612, LDC1614 Multi-Channel 28-Bit Inductance to Digital Converter (LDC) for Inductive Sensing
US10782339B2 (en) Method and test system for providing accurate analog signals
CN110727217A (zh) 一种基于LabVIEW和串口通讯的传感器数据采集方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination