Teilen Sie Ihre Erfahrunge und Wünsche mit uns und anderen Usern!
OPCUA values not in PLC Output
Hello,
I am running the OPCUA demo with the UaCPPServer and it works fine, except that the values are not shown next to the GameObjects in Unity. I can see the current values from the server on each OPCUA_Node component, however it seems that the corresponding PLCSignals were not created like they should (from the OPCUA documentation page: "If the Game4Automation framework is installed, additionally all
corresponding PLCSignals are created. These signals can be dragged and
dropped with sensors or drives of the Game4Automation framework.")
I then added a PLC Output Float script manually to the respective node (see picture). Now the current value is shown next to the GameObject, but it doesn't update.
I also tested this with the test scene (OPCUADriveReadingWriting.unity) provided here: https://forum.game4automation.com/communities/1/topics/101-write-to-opc-ua-varible-using-the-plcinputfloat-datatype
But the PLC Output value is also not updated there.
Hi,
first of all I strongly recommend to use Unity 2018.4 instead of 2019. Specially when compiling to the Build with an IL2CPP compiler there might be issues with Unity 2019.
There is something interfering with the demo use cases (need still to check what exactly).
Please follow these steps:
- Make sure that the compiler defines are set to GAME4AUTOMATION; GAME4AUTOMATION_PROFESSIONAL
Import while running the OPCUA server the nodes again. If you have enabled with the Compiler defines the full framework it will also create all PLCInputs and Outputs:
If you try now to run it you will get errors:
These errors are because the demo server is limited in subscriptions.
You need to turn off all subscriptions in the OPCUA nodes or you turn it off in the OPCUA interface and import again:
Please also delete the Use Cases completely (we will get rid of the problem with the use cases in the next release).
Now it should work as expected:
You find also the full working model (based on Unity2018.4) in the Uploadfoalder I have send you via mail.
Interface to SIMIT via SHM not working in build
I have recently bought the game4automation Pro, as I need simit and unity to communicate with eachother.
I have no issues getting SIMIT and unity to communicate via the SHM interface when using the "play" button from the editor, but when I run a compiled application Unity and SIMIT do not communicate.
I have tried to use both "2019.1.14f1" and "2018.4.9f1 LTS" versions of unity. As the function "Apply Standard Settings" fail in my "2019.1.14f1" project but switching to "2018.4.9f1 LTS" where the function runs without error did not help.
"GAME4AUTOMATION_PROFESSIONAL;GAME4AUTOMATION" is present in the "Scripting Define Symbols" field.
what am I missing?
Hi Dat,
I uploaded Version 1.020 to Unity's Asset Store. This should fix the problems. You can now use pure .Net4.0 projects. Also CADLink is now able to compile wit .Net4.0 settings.
It will be availabe latest on Monday on the store.
Thomas
Problems with SignalChanged behaviour of PLCOutput class
Dear game4utomation team,
Recently we bought the Game4Automation Pro Asset in Unity, and so far we really like it.
We set up a simple project in Simit and managed to get the interface working with the shared memory solution.
For this we used the Update() method off Unity, now we would like to use a event based system to reduce the load on the system. In the PLCOutput class the event SignalChanged is available and we tried to implement this.
So in this example we would like to toggle a bool to change the color on a traffic light.
public class Verkeerslicht3 : NetworkBehaviour
{
public Material yellowMaterial;
public PLCOutputBool yellowEnable;
public MeshRenderer yellowMeshRenderer;
void Start()
{
yellowEnable.SignalChanged += OnYellowEnableStateChange;
}
private void OnYellowEnableStateChange(Signal obj)
{
RpcSetGeel(obj);
}
[ClientRpc]
private void RpcSetGeel(bool state)
{
yellowMeshRenderer.material = state ? yellowMaterial : disabledMaterial;
}
But if we toggle the Bool in Simit the OnYellowEnableStateChange is not called.
Can you help with this?
Hi Tim,
there was a problem with the automatic settings of the defines.
Please check if the PLCOutput Script was added to your variable automatically:
If not please set in the defines manually "GAME4AUTOMATION" and reimport all OPCSignals.
Now it should work
Bidirectional communication with "Starter"- version or other version possible?
Hello,
I would like to create a digital twin of an already existing system, which is using a S7-1500 controller.
Is the basic version capable to create a bidirectional communication between the digital twin and the real system?
Does a change in state of the physical object directly lead to a change in state of the digital twin and the other way around?
Cheers,
Leon
Hi Leon,
1) yes this is the case. In Professional there is the 3MF interface included (since yesterday). You can directly import from all CAD-Systems which are able to export 3MF. Professional will get aditional features fur the 3MF interface like Updating, Mesh reduction .....
2) Yes you only need to buy and use PixYZ if you want to import the mentioned formats. Which CAD System are you using. For Solidworks we will have soon addtional export functions (as Solidworks makro) which will be more than what PIXYZ is able to do (like export kinematics).
3) Yes, 3MF with Game4Automation Professional - the rest is standard unity.
4) Yes it is. The 3MF interface is just a script attached to a GameObject. You can use it also in Runtime (during simulation).
Best regards
Thomas
Customer support service by UserEcho