Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations GregLocock on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Curve along a cylinder

Status
Not open for further replies.

shanghongcao

Mechanical
Sep 27, 2012
30
The center points of the cutting tools(pin) are given in X and A (rotation axis)
The cutter diameter (pin) is constant, e.g. 40mm.
The pin goes around the cylinder for one turn (360 degree) or more to generate a curve slot.
The points are given in a txt file (thousands of points)
I can import the points as a spline.
How can I warp the points on the cylinder?
Slot: How to sweep a cylinder with 40mm diameter along the curve? After the sweep is generated, subtract it from the cylinder to create the model with the slot?
 
Replies continue below

Recommended for you

Thank you, Frank
With your journal, I can import the splines directly from the original txt file. A cylinder can be inserted in. the splines will be wrapped on the cylinder very well.
I have been struggling in doing the offsetting the curve in order to create the slot. Can you please tell me how to do the offsetting? Do I have to manually modify the original txt file in order to run the journal again to create the two side curves?
 
I appear not be able to clearly explain where I am coming from. Let me try again. The current journal you have cannot be used in any way to create the additional splines. YES I do have a journal that creates a planar spline. The spline is then wrapped around a cylinder and the two additional splines are created. The reason I have not made it available is because you had a concern about the quality of the spline (in one region). I have sent you a part file and needed you to determine if the splines created are good enough. If not I believe the data should be improved. Please respond to this question. If you choose not to respond to this I can be of no further help.

Frank Swinkels
 
Thank you, Frank. I believe that your method is exactly what I am looking for.
At the same time, I am also asking the cam designer to provide me more accurate points, especially for X-axis coordinates. The decimal places for X-axis in the original txt file don’t look enough. The angle value looks OK.
 
Thank you Frank & Toost, Could you please take a look at this file attached? The quality of the curve is very good. i don't worry about the smoothness of the curve.

The reference diameter is 121.5mm
The Pin diameter is 40mm

I believe that X will be still A from the table
Y=(121.5/2)*Cos(A)+(Y value from the table)
Z=(121.5/2)*Sin(A)

Not sure exactly what I think is correct. Thank you again for your help.
 
 http://files.engineering.com/getfile.aspx?folder=ca372938-9427-478f-bc28-027cbc60f311&file=1BBG41002400_Open_Cam_with_lead-in_and_lead-out.zip
Attached is a .txt file (change .txt to .vb) for a journal to test against original data. The journal completes the full process i.e. create planar curve -> wrapped curve -> offset curves -> sweep feature -> boolean subtract. To improve the data I I used four point 0 -> 0.4, then every 10 degrees and finally four points from 359.7 to 360.0. The reason for the first and final four points is to ensure good direction control for the wrapped curve. I have only used some 35 intermidiate points. This is quite a good curve for the initial planar curve. Wrapping it adds points on the cylinder face. I really think that the whole method should be rethought. You really only need at a maximum seven points for each cam section (dwell, rise and fall). Also using math equations even cycloidal equations, ensures high accuracy.

I dont understand the latest data?

Frank Swinkels
 
 http://files.engineering.com/getfile.aspx?folder=d6c8ac9d-d7ec-4ab2-b2d5-a746381206f6&file=CylinderGroove.txt
The last question, ?
You attached a zipfile containing a dxf and two textfiles. The DXF translates into something completely unusable ( See attached image)
The highlighted spline has 3138 poles (!) and even without checking the smoothness, i would say "no, it cannot be smooth because it is completely overloaded with data", Too much data doesn't make things better, rather the opposite. For example, If we would try to fit an arc to three points we would find an exact solution, But if we would try fit the same arc to 3138 points we would very soon have tolerance problems .( or decimal problems. )
In this case we expect the points to be exact and then we fit a spline, which can have any possible shape, to ALL these points. The result is of course non-smooth since the points "cannot" be exact enough. The result can be smooth if we use some kind of algorithm that tries to reduce the amount of data ( which will make the curve smoother) and allows a deviation to the points. This is exactly what the Fit Spline in NX does.
Also, one should not attempt to create a single spline that encompasses the entire distance, again one will have to fight the data mass problem trying to make the spline linear in one section whilst trying to find the correct shape in the next section. dxf example is better, divide different shapes into separate curves, then each curve can be as simple as possible.

Regards,
Tomas
 
 http://files.engineering.com/getfile.aspx?folder=58c7ca2c-698c-4c7c-ad14-8a356872d5b7&file=imported_spline.png
I don't have translators so cannot comment on dxf however the data file is not workable because I don't know the meaning of

T 40.0000 1 69.0000 18.5000 .0000 -31.5000 -70.0000
82.0000 .0000

also the points data values start of as three values e.g.

89.4327422 -11.9672732 .0000000

but change to two values (actually three but no space between second and third)

89.4805296 -12.0150176-100.0000000

This makes it very difficult to read the data. Not impossible but I am not prepared to do this when it appears to me a total lack of care.

Regarding the comments about the number of spline points I have not seen any comments about the last complete program that uses many less points and creates the groove.

Frank Swinkels

 
I have used

X = column 1
Y=(121.5/2)*Cos(column 3)+column 2
Z=(121.5/2)*Sin(column 3)

and created points in the attached part. You should be able to see that the points do not wrap around a cylinder.

That is the data cannot be used directly.

Frank Swinkels
 
 http://files.engineering.com/getfile.aspx?folder=1d595328-efaa-4ce5-85e8-c98e39a9452e&file=pointdata1.prt
I have had a talk with a math professor.

He said

X = column 1
Y=(Reference diameter/2)*Cos(column 3)
Z=(Reference diameter/2)*Sin(column 3)

Y value in the column 2 should be the machine movement value in Y-axis.
When building the model, the column 2 should not be considered at this stage.
 
Attached are two further examples based on the the latest data. Which method is correct?

To be able to supply a journal you still need to supply much more consistant data files.

1) The first data had two columns. The second two data files had three columns.

2) The first data file could be read with delimiter. The second two I had to use fixed format.

3) As mentioned by Toots and myself it is very poor design to create splines with so many points since good design suggest we first create a planar curve which is then wrapped around the cylinder. Therefore we only need a maximum of seven points for each of the cam motions (dwell, rise, dwell, return) for the planar spline. The wrapped spline will have sufficient spline points according to the accuracy required.

Without these issues addressed I am not prepared to supply a journal because I am sure you will get errors most times.

Frank Swinkels
 
 http://files.engineering.com/getfile.aspx?folder=4daec532-5db0-4c27-a0c1-0406ce2c3230&file=OpenCamWithLeadInOut.zip
Status
Not open for further replies.

Part and Inventory Search

Sponsor