Thảo luận Post Processor 3 4 5 axis

QuyenQCM

Active Member
Ðề: Thảo luận Post Processor 3 4 5 axis

@Quyền: ứng dụng viết bằng C++ không chạy được cho những hệ điều hành đã bỏ cơ chế quản lý 16bit như windows Vista, seven... và giao diện GUI thì không thể có được như ở cái hình chú đã Post.
.
Bác Hải xem qua cái này nhé[video=youtube;[MEDIA=youtube]BODLEt-fM]http[/MEDIA]://www.youtube.com/watch?v
/video]
còn muốn chứng minh nữa thì mời bác đến cty em,mọi người vẫn sài C++ để làm mấy cái phần mềm điều khiển trên Win XP Win7 thậm chí Win8.
tks
 
Ðề: Thảo luận Post Processor 3 4 5 axis

Chú show cái đoạn code C++ của cái ứng dụng Post của chú lên đi, anh chỉ cần cái đoạn tạo GUI trên wimdows như cái ảnh chú show thôi ấy nhá!...
 
Last edited:

QuyenQCM

Active Member
Ðề: Thảo luận Post Processor 3 4 5 axis

Chú show cái đoạn code C++ của cái ứng dụng Post của chú lên đi, anh chỉ cần cái đoạn tạo GUI trên wimdows như cái ảnh chú show thôi ấy nhá!...
bác Hải chơi khó em rồi, giao diện người dùng GUI thì cái video trên em đã chứng minh rồi, căn bản e ko biết gì về IT, thấy bác nói là không được em cũng chẳng biết chứng minh kiểu gì, hôm nay tình cờ gặp được cái video này nên mới khuấy cái topic này nên thôi... có bác nào là dân IT lên tiếng giúp cái
 
Author
Ðề: Thảo luận Post Processor 3 4 5 axis

bác Hải chơi khó em rồi, giao diện người dùng GUI thì cái video trên em đã chứng minh rồi, căn bản e ko biết gì về IT, thấy bác nói là không được em cũng chẳng biết chứng minh kiểu gì, hôm nay tình cờ gặp được cái video này nên mới khuấy cái topic này nên thôi... có bác nào là dân IT lên tiếng giúp cái
Dân bán IT đây ! mình dân Cơ khí 100% + IT 70% = 170 % :4:
Nói dễ hiểu chút : C++ bản thân nó không đi kèm với thư viện hàm hỗ trợ GUI nào cả thế nhưng C++ hoàn toàn có thể truy cập vô các thư viện GUI của Thư viện sẵn có nào đó để gọi các hàm khởi tạo chế độ đồ hoạ cho ứng dụng. Nếu lập trình các ứng dụng cho WINDOW thì hiện nay có thể dùng C++ gọi các hàm GUI trong thư viện MFC có trong bộ Visual Studio của MS hoặc sử dụng WinAPI để lập trình GUI có điều hơi khó và cũng nguy hiểm vì đây là hàm mà Win đang sài mà.

Tóm lại C++ muốn có GUI cho window cần gởi thông tin hiển thị thông qua GUI sẵn có của WINDOWS hoặc MFC ...lợi dụng hàm này để đưa ứng dụng code trên C++ chạy trên win. Như vậy thỏa mãn thắc mắc của Quyền và các bác quan tâm về C++

thanks !
 
Last edited:

iPumpkin

<center><b>CAM Programmer</b></center>
Ðề: Thảo luận Post Processor 3 4 5 axis

Mấy bác nói IT chẳng ai hiểu gì hết nên không thấy ai tham gia hết trơn. Hihi, có thể trở về "mặt đất" với post 3,4,5 trục không ?.

Mình thi triển công phu với post 5 trục rồi. Giờ đến phần khó nhất, thử sức với 3+2 và 3+2 tuy nhiên spindle máy lúc này không theo trục Z nửa mà theo trục Y xem sao nhé. Head sẽ đổi hướng từ Z sang Y.

Lưu ý là viết post cho máy 4 trục có bàn A xoay và đầu head B chỉ indexing mổi lần là 3 độ. Để đơn giản chi tiết là 1 khối vuông 100x100x100, xẻ 1 góc 45 độ cắt 1 nửa khối vuông theo đường chéo chia khối vuông ra 2 phần bằng nhau. Post cho máy nào cũng được. Chú ý là máy không có RCTP, không có Traori, M128 nhé. Cái máy này là cái y chang cái mà bác Quyền hỏi bác Chimen_bka đấy.
 

iPumpkin

<center><b>CAM Programmer</b></center>
Ðề: Thảo luận Post Processor 3 4 5 axis

Cái này là Ma trận đơn vị bác Phúc ah. Còn tính toán thì sao ?
Hi bác Chimen_bka & bác Hải, nếu mà cái ma trận và công thức này không đúng thì mình gửi ra Hà Nội cho hai bác mổi người 1 ..chai bia Heniken. :21:



Các bạn đừng sợ vì nhìn nó ghê vậy, tuy nhiên khi tính thì phần lớn chỉ là 0 với 1, do đó cái ma trận nó đơn giản hết và đưa về như mấy cái hình mà mình post ở trên. Các phần mềm post đều có sẳn ma trận + thuật toán có sẳn, mình chỉ việc xác định cho đúng cấu hình hình học của máy mà thôi.

http://en.wikipedia.org/wiki/Euler_angles

Về nguyên lý của nó thì chỉ đơn giản gói gọn trong cái hình này.

http://en.wikipedia.org/wiki/File:Euler2.gif
 
Last edited:
Author
Ðề: Thảo luận Post Processor 3 4 5 axis

Hi bác Chimen_bka & bác Hải, nếu mà cái ma trận và công thức này không đúng thì mình gửi ra Hà Nội cho hai bác mổi người 1 ..chai bia Heniken. :21:



Các bạn đừng sợ vì nhìn nó ghê vậy, tuy nhiên khi tính thì phần lớn chỉ là 0 với 1, do đó cái ma trận nó đơn giản hết và đưa về như mấy cái hình mà mình post ở trên. Các phần mềm post đều có sẳn ma trận + thuật toán có sẳn, mình chỉ việc xác định cho đúng cấu hình hình học của máy mà thôi.

http://en.wikipedia.org/wiki/Euler_angles

Về nguyên lý của nó thì chỉ đơn giản gói gọn trong cái hình này.

http://en.wikipedia.org/wiki/File:Euler2.gif
cảm ơn bác Phúc vì ma trận đó. Chimen_bka đã nghiên cứu nó cũng lâu rồi và đang tìm hiểu về các máy đặc biệt vidu như vec tơ tool theo phương x hoặc y chẳng hạn và vẫn dùng các ma trận đó để tính toán kết quả. Khi nào có thu hoạch sẽ tâm sự với các bác.
Quay lại Post 3+2 của bác Phúc nhé, bác xuất chiêu đi nhé với Fanuc sau đó các thành viên sẽ tiếp chiêu.

thanhks !
 

iPumpkin

<center><b>CAM Programmer</b></center>
Ðề: Thảo luận Post Processor 3 4 5 axis

Chimen_bka đã nghiên cứu nó cũng lâu rồi và đang tìm hiểu về các máy đặc biệt vidu như vec tơ tool theo phương x hoặc y chẳng hạn và vẫn dùng các ma trận đó để tính toán kết quả. Khi nào có thu hoạch sẽ tâm sự với các bác.
Hi bác chí mèn, về 3+2 mình với iHai247 có thảo luận với nhau về cái này cũng khá lâu. Nói chung là khá phức tạp, trước mình và Hải đều dậm chân tại chổ vì không có máy để mà thử nghiệm, mình nghĩ Hải có thể biết và gặp thực tế rồi, tuy nhiên cách thể hiện và hướng nghiên cứu của bác Hải và mình khác nhau. Hải thì nghĩ đến chuyện viết lại, mình thì có sẳn Post rồi chỉ chỉ cấu hình lại và dùng. Vì vậy nên mình không có dùng đến ma trận này, tuy nhiên chắc chắn 1 điều là các Post dùng hệ trục Euler để xoay hệ x,y,z đi. Như trong Cimatron hay Catia đều dùng câu lệnh ROT@, tọa độ và vector chỉ phương thì trong APT hay phần mềm CAD/CAM đã nội suy ra rồi.

Bật mí tí xíu là Fanuc dùng G68.2, Siemen dùng Cycle800, Haidenhein dùng Cycle Plane 18, 19. Mình nghĩ mình đã nắm được cách viết 3+2 cho Catia đối với Siemen và Haidenhein. Còn Fanuc thì mình có sẳn 1 cái Post xuất ra G68.2.

À, bửa mình nghe bác nói xuất Toolist trong Catia ra file excel - bác làm luôn 1 đoạn video minh họa. Mình thấy cũng hay mày mò làm thử. Mình có được đoạn code cho macro:
'

Sub CATMain()
Set objDialog = CreateObject("UserAccounts.CommonDialog")
objDialog.Filter = "Text files|*.txt"
intReturn = objDialog.ShowOpen

' Set objDialog = CreateObject("SAFRCFileDlg.FileOpen")
' intReturn = objDialog.OpenFileOpenDlg

If intReturn Then
szOpenFileName = objDialog.FileName
szSaveFileName = replace(szOpenFileName, ".txt", ".csv")
szCatalogFileName = replace(szOpenFileName, ".txt", ".catalog")

If CatiaCatalog2Csv(szOpenFileName, szSaveFileName) = False Then Exit Sub

If MsgBox(szSaveFileName & " is created. Do you want to open it?", vbYesNo) = vbYes Then
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "notepad.exe " & szSaveFileName
End If

'Creates a catalog document
Dim Catlg 'As Document
Set Catlg = CATIA.Documents.Add("CatalogDocument")

Catlg.CreateCatalogFromcsv szSaveFileName, szCatalogFileName
Catlg.Close
End If
End Sub

Function CatiaCatalog2Csv(rdFile, svFile)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set inFile = objFSO.OpenTextFile(rdFile)
Set outFile = objFSO.CreateTextFile(svFile)

bFirst = True
bChap = True
keyword = ""
types = ""
Values = ""

Do While Not inFile.AtEndOfStream
Line = inFile.ReadLine
If Left(Line, 8) = "Chapitre" Then
sVal = Trim(Right(Line, Len(Line) - 8))
If bFirst Then
bFirst = False
Else
If Len(keyword) > 0 Then
outFile.WriteLine ("Keywords" & keyword)
outFile.WriteLine ("Types" & types)
keyword = ""
types = ""
End If
If Len(Values) > 0 Then
outFile.WriteLine (Values)
Values = ""
End If
outFile.WriteLine ("END")

If Left(sVal, 3) = "Mfg" Then
bChap = False
outFile.Write ("END")
Else
bChap = True
End If
End If
outFile.WriteLine ("CHAPTER," & sVal)
End If

If Left(Line, 7) = "Keyword" Then
sp = InStr(1, Line, "(type=")
ep = InStr(1, Line, ")")
If sp > 0 Then
sVal = Trim(Mid(Line, 8, sp - 8))
keyword = keyword & "," & sVal
sVal = Trim(Mid(Line, sp + 7, ep - sp - 7))
types = types & "," & sVal
End If

sp = InStr(1, Line, "(value =")
If Not bChap And sp > 0 Then
sVal = Trim(Mid(Line, sp + 8, ep - sp - 8))
If LCase(sVal) = "true" Or LCase(sVal) = "false" Then
sVal = UCase(sVal)
End If
Values = Values & "," & sVal
End If
End If

If Left(Line, 17) = "Description Name:" Then
sVal = Trim(Right(Line, Len(Line) - 17))
If Len(keyword) > 0 Then
outFile.WriteLine ("Keywords" & keyword)
outFile.WriteLine ("Types" & types)
keyword = ""
types = ""
End If
If Len(Values) > 0 Then
outFile.WriteLine (Values)
Values = ""
End If

If bChap Then
outFile.WriteLine (sVal & "," & sVal)
End If
End If
Loop

If Len(keyword) > 0 Then
outFile.WriteLine ("Keywords" & keyword)
outFile.WriteLine ("Types" & types)
End If
If Len(Values) > 0 Then
outFile.WriteLine (Values)
End If
outFile.WriteLine ("END")
'outFile.Close()

CatiaCatalog2Csv = objFSO.FileExists(svFile)
End Function
Nhưng khi chạy Macro để xuất toolist thì báo lỗi. Keke.
Mình định khi rảnh sẽ mày mò, lâu quá không dùng C lại nên quên phần lớn. Bác dùng cái này rồi có thể "bật mí: chút không ? Nghe bác nói về 3+2 mình nghĩ bác cũng còn 9ang nghiên cứu. Mình thì mình có sẳn từ chính hãng + máy đã test nên biết chút ít. Nếu bác bật mí tí về toolist cho Catia, tớ sẽ bật mí lại với bác về macro cho 3+2. Hehe, có đi có lại nhé.

@chimen_bka: để tỏ thiện chí đối với các bác, Catia xoay đầu spindle đi một hướng dùng câu lệnh Syntax: RoateHead / B Axis, Angle ...syntax có thể chưa đúng như trong PPWord ấy là bác tìm được. Program thì bình thường như hệ đề cát - khi post thì phải thêm câu lệnh xoay đầu là xong.
 
Last edited:
Author
Ðề: Thảo luận Post Processor 3 4 5 axis

Bác phúc nói đúng ! Cấu hình cũng được như trong IMS cấu hình cho INPUT APT và OUTPUT Cycle800. Viết mới hoàn toàn sẽ giải nhiếu trường hợp cụ thể hơn với các máy Kinematic đặc biệt.

Đoạn code trên không dùng để lôi toolist ra mà nó dùng để output toàn bộ file catalog Tool "chẳng hạn tool.Catalog " thành file dạng Table như excell. Rảnh mình sửa lại code trên của bác Phúc xong up lên cho bác nhé.

@chimen_bka: để tỏ thiện chí đối với các bác, Catia xoay đầu spindle đi một hướng dùng câu lệnh Syntax: RoateHead / B Axis, Angle ...syntax có thể chưa đúng như trong PPWord ấy là bác tìm được. Program thì bình thường như hệ đề cát - khi post thì phải thêm câu lệnh xoay đầu là xong.
Thực ra Syntax mình có thể cấu hình PPtable để nó output 1 syntax nào đó theo ý mình sao cho post mình viết nó phân tích được chuỗi đó thành thông số cụ thể ( góc xoay B, A, C) và đưa ra cú pháp Code Cycle800.
 
Last edited:

iPumpkin

<center><b>CAM Programmer</b></center>
Ðề: Thảo luận Post Processor 3 4 5 axis

Bác phúc nói đúng ! Cấu hình cũng được như trong IMS cấu hình cho INPUT APT và OUTPUT Cycle800. Viết mới hoàn toàn sẽ giải nhiếu trường hợp cụ thể hơn với các máy Kinematic đặc biệt.

Đoạn code trên không dùng để lôi toolist ra mà nó dùng để output toàn bộ file catalog Tool "chẳng hạn tool.Catalog " thành file dạng Table như excell. Rảnh mình sửa lại code trên của bác Phúc xong up lên cho bác nhé.


Thực ra Syntax mình có thể cấu hình PPtable để nó output 1 syntax nào đó theo ý mình sao cho post mình viết nó phân tích được chuỗi đó thành thông số cụ thể ( góc xoay B, A, C) và đưa ra cú pháp Code Cycle800.

Thật mình mà nói lúc đầu nói chuyện với bác mình hơi hồ đồ. Qua các bài bác viết về post processor mình thấy bác là một trong những người rất am hiểu về lập trình gia công CAM, Post, đặc biệt với Catia - là một trong những người hàng đầu trên Meslab. Chả là mình có đoạn code xuất toolist nhưng xuất ra trong file G-Code, mỗi lần phải copy sang file word nên rất bất tiện. Bác làm ở trong đoạn video xuất ra file excel được là rất hay. Mình đang rất cần đoạn code đó. Nếu bác không chê, mình sẽ đổi đoạn code đó của bác lấy đoạn code macro viết cho máy 3+2 của IMS cho Catia. Hehe.
 
D

dovanhung

Ðề: Thảo luận Post Processor 3 4 5 axis

Xin phép anh em diễn đàn chút là mình có 1 vấn đề về POST chương trình sang NC của NX cần anh em giúp đỡ (anh em addmin thông cảm nếu mình up không đúng vị trí xin thông cảm nhé)
Thứ 1:
Yêu cầu đặt ra là mình cần post trực tiếp từ NX ra đoạn mã sau:
Đoạn đầu
%
O0000
(PROGRAM NAME - D10)
(DATE
-YY - 07-09-14 TIME=HH:MM - 11:17)
N100G21
N102G0 G17 G40 G49 G80 G90
(TOOL - 2 DIA. OFF. - 2 LEN. - 2 DIA. - 10.)
N104T2M6
N106G0G90G54X102.054Y0.A0.S2000M3
N108G43H2Z20.M8
N110Z2.

Đoạn cuối
N112G1Z0.F1000.
N114X101.962Y-.459Z-.025
N1310X99.745Y-.459Z-14.975
N1312X99.654Y0.Z-15.
N1314G2X102.054R1.2
N1316X99.654R1.2
N1318G1Z-13.F2000.
N1320G0Z20.
N1322M5
N1324G91G28Z0.M9
N1326G28X0.Y0.A0.
N1328M30
%
Bước giải quyết vấn đề là mình sửa bộ Post theo links sau
http://www.mediafire.com/download/t67cks82cljby8f/P1G2P0.rar

và kết quả:
Đoạn đầu:
%
:0001(MVA)
G40 G15 G17 G90 G54
G91 G28 Z0.0
/ T01 M06
( Tool Name: MILL, D: 10.0, L: 75.0 )
(Operation: VARIABLE_STREAMLINE)
G00 G90 X-7. Y-32. S0 M03
G43 G00 Z20. H01
G00 Z10.
G01 X-5. Y-32. Z10. F250. M08
G08P1
G03 X0.0 Y-27
G08P0
Đoạn cuối:
G00 Z150.
M09
M05
M30
%
Như vậy mình đang bị thiếu
G49 ở đoạn đầu và G28 ở đoạn sau

Thứ 2
Mình cần Post mà trên đó các tiếp tuyến được hiểu là cung tròn có R hoặc IJK thay vì là các đoạn thẳng ngắn.
Chương trình mình làm thử các bạn xem tại link này nhé!
Chương trình dùng NX9.0
http://www.mediafire.com/download/6pa08ehsjvxhw0y/4X_TEST.prt

Mình rất mong anh em sửa giúp.
Xin cám ơn anh em và mong sớm hồi đáp!
 
G

giatien

Ðề: Thảo luận Post Processor 3 4 5 axis

chào tiền bối! e mới chập chẹ vào nghề CNC công ty em mới về máy 5 trục Brother , nhưng e cặm cụi chỉnh post hoài không ra trục A C toàn ra trục A B hay hay B C không à, trên thấy Video của tiền bối có post ra A C tiền bối chia sẽ cho em post đó với ạ. em xin cám ơn và hậu tạ ạ gtienbtcompany@gmail.com đây là gmail của e, 1 lần nữa xin cám ơn tiền bối!!!
 

lddung

Chuyên gia cao cấp
Ðề: Thảo luận Post Processor 3 4 5 axis

Không phải hậu tạ. Bạn bảo Cty đặt mua người ta Config post cho. Làm mò mò mà máy giá trị lớn nó đâm trục chính lại mất toi cả chục ngàn đô . :) . Bao giờ hãng bán máy có cũng có Post kèm theo, cứ mạnh dạn alo nhé.
 
Author
Ðề: Thảo luận Post Processor 3 4 5 axis

- Bạn nên mua POST 5 trục và không nên cố cấu hình khi không hiểu về nó.
- Nơi cung cấp CNC họ cũng có Post cho bạn và họ cũng không biết gì về Post bởi mỗi CAM system cấu trúc Post khác nhau.
- Chỉ có nhà cung cấp CAM System bạn dùng họ mới hiểu về Post cho bạn.
- Có tiền mua máy 5 trục nên bỏ tiền mua Post vì giá rất thấp so với máy CNC của bạn . Cố gắng cấu hình Post liệu bạn có giám chạy máy khi Code không biết đúng hay sai ? và nếu đâm đầu máy vào đồ gá và hỏng Spindle thì sẽ ra sao nhỉ ? :D
 
V

vinhdaivip

Ðề: Thảo luận Post Processor 3 4 5 axis

khong thay gia cong 4-5 truc proe nhi
 
Ðề: Thảo luận Post Processor 3 4 5 axis

có ai có file post cho creo ma khi xuất ra gcode nó có thông báo tên chi tiết, loại dao, đường kính dao cho mình xin với, hay có anh em nào biết cách chỉ mình với, mò hoài chỉnh sửa post process mà ko dc
 
Top