Crimson 3.0 Data Logging w/ variable number of samples

RonJohn

Lifetime Supporting Member
Join Date
Jul 2013
Location
NE Ohio
Posts
535
I am trying to figure out how Crimson 3.0 for a Graphite HMI can be tailored to fit my data logging needs. I have an application where the customer wants to log 10-20 points of critical data during their machine cycle. The machine cycle lasts 1-2 minutes and there is anywhere from 6-12 minutes of downtime between cycles. Some of the data needs to be logged during the cycle (1 second updates are acceptable) while other data only needs logged once at the end of each cycle. They want a new log file created every shift.

I looked at the Crimson software and created sample data logs, one continuous and another triggered snapshot. I see that I can use a data tag to enable the logging only when in cycle, so we're good there.

My concern is that apparently each data log file is set up to contain a certain number of samples. The number of samples recorded each shift will obviously vary. How can I set up my data logging to start a new file based on time (or a trigger), not number of samples? I know I can continuously log, even when not in cycle, but that would mean wading through lots of useless data.

Also, I haven't dug into how to handle the log files yet. Is there a way for the HMI to automatically send the files to an FTP site per a trigger or must it be called from elsewhere?

Thanks in advance.
 
I am trying to figure out how Crimson 3.0 for a Graphite HMI can be tailored to fit my data logging needs. I have an application where the customer wants to log 10-20 points of critical data during their machine cycle. The machine cycle lasts 1-2 minutes and there is anywhere from 6-12 minutes of downtime between cycles. Some of the data needs to be logged during the cycle (1 second updates are acceptable) while other data only needs logged once at the end of each cycle. They want a new log file created every shift.

I looked at the Crimson software and created sample data logs, one continuous and another triggered snapshot. I see that I can use a data tag to enable the logging only when in cycle, so we're good there.

My concern is that apparently each data log file is set up to contain a certain number of samples. The number of samples recorded each shift will obviously vary. How can I set up my data logging to start a new file based on time (or a trigger), not number of samples? I know I can continuously log, even when not in cycle, but that would mean wading through lots of useless data.

Also, I haven't dug into how to handle the log files yet. Is there a way for the HMI to automatically send the files to an FTP site per a trigger or must it be called from elsewhere?

Thanks in advance.


Do some investigating on Batches. While you won't be actually using most of the functionality, Call NewBatch(name) when you want to Start Logging and call EndBatch() when you want to end logging. Look on page 172 of the manual (my version is ADLD0099).
 
I've been in your situation in the past and the way I handled it was to dump the data logger altogether and just use the Crimson functions for directly writing to the CompactFlash.

CreateFile(), OpenFile(), and CloseFile() handle file management on the CompactFlash and you can name the files any way you want. WriteFileLine() is the main function for writing data; basically it just writes a string to an open file. Of course it isn't as easy to set up as the data logger, and there's some overhead in formatting all the data into strings, but the advantage is that you can use whatever format and delimiters you want in the text file. Some programming is required but it is not overly complicated--I can provide you with some samples if you decide to go this route. For your application, a new file could be created by virtually any trigger, such as an HMI button or a specific time of day.

Others can probably speak more to the functions of the Crimson 3 data logger; my experience is mostly with Crimson 2.
 
OK forget everything I just said, the batching idea sounds much better. I guess I need to unlearn all my bad habits from Crimson 2. o_O
 
Do some investigating on Batches. While you won't be actually using most of the functionality, Call NewBatch(name) when you want to Start Logging and call EndBatch() when you want to end logging. Look on page 172 of the manual (my version is ADLD0099).

Thanks. I found it on page 182 of the PDF (manual page 168).

OK forget everything I just said, the batching idea sounds much better. I guess I need to unlearn all my bad habits from Crimson 2.

No worries John. Just goes to show there are multiple ways to skin a cat (or shoot yourself in the foot)!:nodi:
 

Similar Topics

Hi Everyone, Got a new project and the specs call for me to log about 6 Real Tags every 15 minutes. Normally this is a very easy to do in...
Replies
15
Views
3,859
Currently, I am triggering the data using a bit and collecting the data values each and every time the data is triggered and every mid-night new...
Replies
7
Views
1,819
I am building a program for a load-out station. When the flow meter kicks on it will start tracking how much the truck loaded. Then when the flow...
Replies
2
Views
1,314
Hi guys I have Productivity Station which will collect Run time data from Phoenix input block "ILB ETH 24 DI16 DIO16-2TX". I am new to crimson...
Replies
0
Views
2,900
Hi everyone, I have done a few projects using Crimson and G308 HMI's but have never used the data logging ability's. Now one of my customers...
Replies
4
Views
2,186
Back
Top Bottom