Bài giảng hướng dẫn lập trình gia công trên máy tiện CNC

63 5.3K 10
Bài giảng hướng dẫn lập trình gia công trên máy tiện CNC

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Nội dungCác điểm cần chú ý về an toàn khi tham gia khóa học.Máy tiện vạn năng và máy tiện CNC, phạm vi sử dụng.Cấu trúc chương trình CNC.Bảng các lệnh G code, M code hay dùng.Các loại hệ tọa độ trên máy CNC.Các lệnh G code.6.1. Cài đặt tốc độ tiến dao trên máy tiện G98, G996.2. Lệnh phục hồi điểm gốc G28.6.3. Lệnh chạy dao nhanh, nội suy cắt gọt G00, G01, G02, G03.6.4. Chu trình khoan lỗ G81, G82, G83.6.5. Chu trình taro ren G84.6.6. Chu trình cắt ren phức hợp G76.6.7. Chu trình gia công thô,tinh G70, G71, G72.6.8. Bù bán kính dao.6.9. Chế độ quay trục chính theo vận tốc dài G96, G97.Chương trình con.Bài tập thực hành

1/62 LẬP TRÌNH TIỆN CNC SƠ CẤP Dùng cho hệ điều hành FANUC Oi Model D Mục đích khóa học: -Hiểu cấu trúc chương trình CNC -Vận hành máy gia công -Có thể lập trình gia công sản phẩm đơn giản -Biết cách set dao -Biết cách nhập chiều cao dao, bù dao để đạt kích thước mong muốn -Đọc hiểu chương trình gia công thực tế dây chuyền Mục lục Các điểm cần ý an toàn tham gia khóa học Máy tiện vạn máy tiện CNC, phạm vi sử dụng Cấu trúc chương trình CNC Bảng lệnh G code, M code hay dùng Các loại hệ tọa độ máy CNC Các lệnh G code 6.1 Cài đặt tốc độ tiến dao máy tiện G98, G99 6.2 Lệnh phục hồi điểm gốc G28 6.3 Lệnh chạy dao nhanh, nội suy cắt gọt G00, G01, G02, G03 6.4 Chu trình khoan lỗ G81, G82, G83 6.5 Chu trình taro ren G84 6.6 Chu trình cắt ren phức hợp G76 6.7 Chu trình gia công thô,tinh G70, G71, G72 6.8 Bù bán kính dao 6.9 Chế độ quay trục theo vận tốc dài G96, G97 Chương trình Bài tập thực hành 2/62 Các điểm cần ý an toàn tham gia khóa học Trong toàn khóa học để đảm bảo an toàn cho người cho máy cần tuyệt đối tuân thủ quy định đây: Khi thao tác với máy phải ý khu vực làm việc dao phoi Không đưa tay vào phân chuyển động quay Khi xử lý phoi phải có dụng cụ chuyên dụng: gậy cào phoi, găng tay Sử dụng dụng cụ bảo hộ (giẻ lau, găng tay )khi cầm vào dao, không sờ tay trực tiếp Không đưa tay vào phận dịch chuyển Tiến hành xác nhận 3S xác trước thao tác Kiểm tra xác chương trình trước chạy 3/62 4/62 Máy tiện vạn máy tiện CNC - CNC ( Computer Numerical Control ): công nghệ điều khiển số máy tính hóa Máy vạn Máy CNC  Điều khiển gia công cắt gọt tay  Độ xác không cao, phụ thuộc vào người thao tác Thích hợp gia công chi tiết có hình dạng đơn giản, số lượng  Điều khiển gia công cắt gọt chương trình CNC  Độ xác cao, phụ thuộc người Thích hợp gia công chi tiết phức tạp, đòi hỏi độ xác cao với số lượng lớn Chương trình CNC tập hợp dẫn cần thiết để gia công chi tiết máy gia công tự động mà trợ giúp 5/62 Cấu trúc chương trình CNC 3.1 Cấu trúc chương trình CNC % Số chương trình O0001; N1; G50 S2000; G00 T0101; G96 S120 M03; G00 X150 Z100.; Số ký hiệu trình tự khối (Block) Bộ phận chương trình Dữ liệu Địa M01; N2; G50 S2000; G00 T0202; G96 S200 M03; M30; chương trình Số ký hiệu trình tự khối CẤU TRÚC CÂU LỆNH: N…G…X…Y…Z…F…S…T…M…; Bộ phận chương trình 6/62 Cấu trúc chương trình CNC 3.2 Các điểm cần ý chương trình CNC  Kết thúc chương trình phải có ký hiệu %  Kết thúc block phải có dấu 【 ; 【 ( G00 X10.5 Z2 ; )  Sau lượng dịch chuyển theo trục phải có dấu 【 【 (X10.5 Z2.)  Về block sử dụng lệnh M lần (G00 X10.5 Z2 M8 ; ) Cấu trúc chương trình CNC 3.3 Ý nghĩa ký hiệu chương trình CNC O: Số thứ tự chương trình từ 0001 đến 9999 N: Số thứ tự câu lệnh từ đến 9999 X, Z : Toạ độ dịch chuyển theo trục toạ độ theo giá trị tuyệt đối U, W : Toạ độ dịch chuyển theo trục toạ độ theo giá trị tương đối R: Bán kính, giá trị độ nghiêng, tham số chu trình C: Góc quay trục G: Câu lệnh chuẩn bị M: Chức hỗ trợ S: Tốc độ quay trục T: Số thứ tự dao F: Tốc độ tiến dao, bước ren P: Dừng, gọi chương trình con, tham số chu trình 7/62 8/62 Bảng lệnh G code, M code hay dùng 4.1 Lệnh G code LỆNH Ý NGHĨA LỆNH Ý NGHĨA G00 Chạy nhanh không cắt gọt G71 Chu trình tiện thô theo phương dọc trục G01 Nội suy đường thẳng G72 Chu trình tiện thô theo phương hướng kính G02 Nội suy cung tròn chiều kim đồng hồ G76 Chu trình tiện ren G03 Nội suy cung tròn ngược chiều kim đồng hồ G80 Huỷ bỏ chu trình G04 Dừng dao xác, dao quay G81 Chu trình khoan G28 Về điểm tham chiếu tự động G83 Chu trình khoan lỗ sâu G30 Về điểm tham chiếu thứ 2, G82 Chu trình khoan có dừng đáy lỗ G40 Huỷ bỏ chế độ hiệu chỉnh bán kính dao G84 Chu trình taro G41 Hiệu chỉnh bán kính dao trái G96 Tốc độ quay theo vận tốc dài m/p G42 Hiệu chỉnh bán kính dao phải G97 Hủy bỏ tốc độ quay theo vận tốc dài G50 Giới hạn tốc độ quay trục G98 Tốc độ tiến dao mm/phút G70 Chu trình tiện tinh G99 Tốc độ tiến dao mm/vòng Bảng lệnh G code, M code hay dùng 4.2 Lệnh M code LỆNH Ý NGHĨA M00 Dừng chương trình vô điều kiện M01 Dừng chương trình có điều kiện M02 Kết thúc chương trình M03 Quay trục thuận chiều kim đồng hồ M04 Quay trục ngược chiều kim đồng hồ M05 Dừng trục M08 Bật dung dịch làm mát M09 Tắt dung dịch làm mát M30 Kết thúc chương trình, reset quay trở đầu chương trình M98 Gọi chương trình M99 Kết thúc chương trình 9/62 10/62 Các loại hệ tọa độ máy CNC 5.1 Hệ tọa độ máy - Hệ toạ độ máy: máy gia công có hệ toạ độ máy nhà sản xuất quy định, điểm gốc hệ toạ độ máy thông thường nằm điểm giới hạn trục toạ độ theo chiều dương 5.2 Hệ tọa độ gia công - Hệ toạ độ gia công: hệ tọa độ dùng chương trình gia công (X=0 tâm trục chính, Z=0 thường lấy vị trí mặt đầu chi tiết sau gia công xong) XChuck Phôi Trục Z- Z+ Điểm gốc chương trình X+ Điểm gốc máy Chú ý: Hệ tọa độ máy nhà sản xuất máy quy định không thay đổi, hệ tọa độ gia công người lập trình quy định nên thay đổi tùy ý 49/62 6.8 Chu trình gia công thô, tinh 6.8.1 Chu trình tiện thô theo phương dọc trục G71 Cấu trúc: G71 U(Δd) R ; G71 P Q U(Δu) W F S T ; (Δd) Trong đó: (Δd): chiều sâu cắt theo trục X( dấu) R : chiều cao lùi dao P : số thứ tự câu lệnh chu trình Q : số thứ tự câu lệnh cuối chu trình X (+) Z (+) (Δu/2) Lùi dao Cắt gọt Cắt tinh (Δu) : lượng dư gia công tinh theo trục X W : lượng dư gia công tinh theo trục Z F, S, T: lượng chạy dao, tốc đô trục chính, dụng cụ Chú ý:  Dịch chuyển A đến A’ phải G00 G01 cho phép hướng X (G00X ) hệ tọa độ tuyệt đối  Gia công góc X(-) muốn để lại lượng dư gia công tinh Δu phải có giá trị âm 50/62 6.8 Chu trình gia công thô 6.8.2 Chu trình tiện thô theo phương hướng kính G72 Cấu trúc: G72 W(Δd) R ; G72 P Q U W(Δw) F S T ; Trong đó: W1: chiều sâu cắt theo trục Z( dấu) R : chiều cao lùi dao P : số thứ tự câu lệnh chu trình Q : số thứ tự câu lệnh cuối chu trình U : lượng dư gia công tinh theo trục X W2 : lượng dư gia công tinh theo trục Z Lùi dao Cắt gọt Cắt tinh F, S, T: lượng chạy dao, tốc đô trục chính, dụng cụ 51/62 6.8.3 Chu trình gia công tinh G70 Cấu trúc: G70 P Q ; Trong đó: P : số thứ tự câu lệnh chu trình Q : số thứ tự câu lệnh cuối chu trình Chú ý:  Chu trình gia công tinh G70 phải lập trình sau chu trình gia công thô G71, G72  Trong chu trình gia công G70, G71, G72 lệnh bù bán kính dao hiệu lực (Trong khoảng P, Q có lệnh G41, G42 máy báo lỗi) 【 Khi cần kích thước xác đoạn cung tròn hay vát mép (R,C) không dùng G70 để gia công tinh mà sử dụng G01, G02, G03 bình thường có kèm theo lệnh bù bán kính dao G41, G42 6.8.4 Ví dụ chu trình gia công thô, tinh Ví dụ 1: sử dụng chu trình gia công G71, G70 để gia công chi tiết sau O0001; G40G99G80G0; G28W0; G00 X-41 Z20 T01; -41/2 M03 S3000 ; -40/-30 G00 X-41 Z2.; (Điểm bắt đầu cho chu trình) G71 U2 R2.; -26/-15 G71 P1 Q2 U-2 W1.F0.15; -20/-10 N1 G01 X-10.; (chu trình gia công thô) -34/-25 -26/-25 -10/-10 G1 Z-10.; -10/2 X-20.; Z X X-26 Z-15.; Z-25.; X-34.; N2 X-40 Z-30.; G0 X-41 Z2.; G70 P1 Q2; (chu trình gia công tinh) G00 X-41 Z20.; M30; 52/62 53/62 6.8.4 Ví dụ chu trình gia công thô, tinh Ví dụ 2: Lập trình gia công chi tiết bên yêu cầu bán kính góc lượn, đoạn côn xác O0002; G40G99G80G00; 40 G28W0; 35 G00T1X-41.; 20 T1 10 Z10.; M3S3000; Z2.; G71U1.R1.; Z X G71P100Q200U-2.W1.F0.1; Φ15 Φ25 Φ40 N100G01X-15.; Z-10.; X-25.Z-20.; R5 Phôi Z-30.; G03X-35.Z-35.R5.; N200G01X-45.; G00Z0; G01X1.; G00Z1.; G41X-15.; G01Z-10.; X-25.Z-20.; Z-30.; G03X-35.Z-35.R5.; G01X-45.; G40G00Z5.; G28W0M05; M30; % 6.8.4 Ví dụ chu trình gia công thô, tinh Ø20 Ø25 Ø35 Ø40 Z+ Ø50 Ví dụ: sử dụng G71 G41 để gia công chi tiết có hình dạng kích thước hình X+ 20 25 40 50 54/62 55/62 Bài tập thực hành Sử dụng G71 để gia công chi tiết hình Dao Tên dao Số dao Dao tiện T1 Số vòng quay S (v/p) Bước tiến F (mm/v) 3000 0.1 Chiều sâu Δd (mm) Chiều cao lùi dao R(mm) Lượng dư gia công tinh Δu (mm) Lượng dư gia công tinh W (mm) 0.5 0.5 -1 0.5 55 T1 40 25 15 X+ C0 Phôi Ø20 Ø23 Ø28.5 Z+ Ø30 13 56/62 6.9 Tốc độ quay theo vận tốc dài (G96, G97) Ví dụ gia công chi tiết côn bên S=3000 vòng/phút Vận tốc cắt đoạn côn: V= π.D.S 1000 = 3.14x50x3000 1000 = 471 m/phút Đầu nhỏ: V= π.D.S 1000 = 3.14x10x3000 1000 = 94 m/phút Đầu to: Φ50 10 =>Vấn đề: chất lượng bề mặt sau gia công không (đoạn có đường kính nhỏ bề mặt nhám hơn) Cách khắc phục: Sử dụng chế độ quay theo vận tốc dài (G96) Cú pháp: G96Sxxxx; S Đơn vị m/phút Hủy chế độ quay theo vận tốc dài: Cú pháp: G97Sxxxx; S vòng/phút Chú ý: Khi sử dụng G96 máy tự động tính toán tốc độ quay tùy theo vị trí dao S= 1000.V => Đường kính D nhỏ tốc độ quay S lớn π.D => rung động, áp lực kẹp sản phẩm giảm lực ly tâm lớn Cần hạn chế tốc độ quay lớn trục lệnh G50Sxxxx (S vòng/phút) 57/62 Ví dụ sử dụng G96, G97 Chương trình gia công tinh chi tiết bên T3 Z(+) Φ20 Φ60 15 X(+) 35 50 Chú ý: Smax đường kính: D= 1000.V = π.S 1000x300 3.14x4000 = 23.88mm => Đường kính > 23.88mm máy quay với tốc độ theo tính toán, đường kính < 23.88 quay với tốc độ S=Smax=4000 vòng/phút O1234; G40G80G99G00; G28W0; G50S4000; G00T3X-25.0; Z10.0; S2000M03; G96S300; G01Z0F0.08; X0.5; G00Z2.; G41X-20.; G01Z-15.; X-60.Z-35.; Z-50.; X-65.; G40G00Z10.; G28W0; G97S3000; M05; M30; % 58/62 Chương trình Khi gia công nhiều chi tiết có biên dạng kích thước giống phần giống ta nhóm lại (gọi chương trình con) sử dụng để giảm thời gian nhập trương trình, tránh nhầm lẫn M98P : gọi chương trình M99 : kết thúc chương trình Ví dụ: C2 Φ25 Φ12 Mã A C9 30 15 C2 Φ25 M12 Mã B 12 C9 30 15 O5555(MA A); G99G80G40G0; G28W0; G0X-27.T1; Z10.; S3000M3; G01Z0F0.1; M98P0005; G28 W0 M5; M30; O0005; X1.; X-8.; X-12.Z-2.; Z-15.; X-25.Z-24.; X-27.; G0 Z50.; M99; O7777(MA B); G99G80G40G0; G28W0; G0X-27.T1(BIEN DANG); Z10.; S3000M3; G01Z0F0.1; M98P0005; G0X-14.T2(RANH); ………; 59/62 Chương trình Ø20 Ø25 Ø35 Ø40 Z+ Ø50 Ví dụ: sử dụng chương trình con, G96, G41 để gia công chi tiết hình vẽ dưới: X+ 20 25 40 50 60/62 Bài tập thực hành Sử dụng G96,G97,G50, G41 chương trình để gia công chi tiết hình vẽ Dao Tên dao Số dao Dao tiện T1 Số vòng quay S (v/p) Bước tiến F (mm/v) 3000 0.1 55 50 25 R1 15 Ø17 Ø19 Ø27 Ø30 13 X+ R2 Z+ Chiều sâu t (mm) 61/62 BÀI KIỂM TRA CUỐI KHOÁ 55 50 Ø9.0 35 30 25 T3 2.0 15 R R C ∅30 ∅26 ∅22 ∅19 M12x1 ∅12 ∅10 10 62/62 (Điều kiện gia công) Công đoạn Dao Tên dao Số dao Số vòng quay S (v/p) Bước tiến F (mm/v) Chiều sâu cắt Δd (mm) Chiều cao lùi dao R(mm) Lượng dư gia công tinh Δu (mm) Lượng dư gia công tinh W (mm) Chu trình tiện thô Dao tiện T1 3000 0.2 0.5 -1 Tiện tinh Dao tiện T1 3500 0.08 Khoan Mũi khoan T2 3000 0.1 Tiện rãnh Dao tiện T3 3000 0.05 Taro Mũi Taro T4 600 Yêu cầu: - Sử dụng chương trình để gia công tinh bề mặt ngoài, rãnh Khi gia công tinh có dùng G41 ,G42 - điểm khởi đầu chu trình Taro Z ≥ 20mm, R≧15mm 63/62 [...]... 14/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.1 Hệ tọa độ tuyệt đối (ABS) Ví dụ 3: Viết toạ độ tuyệt đối(ABS) của các điểm P1→P8 của hình vẽ dưới P8 P2 P1 Z+ 5 1 C 5 2 C 35 P3 P4 1 C X+ Ø60 P6 P5 P4 P3 P2 P1 Ø30 Ø100 P7 P5 20 P6 P7 P8 (ABS) 15/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.2 Hệ tọa độ tương đối (INC) Là hệ tọa độ gia công trong đó toạ độ của 1... X-80.0 Z-50.0 ) ) P5 ( X-100.0 Z-60.0 ) 12/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.1 Hệ tọa độ tuyệt đối (ABS) Ví dụ 1: Viết toạ độ tuyệt đối(ABS) của các điểm P1→P6 của hình vẽ dưới P6 P5 P4 P3 P1 P2 P1 Ø20 P3 Ø40 Z+ Ø50 P2 X+ P4 P5 20 50 60 P6 (ABS) 13/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.1 Hệ tọa độ tuyệt đối (ABS) Ví dụ 2: Viết toạ độ tuyệt đối(ABS)... U-20.0 W-10.0 ) ) 16/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.3 Ví dụ về tọa độ tương đối Ví dụ 1: Viết toạ độ tương đối của các điểm P1→P8 của hình vẽ dưới P7 P0→P1 P4 P3 P2 Ø25 Ø35 Ø40 Z+ Ø50 P6 P5 X+ 20 25 40 50 60 P1→P2 P1 P2→P3 Ø20 P8 P3→P4 P4→P5 P5→P6 P6→P7 P7→P8 (INC) 17/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.3 Ví dụ về tọa độ tương đối Ví dụ 2:... 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.3 Ví dụ về tọa độ tuyệt đối và tọa độ tương đối P10 P9 P5 P4 P6 P3 P2 C2 10 20 27 30 50 60 100 110 Ø40 P1 Ø60 P8 P7 Ø34 P11 Ø20 P12 P1 (ABS) P1→P2 (INC) P3 P3→P4 (ABS) P4→P5 P6 (INC) P7 (ABS) P7→P8 P8→P9 (INC) P10 P10→P11 (ABS) P12 (ABS) (INC) (ABS) (INC) (INC) 20/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.3 Ví dụ về tọa... Chú ý: thông thường trong chương trình được lập trình bằng toạ độ tuyệt đối, toạ độ tương đối được dùng chủ yếu để thoát dao, vát mép + trong 1 khối thì [ X_W_;] [U_Z_;] được dùng lẫn lộn + trong 1 khối mà sử dụng X và U, Z và W thì máy sẽ nhận giá trị cuối cùng Ví dụ: X10.0 U-20.0; → U-20.0 X10.0 X9.8; → X9.8 18/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.3 Ví dụ về tọa độ tuyệt...11/62 5 Các loại hệ tọa độ trên máy CNC 5.2 Hệ tọa độ gia công 5.2.1 Hệ tọa độ tuyệt đối (ABS) Là hệ tọa độ gia công trong đó tọa độ của 1 điểm được tính theo gốc của hệ tọa độ gia công P5 P4 P2 P3 P1 Ø50 Z+ Z- Ø100 X- (X0, Z0) X+ C5 50 0 C1 Chú ý: - Giá trị toạ độ X lấy theo đường kính - Vát mép C5 thì... bề mặt sau gia công, bước tiến lớn thì độ nhám bề mặt sẽ lớn Về cơ bản bước tiến khi: Gia công thô: f=0.2÷0.3 (mm/v) Gia công tinh: f=0.05÷0.1 (mm/v) 25/62 6.3.2 Nội suy theo đường thẳng G01 Ví dụ: từ P0 tiến nhanh đến P1, cắt gọt từ P1 đến P8 với F0.25 mm/vòng, từ P8 lùi nhanh đến P0 lập trình theo toạ độ tuyệt đối P0 (X-150.0, Z50.0) P8 P7 P5 P4 P6 P0→P1 P3 Ø65 Ø70 P1 Ø80 Ø100 Số chương trình P2 P1→P2... G04 U0.3 ; thời gian dừng 0.3s Chú ý: nếu G04 đứng độc lập mà không có địa chỉ thì câu lệnh không có hiệu lực 36/62 6.4 Chu trình gia công lỗ Cắt gọt Tiến nhanh 6.4.1 Chu trình khoan lỗ thông thường G81 Cấu trúc: G81 Z R F ; R【 Z Trong đó: R là khoảng cách từ điểm khởi đầu tới điểm R trong hệ toạ độ tương đối ( Fanuc series 0i ) F là tốc độ tiến dao Điểm khởi đầu Gốc máy 6.4.2 Chu trình khoan lỗ có... P12→P0 34/62 Bài tập thực hành 2 Sử dụng G00 + G01 + G02 + G03 để gia công chi tiết như hình vẽ dưới Dao Tên dao Số dao Dao vai T1 Số vòng quay S (v/p) Bước tiến F (mm/v) 3000 0.1 55 50 R 0 5 25 15 Ø18 Ø20 Ø28 Ø30 13 R 2 R 11 8 8 Chiều sâu t (mm) 35/62 6.3.4 Lệnh G04 dừng dao chính xác Cấu trúc: G04 X ; G04 P ; G04 U ; (s) ( ms ) (s) Trong đó: - X, P, U là thời gian dừng - U: chỉ dùng cho máy tiện Ví... Cách sử dụng: G98, G99 thường được khai báo ngay đầu chương trình hoặc đằng trước các câu lệnh dịch chuyển Ví dụ: O0011; ……… G99G40G80; G99G01X-20.Z-50.F0.1; G28W0; ………… G98G02X-30.Z-55.R5.F400; ………… F Quan hệ giữa G98 và G99 F(mm/phút)=f(mm/vòng)xS(vòng/phút) Chú ý: Trên máy tiện sử dụng cả 2 loại tốc độ tiến dao mm/vòng và mm/phút Trên máy phay sử dụng tốc độ tiến dao đơn vị mm/phút 22/62 6.2 Lệnh

Ngày đăng: 15/07/2016, 08:06

Từ khóa liên quan

Mục lục

  • PowerPoint Presentation

  • Slide 2

  • Slide 3

  • Slide 4

  • Slide 5

  • Slide 6

  • Slide 7

  • Slide 8

  • Slide 9

  • Slide 10

  • Slide 11

  • Slide 12

  • Slide 13

  • Slide 14

  • Slide 15

  • Slide 16

  • Slide 17

  • Slide 18

  • Slide 19

  • Slide 20

Tài liệu cùng người dùng

Tài liệu liên quan