Hệ thống đèn phía sau

Một phần của tài liệu Nghiên cứu, thiết kế hệ thống cruise control cho xe ô tô điện (Trang 43)

Hình 2 .41 Cầu chì 200A

Hình 2.48 Hệ thống đèn phía sau

2.3.6. Hộp sạc ắc quy

Chức năng

Hộp sạc ắc quy đóng vai trị quan trọng trong xe điện ZERO với những chức năng sau:

- Hai chế độ sạc 72V cho cụm sáu ắc quy cung cấp năng lượng cho động cơ điện và 12V cho một bình ắc quy cung cấp năng lượng cho hộp tín hiệu, an tồn và phụ tải

- Tự động ngắt điện khi sạc đầy và khi mở chìa khóa để điều khiển xe ZERO

- Tự động phát hiện lỗi khi sạc ắc quy như hiện tượng điện trở cao do bình ắc quy bị hư, sau đó truyền thơng tin về hộp tín hiệu, an tồn để báo cịi cảnh báo

34 Hình 2.49. Bộ sạc ắc quy

Ngun lí hoạt động

Hình 2.50. Sơ đồ bộ sạc ắc quy

Hộp sạc sử dụng bộ sạc một chiều chỉ có thể sạc cho xe ZERO nhưng khơng có khả năng cấp nguồn cho xe khi chạy. Cách sắp xếp bộ sạc một chiều được thể hiện qua Hình 2.56. Dịng điện xoay chiều 220V-50Hz từ ổ cắm qua bộ lọc nhiễu điện từ có tác dụng tạo ra dịng điện ổn định, sau đó đi qua bộ chỉnh lưu cầu diode và tụ điện để tạo ra dòng điện một chiều bằng phẳng. Mạch hiệu chỉnh hệ số cơng suất (Power Factor Correction) có chức năng cải thiện hiệu suất điện năng và giảm sự phát sóng hài (một dạng nhiễu khơng mong

35 muốn ảnh hưởng đến chất lượng dòng điện và gây hại đến linh kiện điện tử của thiết bị) trong dòng điện. Tiếp đến điện áp một chiều được biến đổi (nghịch lưu) thành điện áp xoay chiều thông qua bộ biến tần cầu H bằng cách điều xung PWM, nhờ đó điện áp xoay chiều có thể thay đổi giá trị biên độ và tần số tùy vào bộ điều khiển. Dòng điện qua biến áp cách ly để chuyển thành dịng diện xoay chiều có biên độ thấp hơn ứng với hai điện áp 72V và 12V với cường độ dịng điện lớn hơn. Sau đó qua một bộ chỉnh lưu cầu diode và tụ điện để tạo ra dòng điện một chiều bằng phẳng để sạc ắc quy.

2.3.7. Hộp tín hiệu và an tồn

Hộp tín hiệu và an tồn gồm một mạch điện lớn có những chức năng sau:

- Nhận tín hiệu từ cảm biến vị trí chân ga, cơng tắc bàn đạp phanh, công tắc bàn đạp tăng tốc, cơng tắc lùi để xử lí rồi truyền tín hiệu về bộ điều khiển động cơ để điều khiển động cơ.

- Truyền tín hiệu đến bộ sạc để bật, ngắt chế độ sạc tùy theo xe đã mở chìa khóa hay chưa.

- Nhận tín hiệu từ cụm cơng tắc đâm đụng để điều khiển mô tơ phanh khẩn cấp và truyền tín hiệu phanh đến bộ điều khiển động cơ để phanh cứng bánh xe và ngắt động cơ khi có đâm đụng, đảm bảo an tồn cho xe, người đi bộ và tài sản.

- Nhận tín hiệu mở khóa từ hộp chìa khóa và cịi để mở hoặc khóa trợ lái điện và truyền tín hiệu điều khiển cịi thơng báo khi xe lùi, khởi động xe sai cách, khi đâm đụng, khi hết pin, khi có vấn đề về sạc.

36

2.3.8. Bàn đạp tăng tốc, bàn đạp phanh và công tắc tiến lùi

Hình 2.52. Các cơng tắc, cảm biến, trên bàn đạp tăng tốc, bàn đạp phanh, công tắc tiến lùi Công tắc bàn đạp tăng tốc và công tắc bàn đạp phanh sử dụng loại cơng tắc hành trình. Khi ta nhấn bàn đạp tăng tốc hay bàn đạp phanh, sẽ làm di chuyển tay dịn của cơng tắc làm thay đổi tín hiệu điện áp đến hộp tín hiệu và an tồn. Cơng tắc bàn đạp tăng tốc là loại cơng tắc hành trình thường mở và cơng tăc bàn đạp phanh là là loại cơng tắc hành trình thường đóng. Cơng tắc tiến lùi là loại cơng tắc chuyển mạch, việc đóng ngắt làm thay đổi tín hiệu điện áp đến hộp tín hiệu và an tồn. Cảm biến vị trí bàn đạp tăng tốc là một biến trở chính xác, việc nhấn bàn tăng tốc làm thay đổi trục điều khiển làm thay đổi điện áp đến hộp tín hiệu và an tồn.

Để vận hành xe, hộp điều khiển động cơ u cầu tín hiệu cơng tắc bàn đạp tăng tốc, và tín hiệu từ cảm biến vị trí bàn đạp tăng tốc để thay đổi tốc độ. Khi nhấn bàn đạp phanh, hộp tín hiệu và an tồn sẽ ngắt tín hiệu cơng tắc bàn đạp tăng tốc và tín hiệu từ cảm biến vị trí bàn đạp tăng tốc và truyền tín hiệu phanh đến bộ điều khiển động cơ. Để vận hành xe trở lại, nhả bàn đạp phanh, nhả và nhấn lại bàn đạp tăng tốc.

2.4. Giới thiệu về phần mềm Arduino IDE và bo mạch Arduino Mega 2560 R3 2.4.1. Giới thiệu phần mềm Arduino IDE 2.4.1. Giới thiệu phần mềm Arduino IDE

Arduino IDE được viết tắt (Arduino Integrated Development Environment) là một trình soạn thảo văn bản, giúp bạn viết code để nạp vào bo mạch Arduino. Arduino IDE được viết bằng ngơn ngữ lập trình Java là ứng dụng đa nền tảng (cross-platform). Ngơn

37 ngữ code cho các chương trình của arduino là bằng C hoặc C++ . Bản thân Arduino IDE đã được tích hợp một thư viện phầm mềm thường gọi là "wiring", từ các chương trình "wiring" gốc sẽ giúp bạn thực hiện thao tác code dễ dàng hơn. Một chương trình chạy trong arduino được gọi là một sketch, chương trình được định dạng dưới dạng .ino.

Hình 2.53. Giao diện phần mềm Arduino IDE

2.4.2. Giới thiệu bo mạch Arduino Mega 2560 R3

Bo mạch Arduino Mega 2560 R3 là một bo mạch vi xử lý. Arduino Mega 2560 là phiên bản nâng cấp của Arduino Mega hay còn gọi là Arduino Mega 1280. Sự khác biệt lớn nhất với Arduino Mega 1280 chính là chip nhân. Arduino Mega 2560 phiên bản hiện đang được sử dụng rộng rãi và ứng dụng nhiều hơn. Với chip ATmega2560 có bộ nhớ flash memory 256 KB, 8KB cho bộ nhớ SRAM, 4 KB cho bộ nhớ EEPROM. Giúp cho người dùng thêm khả năng viết những chương trình phức tạp và điều khiển các thiết bị lớn hơn như máy in 3D, điều khiển robot và các hệ thống trên ô tô

Arduino Mega2560 là một vi điều khiển bằng cách sử dụng ATmega2560.Bao gồm: - 54 chân digital (15 có thể được sử dụng như các chân PWM)

38 - 4 UARTs (cổng nối tiếp phần cứng)

- 1 thạch anh 16 MHz - 1 cổng kết nối USB - 1 jack cắm điện - 1 đầu ICSP - 1 nút reset Hình 2.54. Bo mạch ARDUINO MEGA 2560 R3

2.5. Giải thuật tính tốn bộ điều khiển PID

Một bộ điều khiển PID (Proportional Integral Derivative) là một cơ chế phản hồi vòng điều khiển (bộ điều khiển) tổng quát được sử dụng rộng rãi trong các hệ thống điều khiển công nghiệp. Bộ điều khiển PID là bộ điều khiển được sử dụng nhiều nhất trong các bộ điều khiển phản hồi. Bộ điều khiển PID sẽ tính tốn giá trị "sai số" là hiệu số giữa giá trị đo thông số biến đổi và giá trị đặt mong muốn. Bộ điều khiển sẽ thực hiện giảm tối đa sai số bằng cách điều chỉnh giá trị điều khiển đầu vào. Trong trường hợp khơng có kiến thức cơ bản (mơ hình tốn học) về hệ thống điều khiển thì bộ điều khiển PID là sẽ bộ điều khiển tốt nhất. Tuy nhiên, để đạt được kết quả tốt nhất, các thông số PID sử dụng trong tính tốn phải điều chỉnh theo tính chất của hệ thống-trong khi kiểu điều khiển là giống nhau, các thông số phải phụ thuộc vào đặc thù của hệ thống.

39 Hình 2.55. Sơ đồ khối của bộ điều khiển PID

Setpoint (Giá trị đặt) là giá trị mong muốn đạt được tại ngõ ra của đối tượng điều khiển. Process variable (Biến q trình) là tín hiệu hồi tiếp mà bộ điều khiển nhận được từ đối tượng điều khiển. Control variable (biến điều khiển) là giá trị ngõ ra của bộ điều khiển. Error là giá trị sai lệch giữa giá trị đặt và giá trị hiện tại ở ngõ ra của đối tượng điều khiển và bộ điều khiển PID ln đưa ra tín hiệu điều khiển CV dựa trên giá trị của error. Output là giá trị ngõ ra của đối tượng điều khiển.

Hoạt động của khâu P (khâu tỷ lệ):

Hình 2.56. Hoạt động của khâu tỷ lệ

Khâu này ln đưa ra tín hiệu điều khiển ln tỉ lệ với giá trị sai lệch. Hàm truyền của bộ điều khiển P: 𝐾(𝑠) = 𝐾𝑝

Hàm truyền đặc tính thời gian: 𝑌(𝑠) = 𝐾𝑝𝐺(𝑠)𝐸(𝑠) Hàm truyền sai số hệ thống: 𝐸(𝑠) = 𝑅(𝑠)

1+𝐾𝑝𝐺(𝑠)𝐻(𝑠)

Kp càng lớn thì tốc độ đáp ứng càng nhanh. Kp càng lớn thì sai số xác lập càng nhỏ. Kp tăng quá lớn thì vọt lố càng cao, nếu tăng nữa thì hệ thống mất ổn định và dao động không tắt dần.

40

Hoạt động của khâu D ( khâu vi phân):

Hình 2.57. Hoạt động của khâu D

Đây là khâu ln đưa ra tín hiệu điều khiển tỉ lệ với tốc độ thay đổi của giá tri sai lệch.

Hàm truyền của bộ điều khiển D: 𝐾(𝑠) = 𝐾𝑑𝑠

Hàm truyền đặc tính thời gian: 𝑌(𝑠) = 𝐾𝑑𝐺(𝑠)𝐸(𝑠)𝑠 Hàm truyền sai số hệ thống: 𝐸(𝑠) = 𝑅(𝑠)

1+𝑠 𝐾𝑑𝐺(𝑠)𝐻(𝑠)

Khâu vi phân khơng thể sử dụng một mình mà phải sử dụng kết hợp với khâu P hoặc khâu I. Kd càng lớn thì độ vọt lố càng nhỏ. Kd càng lớn thì đáp ứng quá độ càng nhanh. Khâu D rất nhạy với nhiễu tần số cao do hệ số khuếch đại tại tần số cao.

Hoạt động của khâu I (khâu tích phân ):

Hình 2.58. Hoạt động của khâu I

Là khâu đưa ra tín hiệu điều khiển dựa trên giá trị của sai lệch và thời gian xảy ra sai lệch. Hàm truyền của bộ điều khiển D: 𝐾(𝑠) =𝐾𝑖

𝑠

Hàm truyền đặc tính thời gian: 𝑌(𝑠) = 𝐾𝑖𝐺(𝑠)𝐸(𝑠) 𝑠

Hàm truyền sai số hệ thống: 𝐸(𝑠) = 𝑠 𝑅(𝑠) 1+𝐾𝑖𝐺(𝑠)𝐻(𝑠)

Ki càng lớn thì đáp ứng quá độ càng chậm. Ki càng lớn thì sai số xác lập càng nhỏ. Đặc biệt hệ số khuếch đại của khâu tích phân bằng vơ cùng khi tần số bằng 0, triệt tiêu sai số xác lập với hàm nấc. Ki càng lớn độ vọt lố càng cao.

Bộ điều khiển PID là sự kết hợp của các khâu P,I,D do đó khắc phục được nhược điểm của mỗi khâu riêng lẻ.

Như vậy , ngõ ra của bộ điều khiển PID thể hiện qua hàm truyền: 𝐾(𝑠) = 𝐾𝑝+𝐾𝑖

41

CHƯƠNG 3. NGHIÊN CỨU THUẬT TOÁN HỆ THỐNG ĐIỀU KHIỂN GA TỰ ĐỘNG VÀ ỨNG DỤNG PHẦN MỀM ARDUINO IDE

TRONG LẬP TRÌNH CCS ECU

3.1. Thuật toán hệ thống điều khiển ga tự động trên xe điện ZERO

3.1.1. Giới thiệu thuật toán hệ thống điều khiển ga tự động trên xe điện ZERO

CCS ECU là một hệ thống kiểm soát phản hồi trên xe ơ tơ điện. Mục đích của CCS là duy trì tốc độ xe khơng đổi mặc dù có những xáo trộn bên ngồi, chẳng hạn như thay đổi về gió hoặc điều kiện mặt đường. Điều này được thực hiện bằng cách đo tốc độ xe, so sánh với tốc độ cài đặt và tự động điều chỉnh tín hiệu bàn đạp tăng tốc theo quy luật điều khiển PID.

Hình 3.1. Sơ đồ xe điện ZERO tích hợp hệ thống điều khiển ga tự động

Bo mạch Arduino Mega 2560 là bộ xử lí của CCS ECU. Công tắc điều khiển dùng để vận hành hệ thống điều khiển ga tự động. Thuật tốn điều khiển chính là một vịng lặp vơ tận với các nhiệm vụ xử lí các tín hiệu đầu vào, tính tốn dựa trên chúng để cho ra tín hiệu đầu ra cần thiết là tín hiệu vị trí bàn đạp tăng tốc mới và tín hiệu cơng tắc bàn đạp tăng tốc đến hộp tín hiệu và an tồn.

42

3.1.2. Lưu đồ thuật toán hệ thống điều khiển ga tự động trên xe điện ZERO

43 Hình 3.3. Lưu đồ thuật toán hệ thống điều khiển ga tự động (tiếp theo)

44 Khi giá trị SET = 0, xe sẽ ở chế độ điều khiển bình thường với tốc độ xe hoàn toàn dựa vào bàn đạp tăng tốc do người lái điều khiển và CCS ECU sẽ ngắt bộ điều khiển PID. CCS ECU sẽ nhận các tín hiệu từ cơng tắc điều khiển, cơng tắc bàn đạp phanh, cảm biến vị trí chân ga, cơng tắc đâm đụng, công tắc tiến lùi để quyết định các chế độ của hệ thống điều khiển ga tự động như chức năng bật tắt CCS ECU, chức năng cài đặt tốc độ, chức năng tăng giảm tốc độ, chức năng hủy, chức năng phục hồi tốc độ cài đặt và chức năng hoạt bộ điều khiển PID.

Một phần quan trọng của thuật tốn là kích hoạt bộ điều khiển PID để điều khiển tín hiệu vị trí bàn đạp tăng tốc. Việc cài đặt thông số cho bộ điều khiển PID dựa vào thực nghiệm để chọn những thông số phù hợp nhất đảm bảo nhu cầu chính là xe đạt tới tốc độ mong muốn nhanh, êm dịu và mượt mà. Khâu tỷ lệ (Proportional) của bộ điều khiển PID điều chỉnh tín hiệu điện áp dựa trên sự sai số (ERROR = Vset – Vxe hoặc ERROR = Vset1 - Vxe) giữa tốc độ thực tế của xe (Vxe) và tốc độ mong muốn của xe (Vset hoặc Vset1). Nếu giá trị ERROR dương (Vset > Vxe), bộ điều khiển PID sẽ tăng điện áp tín hiệu vị trí bàn đạp tăng tốc để tăng tốc và ngược lại, nếu giá trị ERROR dương (Vset < Vxe), bộ điều khiển PID sẽ giảm điện áp tín hiệu vị trí bàn đạp tăng tốc để giảm tốc. Do đó, khi xe càng gần tốc độ mong muốn, gia tốc xe càng giảm. Khâu tích phân (Integral) của bộ điều khiển PID có chức năng cân bằng nhanh giá trị ERROR về 0 và khâu vi phân (Derivative) được áp dụng vào những thay đổi nhỏ của tốc độ. Các giá trị hằng số Kp, Ki, Kd ban đầu được chọn theo bảng 3.1. Khi xử lí, các hằng số trên có thể được liên tục thay đổi để đảm bảo yêu cầu nhu cầu chính đã đề ra.

Bảng 3.1. Các giá trị hằng số Kp, Ki, Kd ban đầu Chức năng Chức năng Hằng số Cài đặt tốc độ Tăng tốc theo nấc Tăng tốc liên tục Giảm tốc theo nấc Giảm tốc liên tục Kp 1.5 1.5 0.13 1.5 0.13 Ki 0.000035 0.000035 0.000035 0.000035 0.000035 Kd 2 2 0.13 2 0.13

45

3.2. Ứng dụng phần mềm Arduino IDE trong lập trình CCS ECU 3.2.1. Code đọc tín hiệu các cơng tắc, cảm biến 3.2.1. Code đọc tín hiệu các cơng tắc, cảm biến

Các tín hiệu được nhận về Arduino có các chân analog và các chân digital. Chân analog được dùng để đọc tín hiệu của cảm biến vị trí bàn đạp tăng tốc và mạch nhận tín hiệu cụm cơng tắc điều khiển. Tín hiệu điện áp thu thập từ chân analog sẽ chuyển đổi tín hiệu điện áp từ 0V đến 5V thành dãy giá trị từ 0 đến 1023. Chân digital được dùng để đọc tín hiệu của mạch đo tốc độ động cơ và mạch đọc tín hiệu các cơng tắc. Tín hiệu điện áp thu thập từ chân digital sẽ chuyển đổi tín hiệu điện áp xấp xỉ 0V là giá trị 0 và tín hiệu điện áp từ 3.3V trở lên là giá trị 1. Bên cạnh đó, đối với tín hiệu từ mạch đo tốc độ động cơ sẽ sử dụng chân digital số 2 có hỗ trợ ngắt để tính tốn tốc độ động cơ.

- Lưu đồ và code đọc tín hiệu chân analog trong chương trình Arduino IDE:

Hình 3.4. Lưu đồ đọc tín hiệu chân analog

bientro = analogRead (A0); // đọc tín hiệu cảm biến vị trí bàn đạp tăng tốc qua chân A0 i = map (bientro,0,1023,0,255); // chuyển đổi giá trị thành dãy giá trị 0 đến 255

- Lưu đồ và code đọc tín hiệu chân digital trong chương trình Ardiuno IDE:

Hình 3.5. Lưu đồ đọc tín hiệu chân digital

th_damdung = digitalRead (22);// đọc tín hiệu cơng tắc đâm đụng qua chân digital 22 - Lưu đồ và code đọc tốc độ động cơ trong chương trình Ardiuno IDE:

Hình 3.6. Lưu đồ đọc tốc độ động cơ void xung() {//chương trình ngắt void xung() {//chương trình ngắt

xung1s++; }

void setup() {

pinMode (2, INPUT_PULLUP); // khai báo chân ngắt

46 }

Void loop(){

time_vt = millis() - time_vt2; if (time_vt >= 500)

{

noInterrupts();// tạm dừng chương trình ngắt vantoc = xung1s * ((Chuvi / 0.5) * 3.6); time_vt2 = millis();

xung1s = 0; // xóa xung đếm được trong vịng 1s

dieukien_PID = 1;// tín hiệu điều kiện để kích hoạt PID time_vt = 0;

interrupts();// tiếp tục chương trình ngắt

Một phần của tài liệu Nghiên cứu, thiết kế hệ thống cruise control cho xe ô tô điện (Trang 43)

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

(107 trang)