Teilen Sie Ihre Erfahrunge und Wünsche mit uns und anderen Usern!
Adding kinematics on pendulum like Object
Model-Pose1
Yesterday, I tried to dive deeper into the kinematics of more "complex" objects in Unity. However, I reached my limits when working on the kinematics of the model in the attached image, and I wanted to ask for your assessment of the complexity involved.
From my experience, chaining linear and independent movements doesn't seem to be a problem. However, combining rotational and linear movements appears to be more complex.
The model is actually a relatively simple construction. On a base-plate, there is a rotatable and driven turret. At the top of this turret, there is a shaft driven by a motor, which, through a connecting rod-like mechanism, is supposed to exert a linear movement on the "sleeve" around the turret. I have illustrated this with two images.
I have tried various combinations of kinematic chains and also tested the use of Unity's internal joints like the "Hinge Joint." I always got to the point where I still needed to add the linear movement of the sleeve. However, I couldn't implement this final step under the conditions of the existing movements.
In general, I have the following questions:
- Is it possible to use the joints provided by Unity in combination with the drives from Realvirtual?
- Are there any similar "joints" from Realvirtual that constrain kinematic movement (i.e., without additional drive)?
- I had the feeling that a functioning kinematics heavily depends on the hierarchical arrangement of the game objects. It seems that the linear constraint of the sleeve to the turret doesn't work due to the hierarchy. Do you have any tips or rules that need to be followed, and is such a kinematic chain as desired in the model even possible?
I have also attached the STEP file of this model and would appreciate any feedback.
We recognize that despite the significant changes made in the last release to ensure the drive fixed update sequence for cams and gears, there is still a bug affecting functionality.
After investigation, we have identified the solution. To resolve this issue, please modify the Drive script by adding !issubdrive
around line 880. This fix will also be included in our upcoming release.
how to use the interface for commands?
I want to interface the realvirtual digital twin with a c# application. The c# application already exists and controls resources like motors with resource commands. The commands are already expressed in a message that is send via TCP. No PLC is used.
An example message would be:
- message type -> eg resource command request
- object id -> eg Xaxis
- command id -> eg move
- parameters -> eg position, speed, acceleration and deceleration parameters
The individual parameters in the message are extracted from the message by a decoding procedure.
I would like to use an industry standard like MQTT (or OPC UA) to interface with the digital twin. Therefore the TCP message has to be converted to a MQTT message.
I have limited knowledge in this area, but from what I understand is that the digital twin requires signals. Drive_DestinationMotor for example requires 5 PLC outputs and 4 PLC inputs, the PLC outputs/inputs should be mapped to signals, signals should be connected to MQTT topics, each MQTT topic represents 1 signal. Am I right?
I can understand how to convert the TCP message to multiple MQTT messages, but how can I make sure that parameters like position and speed signals are received all at once or before the actual "start drive" signal?
Are there examples available on how to do this or should I use a different approach? What would happen when I replace Drive_DestinationMotor by a controller with states? Are there examples of such a controller?
Digital Twin Professional 2021 mit Simulation 2022
Hallo,
wie kann ich die oben genannten Pakete noch nutzen?
Ich habe die Assets direkt über unity gekauft im Dezember 2022.
Wenn ich jetzt ein frisches Projekt anlege (aktuelles Unity 2021 LTS) bekomme ich haufenweise Fehler.
Ask some questions about using Drive Component
Hello
I have a requirement to reproduce the gripping and placing of a SCARA robotic arm. My current idea is to divide the model into joints and add Drive components to the axis position of each joint, so that it can be moved, so as to achieve the process of motion restoration. But when I use the rotation function of the drive component, I find that it can only rotate all the time, can I set an angle for the drive component to rotate only the angle I set?
Or can you see if there is a better way to simulate the movement of a SCARA robot?
I don't need to add complicated IK algorithms, I just want to give the rotation angle of each axis of the SRACA robotic arm and let it rotate to the target position.
Thanks
Hi, you need to add a Drive behavior (https://doc.realvirtual.io/components-and-scripts/motion/drive-behavior) to the drive e.g. a Drive_DestinationMotor to control the drive and to send it via signals to certain destination position for each axis. Alternatively you could control the Drive via a script and use the Method Drive.DriveTo(float destination) of the Drive.
PLCSimAdvancedCoupler startet bei Simulation nicht
Hallo Thomas,
ich bekomme keine Verbindung von Unity zu PLCSimAdvanced V5.0. Bei Simulationsstart kommt jedes mal die Fehlermeldung (in Unity):
"You need to download PLCSimAdvancedCoupler.exe and place it into the \PLCSimAdvanced\Ressources\ folder"
Die genannte .exe habe ich im in meinem Projekt - Ablageordner unter:
C:\Unity Projekte\Zuluftanlage\Assets\realvirtual\Interfaces\PLCSimAdvanced\Ressources
abgelegt. Dennoch scheint Unity die .exe nicht zu finden. Auch die "Siemens.Simatic.Simulation.Runtime.Api.x86.dll" hab ich im entsprechenden Ablageordner für PLCSimAdvanced V5.0 abgelegt unter:
C:\Program Files (x86)\Common Files\Siemens\PLCSIMADV\API\5.0
Was ich weiter versucht habe ist:
- deinstallieren von "Npcap 1.71" und installieren von "Npcap 1.79"
- bilden einer Instanz in PLCSimAdvanced mit Konfiguration PLCSIM sowie TCP/IP
- deaktivieren der Windows - Firewall
- starten der PLCSimAdvancedCoupler.exe manuell (Fehlermeldung siehe Screenshot!)
Geladen wurde die PLCSimAdvanced Instanz mit TIA Portal V18. Anbei befinden sich ein paar Screenshot.
Viele Grüße
David
Stop MU on conveyor by stopper
How can I prevent a jumping MU on a (guided) conveyor?
For this I used the invisible conveyor system from your demo project "Guided Transport".
The MU stops at the stopper but starts jumping up and down immediatetly.
Is there an easy way to prevent this?
I played around with the Rigidbody parameters and realised it stops if I activate "Is Kinematic". I guess I could do this by writing a scripts that activates this parameter at collision with transport layer.
Hallo,
anbei die Antworten zu Ihren Fragen:
Im Umlaufsystem stapeln sich die WTs ab einer Staulänger von 4 Wts. Wie kann ich das verhindern?
Bitte verwenden Sie ausschließlich guided Transport. Die Kombination aus normaler Transportsurface und guided Transport wird nicht funktionieren.
Wie kann ich ein "Transport Guided (Script)" unterbrechen (durch zB einen Heber) und danach wieder fortführen?
Hier gibt eine Umsetzung in der Demoszene zum guidedTransport, welche als Vorlage genutzt werden kann. (realvirtual/Scenes/DemoGuidedTransport)
Wie kann ich eine "Guideline" bei einem Transportsystem mit zwei "Transport Surfaces" einfügen?
Ein System wie in ihrem Beispiel wird immer nur mit einer Transportsurface umgesetzt, damit kann einfach eine Guideline ergänzt werden. Unity betrachtet immer nur eine "Collision".
Unter main/realvirtual/ui/button1 wird ein image verwendet. Wo finde ich die Datei?
Button-GameObject in der Hierarchie auswählen und im Inspector auf das definierte Bild klicken. Es wird dann im Projekt angezeigt.
Roboter bewegen sich zu bestimmten Positionen deutlich langsamer. Warum ist das so?
Die Bewegung richtet sich nach der langsamsten Achse.
Grüße Christin
Use only guided transport. Combining normal transport surfaces with guided transport will not work.
There is an implementation in the demo scene for guided transport that can be used as a template. (realvirtual/Scenes/DemoGuidedTransport)
A system like the one in your example is always implemented with a single transport surface, allowing an easy addition of a guideline. Unity only considers one "Collision".
Select the Button-GameObject in the hierarchy and click on the defined image in the Inspector. It will then be displayed in the project.
The movement speed is determined by the slowest axis.
Regards Christin
Can realVirtual built for web
When I choose the WebGl plat for build my unity projects which use realVirtual-io tool, the system has the follow error:
"Assets\realvirtual\private\Interfaces\SharedMemory\Editor\SharedMemoryInterfaceEditor.cs(9,26): error CS0246: The type or namespace name 'SharedMemoryInterface' could not be found (are you missing a using directive or an assembly reference?)"。
Hi,
it seems that you are using an old version. This issue has been solved. Some interfaces need to be deactivated before compiling because they are using functions which are not available in WebGL.
You should upgrade to the latest version or delete the interfaces (the full folder of it) which are not supported in WebGL. You can check the table on this page here: https://doc.realvirtual.io/advanced-topics/supported-platforms
OPCUA not listing all nodes
I'm encountering difficulties accessing nodes within the OPCUA Server. While I can establish a connection with the server, the nodes aren't being properly imported into Unity.
Examining the image below, it's evident that input nodes contain nested nodes. However, as depicted in the screenshots, Unity fails to list all the available nodes.
Image 1 - OPCUA Explorer
Image 2 - OPCUA Interface Unity
HMI UI not showing in Play mode
I created an HMI object with 2 HMI tabs. The first tab stores a drop-down menu, and the second tab stores 3 HMI Panel World Space with HMI buttons. When I use Unity in Scene and Game mode , I can visualize the changes. However, after starting the simulation ( Play mode ), all the objects inside HMI wont appear on the game. All elements are on the UI layer.
Scene Mode
Game Mode
Play Mode
Hi,
after reviewing your images again, it appears that you're not using tab buttons to switch between the tabs. In this case, please enable "Tab Activated" within the "HMI_Tab" component to activate the tab when "Play" is started. Let me know if this solves the problem.
Regards Christin
Do you have any suggestions about how webgl(unity3D) communicates with twincat by realvirtual.io
as i descripte,i want to complete a machine digital twin which is similar with the example demo from your website shows.
I don't think, that we are publishing a special video for TwinCAT HMI. Besides symbol annotation and that you need special licenses (TF2000) - see section prerequisites - there is nothing special about this interface. What is your problem, do you have any error messages, things we should explain in our documentation?
Customer support service by UserEcho