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

Khóa luận tốt nghiệp Kỹ thuật máy tính: Thiết kế hệ thống phát hiện các lỗi thiếu linh kiện trên board mạch sử dụng camera

69 1 0
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 đề Thiết Kế Hệ Thống Phát Hiện Các Lỗi Thiếu Linh Kiện Trên Board Mạch Sử Dụng Camera
Người hướng dẫn TS. Trần Quang Nguyên
Trường học Đại học Quốc gia TP. Hồ Chí Minh
Chuyên ngành Kỹ thuật máy tính
Thể loại khóa luận tốt nghiệp
Năm xuất bản 2024
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 69
Dung lượng 73,69 MB

Nội dung

Vi vậy, trong dé tài này, nhóm đề xuất một hệ thống sử dụng mô hình “You Only Look Once” YOLO dé phát hiện các linh kiện có hoặc bi thiếu.. Từ chỉ thị được đưa ra của mô hình phát hiện l

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HQC CONG NGHE THONG TIN

KHOA KY THUAT MAY TINH

LE THE THONG - 20520788

KHOA LUAN TOT NGHIEP

THIET KE HE THONG PHAT HIEN CAC LOI THIEU

LINH KIEN TREN BOARD MACH SU DUNG CAMERA

DESIGN THE ERROR DETECTION SYSTEM IN MISSING

COMPONENTS ON BOARD USING CAMERAS

CU NHÂN KỸ THUAT MAY TÍNH

GIANG VIEN HUONG DAN

TS TRAN QUANG NGUYEN

TP HO CHI MINH, 2024

Trang 2

LỜI CẢM ƠN

Đầu tiên, em xin gửi lời cảm ơn chân thành đến toàn bộ quý thầy cô tại

trường Đại học Công nghệ thông tin - ĐHQG TP.HCM Trong quá trình đào tạo tại

trường, các thầy cô đã truyền thụ cho em rất nhiều các kiến thức bổ ích, cũng như

hỗ trợ tận tình các vấn đề mà em gặp phải về học tập hay các hoạt động tại trường

Cùng với đó, em cũng muốn được gửi lời cảm ơn sâu sắc đến Khoa Kỹ thuậtMáy tính đã tạo điều kiện cho em có một môi trường học tập thật tốt, giúp bản thân

em có thêm nhiều kiến thức chuyên sâu về các lĩnh vực thiết kế hệ thống nhúng vàthiết kế vi mạch

Đặc biệt, em xin cảm ơn thầy Trần Quang Nguyên đã tạo điều kiện cho em

có cơ hội tìm hiểu thêm các hướng nghiên cứu mới, cũng như tạo cơ hội giúp emtiếp cận với các trang thiết bị phục vụ cho việc nghiên cứu Thêm vào đó, sự địnhhướng của thầy còn giúp em nhận định rõ hướng nghiên cứu, phát triển đề tài để cóthé hoàn thành khóa luận tốt nghiệp này

Cũng không thê thiêu các cá nhân, tập thê đã chia sẽ các bài báo, nghiên cứu học thuật, các ứng dụng và các nên tảng phi lợi nhuận dé em có thêm cơ sở nghiên

cứu và hoàn thành khóa luận.

Một lân nữa, em xin chân thành cảm ơn!

Trang 3

MỤC LỤC

Chương 1 TONG QUAN DE TÀI 2-55 52 S2EEE2EE2E122E127112712211711 1121 xe 4

1.1 Giới thiệu đề tài - 5c+Sx+2E2E12E12211711271.2112117112112111121 211k 4

1.1.1 Phân tích các nghiên cứu liên quan 5 55 5+ +2 *+e£+s+sseereereerrsrs 4

1.1.2 Lý do chọn đề tài 2- 5c e1 EÉEEEE2E1211111211211 11111111011 1111 re 61.2 Mục tiêu của đề tài -2- 2+ 2c 2x2 1 211271127112112211211121121111 011k 71.3 Bố cục luận văn -.- ¿+ St+x9Ex2EE12E11155111E212111211121111111111111111 11.2 8Chương 2 NGHIÊN CỨU THỰC NGHIỆM - 2< £*E£+E£+E++E+£+E++E+zrxez 9

2.1 Tìm hiểu về một số loại €aIm€fa - 2-6 St SE ‡EEEEE£EESEEEEEEEEEEeEEEEkerrerrervee 9

2.1.1 CCD camera (HD 2MP USB2.0 1/3” CMOS) -. -2:©55¿©5zcs2 9

2.1.2 IMx-3505U USB3.0 Camera À 2-22 +<£EE2EE2EECEEEEEEEEEErrkrrrkee 10

2.1.3 WAT-902H Ultimate Camera 2+ 22+ E222 *£++E££zeE+zeeezeeeezsse 11

2.2 Nghiên cứu một số mô hình phát hiện đối tượng - 2-5522 5z: 12

2.2.1 Mô hình Faster R-CNN - 2-5222 2x2 E2 2211271212111 1c 12

2.2.2 Mô hình YOLOv4 - 2+ +¿+S++2EE£EEEEEEE2EE2E122112711271221221 222 xe 13

2.2.3 Mô hình YOLOv4-tiny +: 5¿2E+2EEt2EE2E122112711211211711 221 re 15

2.2.4 Giải thuật tinh độ chính xác của mô hình - 55555 52<<£<+<s+52 16

2.2.5 Phuong pháp tính tốc độ xử lý của mô hình - 2-2 ¿s2 sse¿ 192.3 Tìm hiểu về các công nghệ và thiết bị khác -2 2¿¿22++2zxz+csz+2 20

2.3.1 Thư viện OpenCV -. + t1 1v 110111 111 111 HH HT ng Hiện 20

2.3.2 Thư viện TTÌKITIf€T < 5E 2136221181223 8E E958 8E 95111118811 181 cv 21

2.3.3 Chương trình tính chỉ số MAP.u cecceccesessessessesseessessesseestessessessesseessesses 22

2.3.4 Máy tính nhúng Jetson Nano BOI - 5-3 s2 *+stsrrerrerrrrrsrres 23

“S0 2200 601 24

Trang 4

2.3.6 DONG v00 vn '" É 25

2.3.7 (009 0 26

Chương 3 HIỆN THỰC THIET KỂ - 2-2 2+2E£2EE£2EE+EEE£EEE+EE+zEEzEerrrrees 27

3.1 Mô hình phát hiện lỗi thiếu linh kiện điện tử - 2 <252sz5c5sz2 27

3.1.1 Thiết kế mẫu vật - 2 2++SE22EE2EE921127112712117112711271211 211 1 cre 27

3.1.2 Xây dựng tập dữ liỆu - G22 321112113211 111 1511111111811 111111 key 29

3.1.3 Huấn luyện mô hình - 22 +©+++E+++EE++2EE+2EEEt22E+2EEEtrrkrerkrrrk 333.2 Giao điện quản lý hệ thống ¿- 2 2 k+EE£EE2EE2E12E1711211211 111221 xe, 36

3.2.1 Thiết kế đồ họa của r0 - :.A1+11 363.2.2 Ludng xử lý của giao điỆn - 2-52-5522 E‡EEEEEEEE2E12E1E121 2E crveeg 403.3 Cơ cau gap thả sản phẩm - 2 2c 5tSt2E12EE9EE12E1211271711211211 11111 crk 43

5.2 Hạn chế và hướng phát triỂn - 2: ¿+ 2 E++E££E+2EE+EE£EE+ZEE2EESEEerkerrrrrree 58

Trang 5

DANH MỤC HÌNH

Hình 1.1 Biéu đồ luồng dữ liệu của phần mềm [ I] 2-2 522522522 s2 4

Hình 1.2 Sơ đồ khối hệ thống [2] - 2-2-5252 EE+EE£EE£EEESEEEEEEEEEEEEEEEEEErrkrrrkerg 5Hình 1.3 Sơ đồ vận hành của hệ thống - 2 2¿©+¿++£+EE++2EE++EE+tzExzrxzsrszez 7

Hinh 00960)00 1n 9 Ipii)i028))/0 651) 5100v.).,2 118 10 Hình 2.3 WAT-902H Ultimate €a1neTa - 0 E23 91991 9 9119111 1 1 vn ri, 11

Hình 2.4 Cau trúc mang Faster R-CNN [5] :ccceesseessceseceeeeseeeeeeseceseeeeeeeeeeeeaeenes 12

Hình 2.5 Cau trúc chung của các mô hình YOLO [3] -2- 2-22 5225222: 13 Hình 2.6 Output của một mô hình YOLO [3] 555-5555 *++£++exssexseesssss 14 Hình 2.7 Intersection over union [[7] - -. ¿5s + c 3223 ‡*EE+vEEeeE+eeEeeeEeeseeseeseeses 17

Hình 2.8 Đường cong precision theo recall [7] -¿ ++++++s++ex+sx+ex+exeexss 18 Hình 2.9 Các diện tích dưới đường cong PR CUTV€ 55 5c 2+2 +s+sssesss2 18

Hình 2.10 Biéu diễn hoạt động của ham time.{Ime - ¿5s ++s++sx++++x+ss+ 19 Hình 2.11 Jetson Nano developer kit [ Ö] - - ¿5< +5 £+*£+se+eexeexeeeseersses 24 Hình 2.12 STM32FE103CSTTG6 [ I H] -.- 55c 2S E+E+EEEEEsErrrrersrkrrree 25

Hình 2.13 Động cơ bước 2 pha - c5 12x12 * S9 HH HH HH giết 26

Hình 3.1 Bảng mạch mẫu chưa có linh kiện (a) và đã có linh kiện (b) 28

Hình 3.2 Bảng mạch thực tế sau khi sản Xuất -:- St tt 2EEEE2EEEEEEEErEtrrrrree 28Hình 3.3 Tap dit liệu được dùng để huấn luyện 2-2 52+ z+Ex+£xezEezEerxees 29Hình 3.4 Minh họa về các thông số của định dang Yolo Annotations 31

Hình 3.5 Tap dữ liệu được dùng để kiỂm tra -i 5 ScStxvESEEEE2ESEEEEEESEEEErErrrrrrree 31

Hình 3.6 Ví du về chỉ số confidence c.cccccccccsssscssssscssssesessesevsssessssesesseserseseeseseeeeees 32Hình 3.7 Ảnh trước khi khi xoay (a) và sau khi xoay (b) - 2-5 5z+czcxcxz 33

Hình 3.8 Thiết kế tab monitor của giao điện + 2 s++£+x+E++E++rxezxezrxers 37 Hình 3.9 Thiết kế tab error component của giao điỆn - 2-2: 52 z2 szxzsz 38

Hình 3.10 Ludng xử lý của giao diện 2 2¿©2+z+22+t22E222E1222127122211 221 crke AlHình 3.11 Cơ cau phân loại sản phamn cccccccccccesssessssesssesssseessecsseesssesssessseesseesseees 43

Trang 6

Hình 3.12 Luồng xử lý của cơ cấu phân loại - 2 2 + sz+£++Exe£xerxzrxrxees 45Hình 4.1 Sơ đồ thiết kế phần cứng -2 2¿©22©+++22E+2EE222EEt2EEESEEECEEkrerkrrrk 46

Hình 4.2 Giao diện của ứng dụng XTỚD - 5 n1 HH ng re 47

Hình 4.3 Terminal của phần mềm PuTTTY - 2c 5+ £+S£EE£EE2EE£EEEEEerEErExerxers 48Hình 4.4 Đồ thị thể hiện độ chính xác của các class trong mô hình - 51Hình 4.5 Đồ thị thé hiện số dự đoán đúng va sai của mô hinh eee 51Hình 4.6 Đồ thị thé hiện tổng số ground-truth box của mô hình 52

Hình 4.7 Hình ảnh nhận diện bị lỗi khi nhận diện nhãn lackRes thành Res 53

Hình 4.8 Hình anh nhận diện bi đúng khi tăng độ sáng 55555 ++5<+5+ 53 Hình 4.9 Tab monitor hiển thị kết qua ảnh sau khi phát hiện vat thể 55 Hình 4.10 Tab error component hiển thị các linh kiện bị lỗi - - 5-5 s+s+ 56

Trang 7

Bang so sánh một số mô hình nhỏ [6] c.ccccccssessesseessessessessessessesseeseeees 15

Bang so sánh tốc độ hoạt động của YOLOv4-tiny [6] -. - 16

Cac loại linh kiện được khảo sat cccccccessccccessecceesseeceesseeceesseeeeenees 27

Các nhãn được sử dụng + St S S9 111 11 1 re 30

Bảng đánh gia thời gian xử lý mô hình - «55+ s+xsscsecsessesee 54

Bảng so sánh kết qua với một số mô hình cùng chức năng 57

Trang 8

DANH MỤC TỪ VIẾT TẮT

API Application programming interface

CCD Charge Coupled Device

CMOS Complementary Metal-Oxide Semiconductor

CNN Convolutional neural network

CUDA Compute Unified Device Architecture

FPS Frame per second

GPU Graphics Processing Unit

GUI Graphical User Interface

IOU Intersection over union

mAP Mean Average Precision

NoDC Number of detected components

NoMC Number of missing components

PCB Printed Circuit Board

R-CNN regions with CNN features

RPN Region Proposal Network

TPU Tensor Processing Unit

UART Universal asynchronous receiver-transmitter YOLO You Only Look Once

Trang 9

TÓM TÁT KHÓA LUẬN

Đối với hệ thống phát hiện lỗi thiếu linh kiện điện tử, điều quan trọng

đầu tiên là độ chính xác khi nhận diện lỗi của hệ thống Việc nhận diện chính

xác bảng mạch đang thiếu loại linh kiện nào giúp cho cơ cấu gắp thả có thểphân loại bảng mạch về đúng vị trí, giúp cho công đoạn sửa lỗi trở nên thuận lợi

hơn Điều quan trọng thứ hai là thời gian để hệ thống phân tích, đánh giá và

phân loại Nếu mat quá nhiều thời gian vào công đoạn phân tích và phát hiện lỗi,không chỉ công đoạn kiểm tra quang học ma toan bộ hệ thống sản xuất linh kiện

sẽ bị trì hoãn, làm giảm hiệu suất sản xuất

Vi vậy, trong dé tài này, nhóm đề xuất một hệ thống sử dụng mô hình

“You Only Look Once” (YOLO) dé phát hiện các linh kiện có hoặc bi thiếu Mô

hình này có khả năng hoạt động với thời gian thực mà vẫn đảm bảo độ chính

xác khi nhận diện các lỗi thiếu linh kiện trên bảng mạch Camera của hệ thốngcũng yêu cầu phải có độ phân giải tương đối lớn để có khả năng phát hiệnnhững chi tiết nhỏ Sau khi nhận diện được các linh kiện bị thiếu, chương trình

sẽ đưa ra các chỉ thị cho co cau phân loại

Từ chỉ thị được đưa ra của mô hình phát hiện lỗi thiếu linh kiện, cơ cấugắp thả sẽ phân loại các bảng mạch theo loại linh kiện bị thiếu Cơ cấu gắp thả

là một cơ cấu hai trục được vận hành bởi hai động cơ vi bước Khi chỉ thị từchương trình phân tích là không lỗi, đầu hút sẽ gắp bảng mạch thả về vị trí của

các mạch không có lỗi Ngược lại, khi chỉ thị là lỗi thiếu bất kì linh kiện nảo,

đầu hút sẽ hút lay bang mach va dua về vi tri phan loai cua mach thiéu linh kién

Thêm vào đó, nhóm nghiên cứu cũng phat triển thêm một giao diện giúpngười dùng có thể theo dõi hoạt động của hệ thống Sau khi mô hình phân tích

và phát hiện ra loại linh kiện bị thiếu, hệ thống sẽ hiển bị tên, hình ảnh và vị trí

mà linh kiện bị thiếu trên bảng mạch Các kỹ sư có thể dựa vào đó để đánh giá

xem các thông tin về linh kiện bị thiếu có chính xác không? Có còn linh kiện bịthiếu nào mà mô hình không phát hiện ra hay không? Kỹ sư sẽ đưa ra chỉ thịcuối cùng dé đánh giá kết quả kiểm tra của mô hình phát hiện lỗi

Trang 10

Từ những giải pháp trên, nghiên cứu của nhóm đã đạt được một số kết quả

như sau:

+ Mô hình phát hiện lỗi linh kiện có thé phát hiện 15 linh kiện trên một bảng

mạch, các linh kiện có kích thước tối thiểu là 2mm Độ chính xác của mô hình lên

đến 97.69%, tốc độ trung bình đạt được là 0.21s trên một khung hình khi sử dụng

bộ xử lý là GPU của máy tính nhúng Jetson Nano.

+ Cơ cau gap thả có thé phân loại chính xác có hoặc không lỗi thiếu linh kiện

mà hệ thống phân tích được về đúng vị trí được chỉ định Thời gian để hoàn thành

quy trình phân loại là 5s.

+ Giao diện có thể giám sát hệ thống và đưa ra các thông báo chính xác cho

người sử dụng Thêm vào đó, người ding cũng có thé trực tiếp điều khiến quá trình

kiểm tra của hệ thống

Trang 11

MỞ ĐẦU

Trong dây chuyền sản xuất các bảng mạch điện tử có ứng dụng một loại

công nghệ có tên là công nghệ dán bề mặt (Surface-mount technology) Công nghệ

này có một công đoạn kiểm tra quang hoc tự động (Automated optical inspection)hết sức quan trọng, đóng vai trò đánh giá hiệu quả của toàn bộ hệ thống và giúp đỡ

các kỹ sư dễ dàng hơn trong việc phát hiện các lỗi thường gặp trong quá trình lắp

ráp linh kiện.

Khi các lỗi thiếu linh kiện xảy ra, nếu hệ thống kiểm tra quang học tự độngkhông thé đưa ra các chân đoán chính xác và nhanh chóng sẽ dẫn đến làm giảm chatlượng và hiệu suất của dây chuyền sản xuất Vì vậy, mục đích của nhóm nghiên cứu

là phát triển một hệ thống có khả năng phát hiện lỗi thiếu các linh kiện một cáchchính xác và không tiêu tốn quá nhiều thời gian để kiểm tra, giúp tăng hiệu suất củatoàn bộ dây chuyền

Các sản pham mà nhóm muốn đánh giá là những bảng mach in (PrintedCircuit Board - PCB) có linh kiện được dán trên một bề mặt Các linh kiện nay lànhững linh kiện có kích thước nhỏ (tối thiểu 2mm) nên yêu cầu hệ thống camera thuthập hình ảnh phải có độ phân giải không quá nhỏ Thêm vào đó, camera cũng cần

được lắp đặt các đèn chiếu sáng trong trường hợp điều kiện ánh sáng môi trường

không đảm bảo Ngoài ra, hệ thống kiểm tra lỗi thiếu linh kiện cũng sẽ có thêm cơcấu gap tha dùng dé phân loại sản pham, cùng với giao diện dé hỗ trợ người dùng

có thé thực hiện các thao tác kiểm tra một cách hiệu quả

Trang 12

Chương 1 TONG QUAN DE TÀI

1.1 Giới thiệu đề tài

1.1.1 Phân tích các nghiên cứu liền quan

Bài báo khoa học với tiêu đề “Phát hiện linh kiện bị thiếu trên PCB dùngmạng noron” đề xuất giải pháp gồm hai hệ thống: tiếp nhận và xử ly dit liệu [1] Cụthể, nhóm nghiên cứu của bài báo đã sử dụng một web camera định dạng màu RGB

để chụp hình ảnh đầu vào Hình ảnh này sau đó sẽ tách các pixel có chứa bảng

mạch bằng phép tính connected-component labeling Kế đó, ho dùng phép tính

XOR logic so sánh các pixel của một ảnh mẫu có đầy đủ linh kiện với ảnh vừa tách

được ở trên, từ đó có thé tim ra được các pIxel của linh kiện bị thiếu và tính được 3đặc trưng của các linh kiện: diện tích, chu vi và tính compact Cuối cùng, nhómnghiên cứu này đã sử dụng một mạng noron lan truyền ngược với 1000 lần lặp dé

phân loại các linh kiện thu thập được nhờ vào 3 đặc trưng trên (Hình 1.1).

(XOR) “Pre processing =

Classification Feature Extraction

Output

Hình 1.1 Biéu đồ luồng đữ liệu của phần mềm [1]

Đối với công đoạn lọc các pixel chứa linh kiện bị thiếu bằng thuật toán XOR

logic, chương trình cần có một ảnh mẫu để so sánh với ảnh chụp được Vấn đề sẽphát sinh trong trường hợp ảnh chụp được bị nhiễu hay xê dịch khiến cho các pixeltrong ảnh đầu vào không còn tương thích với các pixel của ảnh mẫu, làm cho thuật

Trang 13

toán không còn chính xác Điều này khiến hệ thống tiếp nhận đữ liệu bắt buộc phảiđáp ứng được một số điều kiện lý tưởng như ảnh chụp rõ nét và đúng góc độ so với

ảnh mẫu, khoảng cách từ ảnh đến camera cũng không được thay đổi Thêm vào đó,

việc thực hiện 1000 lần lặp cũng khiến cho chương trình tiêu tốn rất nhiều thời gian

Bài báo “Phát hiện các linh kiện bị thiếu trên PCB dùng YOLO” [2] đã giảiquyết được vấn đề ảnh chụp đầu vào không cần khớp hoàn toàn so với ảnh mẫu

Thêm vào đó, tốc độ của chương trình cũng được cải thiện hơn rất nhiều khi họ sử

dụng thuật toán YOLO phiên bản thứ 3 được đánh giá là có khả năng đạt đến tốc độ

xử lý thời gian thực [3] Về cơ bản, hệ thống này gồm: có các nút bam dé điều khiến,

camera chụp ảnh, bộ xử lý Raspberry PI và một thiết bị hiển thị Khi nhận được tinhiệu từ các nút bam, Raspberry Pi sẽ phat ra tín hiệu điều khiển camera chụp anh va

đưa vào chương trình xử lý Bộ xử lý Raspberry Pi sau đó tiếp tục phát hiện nhữnglinh kiện bị thiếu trên bảng mach PCB băng thuật toán phát hiện đối trong YOLO.Kết quả cuối cùng về tên linh kiện, vị trí linh kiện bị thiếu sẽ được hiển thị lên giao

diện trên màn hình hiền thị (Hình 1.2).

Capture signal

Ca RasobuxÉP Processing information to user

PCB - (commana + _ “my ý a ond interface TFT Display

Hệ thống này được huấn luyện bằng tập dữ liệu với 3048 tắm ảnh (trong đó,

1982 tam dùng dé huấn luyện, 1066 tam dùng dé kiểm tra), kết quả có thé phát hiện

được 16 loại linh kiện điện tử khác nhau trên một bảng mạch Thêm vào đó, chương

trình còn có thể xác định được vị trí của linh kiện trên bảng mạch cùng với tên của

loại linh kiện đó Tuy nhiên, độ chính xác khi phát hiện linh kiện còn khá là thấp,

Trang 14

mAP (Mean Average Precision) chi đạt 65.8% Trong đó, điện trở cố định, cuộn

cảm gắn trên bề mặt, tụ điện có chỉ số mAP thấp nhất, lần lượt là 23.1%, 39%,

50.8% (bang 1.1) Đây là điểm yêu khá lớn của thuật toán YOLO nói chung khiphải đánh đôi độ chính xác dé đạt được tốc độ thời gian thực May thay, ở các phiênbản YOLO được phát triển về sau, độ chính xác đã được cải thiện nên đáng kế [4].Đây cũng chính là nền tảng dé nhóm nghiên cứu chúng em phát triển đề tài nay

Bảng 1.1 Chỉ số mAP [2]

All 0.693 0.692 0.058 0.462

Aluminum Capacitor 0.672 0.629 0.622 0.407

Ceramic Capacitor 0.57 0.361 0.431 0.284 Crystal Oscillator 0.923 0.966 0.948 0.683 DIP 0.585 0.434 0.454 0.345 Electrolytic Capacitor 0.508 0.362 0.282 0.198 Fixed Resistor 0.231 0.423 0.176 0.118 LED 0.79 0.896 0.804 0.458

PN Diode 0.743 0.857 0.852 0.631

QFP 0.824 0.927 0.887 0.744

SM Inductor 0.39 0.429 0.297 0.189 Surface Mount Resistor 0.675 0.606 0.659 0.444 TO252 0.676 0.834 0.778 0.593 TO92 0.92 0.678 0.732 0.448 Tactile Switch 0.894 0.926 0.933 0.709 Tantalum Capacitor 0.773 0.82 0.767 0.491 Toroidal Core Inductor 0.906 0.939 0.914 0.625

1.1.2 Ly do chọn đề tai

Theo báo cáo của International Federation of Robotics (IFR) năm 2020 [12],

số lượng robot công nghiệp trên thé giới đã tăng mạnh va dự kiến tiếp tục tăng

trong các năm tới Năm 2020, có khoảng 2,7 triệu robot công nghiệp đang hoạt

động toàn cầu, tăng 12% so với năm 2019 Những số liệu trên là minh chứng rõ nétnhất về sự phô biến của việc ứng dụng công nghệ tự động hoá trong sản xuất, mànồi bật trong đó là sản xuất các bảng mạch điện tử Trong lĩnh vực sản xuất các chỉtiết chính xác cung ứng cho nhiều ngành khác nhau nói chung và lĩnh vực sản xuấtbảng mạch điện tử nói riêng thì khâu giám sát và kiểm tra lỗi sản phâm là một bộphận vô cùng quan trọng, đặc biệt hệ thống phát hiện lỗi thiếu linh kiện điện tử trên

Trang 15

bảng mạch là một phần thiết yếu, không thể thiếu trong toàn bộ dây truyền Chúngđóng vai trò then chốt để đánh giá cũng như đưa ra những sản phẩm tốt và hoàn hảo

nhât cho các ứng dụng tiên tiên hiện nay.

Từ việc phân tích các nghiên cứu được nêu trong tiểu mục 1.1.2, nhómnghiên cứu nhận thấy các đề tài nêu trên sử dụng công nghệ khá cũ so với thời điểmhiện tại (Neural Networks, YOLOv3 ) Bên cạnh đó, các sản pham được nghiêncứu mới chỉ dừng lại ở bước phát hiện các linh kiện điện tử bị thiếu mà chưa có cácthao tác xử lý phân loại sản pham về sau

1.2 Mục tiêu của đề tài

Mục tiêu của đề tài là phát trién một hệ thống được ứng dung trong việc pháthiện lỗi thiếu các linh kiện điện tử băng mô hình deep learning và thực hiện phânloại bằng cơ cấu gap thả sản phẩm

Băng chuyền đưa linh

kiện đến đầu ra

Mô hình phát hiện lỗi

thiệu linh kiện

(hận ảnh chụp

†ừ camera

Cơ cầu gap tha đưa

linh kiện den vị tri

phân loại

Xác dinh loại

linh kiện bị thiêu

Hình 1.3 Sơ đồ vận hành của hệ thống

Hệ thống do nhóm nghiên cứu sẽ được phát triển dựa trên các mô hình object

detection (phát hiện đối tượng) mới nhằm phù hợp với ứng dụng phát hiện lỗi thiếulinh kiện và phần nào được cải thiện về tốc độ xử lý So với nhiều nghiên cứu khác,nhóm cũng phát triển thêm một cơ cấu gắp thả có nhiệm vụ phân loại các board

mạch về đúng vị trí được chỉ định Ngoài ra, hệ thống còn được xây dựng trên

NVIDIA Jetson Nano Developer Kit với mục dich tăng tốc độ xử lý bằng GPUnhưng không làm tăng giá thành sản phẩm lên quá cao

Trang 16

1.3 Bô cục luận văn

Luận văn được chia thành 5 chương, nội dung chính của các các chương được trình bày như sau:

+ Chương 1 Tổng quan dé tài

Trinh bày ly do chọn đê tai và mục tiêu của đê tai Phân tích các bai báo có

nội dung liên quan đên việc ứng dụng các mô hình học sâu vào nhận diện lôi thiêu

các linh kiện điện tử Từ đó, rút ra những ưu và nhược điêm đê lây đó làm kinh

nghiệm phát triển đề tài của bản thân

+ Chương 2 Cơ sở lý thuyết

Tìm hiểu về các giải thuật phát hiện đối tượng thường được sử dụng, so sánh

ưu và nhược điểm của từng giải thuật dé tìm ra mô hình phù hợp với yêu cầu của đề

tài Tìm hiểu về các thông số kỹ thuật của từng thiết bị phần cứng được sử dụngtrong đề tài nghiên cứu

+ Chương 3 Hiện thực thiết kế

Thực hiện xây dựng tập dữ liệu và tiến hành huấn luyện, kiểm tra kết quả

huấn luyện của mô hình Xây dựng và hoàn thiện hệ thống cơ khí phục vụ thu thập

dữ liệu và phân loại sản phâm.

+ Chương 4 Kết quả thực nghiệm

Trình bày kịch bản khảo sát và các kết quả đạt được sau quá trình khảo sáttheo kịch bản Phân tích, đánh giá và so sánh các kết quả mà hệ thống của nhóm

nghiên cứu đạt được với kết quả của bải báo Từ đó, chỉ ra những ưu điểm và hạn

chế tồn tại trong hệ thống

+ Chương 5 Kết luận và hướng phát triển

Từ những kết quả đạt được từ chương 4, nhóm nghiên cứu sẽ đưa ra các kếtluận và khó khăn đang gặp phải Thêm vào đó, những hạn chế của thiết kế cũng sẽđược nêu nhằm đưa ra những phương hướng phát triển trong tương lai

Trang 17

Chương2 NGHIÊN CỨU THỰC NGHIỆM

2.1 Tìm hiểu về một số loại camera

2.1.1 CCD camera (HD 2MP USB2.0 1/3” CMOS)

Một số thông số của camera:

+ Kích thước: 50 x 48 x 45mm

+ Cảm biến: 2.0MP , 1/3” CMOS

+ Độ phân giải khi sử dụng: 480 x 360

+ Dinh dạng hình ảnh: MJPEG / YUY2

+ Kiểm soát phơi sáng: Có thé điều chỉnh

+ Nhiệt độ làm việc: 0-60 °C

+ Dòng điện: I50MW (VGA) 200MW (QSXGA)

+ Giao diện: USB 2.0

Camera này sử dụng cảm biến CMOS (Complimentary Metal-Oxide

Semiconductor) có kha năng xử lý trên các điểm ảnh đơn lẻ giúp quá trình xử lý anh

Trang 18

được diễn ra nhanh chóng Ngoài ra, CMOS cũng tiêu thụ ít điện năng và có giá

thành phải chăng hơn.

Tuy nhiên, độ phân giải thực tế của camera này khá thấp (chỉ đạt 480x360pixel) Cảm biến CMOS cũng có hạn chế là độ nhạy sáng kém hơn một số cảm biếnkhác khiến việc thu thập ảnh không được quá rõ nét

2.1.2 IMx-3505U USB3.0 Camera

Một số thông số của camera:

+ Nguồn điện: DC5V + 10%(USB Cable Power)

+ Năng lượng: tối đa 4.5Watt

+ Giao diện: USB3.0

Hình 2.2 IMx-3505U camera

Camera sử dụng cảm biến CCD (Charge Coupled Device) có độ nhạy sáng

cao hơn CMOS giúp các hình ảnh thu được rõ nét hơn Ngoài ra, độ phân giải thực

10

Trang 19

tế của camera IMx-3505U cũng khá cao (2448 x 2048) giúp cho ảnh có thể ghi

nhận rõ nét các chi tiệt nhỏ.

Tuy nhiên, cảm biến CCD đọc các thông tin khá chậm và có giá thành khámắc Thêm vào đó, camera IMx-3505U không cung cấp API (applicationprogramming interface) hé tro trén hé diéu hanh Linux, khién cho viéc doc hinh anhbang máy tinh nhúng Jetson Nano trở nên khó khăn

2.1.3 WAT-902H Ultimate Camera

Một số thông số của camera:

+ Năng lượng: 1.32W (110mA)

+ Giao diện: USB2.0

điêm của các camera sử dụng loại cảm biên này Dù độ phân giải của WAT-902H

11

Trang 20

Ultimate là thấp hơn rất nhiều so với IMx-3505U (chỉ 640 x 480 pixel) nhưngcamera này sử dụng giao diện USB2.0 giúp việc ghi nhận hình ảnh bằng Jetson

Nano trở nên dễ dàng hơn Thêm vào đó, dù độ phân giải của camera là khá nhỏ

nhưng khi ứng dụng vào chương trình phát hiện lỗi thiếu linh kiện vẫn đem lại tính

hiệu quả.

2.2 Nghiên cứu một số mô hình phát hiện đối tượng

2.2.1 Mô hình Faster R-CNN

Kiến trúc của mô hình Faster R-CNN là sự kết hợp của hai module:

+ Mạng đề xuất khu vực (RPN - Region Proposal Network) là một mạngCNN (Convolutional neural network) dé đề xuất các vùng và loại đối tượng cần

xem xét trong vùng.

+ Fast R-CNN là mạng CNN để trích xuất các features (đặc trưng) từ các

region proposal va trả ra các bounding box va nhãn.

Trang 21

Tại thời điểm được ra mắt, kiến trúc Faster R-CNN là đỉnh cao trong họ các

mô hình R-CNN và đặt được kết quả gần như tốt nhất khi được ứng dụng vào bàitoán phát hiện đối tượng (chỉ số mAP đạt 78,8% trên tập dữ liệu PASCAL VOC

2007 test set) Tuy nhiên, kiến trúc này vẫn còn khá chậm khi tốc độ xử lý chỉ đạt

chỉ đạt fps (frame per second) [5] Tốc độ xử lý này là rất chậm so với các mô hình

được phát triển về sau khi chỉ số fps của nó chưa đạt tới ngưỡng thời gian thực

feature map (tensor chứa thông tin các đặc trưng của ảnh).

+ Các extra layer (các fully connected) được áp dụng để phát hiện vật thé

trên feature map của base network Các extra layer này sẽ nhận input là feature map

của base network dé dự đoán nhãn và tọa độ của các vật thé trong hình

Hình 2.5 Cấu trúc chung của các mô hình YOLO [3]

13

Trang 22

Output của YOLO được trình bày dưới dang:

17

y= [po, (tz, ty, tw, th), (p1,P2,-++,Pc)| 2.1,

`" — ————

bounding box scores of c classes

Hình 2.6 Output của một mô hình YOLO [3]

tọa độ tâm của hình chữ nhật bao tron vật thé, tw, th là độ rộng và cao của bounding

Ví dụ: mô hình cần dự đoán 5 class của 5 vật thé khác nhau Khi đó, mỗi vật thé ma

mô hình xác định được sẽ được tính xác suất - mà vật thé thuộc vào class đó - trên

cả 5 vật thê Nêu xác xuât vật thê thuộc class nào cao nhât thì mô hình sẽ xác định

vật thé được định vị thuộc class đó

Những sự thay đổi của các phiên bản mô hình YOLO thường được thực hiệntrên các lớp base network Những sự thay đổi này chủ yêu là sử dụng các kiến trúcCNN khác nhau, thay đổi cách sắp xếp các mang convolution hay thay đổi input,

output của các mạng convolution đó Những sự thay đổi này có hiệu quả làm tăng

độ chính xác của mô hình hoặc tăng tốc độ xử lý của mô hình trên các bộ xử lý khác

nhau hoặc cả hai.

Mô hình YOLOv4 [4] đạt độ chính xác 43.5% và tốc độ xap xi 65 FPS trên

tập dir liệu MS COCO Tuy nhiên, chỉ với một vài thay đối trong cau trúc basenetwork, phiên bản YOLOv4-large [6] đã đạt độ chính xác lên đến 55.5% cùng trên

tập dữ liệu MS COCO.

14

Trang 23

Tuy nhiên, dé đánh đổi cho độ chính xác, tốc độ của mô hình YOLOv4-large[6] bị giảm đi đáng kể, xấp xi 16 FPS Thêm vào đó, mô hình này được thiết kế dé

phù hợp với việc xử lý tính toán trên các GPU cao cấp (như Tesla V100).

2.2.3 Mô hình YOLOv4-tiny

Với các hạn chế được nêu ở những mô hình trên, nhất là hạn chế về việc mô

hình chỉ đang hoạt động hiệu quả ở các phiên bản GPU cao cấp, ta nhận thấy khixây dựng hệ thống với các bộ xử lý trung tâm là các CPU hay GPU cấp thấp, các

mô hình với kiến trúc cồng kénh ở trên sẽ khó có thé nào đáp ứng về tốc độ, gây rahao phí thời gian rất lớn

Với mục đích xây dựng các mô hình có khả năng tính toán hiệu quả ké cảtrên bộ xử lý là các CPU hay GPU cấp thấp, các nhà phát triển ở bài báo số [6](cũng là các nhà phát trién mô hình YOLOv4-large được nêu trên) đã xây dựng môhình YOLOv4-tiny hỗ trợ cho việc xử lý trên các CPU và GPU cấp thấp

cùng loại khác.

15

Trang 24

Và nổi bật hon cả, lý do tiên quyết khiến đề tài này chọn mô hình

YOLOv4-tiny là bởi mô hình này đã được chứng minh là hoạt động hiệu quả trên các bộ xử lý

là các thiết bị máy tính nhúng, đặc biệt là trên máy tính nhúng Jetson Nano

Bảng 2.2 Bảng so sánh tốc độ hoạt động của YOLOv4-tiny [6]

TensorRT FPS acx FPS; x FPS+ x2 FPSNANO

without 120 75 42 16

with 290 118 100 39

Theo bang 2.2, khi hoạt động trên nền tảng là máy tính nhúng Jetson Nano,

tốc độ xử lý mô hình YOLOv4-tiny đã đạt đến 39 fps (tốc độ real-time là 24 fps).Mặc dù độ chính xác của khá thấp (chỉ 21,7% đến 28,7%), nhưng đối với ứng dụngphát hiện các lỗi thiếu linh kiện điện tử thì độ chính xác này có thể chấp nhận được

2.2.4 Giải thuật tính độ chính xác của mô hình

Khi muốn đánh giá hiệu quả của một mô hình học sâu, cụ thể là mô hìnhphát hiện đối tượng, chúng ta cần sử dụng đến một độ đo rất phổ biến là mAP(mean average precision) Trước khi giải thích về ý nghĩa của mAP, chúng ta cầnbiết về một số khái niệm liên quan:

+ Precision và Recall

Precision đại diện cho độ chính xác khi dự đoán của model vì nó băng sô

phân loại đúng trên tông số phân loại

Recall là độ phủ, thể hiện được việc model đã phân loại được bao nhiêu đốitượng positive trong số những đối tượng positive đã có

TP+FN Téng so gtbox

16

Trang 25

Trong đó:

e TP (True positive): Khi IOU cua predicted box vs ground-truth box >= IoU

(intersection over union) threshold.

e FP (False positive): Khi IOU cua predicted box vs gtbox < iou threshold.

e TN (True negative): Thông số này ta có thé hiểu nó như là background và ta

sẽ không cần quan tâm thông số này

e FN (False negative): Bounding box của đối tượng không được detect (detect

sot).

IOU (intersection over union) là tỉ số diện tích trùng lặp của 2 bounding box

trên diện tích hợp của 2 bounding box 2 bounding box này là bounding box dự đoán (precision bounding box) va bounding box thật (ground-truth bounding box).

Aree il etarwession Area of Intersection

IOU = Area of Union

Hinh 2.7 Intersection over union [7]

+ AP - average precision:

Đường cong precision theo recall (PR curve) là đồ thị biểu thị mối tương

quan giữa hai chỉ số precision và recall Đường cong này được tạo ra bằng tính các

chỉ số precision và recall của các precision box và ground-truth box của sau khiđược ảnh được đưa qua mô hình phát hiện đối tượng Các chỉ số sau đó sẽ đượcbiểu diễn lên đồ thị giống trong hình 2.7

17

Trang 26

10 hn~ —— Precision

- Interpolated precision

recall

Hình 2.8 Đường cong precision theo recall [7]

AP là phần điện tích phía dưới đường cong PR curve Các diện tích này đượctính sau khi ta chuẩn hóa các giá tri precision bị sụt giảm đột ngột trong đồ thị theogiá trị giá trị precision cao nhất theo recall theo chiều tăng của đồ thị

AP = Xuất > Tn) Praere (thx)

faery (7) — Taxa 7")

TT.

(2.4)

Trong do: P(r) thé hién su phụ thuộc cua precision vao recall

Precision x Recall curve

precision

Hình 2.9 Cac diện tích dưới đường cong PR curve

18

Trang 27

+ mAP - mean average precision:

Qua phần được trình bày ở trên, ta đã thực hiện tính AP cho từng nhãn, vìvậy chúng ta có thể định nghĩa AP là độ chính xác trung bình trên từng class Do đó,

mAP là trung bình cộng AP của tất cả các class.

mAP = + jy, AP, (2.5)

Trong do:

e AP là average precision cho class k.

e nla tổng số classes.

2.2.5 Phương pháp tính tốc độ xử ly của mô hình

Dé tính tốc độ xử lý của mô hình ta sẽ cần tới sự trợ giúp của thư viện timeđược viết bằng ngôn ngữ Python Thư viện này là một thư viện có khả năng xử lýcác tác vụ liên quan đến thời gian Đề sử dụng được các hàm có trong thư viện time,

ta cần gọi thư viện này vào chương trình bằng câu lệnh: import time

Trong đó, hàm time.time chính là hàm được dùng trong tác vụ tính tốc độ xử

lý của chương trình Hàm time() trả về số giây tính từ epoch, hay còn gọi là giá trịtimestamp Đối với hệ thống Unix, 00:00:00 ngày 1/1/1970 theo giờ UTC được gọi

là epoch (thời điểm bắt đầu thời gian) Hàm time.time trong chương trình kiểm tratốc độ hoạt động của mô hình phát hiện vật thé sẽ được biểu diễn như sau:

Lay giá tri thời gian tai thời điểm bắt đầu

Đưa hinh anh input vảo

mo hinh dé phat hiện

các linh kiện

Lay các giá tri output Lay những giá tri phân loại vào các của các danh sách

danh sách tương ứng de vẽ bounding box

Lay giá tri thời gian tại Tỉnh thời gian thực

thời điểm kết thúc hiện chương trình

19

Trang 28

Trong các chương trình phát hiện vật thể khác, trước khi có công đoạn đưa

hình ảnh vào mô hình thì ta phải thêm mô hình vào hệ thống Công đoạn này được

thực hiện bang cach sử dung ham của thư hiện OpenCV (sé được trình bày trongmục 2.3.1) để tải vô hình lên chương trình Tuy nhiên, công đoạn tải mô hình nàykhông được thực hiện trong chương trình phát hiện lỗi thiếu linh kiện nhằm mụcđích giảm hao phí về mặt thời gian

2.3 Tìm hiểu về các công nghệ và thiết bị khác

2.3.1 Thư viện OpenCV

OpenCV (open source computer vision library) là một thư viện mã nguồn

mở được dùng dé xử lý hình ảnh, phát triển các ứng dụng đồ họa trong thời gianthực OpenCV được ưa chuộng bởi nó cung cấp các giải pháp dé cải thiện tốc độ xử

ly của CPU theo thời gian thực Thêm vào đó, OpenCV có còn hỗ trợ rất nhiều cho

các dự án liên quan đên thị giác máy tính.

Trong đê tài nghiên cứu của nhóm, thư viện này có hai nhiệm vụ chính:

+ Cung câp các mô đun có khả năng tương tác với mô hình phát hiện đôi

tượng như: tải mô hình lên hệ thông, đưa các ảnh input vào mô hình và nhận về các

kết quả output Tác dụng của việc sử đụng OpenCV dé tương tác với mô hình là:

e Giúp thời gian xử lý giảm đi đáng kê so với việc sử dụng trực tiêp các câu

lệnh được cung cấp bởi nền tảng Darknet

e Việc người dùng có thể tách riêng công đoạn tải mô hình vào chương trình

để công đoạn này chỉ cần thực hiện một lần cũng giúp cho thời gian xử lýgiảm đi rất nhiều

e Khi sử dụng câu lệnh của Darknet, output được trả về là ảnh đã được vẽ

bounding box và nhãn của các vật thé Việc này khiến nhà phát triển gặpkhó khăn khi muốn tương tác với cách thông số chỉ tiết của output như: têncác nhãn, tọa độ và kích thước của bounding box, xác suất phân loại củatừng đối tượng Khi sử dụng OpenCV, việc tương tác với các dữ liệu này

20

Trang 29

trở nên vô cùng dễ dàng Do đó, nhà phát triển không còn bị giới hạn khả

năng xây dựng chương trình can sử dụng trực tiêp các chỉ sô nay.

+ Phát triên các tác vụ xử lý ảnh cân đên các thông sô nêu trên như:

e Hiển thị vị trí, tên của vật thể trên ảnh băng các vẽ bounding box từ tọa độ,

độ rộng và độ cao được cùng cap bởi output của mô hình.

e Thay đổi kích thước của ảnh dé phù hợp với kích thước của màn hình hiển

thị trên giao diện hệ thống.

e Làm đa dang tập dữ liệu bang các phương pháp tăng cường dit liệu (sẽ được

trình bay trong mục 3.1.3).

2.3.2 Thư viện Tkinter

Tkinter là một thư viện viết bằng ngôn ngữ lập trình Python được sử dụng đểtao giao điện đồ họa người dùng (GUI - Graphical User Interface) "Tkinter" là viếttắt của "Tk interface,", một toolkit (bộ công cụ) đồ họa cung cấp các công cụ đểphát triển giao diện người dùng Một số khả năng của Tkinter là tạo ra các cửa số,

các tab, khung biêu diễn hình ảnh hoặc văn ban, nút bam,

Một sô chức năng được cung cap bởi thư viện nay ma nhóm nghiên cứu xử dụng sé được mô tả dưới đâu:

+ Tạo cửa số để chứa toàn bộ các thành phần khác của giao diện Cửa s6 SẼđược lặp liên tục đề có thể hiển thị lên màn hình, giúp người dùng dé dang thao tácvới các thành phần trong đó

+ Các tab được dùng dé người dùng có thé thao tác với các tác vụ khác nhaucủa giao diện Tab thứ nhất giúp người dùng giám sát hệ thống băng chuyền, chụp

và phát hiện các linh kiện có mặt trên bảng mạch có trong ảnh Tab thứ hai sẽ hiểnthị chi tiết hơn các linh kiện bị lỗi, vị trí và các thông tin khác của chúng lên giao

diện hệ thống.

21

Trang 30

+ Các label (nhãn) là thành phần có khả năng hiển thị hình ảnh hoặc văn bản

lên giao diện hệ thống Các hình ảnh được thu thập và xử lý từ chương trình, cùng

với các thông tin khác sẽ được hiền thị trong các label này

+ Các nút bam là công cụ trực tiếp cung cấp cho người dùng kha năng tươngtác với giao diện hệ thống Bằng các nút bam này, kỹ thuật viên có thé dé dàng thực

hiện các thao tác như: chụp ảnh từ camera và xử lý, giám sát toàn bộ các linh kiện

bị lỗi được phát hiện, đưa ra các chỉ thị cho hệ thống phần loại sản phẩm

2.3.3 Chương trình tính chỉ số mAP

Chương trình tính chỉ số mAP được phát triển bởi nhóm tác giả J.Cartucho,R.Ventura, M.Veloso vào năm 2018 Chương trình được trình bày chỉ tiết trongcuốn sách “IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS)”, với tiêu dé “Robust Object Recognition Through Symbiotic Deep

Learning In Mobile Robots” [9] Chương trình nay có chức nang tinh toán được chi

số mAP của mô hình với phương pháp đã được trình bày ở mục 2.2.4 Các thành

phần chính của chương trình này bao gồm:

+ Input:

e Thư mục chứa các file annotation mang thông tin về tọa độ bounding box,

tên của các vật thé trước khi huấn luyện Các file này được trực tiếp nhàhuấn luyện tạo ra để đảm bảo độ chính xác khi phát hiện vật thê

e Thư mục chứa các file annotation chứa kết quả thực tế được trả về từ mô

hình sau khi các vật thé đã được xác định Các thông tin này bao gồm tên,

vị trí và độ chính xác của vật thê được xác định.

e Người dùng có thé lựa chọn cung cấp những hình ảnh tương ứng với các file

annotation kế trên để chương trình hién thị việc xử lý tính toán trên từng

hình ảnh Việc hiển thị này giúp người dùng có thé giám sát việc tính toán

của chương trình và đưa ra các giải pháp khi thông số bị lỗi

22

Trang 31

+ Output của chương trình bao gồm các thành phần sau:

e Đô thị biêu diễn đường cong PR curve của tat cả các class ma mô hình cân

phân loại.

e Các hình ảnh thể hiện độ trùng lắp của các precision box và ground-truth box

để người dùng có thê giám sát tính đúng đắn của thông số đầu vào

e Các đồ thị biểu diễn tổng số lượng bounding box, số lượng bounding box ma

chương trình có thé phát hiện hoặc bi lỗi, chỉ số AP trên từng class hoặc

mAP trên tat cả các class.

e File log báo cáo toàn bộ thông tin khi chương trình hoạt động.

2.3.4 Máy tính nhúng Jetson Nano B01

NVIDIA Jetson Nano là một máy tính nhúng có khả năng vận hành hiệu quả các

mạng neural sử dụng cho các ứng dụng như phân loại hình ảnh, phát hiện đối tượng,

phân đoạn và xử lý giọng nói Các thông số đáng chú ý của Jetson Nano B01 được

liệt kê dưới đây:

+ GPU: NVIDIA Maxwell architecture with 128 NVIDIA CUDA® cores.

+ CPU: Quad-core ARM Cortex-A57 MPCore processor.

+ Memory: 4 GB 64-bit LPDDR4, 1600MHz 25.6 GB/s.

+ Storage: 16 GB eMMC 5.1.

+ Connectivity: Gigabit Ethernet, M.2 Key E.

+ Display: HDMI 2.0 and eDP 1.4.

+ USB: 4x USB 3.0, USB 2.0 Micro-B.

+ Others: GPIO, I2C, I2S, SPI, UART.

23

Trang 32

Máy tính nhúng này có khả năng mạnh mẽ khi có thê xử lý tính toán mô hình pháthiện lỗi thiếu linh kiện điện tử cùng với đó là cung cấp giao diện giám sát và điềukhiển hỗ trợ người dùng Camera của hệ thống cũng được kết nối trực tiếp vớiJetson Nano khiến cho việc điều khiên trở nên hiệu quả và nhanh chóng hơn.

2.3.5 STM32F103

STM32F103 là dòng vi điều khiển hiệu suất tầm chung với lõi xử lý Arm®

Cortex®-M3 32-bit RISC có thể hoạt động với tần số 72 MHz Vi xử lý này phù

hợp sử dụng trong các tác vụ điều khiển động cơ và phát triển các thiết bị có chứcnăng đặc biệt chuyên dụng Một số thông số đáng chú ý của vi điều khiển này:

+ Nhân: Arm Cortex-M3.

+ Tần số hoạt động tối đa: 72MHz

+ Flash: 64KiB.

+ SRAM: 20KiB.

+ Nguồn: 3.3 hoặc 5V

24

Trang 33

+ Orthers: I/O pins, ADCs, PWM, Timers, I2Cs, SPIs, USARTs, USB, CAN.

động cơ trên trục ngang của cơ câu phân loại, điêu khiên băng chuyên, hút các bảng

mạch và phân loại về vị trí được chỉ định

2.3.6 Động cơ bước

Động cơ bước được sử dụng có một sỐ thông tin sau:

+ Loại động cơ bước: 2 Pha.

25

Trang 34

Hình 2.13 Động cơ bước 2 pha.

2.3.7 Motor DC

Motor trong hệ thống có nhiệm vu di chuyển băng chuyền dé dua bang mach đếntrước ống kính camera va đưa bang mach đến vị trí đầu hút dé động cơ bước tiễnhành phân loại Dưới đây là một số thông tin của motor này:

+ Đường kính thân máy: khoảng 42 mm.

+ Tổng chiều dài động cơ: khoảng 98 mm

+ Tốc độ: 3500 9000 RPM.

+ Điện áp: DC 12V.

26

Ngày đăng: 06/12/2024, 15:31

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

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN