Quy trình thay dao trong máy phay CNC MAZAK VQC-50A

Một phần của tài liệu Nghiên cứu thiết kế hệ điều khiển plc cho quá trình thay dao máy cnc mazak vqc 2050a (Trang 44)

Trong hệ thống mà đề tài đang nghiên cứu quá trình thay dao được thực hiện bằng cách kết hợp điều khiển trục và đài dao. Nguyên tắc thực hiện được trình bày như trong Hình 1.1Hình 2.24.

Trong quy trình này ta thấy rõ sự liên hệ chặt chẽ giữa IPC và PLC, các công việc được thực hiện một cách tuần tự mà không thể thiếu một trong các yếu tố cần thiết là IPC và PLC.

Để thực hiện một câu lệnh, dữ liệu được biến đổi qua rất nhiều chương trình con, kiểu dữ liệu cấu trúc phân tầng này rất linh hoạt trong việc xử lý và dễ dàng bóc tách.

41

Hình 2.24. Quy trình thay dao

42

Nhìn chung, quá trình thay dao trong máy phay CNC Mazak VQC 50 là quá trình phức tạp, cần tới sự làm việc của nhiều thành phần của hệ thống. Đồng thời việc tương tác qua lại giữa các thành phần điều khiển dễ đưa hệ thống đến điểm làm việc không xác định, mặc dù với cách này đã làm giảm đáng kể các kết cấu cơ khí phức tạp.

43

Chƣơng 3. THIẾT KẾ CHƢƠNG TRÌNH THAY DAO

Dựa vào những yêu cầu đặt ra ở chương 2, trong chương này ta thực hiện việc thiết kế chi tiết phần mềm trên IPC và chương trình thay dao trên PLC của hãng Omron

3.1. Tổng quan về chƣơng trình và các biến sử dụng trong lập trình.

3.1.1. Phương pháp thiết kế.

Chương trình thực hiện dựa trên nền IPC do đó việc thực hiện các chương trình PLC được mềm hóa, dễ dàng tùy biến hoặc tích hợp thêm chức năng khi cần thiết. Mặt khác, việc điều khiển các trục được thực hiện một phần trên IPC nên dễ dàng tích hợp chương trình thay dao và điều khiển logic. Cấu trúc của hệ thống như sau:

Hình 3.1. Cấu hình hệ thống

Vai trò của IPC là thực hiện các giải thuật chương trình được miêu tả trong chương 2, chương trình phần mềm PLC này được viết bằng ngôn ngữ C#. PLC công nghiệp đóng vai trò phần tử trung gian chấp hành. Về mặt kỹ thuật thực hiện, IPC giao tiếp với PLC công nghiệp qua cổng RS232, và quản lý các đầu vào ra bằng các địa chỉ thanh ghi. Bảng 3.1 mô tả nhiệm vụ của hai thành phần trong hệ thống.

Bảng 3.1. Nhiệm vụ của các thành phần trong chương trình thay dao

Thành phần Nhiệm vụ

IPC

- Thực hiện các thuật toán gọi hàm thay dao

- Thực hiện các tính toán liên quan quá trình thay dao - Kiểm soát các dữ liệu dao và lưu vào bộ nhớ

PLC công nghiệp

- Thực thi các lệnh truyền từ IPC - Kiểm soát các chức năng an toàn - Truyền các dữ liệu cần thiết về IPC

44

Vai trò của PLC trong hệ thống đóng vai trò của một Slave với IPC là master tức là thực hiện toàn bộ các yêu cầu điều khiển mà IPC cần, ngoài ra nó kiểm soát hệ thống an toàn mà không cần sự can thiệp của IPC.

3.1.2. Các biến vào ra sử dụng trong chương trình

a) Các đầu vào ra phần điều khiển chuyển động trục Y và Z

Như đã trình bày trong chương 2, bộ điều khiển trung tâm sử dụng Card Motion để điều khiển các trục trong hệ thống. Trong đó có hai trục Y và Z, phần tính toán làm việc của hai trục này được lập trình trong chip xử lý của card, phần mềm trên IPC chỉ gửi lệnh đến nó. Chương trình điều khiển trục chính sử dụng card I/O riêng rẽ, card này tích hợp chế độ điều khiển tương tự phù hợp với việc điều chỉnh tốc độ cho động cơ trục chính. Do trục chính có sự thay đổi tốc độ liên tục theo chương trình và có dải điều chỉnh tương đối trơn.

Hình 3.2. Các đầu vào ra liên quan trong quá trình thay dao

Tập lệnh di chuyển các trục nằm trong thư viện .dll của phần mềm. Lệnh di chuyển trục có cấu trúc câu lệnh:

Motion.mAcm_AxSetCmdPosition ([chọn số trục],[ tọa độ cuối]);

Ngoài ra, các câu lệnh khác được khởi tạo ngay từ đầu để xác định chế độ điều khiển mỗi trục. Hình 3.2 mô tả kết nối giữa các thành phần trong hệ thống liên quan đến quá trình thay dao bao gồm PLC kết nối thông qua cổng COM, card Motion và card I/O điều khiển trục X,Y,Z,A và trục chính kết nối thông qua bus PCI.

b) Các đầu vào ra của hệ thống điều khiển logic

Các biến vào ra phụ thuộc vào hệ thống bao gồm các cảm biến và các hệ thống chấp hành thủy lực.

45

Hình 3.3. Cấu tạo cơ cấu thay dao

Bảng mô tả biến vào/ra:

Bảng 3.2. Bảng mô tả biến vào PLC

Tín hiệu Ý nghĩa X.01 Cảm biến mã dao 1 X.02 Cảm biến mã dao 2 X.03 Cảm biến mã dao 3 X.04 Cảm biến mã dao 4 X.05 Cảm biến kẹp dao X.06 Cảm biến nhả dao X.07 Cảm biến phát hiện dao X.08 Bàn đạp kẹp dao

X.09 Bàn đạp nhả dao X.10 Nút nhấn thay đổi dao X.11 Cảm biến đúng vị trí dao

46

Bảng 3.3. Bảng mô tả biến ra PLC

Tín hiệu Ý nghĩa

Y.01 Cuộn hút quay thuận Y.02 Cuộn hút quay nghịch Y.03 Cuộn hút kẹp dao Y.04 Cuộn nhả dao

3.1.3. Biến xác định điều kiện khởi tạo

Điều kiện đầu xác định trạng thái của hệ thống bao gồm: - Mã dao : 4 cảm biến

- Trạng thái kẹp dao : 2 cảm biến - Cảm biến phát hiện dao : 1 cảm biến

Trạng thái ban đầu này được khởi tạo bằng cách tải thanh ghi từ PLC công nghiệp thông qua truyền thông Modbus. Thanh ghi này cần tối thiếu 7bit để thực hiện truyền tải thông tin. Ta quy định số các bit từ 0-3 quy định mã dao hiện tại, các bit 4-5 quy định trạng thái kẹp dao, và bit 6 quy định cảm biến phát hiện dao. Gọi thanh ghi này là thanh ghi Status_PLC Từ đây ta lập được bảng giá trị cho thanh ghi này như sau:

Bảng 3.4. Giá trị thanh ghi Status_PLC

STT Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 Trạng thái Mã hex 1 x x x x 0 0 0 0 Dao số 1 0x00 2 x x x x 0 0 0 1 Dao số 2 0x01 3 x x x x 0 0 1 0 Dao số 3 0x02 4 x x x x 0 0 1 1 Dao số 4 0x03 5 x x x x 0 1 0 0 Dao số 5 0x04 6 x x x x 0 1 0 1 Dao số 6 0x05 7 x x x x 0 1 1 0 Dao số 7 0x06 8 x x x x 0 1 1 1 Dao số 8 0x07 9 x x x x 1 0 0 0 Dao số 9 0x08 10 x x x x 1 0 0 1 Dao số 10 0x09 11 x x x x 1 0 1 0 Dao số 11 0x0A 12 x x x x 1 0 1 1 Dao số 12 0x0B 13 x x x x 1 1 0 0 Dao số 13 0x0C 14 x x x x 1 1 0 1 Dao số 14 0x0D 15 x x x x 1 1 1 0 Dao số 15 0x0E 16 x x 1 0 x x x x Kẹp dao 0x20 17 x x 0 1 x x x x Nhả dao 0x10

Trong đó 1 xác định trạng thái có tác động, 0 xác định trạng thái không tác động và x xác định trạng thái không quan tâm.

47

Để kiểm tra điều kiện đơn lẻ ta xét giá trị của thanh ghi như sau:

Bảng 3.5. Các biến kiểm tra điều kiện vào

STT Biến kiêm tra Công thức 1 Biến xác định mã dao Status_PLC&0x0F 2 Biến xác định kẹp nhả dao Status_PLC&0x30 3 Biến xác định có dao Status_PLC&0x40

Như vậy, dựa vào Bảng 3.5 ta có thể nhận thấy có 17 tổ hợp trạng thái khởi tạo với 3 tổ hợp biến riêng biệt, ta có thể kiểm tra lần lượt và tham chiếu với bảng trên. Biến trạng thái này được chương trình phần mềm cập nhật liên tục từ PLC thông qua một hàm timer sử dụng trong chương trình với chu kỳ trích mẫu là 100ms. Dữ liệu từ PLC được cấu hình gửi lên máy tính một cách liên tục.

3.1.4. Biến điều khiển đầu ra

Như đã mô tả trong

Bảng 3.3, PLC điều khiển các biến đầu ra cho quá trình quay đài dao và kẹp dao. Ở đây có 3 biến cần điều khiển, do đó, cần 1 thanh ghi thực hiện công việc này. Cụ thể, thanh ghi này được đặt là Command_PLC với các bit 0-1 điều khiển cuộn quay thuận và nghịch, bit 2-3 điều khiển cuộn kẹp nhả dao, bit 4 là biến kiểm soát quá trình kẹp nhả dao từ IPC, dùng trong chế độ thay dao bằng tay.

Các lệnh truyền được thực hiện bằng cách truyền thanh ghi Command_PLC vào bộ đệm. Bảng sau mô tả cách thức thực hiện:

Bảng 3.6. Mã lệnh điều khiển chức năng PLC

STT Nhiệm vụ BUFFER

1 Quay đài dao theo chiều kim đồng hồ Command_PLC|0x01 2 Quay đài dao ngược chiều kim đồng hồ Command_PLC|0x02

3 Kẹp dao Command_PLC|0x04

4 Nhả dao Command_PLC|0x08

5 Kiểm soát việc kẹp nhả dao Command_PLC|0x10

Như vậy để thực hiện việc điều khiển, chương trình phần mềm trên IPC chỉ cần cấu hình thanh ghi Command_PLC và nạp vào bộ đệm truyền thông là đã thực hiện lệnh truyền.

48

3.2. Giải thuật truyền thông giữa IPC và PLC

Việc cấu hình truyền thông giữa IPC và PLC vô cùng quan trọng, điều này trực tiếp ảnh hưởng chất lượng điều khiển của hệ thống (truyền thông sử dụng giao thức Hostlink).

Hostlink là một giao thức mạng được phát triển bởi Omron, nó được dùng để kết nối nhiều plc omron với nhau hay giữa plc với máy tính thông qua RS232 hoặc RS 422.Các khối lệnh C-mode được máy tính gửi tới PLC và PLC sẽ gửi đáp ứng về máy tính. Từ đó máy tính có thể đọc và ghi liên tục tới các vùng nhớ của PLC.

Hình 3.4. Truyền thông giữa máy tính và PLC

Cấu hình phần cứng

Chuẩn giao tiếp RS232 được sử dụng trong hệ thống này. Sơ đồ kết nối được thể hiện như Hình 3.5.

Hình 3.5. Cấu hình phần cứng giao thức truyền thông Hostlink

Riêng đối với cổng RS-232C của PLC ta cần phải thiết lập cấu hình. Sử dụng phần mềm CX-program để thiết lập cấu hình cho cổng RS-232C của PLC như hình dưới.

49

Hình 3.6. Cấu hình cổng RS -232C cho PLC

Phần mềm dùng để lập trình viết giao diện được sử dụng trên máy tính là Visual studio 2010. Ngôn ngữ C# được dùng để lập trình truyền thông tới PLC. Bằng cách sử dụng thư viện C-mode ta có thể đọc ghi liên tục tới PLC một cách dễ dàng.

3.3. Thuật toán chƣơng trình thay dao trên IPC

Chương trình thay dao được chia làm hai chương trình con: - Chương trình thay dao tự động

- Chương trình thay dao bằng tay.

Quá trình thay dao tự động được thực hiện bằng cách nhập mã lệnh thay dao Tx M6 vào cửa sổ soạn thảo chương trình ( x là số thứ tự dao: từ 1 đến 15, x=0 được hiểu là trả dao lại vị trí cũ). Còn quá trình thay dao bằng tay được thực hiện hoàn toàn bằng các phím cứng trên hệ thống, IPC chỉ kiểm soát thông qua các thanh ghi mà không có tác động trực tiếp trong quá trình này. Hình 3.7 mô tả cấu trúc chương trình thay dao.

Đối với chương trình thay dao bằng tay, IPC kiểm soát hệ thống bằng bit 4 trên thanh ghi Commad_PLC. Bit này chỉ được bật khi IPC xác nhận chế độ làm việc hiện tại nằm trong chế độ JOG. Giải thuật này được xác định bằng một biến toàn cục của hệ thống mà phần này không nằm trong chương trình thay dao. Do đó,

50

phần lớn chương trình thay dao bằng tay được thực hiện trên PLC với các hàm con cơ bản.

Hình 3.7. Cấu trúc phần mềm thay dao

3.3.1. Thuật toán chương trình thay dao tự động

51

Thuật toán chương trình thay dao tự động được mô tả dưới dạng lưu đồ thuật toán của phần mềm được viết trên IPC. Toàn bộ chương trình PLC đều viết dưới dạng hàm con với giải thuật riêng cho từng nhiệm vụ.

Về mặt cấu trúc chương trình, chương trình sẽ được tổ chức tương ứng với 3 trường hợp thay dao được đề cập như trong chương 2. Cấu trúc chương trình được mô tả như trong Hình 3.8.

Các chương trình thay dao 1,2 và 3 tương ứng với các trường hợp thay dao đã đề cập trong chương 2. Từ cấu trúc chương trình trên ta bắt đầu xây dựng thuật toán cho từng chương trình con.

a) Thuật toán xác định điều kiện vào cho chương trình

Thuật toán này sử dụng nhằm mục đích rẽ nhánh chương trình. Các điều kiện đầu của thuật toán bao gồm:

- Trạng thái của đài dao - Mã lệnh đầu vào

Mô tả thuật toán như sau:

 Nếu trạng thái dao đang kẹp và

- x=0: có nghĩa là trả hàm thay dao trong trường hợp 3. - x0: có nghĩa là thay dao trong trường hợp 1

52

 Nếu trạng thái dao không kẹp và - x=0 : báo lỗi không có dao

- x0: có nghĩa là thay dao trong trường hợp 2. Lưu đồ thuật toán như hình 3.9

b) Thuật toán thay dao cho trường hợp có dao trên đài và trục chính.

Thuật toán thực hiện việc thay dao với các dữ liệu đầu vào là mã dao được chọn và mã dao hiện tại. Thuật toán được mô tả như sau:

Bước 1: Đưa đài dao về tọa độ O(Y0,Z0).

Bước 2: Kiểm tra vị trí đài dao có trùng với vị trí của dao hiện tại.

Nếu trùng thực hiện tiếp bước 5, nếu không xác định chiều quay đài dao bằng công thức:

|Tcr-T|>|15-T|+Tcr ?

Trong đó T là dao đang được gắn trên trục chính.

Bước 3: xoay đài dao theo chiều đã xác định bằng cách chuyển lệnh vào thanh ghi Commad_PLC như trong Bảng 3.6.

Bước 4: kiểm tra mã dao thông qua thanh ghi Status_PLC như trong Bảng 3.5 cho đến khi Tcr=T.

Bước 5: kiểm tra trạng thái dao trên đài dao, nếu tồn tại dao đang có trên đài dao báo lỗi.

Bước 6: di chuyển trục chính theo hành trình bằng các lệnh move.

'

t t t

O C C Bước 7: nhả kẹp dao.

Bước 8: di chuyển trục chính theo hành trình bằng các lệnh move.

''

t t t

C C H

Bước 9: Xác định chiều quay của dao bằng công thức:

|Tcr-Tc|>|15-Tc|+Tcr ?

Trong đó Tcr là mã dao hiện tại và Tc là mã dao cần gọi.

Bước 10: xoay đài dao theo chiều đã xác định bằng cách chuyển lệnh vào thanh ghi Commad_PLC như trong Bảng 3.6

Bước 11: kiểm tra mã dao thông qua thanh ghi Status_PLC như trong Bảng 3.5 cho đến khi Tcr=Tc.

53 ''

t t t

H C C Bước 13: kẹp dao.

Bước 14: di chuyển trục chính theo hành trình bằng các lệnh move.

'

t t t

C C O Bước 15: Kết thúc.

Lưu đồ thuật toán được trình bày như hình 3.10. Trong đó các hàm move được cung cấp bởi các hàm chức năng điều khiển trục.

c) Thuật toán thay dao cho trường hợp không có dao trên trục chính.

Thuật toán thực hiện việc thay dao với các dữ liệu đầu vào là mã dao được chọn và mã dao hiện tại. Thuật toán được mô tả như sau:

Bước 1: Đưa đài dao về tọa độ O(Y0,Z0).

Bước 2: Xác định chiều quay của dao bằng công thức:

|Tcr-Tc|>|15-Tc|+Tcr ?

Trong đó Tcr là mã dao hiện tại và Tc là mã dao cần gọi.

Bước 3: xoay đài dao theo chiều đã xác định bằng cách chuyển lệnh vào thanh ghi Commad_PLC như trong Bảng 3.6

Bước 4: kiểm tra mã dao thông qua thanh ghi Status_PLC như trong Bảng 3.5 cho đến khi Tcr=Tc.

Bước 5: kiểm tra có dao hay không trên đài. Nếu không trả về vị trí O và báo lỗi.

Bước 6: di chuyển trục chính theo hành trình bằng các lệnh move.

''

t t t t

O H C C

Bước 7: kẹp dao.

Bước 8: di chuyển trục chính theo hành trình bằng các lệnh move.

'

t t t

C C O Bước 9: Kết thúc.

54

55

56

d) Thuật toán thay dao cho trường hợp trả dao về đài dao.

Thuật toán thực hiện việc thay dao với các dữ liệu đầu vào là mã dao được chọn và mã dao hiện tại. Thuật toán được mô tả như sau:

Một phần của tài liệu Nghiên cứu thiết kế hệ điều khiển plc cho quá trình thay dao máy cnc mazak vqc 2050a (Trang 44)

Tải bản đầy đủ (PDF)

(78 trang)