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

Ứng dụng máy tính trong mô phỏng hộp số tự động trên ô tô

149 2 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 Máy tính Trong Mô Phỏng Hộp Số Tự Động Trên Ô Tô
Người hướng dẫn TS. Nguyễn Trọng Hải
Trường học Trường Đại Học Công Nghệ TP. 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ố Tp. Hồ Chí Minh
Định dạng
Số trang 149
Dung lượng 7,24 MB

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

Nội dung

Trong Matlab đã tích hợp sẵn rất nhiều công cụ chuyên dùng để giải các bài toán khác nhau như: nhận dạng các đối tượng động học, điều khiển tối ưu, điều khiển bền vững, điều khiển mờ, x

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ

MINH

ĐỒ ÁN TỐT NGHIỆP

ỨNG DỤNG MÁY TÍNH TRONG MÔ PHỎNG HỘP SỐ TỰ

ĐỘNG TRÊN Ô TÔ

NGÀNH: CÔNG NGHỆ KỸ THUẬT Ô TÔ

GIẢNG VIÊN HƯỚNG DẪN: TS NGUYỄN TRỌNG HẢI

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

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ

MINH

ĐỒ ÁN TỐT NGHIỆP

ỨNG DỤNG MÁY TÍNH TRONG MÔ PHỎNG HỘP SỐ TỰ

ĐỘNG TRÊN Ô TÔ

NGÀNH: CÔNG NGHỆ KỸ THUẬT Ô TÔ

GIẢNG VIÊN HƯỚNG DẪN: TS NGUYỄN TRỌNG HẢI

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

Trang 6

LỜI CAM ĐOAN

Tôi xin cam đoan rằng đồ án tốt nghiệp là công trình nghiên cứu của bản thân mình Những phần có sử dụng tài liệu tham khảo có trong đồ án đã được liệt kê và nêu rõ

ra tại phần tài liệu tham khảo Đồng thời những số liệu hay kết quả trình bày trong

đồ án đều mang tính chất trung thực, không sao chép, đạo nhái

Nếu như sai tôi xin chịu hoàn toàn trách nhiệm và chịu tất cả các kỷ luật của Viện cũng như nhà trường đề ra

Tp Hồ Chí Minh, Ngày 26 tháng 09 năm 2021

Sinh viên thực hiện

Trang 7

LỜI CẢM ƠN

Trong suốt quá trình học tập và hoàn thành đồ án tốt nghiệp này, chúng em đã nhận được sự hướng dẫn, giúp đỡ quý báu của các thầy cô, các anh chị và các bạn Với lòng kính trọng và biết ơn sâu sắc chúng em xin được bày tỏ lời cảm ơn chân thành đến

Viện Kỹ Thuật Hutech trường Đại Học Công Nghệ TP.Hồ Chí Minh đã tạo mọi điều kiện thuận lợi để giúp đỡ chúng em trong quá trình học tập và hoàn thành đồ

án tốt nghiệp

TS Nguyễn Trọng Hải, người thầy kính mến đã hết lòng giúp đỡ, dạy bảo, động viên và tạo mọi điều kiện thuận lợi cho chúng em trong suốt quá trình học tập và hoàn thành luận văn tốt nghiệp Chúng em cũng muốn gửi lời cám ơn tới các thầy trong tổ phản biện, cũng là những người thầy đáng kính đã truyền đạt cho chúng em những kiến thức, kỹ năng thực hành quý báu trong chuyên ngành công nghệ ô tô Chúng em xin gửi lời cám ơn tới tất cả các thầy cô trong các khoa, phòng tại trường Đại Học Công Nghệ TP.Hồ Chí Minh - những người đi trước trên hành trình đi tìm tri thức, những người đã hướng dẫn, hỗ trợ chúng em suốt bốn năm học đại học Cuối cùng xin dành lời cảm ơn tới cha me, đã sinh ra và nuôi dưỡng chúng con đã luôn ở bên cạnh động viên và giúp đỡ chúng con học tập làm việc và hoàn thành đồ án

Trang 8

MỤC LỤC

Phiếu đăng ký tên đề tài ĐATN

Phiếu giao nhiệm vụ

Lời cam đoan i

Lời cảm ơn ii

Mục lục iii

Danh sách các bảng vii

Danh sách các hình viii

Lời mở đầu 1

Chương 1: GIỚI THIỆU 4

1.1 Matlab và Simulink 4

1.1.1 Matlab 4

1.1.1.1 Ngôn ngữ lập trình 4

1.1.1.2 Phạm vi ứng dụng của Matlab 4

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

1.1.2 Simulink 5

1.1.2.1 Khái niêm 5

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

1.1.2.3 Một số khối cơ bản của Simulink 11

1.2 Stateflow 16

1.2.1 Giới thiệu về Stateflow 16

1.2.2 Các đối tượng có trong Stateflow 18

1.2.2.1 State 18

1.2.2.2 Hệ thống phân cấp trong state 19

Trang 9

1.2.2.3 Sự phân chia trạng thái (State Decomposition) 19

1.2.2.4 State labels 20

1.2.2.5 State actions 21

1.2.2.6 Transition 21

1.2.2.7 Conditions (Điều kiện) 22

1.2.2.8 Default transitions 22

1.2.2.9 History junction 23

1.2.2.10 Connective Junctions 24

1.2.3 Các khối cơ bản trong Stateflow 24

1.2.3.1 Chart 24

1.2.3.2 State transition table 25

1.2.3.3 Truth table 26

1.2.3.4 Sequence viewer 26

1.3 Simscape 27

1.3.1 Tổng quan về Simscape 27

1.3.2 Thư viện của Simscape 29

1.3.2.1 Foundation library ( Thư viện nền tảng ) 29

1.3.2.2 Utilities library (Thư viện tiện ích) 32

1.3.2.3 Simscape Driveline 32

1.3.2.4 Simscape Electrical 35

1.3.2.5 Simscape Fluids 37

1.3.2.6 Simscape Multibody 39

Chương 2: TỔNG QUAN THỰC HIỆN CÁC PHƯƠNG PHÁP TRONG MATALAB 42

Trang 10

2.1 Matlab và Simulink 42

2.2 Stateflow 53

2.3 Simscape 70

Chương 3: SỬ DỤNG SIMULINK TRONG MÔ PHỎNG KỸ THUẬT Ô TÔ 90

3.1 Ứng dụng Simulink và Stateflow vào mô phỏng quá trình chuyển số của hộp số 90

3.1.1 Thuật toán điều khiển chuyển số 94

3.1.1.1 Điều khiển tăng số 94

3.1.1.2 Điều khiển giảm số 96

3.2 Sử dụng Simscape trong mô phỏng xe Fortuner với hệ thống sang số tự động 99

Chương 4: QUY TRÌNH THIẾT KẾ 110

4.1 Mô hình mô phỏng động cơ và quá trình chuyển số của hộp số tự động cấp số 110

4.1.1 Mô hình mô phỏng 110

4.1.2 Xây dựng mộ hình Stateflow của bộ điều khiển hộp số tự động 113

4.2 Mô hình mô phỏng xe Fortuner với hệ thống sang số tự động 6 cấp số 118

4.2.1 Mô hình mô phỏng 118

4.2.2 Xây dựng mộ hình Stateflow của bộ điều khiển hộp số tự động 123

Chương 5: KẾT QUẢ MÔ PHỎNG 125

5.1 Mô hình mô phỏng động cơ và quá trình chuyển số của hộp số tự động 5 cấp số 125

5.2 Mô hình mô phỏng xe Fortuner với hệ thống sang số tự động 6 cấp số 127

Chương 6: KẾT QUẢ, KẾT LUẬN 130

6.1 Kết luận 130

Trang 11

6.2 Hướng phát triển 130 Tài liệu tham khảo 133

Trang 12

DANH SÁCH CÁC BẢNG

Bảng 1.1: Một số khối của thư viện Utilities 32

Bảng 1.2: Một số khối của thư viện Driveline 34

Bảng 1.3: Một số thư viện của Electrical 36

Bảng 1.4: Một sô khối cơ bản của Fluids 39

Bảng 1.5: Một số thư viên của Multibody 41

Bảng 4.1: Bảng tỉ số truyền của hộp số 111

Bảng 4.2: Bảng lên số 117

Bảng 4.3: Bảng xuống số 117

Bảng 4.4: Bảng lên số 124

Bảng 4.5: Bảng xuống số 124

Trang 13

DANH SÁCH CÁC HÌNH

Hình 1.1: Biểu tượng Diagnostic Viewer 7

Hình 1.2: Hình biểu tượng Trace signal 8

Hình 1.3: Biểu tượng Comment Out 8

Hình 1.4: Biểu tượng Output Value 8

Hình 1.5: Hộp thoại Configuration Parameter 9

Hình 1.6: Hộp thoại Model Explorer 10

Hình 1.7: Khung hiển thị Model Data Editor 10

Hình 1.8: Hộp thoại khối Step 11

Hình 1.9: Hộp thoại khối Constant 11

Hình 1.10: Hộp thoại khối From Workspace 12

Hình 1.11: Hộp thoại khối Sine Wave 12

Hình 1.12: Khối Product 13

Hình 1.13: Khối Subsystem 13

Hình 1.14: Khối Integrator 14

Hình 1.15: Khối Integrator Limited 14

Hình 1.16: Khối Delay 14

Hình 1.17: 1-D Lookup Table 14

Hình 1.18: Khối Switch: 14

Hình 1.19: Khối Scope 15

Hình 1.20: Khối XY Graph 15

Hình 1.21: Khối To Workspace 15

Hình 1.22: Khối Display 15

Hình 1.23: Sơ đồ Stateflow 16

Hình 1.24: Các đối tượng có trong Stateflow 18

Hình 1.25: Phân cấp trong Stateflow 19

Hình 1.26: Vị dụ trang thái độc nhất (OR) 19

Hình 1.27: Ví dụ trạng thái song song (AND) 20

Hình 1.28: Ví dụ State labels 21

Hình 1.29: Ví dụ chuyển đổi giữa StateA1 với StateA2 22

Hình 1.30: Ví dụ điều kiện chuyển đổi 22

Hình 1.31: Biểu tượng Default transitions 23

Hình 1.32: Ví dụ History Junction 23

Hình 1.33: Ví dụ Connective Junctions 24

Trang 14

Hình 1.34: Biểu tượng Chart 24

Hình 1.35: Biểu tượng State transition table 25

Hình 1.36: Biểu tượng Truth table 26

Hình 1.37: Biểu tượng Sequence viewer 26

Hình 1.38: Một số khối trong thư viện con Mechanical Sensor 29

Hình 1.39: Một số khối trong thư viện con Mechanical Sources 30

Hình 1.40: Một số khối trong thư viện con Translation Elements 31

Hình 1.41: Một số khối trong thư viện con Rotational Elements 31

Hình 1.42: Hình ảnh minh họa 32

Hình 1.43: Hình ảnh minh họa 35

Hình 1.44: Hình ảnh minh họa 37

Hình 1.45: Hình ảnh minh hoạ 39

Hình 2.1: Mô hình bài toán 42

Hình 2.2: Kết quả mô phỏng 43

Hình 2.3: Hình ảnh minh họa 43

Hình 2.4: Mô hình hoá bài toán 44

Hình 2.5: Hình ảnh minh hoạ 45

Hình 2.6: Hình ảnh minh hoạ 45

Hình 2.7: Hình ảnh minh họa 46

Hình 2.8: Hình ảnh minh họa 47

Hình 2.9: Hình ảnh minh họa 47

Hình 2.10: Hình ảnh minh họa 48

Hình 2.11: Hình ảnh minh họa 48

Hình 2.12: Hình ảnh minh họa 49

Hình 2.13: Hình ảnh minh họa 49

Hình 2.14: Hình ảnh minh họa 50

Hình 2.15: Hình ảnh minh họa 50

Hình 2.16: Hình ảnh minh họa 51

Hình 2.17: Hình ảnh minh họa 51

Hình 2.18: Hộp thoại Signal Generator 52

Hình 2.19: Khối Scope hiển thị kết quả 53

Hình 2.20: Biểu tượng State trên thanh Explorer 54

Hình 2.21: Ví dụ đặt tên cho khối 54

Hình 2.22: Nhập lệnh và điều kiện cho State 55

Hình 2.23: Khai báo dầu vào và đầu ra 55

Hình 2.24: Ví dụ điều chỉnh tốc độ 55

Hình 2.25: Điều khiển mô hình 56

Hình 2.26: Knop đạt giá trị 35 đèn tắt 56

Trang 15

Hình 2.27: Knop đạt giá trị 65 đèn sáng 57

Hình 2.28: Hình ảnh minh họa 58

Hình 2.29: Bảng trạng thái của State transition Table 59

Hình 2.30: Khai báo tín hiệu đầu vào và đầu ra 59

Hình 2.31: Kết nối với khối Knob để điều chỉnh tốc độ 60

Hình 2.32: Tốc độ lớn hơn 0 km/h 60

Hình 2.33: Tốc độ dưới 5 km/h 61

Hình 2.34: Tốc độ lớn hơn 20 km/h 61

Hình 2.35: Tốc độ nhỏ hơn 23km/h 62

Hình 2.36: Tốc độ lớn hơn 30 km/h 62

Hình 2.37: Tốc độ nhỏ hơn 38 km/h 63

Hình 2.38: Tốc độ lớn hơn 50 km/h 63

Hình 2.39: Lấy khối Truth table từ thư viện Simunk 64

Hình 2.40: Bảng trạng thái của khối Truth table 65

Hình 2.41: Nối các khối lại với nhau 66

Hình 2.42: Giá trị đầu vào bình thường 66

Hình 2.43: Giá trị đầu vào 1 trong 3 trạng thái lỗi 67

Hình 2.44: Lấy khối Sequence Viewer từ thư viện Simulink 67

Hình 2.45: Bảng trạng thái của Sequence Viewer 68

Hình 2.46: Nhập tín hiệu dầu vào và đầu ra 68

Hình 2.47: Nối các khối với nhau 69

Hình 2.48: Biểu đồ hiển thị kết quả 69

Hình 2.49: Hình ảnh minh họa 70

Hình 2.50: Mô hình vật lý 70

Hình 2.51: Hình ảnh minh hoạ 71

Hình 2.52: Hình ảnh minh hoạ 72

Hình 2.53: Kết nối các khối 73

Hình 2.54: Hộp thoại khối Mass M1 74

Hình 2.55: Hộp thoại khối Mass M2 74

Hình 2.56: Hộp thoại khối Spring 75

Hình 2.57: Hộp thoại khối Damper M1 friction 75

Hình 2.58: Hộp thoại khối Damper M2 friction 76

Hình 2.59: Kết nối các khối lại với nhau 77

Hình 2.60: Hình ảnh minh hoạ 77

Hình 2.61: Hộp thoại khối Signal Generator Force input 78

Hình 2.62: Mô hình hoàn chỉnh 79

Hình 2.63: Kết quả đầu ra 79

Hình 2.64: Mô hình bài toán 80

Trang 16

Hình 2.65: Mô hình vật lý của xe 81

Hình 2.66: Hình ảnh minh hoạ 82

Hình 2.67: Hình ảnh minh hoạ 83

Hình 2.68: Hộp thoại khối Engine 84

Hình 2.69: Hộp thoại khối Tire (Magic Formula) 84

Hình 2.70: Hộp thoại khối Tire (Magic Formula) 85

Hình 2.71: Hộp thoại khối Vehicle Body 86

Hình 2.72: Mô hình subsystem của bánh xe 86

Hình 2.73: Giá trị đầu vào của mô hình 87

Hình 2.74: Mô hình tổng quát 88

Hình 2.75: Kết quả của mô hình 89

Hình 3.1: Mô hình lý thuyết 91

Hình 3.2: Sơ đồ logic quá trình lên số 95

Hình 3.3: Sơ đồ logic quá trình xuống số 97

Hình 3.4: Sơ đồ thởi điểm sang số 98

Hình 3.5: Sơ đồ momen xoắn của động cơ 98

Hình 3.6: Sơ đồ giá trị K-factor và tỉ số momen xoắn 99

Hình 3.7: Mô hình lý thuyết 99

Hình 3.8: Khối Generic Engine 100

Hình 3.9: Các cài đặt cơ bản của khối Generic Engine 101

Hình 3.10: Khối Torque Converter 101

Hình 3.11: Các cài đặt cơ bản của khối Torque Converter 102

Hình 3.12: Khối Vehicle Body 102

Hình 3.13: Các cài đặt cơ bản của khối Vehicle Body 103

Hình 3.14: Khối Tire 104

Hình 3.15: Các cài đặt cơ bản của khối Tire 104

Hình 3.16: Khối Differential 105

Hình 3.17: Các cài đặt cơ bản của khối Differential 105

Hình 3.18: Khối Solver Configuration 106

Hình 3.19: Các cài đặt cơ bản của khối Solver Configuration 106

Hình 3.20: Khối Double-Shoe Brake 107

Hình 3.21: Khối Planetary Gear: 107

Hình 3.22: Khối Inertia 108

Hình 3.23: Các cài đặt cơ bản của khối Inertia 108

Hình 3.24: Khối Disk Friction Clutch 108

Hình 3.25: Khối Mechanical Rotational Reference 109

Hình 4.1: Mô hình tổng quát 110

Hình 4.2: Engine subsystem 111

Trang 17

Hình 4.3: Torque converter subsystem 111

Hình 4.4: Transmission subsystem 112

Hình 4.5: Wheel speed subsystem 112

Hình 4.6: Mô hình tính Tload 113

Hình 4.7: Vehicle subsystem 113

Hình 4.8: Mô hình Stateflow quá trình chuyển số 115

Hình 4.9: State gear_state 115

Hình 4.10: State selection_state 116

Hình 4.11: Khối Simulink function 116

Hình 4.12: Mô hình khối Simulink function 117

Hình 4.13: Khai báo dữ liệu bên trong Chart 118

Hình 4.14: Mô hình tổng quát 118

Hình 4.15: Mô hình khối Control Unit 119

Hình 4.16: Subsystem điều chỉnh chế độ số 120

Hình 4.17: Subsystem tính lực ép của phanh 120

Hình 4.18: Mô hình hộp số sử dụng cơ cấu bánh răng hành tinh 121

Hình 4.19: Mô hình khối Body 122

Hình 4.20: Khối Stateflow tính toán chuyển số 123

Hình 5.1: Tín hiệu góc mở bướm ga 125

Hình 5.2: Tín hiệu lực phanh tác động 126

Hình 5.3: Sơ đồ cơ chế chuyển số của xe 126

Hình 5.4: Sơ đồ vận tốc của xe 127

Hình 5.5: Kết quả mô phỏng trường hợp 1 128

Hình 5.6: Kết quả mô phỏng trường hợp 2 129

Hình 5.7: Kết quả mô phỏng trường hợp 3 129

Trang 18

LỜI MỞ ĐẦU

1 Tính cấp thiết của đề tài

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 động cơ ô 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 động cơ ô tô

Vì vậy, dưới sự hướng dẫn của TS Nguyễn Trọng Hải, nhóm chúng em đã nghiên cứu đề tài: Ứng dụng phần mềm Matlab trong mô phỏng động cơ

2 Tình hình nghiên cứu

Thời đại công nghệ thông tin phát triển mạnh mẽ, cùng với nó là hàng loạt các phần mềm hỗ trợ kèm theo, Matlab và Simulink là một phần mềm mà ứng dụng của

nó trong điều khiển tự động quả là không nhỏ

Matlab và Simulink là một ngôn ngữ đa năng Nó tạo môi trường để Simulink thực hiện và liên kết Simulink với bên ngoài Trong Matlab đã tích hợp sẵn rất nhiều công cụ chuyên dùng để giải các bài toán khác nhau như: nhận dạng các đối tượng động học, điều khiển tối ưu, điều khiển bền vững, điều khiển mờ, xử lí tín hiệu số… Mô phỏng các hệ thống điều khiển tự động trong Matlab cho phép ta sử dụng các mô hình toán học khác nhau của hệ thống hoặc đối tượng cần khảo sát

Trang 19

như: dùng hàm truyền đạt, dùng hàm trạng thái, dùng mô hình sơ đồ cấu trúc như trong Simulink Matlab cho phép ta khảo sát các hệ thống điều khiển tự động trong miền tần số và miền thời gian Matlab còn cho phép liên kết tối đa trong môi trường

để có thể tổ chức mô phỏng với mô hình bán tự nhiên, mô phỏng trong thời gian thực và mô phỏng các hệ thống lớn

3 Mục đích nghiên cứu

 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 động cơ.;

 Làm tài liệu hỗ trợ giảng dạy

4 Nhiệm vụ nghiên cứu

 Chỉ mô phỏng các mô hình của động cơ ô 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

5 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 đã có trước

đó để 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óng, 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 20

6 Kết quả đạt được

Kết quả đạt được là ta có một mô hình sử dụng thông tin là góc mở bướm ga và lực phanh để cho ra kết quả là sơ đồ điều khiển hộp số và vận tốc của phương tiện Mô phỏng được quá trình sang số của hộp số tự động và thông số của vận tốc

khi đạp phanh

7 Đồ án gồm 6 chương

 Chương 1 : Giới thiệu;

 Chương 2: Tổng quan thực hiện các phương pháp trong Matlab;

 Chương 3: Sử dụng Simulink trong mô phỏng kỹ thuật ô tô;

 Chương 4: Quy trình thiết kế;

 Chương 5: Kết quả mô phỏng;

 Chương 6: Kết quả, kết luận

Trang 21

Với thư viện Toolbox, Matlab cho phép mô phỏng tính toán, thực nghiệm nhiều mô hình trong thực tế và kỹ thuật

 Phát triển thuật toán;

 Tạo mô hình mô phỏng và tạo giao thức;

 Khảo sát phân tích số liệu;

 Đồ họa khoa học kỹ thuật;

 Phát triển ứng dụng gồm cả xây dựng giao diện người dùng;

 Thiết kế các hệ thống điều khiển trong thời gian thực

Trang 22

1.1.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ổ

1.1.2 Simulink

1.1.2.1 Khái niêm

Simulink là một môi trường mô phỏng và thiết kế dựa trên mô hình có sẵn Ta có thể tạo sơ đồ khối, trong đó các khối đại diện cho các bộ phận của hệ thống Một khối có thể đại diện cho một thành phần vật lý, một hệ thống nhỏ hoặc một chức năng Một mối quan hệ đầu vào - đầu ra hoàn toàn đặc trưng cho một khối Hãy xem xét các ví dụ sau:

 Vòi nước làm đầy xô - Nước chảy vào xô với một tốc độ dòng chảy nhất định, và xô nặng hơn Một khối có thể đại diện cho thùng, với tốc độ dòng chảy là đầu vào và trọng lượng của nó là đầu ra;

Trang 23

 Bạn sử dụng một cái loa để nghe giọng nói của mình - Âm thanh tạo ra ở một đầu của cái loa được khuếch đại ở đầu kia Loa là một khối, đầu vào là sóng âm tại nguồn của nó và đầu ra là sóng âm khi bạn nghe thấy;

 Bạn đẩy xe hàng và nó di chuyển - Xe hàng là khối, lực bạn tác dụng là đầu vào và vị trí của xe đẩy là đầu ra

Định nghĩa của một khối chỉ hoàn chỉnh với các đầu vào và đầu ra của nó được xác định, nhiệm vụ này liên quan đến mục tiêu của mô hình

Ví dụ:

Bật lò sưởi không dẫn đến sự thay đổi nhiệt độ tức thì Đúng hơn, hành động này cung cấp đầu vào cho một phương trình vi phân Lịch sử của nhiệt độ (một trạng thái) cũng là một yếu tố

Khi mô phỏng yêu cầu giải một phương trình vi phân hoặc sai phân, Simulink sử dụng bộ nhớ và bộ giải số để tính toán các giá trị trạng thái cho bước thời gian Simulink xử lý dữ liệu trong ba danh mục:

 Tín hiệu: Khối đầu vào và đầu ra, được tính toán trong quá

Chạy mô phỏng từng bước để xác định vấn đề, tiến hoặc lùi về một thời điểm

cụ thể trong thời gian mô phỏng

Trang 24

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

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

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

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

Hình 1.1: Biểu tượng Diagnostic Viewer

- 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

Trang 25

Hình 1.2: Hình biểu tượng Trace signal

- Comment Out:

Comment Out giúp bỏ qua một phần hoặc nhiều phần của mô phỏng khi bạn không muốn mô phỏng hoặc bạn chỉ muốn mô phỏng một hệ thống nào đó riêng lẻ trong một model

Hình 1.3: Biểu tượng Comment Out

- Output Values:

Đối với nhiều khối có tín hiệu mang dữ liệu, Simulink có thể hiển thị các giá trị tín hiệu (đầu ra khối) dưới dạng nhãn giá trị trên sơ đồ khối trong và sau khi mô phỏng Các nhãn giá trị hiển thị các giá trị đầu ra của khối khi Simulink chạy các phương thức đầu ra của khối

Hình 1.4: Biểu tượng Output Value

Trang 26

Đặt thông số cấu hình mô hình cho một mô hình

Để xem và đặt thông số cấu hình cho mô hình của bạn, hãy mở hộp thoại Configuration Parameter Trong Simulink Editor, trên tab Modelling, hãy nhấp vào Model Settings

Hình 1.5: Hộp thoại Configuration Parameter

Trang 27

Hình 1.6: Hộp thoại Model Explorer

- Model Data Editor:

Mô hình chứa các mục dữ liệu như tín hiệu, tham số khối (ví dụ: Tham số Gain của khối Gain) và kho dữ liệu Trình chỉnh sửa dữ liệu mô hình cho phép bạn kiểm tra và chỉnh sửa các mục dữ liệu trong danh sách mà bạn có thể sắp xếp, nhóm

và lọc Sau đó, bạn có thể định cấu hình các thuộc tính và tham số, chẳng hạn như kiểu dữ liệu và kích thước, mà không cần phải xác định vị trí các mục trong

sơ đồ khối

Hình 1.7: Khung hiển thị Model Data Editor

Để mở Model Data Editor trong một mô hình, trên tab Modeling, hãy nhấp vào Model Data Editor hoặc nhấn Ctrl + Shift + E

Trang 28

1.1.2.3 Một số khối cơ bản của Simulink

 Khối đầu vào

- Khối Step:

Hình 1.8: Hộp thoại khối Step

Khối Step phát ra dạng sóng có tính chất hàm bước

Những thông số: Thời gian chuyển đổi (steptime), giá trị đầu, giá trị cuối

- Khối Constant:

Hình 1.9: Hộp thoại khối Constant

Trang 29

Phát ra giá trị hằng số thực hoặc phức

Hằng số đó có thể là vector hay ma trận, tùy theo cách khai báo tham số Constant Value và ô Interpret vector parameter as 1-D có được chọn không

- Khối From Workspace:

Hình 1.10: Hộp thoại khối From Workspace

Đọc dữ liệu từ ma trận Matlab Ma trận này phải chứa ít nhất hai cột, cột đầu tiên phải là vector thời gian

- Khối Sine Wave:

Khối Sine Wave xuất ra dạng sóng hình sin

Hình 1.11: Hộp thoại khối Sine Wave

Trang 30

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

- Khối Sum:

Ngõ ra bằng tổng (hiệu) của các ngõ vào Số dấu sẽ cho biết số ngõ vào của khối

- Khối Gain (khuếch đại tín hiệu đầu vào):

Khối Gain có tác dụng khuếch đại tín hiệu đầu vào bằng biểu thức khai báo tại ô Gain, biểu thức đó có thể chỉ là một số hay một biến Nếu là biến, biến đó phải tồn tại trong môi trường Matlab Workspace, chỉ khi ấy Simulink mới có thể tính toán được với biến

- Khối Product (nhân từng phần tử):

Khối Product thực hiện phép nhân từng phần tử hay

phép nhân ma trận, cũng như phép chia giữa các tín hiệu

(dạng 1 - D hay 2 - D) của khối phụ thuộc vào giá trị đặt

của tham số

- Khối Subsystem:

Hình 1.13: Khối Subsystem

Khối subsystem được sử dụng để tạo hệ thống con trong khuôn khổ của một

mô hình Simulink Việc ghép với mô hình thuộc các tầng ghép trên được thực hiện nhờ khối Inport và Outport Số lượng đầu vào và ra của khối subsystem phụ thuộc

số lượng khối Inport và Outport

Hình 1.12: Khối

Product

Trang 31

- Khối Integrator:

Khối Integrator lấy tích phân tín hiệu đầu

vào của khối

- Khối Integrator Limited:

Khối Tích phân giới hạn giống hệt với khối Tích hợp ngoại trừ

đầu ra của khối bị giới hạn dựa trên giới hạn bão hòa trên và dưới

- Khối Delay:

Khối Delay xuất đầu vào của khối sau một khoảng thời

gian trễ Khối xác định thời gian trễ dựa trên giá trị của tham số

Độ dài trễ

- 1-D Lookup Table:

Khối có nhiệm vụ tra cứu dựa trên thông tin có sẵn trong bảng

để xuất ra giá trị

Thứ tự vị trí của giá trị được xuất ra sẽ tương ứng với thứ tự vị

của giá trị đầu vào Nếu giá trị đầu vào không có trong bảng tìm

kiếm thì khối sẽ dùng phép ngoại suy hoặc nội suy để tìm ra giá

trị đầu ra tương ứng

- Khối Switch:

Ngõ ra sẽ là giá trị của ngõ vào đầu tiên cho đến khi một giá trị

thứ hai lớn hơn giá trị ngưỡng thì ngõ ra mang giá trị ngõ vào

thứ hai, sau đó ngõ ra lại bằng giá trị thứ ba

Hình 1.18: Khối

Trang 32

Khối Hiển thị kết nối với một tín hiệu trong mô hình của bạn và

hiển thị giá trị của nó trong quá trình mô phỏng

Hình 1.22: Khối

Display

Trang 33

1.2 Stateflow

1.2.1 Giới thiệu về Stateflow

Stateflow là một ứng dụng phần mềm được phát triển bởi MathWorks tương thích với hầu hết các hệ điều hành như Windows, MacOS, Linux,… trên nền tảng x64 bit Stateflow dùng để mô tả các thuật toán MATLAB hoặc làm một công cụ thiết kế đồ họa tương tác hoạt động với Simulink để lập nên mô hình và mô phỏng các hệ thống hướng sự kiện, còn được gọi là hệ thống phản ứng Stateflow cung cấp một ngôn ngữ đồ họa bao gồm các sơ đồ chuyển trạng thái, biểu đồ luồng, bảng chuyển trạng thái và bảng xác thực Nó cung cấp một trình soạn thảo đồ họa mà trên đó các đối tượng đồ họa Stateflow được kéo từ bảng thiết kế có thể được đưa vào để tạo finite state machines

Stateflow làm tăng sự dễ dàng của một mô hình bằng cách thêm vào hệ thống phân cấp (Hierarchy), song song (Parallelism), sự kiện (Events), hành động (Action), và lịch sử (History) Các khối Stateflow được xem là các khối Simulink tiêu chuẩn và

do đó có thể tích hợp trong các mô hình Simulink

Hình 1.23: Sơ đồ Stateflow

Stateflow thường được sử dụng để chỉ định bộ điều khiển rời rạc trong mô hình của

hệ thống kết hợp trong đó có động lực liên tục được chỉ định bằng Simulink

Trang 34

Stateflow cho phép bạn thiết kế và phát triển kiểm soát giám sát, lập lịch tác vụ, quản lý lỗi, giao thức truyền thông, giao diện người dùng và hệ thống kết hợp

Với Stateflow, việc làm mô hình quyết định kết hợp và tuần tự có tính logic có thể được mô phỏng như một khối trong mô hình Simulink hoặc được thực thi như một đối tượng trong MATLAB Hoạt hình đồ họa cho phép bạn phân tích và gỡ lỗi logic của bạn trong khi nó đang thực thi Kiểm tra thời gian chỉnh sửa và thời gian chạy đảm bảo tính nhất quán và đầy đủ của thiết kế trước khi thực hiện

Sự khác nhau giữa Simulink và Stateflow:

Simulink là mô hình thuần toán học (bao gồm nhiều phép toán để xử lý, đưa ra kết quả), được sử dụng để đáp ứng các thay đổi liên tục trong các thay đổi động

Với Simulink chúng ta có thể xây dựng mô hình mô phỏng của hệ thống giống như khi ta vẽ sơ đồ khối Tuy nhiên, cơ sở logic có điều kiện của nó còn thiếu Nếu bạn

sử dụng cấu trúc if nhiều lần nó sẽ nhanh chóng trở nên lộn xộn và rất phức tạp Các hệ thống trong thực tế phải đáp ứng với cả những thay đổi liên tục và tức thời

Sử dụng cả Simulink và Stateflow để bạn có thể sử dụng đúng công cụ cho đúng công việc

Trang 35

1.2.2 Các đối tượng có trong Stateflow

Hình 1.24: Các đối tượng có trong Stateflow 1.2.2.1 State

Một state mô tả một chế độ hoạt động của một hệ thống phản ứng (reactive system) Trong biểu đồ Stateflow, các state được sử dụng để tạo ra các biểu đồ chuyển đổi trạng thái Các state có thể hoạt động hoặc không hoạt động Hoạt động hoặc không hoạt động của một state có thể thay đổi tùy thuộc vào các sự kiện

và điều kiện

Các state có nhãn có thể chỉ định các hành động được thực hiện theo một trình tự dựa trên loại hành động Các loại hành động là entry, during, exit và on

Trang 36

1.2.2.2 Hệ thống phân cấp trong state

Để quản lý độ phức tạp của các state nhiều cấp, hãy sử dụng hệ thống phân cấp trong biểu đồ Stateflow của bạn Với hệ thống phân cấp, bạn có thể biểu diễn nhiều cấp thành phần con trong một hệ thống

Trong hình, State A sẽ là state nguồn của hai state con là StateA1 và StateA2

Hình 1.25: Phân cấp trong Stateflow 1.2.2.3 Sự phân chia trạng thái (State Decomposition)

Phân chia trạng thái có thể là kiểu độc nhất (OR) hoặc kiểu song song (AND)

Trạng thái độc nhất (OR)

Các trạng thái con có đường viền liền khối biểu thị trạng thái độc nhất (OR) Sử dụng OR để mô tả các chế độ hoạt động loại trừ lẫn nhau Khi một trạng thái có sự phân chia kiểu OR thì chỉ có một trạng thái con có thể hoạt động tại một thời điểm

Hình 1.26: Vị dụ trang thái độc nhất (OR)

Trang 37

Trạng thái song song (AND)

Các trạng thái con có đường viền đứt nét biểu thị sự phân chia song song (AND) Sử dụng sự phân chia này để mô tả các chế độ hoạt động đồng thời Khi một trạng thái có sự phân chia song song (AND), tất cả các trạng thái con đều hoạt động cùng một lúc

Hình 1.27: Ví dụ trạng thái song song (AND) 1.2.2.4 State labels

Nhãn cho một trạng thái xuất hiện ở góc trên cùng bên trái của hình chữ nhật trạng thái với định dạng chung sau:

 name;

 entry:entry actions;

 during:during actions;

 exit:exit actions;

 on event_name:on event_name actions;

 on message_name:on message_name actions;

 bind:events

Trang 38

Hình 1.28: Ví dụ State labels 1.2.2.5 State actions

Bạn nhập các câu lệnh hành động tùy chọn cho state với các từ khóa xác định loại hành động Bạn có thể chỉ định không, một số, hoặc tất cả chúng

Entry actions: Sẽ được thực thi khi một state hoạt động

Exit actions: được thực hiện khi một state đang hoạt động và sự chuyển đổi

ra khỏi trạng thái xảy ra

During actions: được thực thi khi một state đang hoạt động, một sự kiện nào

đó xảy ra nhưng không có chuyển đổi nào hợp lệ sang state khác hoặc state hiện tại đang hợp lệ

Bind actions: Bạn có thể liên kết dữ liệu và sự kiện với một state bằng cách

sử dụng bind action

1.2.2.6 Transition

Transition là một đường có đầu mũi tên liên kết một đối tượng đồ họa này với một đối tượng đồ họa khác Trong hầu hết các trường hợp, quá trình chuyển đổi thể hiện sự chuyển đổi của hệ thống từ chế độ (trạng thái) này sang chế độ (trạng thái)

Trang 39

khác Quá trình chuyển đổi thường kết nối đối tượng nguồn và đối tượng đích Đối tượng nguồn là nơi quá trình chuyển đổi bắt đầu và đối tượng đích là nơi quá trình chuyển đổi kết thúc

Hình 1.29: Ví dụ chuyển đổi giữa StateA1 với StateA2 1.2.2.7 Conditions (Điều kiện)

Một điều kiện là một biểu thức đúng hoặc sai xác định rằng một quá trình chuyển đổi xảy ra, với điều kiện là biểu thức được chỉ định là đúng Trong sơ đồ Stateflow tóm tắt thành phần, đại diện cho một biểu thức đúng hoặc sai, phải đúng

để quá trình chuyển đổi xảy ra

Hình 1.30: Ví dụ điều kiện chuyển đổi 1.2.2.8 Default transitions

Các Defaut Transition chỉ định state nào sẽ hoạt động khi có sự không rõ ràng giữa hai hoặc nhiều state duy nhất ở cùng cấp độ trong hệ thống phân cấp

Trang 40

Hình 1.31: Biểu tượng Default transitions 1.2.2.9 History junction

History Junction cung cấp phương tiện để chỉ định điểm đến của quá trình chuyển đổi dựa trên thông tin lịch sử trước đó Nếu state chính có History Junction, thì quá trình chuyển đổi sang state con đích được xác định là state con mà đã hoạt động gần đây nhất History Junction chỉ áp dụng cho state con mà trong đó state chính có History Junction

Hình 1.32: Ví dụ History Junction

Ngày đăng: 31/08/2023, 08:56

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

TÀI LIỆU LIÊN QUAN

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

w