并行任务。 _Campbellsci论坛问答

您好,我使用cr1000存储来自8个传感器的数据,数据记录器每秒读取传感器1次,并每10分钟将去积分值存储在数据表(salidaCr1000)中。
我想将通道1中的一些值存储在不同的数据表(SparkTracker)中,使用带有触发值的DataEvent函数。
我需要一个并发任务,因为我不希望从第一个数据表代码中读取松散的数据。

下一个代码可以值班吗?

并行任务。
_Campbellsci论坛问答


'CR1000

’2009年8月。

”阿德里安。

'-----------------------------

'声明常量、变量和单位

常数Cte=0.0081

Const RadMax=1200

公用电池电压

公共压差(8)

单位Batt_Volt=伏特

单位差值电压=mV

'-----------------------------

'---------------表格-------------------------

'定义数据表

’---------------萨利达Cr1000------------

数据表(SalidaCr1000,True,-1)

数据间隔(0,10,最小值,10)

总计(1,差分电压(1),FP2,错误)

字段名称(“PSP”)

总计(1,差分电压(2),FP2,错误)

字段名称(“Canal2”)

总计(1,压差(3),FP2,错误)

字段名称(“Canal3”)

总计(1,差分电压(4),FP2,错误)

字段名称(“Canal4”)

总计(1,差分电压(5),FP2,错误)

字段名称(“Canal5”)

总计(1,差分电压(6),FP2,错误)

字段名称(“Canal6”)

总计(1,差分电压(7),FP2,错误)

字段名称(“Canal7”)

总计(1,差分电压(8),FP2,错误)

字段名称(“Canal8”)

床头柜

'----------------------------------

’--------电池测试-----------------

数据表(电池测试,真,-1)

数据间隔(01440,最小值,10)

最小值(1,电池电压,FP2,错误,错误)

床头柜

'-------------------------------------

----------------SparkTracker------------------------

数据表(SparkTracker,True,-1)

数据事件(2,差分电压(1)/Cte>;雷达最大值,1,1)

样品(1,差分电压(1),IEEE4)

床头柜

'-----------------------------------------------

'----------------结束表----------------------

主程序-------------------------------------------------------------

开始进度

扫描(1,秒,1.0)

'---------------------------------------------------------

'默认数据记录器蓄电池电压测量值Batt_Volt:

蓄电池(蓄电池电压)

'---------------------------------------------------------

'---------------------------------------------------------------

“差分电压测量

电压差(DiffVolt(1),1,mV25,1,True,0,_50Hz,1.0)'通道1

电压差(DiffVolt(2),7,mV25,2,True,0,_50Hz,1.0)'通道2 al 8

'---------------------------------------------------------------

'---------------------------------

'调用数据表并存储数据

呼叫表(SalidaCr1000)

调用表(电池测试)

调用表(SparkTracker)

'---------------------------------

下一次扫描

结束程序

----------------结束主程序---------------------------------------------------------


注意:是在管道模式下编译的。

谢谢

新对话如下:

是的,那会奏效的。不同的数据表独立地跟踪它们的处理、总计、平均值等。

我要注意的一件事是,您应该指定事件驱动表中的记录数。看看最后一个教程“;“数据表存储器分配”;在这里:
http://www.campbellsci.com/19_1_773

更改此行:DataTable(SparkTracker,True,-1)
类似于这样的东西:DataTable(SparkTracker,True, 1000 )

如果您有其他问题,请再次发帖。
当做
珍妮特

新对话如下:

嗨,珍妮特,非常感谢你的回复。

我会把你说的那一行和这一行改成:DataTable(BatteryTest,True,60),而不是DataTable(BatteryTest,True,-1)(两个月的电池检查就足够了)。

让DataTable(SalidaCr1000,True,-1)在不更改的情况下使此数据表的其余内存可用。这是正确的吗?

顺便说一句,教程是MS.exe格式的。这不适合mi,因为我的电脑盒子里有GNU/Linux和互联网链接。

致以诚挚的问候,阿德里安。

*最后更新人:Adrian于2009年8月27日下午4:57*

新对话如下:

嗨,阿德里安,

让DataTable(SalidaCr1000,True,-1)在不更改的情况下使此数据表的其余内存可用。 这是正确的吗?

对数据记录器将首先为固定大小的表(示例中为BatteryTest和SparkTraker)分配内存,然后将剩余内存均匀分配给其他自动分配的表(您的示例中为SalidaCr1000)。

如果您还有其他问题,请告诉我们。
祝你周末愉快。
珍妮特

新对话如下:

嗨,珍妮特,再次感谢。

祝你周末愉快。

亲吻,阿德里安。

分享到:

原文链接:,转发请注明来源!
海洋仪器网 仪器使用 并行任务。 _Campbellsci论坛问答
「并行任务。 _Campbellsci论坛问答」评论列表

发表评论