1. Trang chủ
  2. » Luận Văn - Báo Cáo

điều khiển cánh tay robot scara dùng xử lý ảnh

93 2,4K 23
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Điều Khiển Cánh Tay Robot SCARA Dùng Xử Lý Ảnh
Tác giả Đinh Ngọc Trải
Người hướng dẫn Th.S Hoàng Đình Khôi
Trường học Trường Đại Học Công Nghệ Sài Gòn
Chuyên ngành Khoa học máy tính và kỹ thuật điện tử
Thể loại Luận văn tốt nghiệp
Năm xuất bản 2023
Thành phố Hồ Chí Minh
Định dạng
Số trang 93
Dung lượng 6,16 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các ứng dụng của robot: 2.1 Các ưu điểm khi sử dụng robot: Các loại robot tham gia vào qui trình sản xuất cũng như trong đời sống sinh hoạt của con người , nhằm nâng cao năng suất lao đ

Trang 1

CHƯƠNG I: GIỚI THIỆU CHUNG VỀ ROBOT

1 Sơ lược quá trình phát triển của robot:

Khái niệm robot ra đời vào đầu tiên vào ngày 9/10/1922 tại New York, khi nhà soạn kịch người Tệp Kh Karen Kapek đã tưởng tượng ra một cổ máy hoạt động một cách tự động, nó là niềm mơ ước của con người lúc đó Từ đó, ý tưởng thiết kế, chế tạo robot

đã luôn thôi thúc con người Đến năm 1948, tại phòng thí nghiệm quốc gia Argonne, Goertz đã chế tạo thành công tay máy đôi (master-slavermanipulator) Đến năm 1954, Goertz đã chế tạo tay máy đôi sử dụng động cơ servo và có thể nhận biết được lực tác động lên khâu cuối

Năm 1956, hãng Generall Mills đã chế tạo tay máy hoạt động trong việc thám hiểm đại dương

Năm 1968, R.S.Mosher, của General Electric đã chế tạo một cổ máy biết đi bằng bốn chân Hệ thống vận hành bởi động cơ đốt trong và mỗi chân vận hành bởi hệ thống servo thủy lực

Năm 1969, đại học Stanford đã thiết kế được robot tự hành nhờ nhận dạng hình ảnh.Năm 1970, con người đã chế tạo robot tự hành Lunokohod, thám hiểm bề mặt của mặt trăng

Trong giai đoạn này, ở nhiều nước khác cũng tiến hành nghiên cứu tương tự, tạo ra các robot điều khiển bằng máy tính có lắp đặt các loại cảm biến và thiết bị giao tiếp người và máy

Theo sự tiến bộ của khoa học kĩ thuật, các robot ngày càng được chế tạo nhỏ gọn hơn, thông minh hơn, thực hiện được nhiều chức năng hơn để đáp ứng nhu cầu của con người

Một lĩnh vực được nhiều nước quan tâm là robot tự hành, các chuyển động của chúng ngày càng đa dạng, bắt chước chuyển động của con người hay các loài động

Trang 2

vật… Và các loại xe robot nhanh chóng được ứng dụng rộng rãi trong các hệ thống sản xuất tự động linh hoạt (FMS).

Từ đó con người liên tục nghiên cứu phát triển robot để ứng dụng trong quá trình tự động hóa sản xuất để tăng hiệu quả sản xuất Ngoài ra nó còn thay thế con người trong các công việc ở môi trường độc hại, khắc nghiệt,…

Chuyên ngành khoa học về robot “robotics” đã trở thành một lĩnh vực rộng trong khoa học bao gồm các vấn đề cấu trúc cơ cấu động học, động lực học, quỹ đạo chuyển động, chất lượng điều khiển… Tùy thuộc vào mục đích và phương thức tiếp cận, chúng ta có thể tìm hiểu lĩnh vực này ở nhiều khía cạnh khác nhau

Hiện nay, có thể phân biệt các loại robot ở hai mảng chính: các loại robot công nghiệp (cánh tay máy) và các loại robot di động (mobile robot) Mỗi loại có các ứng dụng cũng như đặc tính khác nhau Ngoài ra, trong các loại robot công nghiệp còn phân chia dựa vào cấu tạo động học của nó: robot nối tiếp (series robot) và robot song song (parallel robot)

Chính công nghệ tiên tiến ở tất cả các lĩnh vực: cơ khí, vi mạch, điều khiển, công nghệ thông tin… đã tạo ra nền tảng cũng như những thử thách lớn đối với khoa học nghiên cứu robot Chính vì vậy, con người đã và đang tiếp tục phát triển và nâng cao mức độ hoàn thiện trong lĩnh vực hấp dẫn này

2 Các ứng dụng của robot:

2.1 Các ưu điểm khi sử dụng robot:

Các loại robot tham gia vào qui trình sản xuất cũng như trong đời sống sinh hoạt của con người , nhằm nâng cao năng suất lao động của dây chuyền công nghệ, giảm giá thành sản phẩm, nâng cao chất lượng cũng như khả năng cạnh tranh của sản phẩm tạo ra

Robot có thể thay thế con người làm việc ổn định bằng các thao tác đơn giản và hợp lý, đồng thời có khả năng thay đổi công việc để thích nghi với sự thay đổi của qui trình công nghệ

Trang 3

Sự thay thế hợp lý của robot còn góp phần giảm giá thành sản phẩm, tiết kiệm nhân công lao động.

Một ưu điểm nổi bậc của robot là môi trường làm việc chúng có thể thay thế con người làm việc ở những môi trường độc hại, ẩm ướt, bụi bặm hay nguy hiểm Ở những nơi như các nhà máy hóa chất, nhà máy phóng xạ, trong lòng đại dương, hay các hành tinh khác… thì việc ứng dụng robot để cải thiện điều kiện làm việc là rất hữu dụng

2.2 Một số lĩnh vực ứng dụng:

2.2.1 Ứng dụng trong lĩnh vực sản xuất cơ khí:

Các loại robot hàn ứng dụng trong các nhà máy sản xuất ôtô, sản xuất các loại

vỏ bọc cơ khí…

Hình: robot hàn trong công nghệ sản xuất cơ khíNgoài ra robot còn phục vụ cho công nghệ đúc, môi trường nóng bức, bụi bặm

và các thao tác luôn đòi hỏi độ tin cậy

Trong hệ thống sản xuất linh hoạt, robot đóng vai trò rất quan trọng trong việc vận chuyển và kết nối các công đoạn sản xuất với nhau

2.2.2 Ứng dụng trong lĩnh vực gia công lắp ráp: các thao tác của robot được tự

động hóa, gia công chính xác và mức độ tin cậy cao

Trang 4

Hình: Các robot được sử dụng trong công đoạn cấp liệu và lắp ráp

2.2.3 Ứng dụng trong các hệ thống y học quân sự, khảo sát địa chất:

Ngày nay, việc sử dụng các tiện ích từ robot đến các lĩnh vực quân sự, y tế, … rất được quan tâm Nhờ khả năng hoạt động ổn định và chính xác Robot, đặc biệt là tay máy được dùng trong kĩ thuật dò tìm, bệ phóng, và trong các ca phẫu thuật y khoa với độ tin cậy cao

Hình: robot ứng dụng trong lĩnh vực thám hiểm, quân sự, vệ tinh

Ngoài ra, tùy thuộc vào các ứng dụng cụ thể khác mà robot được thiết kế để phục vụ cho các mục đích khác nhau, tận dụng được các ưu điểm lớn của chúng đồng thời thể hiện khả năng công nghệ trong quá trình làm việc

2.3 Phân loại robot:

2.3.1 Robot công nghiệp:

Trang 5

a/ Robot nối tiếp: là các loại tay máy, các khâu và các khớp nối của chúng được thiết kế liên tiếp nhau để hình thành nên các quỹ đạo chuyển động nhất định Đối với loại robot này chúng ta có nhiều cách phân loại khác nhau:

- Phân loại theo kiểu kết cấu:

+ Robot kiểu tọa độ đecác+ Robot kiểu tọa độ trụ+ Robot kiểu tọa độ cầu+ Robot kiểu scara

- Phân loại theo nguồn truyền động:

+ Hệ truyền động điện+ Hệ truyền động thủy lực+ Hệ truyền động khí nénb/ Robot song song: robot loại này có các khâu chuyển động song song tương đối nhau Thông thường chúng gồm một đế di động và một đế cố định

2.3.2 Robot di động:

Đây là loại robot có nhiều tính năng thông minh và linh hoạt trong quá trình ứng dụng nhờ khả năng di chuyển theo lập trình

Trang 6

CHƯƠNG II : CƠ SỞ LÝ THUYẾT PHẦN CỨNG

1 Bộ truyền động trục vít bánh vít:

1.1 Công dụng:

Bộ truyền trục vít – bánh vít gọi tắt là bộ truyền trục vít được xếp vào loại răng và vít Bộ truyền trục vít dùng để truyền chuyển động và công suất cho hai trục chéo nhau Thông thường hai trục lệch nhau 900 Đặc điểm quan trọng là bộ truyền trục vít

có khả năng tự hãm

Hình 1.1.1: Bộ truyền động trục vít – bánh vít.

Phân loại trục vít theo dạng mặt chia có hai loại: trục vít trụ ( mặt chia trục vít là mặt trụ) và trục vít Globoid (mặt chia lõm) Phân loại theo trục ren thì chia thành 3 loại: trục vít Archimede, trục vít Convolute và trục vít thân khai Đối với bộ truyền trục vít truyền động thì số mối ren z = 1,2,4 Số mối ren càng ít thì khả năng tự hãm càng cao

1.2 Ưu điểm – Nhược điểm:

Ưu điểm: tỷ số truyền lớn, làm việc êm, không ồn, có khả năng tự hãm và có chính

xác động học cao

Nhược điểm:

- Hiệu suất thấp, sinh nhiệt nhiều do vận tốc trược lớn

- Vật liệu chế tạo bánh vít làm bằng kim loại màu nên đắt tiền

Bánh vít

Trục vít

Trang 7

- Phát ra nhiều tiếng ồn khi hoạt động.

1.3 Tỷ số truyền:

Khi trục vít quay một vòng thì bánh vít sẽ quay một góc bằng z1 lần của góc 2π/z2

Để bánh vít quay một vòng thì trục vít phải quay 2π/(2πz1/z2) = z2/z1 vòng, nên:

Hình 1.2.1: Động cơ DC

Một động cơ DC có 6 phần cơ bản:

1 Phần ứng hay Rotor (Armature)

Trang 8

2 Cổ góp (Commutat).

3 Nam châm tạo từ trường hay Stator (field magnet)

4 Chổi than (Brushes)

và đúng chiều là do bộ cổ góp điện sẽ làm chuyển mạch dòng điện sau mỗi vị trí ứng với ½ chu kỳ

Trong các máy điện một chiều lớn, người ta có nhiều cuộn dây nối ra nhiều phiến góp khác nhau trên cổ góp Nhờ vậy dòng điện và lực quay được liên tục và hầu như không bị thay đổi theo các vị trí khác nhau của Roto

Hình 1.2.2: Nguyên lý hoạt động của động cơ DC

Trang 9

2.3 Các phương pháp điều khiển

Có nhiều cách để điều khiển tốc độ động cơ DC như bằng phương pháp thay đổi điện áp, thay đổi từ thông hoặc phương pháp điều chỉnh độ rộng xung (PWM) Trong cánh tay máy thì chúng em chọn phương pháp điều khiển bằng cách thay đổi độ rộng xung Chọn phương pháp này vì chúng dễ thực hiện, mạch cấu tạo đơn giản

Hình 1.2.3: Điều khiển động cơ bằng PWM

hi lo avg

V a V b V

t

Trang 10

Hình 1.3.1 OFF RELAY Hình 1.3.2 SPDT Hình 1.3.3 SPST

Các loại rơle thông dụng: Rơle trung gian, Rơle thời gian, Rơle nhiệt…

3.2 Rơle trung gian ( dùng trong đồ án này)

4 Encoder:

Trang 11

4.1 Tìm hiểu về encoder:

Một Encoder thông thường gồm 1 hay nhiều bộ phát và thu nhận ánh sáng Phần thu thường là photodiotde hoặc phototransistor, một đĩa chắn quang có khoét lỗ gắn trên trục quay đặt giữa bộ phát và thu, thông thường trục quay này sẽ được gắn với trục quay của đối tượng cần đo tốc độ

Ứng dụng của encoder trong kỹ thuật thường dùng để quản lý và xác định góc quay của các thiết bị như trục động cơ

Hình dạng Encoder:

4.2 Các loại Encoder:

• Absolute encoder (Encoder tuyệt đối)

Là loại encoder mà tín hiệu ta nhận đựơc chỉ rõ vị trí của vật thể mà chúng ta không cần xử lý gì thêm

Trang 12

• Incremental encoder (encoder tăng lên 1 đơn vị)

Là loại encoder chỉ có 1, 2, hoặc tối đa là 3 vòng lỗ Chúng ta hình dung thế này, nếu bây giờ chúng ta đục một lỗ trên một cái đĩa quay, thì cứ mỗi lần đĩa quay 1 vòng,

ta sẽ nhận được tín hiệu, và biết đĩa quay một vòng Nếu bây giờ đĩa có nhiều lỗ hơn,

ta sẽ có được thông tin chi tiết hơn, có nghĩa là đĩa quay 1/4 vòng, 1/8 vòng, hoặc 1/n vòng, tùy theo số lỗ nằm trên incremental encoder

Cứ mỗi lần đi qua một lỗ, chúng ta phải lập trình để thiết bị đo đếm lên 1 Do vậy, encoder loại này có tên incremental encoder (encoder tăng lên 1 đơn vị)

4.3 Hoạt động của Encoder

Hoạt động Absolute Encoder:

Trang 13

Vấn đề chúng ta sẽ quan tâm ở đây, chính là vấn đề về độ mịn của encoder, có nghĩa là làm thế nào biết đĩa đã quay 1/2 vòng, 1/4 vòng, 1/8 vòng hay 1/n vòng, chứ không phải chỉ biết đĩa đã quay được một vòng.

Với một số nhị phân có 2 chữ số, chúng ta sẽ có 00, 01, 10, 11, tức là 4 trạng thái Điều đó có nghĩa là với 2 chữ số, chúng ta có thể chia đĩa encoder thành 4 phần bằng nhau Và khi quay, chúng ta sẽ xác định được độ chính xác đến 1/4 vòng

Tương tự như vậy, nếu với một số có n chữ số, chúng ta sẽ xác định được độ chính xác đến 1/(2^n) vòng

Cách xác định 2^n trạng thái này của đĩa encoder:

Ví dụ với đĩa encoder có 2 vòng đĩa.Ta sẽ thấy rằng, ở vòng trong cùng, có một rãnh rộng bằng 1/2 đĩa Vòng phía ngoài, sẽ có 2 rãnh nằm đối diện nhau Như vậy, chúng ta cần 2 đèn led để phát xuyên qua 2 vòng lỗ, và 2 đèn thu

Giả sử ở vòng lỗ thứ nhất (trong cùng), đèn đọc đang nằm ở vị trí có lỗ hở, thì tín hiệu nhận được từ con mắt thu sẽ là 1 Và ở vòng lỗ thứ hai, thì chúng ta đang ở vị trí không có lỗ, như vậy con mắt thu vòng 2 sẽ đọc được giá trị 0

Và như vậy, với số 10, chúng ta xác định được encoder đang nằm ở góc phần tư nào, cũng có nghĩa là chúng ta quản lý được độ chính xác của đĩa quay đến 1/4 vòng Trong ví dụ trên, nếu đèn LED đọc được 10, thì vị trí của LED phải nằm trong góc phần tư thứ hai, phía trên, bên trái

Kết quả, nếu đĩa encoder có đến 10 vòng lỗ, thì chúng ta sẽ quản lý được đến 1/(2^10) tức là đến 1/1024 vòng Hay người ta nói là độ phân giải của encoder là 1024 xung trên vòng (pulse per revolution - ppr)

Nhận thấy một điều rằng, encoder tuyệt đối rất có lợi cho những trường hợp khi góc quay là nhỏ, và động cơ không quay nhiều vòng Khi đó, việc xử lý encoder tuyệt đối trở nên dễ dàng cho người dùng hơn, vì chỉ cần đọc giá trị là chúng ta biết ngay

Trang 14

được vị trí góc của trục quay Tuy nhiên, nếu động cơ quay nhiều vòng, điều này không có lợi, bởi vì khi đó, chúng ta phải xử lý để đếm số vòng quay của trục Nếu thiết kế encoder tuyệt đối, chúng ta cần quá nhiều vòng lỗ, và dẫn tới giới hạn về kích thước của encoder, bởi vì việc gia công chính xác các lỗ quá nhỏ là không thể thực hiện được Chưa kể rằng việc thiết kế một dãy đèn led và con mắt thu cũng ảnh hưởng rất lớn đến kích thước giới hạn này.

Hoạt động Incremental encoder:

Incremental encoder, sẽ tăng 1 đơn vị khi một lần lên xuống của cạnh xung

Cứ mỗi lần quay qua một lỗ, thì encoder sẽ tăng một đơn vị trong biến đếm Nếu

cứ đếm vô hạn như thế này, thì chúng ta không thể biết được khi nào nó quay hết một vòng mỗi lần có những rung động nào đó mà ta không quản lý được, encoder sẽ bị sai một xung người ta đưa vào thêm một lỗ định vị để đếm số vòng đã quay của encoder Đây là hình encoder có lỗ định vị:

Tuy nhiên, một vấn đề lớn nữa là, làm sao chúng ta biết encoder đang xoay theo chiều nào? Bởi vì cho dù xoay theo chiều nào, thì tín hiệu encoder cũng chỉ là các xung đơn lẻ và xoay theo hai chiều đều giống nhau Chính vì vậy, người ta đặt thêm một vòng lỗ ở giữa vòng lỗ thứ 1 và lỗ định vị như hình sau:

Trang 15

Chú ý rằng, vị trí góc của các lỗ vòng 1 và các lỗ vòng 2 lệch nhau Các cạnh của

lỗ vòng 2 nằm ngay giữa các lỗ vòng 1 và ngược lại Tuy nhiên, ta sẽ thấy một điều rằng, thay vì làm 2 vòng encoder, và dùng 2 đèn LED đặt thẳng hàng, thì người ta chỉ cần làm 1 vòng lỗ, và đặt hai đèn LED lệch nhau

4.4 Xác định chiều quay Encoder

Nguyên tắc hoạt động của Encoder dựa vào tín hiệu có hoặc không của ánh sáng tại phần thu (phototransistor) Khi Encoder quay, ánh sáng luân phiên chiếu qua các rãnh trên đĩa Encoder Khi ánh sáng qua rãnh, phototransistor được tích cực, khi đến vị trí

bị chắn ánh sáng phototransistor thụ động trở lại Quá trình này tạo ra xung tại chân ra của phototransistor Xung này chưa vuông, người ta phải thông qua mạch nắn tạo ra xung vuông như ý muốn Hai pha A và B đặt lệch nhau 90 độ Khi quay theo chiều này thì pha A sớm pha hơn pha B Nhưng khi quay chiều ngược lại thì pha B sớm hơn pha A Thông qua sự sớm và trễ pha ta có thể xác định chiều quay của Enocder

Trang 16

B

900

*Trường hợp quay thuận: pha B sớm pha hơn pha A

Trường hợp quay nghịch: pha A sớm pha hơn pha B

5 Khí nén:

5.1 Van khí nén:

Van khí nén dùng trong tay máy có nhiệm vụ thay đổi dòng khí vào xi lanh của tay kẹp Van sử dụng là van đảo chiều Có nhiều loại van đảo chiều như: van 2/2, van 3/2, van 4/2, van 5/2, van 4/3, van 5/3 Tuy nhiên do cơ cấu xi lanh tay kẹp đơn giản nên chúng em dùng van đảo chiều 5/2 Trong loại van này thì cửa P là cửa cung cấp năng lượng, cửa A lắp vào bên trái của cơ cấu chấp hành, cửa B lắp vào bên phải của cơ cấu chấp hành Cửa T và cửa R là cửa xả năng lượng Khi con trược van di chuyển qua cửa phải, cửa P thông với cửa A, cửa B thông với cửa T Khi con trược di chuyển qua cửa trái, cửa P thông với cửa B, cửa A thông với cửa R

A

B

A

B

Trang 17

Hình 1.5.1 : Cấu tạo van đảo chiều 5/2.

Hình 1.5.2: Van đảo chiều trong thực tế.

5.2 Xi lanh khí nén:

Xi lanh dùng trong tay kẹp là loại xi lanh 2 chiều Cấu tạo của xi lanh 2 chiều được thể hiện như hình dưới:

Trang 18

6 Sử dụng tọa độ vật để xác định góc quay cánh tay :

OA: CHIỀU DÀI CÁNH TAY KHÂU ĐẾ

AB: CHIỀU DÀI CÁNH TAY KHÂU TRÊN

OC= b (TỌA ĐỘ TRỤC Y CỦA VẬT)

Trang 19

VẬY GÓC QUAY KHÂU ĐẾ: θ2 = -

( ) = COS-1(OA + AB - OB2 2 2

2.OA.AB )GÓC QUAY KHÂU TRÊN:

θ1 = 1800 -

Trang 20

CHƯƠNG III : LÝ THUYẾT PLC S7-200

1 Tổng quan về PLC:

1.1 Khái niệm chung:

Thiết bị điều khiển logic khả trình PLC là dạng thiết bị điều khiển đặc biệt dựa trên bộ vi xử lý, sử dụng bộ nhớ lập trình được để lưu trữ các lệnh và thực hiện các chức năng, chẳng hạn cho phép tính logic, lập chuỗi, định giờ, đếm, và các thuật toán

để điều khiển máy và các quá trình công nghệ, thay cho việc thể hiện thuật toán đó bằng các mạch số

Về cơ bản chức năng của bộ điều khiển logic PLC cũng giống như chức năng của

bộ điều khiển thiết kế trên cơ sở các rơle công tắc tơ hoặc trên cơ sở các khối điện tử

đó là:

+ Thu thập các tín hiệu vào và các tín hiệu phản hồi từ các cảm biến

+ Liên kết, ghép nối các tín hiệu theo yêu cầu điều khiển và thực hiện đóng mở các mạch phù hợp với công nghệ

+ Tính toán và soạn thảo các lệnh điều khiển trên cơ sở so sánh các thông tin thu thập được

+ Phân phát các lệnh điều khiển đến các địa chỉ thích hợp

Trang 21

Riêng đối với máy công cụ và người máy công nghiệp thì bộ PLC có thể liên kết với bộ điều khiển số CNC hình thành bộ điều khiển thích nghi Trong hệ thống của các trung tâm gia công, mọi quy trình công nghệ đều được bộ PLC điều khiển tập trung.

1.2 Thế hệ PLC S7-200:

- S7-200 là PLC thuộc họ Micro Automation của hãng SIEMENS, có thể điều khiển hàng loạt các ứng dụng khác nhau trong tự động hoá Với cấu trúc nhỏ gọn, có khả năng mở rộng, giá rẻ và một tập lệnh SIMATIC mạnh, PLC S7-200 là một lời giải hoàn hảo cho các bài toán tự động vừa và nhỏ

- PLC S7-200 cho phép tự động hoá tối đa với chi phí tối thiểu

- Cài đặt, lập trình và vận hành rất đơn giản

- Các CPU có thể sử dụng trong mạng, hệ thống phân tán hoặc sử dụng đơn lẻ

- Có khả năng tích hợp trên quy mô lớn

- Ứng dụng cho những điều khiển đơn giản và phức tạp

- Truyền thông mạnh (PPI, Profibus-DP, AS-i)

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

Bộ PLC thông dụng có 5 bộ phận cơ bản gồm: bộ xử lý, bộ nhớ, bộ nguồn, giao diện vào/ra và thiết bị lập trình Sơ đồ khối:

Trang 22

2.1 Bộ xử lý:

Bộ xử lý còn gọi là bộ xử lý trung tâm (CPU), là linh kiện chứa bộ vi xử lý Bộ xử

lý biên dịch các tín hiệu vào và thực hiện các hoạt động điều khiển theo chương trình được lưu trong bộ nhớ của CPU, truyền các quyết định dưới dạng tín hiệu hoạt động đến các thiết bị ra

2.5 Giao diện vào/ra:

Giao diện vào là nơi bộ xử lý nhận thông tin từ các thiết bị ngoại vi và truyền thông tin đến các thiết bị bên ngoài Tín hiệu vào có thể từ các công tắc, các bộ cảm biến nhiệt độ, các tế bào quang điện Tín hiệu ra có thể cung cấp cho các cuộn dây công tắc tơ, các rơle, các van điện từ, các động cơ nhỏ Tín hiệu vào/ra có thể là tín hiệu rời rạc, tín hiệu liên tục, tín hiệu logic

Trang 23

- Interrup (chương trình ngắt): vùng nhớ chứa chương trình ngắt, chương trình này

sẽ thực hiện khi có một ngắt xảy ra, như: ngắt Timer, ngắt của HSC…

3.2 Địa chỉ một vài vùng nhớ khác

- Vùng nhớ I ( Process image input): I0.0 – I15.7 (128 đầu vào)

- Vùng nhớ Q ( Process Image Output): Q0.0 – Q15.7(128 đầu ra)

- Vùng nhớ M: M0.0 – M31.7

- Vùng nhớ T (Timer): T0 – T255

- Vùng nhớ C ( Counter): C0 – C255

- Đầu vào tương tự: AIW0 – AIW62

- Đầu ra tương tự: AQW0 – AQW62

- Vùng nhớ V (Variable memory): VB0 – VB8191

- Vùng nhớ L (Local memory): LB0 – LB63

- Vùng nhớ SM (Special memory) : SM0.0 – SM549.7

SM0.0 – SM29.7 (Read-only)-Vùng nhớ bộ đếm tốc độ cao: HC0 – HC5

-Vùng nhớ thanh ghi tổng: AC0 – AC3

Trang 24

4 Vòng quét chương trình:

PLC thực hiện chương trình theo chu kì lặp Mỗi vòng lặp được gọi là vòng quét (Scan) Thời gian thực hiện vòng quét của PLC phụ thuộc vào: kích thước của chương trình, số lượng ngõ vào ra, số lượng thông tin truyền thông và tốc độ xử lý của CPU

Hình 2.4.1 Chu kỳ vòng quét PLC

5 Cấu trúc chương trình:

Chương trình trong S7-200 có thể được lập trình với 2 dạng cấu trúc khác nhau.a/ Lập trình tuyến tính: toàn bộ chương trình nằm trong một khối trong bộ nhớ Loại hình cấu trúc tuyến tính này phù hợp với những bài toán tự động nhỏ, không phức tạp Khối được chọn phải là khối OB1, là khối mà PLC luôn quét và thực hiện các lệnh trong đó thường xuyên, từ lệnh đầu tiên đến lệnh cuối cùng và quay lại lệnh đầu tiên

b/ Lập trình có cấu trúc: Chương trình được chia thành những phần nhỏ và mỗi phần thực thi những nhiệm vụ chuyên biệt riêng của nó, từng phần này nằm trong những khối chương trình khác nhau Loại hình cấu trúc này phù hợp với những bài toán điều khiển nhiều nhiệm vụ và phức tạp PLC S7-200 có 3 loại khối cơ bản sau:

- Loại khối OB1 (Organization Block): Khối tổ chức và quản lí chương trình điều khiển Khối này luôn luôn được thực thi, và luôn được quét trong mỗi chu kì quét

- Loại khối SBR (Khối chương trình con): Khối chương trình với những chức năng riêng giống như một chương trình con hoặc một hàm (chương trình con có biến

Trang 25

hình thức) Một chương trình ứng dụng có thể có nhiều khối chương trình con và các khối chương trình con này được phân biệt với nhau bằng tên của chương trình con đó

- Loại khối INT ( Khối chương trình ngắt) : Là loại khối chương trình đặc biệt có khả năng trao đổi một lượng dữ liệu lớn với các khối chương trình khác Chương trình này sẽ được thực thi mỗi khi có sự kiện ngắt xảy ra

6 Các loại PLC S7-200 (Siemens):

Các loại PLC thông thường: CPU222, CPU224, CPU224XP (có 2 cổng giao tiếp), CPU226 (có 2 cổng giao tiếp), CPU226XM

Thông thường S7-200 được phân ra 2 loại chính:

a/ Loại CPU 224 AC / DC / RLY cấp điện áp 220VAC :

Trang 26

b/ Loại CPU 224 DC / DC / DC cấp điện áp 24VDC :

Hình 2.6.2 Sơ đồ đấu dây CPU 224 DC / DC / DC

7 Bộ điều rộng xung (PWM, PTO):

CPU S7-200 có 2 ngõ ra xung tốc độ cao Q0.0, Q0.1, dùng cho việc điều rộng xung tốc độ cao trong các ứng dụng điều khiển thiết bị bên ngoài như điều khiển tốc

độ động cơ, điều khiển nhiệt độ v.v

Có 2 cách điều rộng xung: điều rộng xung 50% (PTO) và điều rộng xung theo tỉ lệ (PWM) Ở chế độ PWM, chu kì xung có thể ở miligiây hoặc micro giây Chu kì ở tầm 50ms đến 65,535ms hoặc ở 2μs đến 65,535 μs Ở chế độ PTO, chu kì ở tầm 50ms đến 65,535ms hoặc ở 2μs đến 65,535 μs và xung đếm ở tầm từ 1 đến 4,294,967,295 xung

Trang 27

Trong phần này em sử dụng PWM để xuất xung ở ngõ ra Q0.0, Q0.1 điều khiển động

cơ 2,3

Để thực hiện việc phát xung tốc độ cao ở chế độ PWM trước hết ta phải thực hiện các bước định dạng sau:

 Reset ngõ xung tốc độ cao ở chu kì đầu của chương trình

 Chọn loại ngõ ra phát xung tốc độ cao Q0.0, Q0.1

 Định dạng thời gian cơ sở ( Time base) dựa trên bảng sau:

Tham chiếu các byte điều khiển cho chế độ PWM

Byte cho việc định dạng: SMB67 (ngõ ra Q0.0)

Ngoài ra: SMW68 : Xác định thời gian 1 chu kì.

Time Base

Pulse Width

Cycle Time

Trang 28

8 Bộ đếm xung tốc độ cao (High-Speed Counter):

8.1 Giới thiệu về HSC:

-Bộ đếm thường: Bộ đếm thường trong PLC như đếm lên (CTU), đếm xuống (CTD), đếm lên xuống (CTUD), chỉ đếm được các sự kiện xảy ra với tần số thấp (Chu

kỳ xuất hiện của sự kiện nhỏ hơn chu kỳ quét của PLC)

-HSC là bộ đếm tốc độ cao, được sử dụng để đếm những sự kiện xảy ra với tần số lớn mà các bộ đếm thông thường trong PLC không đếm được VD: Tín hiệu xung từ encoder…

-Bộ đếm xung tốc độ cao đếm các sự kiện tốc độ cao không phụ thuộc vào chu kì quét của CPU Tần số đếm cao nhất phụ thuộc vào loại CPU Khi đếm bằng hai pha,

cả hai xung clock đều có thể hoạt động ở tốc độ cao nhất Chúng có thể hoạt động ở dạng nhân 1(1x) hoặc nhân 4 (4x) khi đếm hai pha

8.2 Tìm hiểu về HSC0 và HSC1:

Trong đồ án này chúng em sử dụng HSC0 và HSC1 để đọc xung Encoder của khâu 1 và khâu 2

- Byte điều khiển của HSC0: SMB37

- Byte điều khiển của HSC1: SMB47

Chọn kiểu Reset, Start và tần số đếm cho HSC

SM36.0 SM47.0 0: Reset mức cao 1: Reset mức thấp

- SM47.1 0: Start mức cao 1: Start mức thấp

SM36.2 SM47.2 0: giá trị đếm 4X 1: giá trị đếm 1X

Giá trị tức thời, giá trị đặt

Trang 29

Bộ đếm Giá trị tức thời Giá trị đặt

8.3 Các bước khởi tạo bộ đếm HSC:

Dùng chu kỳ quét đầu tiên (SM0.1) để gọi chương trình con khởi tạo Trong chương trình con khởi tạo thực hiện các công việc sau đây

- Nạp giá trị cho byte điều khiển

- Gán bộ đếm với Mode đếm tương ứng dùng lệnh HDEF

Để tạo chương trình đọc xung tốc độ cao chúng ta có thể thông qua các bước Wizard như sau:

Trang 30

Chọn Wizard đọc xung tốc độ cao High Speed Counter:

Chọn Mode đọc xung tốc độ cao và loại Counter nào (HC0,HC1…)

Trang 31

Tùy từng loại ứng dụng mà ta có thể chọn nhiều chế độ đọc xung tốc độ cao khác nhau, có tất cả 12 chế độ đọc xung tốc độ cao Ở đồ án này em sử dụng Mode 9 để đếm xung A/B của Encoder, có 2 dạng:

-Dạng 1 (Quadrature 1x mode): Đếm tăng 1 khi có xung A/B quay theo chiều thuận, và giảm 1 khi có xung A/B quay theo chiều ngược

-Dạng 2 (Quadrature 4x mode): Đếm tăng 4 khi có xung A/B quay theo chiều thuận, và giảm 4 khi có xung A/B quay theo chiều ngược

*Mode 9: Chỉ đếm tăng giảm, không có Bit Start cũng như bit Reset

Hình 2.8.4 Giản đồ xung mô tả Mode đếm 9 (chế độ 4X)

Trang 32

Bảng mô tả chế độ đếm cũng như loại HSC, quy định địa chỉ vào Căn cứ vào bảng trên để có thể chọn loại HSC cho từng ứng dụng phù hợp.

Sau khi chọn HSC và Mode sử dụng ta ấn next

Trang 33

Ấn next

Ấn next

Trang 34

Ấn Finish ta được chương trình con như sau:

Trang 35

Tiếp điểm thường đóng sẽ đóng khi có giá trị logic bit bằng 0, và sẽ mở khi có giá trị logic bằng 1

Toán hạng: Bit: I, Q, M, SM, T, C, V(n)Tiếp điểm thường hở sẽ được đóng nếu giá trị logic bằng 1 và sẽ hở nếu giá trị logic bằng 0Toán hạng: Bit: I, Q, M, SM, T, C, V(n)

Tiếp điểm đảo trạng thái của dòng cung cấp Nếu dòng cung cấp có tiếp điểm đảo thì nó ngắt mạch,

và ngược lạiLệnh nhận biết trạng thái chuyển từ 0 lên 1 trong một chu kì quét Khi chuyển từ 0 lên 1 thì sẽ cho thông mạch

Lệnh nhận biết sự chuyển trạng thái từ 1 xuống 0 trong một chu kì quét Khi chuyển từ 1 xuống 0 thì thông mạch

Cuộn dây ở đầu ra sẽ được kích thích khi có dòng điều khiển đi ra

Trang 36

Dùng để đóng một mảng gồm n tiếp điểm kể từ giá trị ban đầu bit.

Toán hạng: Bit: I, Q, M, SM, T, C, V, IB, QB,

MB, SMB,VB,AC,*VD,*AC,ConstDùng để ngắt một mảng gồm n tiếp điểm kể từ giá trị ban đầu bit

Toán hạng: Bit: I, Q, M, SM, T, C, V, IB, QB, MB,SMB,VB,AC,*VD,*AC,Const

9.2 Nhóm lệnh điều khiển timer

IN: BOOL: cho phép Timer

PT: Int: giá trị đặt cho timer (VW, IW, QW, MW,

SW, SMW, LW, AIW, T, C, AC, Constant, *VD,

*LD, *AC) Txxx: số hiệu Timer

IN: BOOL: cho phép Timer

PT: Int: giá trị đặt cho timer (VW, IW, QW, MW,

SW, SMW, LW, AIW, T, C, AC, Constant, *VD,

*LD, *AC) Txxx: số hiệu Timer

Trang 37

IN: BOOL: cho phép Timer

PT: Int: giá trị đặt cho timer (VW, IW, QW, MW,

SW, SMW, LW, AIW, T, C, AC, Constant, *VD,

*LD, *AC) Txxx: số hiệu Timer

9.3 Nhóm lệnh counter

Cxxx: số hiệu counter (0-255) CU: kích đếm lên (Bool) R: reset (Bool)

PV:giá trị đặt cho counter (INT) PV: VW, IW, QW, MW, SMW, LW, AIW, AC, T, C, Constant, *VD, *AC, *LD, SW

Cxxx: số hiệu counter (0-255) CD: kích đếm xuống (Bool) LD: Load (Bool)

PV:giá trị đặt cho counter (INT) PV: VW, IW, QW, MW, SMW, LW, AIW, AC, T, C, Constant, *VD, *AC, *LD, SW

Trang 38

Cxxx: số hiệu counter (0-255) CU: kích đếm lên (Bool) CD: kích đếm xuống (Bool) R: reset (Bool)

PV:giá trị đặt cho counter (INT) PV: VW, IW, QW, MW, SMW, LW, AIW, AC, T, C, Constant, *VD, *AC, *LD, SW

9.4 Lệnh Move

Trong S7_200 có các hàm Move sau:

Move_B: Di chuyển các giá trị cho nhau trong giới hạn 1 Byte

Move_W: Di chuyển các giá trị nguyên cho nhau trong giới hạn 1 Word Move_DW: Di chuyển các giá trị nguyên cho nhau trong giới hạn 1 DWord Move_R: Di chuyển các giá trị thực cho nhau trong giới hạn 1 Dint

Trang 39

9.6 Lệnh chuyển đổi

B_I: đổi số nguyên 8 bit sang số nguyên 16 bit

I_B: đổi số nguyên 16 bit sang số nguyên 8 bit

I_DI: đổi số nguyên 16 bit sang số nguyên 32 bit

DI_I: đổi số nguyên 32 bit sang số nguyên 16 bit

DI_R: đổi số nguyên 32 bit sang số thực

BCD_I: đổi số BCD 16 bit sang số nguyên 16 bit

I_BCD: đổi số nguyên 16 bit sang số BCD

Trong trường hợp việc đổi từ số dung lượng nhỏ sang dung lượng lớn hơn (như từ Byte sang Int,từ Int sang Dint ) thì chương trình luôn thực thi

Còn trường hợp ngược lại: Nếu giá trị chuyển bị tràn ô nhớ thì chương trình sẽ không thực thi và Bit tràn SM1.1 sẽ bật lên 1

Ví dụ: Khi chuyển số Int sang Byte,mà số Int lớn hơn 255 (8Bit),thì chương trình

sẽ không thực thi và Bit SM1.1 bật lên 1

Lệnh làm tròn: ROUND

EN: ngõ vào cho phép

IN: ngõ vào

OUT: ngõ ra

Một giá trị số thực ở ngõ vào được làm tròn và chuyển thành số DInt ở ngõ ra Nếu

số lẻ >=0.5 thì giá trị số thực sẽ được làm tròn lên, ngược lại thì làm tròn xuống

Trang 40

CHƯƠNG IV : MATLAB VÀ CÔNG CỤ XỬ LÝ ẢNH

1 Sơ lược về Matlab và Image toolbox:

1.1 Sơ lược về Matlab:

Matlab là từ viết tắt của hai từ tiếng anh Matrix Laboratory Matlab là một ngôn ngữ lập trình bậc cao được sử dụng để giải các bài toán về kỹ thuật Matlab tích hợp được việc tính toán, thể hiện kết quả, cho phép lập trình, giao diện làm việc rất dễ dàng cho người sử dụng Dữ liệu cùng với thư viện được lập trình sẵn cho phép người sử dụng có được những ứng dụng sau đây:

• Sử dụng các hàm có sẵn trong thư viện, các phép tính toán học thông thường

• Cho phép lập trình tạo ra những ứng dụng mới

• Cho phép mô phỏng các mô hình thực tế

• Phân tích, khảo sát và hiển thị dữ liệu

• Với phần mềm đồ họa cực mạnh

• Cho phép phát triển, giao tiếp với một số phần mềm khác như C++, Fortran.Ngoài ra, Matlab còn cung cấp Image Processing toobox, chuyên về xử lý ảnh Có thể nói Matlab là một công cụ rất mạnh giúp cho việc thực hiện các giải thuật xử lý ảnh nhanh chóng và dễ hiểu

1.2 Công cụ Image Processing toolbox:

Đây là công cụ được tích hợp sẵn trong Matlab sử dụng cho xử lý ảnh

1.2.1 Các khái niệm cơ bản

 Điểm ảnh:

Điểm ảnh (Pixel) là một phần tử của ảnh số tại toạ độ (x, y) với độ xám hoặc màu nhất định Kích thước và khoảng cách giữa các điểm ảnh đó được chọn thích hợp

Ngày đăng: 10/05/2014, 11:56

HÌNH ẢNH LIÊN QUAN

Hình 1.1.1: Bộ truyền động trục vít – bánh vít. - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 1.1.1 Bộ truyền động trục vít – bánh vít (Trang 6)
Hình 1.2.1:  Động cơ DC - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 1.2.1 Động cơ DC (Trang 7)
Hình dưới mô tả nguyên tắc hoạt động của động cơ DC. Dòng điện chạy qua khung  dây sinh ra từ trường - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình d ưới mô tả nguyên tắc hoạt động của động cơ DC. Dòng điện chạy qua khung dây sinh ra từ trường (Trang 8)
Hình 1.2.3: Điều khiển động cơ bằng PWM - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 1.2.3 Điều khiển động cơ bằng PWM (Trang 9)
Hình 1.3.1 OFF RELAY      Hình 1.3.2 SPDT         Hình 1.3.3 SPST Các loại rơle thông dụng: Rơle trung gian, Rơle thời gian, Rơle nhiệt… - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 1.3.1 OFF RELAY Hình 1.3.2 SPDT Hình 1.3.3 SPST Các loại rơle thông dụng: Rơle trung gian, Rơle thời gian, Rơle nhiệt… (Trang 10)
Hình dạng Encoder: - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình d ạng Encoder: (Trang 11)
Hình 1.5.2: Van đảo chiều trong thực tế. - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 1.5.2 Van đảo chiều trong thực tế (Trang 17)
Hình 1.5.1 : Cấu tạo van đảo chiều 5/2. - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 1.5.1 Cấu tạo van đảo chiều 5/2 (Trang 17)
Hình 2.4.1 Chu kỳ vòng quét PLC - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 2.4.1 Chu kỳ vòng quét PLC (Trang 24)
Hình thức). Một chương trình ứng dụng có thể có nhiều khối chương trình con và các  khối chương trình con này được phân biệt với nhau bằng tên của chương trình con đó - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình th ức). Một chương trình ứng dụng có thể có nhiều khối chương trình con và các khối chương trình con này được phân biệt với nhau bằng tên của chương trình con đó (Trang 25)
Hình 2.6.2 Sơ đồ đấu dây CPU 224 DC / DC / DC - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 2.6.2 Sơ đồ đấu dây CPU 224 DC / DC / DC (Trang 26)
Hình 2.8.4 Giản đồ xung mô tả Mode đếm 9 (chế độ 4X) - điều khiển cánh tay robot scara dùng xử lý ảnh
Hình 2.8.4 Giản đồ xung mô tả Mode đếm 9 (chế độ 4X) (Trang 31)
Bảng mô tả chế độ đếm cũng như loại HSC, quy định địa chỉ vào. Căn cứ vào bảng  trên để có thể chọn loại HSC cho từng ứng dụng phù hợp. - điều khiển cánh tay robot scara dùng xử lý ảnh
Bảng m ô tả chế độ đếm cũng như loại HSC, quy định địa chỉ vào. Căn cứ vào bảng trên để có thể chọn loại HSC cho từng ứng dụng phù hợp (Trang 32)
Sơ đồ nguyên lí của khối nguồn: - điều khiển cánh tay robot scara dùng xử lý ảnh
Sơ đồ nguy ên lí của khối nguồn: (Trang 50)
Sơ đồ mạch: - điều khiển cánh tay robot scara dùng xử lý ảnh
Sơ đồ m ạch: (Trang 52)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w