Các ứng dụng của LabVIEW

Một phần của tài liệu Thiết kế hệ thống kiểm tra sản phẩm ứng dụng xử lý ảnh trong labview (Trang 43)

LabVIEW được sử dụng trong các lĩnh vực đo lường, tự động hóa, cơ điện tử, robotics, vật lý, toán học, sinh học, ô tô,… [6]

LabVIEW giúp kỹ sư kết nối với bất kỳ các cảm biến, và bất kỳ cơ cấu chấp hành nào với máy tính.

LabVIEW có thể được sử dụng để xử lý các kiểu dữ liệu như tín hiệu tương tự (analog), tín hiệu số (digital), hình ảnh (vision), âm thanh (audio),…

LabVIEW hỗ trợ các giao thức giao tiếp khác nhau như RS232, RS485, TCP/IP, PCI, PXI.

Bạn cũng có thể tạo ra các thực thi độc lập và các thư viện chia sẻ (ví dụ thư viện liên kết động DLL), bởi vì LabVIEW là một trình biên dịch 32- bit.

LabVIEW đã trở nên phổ biến ở các phòng thí nghiệm ở Nhật, Hàn, Mỹ , Đức, Anh,… Ứng dụng đo lường, trong Hình 4.20 là giao diện thu thập dữ liệu các thông tin cần thiết của tàu vũ trụ cỡ nhỏ tại cơ quan hàng không và vũ trụ NASA, Hoa Kỳ.

30

Hình 2. 26: Thu thâp dữ liệu tại cơ quan hàng không vũ trụ NASA 2.7.3. Cách tạo một Project

Bước 1: Từ màn hình Desktop nhấp đúp chọn biểu tượng LabVIEW

Hình 2. 27: Biểu tượng LabVIEW

Cửa sổ giao diện LabVIEW xuất hiện

Hình 2. 28: Cửa sổ giao diện LabVIEW

31

Hình 2. 29: Cửa sổ làm việc chính của LabVIEW 2.7.4. Cấu trúc của một chương trình LabVIEW

Trong LabVIEW, các nút nhấn được gọi là Control, LCD được gọi là Indicator. Các phép tính gọi là hàm (Funtion). Các Control và Indicator sẽ nằm ở cửa sổ chính (Front panel), và hàm nằm ở cửa sổ sau (Block diagram), còn gọi là cửa sổ chứa các sơ đồ khối.

Một chương trình LabVIEW dù đơn giản nhất hay phức tạp nhất cũng được tạo nên một cách rất đơn giản từ bốn thành phần cơ bản sau : các khối Control đóng vai trò input (giá trị nhập vào), các Indicator đóng vài trò Output (giá trị hiển thị, kết quả), các hàm và các đường nối (wire) các khối và hàm lại.

Hình 2. 30: Phép cộng trong LabVIEW

Các Control thì luôn nối vào các nút bên trái của hàm. Các Indicator thì luôn nối vào các nút bên trái của hàm như Hình 4.25.

32

Ta cũng dễ dàng nhận thấy, các Control thì có các nút mũi tên lên – xuống để tăng giảm giá trị (hoặc nhập trực tiếp vào ô Control). Các Indicator thì không thể nhập giá trị vào. Control thì có màu trắng, còn Indicator thì có màu xám.

Một Control có thể đổi thành Indicator (hoặc Costant) bằng cách nhấp Right Click lên Control cần đổi, chọn Change to Indicator hoặc ngược lại. Constant ở đây là một Control có giá trị không đổi suốt thời gian chạy chương trình.

Các Control và Indicator đều có ảnh của chính mình bên Block Diagram, ảnh này tạo ra khi ta lấy các Control và Indicator bên Front Panel.

Hình 2. 31: Control và Indicator bên Front Panel 2.8. GIAO TIẾP LABVIEW VỚI PLC

2.8.1. Truyền thông MODBUS TCP/ IP

Trong nền công nghiệp hiện nay, việc ứng dụng các mạng truyền thông trong việc quản lý, điều khiển và giám sát ngày càng phổ biến trong các nhà máy, xí nghiệp và các dây chuyền sản xuất. Để đáp ứng nhu cầu đó thì ngày càng có nhiều thiết bị điều khiển và cơ cấu chấp hành như PLC, biến tần, ... được tích hợp sẵn các giao thức truyền thông như: Profibus, Profinet, Can, Modbus, Zigbe, Simatic net, ... [11]

 Giới thiệu về Modbus:

MODBUS là một protocol phổ biến bậc nhất được sử dụng hiện nay cho nhiều mục đích. MODBUS đơn giản, rẻ, phổ biến và dễ sử dụng. Được phát minh từ thế kỉ trước

33

(gần 30 năm trước), các nhà cung cấp thiết bị đo và thiết bị tự động hóa trong công nghiệp tiếp tục hỗ trợ MODBUS trong các sản phẩm thế hệ mới. Mặc dù các bộ phân tích, lưu lượng kế, hay PLC đời mới có giao diện kết nối không dây, Ethernet hay fieldbus, MODBUS vẫn là protocol mà các nhà cung cấp lựa chọn cho các thiết bị thế hệ cũ và mới.

MODBUS do Modicon (hiện nay thuộc Schneider Electric) phát triển năm 1979, là một phương tiện truyền thông với nhiều thiết bị thông qua một cặp dây xoắn đơn. Ban đầu, nó hoạt động trên RS232, nhưng sau đó nó sử dụng cho cả RS485 để đạt tốc độ cao hơn, khoảng cách dài hơn, và mạng đa điểm (multi-drop). MODBUS đã nhanh chóng trở thành tiêu chuẩn thông dụng trong ngành tự động hóa, và Modicon đã cho ra mắt công chúng như một protocol miễn phí.

Ngày nay, MODBUS-IDA (www.MODBUS.org) , tổ chức sử dụng và cung cấp MODBUS lớn nhất tiếp tục hỗ trợ protocol MODBUS trên toàn cầu.

Ba phiên bản MODBUS phổ biến nhất được sử dụng ngày nay là: - MODBUS ASCII

- MODBUS RTU - MODBUS/TCP

Tất cả thông điệp được gửi dưới cùng một format. Sự khác nhau duy nhất giữa 3 loại MODBUS là cách thức thông điệp được mã hóa.

Với MODBUS ASCII, mọi thông điệp được mã hóa bằng hexadeci-mal, sử dụng đặc tính ASCII 4 bit. Đối với mỗi một byte thông tin, cần có 2 byte truyền thông, gấp đôi so với MODBUS RTU hay MODBUS/TCP.

Đối với MODBUS RTU, dữ liệu được mã hóa theo hệ nhị phân, và chỉ cần một byte truyền thông cho một byte dữ liệu. Đây là thiết bị lí tưởng đối với RS 232 hay mạng RS485 đa điểm, tốc độ từ 1200 đến 115 baud. Tốc độ phổ biến nhất là 9600 đến 19200 baud.

MODBUS/TCP đơn giản là MODBUS qua Ethernet. Thay vì sử dụng thiết bị này cho việc kết nối với các thiết bị tớ, do đó các địa chỉ IP được sử dụng. Với

34

MODBUS/TCP, dữ liệu MODBUS được tóm lược đơn giản trong một gói TCP/IP. Do đó, bất cứ mạng Ethernet hỗ trợ MODBUS/ IP sẽ ngay lập tức hỗ trợ MODBUS/TCP.

 Bản đồ bộ nhớ MODBUS

Mỗi thiết bị MODBUS có bộ nhớ chứa dữ liệu quá trình. Thông số kỹ thuật của MODBUS chỉ ra cách dữ liệu được gọi ra như thế nào, loại dữ liệu nào có thể được gọi ra. Tuy nhiên, không đặt ra giới hạn về cách thức và vị trí mà nhà cung cấp đặt dữ liệu trong bộ nhớ. Dưới đây là ví dụ về cách thức mà nhà cung cấp đặt các loại dữ liệu biến thiên quá trình hợp lí.

Các đầu vào và cuộn cảm rời rạc có giá trị 1 bit, mỗi một thiết bị lại có một địa chỉ cụ thể. Các đầu vào analog (bộ ghi đầu vào) được lưu trong bộ ghi 16 bit. Bằng cách sử dụng 2 bộ ghi này, MODBUS có thể hỗ trợ format điểm floating (nổi) IEEE 32 bit. Bộ ghi Holding cũng sử dụng các bộ ghi bên trong 16 bit hỗ trợ điểm floating.

Bảng 2. 3: Địa chỉ Modbus

Địa chỉ Loại Tên

1 - 9999 Đọc hoặc viết Cuộn cảm

10001 - 19999 Chỉ đọc Đầu vào rời rạc

30001 – 39999 Chỉ đọc Bộ ghi đầu vào

40001 – 49999 Đọc hoặc viết Bộ ghi Holding

Dữ liệu trong bộ nhớ được xác định trong thông số kỹ thuật MODBUS. Giả sử rằng nhà cung cấp tuân theo tiêu chuẩn kỹ thuật MODBUS (không phải tất cả), mọi dữ liệu có thể được truy cập dễ dàng bởi chủ, thiết bị tuân theo các thông số kỹ thuật. trong nhiều trường hợp, nhà cung cấp thiết bị công bố vị trí của bộ nhớ, tao điều kiện cho nhân viên lập trình dễ dàng để kết nối với thiết bị tớ.

Trong đồ án này nhóm đã quyết đinh chọn giao thức Modbus TCP là giao thức giao tiếp giữa PLC và LabVIEW.

TCP/IP là một hệ thống giao thức – một tập hợp các giao thức hỗ trợ việc lưu truyền trên mạng. Hai giao thức được dùng chủ yếu ở đây TCP (Transmission control protocol)

35

và IP ( Internet protocal) tức là cần phải có một giai đoạn thiết lập liên kết giữa một cặp thực thể TCP trước khi chúng thực hiện trao đổi dữ liệu.

Còn giao thức IP là một kiểu giao thức không kết nối (connectionless), nghĩa là không cần phải có giai đoạn thiết lập liên kết giữa một cặp thực thể nào đó trước khi trao đổi dữ liệu.

TCP có khả năng truyền và nhận dữ liệu cùng một lúc — song công (full-duplex). Cơ chế báo nhận (Acknowledgement): tức là khi A gửi gói tin cho B, nếu B nhận được thì sẽ gửi thông báo cho A, trường hợp A không nhận được thông báo thì sẽ gửi lại gói tin tới khi nào B báo nhận thì thôi.

Tính năng phục hồi dữ liệu bị mất trên đường truyền.

2.8.2. Hàm chức năng Modbus TCP MB_SERVER trong PLC S7-1200

PLC S7-1200 cung cấp cho người dùng các lệnh dùng cho chế độ truyền thông theo giao thức Modbus TCP. Các lệnh này nằm trong thư mục con theo đường dẫn: Options → Communication → Others → Modbus TCP → MB_SEVER [3].

Hình 2. 32: Khối chức năng MB_SERVER trong TIA Portal Bảng 2. 4: Ý nghĩa các thông số trong khối MB_SERVER

Tham số và kiểu Kiểu dữ

liệu Mô tả

DISCONNECT (input)

Bool Lệnh "MB_SERVER" nhập vào kết nối thụ động với mô-đun đối tác, có nghĩa là máy chủ đáp ứng yêu cầu kết nối TCP từ mỗi địa chỉ IP yêu cầu. Bạn

36

có thể sử dụng tham số này để kiểm soát khi yêu cầu kết nối được chấp nhận:

0: Kết nối thụ động được thiết lập khi không có kết nối liên lạc.

1: Ngắt kết nối. Bất cứ khi nào đầu vào được được kích hoạt, không có thao tác nào khác được thực thi. Giá trị 7003 là đầu ra ở tham số STATUS sau khi chấm dứt kết nối thành công

CONNECT_ID UINT Thông số CONNECT_ID phải xác định duy nhất mỗi kết nối trong PLC. Mỗi ví dụ duy nhất của MB_CLIENT hoặc MB_SERVER chỉ dẫn phải chứa một tham số CONNECT_ID duy nhất.

IP_PORT UINT Giá trị bắt đầu = 502. Số lượng cổng IP xác định cổng IP nào được giám sát cho các yêu cầu kết nối của máy khách Modbus.

Không được sử dụng các số cổng TCP sau cho kết nối thụ động của lệnh "MB_SERVER": 20, 21, 25, 80, 102, 123, 5001, 34962, 34963 và 34964.

MB_HOLD_REG VARIANT Con trỏ tới thanh ghi giữ Modbus của lệnh "MB_SERVER": Sử dụng khối dữ liệu global data với quyền truy cập chuẩn làm thanh ghi giữ. Thanh ghi giữ chứa các giá trị có thể được truy cập bởi máy khách Modbus bằng cách sử dụng các chức năng Modbus 3 (đọc), 6 (ghi) và 16 (đọc).

NDR BOOL "Dữ liệu mới đã sẵn sàng": 0: Không có dữ liệu mới

1: Dữ liệu mới được viết bởi máy chủ Modbus DR BOOL "Đọc dữ liệu":

0: Không đọc dữ liệu

1: Dữ liệu được đọc bởi máy chủ Modbus

ERROR BOOL Nếu xảy ra lỗi trong khi gọi lệnh "MB_SERVER", đầu ra của tham số ERROR được đặt thành TRUE. Thông tin chi tiết về nguyên nhân của sự cố được chỉ định bởi tham số STATUS.

STATUS WORD Mã lỗi.

37

Hình 2. 33: Các thông số được khai báo trong MB_SERVER

Vùng địa chỉ Modbus:

- Đọc và ghi dữ liệu 1-bit từ địa chỉ máy chủ Modbus (00001 đến 09999). - Đọc dữ liệu 1-bit từ địa chỉ máy chủ Modbus (10001 đến 19999).

- Đọc dữ liệu từ 16 bit từ địa chỉ máy chủ Modbus (30001 đến 39999) .

- Đọc và ghi dữ liệu từ 16 bit đến địa chỉ máy chủ Modbus (40001 đến 49999).

Bảng 2. 5: Bảng địa chỉ vùng nhớ Global

Địa chỉ Word PLC Địa chỉ Modbus Địa chỉ byte PLC

MW100 40001 MB100 – MB101 MW102 40002 MB102 – MB103 MW104 40003 MB104 – MB105 MW106 40004 MB106 – MB107 MW108 40005 MB108 – MB109 MW110 40006 MB110 – MB111 Cách tính địa chỉ vùng nhớ Modbus: Địa chỉ Modbus = MW 100 400001 2  

Ví dụ: địa chỉ Word PLC là MW198 chuyển sang vùng nhớ Modbus là: Địa chỉ Modbus = 192 100 400001

2

 

= 400050

Bảng 2. 6: Bảng địa chỉ vùng nhớ Input

38 I0.0 10001 I0.1 10002 I0.2 10003 I0.3 10004 I0.4 10005 I0.5 10006 I0.6 10007 I0.7 10008 Bảng 2. 7: Bảng địa chỉ vùng nhớ Output

Địa chỉ ngõ ra PLC Địa chỉ Modbus

Q0.0 00001 Q0.1 00002 Q0.2 00003 Q0.3 00004 Q0.4 00005 Q0.5 00006 Q0.6 00007 Q0.7 00008

39

CHƯƠNG 3 THIẾT KẾ HỆ THỐNG

3.1. GIỚI THIỆU

Mô hình thiết kế bao gồm băng tải vận chuyển sản phẩm, có 2 Camera để xử lý ảnh ở đầu vào. Đồng thời cảm biến quang được gắn trên băng tải để phân loại sản phẩm và gửi về máy tính thông qua phần mềm LabVIEW

Nguyên lý hoạt động: Khi có sản phẩm lỗi đi qua, 2 Camera sẽ nhận biết lỗi sản phẩm sau đó truyền tín hiệu đến khối xử lý để thực hiện tác vụ phân loại. Trong suốt quá trình phân loại thì sự tác động của xi lanh, số lượng sản phẩm đã được phân loại sẽ được thể hiện trên giao diện điều khển.

Với đề tài thiết kế này sẽ bao gồm các phần chính

 Thiết kế sơ đồ khối

 Thiết kế mô hình phần cứng

 Tính toán và thiết kế sơ đồ nguyên lý

3.2. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG

3.2.1. Thiết kế sơ đồ khối hệ thống

Hệ thống được xây dựng dựa trên sơ đồ khối sau:

Hình 3. 1: Sơ đồ khối hệ thống

Chức năng các khối:

XỬ LÝ TRUNG TÂM

XI LANH PHÂN LOẠI

BĂNG TẢI CAMERA THU HÌNH ẢNH NGUỒN LABVIEW CẢM BIẾN MÀN HÌNH GIÁM SÁT

40

- Khối nguồn: Có chức năng cấp nguồn hệ thống

- Khối xử lý trung tâm: Có chức năng nhận, xử lý thông tin và điều khiển các khối khác

- Khối cảm biến: Có chức năng nhận biết sản phẩm lỗi khi chạy qua trên băng tải - Khối băng tải: Có chức năng tải sản phẩm đến các khu vực xử lý khác trong hệ

thống

- Khối điều khiển khí nén: Có chức năng chặn sản phẩm để đưa sản phẩm lỗi ra khỏi băng tải

- Khối thu nhận hình ảnh: Khi sản phẩm đi qua, Camera thu nhận hình ảnh sản phẩm và truyền về máy tính. Chương trình LabVIEW sẽ xử lý tín hiệu hình ảnh từ Camera truyền về và xuất tín hiệu điều khiển sang PLC thông qua Modbus.

3.2.2. Tính toán và thiết kế hệ thống a. Thiết kế khối nguồn a. Thiết kế khối nguồn

Khối nguồn là khối rất quan trọng cung cấp nguồn cho toàn bộ hệ thống hoạt động Trong mô hình sử dụng 2 khối nguồn để cung cấp là 24 VDC và 220 VAC

- Khối nguồn 220 VAC: Cung cấp nguồn cho PLC S7- 1200

- Khối nguồn 24 VDC: Cung cấp nguồn cho động cơ, đèn báo, van điện từ

Bảng 3. 1: Bảng tiêu thụ dòng điện của các thiết bị

Khối nguồn Các thiết bị và linh kiện Dòng tiêu thụ

Nguồn 24 VDC - Động cơ

- Van điện từ

- 1A - 0.25A Nguồn 220 VAC - PLC S7-1200 AC/DC/Rl

- Đèn báo

- 1.5A - 0.01A

Từ bảng tiêu thụ dòng điện của các thiết bị trên, ta có công thức tính tổng dòng điện tiêu thụ:

- Nguồn 24 VDC: sử dụng bộ nguồn 24 V/ 4.5A

41

Hình 3. 2: Khối nguồn thực tế b. Khối xử lý trung tâm

Hiện nay trên thị trường có rất nhiều loại PLC khác nhau của các hãng như Siemens, Mitsubishi, Panasonic, Omrom, ABB, Rockwell, … Sau quá trình tìm hiểu về các hãng, chi phí cùng với sự hướng dẫn và góp ý của giáo viên hướng dẫn nên nhóm thực hiện đã quyết định chọn PLC S7-1200 của hãng Siemens để lập trình. Với đặc điểm có cấu hình xử lý nhanh, giá thành vừa phải, được dùng nhiều trong công nghiệp hiện nay nên nhóm thực hiện đã quyết định chọn PLC S7-1200 ( CPU 1214C AC/ DC/ RLY) với các ưu điểm sau [4]:

- Đã được trang bị kiến thức cơ bản về PLC S7-1200 ở trường lớp

- Số Input trong mô hình sử dụng 4 ngõ, Output 4 ngõ phù hợp với số ngõ Input/ Output trên PLC

- PLC đơn giản, dễ sử dụng, độ bền cao

- Phần mềm lập trình trực quan, giúp dễ dàng trong việc viết chương trình điều khiển

42

Hình 3. 3: PLC S7-1200 CPU 1214C AC/DC/RLY

Thông số kĩ thuật:

- Điện áp hoạt động: 220 VAC - Số lượng ngõ vào số:

- Số lượng ngõ ra số:

- Số lượng ngõ vào Analog: - Bộ nhớ chương trình: 75 kB

Hình 3. 4: Sơ đồ ngõ vào, ra và nguồn hoạt động của PLC S7-1200 CPU 1214C

Một phần của tài liệu Thiết kế hệ thống kiểm tra sản phẩm ứng dụng xử lý ảnh trong labview (Trang 43)

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

(101 trang)