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

Phát triển giải pháp điều khiển thích nghi cho bộ lọc tích cực ba pha

230 4 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

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ GIAO THÔNG VẬN TẢI TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI THÀNH PHỐ HỒ CHÍ MINH PHÁT TRIỂN GIẢI PHÁP ĐIỀU KHIỂN THÍCH NGHI CHO BỘ LỌC TÍCH CỰC BA PHA LUẬN ÁN TIẾN SĨ TP HỒ CHÍ MINH – 2022 BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ GIAO THÔNG VẬN TẢI TRƯỜNG ĐẠI HỌC GIAO THƠNG VẬN TẢI THÀNH PHỐ HỒ CHÍ MINH PHÁT TRIỂN GIẢI PHÁP ĐIỀU KHIỂN THÍCH NGHI CHO BỘ LỌC TÍCH CỰC BA PHA Ngành: Kỹ thuật điều khiển tự động hóa Mã số: 9520216 NGƯỜI HƯỚNG DẪN: TP HỒ CHÍ MINH – 2022 i LỜI CAM ĐOAN Tôi xin cam đoan luận án tiến sĩ với đề tài: “Phát triển giải pháp điều khiển thích nghi cho lọc tích cực ba pha” cơng trình nghiên cứu tơi thực Các kết kết luận luận án trung thực, không chép từ nguồn hình thức Việc tham khảo nguồn tài liệu thực trích dẫn ghi nguồn tài liệu tham khảo quy định Thành phố Hồ Chí Minh, tháng năm 2022 Nghiên cứu sinh ii LỜI CẢM ƠN Tôi xin trân trọng cảm ơn GVC TS , Trưởng khoa Điện tử viễn thơng, Trường Đại học Sài Gịn, tận tâm hướng dẫn tơi, động viên tơi kiên trì trui rèn đường học thuật, khoa học, thầy làm gương cho phong cách tinh thần làm việc để trở thành người khoa học Tôi xin trân trọng cảm ơn TS , Trưởng Bộ môn Điện Công nghiệp, khoa Điện-ĐTVT Trường Đại học Giao thông vận tải Thành phố Hồ Chí Minh, người thực cho tơi hội nhìn rõ vấn đề chun mơn nói chung tốn luận án nói riêng, nhờ mà chơng gai đường nghiên cứu trở thành động lực suốt trình thực nghiên cứu Tôi thực trân trọng giá trị khoa học mà môi trường Đại học Giao thơng vận tải Thành phố Hồ Chí Minh tạo ra, nơi có bề dày lịch sử đào tạo khoa học kỹ thuật người, nơi bồi đắp cho chuẩn mực khoa học tự sáng tạo khoa học Tôi xin cảm ơn gia đình tơi tạo điều kiện, thấu hiểu cho thời gian làm nghiên cứu khoa học Xin gởi đến quý thầy cô, quý đồng nghiệp công tác trường Đại học nước quốc tế lời tri ân chân thành cho góp sức q báu, để cơng việc nghiên cứu tơi nhiều phần thuận lợi Sự đóng góp nhà khoa học để luận án tiếp tục hồn thiện, giúp cho tơi ngày trưởng thành đường nghiên cứu, khao khát bên cạnh mong muốn luận án hoàn thành Xin trân trọng cảm ơn! Thành phố Hồ Chí Minh, tháng năm 2022 Nghiên cứu sinh iii TÓM TẮT Hiện nay, việc điều khiển Biến tần nguồn áp (VSI) trở nên hiệu hết nhờ phát triển công nghệ bán dẫn, sử dụng thiết bị bán dẫn tốc độ chuyển mạch cao vi xử lý tần số trăm Mhz, cho phép hệ thống hoạt động cách thông minh nhờ áp dụng thuật tốn điều khiển đại phức tạp Từ đó, việc ứng dụng chuyển đổi để thiết kế Bộ lọc nguồn tích cực (Active Power Filter – APF) ứng dụng phổ biến lĩnh vực điều khiển chất lượng điện Khơng nằm ngồi chức VSI, luận án tập trung nghiên cứu hai vấn đề bù công suất (PFC) lọc nguồn tích cực (APF) Song song với việc trình bày lý thuyết điều khiển mơ xác thực kết thực nghiệm thực hệ thống lọc nguồn điện tích cực ba pha với cấu trúc lõi biến đổi công suất VSI Các phần nghiên cứu bao gồm: ① đề xuất cấu hình lọc nguồn tích cực; ② cấu hình xây dựng mơ hình giải tích, giải thuật điều khiển; ③ xây dựng mơ hình mơ mơ hình thực nghiệm; ④ ghi nhận, so sánh, nhận xét kết mô kết thực nghiệm; ⑤ thực báo cáo khoa học dạng cơng trình nghiên cứu khoa học, báo báo cáo luận án Dựa giải tích hệ thống, tác giả sử dụng giải pháp tính tốn mềm, phương pháp điều khiển kỹ thuật điều khiển tiên tiến như: tuyến tính hóa phi tuyến, thích nghi mờ, thích nghi phi tuyến, vài mơ hình điều khiển kinh điển khác để hỗ trợ so sánh kết Hai giải pháp thích nghi đề xuất để thay cho giải pháp tham số cố định nhằm thích ứng với biến động không mong muốn hệ thống đề xuất luận án, sử dụng điều khiển thích nghi mờ PI hai giải thuật bù dịng điện dự đốn Kết hướng đến việc đảm bảo độ ổn định điện áp chiều tụ liên kết, xử lý lệch pha dòng điện điện áp trình nối lưới APF, cải thiện đáp ứng động cho hệ thống tải phi tuyến nguồn điện biến động, giữ vững tiêu chí chất lượng điện tổng méo hài THD < 6% hệ số công suất PFC > 95% Mô thực nghiệm minh chứng cho khả cải thiện hệ số cơng suất, bù sóng hài hiệu đáp ứng nhanh với tác động không mong muốn xảy cho hệ thống, đảm bảo mục tiêu đặt luận án Từ khóa: Điều khiển chất lượng điện năng, chất lượng điện, lọc nguồn tích cực, kỹ thuật điều khiển thích nghi, điều khiển dự báo, nghịch lưu ba pha nguồn áp iv ABSTRACT The control of Voltage Source Inverter (VSI) becomes more effective than ever due to using semiconductor switching devices and high-frequency microprocessors Using these converters to design an Active Power Filter is the most popular application in the field of power quality control Not outside the main function of the converter, this thesis studies two principal problems, which are improving Power Factor Correction (PFC) and eliminating high order harmonics, called Active Power Filter (APF) Besides listing control theories, measuring the results of the Shunt active power filter system model was present to prove the validity of the proposed algorithm The main research sections include: ① active source filter configuration recommendations; ② on that configuration build analytical model, control algorithm; ③ building simulation models and experimental models; ④ record, compare and comment on simulation results and experimental results; ⑤ perform scientific reports such as scientific research topic, articles, and thesis Based on the analysis of the system, the author has used some advanced control techniques such as soft computing solutions, nonlinear linearization, fuzzy adaptation, nonlinear adaptation, and a few other classic control models to aid in comparing results Two main adaptive solutions are proposed to replace the solutions of fixed parameters in order to adapt to unexpected fluctuations in the proposed scheme in the thesis, the first is using an adaptive Fuzzy-PI controller, and the second is the predictive current compensation algorithm The results are aimed at ensuring the stability of the DC voltage, handling the phase difference between the current and the voltage during the APF connecting to the grid, and improving the dynamic response of the system under nonlinear loads, and/or the grid unwanted change, while maintaining quality criteria such as total harmonic distortion THD < 6% and PFC power factor > 95% Simulations and experiments have demonstrated the ability to improve power factors, effectively compensate for harmonics and respond quickly to unwanted effects on the system, ensuring the aim of the thesis Keywords: Power quality control (PQC), power quality, active power filter (APF), adaptive control engineering, model predictive control (MPC), three-phase voltage source inverter (VSI) v MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ……………………………………………………………………… ii TÓM TẮT ……………………………………………………………………… iii ABSTRACT ……………………………………………………………………… iv MỤC LỤC ……………………………………………………………………… v DANH MỤC CÁC HÌNH ẢNH viii DANH MỤC BẢNG BIỂU xiii DANH MỤC CÁC TỪ VIẾT TẮT xiv DANH MỤC NHỮNG KÝ HIỆU SỬ DỤNG TRONG LUẬN ÁN xvi MỞ ĐẦU ……………………………………………………………………… 1 Lý chọn đề tài……………………………………………………………… Tính cấp thiết đề tài …………………………………………………… Mục tiêu nghiên cứu…………………………………………………………… Phương pháp nghiên cứu ……………………………………………………… Đối tượng phạm vi nghiên cứu đề tài ………………………………… Nội dung nghiên cứu ………………………………………………………… Ý nghĩa khoa học thực tiễn đề tài …………………………………… Bố cục luận án: …… ………………………………………………………6 CHƯƠNG TỔNG QUAN VỀ KỸ THUẬT ĐIỀU KHIỂN TRONG BỘ LỌC NGUỒN TÍCH CỰC 11 Bộ lọc nguồn tích cực Giải tích mạch lọc tích cực ba pha mắc song song dựa lý thuyết công suất tức thời 11 121 Trường hợp 1: Điện áp nguồn ba pha cân 18 122 Trường hợp 2: Điện áp nguồn ba pha bị méo dạng không cân 19 Các giải pháp điều khiển thích nghi ứng dụng lĩnh vực điều khiển chất lượng điện 23 Các cơng trình nghiên cứu APF tiêu biểu ứng dụng kỹ thuật điều khiển miền thời gian miền tần số 24 132 14 Điều khiển thích nghi áp dụng kỹ thuật điều khiển APF Hiệu lượng điện chất lượng điện 141 Chất lượng điện 28 41 41 vi 142 Hiệu lượng điện 43 143 Các dẫn thương mại 44 Đề xuất chức nhiệm vụ việc xây dựng mơ hình mơ mơ hình thực nghiệm 47 16 Kết luận chương CHƯƠNG 48 HỆ THỐNG ĐIỆN BA PHA DƯỚI TÁC ĐỘNG CỦA TẢI VÀ BỘ LỌC NGUỒN TÍCH CỰC 21 49 Xây dựng mơ hình mơ 49 211 Khối nguồn 51 212 Mơ hình tải 51 213 Mơ hình khối lọc tích cực 54 22 Điểu khiển mạch lọc tích cực ba pha 57 221 Chuyển đổi tín hiệu điều khiển 57 222 Mơ hình nghịch lưu ba pha 59 223 Các vấn đề điều chế điều khiển VSI 60 23 Kết mô hệ thống 70 231 Chế độ không tải 70 232 Chế độ tải R_L 73 24 Kết luận chương 80 CHƯƠNG CẢI TIẾN HIỆU NĂNG CỦA APF SỬ DỤNG BỘ ĐIỀU KHIỂN FUZZY-PI ………………………………………………………………………81 31 Thiết kế cải tiến điều khiển APF sử dụng điều khiển trượt Sling Mode 81 311 Giải tích hệ thống APF 84 312 Mơ hình điều khiển trượt phản hồi 84 313 Kết mô sử dụng điều khiển trượt 89 32 Cải tiến hiệu APF sử dụng điều khiển Fuzzy – PI 95 321 Thiết kế điều khiển Fuzzy-PID 322 Cải tiến ổn định điện áp tụ VSI 107 323 Kết mô ổn định điện áp tụ 110 324 Kết đo thực nghiệm 117 33 APF vai trò nâng cao chất lượng điện 95 122 331 Cải tiến giải thuật điều khiển cho VSI sử dụng điều khiển Fuzzy-PI 124 332 Kết mô với giải thuật nghiên cứu 126 vii 333 34 Kết thực nghiệm Kết luận chương CHƯƠNG 128 130 GIẢI PHÁP ĐIỀU KHIỂN THÍCH NGHI CHO BỘ LỌC TÍCH CỰC BA PHA …………………………………………………………………… 131 41 Cải tiến đáp ứng nối lưới trình APF hoạt động 131 411 Xây dựng mơ hình giải thuật nối lưới 412 Duy trì thơng số chất lượng q trình APF kết nối với lưới điện 136 413 Kết thực nghiệm nối lưới 42 Phát triển giải pháp điều khiển thích nghi cho lọc tích cực ba pha 131 139 141 Đề xuất phương pháp điều khiển bù sóng hài sử dụng mơ hình điều khiển bù dịng điện dự đốn 141 422 Kết mơ 151 423 Kết thực nghiệm 152 424 Kết luận chương 155 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 157 DANH MỤC CƠNG TRÌNH ĐÃ CƠNG BỐ 160 TÀI LIỆU THAM KHẢO 163 PHỤ LỤC ……………………………… …………………………………………168 I THIẾT KẾ MƠ HÌNH THỰC NGHIỆM ……………………………………… 168 1 Xây dựng mơ hình thực nghiệm bù sóng hài cho hệ thống điện pha sử dụng mạch lọc tích cực ………………………… ……………………………………………… 168 1 Đề xuất cấu trúc hệ thống ………………………… …………………… 168 1 Xác định thông số hệ thống ………………… …………………… 170 Mơ hình thực nghiệm ………………………………………………………… 172 Sơ đồ kết nối tín hiệu khối chức …… ……………………… …… 172 2 Cấu hình chức cho vi điều khiển … …… ……………………… ………173 Mơ hình thực nghiệm ………………… …… ……………………… …… 174 II CHƯƠNG TRÌNH ĐIỀU KHIỂN ……………………………………………… 180 viii DANH MỤC CÁC HÌNH ẢNH Hình 1 Các dạng mạch lọc tích cực Hình Lưới điện ba pha sử dụng lọc nguồn tích cực Hình Dòng điện nguồn, dòng điện tải dòng bù hệ thống điện Hình Sơ đồ khối nguyên lý lọc nguồn tích cực Hình Sơ đồ khối cấu hình lọc tích cực hệ thống điện ba pha Hình Mơ hình truyền tải sử dụng lọc nguồn tích cực Hình Sơ đồ nguyên lý phương pháp p-q Hình Hệ trục a-b-c α-β Hình Sơ đồ khối hệ thống APF Hình 10 Các kỹ thuật tính tốn dịng điện tham chiếu Hình 11 Phương pháp điều khiển dùng lý thuyết cơng suất tức thời Hình 12 Đồ thị hình thành thành phần cơng suất tức thời Hình 13 Đồ thị bù thành phần trung bình q cơng suất ảo Hình 14 Đồ thị cơng suất bù cho p 9 10 12 13 14 14 24 24 25 26 26 27 Hình 15 Đồ thị công suất sau lọc hài bậc cao 27 Hình 16 Đồ thị bù đạt PF=1 27 Hình 17 Mơ hình phi tuyến sơ đồ MBPC dùng mơ hình nội phản hồi để bổ yếu tốt nhiễu sai sai số mơ hình hóa 29 Hình 18 Phương pháp tìm kiếm dạng dùng điều khiển dự báo 31 Hình 19 Thiết lập ứng dụng điều khiển dự báo mờ dùng cấu trúc IMC 32 Hình 20 Sơ đồ khối tính dịng tham chiếu kỹ thuật thích nghi 34 Hình 21 Bộ điều khiển thích nghi dựa khâu điều khiển PI 35 Hình 22 Sơ đồ khối hệ thống xử lý mờ 36 Hình 23 Sơ đồ khối hệ thống xử lý mờ 36 Hình 24 Suy diễn mờ theo phương pháp MAX-MIN 38 Hình 25 Giải mờ dùng phương pháp điểm trọng tâm 39 Hình 26 Tập mờ loại 39 Hình 27 Thành phần thành phần hài bậc cao 41 Hình 28 Tam giác cơng suất 43 Hình Sơ đồ khối ngun lý mơ hình mơ 49 Hình 2 Mơ hình khối mơ hệ thống lọc tích cực pha 50 Hình Nguồn sine dạng vector biểu diễn hệ trục αβ: 51 Hình Mơ hình tốn tải R_L 52 Hình Mơ hình mơ tải ba pha R_L 52 Hình Mơ hình tải khơng lý tưởng 53 Hình Mơ hình tải R_L pha a 53 Hình Dịng điện khối tải khơng lý tưởng 54 Hình Mơ hình mơ khối lọc tích cực 54 Hình 10 Mơ khối điều khiển PI 55 Hình 11 Khối tạo dịng tham chiếu *d q ii * , 55 182 HAL_GPIO_WritePin(GPIOG, HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); ENA_UART_Pin|DISABLE5_Pin|DISABLE6_Pin| DISABLE7_Pin /* CẤU HÌNH PORT I/O: PF0 PF3 PF4 PF6 PF8 PF10 PF12 PF14PF15 */ |DISABLE8_Pin, GPIO_InitStruct Pin GPIO_PIN_RESET); = GPIO_PIN_0|GPIO_PIN_3|GPIO_PIN_4|GPIO_PI /*Configure GPIO pin Output Level */ N_6 HAL_GPIO_WritePin(GPIOD, |GPIO_PIN_8|GPIO_PIN_10|GPIO_PIN_12|GPIO_ DISABLE1_Pin|DISABLE2_Pin|DISABLE3_Pin|DI PIN_14|GPIO_PIN_15; SABLE4_Pin, GPIO_PIN_RESET); GPIO_InitStruct Mode /*Configure GPIO pins : PE2 PE3 PE6 PE7 GPIO_MODE_ANALOG; PE8 PE10 PE14 PE15 GPIO_InitStruct Pull = GPIO_NOPULL; PE0 PE1 */ HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); GPIO_InitStruct Pin = = /*Configure GPIO pins : INPUT_Pin PF2 */ GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_6|GPIO_PI GPIO_InitStruct Pin = INPUT_Pin|GPIO_PIN_2; N_7 GPIO_InitStruct Mode = |GPIO_PIN_8|GPIO_PIN_10|GPIO_PIN_14|GPIO_ GPIO_MODE_OUTPUT_PP; PIN_15 GPIO_InitStruct Pull = GPIO_NOPULL; |GPIO_PIN_0|GPIO_PIN_1; GPIO_InitStruct Mode = = GPIO_SPEED_FREQ_LOW; GPIO_MODE_ANALOG; HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); GPIO_InitStruct Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); /* CẤU HÌNH PORT I/O: PI8 PI10 PI11 PI2 /* CẤU HÌNH PORT I/O: PH0PH1PH2PH3PH4 PH5PH6PH7PH8 PH9 PH10 PH11PH12 */ GPIO_InitStruct Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PI PI3 PI4 PI5 PI6 */ GPIO_InitStruct Pin GPIO_InitStruct Speed = GPIO_PIN_8| N_3|GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_6| GPIO_PIN_10|GPIO_PIN_11|GPIO_PIN_2 GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_9|GPIO_PI |GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5|GPIO_PI N_10| GPIO_PIN_11|GPIO_PIN_12; N_6|GPIO_PIN_7; GPIO_InitStruct Mode GPIO_MODE_ANALOG; GPIO_InitStruct Mode = GPIO_MODE_ANALOG; GPIO_InitStruct Pull = GPIO_NOPULL; GPIO_InitStruct Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOH, &GPIO_InitStruct); HAL_GPIO_Init(GPIOI, &GPIO_InitStruct); /*Configure GPIO pins : PA2 PA3 PA8 PA9 PA10 PA11 PA15 */ /*CẤU HÌNH PORT I/O: PC13 PC14 PC15 PC0 PC1 PC2 PC5 PC9 PC10 PC11 PC12 */ GPIO_InitStruct Pin = GPIO_InitStruct Pin = GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_8|GPIO_PI = N_9 GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15|GPIO_ |GPIO_PIN_10|GPIO_PIN_11|GPIO_PIN_15; PIN_0 |GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_5|GPIO_PI GPIO_InitStruct Mode GPIO_MODE_ANALOG; N_9 GPIO_InitStruct Pull = GPIO_NOPULL; |GPIO_PIN_10|GPIO_PIN_11|GPIO_PIN_12; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); GPIO_InitStruct Mode GPIO_MODE_ANALOG; GPIO_InitStruct Pull = GPIO_NOPULL; = /*Configure GPIO pins : PB2 PB10 PB11 PB12 PB13 PB3 PB4 PB5 PB6 PB7 PB8 PB9 */ = 183 GPIO_InitStruct Pin = GPIO_InitStruct Pull = GPIO_NOPULL; GPIO_PIN_2|GPIO_PIN_10|GPIO_PIN_11|GPIO_P GPIO_InitStruct Speed IN_12|GPIO_PIN_13|GPIO_PIN_3| GPIO_PIN_4| GPIO_SPEED_FREQ_LOW; GPIO_PIN_5|GPIO_PIN_6| GPIO_PIN_7| = HAL_GPIO_Init(GPIOG, &GPIO_InitStruct); GPIO_PIN_8| GPIO_PIN_9; /*Configure GPIO pins : PH14 PH15 */ GPIO_InitStruct Mode = GPIO_MODE_ANALOG; GPIO_InitStruct Pin GPIO_InitStruct Pull = GPIO_NOPULL; = GPIO_PIN_14|GPIO_PIN_15; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); GPIO_InitStruct Mode = GPIO_MODE_INPUT; /*Configure GPIO pins : PG0 PG1 PG3 PG4 GPIO_InitStruct Pull = GPIO_NOPULL; PG5 PG7 PG8 PG9 HAL_GPIO_Init(GPIOH, &GPIO_InitStruct); PG14 PG15 */ /*Configure GPIO pins : PI0 PI1 */ GPIO_InitStruct Pin = GPIO_InitStruct Pin = GPIO_PIN_0|GPIO_PIN_1; GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_3|GPIO_PI GPIO_InitStruct Mode = GPIO_MODE_INPUT; N_4|GPIO_PIN_5|GPIO_PIN_7|GPIO_PIN_8| GPIO_InitStruct Pull = GPIO_NOPULL; GPIO_PIN_9|GPIO_PIN_14|GPIO_PIN_15; HAL_GPIO_Init(GPIOI, &GPIO_InitStruct); GPIO_InitStruct Mode = /*Configure GPIO_MODE_ANALOG; GPIO pins GPIO_InitStruct Pin = HAL_GPIO_Init(GPIOG, &GPIO_InitStruct); DISABLE3_Pin| DISABLE4_Pin; /*Configure GPIO pins : PD8 PD9 PD10 PD11 PD12 PD13 PD14 PD15 = GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10|GPIO_PI N_11|GPIO_PIN_12|GPIO_PIN_13|GPIO_PIN_14| GPIO_PIN_15|GPIO_PIN_0|GPIO_PIN_5|GPIO_PI N_6|GPIO_PIN_7; GPIO_InitStruct Mode = GPIO_MODE_ANALOG; GPIO_InitStruct Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOD, &GPIO_InitStruct); } /* USER CODE BEGIN */ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTy peDef *htim) { GPIO_InitStruct Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOD, &GPIO_InitStruct); /*Configure GPIO pin : BUTTON_ACT_Pin */ if GPIO_InitStruct Mode = GPIO_MODE_INPUT; GPIO_InitStruct Pull = GPIO_PULLUP; HAL_GPIO_Init(BUTTON_ACT_GPIO_Port, { ((TIM_TypeDef DISABLE5_Pin DISABLE6_Pin DISABLE7_Pin DISABLE8_Pin */ = ENA_UART_Pin|DISABLE5_Pin| DISABLE6_Pin|DISABLE7_Pin|DISABLE8_Pin; GPIO_MODE_OUTPUT_PP; = *) (0x40010000))- >CNT=((TIM_TypeDef *) (0x40010400))->CNT; // Timer1 and Timer8 synchronization } &GPIO_InitStruct); /*Configure GPIO pins : ENA_UART_Pin (htim- >Instance==htim1 Instance) GPIO_InitStruct Pin = BUTTON_ACT_Pin; GPIO_InitStruct Mode DISABLE1_Pin|DISABLE2_Pin| GPIO_InitStruct Speed = GPIO_SPEED_FREQ_LOW; PD0 PD5 PD6 PD7 */ GPIO_InitStruct Pin DISABLE1_Pin DISABLE2_Pin DISABLE3_Pin DISABLE4_Pin */ GPIO_InitStruct Pull = GPIO_NOPULL; GPIO_InitStruct Pin : if (htim- >Instance==htim3 Instance) { HAL_GPIO_WritePin(GPIOF,GPIO_PIN_2,1); b++; htim3 Init Period = 1799; period=T_interrupt*T_timer_clock-1=20us*200e61=3999adc1=HAL_ADCEx_InjectedGetValue(&ha dc1,1);//Vc2 184 Vc2=0 0152992*(adc1-Vc2_offset); cos_theta=cos(theta_gc); adc2=HAL_ADCEx_InjectedGetValue(&hadc1,2) // reference signals ; Mag=5000*ma; //Vc1 if (regbank[0][23]==0)// islanding mode Vc1=0 0156176*(adc2-Vc1_offset); { adc3=HAL_ADCEx_InjectedGetValue(&hadc2,1) err_Ia=Ia-I_ref_a; ; err_Ib=-Ia-Ic-I_ref_b; // I_load err_Ic=Ic-I_ref_c; IL=0 000354296*(adc3-IL_offset); Va_ref=5000*(sin_theta); adc4= Vb_ref=5000*(- HAL_ADCEx_InjectedGetValue(&hadc2,2); 5*sin_theta+0 866025404*cos_theta); adc5=HAL_ADCEx_InjectedGetValue(&hadc2,3) Vc_ref=5000*(-0 5*sin_theta0 866025404*cos_theta); ; adc6=HAL_ADCEx_InjectedGetValue(&hadc3,1) // *ĐIỀU KHIỂN ĐIỆN ÁP TỤ */ //Vdc_ref=40; ; err_Vdc=Vdc_ref-(Vc1+Vc2); //Vca Vca=0 0320598*(adc6-Vca_offset); Duty=Duty_old+(Kp_Vdc+Ki_Vdc)*err_Vdc- adc7=HAL_ADCEx_InjectedGetValue(&hadc3,2) Kp_Vdc*err_Vdc_old; if (Duty>1) Duty=1; ; // Ic Ic=0 000354296*(adc7-Ic_offset); adc8=HAL_ADCEx_InjectedGetValue(&hadc3,3) ; //Vab Vab=0 0301928*(adc8-Vab_offset); adc9=HAL_ADCEx_InjectedGetValue(&hadc3,4) ; //Ia if (Dutyf_max) up=0; err_Vdc_old=err_Vdc; Duty=0; else if (count1delta_f2) up2=0; D2=(int)(Duty*5000); else if (del_t21) Iac_c=1; theta_g+=delta_theta; if (Iac_ctwo_pi) theta=theta-two_pi; //ma=err_Iac*Kp_Iac; if(theta_g>two_pi) theta_g=theta_g-two_pi; if (ma>1) if(theta_gc>two_pi) theta_gc=theta_gc-two_pi; if (ma1) Duty=1; if (Duty0) D1=(int)(10000-Duty*5000); { D2=(int)(Duty*5000); HAL_TIM_SET_COMPARE(&htim8,TIM_CHA //* KẾT THÚC ĐIỀU KHIỂN ĐIỆN ÁP TỤ*/ NNEL_1,(int)Vb_ref);//Bs1s3 //Iac regulator/////////////////////////////////////////// HAL_TIM_SET_COMPARE(&htim1,TIM_CHA err_Iac=Iac_ref-Ia_m; NNEL_3,(int)(Vtrim));//Bs2s4 Iac_c=Iac_c_old+(Kp_Iac+Ki_Iac)*err_Iac- HAL_TIM_SET_COMPARE(&htim8,TIM_CHA Kp_Iac*err_Iac_old; NNEL_1,(int)b13);//Bs1s3 if (Iac_c>40) Iac_c=40; } if (Iac_cCR1; NNEL_3,(int)b24);//Bs2s4 HAL_TIM_SET_COMPARE(&htim2,TIM_CHA } NNEL_1,D1); if (Vc_ref>0) HAL_TIM_SET_COMPARE(&htim2,TIM_CHA { NNEL_2,D2); HAL_TIM_SET_COMPARE(&htim1,TIM_CHA if (Va_ref>0) NNEL_2,(int)Vc_ref);//Cs1s3 { HAL_TIM_SET_COMPARE(&htim1,TIM_CHA HAL_TIM_SET_COMPARE(&htim8,TIM_CHA NNEL_1,(int)(Vtrim));//Cs2s4 NNEL_3,(int)Va_ref);//As1s3 //if (Va_ref>Vcarr1) HAL_TIM_SET_COMPARE(&htim1,TIM_CHA {out[0]=1; } else {out[0]=0; (- NNEL_2,(int)c13);//Cs1s3 } else 186 { IL_f=IL*0 001+IL_old*0 999;IL_old=IL_f; HAL_TIM_SET_COMPARE(&htim1,TIM_CHA max_scale=two_pi; NNEL_1,(int)(5000+Vc_ref));//Cs2s4 theta=two_pi; HAL_TIM_SET_COMPARE(&htim1,TIM_CHA DAC=(uint16_t)(err_Ia*2047 0/max_scale+2047); NNEL_2,(int)0);//Cs1s3 DAC2=(uint16_t)(I_ref*2047 0/max_scale+2047); HAL_TIM_SET_COMPARE(&htim1,TIM_CHA DAC2=(uint16_t)(Ia*2047 0/max_scale+2047); NNEL_1,(int)(c24));//Cs2s4 //err_Iac } HAL_DAC_SetValue(&hdac1, ////////////////////////////////////////// if (Vab>0) { if DAC_CHANNEL_1, DAC_ALIGN_12B_R, DAC); (Vab>Vab_max) //max 4096 Vab_max=Vab; Vab_status=1;countvab=0;} HAL_DAC_Start(&hdac1, DAC_CHANNEL_1); if (Vab0) { if (Vca>Vca_max) HAL_DAC_Start(&hdac1, DAC_CHANNEL_2); Vca_max=Vca; Vca_status=1;countvca=0;} //DAC_get=HAL_DAC_GetValue(&hdac1, if (Vca0) { if (Ia>Ia_max) Ia_max=Ia; uint16_t crc_cal(uint8_t* data, int num) Ia_status=1;countia=0;} if (Ia9)) uint16_t crc; {Ia_m=Ia_max;Ia_max=0;Ia_status=0;}} crc = 0xffff; if (Ic>0) for (j=0; j < num; j++) { if (Ic>Ic_max) Ic_max=Ic; { Ic_status=1;countic=0;} if (Ic> 1; filter AB crc = crc ^ 0xa001; if (Vab_f> 1); Im=k*IL_f; } I_ref_a=-Im*sin_theta; } I_ref_b=-Im*(0 5*sin_theta+0 866025404*cos_theta); crc = (uint16_t)(((crc > 8)) & 0xffff); I_ref_c=-Im*(-0 5*sin_theta0 866025404*cos_theta); = return crc; } 187 uint8_t enable_tx = 0; uint8_t rs485_state = 0; cmd = input_data[1] = rx485_buff[0]; uint8_t cmd; uint8_t High_Address; cmd; uint8_t Low_Address; rs485_state = 2; uint8_t High_Number; break; uint8_t Low_Number; case 2: uint8_t CRC_H; High_Address uint8_t CRC_L; rx485_buff[0]; uint16_t DATA_CRC; input_data[2] = High_Address; uint16_t MyCRC; rs485_state = 3; char valid_data[6]; break; uint8_t input_data[6]; case 3: void Low_Address = rx485_buff[0]; HAL_UART_RxCpltCallback(UART_HandleType input_data[3] = Low_Address; Def *huart) rs485_state = 4; { break; /* Prevent unused argument(s) compilation case 4: High_Number = rx485_buff[0]; warning */ input_data[4] = High_Number; /* NOTE : This function should not be rs485_state = 5; modified, break; case 5: when the callback is needed, the HAL_UART_RxCpltCallback can be Low_Number = rx485_buff[0]; input_data[5] = Low_Number; implemented in the user file */ char i; if (huart->Instance == UART4) //current rs485_state = 6; break; UART case 6: { switch(rs485_state) CRC_H = rx485_buff[0]; { rs485_state = 7; case 0: break; if (rx485_buff[0] == ID) case 7: CRC_L = rx485_buff[0]; { DATA_CRC = CRC_H*256 + CRC_L; rs485_state = 1; MyCRC = crc_cal(input_data,6); input_data[0] = ID; if(MyCRC == DATA_CRC) } { else for( i=0; i

Ngày đăng: 05/08/2022, 10:49

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

TÀI LIỆU LIÊN QUAN

w