LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

actor framework

Solved!
Go to solution

Hi Manu

 

Error is in

 

Gamma Actor -> Task 2.vi

 

You use the Read Self Enquerer as an address for you message.

But you message is defined as a message for the Actor Test Class

 

So you get to send the message to your self but you (Gamma Class) don't know how to handle it.

 

 

Instead you should send the message to the Actor Test. If you look at the Task VI in Alpha and Beta you will see they use the "Real Caller Enqueuer.vi" instead of the "Read Self Enqueuer.vi" that you use. This means that they will send the message to their caller which is the Actor Test.

 

 

 

Best Regards

Anders Rohde | CLD | Platinum Applications Engineer | National Instruments Denmark 

 

Message 11 of 16
(550 Views)

Excellent debugging Rohde. Solved the issue. Attaching the solved code here.

Certified LabVIEW Architect
0 Kudos
Message 12 of 16
(536 Views)

Looks good.

 

I would though encorruge you to look at the do functions in your Actor Framework

 

This is the do function of you Gamma Class

 

AF3.PNG

 

This is how the original do function from the message maker should look like.

 

AF4.PNG

 

Try notecing the difference. 

 

First we try to make our general actor into a specific actor (but we don't use the result). Only if it succedes then we do the actual conversion, if it doesn't succeed we don't do it. 

 

There is a purpose because we don't create an extra copy if we can't convert it

 

In your implementation you have both conversions but you only use one of them. You can choose to delete one of them but then you will have the extra copy in case of an error. 

 

Do you script you messages with the Actor Framework Message Maker ? (Found under Tools --> Actor Framework Message Maker in LabVIEW). That one will script the right interface for you automatically. It is a really smart tool.

 

 

Best Regards

Anders

0 Kudos
Message 13 of 16
(527 Views)

Hi Anders,

 

Thanks for your detailed suggestion. I use the actor framewrok script function and that particular send function was created by script function.

 

Regards,

Manu

Certified LabVIEW Architect
0 Kudos
Message 14 of 16
(522 Views)

Hmm, that's weird.

 

It should look like the screenshot I sent you. 

 

Do you have more than one computer showing this behavior? Maybe you change in the source file that the AF use to script the behavior from.

 

 

Br, 

Anders

0 Kudos
Message 15 of 16
(509 Views)

I will have a look at that from another PC.

Certified LabVIEW Architect
0 Kudos
Message 16 of 16
(505 Views)