Updating a String Tag in Crimson 3.0

ais

Member
Join Date
Apr 2012
Location
Bangkok
Posts
59
I am trying to set the value in a string tag from another string tag.

I created 2 string tags.
I created a button.
I added an action to the button.
I tried to use the "Change Value" action but it won't let me.
I tried user defined action using Set() and SetStringTag() - neiher will work.
Crimson 3.0 expects the first argument to be an integer even with SetStringTag().

Anybody know a way to do this?
 
All you need is the assignment operator "=" in the Complex Code for the Press or the Release action.

All it has to say is:

StringOne = StringTwo;
 
Crimson 3.0 (String Tags)

Hello world!
I have a problem and I hope You can help me...
I'm developing a progrma (in Crimson 3.0)
to add entry data using a touch screen,
then viewed on a conventional monitor
(using a PTV) the problem is that I only can
send numeric data and I need to send
alphanumeric data.
I have understood that you can't add
string tags gateway to a block, that alternative
I can have?
Thanks.
 
Hello world!
I have a problem and I hope You can help me...
I'm developing a progrma (in Crimson 3.0)
to add entry data using a touch screen,
then viewed on a conventional monitor
(using a PTV) the problem is that I only can
send numeric data and I need to send
alphanumeric data.
I have understood that you can't add
string tags gateway to a block, that alternative
I can have?
Thanks.

One option I can think of off the top of my head is that you can setup an Active Raw Port on the G3xx display and a Passive Raw Port on the PTV.

Use a Program that will PortPrint the string when the button is pressed (on the G3xx).

Use a Program that contains PortInput to run On Update from the Passive Raw Port on the PTV.

Obviously, this will require some programming, but it can be done. It was the easiest way I found to pass strings from a G315 to another G315.
 
Hello world!
This option is very interesting, thanks for your answer, lets see if I understood well,
I need to do a program with the words that I want to show on my screen (Passive), these will be linked to port that activare from my touch screen (Active), so when you activate a port my screen shows the word or message that I have assigned in my program .... am I correct?

Thanks.
 
Hello world!
This option is very interesting, thanks for your answer, lets see if I understood well,
I need to do a program with the words that I want to show on my screen (Passive), these will be linked to port that activare from my touch screen (Active), so when you activate a port my screen shows the word or message that I have assigned in my program .... am I correct?

Thanks.

The *port* is a communications port. If you understand that then you are on the right track.
 
if I use the blocks and for example I put a emitter block on my touch screen and a receiver block on my screen to communicate.... Do you think that works?
 
if I use the blocks and for example I put a emitter block on my touch screen and a receiver block on my screen to communicate.... Do you think that works?

If there is a Communications Protocol that would allow you to use a Gateway Block that can handle strings, then maybe you could use it.

I don't know of any, but I typically only use the more common comms protocols.

However, your original post noted that you couldn't find a gateway block (actually communications protocol) that would handle strings.

I have already made the suggestion that I would use (actually have used) to send string data between two G315 displays.
 
You're right, but I can use a Gateway Block to send numerical data (using TAG'S) from one screen to another, I could make an internal program to my screen by assigning a certain word for some number.
Example: send the number "14",
and assign in my program the word something like:
if Tag1 = 14;
PrtintTag("Hello",2)
It's what I was thinking!!!
What do you think?
 
You're right, but I can use a Gateway Block to send numerical data (using TAG'S) from one screen to another, I could make an internal program to my screen by assigning a certain word for some number.
Example: send the number "14",
and assign in my program the word something like:
if Tag1 = 14;
PrtintTag("Hello",2)
It's what I was thinking!!!
What do you think?

I think that you could do something like that, but it could be even simpler.

In the G3xx Display

1. Create an Integer Tag.
2. Put it on a Gateway Block that is set up as a Modbus/TCP Slave - say at register 40005.
3. Anytime the value is changed, the integer value will be available at 40005

In the PTV

1. Create a Modbus/TCP Master Port connected to the G3xx as a slave.
2. Create an Integer Tag and make its source from the G3xx register 40005.
3. Make the Format of the Tag MultiState and create the number of states you want.
4. Assign your Text to each Value
5 Put the tag on the PTV display and use the TagName.AsText function as the source.

Then when the integer is changed in the G3xx, the PTV will read the new value and put the Text associated with the integer (from the MultiState Format) on the TV.
 
That sounds better than my idea, I will follow your instructions... thank you very much for your support if all goes well I'll tell you.
Thank you.
 
That sounds better than my idea, I will follow your instructions... thank you very much for your support if all goes well I'll tell you.
Thank you.


I was glad to help.

Keep in mind that your original request was to send a string from a Display to a PTV. We could have gotten here quicker if you had expanded your requirement to include the fact that there was a Fixed List of Strings.
 
Hello ...
I followed your instructions, but I was still finishing the last step
and is here where I have a question ...

In the 5 step, when placing the function "TagName.AsText" as source,

Which option I need to choose General or Complex?
 
Hello ...
I followed your instructions, but I was still finishing the last step
and is here where I have a question ...

In the 5 step, when placing the function "TagName.AsText" as source,

Which option I need to choose General or Complex?


That isn't a function. Put your DataBox Primitive on the screen and make its Data Source (Value) TagName.AsText.
 

Similar Topics

Good day all! Can someone help me with the procedure to update Beijers E700 firmware? The Panel I am working on is firmware 2.04v and I would...
Replies
1
Views
62
Hi All, Has any of you tried to change the IP Gateway of the PLC (of course, essentially of the ENBT card), while in a redundant configuration...
Replies
3
Views
124
Is there anything I Should take into account while updating the firmware on a safety processor? I have a 1756-L61S running version 17 and need...
Replies
0
Views
99
Hi, I'm trying to figure out how to properly update the "icons" on my Panelview 900 (AB 2711-T9C9). I think maybe I'm having a fundamental...
Replies
13
Views
990
Hello everyone, I am dealing with something annoying and excruciatingly basic that I am just ready to cry. I have updated some alarm messages in...
Replies
6
Views
922
Back
Top Bottom