CN103336458A - 采集时间控制模式下的多线程数据采集系统同步控制方法 - Google Patents
采集时间控制模式下的多线程数据采集系统同步控制方法 Download PDFInfo
- Publication number
- CN103336458A CN103336458A CN2013101789871A CN201310178987A CN103336458A CN 103336458 A CN103336458 A CN 103336458A CN 2013101789871 A CN2013101789871 A CN 2013101789871A CN 201310178987 A CN201310178987 A CN 201310178987A CN 103336458 A CN103336458 A CN 103336458A
- Authority
- CN
- China
- Prior art keywords
- thread
- data acquisition
- control signal
- acquisition
- data
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000008569 process Effects 0.000 claims description 9
- 238000002679 ablation Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000013480 data collection Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 230000000149 penetrating effect Effects 0.000 abstract description 7
- 238000001514 detection method Methods 0.000 abstract description 3
- 230000003993 interaction Effects 0.000 abstract description 3
- 238000005070 sampling Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- JEIPFZHSYJVQDO-UHFFFAOYSA-N ferric oxide Chemical compound O=[Fe]O[Fe]=O JEIPFZHSYJVQDO-UHFFFAOYSA-N 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Landscapes
- Radar Systems Or Details Thereof (AREA)
Abstract
本发明涉及采集时间控制模式下的多线程数据采集系统同步控制方法,属于探地雷达的探测技术领域,本方法包括:建立三个时间控制变量(时、分、秒)作为预设的采集时间并输入计时器中,计时结果与其它两个控制变量一起作为独立线程间的信息交互载体并进行和布尔运算,其结果作为不同线程的同步控制信号;通过对控制变量的赋值和相应的判据函数则实现了该模式下多线程的同步控制;此外,写入线程预置的判据函数则实现了对所有采集数据的存储。本发明基于计算机控制理论,实现了探地雷达多线程采集系统的控制功能。
Description
技术领域
本发明属于探地雷达技术的工程探测领域,特别涉及一种按键控制模式下的探地雷达多线程数据采集系统中多个相互独立线程间的信息交互和同步控制方法,实现了采集系统的控制功能。
背景技术
探地雷达(GPR)是一种快速、高效、无损探测的物探方法。传统的探地雷达设备的数据采集系统通常采用等效采样方式,这种采样方法采样速度低(每秒发射和接收的脉冲数仅为50),对硬件要求也比较低,单一线程即可完成采样工作。随着雷达快速探测需求的增加,单一线程已无法满足高采样速率(每秒发射和接收的脉冲数1×105个以上,采样率可达8GSamples/s以上)和高数据量存储(每秒钟要存储数据量达1吉以上)的要求,所以多线程数据采集系统成为一个发展方向。
若是用多个线程来协同完成探地数据采集中不同的存取任务(任务包括雷达数据采集,头文件数据采集和数据写入),其优点是可以加快数据存取速度,大大提高数据采集系统的整体性能。但对多线程数据采集系统来说,最重要的难题则是如何实现多个相互独立线程间的信息交互和同步控制。
发明内容
本发明的目的是为解决多线程采集系统中的同步控制难题,提出一种基于按键控制模式的多线程数据采集系统同步控制方法,本发明基于计算机控制理论,并利用计算机实现了探地雷达多线程采集系统的同步控制功能。
本发明方法用多个线程来完成探地数据采集中不同的存取任务,任务包括雷达数据采集,头文件数据采集和数据写入,多个线程在数据采集和写入过程中各自都以循环形式相互独立工作;所述数据采集和写入过程包括以下步骤:
1)在任意一个雷达数据采集线程中设置三个整型变量A、B、C,分别表示预设的采集时间:时、分、秒,用于控制雷达数据采集的时间;在所有线程中设置一个全局控制变量D,用于各线程间结束信息的传递;各个线程设置自身的局部控制变量Ei,i=1、2、…p,p为线程的个数(p的取值范围根据实现采样速率和PC机的CPU的数目而选择,一般取值范围为4-8),该局部变量表示其所在线程的运行正确与否;三种控制变量均有两个状态:“T”、“F”;
2)对所述雷达数据采集线程的整型变量A、B、C单位转化为以秒为单位的变量值Q,转化方法为:变量A乘以3600,变量B乘以60,变量A、B的两个乘积结果与C相加得到Q;另外,在该雷达数据采集线程中设置一个计时器,并将Q作为输入参数输入到该计时器中,计时器以数据采集开始时刻点为起始点,并记录采集的时间,如果记录的采集时间小于Q,则该线程输出控制信号S1为“F”,如果记录的采集时间大于Q,则该线程输出控制信号S1为“T”;
3)各线程中分别对所述控制信号S1、和变量D、Ei进行布尔“或”运算(BOO);所述BOO规则为:设置采集时间的雷达数据采集线程中,如果输入的S1、D、和Ei全部为“F”,则该雷达数据采集线程输出控制信号S2为“F”,如果输入的S1、D、和Ei至少有一个是“T”,则该雷达数据采集线程输出控制信号S2为“T”;其它雷达数据采集线程中,如果输入的D、和Ei全部为“F”,则该雷达数据采集线程输出控制信号S2j(j=1、2、…m-1,m为头文件采集线程的个数)为“F”,如果输入的D、和Ei至少有一个是“T”,则该雷达数据采集线程输出控制信号S2j为“T”;各头文件采集线程中,如果输入的D、和Ei全部为“F”,则该头文件采集线程输出控制信号S3q(q=1、2、…v,v为头文件采集线程的个数)为“F”,如果输入的D、和Ei至少有一个是“T”,则该头文件采集线程输出控制信号S3q为“T”;各数据写入线程中,如果输入的D、和Ei全部为“F”,则该数据写入线程输出控制信号S4k(k=1、2、…r,r为数据写入线程的个数)为“F”,如果输入的D、和Ei至少有一个是“T”,则该数据写入线程输出控制信号S4k为“T”;
4)各个线程输出的控制信号(S2、S2j、S3q或S4k)控制着各自循环进程(F1):如果控制信号为“F”则该线程继续运行,并将该控制信号赋值(AO)给全局控制变量D,重复步骤2);如果该线程输出控制信号为“T”,则将该控制信号赋值给全局控制变量D,同时对于雷达数据采集和头文件数据采集线程运行结束(End),对数据写入线程则转至步骤5);
所述数据写入线程还包括以下步骤:
5)检测各数据写入线程中的数据是否全部被写入硬盘(F2),如果检测结果显示该线程数据全部写入,则该写入线程运行结束(End),如果检测结果显示该线程数据没有全部写入,则该写入线程继续运行,重复步骤2),从而确保采集到的所有数据都被存储起来。
附图说明
图1为本发明的4线程数据采集系统的同步控制流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细描述,图1为本发明的4线程数据采集系统的同步控制流程图:
本实施例中用到的计算机CPU为4核I7处理器,雷达数据采样设备为AcqirisU1065A数字化仪,其实时采样率可达到8GSamples/s。头文件数据采样设备有测量轮编码器和QSB-M采集设备。多线程数据采集系统分为4个线程,多线程数据采集系统的同步控制流程如图1所示,4个线程在数据采集和写入过程中各自都以循环形式相互独立工作。其中雷达数据采集任务由线程1和线程2完成,头文件数据采集任务由线程3完成,数据写入任务由线程4完成。雷因Labview开发环境有其固有的语言优势,本实施例的控制方法是在Labview环境中开发设计的程序。Labview是美国国家仪器(NI)公司研制开发的图形化编程语言,由其开发出来的程序都称为VI。一个VI由3部分组成,程序前面板(FrontPanel)、框图程序(DiagramProgram)、图标/连接端口(Icon/Terminal)。其中,前面板是图形化用户界面,用于设置输入数值和观察输出量。框图程序是在后台用图形化编程语言编制的,每一个前面板都有一个框图程序与之对应。
本实施例所述数据采集和写入过程包括以下步骤:
1)在第一个雷达数据采集线程中设置三个整型变量A、B、C,分别表示预设的采集时间:时、分、秒,用于控制雷达数据采集的时间;在所有线程中设置一个全局控制变量D,用于各线程间结束信息的传递;各个线程设置自身的局部控制变量Ei,i=1、2、3、4,4为线程的个数,该局部变量表示其所在线程的运行正确与否;三种控制变量均有两个状态:“T”、“F”;
2)第一个雷达数据采集线程对整型变量A、B、C进行单位转化处理,转化为以秒为单位的变量值Q,转化方法为:变量A乘以3600,变量B乘以60,两个乘积结果与C相加即可得到Q;另外,在该雷达数据采集线程中设置一个计时器,并将Q作为输入参数输入到该计时器中,计时器以数据采集开始时刻点为起始点,并记录采集的时间,如果记录的采集时间小于Q,则该线程输出控制信号S1为“F”,如果记录的采集时间大于Q,则该线程输出控制信号S1为“T”;
3)各线程中分别对所述控制信号S1、和变量D、Ei进行布尔“或”运算(BOO);所述BOO规则为:第一个雷达数据采集线程中,如果输入的S1、D、和E1全部为“F”,则该雷达数据采集线程输出控制信号S2为“F”,如果输入的S1、D、和E1至少有一个是“T”,则该雷达数据采集线程输出控制信号S2为“T”;第二个雷达数据采集线程中,如果输入的D、和E2全部为“F”,则该雷达数据采集线程输出控制信号S21为“F”,如果输入的D、和E2至少有一个是“T”,则该雷达数据采集线程输出控制信号S21为“T”;头文件采集线程中,如果输入的D、和E3全部为“F”,则该头文件采集线程输出控制信号S31为“F”,如果输入的D、和E3至少有一个是“T”,则该头文件采集线程输出控制信号S31为“T”;数据写入线程中,如果输入的D、和E4全部为“F”,则该数据写入线程输出控制信号S41为“F”,如果输入的D、和E4至少有一个是“T”,则该数据写入线程输出控制信号S41为“T”;
4)各个线程输出的控制信号(S2、S21、S31或S41)控制着各自循环进程(F1):如果控制信号为“F”则该线程继续运行,并将该控制信号赋值(AO)给全局控制变量D,重复步骤2);如果该线程输出控制信号为“T”,则将该控制信号赋值给全局控制变量D,同时对于雷达数据采集和头文件数据采集线程运行结束(End),对数据写入线程则转至步骤5);
所述数据写入线程还包括以下步骤:
5)检测各数据写入线程中的数据是否全部被写入硬盘(判据为F2),如果检测结果显示该线程数据全部写入,则该写入线程运行结束(End),如果检测结果显示该线程数据没有全部写入,则该写入线程继续运行,重复步骤2),从而确保采集到的所有数据都被存储起来。
Claims (1)
1.一种采集时间控制模式下的多线程数据采集系统同步控制方法,其特征在于,采用多个线程来完成探地数据采集中不同的存取任务,存取任务包括雷达数据采集,头文件数据采集和数据写入,多个线程在数据采集和写入过程中各自根据控制信号以循环形式相互独立工作;所述数据采集和写入过程包括以下步骤:
1)在任意一个雷达数据采集线程中设置三个整型变量A、B、C,分别表示预设的采集时间:时、分、秒,用于控制雷达数据采集的时间;在所有线程中设置一个全局控制变量D,用于各线程间结束信息的传递;各个线程设置自身的局部控制变量Ei,i=1、2、…p,p为总线程的个数,该局部变量表示其所在线程的运行正确与否;三种控制变量均有两个状态:“T”、“F”;
2)对所述雷达数据采集线程的整型变量A、B、C单位转化为以秒为单位的变量值Q,转化方法为:变量A乘以3600,变量B乘以60,变量A、B的两个乘积结果与C相加得到Q;另外,在该雷达数据采集线程中设置一个计时器,并将Q作为输入参数输入到该计时器中,计时器以数据采集开始时刻点为起始点,并记录采集的时间,如果记录的采集时间小于Q,则该线程输出控制信号S1为“F”,如果记录的采集时间大于Q,则该线程输出控制信号S1为“T”;
3)各线程中分别对所述控制信号S1、和变量D、Ei进行布尔“或”运算(BOO);所述BOO规则为:设置采集时间的雷达数据采集线程中,如果输入的S1、D、和Ei全部为“F”,则该雷达数据采集线程输出控制信号S2为“F”,如果输入的S1、D、和Ei至少有一个是“T”,则该雷达数据采集线程输出控制信号S2为“T”;其它雷达数据采集线程中,如果输入的D、和Ei全部为“F”,则该雷达数据采集线程输出控制信号S2j(j=1、2、…m-1,m为头文件采集线程的个数)为“F”,如果输入的D、和Ei至少有一个是“T”,则该雷达数据采集线程输出控制信号S2j为“T”;各头文件采集线程中,如果输入的D、和Ei全部为“F”,则该头文件采集线程输出控制信号S3q(q=1、2、…v,v为头文件采集线程的个数)为“F”,如果输入的D、和Ei至少有一个是“T”,则该头文件采集线程输出控制信号S3q为“T”;各数据写入线程中,如果输入的D、和Ei全部为“F”,则该数据写入线程输出控制信号S4k(k=1、2、…r,r为数据写入线程的个数)为“F”,如果输入的D、和Ei至少有一个是“T”,则该数据写入线程输出控制信号S4k为“T”;
4)根据各个线程输出的控制信号S2、S2j、S3q或S4k控制着各自循环进程(F1):如果控制信号为“F”则该线程继续运行,并将该控制信号赋值(AO)给全局控制变量D,重复步骤2);如果该线程输出控制信号为“T”,则将该控制信号赋值给全局控制变量D,同时对于雷达数据采集和头文件数据采集线程运行结束(End),对数据写入线程则转至步骤5);
所述数据写入线程还包括以下步骤:
5)检测各数据写入线程中的数据是否全部被写入硬盘(F2),如果检测结果显示该线程数据全部写入,则该写入线程运行结束(End),如果检测结果显示该线程数据没有全部写入,则该写入线程继续运行,重复步骤2),从而确保采集到的所有数据都被存储起来。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310178987.1A CN103336458B (zh) | 2013-05-15 | 2013-05-15 | 采集时间控制模式下的多线程数据采集系统同步控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310178987.1A CN103336458B (zh) | 2013-05-15 | 2013-05-15 | 采集时间控制模式下的多线程数据采集系统同步控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103336458A true CN103336458A (zh) | 2013-10-02 |
CN103336458B CN103336458B (zh) | 2014-08-13 |
Family
ID=49244650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310178987.1A Active CN103336458B (zh) | 2013-05-15 | 2013-05-15 | 采集时间控制模式下的多线程数据采集系统同步控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103336458B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112578362A (zh) * | 2020-12-30 | 2021-03-30 | 成都圭目机器人有限公司 | 一种三维探地雷达数据定位方法 |
CN114064316A (zh) * | 2021-11-16 | 2022-02-18 | 凌云光技术股份有限公司 | 一种多路采集数据的同步方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6005568A (en) * | 1997-09-30 | 1999-12-21 | The United States Of America As Represented By The Secretary Of The Navy | Computer system providing platform independent universal client device |
US20100315281A1 (en) * | 2009-06-10 | 2010-12-16 | The University Of North Dakota | Airspace risk mitigation system |
CN102799131A (zh) * | 2012-08-08 | 2012-11-28 | 中国科学院东北地理与农业生态研究所 | 基于fpga的探地雷达下位机控制系统 |
CN102841333A (zh) * | 2012-09-03 | 2012-12-26 | 西安电子科技大学 | 多频点全向外辐射源雷达比幅测向cpu实现方法 |
-
2013
- 2013-05-15 CN CN201310178987.1A patent/CN103336458B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6005568A (en) * | 1997-09-30 | 1999-12-21 | The United States Of America As Represented By The Secretary Of The Navy | Computer system providing platform independent universal client device |
US20100315281A1 (en) * | 2009-06-10 | 2010-12-16 | The University Of North Dakota | Airspace risk mitigation system |
CN102799131A (zh) * | 2012-08-08 | 2012-11-28 | 中国科学院东北地理与农业生态研究所 | 基于fpga的探地雷达下位机控制系统 |
CN102841333A (zh) * | 2012-09-03 | 2012-12-26 | 西安电子科技大学 | 多频点全向外辐射源雷达比幅测向cpu实现方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112578362A (zh) * | 2020-12-30 | 2021-03-30 | 成都圭目机器人有限公司 | 一种三维探地雷达数据定位方法 |
CN112578362B (zh) * | 2020-12-30 | 2023-08-29 | 成都圭目机器人有限公司 | 一种三维探地雷达数据定位方法 |
CN114064316A (zh) * | 2021-11-16 | 2022-02-18 | 凌云光技术股份有限公司 | 一种多路采集数据的同步方法及系统 |
CN114064316B (zh) * | 2021-11-16 | 2024-01-30 | 北京元客方舟科技有限公司 | 一种多路采集数据的同步方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103336458B (zh) | 2014-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10635276B2 (en) | Cohort-based presentation of user interaction data | |
CN104915793A (zh) | 基于大数据分析挖掘的公共信息智能分析平台 | |
CN105608223B (zh) | 针对kafka的Hbase数据库的入库方法和系统 | |
KR101669783B1 (ko) | 성능 및 정확도에 대한 멀티 스레드 소프트웨어 프로그램들의 레코딩된 실행들의 시각화 | |
US7739662B2 (en) | Methods and apparatus to analyze processor systems | |
CN103995764B (zh) | 一种具有串行总线协议连续触发功能的逻辑分析仪 | |
CN201886122U (zh) | 一种基于pxi总线的数字测试模块 | |
CN103325426A (zh) | 基于ddr2sdram阵列分段存储的无缝采集方法 | |
CN103902718A (zh) | 一种报表控件及其应用 | |
Du et al. | Design of LabVIEW based general data acquisition system | |
Guo et al. | La VALSE: Scalable Log Visualization for Fault Characterization in Supercomputers. | |
CN103226328B (zh) | 采集次数控制模式下的多线程数据采集系统同步控制方法 | |
CN103336458B (zh) | 采集时间控制模式下的多线程数据采集系统同步控制方法 | |
CN103257639B (zh) | 按键控制模式下的多线程数据采集系统同步控制方法 | |
CN103176013A (zh) | 一种可自定义测量范围的示波器及其实现方法 | |
CN102735946B (zh) | 一种消除信号采样中干扰的方法 | |
CN103969484A (zh) | 高刷新率波形合成器和高刷新率示波器 | |
WO2017002190A1 (ja) | データの管理装置及びデータの管理方法 | |
CN105183226B (zh) | 一种屏幕滑动灵敏度的测试方法和装置 | |
CN107451032B (zh) | 基于控制器局域网接口卡的高压变频器数据采集系统的数据存储方法 | |
CN109032892A (zh) | 一种性能曲线图的绘制方法、装置、设备及介质 | |
CN108680824A (zh) | 分布式录波同步方法、装置、设备及介质 | |
EP4155944A1 (en) | Database troubleshooting with automated functionality | |
Qi et al. | Visual Analysis of Parallel Interval Events. | |
CN107589444B (zh) | 地震数据的处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |