LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Trace of the End-Effector of a Robot Manipulator in 3D Simulator Display

Solved!
Go to solution

Hi all,

 

I am currently working on a project about robot control on LabVIEW Robotics Module 2013.

 

In project, I must show 3D trace of the end-effector(or an arbitrary point of the last link) in Simulator Display window.

So then, we can easily see the tracking error (the diffrerance between desired trajectory and actual trajectory) on Simulator Front Panel. 

 

I have also added a picture of my primitive system to clarify what I needed.

 

Thank you.

0 Kudos
Message 1 of 10
(6,266 Views)

To clarify, you want to show a trace of end-effector as the robotic arm moves, correct? Have you had a chance to look at some of the LabVIEW shipping examples that deal with 3D scenes or 3D plotting? It seems that the best way to create this trace is to keep track of the locations that the end-effector has passed through and then either plot to those locations or change the color of the location within the scene. This should show the trace of the robotic arm.

Regards,

Mike Watts
Product Manager - Modular Instruments
Message 2 of 10
(6,217 Views)

At first, thank you for your help. 

 

Yes Michael, that's exactly what I want.

I want this 3D spline on "Simulation Display" window. In fact I have a little experience with LabVIEW.

So, I am not sure about 3D-Scenes or 3D-Plotting can draw a spline on Simulation Display.

 

If it is possible, can you share an example VI about dynamically drawing a 3D spline on Simulation Display, please?

 

It is easy to calculate End-Effector positions with respect to the selected reference frame via Homogenous Transformation Blocks.

 

I want to draw this positions as a spline in Simulation Display simultaneously while the links of robot are moving along a simulated trajectory.

Also, I should draw a static spline which called desired trajectory.

 

The difference between these two trajectories gives the tracking error of my control system.

If this error can be visualized, this will be very helpful.

 

Thank you again

0 Kudos
Message 3 of 10
(6,208 Views)
Solution
Accepted by topic author dncr

From your picture it appears that you already have a 3D Scene that is titled Simulator Display. Is this VI an example that was provided to you? Or did you write this VI? 

 

This is not something that I have done before, but assuming that the item titled Simulator Display is a 3D Scene or 3D Picture, you could trace the path of the end-effector by keeping the 3D locations of the end-effector in an array of clusters, each with an x, y, and z location. 3D Scenes/Pictures are used to represent physical objects in a virtual environment, so each location that you want to plot would become an object. Below you will find a snippet where I created a for loop that will create small spheres for each point stored in a predetermined array of clusters. Those spheres are created, moved to the correct location, and then added to the exisiting 3D Scene.

 

Your application could be different than what I suggested, but you should start by looking at the Solar System example shown below. This example shows how objects are created, added to scenes, and interacted with.

 

Community: Solar System with 3D Picture Control

 

3DPlotInScene.JPG

Regards,

Mike Watts
Product Manager - Modular Instruments
Message 4 of 10
(6,190 Views)

Mr Watts;

 

I have built this VI by analyzing the example project named "SCARA Arm".

The robot in previous picture is designed in SolidWorks. After 3D drawing of robot components,

the model file(in VRML format) imported to "Robotics Environment Simulator" by using Robot Simulation Model Builder.

 

So, by using Robotics Module; I am able to control the posture of the robot.

 

I have also shared two more pictures from my VI.

 

Probably, the solution advice you talked about can not be used in simulator.

It is for 3D scenes or 3D plots.

But I should use Simulator Display to realize the physical affects.

start_simulator.jpg

 

 

Perhaps, I can handle that by using Simulator Display terminal in block diagram.

 

simulator_display.jpg

Is it possible to use this block to add a trace on Simulator Display?

 

 

I want to request one more thing from you.

Can you crate a trace on SCARA Arm which is in examples?

I have also shared a picture which tells what I want.scara

 

 

Thank you for your help again.

 

Regards

0 Kudos
Message 5 of 10
(6,167 Views)

Mr Watts;

 

I have analyzed your advice again, and I have built what I want to do.

 

The trace of end-effector can be drawn with your block diagram.

 

Only thing which should be done is adding a "Get Reference" block to the diagram.getreference.jpg

 

 

 

After this select "Scene" for this block and set the flow like this;

 

diagram.jpg

 

By this block, the trace of the end-effector can be drawn at desired position.

 

Thank you again

 

 

Dincer Saygili

Robotics Engineer

Acrome Robotics Systems

0 Kudos
Message 6 of 10
(6,125 Views)

I have little knowledge about labview .Could  you share your program so we can learn something?

0 Kudos
Message 7 of 10
(5,447 Views)

Unfortunately, due to it was a commercial project, I can not share the original VIs. Thanks

0 Kudos
Message 8 of 10
(5,436 Views)

Thank you for your reply.

After reading your post , I build my 5-DOF robot arm  components using sketchup software in dae format. Then I assemble them in labview simulator. I want to control the arm by joint angle and I want to use the arm to write the character such as 'C', '9' and  so on , but I have no idea.Could you provide some advice?

here is  my  robot arm.

0 Kudos
Message 9 of 10
(5,428 Views)

I think I understoond what you are trying to do. To achieve this, you should determine EndEffector postions(orientation is not critical but recommended) for each character you want to visualize on the workspace. After than generate paths for each characters. Overall you should send those data to your inverse kinematics calculator(or EndEffector postion controller etc). 

 

I did not checked your VIs, but in a standard simulation environment you should follow those steps.

 

Good luck

 

 

0 Kudos
Message 10 of 10
(5,422 Views)