No acceleration on Z axis in Helical Arc Move?

Hello-
I'm using the Motion Assitant's Arc Move functions to create an helical motion, X/Y arc and Z linear.
When I plot the resulting postion arrrys it appears that the Z axis is not using the motion contraints (motion is linear with no ramps).
I've plotted a 3D move using a Straight Line Move and it shows acceleration (as you would expect).
I've attached modified versions of the Arc and Stragiht Line move examples - position plots highlighted..
Any thoughts on how to get proper accelerations out of the Z axis for an arc move?
Attachments:
Arc Move.vi ‏299 KB
Straight Line Move.vi ‏249 KB

Yeah, my bad - I was confusing the curved X vs Time with the acceleration - the curve is obviously a sineusoid which is what you would expect from a circle.
The Z is linear as you would also expect.  Switching the plots to Acceleration (which I thought I had set) shows the accelartion in X/Y and Z.
One follow on question though - how do you use the Motion Assistant VI's exactly?
I have the profiles that I want but not sure how to input them into the 73xx motion hardware, confused with what to do with the result of these VI's - how to get them into the motion hardware..
If you create an LabView VI from Motion Assitant it doesn't use the "MA" VI's from the Motion Assitant sub-menu, it appears to create everyting using traditional flexmotion subvi's.

Similar Messages

  • ImplementationOpt Design[Opt 31-67] Problem for AXI bus between data mover ip and axi interconnect

    I'm using vivado 2014.4 and win7 64bit for my zynq design.  Previously, the design is good. I made some revisions. Then I came across the problem.
    If the synthesis strategies option is flow_runtime_optimatized(Vivadio synthesis 2014), everything works
    If the synthesis  strategies option is default options (the synthesis settings are shown in the picture), Synthesis is still fine, but the implementation failed. Some of the errror msg is shown below.
    The error message shows there are unconnected pins on axi_interconnect_1. The connections between AXI master from my own IP(it is the axi port from a DataMover IP) and axi_interconnected is shown in the attached picture.
    The synthesis schematic is also checked. The connections of the axi_interconnect have some pins unconnected as shown in the picture (interconnect_schematic_synth.PNG). The connections of my IP are good, but it misses some pins (like _arready, _rvalid, _ruser, _bid...).  The master AXI port in my port is from the data mover IP. By default, the data mover IP doesn't have these missed pins. The AXI port on my IP declares these missed pins, but actually they are not connected to any inside my IP. 
    Btw, previously, the project works well in my design. But now it doesn't.
     I also check the connections of the axi_interconnect when synthesis strategies option is flow_runtime_optimatized, the schematic show all pins are connected. 
    Please help. Thx.
    Sam
    ImplementationOpt Design[Opt 31-67] Problem: A LUT1 cell in the design is missing a connection on input pin I0, which is used by the LUT equation. This pin has either been left unconnected in the design or the connection was removed due to the trimming of unused logic. The LUT cell name is: design_top_level_i/Zynq_Processing_System/axi_interconnect_1/s00_couplers/auto_pc/inst/gen_axi4_axi3.axi3_conv_inst/USE_READ.USE_SPLIT_R.read_addr_inst/size_mask_q[3]_i_1__0.
    [Opt 31-67] Problem: A LUT2 cell in the design is missing a connection on input pin I0, which is used by the LUT equation. This pin has either been left unconnected in the design or the connection was removed due to the trimming of unused logic. The LUT cell name is: design_top_level_i/Zynq_Processing_System/axi_interconnect_1/s00_couplers/auto_pc/inst/gen_axi4_axi3.axi3_conv_inst/USE_READ.USE_SPLIT_R.read_addr_inst/access_is_incr_q_i_1__0.
    [Opt 31-67] Problem: A LUT2 cell in the design is missing a connection on input pin I1, which is used by the LUT equation. This pin has either been left unconnected in the design or the connection was removed due to the trimming of unused logic. The LUT cell name is: design_top_level_i/Zynq_Processing_System/axi_interconnect_1/s00_couplers/auto_pc/inst/gen_axi4_axi3.axi3_conv_inst/USE_READ.USE_SPLIT_R.read_addr_inst/access_is_incr_q_i_1__0.
    [Opt 31-67] Problem: A LUT2 cell in the design is missing a connection on input pin I0, which is used by the LUT equation. This pin has either been left unconnected in the design or the connection was removed due to the trimming of unused logic. The LUT cell name is: design_top_level_i/Zynq_Processing_System/axi_interconnect_1/s00_couplers/auto_pc/inst/gen_axi4_axi3.axi3_conv_inst/USE_READ.USE_SPLIT_R.read_addr_inst/command_ongoing_i_2__0.
    [Opt 31-67] Problem: A LUT2 cell in the design is missing a connection on input pin I0, which is used by the LUT equation. This pin has either been left unconnected in the design or the connection was removed due to the trimming of unused logic. The LUT cell name is: design_top_level_i/Zynq_Processing_System/axi_interconnect_1/s00_couplers/auto_pc/inst/gen_axi4_axi3.axi3_conv_inst/USE_READ.USE_SPLIT_R.read_addr_inst/size_mask_q[1]_i_1__0.
    [Opt 31-67] Problem:

     
    Hi Muzaffer
    THx for your reply. 
    I tried implementation with opt_design option -directive Explore, it didn't work.
    Aslo I disabled the opt_design and enabled phys_opt_design, it still has the same error in the implementation.
    I would try to delete the pins related  _AR_(like _arready, etc. ) and _R_ (like _rdata, _rid, etc.) pins in the AXI4 port in my IP. The data mover ip doesn't contains thes pins. I want  to see whether it works this way.
    Hopefully, the new vivado version will help. 

  • SoftMotion: Using an axis in different coordinate spaces

    Hi,
    I am trying to set up a SoftMotion system with up to 5 axes and using these axes in different configurations usings coordinate systems.
    Problem is:
    I have axes X1, X2 which are running in parallel, as well as axes Y, Z and W.
    First setup is running only X1 and X2, all other drives need to be disabled. Move start and stop must be synched -> Use "Coordinate Space A"
    Second setup is running X1,X2 and Y, all other drives need to be disabled. Move start and stop must be synched -> Use "Coordinate Space B"
    etc.
    Unfortunately an axis that has been configured for "Coordinate Space A" can not be configured to be used in "Coordinate Space B".
    Configuring all available axes to be used in a single coordinate space will result in an error when trying to perform a move and one or more axes are drive disabled.
    Any suggestions?
    Regards,
    Swen

    Hi Swen,
    Depending on the moves you are making, you could put all of the axes in the same coordinate space and only perform moves on certain axes. This would work well with straight line moves, but not as well with arc moves. For example, I could put X1, X2, Y, W, and Z all in the same coordinate space. When I want to move X1 and X2, I command a straight line move on the coordinate that only moves axes X1 and X2 and keeps the other axes stationary. The stationary axes would still be enabled, but they wouldn't be moving.
    I might be able to come up with some more suggestions if you give me more information about your requirements.
    Thanks,
    Paul B.
    Motion Control R&D

  • Arc.vi 's input "Radius" is distance from arc centre or distance from vector space centre 0,0

    Hi everybody,
    I am using PXI 7352 +UMI+2 servo Drives+motors which move a table in linear direction X and rotate it along Z axis C.
    How can I use Load Circular Arcvi if my  one axis is linear and other is rotary e.g. XC table.
    Thanks
    Surender Kumar
    Reckers Automation
    Delhi

    Surender,
    You can run contours with an (almost) infinite number of position
    points. The trick is to load new data into the buffer when it has
    depleted to a certain amount of points. There is an example in LabVIEW
    (Buffered Contouring (Rose).vi) that shows this method. Maybe there was
    a bit confusion when you talke with NI India in terms of wording. There
    are also onboard variables (about 100) but these are not used for
    contouring. Contouring data is stored in an onboard buffer.
    In contouring mode the board interpolates through the position points
    stored in the buffer with a rate of 10 ms (minimum). Inbetween these
    poionts the board interpolates using a cubic spline algorithm. In terms
    of accuracy this method is equal to the arc move as arc moves use a
    similar internal mechanism as contouring.
    With contouring of course you could take care of the tool radius
    compensation in your calculations but there is no ready to use solution
    for that in LabVIEW. Maybe a 3rd party solution is available for that
    (please refer to this thread which you should know
    already).
    Jochen

  • Circular arc challenge

    Hi,
    This is an amazing motion control challnge that I'm putting forward to u guys. I am currently using NI PCI7344 motion controller for 3 axis + spindle motion control system. Before this I have used Fanuc and Fagor CNC controllers which understand G-codes and M-codes. Now, in my application, I want to do simple two axis circular interpolation to draw an arc. LabVIEW provides a VI for drawing an arc. We need to provide the "Start angle", "Travel angle" and "Radius" for drawing an arc using that VI. I'm trying to develop a VI, where I feed the "target position", "radius" and "Clock Wise/Anticlock Wise" to draw an arc. The fanuc and fagor controllers provide this facility. Lets see how NI can compete with them. My application involves parsing and transalation of G-codes and M-codes. If this is done, then using my application, a user can feed the same G-codes and M-codes that are understood by Fanuc and Fagor CNC controllers. This will help eliminate CNC and make people buy PC Based controllers. In this way engineers all over the world, who are conversant with G-codes and M-codes can easily shift towards PC Based control which is much easy to use and upgrade. Hence its a challenge for all motion control guys in NI to try implement this one and proide me with a VI.  
    Regards,
    Giridhar Rajan
    Automation Engineer,
    Cruiser Controls
    Mumbai, India

    Hi Giridhar,
    It sounds like you have a great understanding of how our arc move VI's work.  Using LabVIEW it is definitely possible to write and implement code that would translate target position, radius, and direction parameters to the start angle, travel angle, and radius parameters need to perform arc moves using our functions.  We at National Instruments provide LabVIEW as a flexible tool that can be used to write programs that can take user input and convert that data to parameters that can be used by our hardware.  We in the Applications Engineering department are here to support the software, functions, and hardware that we provide, but we can't write custom programs for our customers.  With your understanding of how our motion VI's work, it should be a simple matter of adding extra LabVIEW code to your VI to translate the parameters.  Good luck and have a great day.
    Michael Chaney
    Systems Engineer - TestStand
    National Instruments

  • Converting acceleration to displacement

    Hi guys,
    I'm basically doing an experiment which involves using 2 x triaxial accelerometers to calculate displacement of the centre of a rotating circular tool (to which an accelerometer is attatched to each side) and I'm using labview 2009 to collect & analyse the data.  I know that there are limitations to this due to noise, but thats fine, i'm just going to compare it to some lasers... 
    However, I think there is a problem in the proceedure/maths of my vi which is causing a completely wrong displacement.  I've attatched a screen shot of the front panel in action whilst its running and my vi.  It would be great if anyone could point out whats going wrong.
    The vi is basically displaying the displacement from the lasers and from the accelerometers simultaneously.  for displacement from the accels I am subtracting the acceleration of one axis from the corresponding axis on the opposite accel and halfing it to gain the acceleration due to movement (roughly) of the tool's centre rather than due to rotation.  I then double integrate it to give displacement, find the magnitude between the 2 axis i'm interested in and plot it on a polar plot with theta being an angle observed independantly from an encoder.  I have no idea whether this is the correct approach, any help will be most welcome!
    Regards
    Luke
    Solved!
    Go to Solution.
    Attachments:
    Displacement_Rig.vi ‏497 KB
    front panel.GIF ‏77 KB

    Thanks Jeff for the reply and for your help with the producer/consumer loop.  I'm quite new to LabVIEW and am so far learning from examples and the forum so your advice is much appreciated.  I think I understand now the flaws in the previous loop structure.   I had a look at a few examples and saw the 'wait (ms)' function in the consumer loop so I stuck it in since it sounded useful.  With regards to the relationship between the queue data and the counter data; I thought there was a problem but I could never fix it.  Since you highlighted its timing issue, (and I don’t want to make everyone else do the work for me!) I’ve tried juggled it around until both sets of data are being queued together.  Am I heading in the right direction? Cheers Luke
    Attachments:
    displ_rig_v3.vi ‏493 KB

  • Cs6 3d problem - no access to z axis.

    I am having a problem with 3d in CS6.  When I am working in 3d, sometimes I will create a 3d layer, and while it opens up in the 3d panel, I am restricted to moving aroung the x axis and y axis only, and cannot move around the z axis. The tools at the top of the panel are restrict to the first tool only, and it revolves around the x and y axes only.   This happens intermittently, and to correct I have to restart my computer.  How do I resolve this problem.

    Dtee220, could you please try to express the problem you're seeing using more complete / detailed language?  I don't know if you're having a language problem but what you wrote doesn't make sense to me and it's not exactly clear what you're asking.
    If you're having problems that seem to be corrected by restarting Photoshop, I suggest that you may have system problems.  First and foremost with 3D, check the web site of the maker of your video card to see if they have released an updated display driver.
    -Noel

  • Z axis missing

    I am using Adobe CS6 Extended. When I click 3D, I can't move the object along the "Z" axis. When I move around I only have the X and Y axis. How do I get the Z axis back. It's driving me crazy!
    Thanks in advance.

    The Drag mode of Move Tool is screen X and Y. The Slide mode, highlighted in screenshot, is screen X and Z. If you're using modifier keys to switch mode, note that the cusor shape doesn't always change correctly.

  • How do I remove Yahoo Axis? It does not show in my extensions!!

    How do I remove Yahoo Axis? It does not show in my extensions!!

    Hi..
    Open the Finder. From the Finder menu bar click Go > Go to Folder
    Type this exactly as you see it here:
    ~/Library/Safrari/Extensions
    Click Go
    If you see the Yahoo axis extension there, just move it to the Trash.
    If it didn't show up there, move the Extensions.plist file from the Extensions folder to the Trash.
    Quit then relaunch Safari.

  • MAX kills axis

    Hi,
    I'm working on a school project for my thesis.
    This project has stood still for over 6 years and is now continued by me.
    Specifications:
     - UMI
     - PCI-7344
     - Three Drives: TLD134F
     - Three servo engines: SER....3S
     - Firmware of the PCI-7344 is updated
    Situation:
    It's goal is to read the depth of cordinates in a XY-plain with a laser.
    So there are three portal robots (Berger Lahr). Two portal robots move in the X-axis
    One portal robot moves in Y-axis and has the laser attached to it.
    Here comes the issue:
    All portal robots work perfectly with Drive 1(connected to Axis 1) in the twin line control tool and in MAX (automated movement).
    Once I try to make a portal robot work with Drive 2(connected to Axis 2) in MAX it kills the axis. In the twin line control tool I can manual move the portal robot. When I try to connect Drive 1, that works perfectly, with Axis 2 it reacts the same as Drive 2 connected with Axis 2. When the Axis 1 is connected with Drive 2 it works perfectly.
    So my conclusion is that it has to do with the Axis 2. Everything is connected the same as Axis 1 and in MAX are all settings & parameters the same of Axis 1.
    I've been searching for a while now and I really don't know what's wrong.
    Can anybody help me?
    Regards,
    Mikail

    Allright after some research:
    Apperently the power for one axis necessary, on the UMI, is 5v max?
    But the power supply in the electric cabinet(that berger lahr has delivered) is 24V for one axis
    Should I add a resistance?
    Situation in the electric cabinet:
    A converted DC signal of 24V is connected to each drive.
    From each drive to each respective axis.
    But i don't know how much that voltage is?
    Only one, the one that worked 6 years ago, is certainly not 24V (i've checked that with an universal meter and it was constantly 0.45V)
    The other one just kept rising from 1 to 6V, I didn't check if it went further than that.
    I've added a "scheme" to explain what I mean in my post
    Attachments:
    Situatie.JPG ‏26 KB

  • Contouring wrong axis moves

    I am trying to use the Contouring with the Motion Assistant generating my moves.
    When I used the stand alone examples - it works fine, but when I configure a straight line move where the X-Axis is supposed to move, but the Y axis is supposed to stay the same the Start motion shows the Y axis trying to move.  I have not changes the code generation technique between the correctly working 1st move that moves the Y axis first (trying to do a square, making the sides using contoured moves where one axis stays put while the other traverses).
    The data arrays I am feeding to the Buffer VIs have X,Y interleaved properly.  I am using the same code to generate the Vector Space in the move that runs properly vs the one that tried to move improperly.  When I plot the data it appears to be generated correctly.
    I don't know why the system keeps trying to move the Y axis on subsequent moves when the value for Y is its current position and the X axis is the one with the channging targets over time (per the contouring output).  I get no generation errors from the Motion Assistant VIs, or the Vector Space setting VI.
    Ryan Vallieu
    Automation System Architect

    I was mis-interpreting ABSOLUTE in the set-up for ABSOLUTE CONTOURING - it doesn't mean the absolute position from the home setting - every move is considered starting at 0,0 from your CURRENT location regardless of it NOT being true absolute 0,0....
    ugh
    "All contour moves are relative, meaning that the move starts from the current position of the axis or axes. In absolute contouring mode, positions are interpreted with respect to the starting position of the contouring move. In relative contouring mode, positions are interpreted with respect to the previous position in the contouring data array."
    Ryan Vallieu
    Automation System Architect

  • Need help for proper blending parameters

    Hi,
    I am trying to make a very simple movement with 2 servos:
    go down 4 meters,
    go right 20 cm,
    go up 4 meters,
    go right 20 cm,
    etc..
    However, during those 4 meters up down moves, the speed should be constant.
    I wasnt happy wth the blend movements so I decided to replace the go right move with a circular arc of 10 cm radius.
    It looked great on the graph with simulated axis until I plotted their speed on a chart: white is Y axis and green is X axis
    I thought that the circular arc would be a great way to connect the up and down straight-line moves by automatically regulating the X & Y speeds. So in order to keep a constant speed during the transitions, I chose those parameters:
    blend mode: at deceleration
    smooth: 0
    acceleration/deceleration/acc & decc jerk: 0
    however, as you can see on the charts, there are a few glitchs during the transitions. I played all day with all those params but without success.
    I dont know if this will affect the servo motors or if it not even necessary to deal with this problem but to be on the safe sde, I would like to know how can I go from one movement to the other without those glitches.
    Thank you for your help

    Hi Kira,
    Thank you for your input. I am already using NI Softmotion and according to NI support, there is a bug with arc move bending. I couldnt find any info on it so they gave me a CAR link but I cant access it, so I dont know how old is this bug nor if it can be fixed it anytime soon:
    http://notesarchive.ni.com/Archives/cararc01.nsf/weballinfo/8625749f006ebc58862571b900585133
    We are designing a painting prototype using a spray gun on a linear system using 3 n 1/2 axis (X, Y, Z, and a pneumatic for switching between horizontal/vertical painting). Here are some screenshots of the spray gun XY trajectories:
    According to the spray gun paint spread, the trajectory changes. For example, here the spreads are 15 and 20 cm so the spray gun must go up/down 11 or 8 times and left/right 27 or 20 times accordingly.
    I already looked into the contouring method but it looked like a lot more work for proper speed control and as I said, speed is one of the most important parameter in our system.
    Thank you very much for your help Kira, I will look into the contouring method more in detail and will most likely have to restart my prog from scratch

  • Smooth Sinusoidal Motion without Gearing, Onboard Buffer/Contouring?

    Hello,
    My end goal is to have a stepper motor (200 steps/rotation) produce a smooth sinusoidal motion at 1Hz with an amplitude of 200-500 steps. Everything I've read so far has lead me to believe that this is impossible given the 7330 Motion Controller.
    My best results were produced when an array of points were created, and used to change the Target Position inside a While Loop. The frequency was varied by changing number of points in the array that represent a complete cycle (an array of 32 data points results in a higher frequency than an array of 64 data points). However, this was not acceptable as the motion at 1Hz was not smooth. I've tried playing around with acceleration, deceleration, velocity, and S-curve Time, but to no avail.
    I've thought about using the built in "Load Circular Arc" VI, and just assigning the 2nd motor axis as a dummy output, but this is not a good solution as I will eventually be using all 4 axis of the Motor Drive.
    My question: Is it indeed impossible to produce a smooth sinusoidal motion of 1Hz with a 7330 Motion Controller? I realize "smooth" is objective, but the motion produced by the "Load Circular Arc" VI is "smooth" enough.
    Equipment/Software:
    PCI 7330 Motion controller
    MID-7604 Motor Drive
    LabView 2009
    Any information towards this matter is greatly appreciated. Thank you,
    Nick
    Solved!
    Go to Solution.

    Nick,
    as it looks like you have already found all possible solutions for your task. In fact arc moves with a dummy axis would be the only reliable solution for your setup. If you can't afford to waste an axis, the only alternative solution is to switch to a 7344, which supports contouring.
    Please note, that the 7330 is our low cost solution for basic motion control tasks with stepper motors. Advanced trajectories are not within the scope of this product, so if this is a requirement, please contact your local NI branch. Depending if you have just recently purchased the 7330 or not, they might be able to offer you a hardware upgrade to the 7340.
    Kind regards,
    Jochen Klier
    National Instruments

  • Concept of circular interpolation

    Hi,
    I'm interested in knowing the concepts / formulas / algorithms invovled in circular interpolation. Suppose I give the position where the I have to reach in a 2-D plane and the radius of the circular arc, then the controller feeds the X-axis drive with a sequence of position commands which follow a mathematical function and at the same time, the controller also feeds another set of position commands to Y-axis, which follow another mathematical function. Also the velocities of X-axis and Y-axis follow two seperate mathematical functions. The combination of all these mathematical functions executed simultanously results in an interpolation. This is my understanding of circular interpolation. I am interested in knowing these four functions for X position, Y-position, X-Velocity and Y-Velocity. Kindly help me out with this. Kindly let me know if my understanding of the concept is wrong and what may be right approach to this problem. I do not want to use the arc vi provided by NI as it takes 'start angle', 'travel angle' and 'radius', but I want to feed 'start position', 'final position' and 'radius' to achieve th arc.
    Regards,
    Giridhar Rajan
    Automation Engineer
    Cruiser Controls
    Mumbai, India

    Hello,
    The National Instruments supported method for generating a circular arc move is to use Load Circular Arc.flx.  However, it is perfectly possible to generate your own interpolation algorithm.  I would suggest that you take a look at the following link for a starting point in generating move data:
    Command Generation
    http://www.control.com/control_com/Papers/CommandGeneration_html
    This is a third-party interpolation algorithm, but it may be helpful in developing your own method.
    Regards,
    Scott R.
    Applications Engineer
    National Instruments

  • NI Motion Assistant LabVIEW Code Generation Error

    Hello, the following is my current setup:
    NI PCI-7334 motion control board
    NI UMI 7774 splitter board
    3 x NI P70530 Drives
    3 x NI CTP12ELF10MAA00 Stepper Motors
    3 x Power supply units for drives
    LabVIEW 2010
    NI Motion Assistant 2.6
    Motion and Automation Explorer 4.7
    I have built a three axis motion system that I am trying to configure with labview. After verifying that everything was set up correctly, I opened MAX, updated the firmware to my motion control board, and intitialized the controller. Since then, I have created many basic programs using the Motion Assistant Software to test the movement of my device. Everything works fine while using the Motion Assistant software (I have three axis movement, multidirectional control, and can perform various straight line and arc moves). My problems begin when I try to use the code generation feature.
    When trying to use the code generation feature to output a labview diagram, I run into a problem where a dialog box pops up and says "Find the vi named ...."
    Some examples of the names that come up are: Configure Vector Space.flx, Vector Space To Control.flx, Motion Error Handler.flx.
    To be clear the program in Motion Assistant that I am trying to export to LabVIEW code is composed of two individual steps. One that tells X,Y, and Z motors to move forward 25 revolutions, and one step that tells them to move backwards 25 revolutions.
    I have made many other programs in Motion Assistant that run fine, but I always receive similar errors when trying to use the code generation feature to export to LabVIEW. Is there something that I can do to solve my problem?
    Thank you for your help.

    Hi Joe,
    I am using Ni-Motion Assistant 2.6, Ni-Motion 8.1, and Motion and Automated Explorer version 4.7.
    The code I posted is supposed to tell Axis 1 to move 40 revolutions at 400 rpm. It works fine in Ni-Motion Assistant but when I try to generate a LabVIEW diagram I receive the following error, "Find the VI named 'Motion Error Handler.flx'". I have had it search my directory, as well as the disk that I installed both LabVIEW and Ni-Motion but no luck. Thanks for your help.
    Attachments:
    1111.vi ‏9 KB
    1 axis movement.zip ‏8 KB

Maybe you are looking for