1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

ỨNG DỤNG PHẦN MỀM MATLAB TRONG MÔ PHỎNG Ô TÔ

254 25 0

Đ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 đề Ứng dụng phần mềm MATLAB trong Mô phỏng Ô tô
Người hướng dẫn CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh Phúc, Giáo viên hướng dẫn, Giáo viên phản biện
Trường học Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh
Chuyên ngành Công nghệ Kỹ thuật Ô tô
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2021
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 254
Dung lượng 13,26 MB

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

Nội dung

LỜI CẢM ƠN .......................................................................................................... i TÓM TẮT ............................................................................................................... ii MỤC LỤC ............................................................................................................. iii DANH MỤC CÁC TỪ VIẾT TẮT......................................................................... vi DANH MỤC CÁC BẢNG BIẾU .......................................................................... vii DANH MỤC HÌNH ẢNH .................................................................................... viii CHƯƠNG 1. TỔNG QUAN ................................................................................... 1 1.1. Đặt vấn đề ..................................................................................................... 1 1.2. Mục tiêu của đề tài ........................................................................................ 1 1.3. Giới hạn đề tài ............................................................................................... 1 1.4. Phương pháp nghiên cứu ............................................................................... 2 CHƯƠNG 2. MATLAB SIMULINK ...................................................................... 3 2.1. Tổng quan về Matlab ..................................................................................... 3 2.1.1. Giới thiệu chung về Matlab ..................................................................... 3 2.1.2. Giao diện của Matlab 2020b .................................................................... 4 2.1.3. Một số thao tác cơ bản trong Matlab ....................................................... 5 2.1.4. Câu lệnh và biến trong Matlab ................................................................. 5 2.1.5. Matlab trong toán học ............................................................................. 6 2.1.5.1. Các phép toán ................................................................................... 6 2.1.5.2. Các hàm toán học .............................................................................. 7 2.1.5.3. Một số bài toán được thực hiện bằng Matlab ..................................... 8 2.2. Tổng quan về Matlab Simulink .................................................................... 13 2.2.1. Một số thư viện công cụ trong Matlab Simulink .................................... 15 2.2.1.1. Các công cụ trong Tab SIMULAITON ........................................... 16 2.2.1.2. Các công cụ trong Tab DEBUG ...................................................... 20 2.2.1.3. Các công cụ trong Tab MODELLING ............................................ 28 2.2.2. Các chế độ mô phỏng ............................................................................ 38 2.2.3. Giới thiệu một số khối cơ bản của Matlab Simulink .............................. 41 2.2.3.1. Khối đầu vào (input) ....................................................................... 41 2.2.3.2. Khối thực hiện các phép toán, các điều kiện .................................... 43iv 2.2.3.3. Khối đầu ra (output) ........................................................................ 47 2.2.4. Ứng dụng Matlab Simulink để mô phỏng .............................................. 49 2.2.4.1. Mô phỏng một bài toán lý thuyết ..................................................... 49 2.2.4.2. Xây dựng mô hình toán học bằng Simulink ..................................... 50 CHƯƠNG 3. STATEFLOW ................................................................................. 60 3.1. Giới thiệu về Stateflow ................................................................................ 60 3.2. Các khối cơ bản trong Stateflow .................................................................. 61 3.2.1. Chart ..................................................................................................... 61 3.2.2. State Transition Table ........................................................................... 75 3.2.3. Truth table ............................................................................................. 80 3.2.4. Sequence Viewer ................................................................................... 85 CHƯƠNG 4. SIMSCAPE ..................................................................................... 89 4.1. Tổng quan về Simscape ............................................................................... 89 4.2. Thư viện của Simscape ................................................................................ 90 4.2.1. Foundation library (Thư viện nền tảng) ................................................. 90 4.2.2. Utilities library (Thư viện tiện ích) ...................................................... 102 4.2.3. Simscape Driveline ............................................................................. 103 4.2.4. Simscape Electrical ............................................................................. 114 4.2.5. Simscape Fluids .................................................................................. 122 4.2.6. Simscape Multibody ............................................................................ 137 CHƯƠNG 5. APP DESIGNER ........................................................................... 149 5.1. Tổng quan về App Designer ...................................................................... 149 5.2. Ứng dụng App Designer ............................................................................ 149 5.2.1. Ưu điểm của App Designer ................................................................. 149 5.2.2. Nhược điểm của App Designer ............................................................ 150 5.3. Thư viện của App Designer ....................................................................... 151 5.3.1. Khởi động App Designer ..................................................................... 151 5.3.2. Các khối cơ bản trong thư viện App Designer ..................................... 151 5.4. Một số ví dụ cơ bản về App Designer ........................................................ 155 5.4.1. Bài toán tính cộng, trừ, nhân và chia hai số được nhập vào.................. 155v 5.4.2. Sử dụng App Designer kết hợp với Simulink để tạo giao diện cho mô hình hệ thống xe lửa. ..................................................................................... 159 5.4. Đóng gói App Designer ............................................................................. 165 5.4.1. MATLAB App .................................................................................... 165 5.4.2. Web App ............................................................................................. 168 5.4.3. Standalone Desktop App ..................................................................... 170 5.5. Kết quả đạt được sau khi ứng dụng App Designer để thiết kế giao diện ..... 174 CHƯƠNG 6. KẾT LUẬN ................................................................................... 183 6.1. Kết quả đạt được ....................................................................................... 183 6.1. Hạn chế ..................................................................................................... 183 6.1. Hướng phát triển ....................................................................................... 183 TÀI LIỆU THAM KHẢO ................................................................................... 184 PHỤ LỤC............................................................................................................ 185

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH

KHOA ĐÀO TẠO CHẤT LƯỢNG CAO - -

Trang 2

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH

KHOA ĐÀO TẠO CHẤT LƯỢNG CAO - -

Trang 3

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh Phúc

TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪN

5 Ngày hoàn thành: Theo kế hoạch của Khoa ĐTCLC (dự kiến 10/08/2021)

Ngày giao nhiệm vụ đề tài: 04/2021

4

 Upload lên google drive của khoa file thuyết minh đồ án

 01 quyển thuyết minh đồ án

Sản phẩm:

3

 Làm tài liệu tham khảo và giảng dạy cho người dùng

 Tao ra giao diện App Designer và đóng gói thành một ứng dụng cho người

 Kết hợp được các thư viện có trong Matlab: Simulink, Stateflow, Simscape

 Xây dựng được mô hình Matlab từ cơ bản đến nâng cao

 Nắm vững các kiến thức về phần mềm Matlab

2 Nội dung thực hiện đề tài:

ỨNG DỤNG PHẦN MỀM MATLAB TRONG MÔ PHỎNG Ô TÔ

1 Tên đề tài:

Giảng viên hướng dẫn:

Hệ đào tạo: Đại học chính quy Khóa: 2017Ngành: Công nghệ Kỹ thuật ô tô

Họ và tên sinh viên:

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

2021

TP Hồ Chí Minh, ngày 10 tháng 08 năm

Trang 4

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh Phúc

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

MSSV:

MSSV:

Ngành: Công nghệ Kỹ thuật ô tô

Họ và tên sinh viên:

Họ và tên sinh viên:

(Ký & ghi rõ họ tên)Giáo viên hướng dẫn

6 Điểm: ………… (Bằng chữ: )

Họ và tên Giáo viên hướng dẫn:

Tên đề tài: ỨNG DỤNG PHẦN MỀM MATLAB TRONG MÔ PHỎNG Ô TÔ

Trang 5

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh Phúc

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

Ngành: Công nghệ Kỹ thuật ô tô

Họ và tên sinh viên:

Họ và tên sinh viên:

Họ và tên Giáo viên phản biện:

Tên đề tài: ỨNG DỤNG PHẦN MỀM MATLAB TRONG MÔ PHỎNG Ô TÔ

Trang 6

Nhóm Sinh Viên Thực Hiện

Tp Hồ Chí Minh, ngày 10 tháng 08 năm 2021

Trân trọng!

đồ án tốt nghiệp

điều kiện, quan tâm, giúp đỡ, động viên trong suốt quá trình học tập và hoàn thành

Cuối cùng, chúng em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo

chỉ ra những thiếu sót để chúng em có thể rút ra những kinh nghiệm

nghiệp này cũng còn nhiều thiếu sót vì vậy chúng em mong các thầy thông cảm và

Tuy nhiên với vốn kinh nghiệm và kiến thức ít ỏi thì việc hoàn thành đồ án tốt

đỡ em trong suốt quá trình học tập

môn chuyên ngành, giúp em có được cơ sở lý thuyết vững vàng và tạo điều kiện giúpChí Minh đã dạy dỗ, cho chúng em kiến thức về các môn đại cương cũng như các

em trong suốt quá trình làm đồ án

- trường ĐHSPKT Tp Hồ Chí Minh, người đã tận tình hướngdẫn, chỉ bảo chúng

tất cả những gì đã học ở nhà trường và kinh nghiệm tích lũy của bản thân

nói riêng Để hoàn thành được bài đồ án tốt nghiệp đòi hỏi sinh viên phải vận dụngđánh giá việc vận dụng kiến thức đã học của sinh viên nói chung và của chúng emđược nội dung Tuy nhiên, việc hoàn thành đồ án tốt nghiệp là một phương pháp đểkhăn cả về kiến thức chuyên môn cũng như phương tiện, dụng cụ để có thể hoàn thành

Trong quá trình thực đồ án tốt nghiệp, sinh viên chúng em gặp rất nhiều khó

LỜI CẢM ƠN

Trang 7

TÓM TẮT Ngày nay, các thành tựu của cuộc cách mạng khoa học kỹ thuật đang từng ngày, từng giờ làm thay đổi cuộc sống của con người Cùng với sự bùng phát của khoa học công nghệ, nhu cầu tính toán và xử lí các phép toán một cách nhanh chóng là khá cần thiết MATLAB ra đời và giúp chúng ta giải quyết những vấn đề đó

Các nhà nghiên cứu trên thế giới đã tập trung tìm hiểu, triển khai các ứng dụng Matlab nhiều năm qua MATLAB là một công cụ được sử dụng trong nhiều lĩnh vực, bao gồm xử lý tín hiệu và ảnh, truyền thông, thiết kế điều khiển tự động, đo lường kiểm tra, phân tích mô hình tài chính, hay tính toán sinh học Với hàng triệu kĩ sư và nhà khoa học làm việc trong môi trường công nghiệp cũng như ở môi trường Hàn lâm, MATLAB là ngôn ngữ của tính toán khoa học

Ở Việt Nam, MATLAB đã và đang được sử dụng rộng rãi trong các nghành công nghệ kỹ thuật đặc biệt là trong ngành công nghệ kỹ thuật ô tô Matlab còn là một công cụ hữu hiệu hỗ trợ đắc lực cho thầy trò trong việc học tập, giảng dạy và nghiên cứu

Với mong muốn tìm hiểu và nghiên cứu kỹ hơn về phần mềm Matlab, nhóm chúng em đã thực hiện đề tài: “ỨNG DỤNG PHẦN MỀM MATLAB TRONG MÔ PHỎNG Ô TÔ” với sự hướng dẫn của ThS Huỳnh Quốc Việt

Trong quá trình nghiên cứu, nhóm chúng em không tránh những thiếu sót, rất mong được sự nhắc nhở, chỉ bảo từ quý thầy cô, quý bạn bè

Trân trọng cảm ơn!

Trang 8

MỤC LỤC

LỜI CẢM ƠN i

TÓM TẮT ii

MỤC LỤC iii

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

DANH MỤC CÁC BẢNG BIẾU vii

DANH MỤC HÌNH ẢNH viii

CHƯƠNG 1 TỔNG QUAN 1

1.1 Đặt vấn đề 1

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

1.3 Giới hạn đề tài 1

1.4 Phương pháp nghiên cứu 2

CHƯƠNG 2 MATLAB SIMULINK 3

2.1 Tổng quan về Matlab 3

2.1.1 Giới thiệu chung về Matlab 3

2.1.2 Giao diện của Matlab 2020b 4

2.1.3 Một số thao tác cơ bản trong Matlab 5

2.1.4 Câu lệnh và biến trong Matlab 5

2.1.5 Matlab trong toán học 6

2.1.5.1 Các phép toán 6

2.1.5.2 Các hàm toán học 7

2.1.5.3 Một số bài toán được thực hiện bằng Matlab 8

2.2 Tổng quan về Matlab Simulink 13

2.2.1 Một số thư viện công cụ trong Matlab Simulink 15

2.2.1.1 Các công cụ trong Tab SIMULAITON 16

2.2.1.2 Các công cụ trong Tab DEBUG 20

2.2.1.3 Các công cụ trong Tab MODELLING 28

2.2.2 Các chế độ mô phỏng 38

2.2.3 Giới thiệu một số khối cơ bản của Matlab Simulink 41

2.2.3.1 Khối đầu vào (input) 41

2.2.3.2 Khối thực hiện các phép toán, các điều kiện 43

Trang 9

2.2.3.3 Khối đầu ra (output) 47

2.2.4 Ứng dụng Matlab Simulink để mô phỏng 49

2.2.4.1 Mô phỏng một bài toán lý thuyết 49

2.2.4.2 Xây dựng mô hình toán học bằng Simulink 50

CHƯƠNG 3 STATEFLOW 60

3.1 Giới thiệu về Stateflow 60

3.2 Các khối cơ bản trong Stateflow 61

3.2.1 Chart 61

3.2.2 State Transition Table 75

3.2.3 Truth table 80

3.2.4 Sequence Viewer 85

CHƯƠNG 4 SIMSCAPE 89

4.1 Tổng quan về Simscape 89

4.2 Thư viện của Simscape 90

4.2.1 Foundation library (Thư viện nền tảng) 90

4.2.2 Utilities library (Thư viện tiện ích) 102

4.2.3 Simscape Driveline 103

4.2.4 Simscape Electrical 114

4.2.5 Simscape Fluids 122

4.2.6 Simscape Multibody 137

CHƯƠNG 5 APP DESIGNER 149

5.1 Tổng quan về App Designer 149

5.2 Ứng dụng App Designer 149

5.2.1 Ưu điểm của App Designer 149

5.2.2 Nhược điểm của App Designer 150

5.3 Thư viện của App Designer 151

5.3.1 Khởi động App Designer 151

5.3.2 Các khối cơ bản trong thư viện App Designer 151

5.4 Một số ví dụ cơ bản về App Designer 155

5.4.1 Bài toán tính cộng, trừ, nhân và chia hai số được nhập vào 155

Trang 10

5.4.2 Sử dụng App Designer kết hợp với Simulink để tạo giao diện cho mô

hình hệ thống xe lửa 159

5.4 Đóng gói App Designer 165

5.4.1 MATLAB App 165

5.4.2 Web App 168

5.4.3 Standalone Desktop App 170

5.5 Kết quả đạt được sau khi ứng dụng App Designer để thiết kế giao diện 174

CHƯƠNG 6 KẾT LUẬN 183

6.1 Kết quả đạt được 183

6.1 Hạn chế 183

6.1 Hướng phát triển 183

TÀI LIỆU THAM KHẢO 184

PHỤ LỤC 185

Trang 11

DANH MỤC CÁC TỪ VIẾT TẮT API: Application Program Interface

CAD: Computer Aided Design

CSS: Cascading Style Sheets

MEX: Macro Express File

MAF: Mass Air Flow

PWM: Pulse Width Modulation

PID: Proportional Integral Derivative

TPS: Throttle Position Sensor

URL: Uniform Resource Locator

VBA: Visual Basic for Applications

3D: 3-Dimension

Trang 12

DANH MỤC CÁC BẢNG BIẾU

Bảng 2.1 Các chứng năng của công cụ trong Diagnostic Viewer 21

Bảng 2.2 Các tín hiệu của Breakpoint 27

Bảng 2.3 Một vài thông số trong Solver pane 29

Bảng 2.4 Một vài thông số trong Data Import/Export 31

Bảng 2.5 Một vài thông số trong Math and Data Types 33

Bảng 2.6 Một vài thông số trong Diagnostics 34

Bảng 4.1 Các khối cơ bản của Utilities library 102

Bảng 4.2 Các khối cơ bản của Simscape Driveline 104

Bảng 4.3 Các khối cơ bản của Simscape Electrical 114

Bảng 4.4 Các khối cơ bản của Simscape Fluids 123

Bảng 4.5 Các khối cơ bản của Simscape Multibody 137

Bảng 5.1 Các khối cơ bản trong thư viện COMMON 152

Bảng 5.2 Các khối cơ bản trong thư viện CONTAINERS và FIGURE 153

Bảng 5.3 Các khối cơ bản trong thư viện INSTRUMENTATION 154

Bảng 5.4 Các khối cơ bản trong thư viện AEROSPACE 155

Trang 13

DANH MỤC HÌNH ẢNH

Hình 2.1 Giao diện của Matlab 2020b 4

Hình 2.2 kết quả của đồ thị y = sin (x) 9

Hình 2.3 kết quả của đồ thị x = sin (a) và y = cos(a) 10

Hình 2.4 Đạo hàm của hàm số 11

Hình 2.5 Khởi động Simulink bằng cách 1 13

Hình 2.6 Khởi động Simulink bằng cách 2 14

Hình 2.7 Thư viện của Simulink 14

Hình 2.8 Cài đặt các bước mô phỏng 16

Hình 2.9 Kết quả mô phỏng 17

Hình 2.10 Kết quả tín hiệu được ghi lại 18

Hình 2.11 Hộp thoại Add viewer 19

Hình 2.12 Hình trên tín hiệu signal1 được thêm scope vào 19

Hình 2.13 Cửa sổ Diagnostic Viewer 20

Hình 2.14 Biểu tượng Trace Signal trong tab Debug 22

Hình 2.15 Chọn Highlight Signal to Source để theo dõi khối nguồn 22

Hình 2.16 Theo dõi khối nguồn 23

Hình 2.17 Theo dõi khối Signal 23

Hình 2.18 Biểu tượng Comment out trong tab Debug 23

Hình 2.19 Mô phỏng Simulation 2 hoạt động 24

Hình 2.20 Biểu tượng Output Values trong tab Debug 25

Hình 2.21 Hiển thị dữ liệu của signal2 26

Hình 2.22 Thêm điểm ngắt có điều kiện 28

Hình 2.23 Cửa sổ Solver pane 29

Hình 2.24 Cửa sổ Data Import/Export 31

Hình 2.25 Cửa sổ Math and Data Types 32

Hình 2.26 Cửa sổ Diagnostics 34

Hình 2.27 Cửa sổ Model Explorer 35

Hình 2.28 Biểu tượng Model Explorer trong tab Modeling 36

Hình 2.29 Cửa sổ Model Data Editor 37

Hình 2.30 Biểu tượng Model Data Editor trong tab Modeling 37

Trang 14

Hình 2.31 Các chế độ mô phỏng của Matlab 38

Hình 2.32 Chế độ Normal 38

Hình 2.33 Chế độ Accelerator 39

Hình 2.34 Chế độ Rapid Accelerator 40

Hình 2.35 Môi trường soạn thảo chính của Simulink 41

Hình 2.36 Khối Step 42

Hình 2.37 Khối Constant 42

Hình 2.38 Khối From Workspace 43

Hình 2.39 Khối Sine Wave 43

Hình 2.40 Khối Sum 44

Hình 2.41 Khối Gain 44

Hình 2.42 Khối Product 45

Hình 2.43 Khối Subsystem 45

Hình 2.44 Khối integrator 46

Hình 2.45 Khối Fcn 46

Hình 2.46 Khối Switch 47

Hình 2.47 Khối Scope 47

Hình 2.48 Khối XY Graph 48

Hình 2.49 Khối To Workspace 48

Hình 2.50 Kết quả mô phỏng một bài toán lý thuyết 49

Hình 2.51 Mô hình bài toán thực tế 50

Hình 2.52 Mô hình hóa bài toán 50

Hình 2.53 Xây dựng mô hình Simulink cho bài toán 51

Hình 2.54 Thiết lập thông số đầu vào 58

Hình 2.55 Kết quả mô phỏng 59

Hình 3.1 Khối Clutch (Stateflow) được tích hợp trong model Simulink 60

Hình 3.2 Khối Chart 61

Hình 3.3 Các đối tượng có trong Chart 62

Hình 3.4 Hệ thống phân cấp trong State 63

Hình 3.5 Trạng thái độc nhất (OR) 64

Trang 15

Hình 3.6 Trạng thái song song (AND) 64

Hình 3.7 Hoạt động trạng thái song song (AND) 65

Hình 3.8 Transition thể hiện quá trình chuyển đổi 67

Hình 3.9 Conditions thể hiện một điều kiện 68

Hình 3.10 Default transitions chỉ định State hoạt động 68

Hình 3.11 Ví dụ về history junction 69

Hình 3.12 Ví dụ về Connective Junctions 70

Hình 3.13 Tạo khối Chart 71

Hình 3.14 Đặt tên cho khối Chart 72

Hình 3.15 Nhập lệnh vào khối 72

Hình 3.16 Khai báo tín hiệu Input và Output 73

Hình 3.17 Kết hợp với Simulink để hoàn thành mô hình 73

Hình 3.18 Cách xuất kết quả 74

Hình 3.19 Bậc công tắc Headlights 74

Hình 3.20 Bậc công tắc Far_Cos 74

Hình 3.21 Khối State Transition Table 75

Hình 3.22 Các khối cần dùng cho ví dụ State Transition Table 76

Hình 3.23 Thiết lập các trạng thái cho khối 77

Hình 3.24 Thiết lập Input và Output 78

Hình 3.25 Kết hợp với Simulink để hoàn thiện hệ thống 78

Hình 3.26 Tay số 1 79

Hình 3.27 Tay số 2 79

Hình 3.28 Tay số 3 79

Hình 3.29 Tay số 4 80

Hình 3.30 Biểu tượng khối Truth table 80

Hình 3.31 Các khối để thực hiện ví dụ Truth table 81

Hình 3.32 Thiết lập các trạng thái cho khối Truth Table 82

Hình 3.33 Thiết lập các trạng thái cho khối Chart 83

Hình 3.34 Kết nối với Simulink để hoàn thành hệ thống 84

Hình 3.35 Trạng thái lỗi TPS 84

Hình 3.36 Sóng hiển thị lỗi TPS 85

Trang 16

Hình 3.37 Biểu tượng khối Sequence Viewer 85

Hình 3.38 Các khối cần dùng cho ví dụ Sequence Viewer 86

Hình 3.39 Thiết lập các trạng thái cho khối 87

Hình 3.40 Thiết lập Input và Output 87

Hình 3.41 Kết nối với Simulink để hoàn thành hệ thống 87

Hình 3.42 Xuất kết quả mô phỏng khối Sequence Viewer 88

Hình 4.1 Mô hình một hệ thống xe lửa 93

Hình 4.2 Mô hình vật lý một hệ thống xe lửa 93

Hình 4.3 Mở một mô hình Simscape mới 94

Hình 4.4 Mô hình vật lý chuyển thành mô hình Simscape 95

Hình 4.5 Lắp ráp các mạng vật lý lại với nhau 96

Hình 4.6 Điều chỉnh tham số cho khối Mass (M1) 96

Hình 4.7 Điều chỉnh tham số cho khối Mass (M2) 97

Hình 4.8 Điều chỉnh tham số cho khối Spring 97

Hình 4.9 Điều chỉnh tham số cho khối Damper (M1) 98

Hình 4.10 Điều chỉnh tham số cho khối Damper (M2) 98

Hình 4.11 Thêm các khối nguồn vào mô hình 99

Hình 4.12 Thêm các khối cảm biến vào mô hình 100

Hình 4.13 Cài đặt thông số cho khối Signal Generator 101

Hình 4.14 Hoàn thành mô hình Simscape Foundation 101

Hình 4.15 Kết quả mô phỏng 102

Hình 4.16 Simscape Driveline 103

Hình 4.17 Mô hình xe ô tô dẫn động hai cầu 105

Hình 4.18 Mô hình vậy lý xe ô tô dẫn động bốn bánh 106

Hình 4.19 Lắp ráp các mạng vật lý lại với nhau 107

Hình 4.20 Cài đặt thông số cho khối Engine Mục Engine Torque 108

Hình 4.21 Cài đặt thông số cho khối Tire Mục Engine Geometry 108

Hình 4.22 Cài đặt thông số cho khối Tire Mục Engine Dynamics 109

Hình 4.23 Cài đặt thông số cho khối Vehicle 110

Hình 4.24 Tạo Subsystem cho bánh xe 110

Trang 17

Hình 4.25 Tín hiệu đầu vào 111

Hình 4.26 Hoàn thành mô hình Simscape Driveline 112

Hình 4.27 Kết quả mô phỏng 113

Hình 4.28 Simscape Electrical 114

Hình 4.29 Mô hình vật lý của động cơ DC 116

Hình 4.30 Chuyển mô hình vật lý thành mô hình Simscape 117

Hình 4.31 Thêm các khối nguồn và khối cảm biến 117

Hình 4.32 Cài đặt thông số cho khối DC Voltage Source 118

Hình 4.33 Cài đặt thông số cho khối Controlled PWM Voltage 118

Hình 4.34 Cài đặt thông số cho khối H-Bridge 119

Hình 4.35 Cài đặt thông số cho khối DC Motor 120

Hình 4.36 Hoàn thành mô hình Simscape Electrical 121

Hình 4.37 Kết quả mô phỏng RPM Motor 121

Hình 4.38 Kết quả mô phỏng Current 122

Hình 4.39 Simscape Fluids 122

Hình 4.40 Mô hình hệ thống làm mát động cơ 125

Hình 4.41 Mô hình vật lý hệ thống làm mát động cơ 125

Hình 4.42 Cài đặt thông số cho khối Fluid Jacket 127

Hình 4.43 Tạo Subsystem cho khối Engine 129

Hình 4.44 Hoàn thành mô hình bình giãn nở 129

Hình 4.45 Cài đặt thông số cho khối Thermostat 130

Hình 4.46 Cài đặt thông số cho khối Radiator 131

Hình 4.47 Cài đặt thông số cho khối Pump 132

Hình 4.48 Kết nối với Simulink bằng các khối chuyển đổi 134

Hình 4.49 Hoàn thành mô hình Simscape Fluids 135

Hình 4.50 Kết quả nhiệt độ piston 135

Hình 4.51 Kết quả dòng chảy qua các ống 136

Hình 4.52 Simscape Multibody 137

Hình 4.53 Mô hình hệ thống Cruise Control 139

Hình 4.54 Tạo một mô hình Simscape Multibody mới 140

Hình 4.55 Kết nối các mạng vật lý lại với nhau 141

Trang 18

Hình 4.56 Cài đặt thông số cho khối Transform Vehicle Axis 142

Hình 4.57 Cài đặt thông số cho khối Prismatic Vehicle 142

Hình 4.58 Cài đặt thông số cho khối Point Mass 143

Hình 4.59 Kết nối các khối lại với nhau để lập mô hình xe 144

Hình 4.60 Kết quả mô phỏng của xe 144

Hình 4.61 Tạo một subsystem cho xe 145

Hình 4.62 Hoàn thành mô hình Simscape Multibody 145

Hình 4.63 Chạy mô hình với vòng lặp hở (không có thuật toán PID) 146

Hình 4.64 Kết quả khi chạy mô hình với vòng lặp hở (không có thuật toán PID) 147 Hình 4.65 Chạy mô hình với vòng lặp kín (có thuật toán PID) 147

Hình 4.66 Kết quả khi chạy mô hình với vòng lặp kín (có thuật toán PID) 148

Hình 5.1 Cửa số khởi động App Designer 151

Hình 5.2 Môi trường thiết kế chính của App Designer 152

Hình 5.3 Cửa sổ App Designer mới 156

Hình 5.4 Thiết kế giao diện cho bài toán 156

Hình 5.5 Viết code cho bài toán 157

Hình 5.6 Cửa sổ code view 157

Hình 5.7 Hoàn thành code view 158

Hình 5.8 Xuất ra kết quả của bài toán 159

Hình 5.9 Ví dụ từ bài toán xây dụng mô hình Simulink 159

Hình 5.10 Ví dụ từ bài toán Simulink 160

Hình 5.11 Cửa sổ App Designer mới 160

Hình 5.12 Thiết kế giao diện Model and Parameter 161

Hình 5.13 Thiết kế giao diện Results 161

Hình 5.14 Tiến hành viết code cho bài toán với cửa số Code View 162

Hình 5.15 Xuất ra kết quả vận tốc 164

Hình 5.16 Xuất ra kết quả lực đầu vào 165

Hình 5.17 Các cách đóng gói App Designer 165

Hình 5.18 Giao diện của MATLAB App 166

Hình 5.19 Cách mở MATLAB App vừa đóng gói 167

Trang 19

Hình 5.20 Tiến hành mở MATLAB App vừa đóng gói 167

Hình 5.21 Giao diện đã được đóng gói 168

Hình 5.22 Giao diện khi nhấp vào Web App 169

Hình 5.23 Tạo một Standalone Desktop App bằng Application Complier 170

Hình 5.24 Tạo một Standalone Desktop App bằng cách ấn vào nút Share 171

Hình 5.25 Giao diện Standalone Desktop App 172

Hình 5.26 Giao diện Standalone Desktop App vừa đóng gói 173

Hình 5.27 Kết quả đóng gói với Standalone Desktop App 174

Hình 5.28 Giao diện chính của App 174

Hình 5.29 Tab MENU 175

Hình 5.30 cửa sổ MENU để mở Driveline library 175

Hình 5.31 Tab Physical model 176

Hình 5.32 Tab Simscape model 176

Hình 5.33 Tab Engine parameters 177

Hình 5.34 Tab Simulation results 177

Hình 5.35 Tab APPLICATION 178

Hình 5.36 Tab Simulink model 178

Hình 5.37 Tab Shift_gear control 179

Hình 5.38 Tab Simulation input 179

Hình 5.39 Tab Simulation results 180

Hình 5.40 Mô hình mô phỏng động cơ và hộp số trên ô tô 180

Hình 5.41 Mô hình mô phỏng xe Hybrid kiểu song song 181

Hình 5.42 Mô hình mô phỏng xe Hybrid kiểu hỗn hợp 182

Trang 20

CHƯƠNG 1 TỔNG QUAN

1.1 Đặt vấn đề

Matlab là một phần mềm được sử dụng rộng rãi trong nhiều lĩnh vực nghiên cứu và ứng dụng với khối lượng tính toán lớn Một trong số những điểm mạnh của Matlab là khả năng lập trình Lập trình trong Matlab có thể giải quyết những bài toán trong nhiều lĩnh vực khoa học kỹ thuật cũng như trong lĩnh vực ô tô và đặc biệt là trong các hệ thống trên ô tô

Với các thư viện Matlab được bổ sung các bộ công cụ cho phép nó kết nối và điều khiển các hệ đo, thu thập dữ liệu làm mạnh tính năng và hiệu quả sử dụng Sử dụng phần mềm Matlab để thiết kế và mô phỏng một số bài toán vật lý nhằm trang bị kiến thức và khả năng ứng dụng chúng vào việc tiến hành mô phỏng hiệu quả và kết quả chính xác

để sử dụng mô phỏng vào các hệ thống trên ô tô

Vì vậy, được sự phân công Bộ môn Động cơ ngành Công Nghệ Kỹ Thuật Ô Tô của khoa Đào tạo chất lượng cao – Trường ĐH Sư Phạm Kỹ Thuật Tp.HCM và sự hướng dẫn của ThS Huỳnh Quốc Việt, nhóm chúng em đã nghiên cứu đề tài: Ứng dụng phần mềm Matlap trong mô phỏng ô tô Để làm tài liệu hướng dẫn và giảng dạy cho người dùng

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

Nắm vững các kiến thức về phần mềm Matlab

Xây dựng được mô hình Matlab từ cơ bản đến nâng cao

Kết hợp được các thư viện có trong Matlab: Simulink, Stateflow, Simscape để mô phỏng các hệ thống trên ô tô

Tao ra giao diện App Designer và đóng gói thành một ứng dụng cho người dùng

dễ dàng sử dụng

Làm tài liệu tham khảo và giảng dạy cho người dùng

1.3 Giới hạn đề tài

Chỉ mô phỏng các mô hình của một vài hệ thống trên ô tô

Chỉ mô phỏng và đưa ra kết quả trên máy tính, chưa tiến hành xây dựng mô hình thực nghiệm

Trang 21

1.4 Phương pháp nghiên cứu

Sử dụng cơ sở lí thuyết của các nguồn tài liệu tham khảo để xây dựng mô hình mới Phương pháp xử lý bài toán bằng lý thuyết: dùng lý thuyết môn học phân tích và

xử lý dữ kiện của các bài toán vật lý mẫu làm cơ sở để xây dựng thuật toán tính toán, lập chương trình chi tiết

Phương pháp xử lý bài toán bằng ứng dụng phần mềm: ứng dụng phần mềm Matlab xây dựng sơ đồ khối, thuật toán tính toán và lập chương trình để giải quyết các bài toán

đa lựa chọn, kết quả mong đợi là sẽ mô phỏng các bài toán một cách nhanh, chính xác

và trực quan với sự biến động và thay đổi của nhiều tham số đầu vào

So sánh, đánh giá đặc tuyến mô phỏng và đặc tuyến thực tế

Trang 22

CHƯƠNG 2 MATLAB SIMULINK

2.1 Tổng quan về Matlab

2.1.1 Giới thiệu chung về Matlab

MATLAB là một phần mền cung cấp môi trường tính toán số và lập trình, được thiết kế bởi công ty MathWorks MATLAB cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với những chương trình máy tính viết trên nhiều ngôn ngữ lập trình khác MATLAB giúp đơn giản hóa việc giải quyết các bài toán tính toán kĩ thuật so với các ngôn ngữ lập trình truyền thống như C, C++

MATLAB được sử dụng trong nhiều lĩnh vực, bao gồm xử lý tín hiệu và ảnh, truyền thông, thiết kế điều khiển tự động, đo lường kiểm tra, phân tích mô hình Với hàng triệu

kĩ sư và nhà khoa học làm việc trong môi trường công nghiệp cũng như ở môi trường Hàn lâm, MATLAB là ngôn ngữ của tính toán khoa học

Matlab cung cấp cho ta các phương pháp theo hướng chuyên dụng hóa được gọi là các Toolbox (hộp công cụ) Các Toolbox cho phép người sử dụng học và áp dụng các

kỹ thuật chuyên dụng cho một lĩnh vực nào đó Toolbox là một tập hợp toàn diện các hàm của Matlab (M-file) cho phép mở rộng môi trường Matlab để giải các lớp bài toán

cụ thể Các lĩnh vực trong đó có sẵn các Toolbox bao gồm: xử lý tín hiệu, hệ thống điều khiển, mạng noron, mô phỏng…

Hệ thống Matlab gồm có 5 phần chính:

 Ngôn ngữ Matlab: là một ngôn ngữ ma trận, mảng cấp cao với các câu lệnh, hàm, cấu trúc dữ liệu vào/ra, các tính năng lập trình đối tượng Nó cho phép lập trình các ứng dụng từ nhỏ đến các ứng dụng lớn, từ ứng dụng đơn giản đến phức tạp

 Môi trường làm việc của Matlab: đây là một bộ các công cụ và phương tiện

mà bạn sử dụng với tư cách người dùng hoặc người lập trình Matlab Nó bao gồm các phương tiện cho việc quản lý các biến trong không gian làm việc Workspace cũng như xuất nhập dữ liệu Nó cũng bao gồm các công cụ

để phát triển quản lý, gỡ lỗi và định hình M – file

 Xử lý đồ họa: đây là một hệ thống đồ họa của Matlab Nó bao gồm các lệnh cao cấp cho trực quan hóa dữ liệu hai chiều và ba chiều, xử lý ảnh, ảnh động,

…Nó cũng cung cấp các lệnh cấp thấp cho phép bạn tùy biến giao diện đồ

Trang 23

họa cũng như đi xây dựng một giao diện đồ họa hoàn chỉnh cho ứng dụng Matlab của mình

 Thư viện toán học Matlab: đây là một thuật toán khổng lồ các thuật toán tính toán từ các hàm cơ bản như cộng, trừ, nhân, chia, sin, cos, số học phức…tới các hàm phức tạp hơn như: nghịch đảo, ma trận, tìm giá trị riêng của ma trận, phép biến đổi fourier nhanh

 Giao diện chương trình ứng dụng Matlab API (Application Program Interface): đây là một thư viện cho phép ta viết các chương trình C và Fortran tương thích với Matlab

2.1.2 Giao diện của Matlab 2020b

Hình 2.1 Giao diện của Matlab 2020b Command Window: Đây là cửa sổ làm việc chính của MATLAB Tại đây ta thực hiện toàn bộ việc nhập dữ liệu và xuất kết quả tính toán Dấu nháy >> báo hiệu chương trình sẵn sàng cho việc nhập dữ liệu Ta kết thúc việc nhập dữ liệu bằng cách nhấn phím Enter MATLAB sẽ thực thi dòng lệnh mà ta nhập vào Command Window và trả kết quả trong Command Window

Trang 24

Workspace browser: trong MATLAB các dữ liệu được lưu trong biến Workspace browser liệt kê tất cả các biến mà ta đang sử dụng trong MATLAB Nó cung cấp thông tin về kích thước, loại dữ liệu Ta có thể truy cập trực tiếp vào dữ liệu bằng cách nhấp đúp vào biến để hiển thị Array editor

Launch Pad: cho phép người sử dụng truy cập nhanh các công cụ, tài liệu của MATLAB

2.1.3 Một số thao tác cơ bản trong Matlab

Trong MATLAB, thanh trình đơn thay đổi tùy theo cửa sổ mà ta lựa chọn Tuy vậy các trình đơn File, Desktop, Window, Help có mặt hầu hết trong các thanh trình đơn Trình đơn File:

 New: tạo một đối tượng mới (biến, m-file, figure, model, GUI)

 Open: mở một file theo định dạng của MATLAB (*.m, *.mat, *.mdl)

 Import data…: nhập dữ liệu từ các file khác vào MATLAB

 Save workspace…: lưu các biến trong MATLAB vào file *.mat

 Set path: khai báo các đường dẫn của các thư mục chứa các m-file

 Preferences: thay đổi các định dạng về font, font size, color cũng như các tùy chọn cho Editor, Command Window v.v

 Page Setup: định dạng trang in

 Print: in

 Desktop layout: sắp xếp các cửa sổ trong giao diện

 Save layout: lưu cách sắp xếp cửa sổ

Trình đơn Window dùng để kích hoạt (activate) cửa sổ Nút Start cung cấp shortcut tới các công cụ trong MATLAB

2.1.4 Câu lệnh và biến trong Matlab

Các câu lệnh trong Matlab thường có dạng sau:

biến = biểu thức

Tên biến được bắt đầu bằng một chữ cái, sau đó có thể là các chữ và số Matlab chấp nhận tên biến (cũng như tên hàm) có đến 19 kí tự và phân biệt chữ in hoa và chữ in thường

Trang 25

Không giống với một số phần mềm lập trình khác, ở đây biến không phải khai báo trước Nếu không viết tên biến và dấu = trước biểu thức thì chương trình sẽ tự động tạo tên biến là ans

Nếu câu lệnh quá dài không thể viết hết được trên một trang thì có thể dùng dấu

ba chấm (…) để viết tiếp trên dòng thứ hai

Muốn viết lời chú dẫn, trước dòng đó ta gõ dấu %, khi chạy chương trình máy sẽ

Trang 26

atan2: arctan góc phần tư

sinh: sin hybecbolic

cosh: cosin hybecbolic

tanh: tang hybecbolic

Các hàm toán sơ cấp:

Trang 27

abs: giá trị tuyệt đối hoặc modun của số phức

log: logarit cơ số tự nhiên

log10: logarit cơ số 10

2.1.5.3 Một số bài toán được thực hiện bằng Matlab

Vẽ đồ thị hàm số

Vẽ đồ thị thường được ứng dụng nhiều nhất trong kỹ thuật, việc vẽ đồ thị giúp người dùng đánh giá được tính năng cụ thể của một vấn đề nào đó tại một điểm hoặc trên toàn miền, từ đó đưa ra các biện pháp cải tiến khác nhau

Nhập biến chạy, dùng lệnh plot

Cú pháp chung: plot (trục hoành, trục tung,’ màu đồ thị’)

Một số lệnh vẽ cơ bản cần nhớ trong MATLAB:

 Plot (x, y,'r') lệnh này dùng để vẽ đồ thị ứng với đường màu gì tuỳ thích

’r’ là đường màu đỏ

 Xlabel ('tên trục x'): tên của trục hoành được hiển thị trên đồ thị

 Ylabel ('tên trục y'): tên của trục tung được hiển thị trên hình

Trang 28

 Title ('do thi xy'): tên của đồ thị cần vẽ

 grid on: tạo lưới cho đồ thị cần vẽ

 grid off: bỏ lưới cho đồ thị

 hold on: vẽ nhiều đồ thị lên cùng hệ trục tọa độ

 legend (‘đối tượng cần chú thích’): chú thích đồ thị đã vẽ vị trí này được phần mềm mặc định tại một chỗ

Vẽ đồ thị của hàm y = sin (x)

Ta tiến hành gõ lệnh trong môi trường Matlab như sau:

x = 0:pi/100:2*pi; %(cho giá trị x chạy từ 0 đến 2 với mỗi bước là /100)

y = sin(x); %(cho y bằng hàm sin(x)) plot(x,y,’r’) %(vẽ đồ thị)

grid on xlabel('x') ylabel('y') title('do thi ham so') legend ('y=sin(x)') Kết quả:

Hình 2.2 kết quả của đồ thị y = sin (x)

Trang 29

Vẽ đồ thị của hàm x = sin (a) và y = cos(a) trên cùng một đồ thị

Ta tiến hành gõ lệnh trong môi trường Matlab như sau:

a=[0:0.3:2*pi];

x=sin(a);

y=cos(a);

hold on grid on xlabel('x') ylabel('y') plot(a,x,'r') plot(a,y,'b') title('do thi ham so') Kết quả:

Hình 2.3 kết quả của đồ thị x = sin (a) và y = cos(a)

Trang 30

7 9 11 %cho ma trận chạy từ 7 đến 11, với bước nhảy là 2

Đồng thời, Matlab cũng hỗ trợ một số hàm cụ thể để khởi tạo các ma trận

đặc biệt như sau:

Trang 31

 Ma trận không: zeros (số dòng, số cột)

 Ma trận vuông không cấp n: zeros(n)

 Ma trận đơn vị: eye(n)

 Ma trận đường chéo: diag ([các phần tử trên đường chéo chính])

 Ma trận thực ngẫu nhiên trong khoảng [0,1]: rand (số dòng, số cột) hoặc rand(n) (ma trận vuông cấp n)

Trang 32

ans =

1 1

1 1

2.2 Tổng quan về Matlab Simulink

Simulink là thư viện mở rộng của Matlab Simulink được dùng để mô phỏng các

hệ động học, các hệ tuyến tính, phi tuyến, các mô hình trong thời gian liên tục hoặc gián đoạn Đặc điểm nổi bật của Simulink lập trình ở dạng sơ đồ cấu trúc, sử dụng các đối tượng đồ họa Loại lập trình hướng đối tượng này có ưu điểm là tính trực quan, dễ viết

và hình dung nhất là đối với những người lập trình không chuyên nghiệp Simulink cung cấp giao diện đồ họa để xây dựng mô hình ở dạng sơ đồ khối Bằng thao tác “nhấn và kéo chuột” người sử dụng có thể kéo các khối chuẩn trong thư viện của Simulink ra vùng làm việc của mình để xây dựng mô hình mô phỏng

Để khởi động Simulink ta có hai cách:

Cách 1: nhập lệnh simulink ngoài giao diện chính của Matlab và nhấn Enter

>>simulink

Hình 2.5 Khởi động Simulink bằng cách 1

Trang 33

Cách 2: nhấp chuột vào biểu tượng Simulink trên menu bar của Matlab

Hình 2.6 Khởi động Simulink bằng cách 2 Người sử dụng có thể thay đổi hoặc tạo ra khối riêng của mình và bổ sung vào thư viện như là một khối ứng dụng mới Simulink bao gồm các thư viện sau: thư viện các khối nguồn tín hiệu (Sources), thư viện các khối xuất và hiển thị dữ liệu (Sink), thư viện các khối tính toán (Math Operations), thư viện Continuous và nhiều thư viện khác, tùy theo yêu cầu sử dụng mà chọn các khối khác nhau

Hình 2.7 Thư viện của Simulink

Trang 34

Mô hình trong Simulink được xây dựng theo kiểu phân cấp điều đó cho phép người

sử dụng có thể xây dựng mô hình theo hướng từ dưới lên trên hoặc từ trên xuống dưới Dùng chức năng tạo Mask của Simulink người ta có thể xây dựng các hệ con bằng cách tạo hộp thoại và biểu tượng mới cho khối Ứng dụng quan trọng của Mask là tạo ra hộp thoại để tiếp nhận thông số của các khối trong hệ con, ngoài ra Mask còn làm cho mô hình đơn giản, rõ ràng và bảo vệ nội dung của khối Khi thực hiện mô phỏng bằng Simulink người sử dụng có thể quan sát hệ thống ở mức tổng quan, vừa có thể xem xét chi tiết hoạt động của từng khối bằng cách nhấp đúp chuột vào khối đó Các khối Scope

và khối hiển thị khác (lấy trong thư viện Sinks) cho phép người sử dụng quan sát kết quả trong khi đang chạy mô phỏng Hơn nữa người sử dụng còn có thể trực tiếp thay đổi thông số trong khi đang chạy mô phỏng để biết được ảnh hưởng của các thông số đó đối với kết quả của mô phỏng

Simulink có một đặc tính quan trọng là khi xây dựng mô hình dạng sơ đồ khối thì Simulink tự động tạo ra một m.file (function) cho mô hình đó Hàm này được gọi là Sfunction Cũng giống như các hàm khác của Matlab, hàm S-function là một file mở, người sử dụng có thể truy cập vào và soạn thảo Lệnh để mở một S-function là sfun Điều đó có nghĩa là có thể soạn thảo chương trình mô phỏng mà không cần thông qua giao diện đồ thị Mặt khác, Simulink cho phép chuyển đổi từ S-function sang sơ đồ khối

và ngược lại Như vậy rất thuận tiện cho người sử dụng

Hiện nay Matlab Simulink được ứng dụng rộng rãi trong nhiều lĩnh vực nhất là các lĩnh vực liên quan đến việc tính toán các giá trị bằng các biểu thức toán học hay mô phỏng một hệ thống nào đó thông qua việc tính toán các thông số của chúng Trong ngành ô tô nói riêng thì Simulink được ứng dụng nhiều trong việc mô phỏng các hệ thống động lực Simulink có thể coi là một phần mềm đồ họa, định hướng dùng sơ đồ khối để

mô phỏng các hệ thống động lực Đây là sản phẩm bên trong của Matlab và sử dụng nhiều hàm của Matlab và cũng có thể trao đổi qua lại với môi trường của Matlab để tăng thêm khả năng linh hoạt của nó Ngoài ra Matlab Simulink còn được sử dụng nhiều trong các lĩnh vực mô phỏng khác như trong điện tử, trong cơ học, trong toán học… Hiện nay người ta bắt đầu nghiên cứu để sử dụng Matlab trong tất cả các lĩnh vực có nhu cầu tính toán, lấy kết quả, xử lý kết quả, mô phỏng…

2.2.1 Một số thư viện công cụ trong Matlab Simulink

Các công cụ tuỳ chỉnh dùng trong mô phỏng:

Trang 35

2.2.1.1 Các công cụ trong Tab SIMULAITON

Sử dụng các bước thời gian rời rạc, bạn có thể tiến hoặc lùi đến một thời điểm cụ thể trong thời gian mô phỏng Tại mỗi bước thời gian, Stepper hiển thị tất cả dữ liệu mô phỏng mà mô hình tạo ra Bạn cũng có thể đặt các điểm ngắt như một phần của phiên gỡ lỗi

Step tiến và lùi:

Ví dụ: chuyển đổi tín hiệu analog sang digital cho thấy cách tiến và lùi thông qua một mô phỏng

 Trong phần Simulink Editor của ví dụ, click vào để mở hộp thoại tùy chọn bước mô phỏng ( Simulation Stepping Options)

 Trong hộp thoại, chọn Enable stepping back sau đó nhấn OK

Hình 2.8 Cài đặt các bước mô phỏng

Trang 36

 Trên tab Simulation, nhấn nút Step Forward một lần

 Nhấp lại vào nút Step Forward để tiến thêm một bước và lưu trữ dữ liệu mô phỏng Tổng cộng 30 bước chuyển tiếp tạo ra các kết quả mô phỏng sau:

Hình 2.9 Kết quả mô phỏng

 Bạn phải ấn Step Forward trước sau đó bạn mới có thể ấn Step Back qua các bước tương tự

Log signals (ghi lại tín hiệu):

Chức năng: Đánh dấu một tín hiệu để ghi lại:

Simulink sẽ hiển thị kí hiệu báo tín hiệu đã ghi, cho mỗi tín hiệu

Để bật chế độ log signals chúng ta có thể sử dụng cách sau:

Trên tab Simulation, chọn Log Signals

Khi các tín hiệu được đánh dấu để ghi lại, dữ liệu tín hiệu sẽ ghi vào workspace

và vào Simulation Data Inspector

Trang 37

Tín hiệu sau khi được ghi lại chúng ta có thể thao tác với chúng bằng cách nhấp vào biển tượng trên tín hiệu, hộp thoại Simulation Data Ispector sẽ xuất hiện

Hình 2.10 Kết quả tín hiệu được ghi lại Trong hình là dữ liệu của một tín hiệu (signal2) được chọn

Bạn có thể Save dữ liệu của tính hiệu đó, hoặc xuất ra (Export), hoặc nhập vào (Import) một dữ liệu khác có thể từ workspace hoặc từ file mà bạn chọn…

Add viewer (thêm công cụ quan sát)

Chức năng:

Viewer không phải là một khối Viewer là một công cụ để tạo và trực quan hoá tín hiệu Giúp người dùng mô phỏng quan sát rõ hơn về một tín hiệu nào đó trong mô phỏng mà không cần phải dùng các khối hiển thị tín hiệu trong Library Browser

Để thêm viewer ta có thể sử dụng những cách sau:

 Chọn một hoặc nhiều tín hiệu

 Sau đó trên tab Simulation ta chọn Add viewer

 Hộp thoại Add viewer mở ra Chọn công cụ ta cần dùng

Trang 38

Hình 2.11 Hộp thoại Add viewer Hoặc bạn cũng có thể thêm viewer bằng cách nhấp chuột phải vào tín hiệu, chọn Create & Connect Viewer sau đó chọn công cụ cần thêm

Ví dụ:

Hình 2.12 Hình trên tín hiệu signal1 được thêm scope vào

Khi mô phỏng xong chương trình thì ngoài kết quả được hiển thị thông qua các khối, chúng ta cũng có thể quan sát dữ liệu của signal1 bằng cách nhấp đúp vào biểu tượng scope trên tín hiệu

Trang 39

2.2.1.2 Các công cụ trong Tab DEBUG

Hình 2.13 Cửa sổ Diagnostic Viewer

Trang 40

Cửa sổ trình xem chẩn đoán được chia thành 3 phần:

 Toolbar menu: Hiển thị các lệnh khác nhau để giúp bạn quản lý các thông báo chẩn đoán

 Diagnostic Message pane: Hiển thị thông báo lỗi, cảnh báo và thông tin

 Suggested Actions: Hiển thị các đề xuất và bản sửa lỗi để sửa các lỗi chẩn đoán và cảnh báo

Các công cụ trong Diagnostic Viewer:

Để quản lý thông báo chẩn đoán, hãy sử dụng thanh công cụ Diagnostic Viewer toolbar

Bảng 2.1 Các chứng năng của công cụ trong Diagnostic Viewer

Mở rộng hoặc thu gọn thông báo Lưu tất cả hoặc thông báo mới nhất vào tệp nhật

ký Sao chép tất cả hoặc thông báo mới nhất Xóa tất cả hoặc tất cả trừ các tin nhắn mới nhất Lọc ra lỗi, cảnh báo và thông báo thông tin Nhóm các loại thông báo tương tự

Tìm kiếm thông báo cho các từ khóa cụ thể và điều hướng giữa các thông báo

Đặt số lượng mô hình tối đa để hiển thị trong các bảng tab và số lượng sự kiện tối đa để hiển thị trên mỗi mô hình

Trace Signal (theo dõi tín hiệu)

Bạn có thể theo dõi tín hiệu của mô phỏng xác định nguồn hoặc đích đến của tín hiệu đó bằng cách dùng trace signal

Ngày đăng: 21/08/2022, 21:25

TỪ KHÓA LIÊN QUAN

w