Hi All,
while developing a Proview-System for an assembly line, I encountered a problem with the handling of data objects:
I’ve created a Classvolume “CvolMyFactory”, with a class “Order” and two classes (Object and Functionobject) for a conveyor belt. The main object for the conveyor has an attribute “Order” of class Order.
Inside of the conveyors function object I use Nmps:DataCopy. The “To” input is connected to the $PlcMain.Order attribute (this part works) and now I’m trying to connect the “From” to an input ($PlcFo:OrderIn) for example of type “GetData” or “GetRefData”. But I can’t get it work. What ever I tried, I get messages like:
-- Opening volume 'VolTaktstrasse'
-- Build node prvweng002
-- Plc window generated Taktstrasse1-PLC0001-W
-- Plc window compiled for x86_64_linux optimized -O3 Taktstrasse1-PLC0001-W
In file included from /usr/local/pwrp/taktstrassev2/bld/common/tmp/plc_m000_001_001_001_00000019.gc:16:0:
/usr/local/pwrp/taktstrassev2/bld/common/tmp/plc_ref000_001_001_001_00000019.gc: In function ‘M000_001_001_001_00000019_init’:
/usr/local/pwrp/taktstrassev2/bld/common/tmp/plc_ref000_001_001_001_00000019.gc:5:37: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types]
Z000_001_001_001_0000001b->AuftragP = &Z000_001_001_001_00000293->Out;
^
/usr/local/pwrp/taktstrassev2/bld/common/tmp/plc_ref000_001_001_001_00000019.gc:10:37: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types]
Z000_001_001_001_0000001c->AuftragP = &Z000_001_001_001_00000296->Out;
^
%GSX-W-CCWARNING, Warning from c compiler or linker
in window Taktstrasse1-PLC0001-W
%GSX-E-REFPARTYPE, referenced parameter type is not correct
in object Taktstrasse1-PLC0001-W-BandFo0-W-GetRefData33
%GSX-F-CWINDERR, compile errors, no object file produced
1 errors in window Taktstrasse1-PLC0001-W-BandFo0-W
%GSX-E-REFPARTYPE, referenced parameter type is not correct
in object Taktstrasse1-PLC0001-W-BandFo0-W-GetRefData33
%GSX-F-CWINDERR, compile errors, no object file produced
1 errors in window Taktstrasse1-PLC0001-W-BandFo0-W
%GSX-E-REFPARTYPE, referenced parameter type is not correct
in object Taktstrasse1-PLC0001-W-BandFo1-W-GetRefData33
%GSX-F-CWINDERR, compile errors, no object file produced
1 errors in window Taktstrasse1-PLC0001-W-BandFo1-W
-- Plc plcpgm compiled for x86_64_linux optimized -O3 Taktstrasse1-PLC0001
In the Designer’s Guide on page 196 I found: “The input <for an Fo Object> can be of
type Boolean, Float32, Int32, String80, Time, DeltaTime or of datatype (pointer to Float32).”
If this is state of the art I can’t succeed (this way).
The idea behind all that is, that I want the Order data to move with the conveyor belts.
Looking for an answer, I found an old thread on the forum:
www.proview.se/v3/index.php/forum/4-proview-forum/548-nmps#8635
This assumes, that NMps is the way to archive my goal. I played around with NMps but have no idea on how to use it.
Claes,
can you give me advice or an example of NMps usage? I’m wondering why it isn’t used (more often) by others, because I believe NMps is Proview’s big advantage over all other PLC systems.
I’m working with V5.5 on Ubuntu 16.04 LTS.
Thanks in advance