TÓM TẮT Đồ án này tập trung vào việc nghiên cứu, thiết kế và chế tạo một mô hình điều khiển động cơ DC theo mô hình Rapid Control Prototype, một phương pháp tiếp cận giúp giảm thiểu thời
Nội dung ĐATN 50 Khả năng ứng dụng kiến thức toán học, khoa học và kỹ thuật, khoa học xã hội… 5
(Cơ sở lý luận, tính thực tiễn và khả năng ứng dụng của đồ án, các hướng nghiên cứu có thể tiếp tục phát triển)
4 Những thiếu sót và tồn tại của ĐATN:
TT Mục đánh giá Điểm tối đa Điểm đạt được
1 Hình thức và kết cấu ĐATN 30 Đúng format với đầy đủ cả hình thức và nội dung của các mục 10
Mục tiêu, nhiệm vụ, tổng quan của đề tài 10
Tính cấp thiết của đề tài 10
2 Nội dung ĐATN 50 Khả năng ứng dụng kiến thức toán học, khoa học và kỹ thuật, khoa học xã hội… 5
Khả năng thực hiện/phân tích/tổng hợp/đánh giá 10
Khả năng thiết kế chế tạo một hệ thống, thành phần, hoặc quy trình đáp ứng yêu cầu đưa ra với những ràng buộc thực tế 15
Khả năng cải tiến và phát triển 15
Khả năng sử dụng công cụ kỹ thuật, phần mềm chuyên ngành… 5
3 Đánh giá về khả năng ứng dụng của đề tài 10
4 Sản phẩm cụ thể của ĐATN 10
Không được phép bảo vệ
TP.HCM, ngày tháng năm 2024
(Ký, ghi rõ họ tên) i
LỜI CẢM ƠN Đề tài “Nghiên cứu, thiết kế, chế tạo mô hình mô hình điều khiển động cơ DC theo mô hình RCP (Rapid Control Prototype) của dSPACE” là nội dung mà nhóm em đã tìm hiểu và quyết định chọn làm đề tài đồ án tốt nghiệp sau thời gian theo học tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh Trong quá trình nghiên cứu và hoàn thiện đồ án, nhóm chúng em đã nhận được nhiều sự quan tâm, giúp đỡ từ quý thầy cô, anh chị và bạn bè
Góp phần tạo nên sự thành công của đồ án và giúp chúng em có thể bảo vệ một cách tốt nhất, chúng em không thể quên công ơn lớn lao của gia đình chúng em là hậu phương vững chắc, tạo động lực cho nhóm, chúng em xin gửi lời cảm ơn chân thành đến các Thầy,
Cô trường Đại học Sư phạm Kỹ thuật nói chung và khoa Cơ khí Động lực nói riêng đã tạo môi trường học tập vả rèn luyện tốt, chúng em xin cảm ơn chân thành đến Thầy, Cô ngành Công nghệ Kỹ thuật Ô tô đã dạy cho chúng em những kiến thức cơ sở và kỹ năng bổ ích giúp chúng em có thể áp dụng và thuận lợi thực hiện đồ án Không quên gửi lời cảm ơn đến các anh/bạn/em trong phòng thí nghiệm AML của Ths Nguyễn Trung Hiếu đã cùng nhau hỗ trợ thực hiện đồ án, giúp đỡ nhóm những lúc khó khăn trong quá trình thực hiện đồ án Và nhóm chúng em xin gửi lời cảm ơn đặc biệt đến Giảng viên hướng dẫn ThS Nguyễn Trung Hiếu là người thầy tâm huyết, đã tận tâm hướng dẫn, giúp đỡ nhóm chúng em trong suốt quá trình nghiên cứu và thực hiện đề tài Thầy đã truyền đạt những kinh nghiệm quý báu của mình để nhóm em không những có thể hoàn thành tốt đồ án tốt nghiệp này mà còn giúp định hướng công việc sau này Trong quá trình thực hiện đồ án không thể tránh khỏi những thiếu sót Chúng em mong nhận được sự góp ý của các Thầy Cô để chúng em có thể cải thiện và hoàn thành đồ án của mình hơn Nhóm chúng em xin chân thành cảm ơn! ii
TÓM TẮT Đồ án này tập trung vào việc nghiên cứu, thiết kế và chế tạo một mô hình điều khiển động cơ DC theo mô hình Rapid Control Prototype, một phương pháp tiếp cận giúp giảm thiểu thời gian, chi phí phát triển hệ thống thông qua việc thử nghiệm và hiệu chỉnh trực tiếp trên phần cứng Cụ thể, mô hình sẽ bao gồm 3 phần chính: Động cơ DC, Driver và thiết bị Real- time MicroAutoBox III của hãng dSPACE Ở dây, bộ MicroAutoBox III đóng vai trò như một bộ controller chạy thời gian thực, xuất tín hiệu điều khiển động cơ DC và cho phép chỉnh sửa trực tiếp các thông số điều khiển mô hình động cơ DC thông qua phần mềm Sau khi nghiên cứu kĩ mô hình thì nhóm sẽ bắt tay vào thiết kế thuật toán điều khiển động cơ
DC, sau đó cấu hình giao tiếp giữ động cơ DC với MicroAutoBox III bằng phần mềm ConfiguratioDesk, thiết kế giao diện người dùng để điều khiển và tối ưu các thông số điều khiển bằng ControlDesk Sau khi chuẩn bị xong thì tiến hành chạy thực nghiệm và đánh giá kết quả Ngoải ra, khai thác thêm một số chức năng I/O của bộ MicroAutoBox III như I/O Digital và Analog bằng cách chế tạo thêm module GPIO mở rộng Cuối cùng nhóm đưa ra kết luận và hướng phát triển của đề tài này trong tương lai iii
Danh mục các chữ viết tắt và kí hiệu vi
Danh mục các hình vii
Danh mục các bảng xii
1.1 Lý do chọn đề tài 1
1.2 Mục đích của đề tài 1
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 3
2.1.2 Model Based System Design (MBSD) 4
2.2.4 Phân loại động cơ DC 15
2.2.5 Điều khiển tốc độ động cơ DC 17
2.3 Tổng quan về xử lý tín hiệu điều khiển 17
2.3.1 Bộ lọc Kalman (Kalman Filter) 18 iv
2.3.2 Bộ lọc Median (Median Filter) 18
2.3.3 Lọc lấy tín hiệu tần số thấp (Low Pass Filter) 19
CHƯƠNG 3: THIẾT KẾ MÔ HÌNH ĐIỀU KHIỂN ĐỘNG CƠ DC THEO MÔ HÌNH RCP 20
3.1 Tổng quan mô hình RCP 20
3.1.2 Vai trò RCP trong kỹ thuật 20
3.2.1 Tổng quan về MicroAutoBox III 22
3.3 Mô hình động cơ DC thiết kế theo phương pháp RCP 61
3.3.1 Thông số động cơ DC 61
3.3.4 Thiết kế mô hình thực nghiệm của động cơ DC 65
3.3.5 Module mở rộng GPI/O cho bộ MicroAutoBox III 67
CHƯƠNG 4: THỰC NGHIỆM MÔ HÌNH ĐỘNG CƠ ĐIỆN DC 72
4.1 Xây dựng thuật toán điều khiển 72
4.1.1 Kiểm tra tín hiệu encoder 72
4.1.2 Mô hình bộ điều khiển tốc độ trên Simulink 75
4.1.3 Thuật toán điều khiển vị trí động cơ DC 81
4.2.1 Thiết lập giao tiếp với MicroAutoBox III 86
4.2.2 Kết nối động cơ DC với bộ MicroAutoBox III 95 v
4.2.3 Thiết kế giao diện điều khiển trên ControlDesk 98
4.3 Chạy thực nghiệm và đánh giá kết quả 100
4.3.1 Cho động cơ chạy với mức 500RPM tại lúc đầu 100
4.3.2 Dừng động cơ đột ngột và thay đổi chiều quay 101
4.3.3 Phân tích và so sánh đồ thị đo dòng Active Current 104
4.3.4 Cho động cơ quay đến vị trí 250 o từ vị trí 20 o ban đầu 105
4.3.5 Cho động cơ quay đến 180 o từ vị trí ban đầu (0 o ) 106
CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 108
5.2 Hướng phát triển đề tài 108
TÀI LIỆU THAM KHẢO 110 vi
Danh mục các chữ viết tắt và kí hiệu
MBSD Model Based System Design
MIL Model – in – the – Loop
SIL Software – in – the – Loop
PIL Processor – in – the – Loop
HIL Hardware – in – the – Loop vii
Hình 2.1 Quy trình thiết kế truyền thống 3
Hình 2.2 V-model và mô hình MBSD 5
Hình 2.3 Quy trình mô phỏng MIL 6
Hình 2.7 Trục của động cơ DC 10
Hình 2.8 Thiết bị đầu cuối gắn với motor của động cơ DC 11
Hình 2.9 Nam châm vĩnh cửu trong động cơ DC 12
Hình 2.10 Cuộn dây trong động cơ DC 12
Hình 2.11 Vị trí chổi than trong động cơ DC 13
Hình 2.13 Sơ đồ nguyên lý hoạt động của động cơ DC 14
Hình 2.14 Động cơ nam châm vĩnh cửu 15
Hình 2.15 Động cơ Shunt – Wound DC 16
Hình 2.16 Động cơ Series – Wound DC 16
Hình 2.17 Động cơ Compound – Wound DC 17
Hình 3.3 dSPACE MicroAutoBox III và các biến thể 23
Hình 3.4 Tổng quan ứng dụng MicroAutoBox III để phát triển ECU 25
Hình 3.5 Tổng quan ứng dụng MicroAutoBox III để phát triển hệ thống ADAS 26
Hình 3.6 Các Board I/O có sẵn cho MicroAutoBox III 27
Hình 3.7 Sơ đồ chức năng của board DS 1403 28
Hình 3.8 Thông số chi tiết của Board DS 1403 30
Hình 3.9 Tổng quan các cổng của Board xử lý DS 1403 (Mặt trước) 30
Hình 3.10 Các chân của đầu nối cấp nguồn 36
Hình 3.11 Cổng AETH của MicroAutoBox III theo từng phiên bản 36
Hình 3.12 Board DS 1513 với cổng kết nối ZIF 37 viii
Hình 3.13 Sơ đồ chức năng của các tính năng chính và kiểu kênh tín hiệu được hỗ trợ (DS
Hình 3.14 Tổng quan các chân I/O của Board DS 1513 (Mặt sau) 40
Hình 3.15 Vị trí các chân I/O của Board DS 1513 41
Hình 3.16 Cung cấp logic điện áp theo dải điện áp của ô tô 43
Hình 3.17 Cung cấp logic điện áp 5V 43
Hình 3.18 Nối mass cho cảm biến được cấp nguồn bởi VSEN 44
Hình 3.19 Nối mass cho cảm biến được cấp nguồn vởi VBAT 44
Hình 3.20 Nối mass cho tín hiệu Analog 45
Hình 3.21 Sơ đồ mạch đơn giản kênh Analog In 8 45
Hình 3.22 Thông số kênh Analog In 8 46
Hình 3.23 Sơ đồ mạch đơn giản kênh Trigger In 3 47
Hình 3.24 Thông số kênh Trigger In 3 47
Hình 3.25 Sơ đồ mạch đơn giản kênh Analog In 9 48
Hình 3.26 Thông số kênh Analog In 9 48
Hình 3.27 Sơ đồ mạch đơn gian kênh Analog Out 12 49
Hình 3.28 Thông số kênh Analog 12 49
Hình 3.29 Sơ đồ mạch điện của kênh Digital In 50
Hình 3.30 Thông số kênh kí hiệu Digital In 4 51
Hình 3.31 Sơ đồ mạch đơn giản kênh Digital Out 52
Hình 3.32 Thông số kênh kí hiệu Digital Out 4 53
Hình 3.33 Sơ đồ mạch đơn giản kênh CAN 4 54
Hình 3.34 Thống số kênh giao tiếp CAN 4 54
Hình 3.35 Sơ đồ mạch đơn giản kênh LIN 3 55
Hình 3.36 Thông số kênh giao tiếp LIN 3 55
Hình 3.37 Sơ đồ mạch đơn giản kênh UART 2 56
Hình 3.38 Thông số kênh giao tiếp UART 2 56
Hình 3.40 Tổng quan cách thức hoạt động của ConfigurationDesk 58
Hình 3.42 Giao diện và các thanh công cụ trên ConfigurationDesk 59 ix
Hình 3.44 Giao diện và các thanh công cụ của ControlDesk 60
Hình 3.45 Động cơ DC R02SAK0E 61
Hình 3.47 Sơ đồ kết nối phần cứng của Driver SHB700 63
Hình 3.49 Mô hình động cơ DC bản 2D 66
Hình 3.50 Tổng thể mô hình 66
Hình 3.51 Mô hình thực tế 67
Hình 3.52 Thiết kế ban đầu 68
Hình 3.53 Mô hình 3D của module với kích thước thực tế 69
Hình 3.54 Các chân của module Digital I/O 69
Hình 3.55 Các chân của module Analog I/O 70
Hình 3.56 Mô hình module GPIO thực tế 71
Hình 4.1 Mô hình đọc tín hiệu Encoder trên Simulink 72
Hình 4.2 Chỉ định các chân đọc Encoder 73
Hình 4.4 Tín hiệu vị trí đọc được từ encoder 74
Hình 4.5 Tín hiệu tốc độ đọc từ encoder 74
Hình 4.6 Thuật toán điều khiển trên Simulink 75
Hình 4.8 Thông số của các tín hiệu trong khối Encoder In 76
Hình 4.9 Thuật toán xử lý tín hiệu tốc độ trong khối Controller 77
Hình 4.10 Thông số của khối Saturation 77
Hình 4.11 Khối đưa ra giá trị điều khiển tốc độ và chiều quay 78
Hình 4.12 Thông số tín hiệu của khối PWM 79
Hình 4.16 Thông số khối Median Filter của Simulink 81
Hình 4.17 Tổng quan thuật toán điều khiển vị trí 81 x
Hình 4.18 Các khối ngắt, cổng logic và công tắc chuyển tín hiệu 82
Hình 4.19 Tính toán góc quay nhỏ nhất để đạt giá trị vị trí mong muốn nhanh hơn 82
Hình 4.20 Mô hình thuật toán hoàn chỉnh 83
Hình 4.21 Chọn loại target file cho mô hình Simulink 84
Hình 4.22 Lựa chọn Include signals để dễ dàng sử dụng sau khi tải ứng dụng 85
Hình 4.23 Thông tin phần cứng của bộ MicroAutoBox III trên phần mềm
Hình 4.24 Các thông số của khối Digital Incremental Encoder In 87
Hình 4.25 Các thông số của khối Digital Incremental Encoder In 88
Hình 4.26 Các thông số của khối Digital Incremental Encoder In 89
Hình 4.27 Thông số của hai khối PWM/PFM Out 91
Hình 4.28 Thông số khối Voltage In 93
Hình 4.29 Cập nhật các thay đổi sang Simulink 93
Hình 4.30 Tổng quan giao tiếp giữa driver và các khối 94
Hình 4.32 Tổng quan các chân Input và Output tín hiệu 95
Hình 4.33 Sơ đồ khối kết kết mô hình thực tế 96
Hình 4.34 Kết nối thực tế của mô hình và MicroAutoBox III 97
Hình 4.35 Giao diện điều khiển tốc độ động cơ DC trên ControlDesk 98
Hình 4.36 Giao diện điều khiển vị trí động cơ DC 99
Hình 4.37 Đồ thị của các bộ lọc tín hiệu và so sánh 99
Hình 4.38 Đồ thị vận hành động cơ DC tại mức 500 RPM 100
Hình 4.39 Chu kỳ xung tăng khi ghì động cơ 101
Hình 4.40 Đồ thị đáp ứng của động cơ khi thay đổi tốc độ và chiều quay đột ngột 102
Hình 4.41 Thời gian đáp ứng của hệ thống khi dừng động cơ đột ngột 103
Hình 4.42 Thời gian đáp ứng của hệ thống khi thay đổi từ 0 → -500 RPM 103
Hình 4.43 Đồ thị của ba bộ lọc tín hiệu 104
Hình 4.44 So sánh hiệu xuất lọc nhiễu 105
Hình 4.45 Giá trị sai số giữa Vị trí mong muốn và Vị trí thực tế 106
Hình 4.46 Đồ thị sai số 106
Hình 4.47 Đồ thị vận tốc 107 xii
Bảng 3.1 Chức năng từng cổng của Board xử lý 31
Bảng 3.2 Trạng thái các LED PWR, SYS, APP 32
Bảng 3.3 Chi tiết các LED Host, ETH và AETH 34
Bảng 3.4 Các trạng thái của LED Ethernet 34
Bảng 3.5 Miêu tả chức năng của từng tín hiệu Board DS 1513 42
Bảng 3.6 Thông số động cơ DC 61
Bảng 3.7 Thông số của Driver SHB 700 62
Bảng 3.8 Các chân kết nối nguồn, motor và Encoder 64
Bảng 4.1 Thiết lập chân giữa driver và MicroAutoBox 96
TỔNG QUAN
Lý do chọn đề tài
Trong thời đại với công nghệ hiện đại, phát triển, việc vận dụng điều khiển tự động trong các hệ thống cơ điện ngày càng trở nên cần thiết và phổ biến Tầm quan trọng của động cơ DC trong giai đoạn này càng được nhấn mạnh khi động cơ DC đóng vai trò là trái tim của nhiều ứng dụng trong công nghiệp, từ tự động hóa, robot đến hệ thống năng lượng tái tạo Hiểu và tối ưu hóa cơ chế điều khiển của động cơ DC là chìa khóa để nâng cao hiệu quả, độ tin cậy và hiệu suất trên nhiều lĩnh vực khác nhau
Hơn nữa, việc ứng dụng mô hình RCP mang lại góc nhìn mới mẻ trong lĩnh vực thiết kế, phát triển các thuật toán điều khiển Mô hình RCP cho phép chúng ta thu hẹp khoảng cách giữa các khái niệm lý thuyết và việc khiển trai chúng lên các mô hình thực tế Việc khai thác phương pháp này cho phép thích ứng nhanh chóng với các yêu cầu ngày càng cao và triển khai các giải pháp tiên tiến
Thêm vào đó, quá trình thực hiện đề tài này còn tạo cơ hội để làm việc cùng giảng viên và các chuyên gia trong lĩnh vực qua các project liên quan, từ đó học hỏi và tích lũy những kinh nghiệm thực tiễn và đánh giá từ những người có kinh nghiệm, giúp nhóm phát triển kỹ năng làm việc, xử lý vấn đề và giao tiếp hiệu quả
Tổng hợp lại, việc chọn đề tài này không chỉ phản ánh sự quan tâm và đam mê của nhóm với lĩnh vực điện tử và điều khiển, mà còn là một cơ hội để áp dụng kiến thức đã học vào thực tế, từ đó nâng cao kỹ năng và khả năng của bản thân.
Mục đích của đề tài
Hiểu rõ cấu tạo, các thông số kĩ thuật, cách vận hành, ưu điểm, nhược điểm và xu hướng phát triển của động cơ DC
Hiểu và có khả năng vận dụng phương pháp Model-Based System Design (MBSD) trong việc xây dựng, phát triển các ứng dụng cho ngành ô tô
Có khả năng vận hành thiết bị của hãng dSPACE: MicroAutoBox III
Dùng phần mềm Matlab/Simulink để thiết kế mô hình điều khiển động cơ DC và sử dụng thiết bị, phần mềm của hãng dSPACE để thực nghiệm
Luyện tập các kĩ năng sử dụng tài liệu, phần mềm MATLAB/Simulink và dSPACE
Phương pháp nghiên cứu
Nghiên cứu tổng hợp các tài liệu của hãng dSPACE về phần mềm, các thiết bị cần thiết để tìm hiểu về nguyên lí hoạt động và cách ứng dụng chúng vào quá trình điều khiển Tham khảo một số bài báo, đề tài về điều khiển động cơ DC có hướng thực hiện, tính năng tương tự như đề tài
Nghiên cứu và sử dụng phương pháp Rapid Control Prototyping (RCP) để thiết kế mô hình điều khiển động cơ DC.
Đối tượng nghiên cứu
Mô hình động cơ DC thiết kế theo phương pháp Rapid Control Prototype
Nghiên cứu và phân tích cơ sở lý thuyết động cơ DC và tính ứng dụng trong các lĩnh vực ô tô, công nghiệp,
Nghiên cứu và lập trình điều khiển động cơ DC bằng các phần mềm của Matlab/Simulink kết hợp với thiết bị của hãng dSPACE
Tiến hành thực nghiệm trên mô hình để đánh giá Đề xuất các hướng phát triển đề tài để cải tiến và tối ưu hóa mô hình động cơ DC phù hợp với ứng dụng thực tế
Chương 1: Tổng quan đề tài
Chương 2: Cơ sở lý thuyết
Chương 3: Thiết kế mô hình điều khiển động cơ DC theo mô hình RCP
Chương 4: Thực nghiệm mô hình động cơ điện DC
Chương 5: Kết luận và hướng phát triển
CƠ SỞ LÝ THUYẾT
V-Model
Quy trình thiết kế của hầu hết các dự án kỹ thuật đều trải qua bốn bước cơ bản theo trình tự: yêu cầu và thông số kỹ thuật, thiết kế, triển khai và thử nghiệm Tuy nhiên, quy trình này thường gặp phải một số hạn chế nhất định
Hình 2.1 Quy trình thiết kế truyền thống Trước hết, thông tin thiết kế được truyền tải và quản lý thông qua tài liệu văn bản Tuy nhiên, tài liệu văn bản thường khó hiểu và dễ dẫn đến sai sót khi giải thích Thêm vào đó, các thông số thiết kế này có thể thay đổi do được bổ sung hoặc chỉnh sửa trong quá trình thực hiện dự án Sự thay đổi này đòi hỏi phát triển và kiểm tra lại, tạo ra một vòng lặp (thay đổi yêu cầu, phát triển và thử nghiệm) không hiệu quả và thường ảnh hưởng đáng kể đến thời gian phát triển và thử nghiệm
Một hạn chế lớn khác là việc biên soạn code thủ công từ các tài liệu về yêu cầu thông số kỹ thuật Việc này vừa tốn thời gian, vừa dễ gây ra lỗi khi triển khai trên mô hình thực tế và rất khó để đảm bảo rằng các thay đổi được thực hiện chính xác
Cuối cùng, trong cách tiếp cận thiết kế “thủ công” truyền thống này, việc tạo ra mẫu thử nghiệm trong giai đoạn phát triển ban đầu rất khó khăn và tốn kém Do các giai đoạn ở phía sau trong hướng phát triển truyền thống này chỉ có thể được thực hiện khi các giai
4 đoạn trước đã hoàn thành nên các lỗi thiết kế và yêu cầu thường chỉ được phát hiện muộn trong chu trình thiết kế, gây ra chậm trễ, tốn kém và thậm chí là phải bắt đầu quy trình phát triển lại từ đầu
2.1.2 Model Based System Design (MBSD)
Model Based System Design, hay thiết kế hệ thống dựa trên mô hình khắc phục những khó khăn và thiếu sót của cách tiếp cận truyền thống Thay vì sử dụng các tài liệu kỹ thuật mơ hồ, phương pháp này sử dụng các mô hình toán học được xây dựng từ các khối cấp hệ thống
Với phương pháp này, việc thiết kế có thể được mô phỏng và tinh chỉnh liên tục cho đến khi đáp ứng được các yêu cầu Sau khi thiết kế được tối ưu và kiểm thử, các kỹ sư có thể tự động tạo code từ mô hình đó, loại bỏ nhu cầu viết code thủ công và tránh được các lỗi phát sinh từ quá trình này
Kiểm thử và xác nhận kết quả được thực hiện liên tục trong suốt quá trình phát triển bằng cách tích hợp các bài kiểm tra vào mô hình ở mọi giai đoạn Việc kiểm chứng và mô phỏng liên tục này giúp phát hiện sớm các lỗi tại thời điểm các lỗi này dễ khắc phục và ít tốn kém hơn Phương pháp này thường được minh họa bằng quy trình thiết kế hình chữ V (hay V-Model) Điểm nối bật của V-Model là sử dụng mô phỏng xuyên suốt tất cả các giai đoạn của thiết kế: từ mô phỏng ở giai đoạn đầu (giai đoạn yêu cầu) đến mô phỏng thời gian thực (real-time) để tạo mẫu thử và thiết kế điều khiển nhanh chóng, và để kiểm thử và xác nhận thông qua một quy trình trong phương pháp Model Based System Design là Hardware – in – the – Loop (Mô phỏng phần cứng trong vòng lặp kín) Do đó, vòng lặp xác định yêu cầu, thiết kế, triển khai và kiểm thử được đẩy nhanh đáng kể
Hình 2.2 V-model và mô hình MBSD Modelling (Mô hình hóa), Simulation (Mô phỏng), Validation (Đánh giá kết quả) là
3 yếu tố chính của MBSD Ngoài ra khi ứng dụng phương pháp này, kỹ sư sẽ có lợi thế về phần viết code vì phương pháp này có sử dụng các phần mềm hỗ trợ chức năng tự tạo code (Auto Code Generation) Ở bước mô hình hóa, các kỹ sư phải biểu diễn hệ thống dưới dạng mô hình toán học Khi đã mô hình hóa xong hệ thống, tiến hành kiểm tra bằng mô phỏng và đánh giá đầu ra nhiều lần trước khi đến phần tự động tạo code (quá trình này còn được gọi là MIL – Model- in-the-Loop) Sau khi hoàn thành kiểm tra mô hình thì phần code sẽ được tạo bằng các công cụ như Simulink Coder, Ecoder, AUTOSAR ERTL,
Tại phần mô phỏng hệ thống (Simulation), kỹ sư sẽ quan sát xem phần cứng hoăc phần mềm có thể thực hiện được các tác vụ chỉ định sẵn với phần code vừa được tạo hay không Ở bước xác thực (Validation) của phương pháp MBSD, hệ thống cần phải trải qua bốn giai đoạn kiểm tra khác nhau bao gồm: Software acceptance test, Hardware in the loop (HIL), Model in the loop (MIL) và Software in the loop (SIL)
Trong phương pháp MBSD, bước đầu tiên được sử dụng là mô phỏng phần mềm trong vòng lặp (MIL) Tại giai đoạn này, các kỹ sư tạo ra các mô hình mô phỏng của cả hệ thống (đối tượng điều khiển) và bộ điều khiển của hệ thống đó Sau khi xây dựng các mô
6 hình này, tiến hành chạy mô phỏng để kiểm tra xem hệ thống sẽ hoạt động như thế nào trong thực tế Giai đoạn này thực hiện hoàn toàn trên máy tính mà không cần sử dụng bộ điều khiển hay đối tượng điều khiển thực nào
Hình 2.3 Quy trình mô phỏng MIL MIL thưởng được sử dụng trong giai đoạn đầu, quá trình này cho phép các kỹ sư kiểm tra hiệu suất dự đoán của hệ thống và thiết kế các thuật toán điều khiển trong môi trường mô phỏng an toàn Nói cách khác, MIL tạo ra môi trường ảo để thử nghiệm các thuật toán điều khiển khác nhau bằng cách sử dụng các mô hình của hệ thống và bộ điều khiển thực tế Điều này giúp xác định các chức năng và thành phần của hệ thống trước khi chế tạo Để đảm bảo mô hình mô phỏng chính xác so với thực tế, các kỹ sư có thể sử dụng các mức độ phức tạp khác nhau của mô hình
2.1.2.2 Software – in – the – Loop (SIL)
Software – in – the – Loop là bước tiếp theo trong quy trình MBSD Ở giai đoạn này, thay vì sử dụng các khối điều khiển được mô phỏng thì các kỹ sư nghiên cứu sẽ sử dụng code được tạo từ mô hình Phần code này được tạo tự động, các kỹ sư có thể linh hoạt lựa chọn ngôn ngữ lập trình (C, C++,VHDL,…) Phần code được tạo sẽ trở thành một thư viện có thể tái sử dụng, được tích hợp lại vào mô hình bằng các hàm tùy chỉnh (chẳng hạn như S-function trong Simulink)
Mục đích của giai đoạn này là hướng đến việc mô phỏng nhanh hơn do thay thế các khối mô phỏng bằng phần code được tạo từ mô hình và khả năng xác minh xem phần code được tạo đó có hoạt động giống hệt với mô hình gốc hay không Nói cách khác, giai đoạn này đảm bảo thuật toán điều khiển hoạt động theo cùng một cách trong cả mô phỏng và trong bộ điều khiển thực tế
Động cơ điện DC
2.2.1 Khái niệm Động cơ một chiều DC (Direct Current Motors) là động cơ điều khiển điện áp 1 chiều Đầu ra của đông cơ thường gồm hai dây (dây nguồn - VCC và dây nối đất - GND) DC motor là động cơ quay một chiều với cơ năng quay liên tục Động cơ DC sẽ bắt đầu quay khi cung cấp năng lượng cho nó, chuyển hoá điện năng thành cơ năng Hầu như đa số các động cơ DC sẽ quay với cường độ RPM rất cao ( số vòng quay/ phút) 1000 RPM đến 40.000 RPM là tốc độ không tải của động cơ DC nếu không giảm tốc
Stator là bộ phận đứng yên tạo ra một từ trường đứng yên bao quanh rotor, điều khiển rotor và các thiết bị đầu cuối là nguồn cung cấp điện cho stator Từ trường này được tạo bởi một hay nhiều cặp năm châm vĩnh cửu hoặc nam châm điện Các loại động cơ DC khác nhau được phân biệt bởi cấu trúc của stator hoặc cách kết nối cuộn dây điện từ với nguồn điện
Rotor hay còn gọi là phần ứng là phần lõi có khả năng chuyển động quay và liên tục được cấu tạo từ một hoặc nhiều cuộn dây quấn lại tạo thành nam châm điện, được làm bằng nhiều đĩa, cách nhiệt với nhau bằng các tấm nhiều lớp Mục đích của việc nhiều đĩa là để ngăn chặn việc tạo ra một dòng điện xoáy lớn Hiệu quả động cơ càng cao khi các đĩa của rotor càng nhỏ
Trục của động cơ DC nằm chính giữa trung tâm và được bao quanh bởi các bộ phận khác Nguyên liệu tạo nên trục của động cơ DC thường là các kim lại cứng và được gắn chặt bởi các bộ phận khác
Hình 2.7 Trục của động cơ DC
Các bộ phận của thiết bị đầu cuối có khả năng tháo lắp dễ dàng và gắn chặt mục đích của việc này là để bảo vệ, cách ly động cơ DC với môi trường bên ngoài Mỗi động cơ DC đều có hai thiết bị đầu cuối là dương và âm
Khi dây dương (+) kết nối với thiết bị đầu cuối dương, dây âm (-) kết nối với thiết bị đầu cuối âm thì động cơ sẽ quay theo chiều kim đồng hồ và ngược lại
Các thiết bị đầu cuối cung cấp nguồn điện cho động cơ và được kết nối với chổi than Cánh tay chổi than trong nắp lưng để động cơ có thể hoạt động bình thường và liên tục
Hình 2.8 Thiết bị đầu cuối gắn với motor của động cơ DC
Hầu hết các động cơ DC đếu sử dụng nam châm vĩnh cửu Chúng sẽ bao quanh thành hình tròn với các miếng đều nhau, bao bọc bởi rotor và cố định bới các cuộc dây quấn đều
Hình 2.9 Nam châm vĩnh cửu trong động cơ DC
Thông thường, mỗi động cơ DC sẽ có tối thiểu 3 cuộn dây để đảm bảo sự hoạt động hiệu quả và nhanh nhạy vì nếu động cơ có 2 cuộn dây thì dễ xảy ra tình trạng kẹt và dừng động cơ Mỗi loại dây tạo ra một từ trường yếu khi điện đi qua nó nhưng khi kết hợp với tất cả các cuộn dây khác sẽ vòng quay của nó sẽ trở nên mượt và tạo ra từ trường mạnh hơn
Hình 2.10 Cuộn dây trong động cơ DC
Tuỳ vào mục đích sử dụng và nhu cầu khác nhau, động cơ DC có 2 loại là có chổi than và không có chổi than Tuy cách thức hoạt động của mỗi loại động cơ DC khác nhau nhưng cùng một mục tiêu là tạo ra từ trường và làm rotor quay
Chổi than của động cơ DC cung cấp cho các cuộn dây nguồn điện, là những mảnh kim loại có cách thức hoạt động như lò xo, vật liệu làm ra chổi than là carbon – một vật liệu dẫn điện tốt Các chổi than được trực tiếp kết nối với các thiết bị đầu cuối hoặc nguồn cung cấp điện cho động cơ
Hình 2.11 Vị trí chổi than trong động cơ DC
Bộ chuyển đổi được làm bằng các tấm đồng nhỏ gắn trên trục và xoay khi trục xoay Khi rotor quay các cực của nguồn điện cung cấp cho cuộn dây sẽ bị thay đổi Mỗi cuộn dây kết nối với hai bộ chuyển đổi, chúng được kết nối với nhau bởi các cuộn dây và cách ly điện với nhau
Hình 2.13 Sơ đồ nguyên lý hoạt động của động cơ DC Hầu hết đa số các động cơ điện đều tạo ra moment xoắn bằng cách xen kẽ cực tính của nam châm quay gắn với rotor và nam châm tĩnh gắn trên stator Khi những cuộn dây của rotor được cấp điện, chúng sẽ tạo ra một từ trường, Các cực từ của từ trường rotor này sẽ bị hút về các cực đối diện do stator tạo ra, làm cho rotor quay
2.2.4 Phân loại động cơ DC Động cơ nam châm vĩnh cửu Động cơ nam châm vĩnh cửu (PMDC – Permanent Magnet DC) là động cơ phổ biến nhất trên thế giới Động cơ sử dụng nam châm vĩnh cửu tạo từ trường tĩnh Động cơ nam châm vĩnh cửu được sử dụng phổ biến cho các thiết bị có công suất dưới 1 mã lực vì nó ít tốn chi phí hơn so với stator có cuộn dây Tuy nhiên, nhược điểm lớn nhất của động cơ nam châm vĩnh cửu là nam châm bị mất từ tính theo thời gian Để khắc phục tình trạng này một số động cơ có tích hợp cuộn dây bên trong Đối với động cơ nam châm vĩnh cửu, đường đặc tính hiệu suất (điện áp và tốc độ) là đường tuyến tính Dòng điện cũng thay đổi tuyến tính theo moment xoắn Các động cơ này phản hồi rất nhanh với những thay đổi về điện áp do từ trường tĩnh luôn ổn định
Hình 2.14 Động cơ nam châm vĩnh cửu Động cơ Shunt-Wound DC (SHWDC) Động cơ chổi than Shunt-wound DC là một loại động cơ chổi than có cuộn dây kích từ được nối song song với phần ứng nên dòng điện bên trong cuộn dây thấp hơn Dòng điện trong cuộn từ và phần ứng hoạt động độc lập với nhau vì thế khả năng điều khiển tốc độc của động cơ này rất tốt Động cơ Shunt – Wound DC được sử dụng cho các thiết bị có yêu cầu công suất từ 5 mã lực trở lên Hiện tượng mất từ tính không phải là vấn đề đối với động cơ SHWDC nên chúng đáng tin cậy hơn động cơ PWDC
Tổng quan về xử lý tín hiệu điều khiển
Trong quá trình điều khiển hệ thống, việc các tín hiệu trả về từ cảm biến hay các thiết bị đo lường bị nhiễu thường xuyên xảy ra Để đảm bảo độ chính xác, các tín hiệu trả về thường sẽ phải qua một bộ lọc nhiễu để bỏ bớt các tín hiệu gây nhiễu
2.3.1 Bộ lọc Kalman (Kalman Filter)
Bộ lọc Kalman được phát triển bởi Rudolf E.Kalman phát triển vào năm 1960, là một thuật toán lọc tối ưu dùng để ước lượng trạng thái của một hệ thống động trong thời gian thực dựa vào đo lường nhiễu hàng loạt Bộ lọc này được ứng dụng nhiều trong các hệ thống điều khiển, dẫn đường, xử lý tín hiệu để làm mượt tín hiệu nhiễu và theo dõi các quá trình thay đổi theo thời gian
Các khái niệm chính của bộ lọc này bao gồm véc-tơ trạng thái (xK) đại diện cho trạng thái của hệ thống tại thời điểm nhất định, véc-tơ đo lường (zK) đại diện cho dữ liệu quan sát được liên quan đến véc-tơ trạng thái Dự đoán (Prediction) là quá trình ước lượng trạng thái tiếp theo của hệ thống dựa vào trạng thái hiện tại và mô hình động học của hệ thống Cuối cùng là cập nhật (Correction), tinh chỉnh ước lượng trạng thái sử dụng dữ liệu đo lường mới Ưu điểm của bộ lọc Kalman là sự tối ưu cho các hệ thống tuyến tính với nhiễu Gaussian, tính toán hiệu quả bằng cách xử lý đệ quy và có thể xử lý các hệ thống đa chiều Nhược điểm là bộ lọc này có thể hoạt động không tốt với các hệ thống phi tuyến tính và yêu cầu mô hình chính xác về nhiễu quá trính và đo lường
2.3.2 Bộ lọc Median (Median Filter)
Bộ lọc median là một kỹ thuật lọc số không tuyến tính, thường được sử dụng để loại bỏ nhiễu từ hình ảnh hay tín hiệu Phương pháp lọc này đặc biệt hiệu quả trong việc loại bỏ nhiễu xung, các đột biến bất ngờ trong dữ liệu tín hiệu
Median Filter bao gồm hai khái niệm chính là Median (trung vị) hay giá trị ở giữa trong một danh sách các số được sắp xếp Trong ngữ cảnh của lọc, median chính là giá trị tách biệt nửa trên và nửa dưới của dữ liệu trong một cửa sổ xác định Khái niệm còn lại là bộ lọc không tuyến tính Không giống như các bộ lọc tuyến tính (chẳng hạn như bộ lọc trung bình), bộ lọc median không dựa vào sự kết hợp tuyến tính của các giá trị đầu vào Cách thức hoạt động của bộ lọc Median như sau:
• Chọn cửa sổ: một cửa sổ (kernel) có kích thước xác định (3,5,7…) và kích thước phải là một số lẻ Cửa sổ này sẽ trượt qua từng điểm mẫu trong dữ liệu đầu vào
• Sắp xếp: đối với mỗi vị trí của cửa sổ, các giá trị của điểm mẫu trong cửa sổ được sắp xếp theo thứ tự tăng dần
• Tính toán trung vị: sau khi sắp xếp xong thì giá trị trung vị đã được xác định
• Thay thế: điểm mẫu trung tâm trong cửa sổ sẽ được thay thế bằng giá trị trung vị
Bộ lọc này có ưu điểm là loại bỏ hiệu quả nhiễu và các giá trị ngoại lai mà không làm mất chi tiết đặc trưng của tín hiệu Nhược điểm của lọc median chính là việc phép tính toán trung vị có thể phức tạp với cửa sổ có kích thước lớn Bộ lọc median có thể không hiệu quả với nhiễu Gaussian và các loại nhiễu không có tính chất xung
2.3.3 Lọc lấy tín hiệu tần số thấp (Low Pass Filter)
Bộ lọc Low Pass là bộ lọc cơ bản trong xử lý tín hiệu, cho phép các tín hiệu với tần số thấp hơn mức tần số cắt (Cutoff Frequency) đặt trước đi qua và làm suy giảm các tín hiệu có tần số cao hơn tần số cắt
Các khải niệm chính của bộ lọc này là tần số cắt (fc), là tần số mà tại đó bộ lọc bắt đầu suy giảm các tín hiệu có tần số cao hơn Các tần số dưới ngưỡng này đi qua với suy giảm tối thiểu Dải thông (Pass band) là dải tần số được phép đi qua bộ lọc với suy giảm tối thiểu Dải chặn (Stop band) là dải tần số bị bộ lọc làm suy giảm đáng kể Dải chuyển (Transition band) là dải tần số giữa dải thông và dải chặn, nơi mức suy giảm tăng dần Các bộ lọc Low Pass
− Lọc Low Pass Analog: được triển khai bằng các thành phần analog như điện trở, tụ điện và cuộn cảm
− Bộ lọc Low Pass số: được triển khai bằng các thuật toán số và kỹ thuật xử lý tín hiệu
▪ Bộ lọc FIR (Finite Impulse Response): có đáp ứng xung hữu hạn, ổn định và có đặc tính pha tuyến tính
▪ Bộ lọc IIR (Infinite Impulse Response): có đáp ứng xung kéo dài vô hạn lý thuyết, hiệu quả hơn về tài nguyên tính toán nhưng có thể gặp vấn đề ổn định và pha không tuyến tính
Bộ lọc Low Pass thường được dùng để lọc tín hiệu cảm biến và loại bỏ các thành phần tần số cao không mong muốn
THIẾT KẾ MÔ HÌNH ĐIỀU KHIỂN ĐỘNG CƠ DC THEO MÔ HÌNH RCP
Tổng quan mô hình RCP
Rapid Control Protyping là một phương pháp rất hiệu quả để phát triển, tối ưu hoá và thử nghiệm các chiến lược điều khiển mới trong môi trường thực nghiệm một cách nhanh chóng mà không cần lập trình thủ công Mục đích của RCP để giảm thời gian phát triển các hệ thống điều khiển phức tạp RCP được sử dụng rộng rãi trong nhiều ngành công nghiệp và giúp cải thiện hiệu quả chi phí của việc nghiên cứu và phát triển các sản phẩm đổi mới Hệ thống RCP được các nhà sản xuất xe sử dụng trong giai đoạn tiền phát triển và các nhà cung cấp trong ngành trong quá trình phát triển tiêu chuẩn của bộ phận truyền động
3.1.2 Vai trò RCP trong kỹ thuật
RCP là một quy trình giúp cho kỹ sư nhanh chóng thiết kế, thử nghiệm, xác minh và lặp lại các thuật toán điều khiển trên máy tính chạy mô phỏng thời gian thực với các thiết bị đầu vào/ đầu ra hoặc các card giao tiếp
Hình 3.1 Quy trình RCP Quy trình RCP được thể hiện ở hình trên, RCP khác với HIL ở chỗ thuật toán điều khiển được mô phỏng theo thời gian thực và hệ thống điều khiển là hệ thống thực RCP là một phương pháp điển hình trong việc tìm lỗi sai ngay từ đầu để tiết kiệm thời gian và chi phí đồng thời nâng cao chất lượng tổng thể Để điều chỉnh là xác nhận toàn bộ quy trình chẳng hạn như điều khiển điện tử công suất, truyền động điện và thuật toán điều khiển hệ thống điện nó cung cấp khả năng cung cấp thực thi thời gian thực dễ dàng cho thiết kế bằng các công cụ hiệu quả Trong các bộ điều khiển động cơ và hộp số, rất khó và tốn thời gian để sửa đổi dễ dàng Đó là một lý do đơn giản khác để sử dụng RCP
RCP được áp dụng trong nhiều ngành công nghiệp như ô tô, đường sắt, hàng không vũ trụ, năng lượng, tự động hoá công nghiệp,…Đối với nghiên cứu và phát triển, RCP là một công cụ mạnh mẽ để trình diễn công nghệ, nó có thể thực hiện ngay cả ở giai đoạn đầu của dự án, mà không cần lập trình hoặc triển khai công việc phức tạp
Ngoài ra, có thể sử dụng giả lập hoặc trên máy tính chạy mô phỏng thời gian thực để nhận dạng trong vòng lặp (IIL) làm mô hình thực để so sánh với mô hình được đề xuất Phương pháp này được hiển thị trong hình 3.2, mã được triển khai cho cả hai phần của mô
22 phỏng, hệ thống điều khiển và mô hình trong mô phỏng thời gian thực Các tham số mô hình được điều chỉnh và xác minh bằng giao tiếp Ethernet
dSPACE MicroAutoBox III
3.2.1 Tổng quan về MicroAutoBox III dSPACE MicroAutoBox III là hệ thống phát triển thời gian thực được thiết kế để có thể tạo mẫu thử nhanh chóng và thử nghiệm các hệ thống điều khiển ô tô Sản phẩn này được sử dụng chủ yếu trong nghiên cứu và phát triển các chức năng như lái xe tự động, hệ thống hỗ trợ người lái tiên tiến (ADAS) và kiểm soát động lực của xe
Bộ MicroAutoBox III có kích thước nhỏ gọn nhưng lại có sức mạnh xử lý cao, chính vì vậy mà thiết bị này phù hợp để sử dụng trên xe trong giai đoạn nghiên cứu, phát triển Thiết bị có nhiều cổng I/O để kết nối với cảm biến, bộ truyền động và các bộ phận khác, cho phép kỹ sư mô phỏng và kiểm tra các thuật toán điều khiển của họ trong môi trường thực tế
Hình 3.3 dSPACE MicroAutoBox III và các biến thể
Một số đặc điểm chính của MicroAutoBox III:
− Bộ xử lý: MicroAutoBox III được trang bị bộ xử lý đa lõi hiệu xuất cao (vi xử lý họ
ARM), đảm bảo khả năng xử lý thời gian thực cho các ứng dụng điều khiển phức tạp
• RAM: cung cấp đủ dung lượng RAM để xử lý các mô hình phức tạp và dữ liệu lớn
• Bộ nhớ Flash: Lưu trữ chương trình và dữ liệu một cách bền bỉ
• CAN: hỗ trợ CAN với tốc độ lên đến 1Mbps, chuẩn CAN 2.0A/B
• LIN: Hỗ trợ LIN cho giao tiếp với các thiết bị phụ trợ
• FlexRay: Hỗ trợ giao tiếp FlexRay tốc độ cao, thường được sử dụng trong các hệ thống yêu cầu độ tin cậy cao
• Ethernet: Hỗ trợ kết nối Ethernet tốc độ cao, bao gồm 100Mbps và Gigabit
Ethernet Cho phép truyển dữ liệu nhanh và kết nối mạng
• Analog I/O: Cung cấp các kênh đầu vào/ đầu ra tương tự với độ phân giải cao (16bit), cho phép đo lường và điều khiển chính xác các tín hiệu tương tự
• Digital I/O: Nhiều kênh đầu vào và đầu ra digital để giao tiếp với các thiết bị số
• PWM: Hỗ trợ các kênh điều chế độ rộng xung để điều khiển các thiết bị khác
− Nguồn điện: Dải điện áp đầu vào rộng, thường từ 6 V đến 36 V, phù hợp với các nguồn điện trên xe
− Kích thước và trọng lượng: Bộ MicroAutoBox III có thiết kế nhỏ gọn, nhẹ nhàng và bền bỉ, phù hợp để lắp đặt trong không gian hạn chế của các phương tiện di chuyển
Tính năng cụ thể của MicroAutoBox III:
− Thử nghiệm thời gian thực: Khả năng xử lý thời gian thực cho phép kiểm thử các thuật toán điều khiển trực tiếp trên xe, giúp nhanh chóng phát triển và sửa lỗi trong quá trình phát triển
− Ghi dữ liệu và chẩn đoán: MicroAutoBox III có thể ghi lại dữ liệu từ các cảm biến và hệ thống điều khiển, giúp chẩn đoán và phân tích hiệu suất hệ thống Các công cụ phần mềm đi kèm cho phép phân tích dữ liệu chi tiết và trực quan
− Tích hợp mô hình hóa và mô phỏng: Hỗ trợ tích hợp với MATLAB/Simulink, cho phép triển khai các mô hình điều khiển trực tiếp lên thiết bị Điều này giúp giảm thời gian phát triển và tăng tính chính xác của các mô hình
− Tương thích với các công cụ của dSPACE:
• ControlDesk: Giám sát và điều khiển thời gian thực, cung cấp giao diện người dùng trực quan để tương tác với hệ thống
• ConfigurationDesk: Cấu hình phần cứng và phần mềm dễ dàng, giúp tạo quản lý các dự án một cách hiệu quả
− Khả năng mở rộng và tùy biến: MicroAutoBox III hỗ trợ nhiều tùy chọn mở rộng, cho phép thêm các module I/O hoặc các giao diện truyền thông theo yêu cầu cụ thể của dự án
Sau đây là một số vị dụ về việc sử dụng bộ MicroAutoBox III trong các dự án phát triển và kiểm thử trong nghành công nghiệp ô tô hiện nay:
3.2.2.1 Phát triển hệ thống kiểm soát động cơ (Engine Control Unit – ECU)
Sử dụng MATLAB/Simulink để tạo các mô hình điều khiển động cơ, sau đó tải lên MicroAutoBox III và cài đặt thiết bị trong xe để kiểm thử thời gian thực Sau đó bộ MicroAutoBox ghi lại dữ liệu từ các cảm biến động cơ như cảm biến vị trí trục khuỷu, cảm biến nhiệt độ và cảm biến oxy
Sử dụng ControlDesk để phân tích dữ liệu và tối ưu hóa các thông số điều khiển, đảm bảo động cơ hoạt động hiệu quả hơn để đáp ứng được mục tiêu tối ưu hóa hiệu suất động cơ và giảm tiêu thụ nhiên liệu, phát thải
Hình 3.4 Tổng quan ứng dụng MicroAutoBox III để phát triển ECU
3.2.2.2 Hệ thống hỗ trợ lái xe tiên tiến (Advanced Driver Assistance System – ADAS)
Bộ MicroAutoBox III sẽ tải xuống các mô hình thuật toán ADAS được mô phỏng bởi MATLAB/Simulink, sau đó được cài đặt trên xe với các cổng I/O sẽ nối với các cảm biến cần thiết
Sau khi cài đặt xong thì sẽ tiến hành chạy thực nghiệm để đánh giá hiệu suất của hệ thống ADAS Ngoài ra, MicroAutoBox III còn ghi lại dữ liệu từ các cảm biến radar, LIDAR và camera, sau đó sử dụng ControlDesk để phân tích và điều chỉnh thuật toán, từ đó đưa ra các hệ thống hỗ trợ lái xe như phanh tự động (AEB), hệ thống kiểm soát hành trình thích ứng (ACC) và giữ làn đường (LKA)
Hình 3.5 Tổng quan ứng dụng MicroAutoBox III để phát triển hệ thống ADAS
3.2.2.3 Kiểm thử và xác minh hệ thống truyền động
Mục tiêu là đảm bảo hệ thống truyền động hoạt động hiệu quả, êm ái và an toàn Trước khi đem MicroAutoBox cài đặt lên xe thực, MicroAutoBox sẽ được kết nối với một mô hình truyền động mô phỏng để kiểm thử các thuật toán điều khiển (quy trình này được gọi là mô phỏng và kiểm thử HIL – Hardware in the Loop như đã đề cập ở chương 2)
Kiểm thử trên xe: Cài đặt bộ MicroAutoBox III trên xe và kiểm tra hệ thống truyền động trong các điều kiện vận hành khác nhau Sau đó thu thập và phân tích dữ liệu về tốc độ, mô men xoắn, hiệu suất truyền động để xác định các vấn đề và tối ưu hóa hệ thống
Mô hình động cơ DC thiết kế theo phương pháp RCP
3.3.1 Thông số động cơ DC Động cơ DC nhóm dùng để điều khiển là Minertia Motor RM Series dòng R02SAK0 có sẵn Encoder bên trong Các thông số kỹ thuật của động cơ được liệt kê như trong bảng
Bảng 3.6 Thông số động cơ DC
Peak rated torque (oz.in) 150
Max safe operating speed (rpm) 4000
Max no load speed (rpm) 5000
Hình 3.45 Động cơ DC R02SAK0E
Driver dùng để điều khiển động cơ DC là driver SHB 700 do CircleTech sản xuất, các thông số của driver được cung cấp ở bảng sau
Bảng 3.7 Thông số của Driver SHB 700
63 Hình 3.47 Sơ đồ kết nối phần cứng của Driver SHB700
Bảng 3.8 Các chân kết nối nguồn, motor và Encoder
+ Nguồn dương cấp cho mạch từ 12-30V
- Nguồn âm cấp cho mạch 0V
M1 Cấp nguồn dương cho động cơ
M2 Cấp nguồn âm cho động cơ
5V Nguồn dương 5V cấp cho encoder
GND Nguồn âm 0V cấp cho encoder
ENA Tín hiệu encoder kênh A
ENB Tín hiệu encoder kênh B
ENZ Tín hiệu encoder kênh Z
Ngoài ra các tín hiệu để giao tiếp với bộ điều khiển (Control Input) bao gồm:
• 5V: Nguồn dương 5V cấp cho bộ điều khiển
• GND: Nguồn âm 0V cấp cho bộ điều khiển
• VIN_SENSE: Tín hiệu phản hồi điện áp đầu vào
• CURR_SENSE: Tín hiệu phản hồi dòng điện
• SD_L: Tín hiệu cho phép điều khiển motor quay 1 chiều thuận
• PWM_L: Tín hiệu xung điều khiển motor quay chiều thuận
• SD_R: Tín hiệu cho phép điều khiển motor quay 1 chiều nghịch
• PWM_R: Tín hiệu xung điều khiển motor quay chiều nghịch
Hình 3.48 Nguồn tổ ong 12V – 10A Nhóm sử dụng nguồn tổ ong có điện áp đầu vào từ 100-240V AC tại 50 – 60 Hz với công suất 120W, điện áp ra được duy trì ở mức không đổi 12V, dòng 10A
3.3.4 Thiết kế mô hình thực nghiệm của động cơ DC Để thuận tiện cho việc lắp ráp và bố trí mô hình thực tế, nhóm đã vẽ mô phỏng mô hình của động cơ DC bằng phần mềm SolidWorks
66 Hình 3.49 Mô hình động cơ DC bản 2D
Hình 3.50 Tổng thể mô hình
Hình 3.51 Mô hình thực tế
3.3.5 Module mở rộng GPI/O cho bộ MicroAutoBox III
GPIO (General Purpose Input Output Pins) là vi điều khiển các board mạch Hệ thống GPIO này sẽ tương tác với bên ngoài thông qua các chân Analog, Digital, Power của chúng Các chân này được nối với cảm biến với mục đích theo dõi, đo đặc tính môi trường hoặc có nhiệm vụ đóng ngắt các thiết bị điều khiển Trong các nền tảng phần cứng, các chân IO đóng vai trò vô cùng quan trọng vì chúng đem lại khả năng mở rộng của thiết bị
Mục đích của việc xây dựng mô hình module GPIO là để mở rộng các cổng IO của bộ MicroAutobox III ra ngoài để dễ dàng cho việc quan sát và điều khiển tín hiệu
• 1 chân GND cho Digital Input và 1 chân GND cho Digital Output
• 4 chân tín hiệu Analog Input được tích hợp sẵn với 4 biến trở
• 4 chân tín hiệu Analog Output
• 1 chân GND cho Analog Input và 1 chân GND cho Analog Output
• 1 header 4 chân ra của Analog Input (trường hợp không dùng biến trở)
• Công tắc nguồn biến trở dùng để ngắt biến trở để sử dụng cảm biến bên ngoài
• 1 Sub DB37 nhưng chỉ dùng 24 chân để kết nối với MicroAutobox III
Hình 3.52 Thiết kế ban đầu
69 Hình 3.53 Mô hình 3D của module với kích thước thực tế
Hình 3.54 Các chân của module Digital I/O
Hình 3.55 Các chân của module Analog I/O Linh kiện cần thiết để xây dựng mô hình bao gồm:
- 18 đế Banana 2mm dài 23mm
- 7 trụ đồng HEX – M3 50mm - Ốc HEX2 – M3 6mm
- 2 tấm mica 190x209mm được đục theo kích thước có sẵn
- 1 contact Toggle On – Off – On
Sau khi thiết kế và chuẩn bị đầy đủ các linh kiện và thiết bị để thực hiện chế tạo module Nhóm tiến hành đi dây và lắp đặt module
71 Hình 3.56 Mô hình module GPIO thực tế
THỰC NGHIỆM MÔ HÌNH ĐỘNG CƠ ĐIỆN DC
Xây dựng thuật toán điều khiển
Trong chương này, nhóm sẽ tập trung phát triển thuật toán để điều khiển tốc độ động cơ DC bằng phần mềm Simulink, sau đó xây dựng chương trình điều khiển thời gian thực dựa vào thuật toán đã xây dựng để tiến hành điều khiển động cơ DC Ý tưởng điều khiển của nhóm là đưa ra một thông số tốc độ mong muốn, và thuật toán điều khiển sẽ so sánh giá trị mong muốn với giá trị tốc độ thực tế đo được từ bộ encoder tích hợp sẵn, từ đó tính toán và đưa ra tín hiệu điều khiển thích hợp
4.1.1 Kiểm tra tín hiệu encoder
Trước khi bắt đầu vào phần thuật toán điều khiển tốc độ của động cơ, tiến hành đọc thử tín hiệu của encoder bằng bộ MicroAutoBox III để đảm bảo rằng encoder vẫn hoạt động bình thường, đồng thời làm quen với quy trình kết nối các thiết bị bên ngoài với bộ MicroAutoBox III để xử lý và điều khiển
Hình 4.1 Mô hình đọc tín hiệu Encoder trên Simulink Sau khi thực hiện xong bước xây dựng mô hình đọc tín hiệu encoder, kết nối các chân tín hiệu của encoder vào bộ MicroAutoBox III, sau đó thiết lập chân đọc tín hiệu trên MicroAutoBox III bằng phần mềm ConfigurationDesk và dùng ControlDesk để quan sát các tín hiệu từ encoder
Hình 4.2 Chỉ định các chân đọc Encoder Khi chỉ định các chân đọc tín hiệu xong, cấp nguồn cho bộ MicroAutoBox III và bộ encoder, tiến hành xoay motor để kiểm tra tín hiệu
Xoay cùng chiều kim đồng hồ thì giá trị vị trí của motor sẽ tăng, nếu quay theo chiều ngược lại, thì giá trị sẽ giảm Nếu động cơ quay đủ một vòng (360 o ) tức motor về lại vị trí ban đầu thì giá trị vị trí sẽ về lại 0 o
Hình 4.4 Tín hiệu vị trí đọc được từ encoder
Hình 4.5 Tín hiệu tốc độ đọc từ encoder
4.1.2 Mô hình bộ điều khiển tốc độ trên Simulink
Hình 4.6 Thuật toán điều khiển trên Simulink Tổng quan về mô hình thuật toán điều khiển sẽ có 3 khối chính bao gồm khối đọc tín hiệu Encoder (Encoder Signal), một khối sẽ đảm nhiệm vai trò xử lý (Controller) và một khối sẽ đưa tín hiệu tốc độ đến motor (Speed_Signal)
4.1.2.1 Khối đọc tín hiệu encoder (Encoder Signal) Ở khối này, tín hiệu đầu vào là những tín hiệu kênh A, B từ bộ encoder của motor, sau đó sẽ được xử lý để đưa ra tín hiệu tốc độ thực tế của motor, tín hiệu này sau đó sẽ được đem đi so sánh với giá trị vận tốc mong muốn để đưa vào bộ điều khiển
Hình 4.8 Thông số của các tín hiệu trong khối Encoder In
Do đơn vị tính tốc độ của khối để mặc định là deg/s (độ/giây) nên phải tiến hành đổi ra vòng/phút (RPM)
Khối Controller sẽ nhận tín hiệu đầu vào là sai số (error) giữa giá trị tốc độ mong muốn và giá trị tốc độ thực tế của motor, sau đó tiến hành xử lý bằng phương pháp PID để đưa ra tín hiệu điều khiển tốc độ cho motor
Hình 4.9 Thuật toán xử lý tín hiệu tốc độ trong khối Controller Khối Saturation có đầu vào là tín hiệu sau khi được xử lý qua bộ PID, nhiệm vụ của khối này hạn chế và đưa ra giá trị xung PWM (PWM_out) theo đúng thông số PWM mà driver SHB 700 có thể đưa ra
Hình 4.10 Thông số của khối Saturation Nhóm sử dụng thêm khối MATLAB Function để viết hàm điều khiển chiều quay của động cơ DC, nếu tín hiệu PWM_out đến hàm có giá trị dương thì sẽ điều khiển động cơ
78 quay theo chiều thuận (cùng chiều kim đồng hồ) và nếu PWM_out mang giá trị âm thì động cơ sẽ quay theo chiều ngược lại
Khối Speed Signal sẽ nhận tín hiệu duty cycle và đưa tín hiệu này đến các chân PWM_R và PWM_L trên driver để điều khiển tốc độ và chiều quay của động cơ DC
Hình 4.11 Khối đưa ra giá trị điều khiển tốc độ và chiều quay
Thông số Frequency sẽ là tần số của động cơ DC, dựa vào thực nghiệm trên mô hình để chọn ra giá trị tần số mà động cơ DC hoạt động êm nhất Ở đây, nhóm chọn mức tần số
Hình 4.12 Thông số tín hiệu của khối PWM
4.1.2.4 Khối đọc giá trị Active Current từ driver
Khối đọc giá trị Active Current sẽ nhận tín hiệu đo được từ driver, sau đó tính toán để đưa ra giá trị dòng điện của động cơ DC
Do dòng đọc từ driver về bộ MicroAutoBox III bị nhiễu dù đã được nối thêm mass
SGND riêng cho tín hiệu analog nên nhóm dùng thêm một bộ lọc tín hiệu để có thể lọc bớt nhiễu cho tín hiệu, thuận tiện cho việc tính toán đưa ra giá trị Active Current
Với cơ sở lý thuyết về các phương pháp lọc ở chương 2, nhóm sẽ sử dụng lọc Kalman và lọc Median để lọc nhiễu, sau đó quan sát và so sánh kết quả của hai phương pháp này, từ đó chọn bộ lọc tối ưu hơn
Với phương pháp lọc Kalman, các khối Simulink không hỗ trợ tương thích với phần mềm của dSPACE nên nhóm viết một file.c, sau đó thêm file vào khối S-Function của
Simulink để có thể dùng phương pháp lọc này vào mô hình
Với phương pháp lọc Median, nhóm cũng sẽ viết một file.c, sau đó thêm vào hàm S-
Function để so sánh hiệu quả lọc so với khối lọc Median được cung cấp bởi Simulink
Hình 4.16 Thông số khối Median Filter của Simulink
4.1.3 Thuật toán điều khiển vị trí động cơ DC
Sau khi đã hoàn thành xong phần thuật toán điều khiển động cơ, nhóm tiếp tục phát triển thuật toán điều khiển vị trí cho động cơ DC
Thực nghiệm
Sau khi đã thiết kế xong thuật toán điều khiển tốc độ trên Simulink, đưa mô hình thuật toán sang phần mềm dSPACE ConfigurationDesk để chỉ định các chân cần dùng để nhận tín hiệu và điều khiển Các chân input/output tín hiệu Analog và Digital có thể xem trong phần datasheet của board DS 1513 của bộ MicroAutoBox III
Trước khi đưa mô hình thuật toán điều khiển sang ConfigurationDesk, cần thiết lập một vài thông số cho mô hình Simulink
Hình 4.21 Chọn loại target file cho mô hình Simulink
85 Hình 4.22 Lựa chọn Include signals để dễ dàng sử dụng sau khi tải ứng dụng
4.2.1 Thiết lập giao tiếp với MicroAutoBox III
Tại phần mềm dSPACE ConfigurationDesk, ta tiền hành chỉ định đường dẫn cho thư mục gốc cho file chứa các thông số của các chân I/O được dùng, sau đó tiến hành chỉ định
Có thể chỉ định các chân I/O cần sử dụng một cách dễ dàng chỉ bằng thao tác kéo và thả các chân tín hiệu có trong board DS 1513 được phần mềm hiển thị
Hình 4.23 Thông tin phần cứng của bộ MicroAutoBox III trên phần mềm
Mở rộng phần board I/O DS 1513 sẽ thấy được tất cả các kênh tín hiệu có sẵn trên board Cần hai kênh nhận tín hiệu digital từ thiết bị ngoại vi vào để đọc tín tín hiệu input từ encoder và hai chân để output tín hiệu xung PWM điều khiển chiều quay và tốc độ của động cơ DC
Tại mục Digital In 4 -1, thực hiện kéo thả kênh tín hiệu cần dùng để đọc giá trị encoder vào mô hình, sau đó chọn Digital Incremental Encoder In, sau đó tiến hành chỉnh sửa các thông số tại mục Properties
87 Hình 4.24 Các thông số của khối Digital Incremental Encoder In
88 Hình 4.25 Các thông số của khối Digital Incremental Encoder In
Hình 4.26 Các thông số của khối Digital Incremental Encoder In
Tiếp theo, chọn 2 kênh tín hiệu trong trong Digital Out 4 – 1 để bộ MicroAutoBox III đưa ra tín hiệu xung điều khiển tốc độ động cơ Kéo thả 2 chân tín hiệu cần dung vào mô hình và chọn PWM/PFM, Sau đó chỉnh sửa các thông số của hai khối PWM/PFM tại mục Properties
Hình 4.27 Thông số của hai khối PWM/PFM Out Để đọc tín hiệu Active Current, nhóm chọn một chân tín hiệu trong Analog In 8, kéo thả vào mô hình, chọn Voltage In và chỉnh sửa thông số cho phù hợp
Hình 4.28 Thông số khối Voltage In Sau khi chỉ định chân xong, phải thực hiện lan truyền các thay đổi đã tạo sang mô hình Simulink, các khối đã chọn sẽ xuất hiện trong mô hình
Hình 4.29 Cập nhật các thay đổi sang Simulink
Có thể xem được tổng quan các khối Function trong ConfigurationDesk và khối Model Port trong mục Signal Chain
94 Hình 4.30 Tổng quan giao tiếp giữa driver và các khối
Sau khi đã hoàn thành tất cả các bước chuẩn bị, chọn “Start” ở mục Build để tiến hành tạo các code Sau khi tạo xong, chúng ta sẽ được các file ứng dụng Real-time, các file này sẽ được sử dụng ở ControlDesk để điều khiển động cơ DC
4.2.2 Kết nối động cơ DC với bộ MicroAutoBox III
Hình 4.32 Tổng quan các chân Input và Output tín hiệu trên MicroAutoBox III
Sử dụng dây và giắc ZIF của hãng dSPACE để code dây connector với bộ MicroAutoBox III Vì việc output ra xung PWM cho động cơ DC cần sử dụng tín hiệu Digital nên hai chân N1 và M1 của bộ MicroAutoBox III sẽ được nối với nhau để tạo logic điện áp 5V Hai chân mass là A1 và a2, chân A1 sẽ là chân mass cho tín hiệu Digital và chân a2 (S.GND) sẽ là chân mass cho tín hiệu Analog dùng để đo giá trị Active Current của động cơ DC Chi tiết của các chân như trong bảng sau
Bảng 4.1 Thiết lập chân giữa driver và MicroAutoBox
Chân driver Chân MicroAutoBox III
Hình 4.33 Sơ đồ khối kết kết mô hình thực tế
97 Hình 4.34 Kết nối thực tế của mô hình và MicroAutoBox III
4.2.3 Thiết kế giao diện điều khiển trên ControlDesk
Bắt đầu phần mềm ControlDesk và chạy file Real-time (file.sdf) được tạo ở phần mềm ConfigurationDesk, sau đó kéo thả các biến điều khiển trong tab Variables vào màn hình chính và thiết kế giao diện điều khiển dựa trên các biến này
Một số tính năng chính của giao diện điều khiển:
• Khu vực điều khiển: Cho phép điều khiển tốc độ của động cơ DC thông qua thanh trượt hoặc nhập trực tiếp thông số tốc độ vào Ngoài ra có thể thay đổi các thông số điều khiển khác như các hệ số P, I, D của bộ PID, hệ số khếch đại tín hiệu …, để xem đáp ứng của hệ thống
• Khu vực hiển thị: bao gồm các đồ thị hiển thị các thông tin về tốc độ hiện tại, vị trí của động cơ DC, sai số giữa tốc độ thực tế và tốc độ mong muốn, chu kỳ xung PWM để có thể dựa vào đó mà đánh giá được hiệu suất của động cơ
Hình 4.35 Giao diện điều khiển tốc độ động cơ DC trên ControlDesk
99 Hình 4.36 Giao diện điều khiển vị trí động cơ DC
Hình 4.37 Đồ thị của các bộ lọc tín hiệu và so sánh
Chạy thực nghiệm và đánh giá kết quả
Sau khi hoàn tất thiết kế giao diện điều khiển, sau đó kết nối phần cứng với nhau, tiến hành cấp nguồn cho bộ MicroAutoBox III và driver SHB700 Tiếp theo, kiểm tra tình trạng của bộ MicroAutoBox III thông qua các LED báo trạng thái, nếu không phát sinh lỗi gì thì tiến hành vận hành mô hình động cơ DC sau đó quan sát đồ thị để đánh giá
Tiến hành kiểm thử động cơ DC ở các mức tốc độ khác nhau
4.3.1 Cho động cơ chạy với mức 500RPM tại lúc đầu Điều khiển tốc độ động cơ DC bằng cách thay đổi biến Desired_Speed trong phần mềm ControlDesk Nhập giá trị 500 RPM tại ô Desired_Speed
Hình 4.38 Đồ thị vận hành động cơ DC tại mức 500 RPM
Nhận xét: Đường màu xanh là giá trị Actual_Speed (tốc độ thực tế), màu đỏ là Desired_Speed, từ hình 4.25 có thể thấy rằng ở giai đoạn đầu, động cơ tăng tốc từ 0 lên 300 rpm với khoảng thời gian Rise time là 0.005s, sau đó ổn định là bám sát với mức 500 RPM Ở giai đoạn ổn định, tốc độ động cơ duy trì ở mức 497 – 501 RPM
Chu kỳ xung ban đầu sẽ rất lớn đảm bảo động cơ DC quay đủ nhanh để đạt được tốc độ mong muốn trong khoảng thời gian là ngắn nhất, sau đó giảm dần để duy trì tốc độ mong muốn Nếu ghì động cơ lại khi động cơ đang ổn định, chu kỳ xung sẽ có giá trị cao hơn, cấp áp cao hơn cho động cơ để động cơ duy trì được giá trị mong muốn
Hình 4.39 Chu kỳ xung tăng khi ghì động cơ
4.3.2 Dừng động cơ đột ngột và thay đổi chiều quay
Khi động cơ đang chạy ổn định tại mức 500 RPM, thay đổi tốc độ đột ngột về 0 và sau đó điều khiển tốc độ quay của động cơ tại mức -500 RPM (quay ngược chiều) Nhìn từ đồ thị trong hình 4.25, tại thời điểm thay đổi vận tốc cũng như chiều quay đột ngột, thời gian để hệ thống phản ứng với những thay đổi này là 0.005s
Các đồ thị Position, Error và Duty Cycle có sự thay đổi lớn khi thay đổi các thông số điều khiển nhưng nhanh chóng ổn định
102 Hình 4.40 Đồ thị đáp ứng của động cơ khi thay đổi tốc độ và chiều quay đột ngột
103 Hình 4.41 Thời gian đáp ứng của hệ thống khi dừng động cơ đột ngột
Hình 4.42 Thời gian đáp ứng của hệ thống khi thay đổi từ 0 → -500 RPM
4.3.3 Phân tích và so sánh đồ thị đo dòng Active Current
Cho động cơ hoạt động ở mức 1000 RPM, sau đó ghì động cơ lại, phần mềm ControlDesk thu được các giá trị được lọc bởi ba phương pháp lọc như hình
Hình 4.43 Đồ thị của ba bộ lọc tín hiệu Ở ba đồ thị đầu tiên, đường màu đỏ là tín hiệu ban đầu và đường màu xanh lá là tín hiệu đã được lọc nhiễu Ở đồ thị so sánh tín hiệu lọc, đường màu đỏ là tín hiệu được lọc bởi bộ lọc Kalman, đường màu xanh lá là đường được lọc bởi bộ lọc Simulink cung cấp bởi Simulink và đường xanh dương là tín hiệu lọc bởi bộ lọc Median do nhóm viết file.c
Bộ lọc Kalman cho ra tín hiệu lọc mượt nhất trong cả ba bộ nhưng thời gian đáp ứng lại quá chậm, bộ lọc Median do Simulink cung cấp thực hiện lọc nhiễu ổn và thời gian đáp ứng nhanh nhưng khi so sánh hiệu suất với bộ lọc Median do nhóm viết file.c thì tín hiệu lọc vẫn còn khá nhiễu Chính vì vậy nhóm quyết định chọn bộ lọc Median viết dưới dạng file.c để đọc giá trị Active Current
Hình 4.44 So sánh hiệu xuất lọc nhiễu
4.3.4 Cho động cơ quay đến vị trí 250 o từ vị trí 20 o ban đầu Động cơ ở vị trí ban đầu là 20 o , tiến hành nhập giá trị vị trí mong muốn là 250 o vào ô tín hiệu đầu vào, quan sát đồ thị, thấy được rằng động cơ đáp ứng ngay lập tức với sự thay đổi vị trí đột ngột, thời gian đáp ứng vào khoảng 0.5s, sau đó ổn định dần trong 2 giây tiếp theo Có thể cải thiện hiệu xuất hoạt động của bộ điều khiển vị trí bằng cách thay đổi lần lượt các giá trị P, I, D để lấy được giá trị PID tối ưu nhất
Hình 4.45 Giá trị sai số giữa Vị trí mong muốn và Vị trí thực tế
4.3.5 Cho động cơ quay đến 180 o từ vị trí ban đầu (0 o )
Nhập giá trị 180 vào ô Position Input
Hình 4.46 Đồ thị sai số
Hình 4.47 Đồ thị vận tốc
Từ hai đồ thị trên, có thể thấy rằng hệ thống đáp ứng rất nhanh khi nhận được tín hiệu điều khiển, thời gian để hệ thống rút ngắn sai số giữa vị trí thực tế và vị trí mong muốn trong khoảng 0.5 giây, sau đó có xảy ra hiện tượng vọt lố vị trí ở khoảng từ giây thứ 9 đến giây thứ 12 và từ giây thứ 13 đến giây thứ 21, thời gian để hệ thống ổn định lại khoảng 3 giây (các thông số P, I, D ở đây lần lượt là 0.1, 0.2, 0.001)
Ban đầu, vận tốc có giá trị rất lớn để động cơ DC có thể đến vị trí mong muốn nhanh hơn, sau khi gần đạt giá trị mong muốn, vận tốc giảm đển đảm bảo khi đến giá trị vị trí mong muốn, vận tốc sẽ về 0, quá trình thay đổi vận tốc xảy ra trong khoảng 1s