Bài toán kết nối PLC với Pytho n Darkflow

Một phần của tài liệu ỨNG DỤNG CÔNG NGHỆ học sâu để PHÂN LOẠI và KIỂM TRA CHẤT LƯỢNG THUỐC CHỮA BỆNH (Trang 66 - 72)

Hiện nay, để kết nối với PLC nói chung và PLC của Siemens nói riêng với các công cụ lập trình thì có khá nhiều sự lựa chọn. Ở đây, có thể kể đến một đại diện đó là OPC UA – Giao thức nền tảng cho Industrie 4.0.

OPC UA được hiểu là một chuẩn truyền thông bậc cao độc lập, được phát triển bởi hiệp hội OPC Foundation, nhưng OPC UA hoàn toàn khác trước so với đặc tả đàn anh của mình OPC DA. Chính vì vậy OPC UA được hiểu bằng cụm từ Open Platform Communication (OPC) Unified Architecture (UA) nhằm tránh đi cụm từ đã không hợp thời OLE for Process Control của OPC DA và những đặc tả khác.

Trong khuôn khổ đề tài có sử dụng Python kết hợp với PLC, để giảm bớt thời gian, cũng như đơn giản hóa bàn toán điều khiển bài toán đã sử dụng tới thư viện Snap7 – thư viện mã nguồn mở, hỗ trợ các hệ điều hành 32/64bit, đa nền tảng và hỗ trợ giao tiếp với Siemens S7 PLCs qua cổng Ethernet.

Một PLC Client là đối tương mà ai cũng biết, hầu như tất cả các trình điều khiển truyền thông PLC trên thị trường đều là máy khách. Tương tự OPC, Snap7 là một máy khách (Client). Nó đáp ứng gần như hoàn toàn các giao thức giao tiếp với dòng S7, nó có thể đọc, ghi toàn bộ bộ nhớ PLC (In/ Out/ DB/ Merkers/ Timer/ Counter), thực hiện thao tác khối (Upload/ Download), điều khiển PLC (Run/ Stop/ Compress,..), đáp ứng được các mức bảo mật (Đặt mật khẩu/ Xóa mật khẩu) và gần như tất cả các chức năng mà Simatic Manager hay Tia Portal cho phép.

Thư viện Snap7 được thiết kế để ghi nhớ việc truyền dữ liệu quan trọng trong công nghiệp liên quang đến các mạng có hàng tá PLC.

Kết luận chương 3

Trong chương này, đề tài đã trình bày các nội dung liên quan quan tới PLC S7- 1200 và OPC. Việc lựa chọn OPC để làm trung gian kết nối các thiết bị với nhau là hợp lý nhưng cần nhiều thời gian để tìm hiểu, cũng như cần hiểu biết sâu về các vấn đề của máy tính, do đó, nhóm đã lựa chọn phương pháp đơn giản hơn nhờ sử dụng thư viện Snap7. Chương trình điều khiển PLC và truyền thông với PC qua Ethernet dựa trên thư viện Snap7 Python được nhóm tự viết và thực nghiệm. Đồng thời, đề tài đã lựa chọn các thiết bị cần thiết cho hệ thống điện – điều khiển, bao gồm: Cảm biến, Camera, Xi lanh khí nén, Động cơ băng tải,…

CHƯƠNG 4:

PHẦN MỀM XỬ LÝ ẢNH

4.1. Tổng quan về công nghệ xử lý ảnh

Xử lý ảnh là một trong những mảng quan trọng nhất trong kỹ thuật thị giác máy tính, là tiền đề cho nhiều nghiên cứu thuộc lĩnh vực này. Hai nhiệm vụ cơ bản của quá trình xử lý ảnh là nâng cao chất lượng thông tin hình ảnh và xử lý số liệu cung cấp cho các quá trình khác trong đó có việc ứng dụng thị giác vào điều khiển.

Quá trình bắt đầu từ việc thu nhận ảnh nguồn (từ các thiết bị thu nhận ảnh dạng số hoặc tương tự) gửi đến máy tính. Dữ liệu ảnh được lưu trữ ở định dạng phù hợp với quá trình xử lý. Người lập trình sẽ tác động các thuật toán tương ứng lên dữ liệu ảnh nhằm thay đổi cấu trúc ảnh phù hơp với các ứng dụng khác nhau.

Quá trình xử lý nhận dạng ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho ra kết quả mong muốn. Kết quả đầu ra của một quá trình xử lý ảnh có thể là một ảnh “đã được xử lý” hoặc một kết luận.

4.1.1. Điểm ảnh và dữ liệu

Ảnh số xám có thể được biểu diễn như một hàm f(x,y). Nó có hai chiều: x và y, có nghĩa là mỗi điểm sẽ có một tọa độ (x, y) và có một cấp xám f tại điểm đó. Ảnh màu được tạo thành từ các hình ảnh thành phần khác nhau. Như chúng ta biết, từ màu đỏ, xanh lục, xanh lam có thể tạo nên tất cả các màu sắc chúng ta muốn. Từ 3 lớp màu sẽ có thể biểu diễn được hình ảnh màu sắc đa dạng.

Tuy nhiên, máy tính chỉ có thể tải và lưu trữ một mạng lưới các con số thay vì hình ảnh tự nhiên. Sau khi lấy mẫu và lượng tử hóa, mỗi (x, y) điểm ghi lại một số nguyên, mà thường được gọi là một pixel. Một điểm ảnh bao gồm cả các tọa độ không gian và độ sâu màu sắc cho thấy làm thế nào giá trị dữ liệu kỹ thuật số được lưu trữ trong mỗi vị trí chính xác.

4.1.2. Độ sâu màu sắc

Độ sâu màu sắc là thước đo số lượng màu sắc có thể thể hiện mà một bức ảnh có thể dùng để hiển thị. Độ sâu màu là số lượng bit (0 và 1) được dùng để định danh cho màu sắc của 1 điểm ảnh (pixel). Ví dụ, với ảnh đen trắng (monochrome), nếu sử dụng 4 bit thì bức ảnh sẽ có thể hiển thị 16 cấp độ sáng tối khác nhau trải từ màu đen tới màu trắng.

Hình 4. 2. Độ sâu màu sắc và ảnh hiển thị tương ứng

Đối với ảnh màu, người ta sử dụng n bit màu để mô tả độ sâu của màu sắc. Ví dụ, với màu 16 bit, người ta chia ra 5 bit cho màu đỏ, 6 bit cho màu lục và 5 bit cho màu lam, có tối đa 65536 màu khác nhau. Màu thực hỗ trợ 24 bit cho ảnh RGB, thông thường mỗi màu sẽ được biểu diễn bằng 8 bit màu đỏ, 8 bit màu lục và 8 bit màu lam, do đó sẽ có hơn 1,6 triệu màu khác nhau.

Bức ảnh có độ sâu màu lớn thì có thể biểu thị được dải màu rộng hơn, có nghĩa là cho màu sắc phong phú hơn, tuy nhiên dung lượng của ảnh sẽ lớn hơn.

4.2. Học máy, Học sâu

Thời gian gần đây AI nổi lên mạnh mẽ xâm nhập vào rất nhiều lĩnh vực trong cuộc sống như tự động dịch thuật, nhận dạng giọng nói, điều khiển tự động, v.v. Nó giờ được coi là xu hướng công nghệ thế giới và nhiều người cho rằng đó là cuộc cách mạng công nghiệp lần thứ 4.

Chính vì vậy, việc tìm hiểu AI có lẽ cũng là một nhu cầu thiết yếu trong bối cảnh hiện tại. Trong phần báo cáo này được viết ra nhằm mục đích đem lại một bức tranh tổng quan nhất về lĩnh vực AI.

4.2.1. Học máy, học sâu

AI - Trí tuệ nhân tạo (Artificial Intelligence) là các kỹ thuật giúp cho máy tính thực hiện được những công việc của con người chúng ta. Ví dụ như một chương trình cờ vua tự động có thể coi là một chương trình có sử dụng AI hay viết tắt là một chương trình AI.

Hình 4. 3. Tổng quan AI

Trong lĩnh vực AI có một nhánh nghiên cứu về khả năng tự học của máy tính được gọi là học máy (machine learning). Hiện nay không có 1 định nghĩa chính thức nào về học máy cả nhưng có thể hiểu rằng nó là các kỹ thuật giúp cho máy tính có thể tự học mà không cần phải cài đặt các luật quyết định. Thường một chương trình máy tính cần các quy tắc, luật lệ để có thể thực thi được một tác vụ nào đó như dán nhãn cho các email là thư rác nếu nội dung email có chứ từ khoá “quảng cáo”. Nhưng với học máy, các máy tính có thể tự động phân lại các thư rác thành mà không cần chỉ trước bất kỳ quy tắc nào cả. Nói hơi khó thoát ý, nhưng có thể hiểu đơn giản là nó giúp cho máy tính có được cảm quan và suy nghĩ được như con người. Còn nếu nói nôm na kỹ thuật một chút thì học máy là phương pháp vẽ các đường thể hiện mối

quan hệ của tập dữ liệu. Ví dụ như đường ngăn cách 2 loại dữ liệu cho nhãn khác nhau, đường thể hiện xu hướng của giá nhà phụ thuộc vào diện tích và trí hay các đường phân cụm dữ liệu.

Một nhánh nhỏ trong học máy gần đây rất được ưu chuộng là Học sâu (Deep

Learning). Học sâu là kỹ thuật sử dụng các mạng nơ-ron tương tự như các nơ-ron

của não người để xây dựng hệ thống học máy. Đây là một sự kết hợp tuyệt vời giữa toán học và khoa học thần kinh. Kết quả của nó mang lại cực kỳ to lớn, có thể coi là khởi nguyên của ngành công nghiệp mới. Tại thời điểm này, hầu hết các anh lớn cả trong ngành công nghệ lẫn các ngành khác như ôto, điện tử đều đang tập trung phát triển và ứng dụng kỹ thuật học sâu cho bài toán của mình. Ví dụ như AlphaGo của Google đã chiến thắng nhà vô địch cờ vây Lee Sedol vào tháng 3 năm 2016. Tính năng nhận diện khuôn mặt khá chính xác của Facebook được triển khai vào năm 2016. Trợ lý ảo Siri của Apple được giới thiệu từ năm 2006. Xe tự lái của Google được thử nghiệm chính thức trên đường phố vào năm 2015,…

Một phần của tài liệu ỨNG DỤNG CÔNG NGHỆ học sâu để PHÂN LOẠI và KIỂM TRA CHẤT LƯỢNG THUỐC CHỮA BỆNH (Trang 66 - 72)

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

(123 trang)
w