Cấu trúc bộ nghịch lưu dạng cascade gồm nhiều cầu nghịch lưu H ghép nối tiếp nhau, và mỗi cầu nghịch lưu này sử dụng một nguồn áp dc độc lập. Thông thường nguồn dc này được lấy từ máy biến áp có nhiều cuộn dây thứ cấp độc lập, hoặc từ nhiều biến áp riêng biệt hoặc từ ắc quy.
Bằng cách kích đóng các linh kiện trong mỗi bộ nghịch lưu áp một pha, ba mức điện áp (-Vd, 0, Vd) được tạo thành. Sự kết hợp hoạt động của n bộ nghịch lưu áp trên một nhánh sẽ tạo nên n mức điện áp âm (-Vd, -2*Vd, ...-n*Vd); n mức điện áp dương (Vd, 2*Vd,…n*Vd) và mức áp 0. Như vậy, bộ nghịch lưu áp dạng cascade gồm n bộ nghịch lưu áp một pha trên mỗi nhánh sẽ tạo thành bộ nghịch lưu (2n+1) bậc.
- Ưu điểm chính của bộ nghịch lưu này là: + Đạt được sự cân bằng điện áp các nguồn DC. + Không sử dụng diode kẹp hay tụ.
+ Tần số đóng ngắt cho một linh kiện có thể giảm đi n lần. - Nhược điểm chính của bộ nghịch lưu này là:
+ Số lượng linh kiện công suất nhiều, mạch điều khiển phức tạp + Phải sử dụng biến áp ở ngõ ra.
+ - + - + - A B C + - + - + - Vd/2 Vd/2 Vd/2 Vd/2 Vd/2 Vd/2
Hình 2.10 Cấu trúc bộ nghịch lưu đa bậc dạng Cascade 2.4.4 Dạng nghịch lưu kép
Cấu trúc bộ nghịch lưu kép gồm hai loại, loại dùng nguồn riêng (hình 2.11) và loại dùng chung nguồn hay nguồn đơn (hình 2.12). Đối với bộ nghịch lưu nguồn riêng thì có nhược điểm là mất cân bằng điện áp nguồn nên ít được sử dụng. Trong bộ nghịch lưu kép thì mỗi bộ nghịch lưu có 8 trạng thái hoạt động, tổng hợp của hai bộ nghịch lưu có tất cả 64 trạng thái hoạt động. Cụ thể chúng ta có: 10 vector không, 36 vector biên độ 2Vdc/3, 12 vector biên độ 2√3Vdc/3, 6 vector biên độ 4Vdc/3
Hình 2.11 Cấu trúc bộ nghịch lưu kép nguồn riêng
Bộ nghịch lưu kép này được điều khiển bằng phương pháp vector không gian hay phương pháp điều chế độ rộng xung, có thể giảm số lần chuyển mạch, giảm điện áp common mode, giảm dòng rò.
Hình 2.12 Cấu trúc bộ nghịch lưu kép nguồn đơn (chung nguồn)
2.5 Bộ điều khiển PID
2.5.1 Giới thiệu tổng quát
PIDlà một bộ điều khiển vi tích phân tỉ lệ (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 toá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.
Giải thuật tính toán bộ điều khiển PID bao gồm 3 thông số riêng biệt, do đó đôi khi nó còn được gọi là điều khiển ba khâu: các giá trị tỉ lệ, tích phân và đạo hàm, viết tắt là P, I, và D. Giá trị tỉ lệ xác định tác động của sai số hiện tại, giá trị tích phân xác định tác động của tổng các sai số quá khứ, và giá trị vi phân xác định tác động của tốc độ biến đổi sai số. Tổng chập của ba tác động này dùng để điều chỉnh quá trình thông qua một phần tử điều khiển như vị trí của van điều khiển hay bộ nguồn của phần tử gia nhiệt. Nhờ vậy, những giá trị này có thể làm sáng tỏ về quan hệ thời gian: P phụ thuộc vào sai số hiện tại, I phụ thuộc vào tích lũy các sai số quá khứ, và D dự đoán các sai số tương lai, dựa vào tốc độ thay đổi hiện tại.
Sơ đồ điều khiển PID được đặt tên theo ba khâu hiệu chỉnh của nó, tổng của ba khâu này tạo thành bởi các biến điều khiển (MV).
Ta có công thức:
MV(t) = Pout + Iout + Dout
Trong đó Pout, Iout và Dout là các thành phần đầu ra từ ba khâu của bộ điều khiển PID.
2.5.2 Khâu tỉ lệ
Khâu tỉ lệ (đôi khi còn được gọi là độ lợi) làm thay đổi giá trị đầu ra, tỉ lệ với giá trị sai số hiện tại. Đáp ứng tỉ lệ có thể được điều chỉnh bằng cách nhân sai số đó với một hằng số Kp, được gọi là độ lợi tỉ lệ.
Khâu tỉ lệ được cho bởi công thức:
Pout = Kp*e(t) Trong đó:
Pout: thừa số tỉ lệ của đầu ra
(2.1)
Kp: độ lợi tỉ lệ, thông số điều chỉnh
e: sai số = SP – PV (PV giá trị đầu ra, SP giá trị đặt mong muốn ngõ ra) t: thời gian tại điểm đang xét hiện tại.
2.5.3 Khâu tích phân
Phân phối của khâu tích phân (đôi khi còn gọi là reset) tỉ lệ thuận với cả biên độ sai số lẫn quảng thời gian xảy ra sai số. Tổng sai số tức thời theo thời gian (tích phân sai số) cho ta tích lũy bù đã được hiệu chỉnh trước đó. Tích lũy sai số sau đó được nhân với độ lợi tích phân và cộng với tín hiệu đầu ra của bộ điều khiển. Biên độ phân phối của khâu tích phân trên tất cả tác động điều chỉnh được xác định bởi độ lợi tích phân, Ki.
Thừa số tích phân được cho bởi công thức: Iout = 𝐾𝑖 ∫ 𝑒(
𝑡 0
τ) dτ Trong đó:
Iout: thừa số tích phân của đầu ra
Ki: độ lợi tích phân, 1 thông số điều chỉnh
e: sai số = SP – PV
t: thời gian tại thời điểm hiện tại đang xét
τ: một biến tích phân trung gian
Khâu tích phân (khi cộng thêm khâu tỉ lệ) sẽ tăng tốc chuyển động của quá trình tới điểm đặt và khử số dư sai số ổn định với một tỉ lệ chỉ phụ thuộc vào bộ điều khiển. Tuy nhiên, vì khâu tích phân là đáp ứng của sai số tích lũy trong quá khứ, nó có thể khiến giá trị hiện tại vọt lố qua giá trị đặt (ngang qua điểm đặt và tạo ra một độ lệch với các hướng khác).
2.5.4 Khâu vi phân
Tốc độ thay đổi của sai số qua trình được tính toán bằng cách xác định độ dốc của sai số theo thời gian (tức là đạo hàm bậc một theo thời gian) và nhân tốc độ (2.3)
này với độ lợi tỉ lệ Kd. Biên độ của phân phối khâu vi phân (đôi khi được gọi là tốc độ) trên tất cả các hành vi điều khiển được giới hạn bởi độ lợi vi phân, Kd. Thừa số vi phân được cho bởi công thức:
Dout = Kd𝑑𝑡𝑑 𝑒(𝑡)
Trong đó:
Dout: thừa số vi phân của đầu ra
Kd: độ lợi vi phân, một thông số điều chỉnh e: sai số = SP – PV
t: thời gian tại thời điểm đang xét
Khâu vi phân làm chậm tốc độ thay đổi của đầu ra bộ điều khiển và đặc tính này là đang chú ý nhất để đạt tới điểm đặt của bộ điều khiển. Từ đó, điều khiển vi phân được sử dụng để làm giảm biên độ vọt lố được tạo ra bởi thành phần tích phân và tăng cường độ ổn định của bộ điều khiển hỗn hợp. Tuy nhiên, phép vi phân của một tín hiệu sẽ khuếch đại nhiễu và do đó khâu này sẽ nhạy hơn đối với nhiễu trong sai số, và có thể khiến quá trình trở nên không ổn định nếu nhiễu và độ lợi vi phân đủ lớn. Do đó một xấp xỉ của bộ vi sai với băng thông giới hạn thường được sử dụng hơn.
2.6 Tổng quan về DSP
2.6.1 Giới thiệu kit nhúng DSP TMS320/F28335
• Công nghệ CMOS tĩnh hiệu suất cao đến 150MHz (Thời gian chu kỳ
6,67ns)
• CPU 32-Bit hiệu suất cao (TMS320C28x )
- Kiến trúc Harvard Bus - Đáp ứng ngắt nhanh
- Mô hình lập trình bộ nhớ thống nhất - Mã hiệu quả ( trong C/C++ và hợp ngữ )
• Bộ điều khiển DMA sáu kênh (ADC, McBSP, ePWM, XINTF, và SARAM )
• Giao tiếp ngoại vi 16-bit hoặc 32-Bit
• On - Chip Memory
- F28335, F28235: 256Kx16 Flash, 34Kx16 SARAM
• Boot ROM (8Kx16 )
- Chế độ khởi động phần mềm (thông qua SCI, SPI, CAN, I2C, McBSP, XINTF, và I/O song song)
• Hệ thống điều khiển và đồng hồ
- Hỗ trợ thay đổi tỷ lệ PLL động - On Chip Oscillator
- Module Watchdog Timer
• Các chân GPIO 0 đến GPIO 63 có thể được kết nối với một đến tám ngắt
ngoài lõi (Core)
• Khối mở rộng ngắt ngoại vi
• Khóa/mã khóa an toàn 128-Bit
- Bảo vệ Blocks Flash/OTP/RAM
- Ngăn chặn kỹ thuật đảo ngược phần mềm
• Tăng cường kiểm soát thiết bị ngoại vi
- Lên đến 18 đầu ra PWM
- Lên đến 6 đầu ra HRPWM với 150ps MEP
• Độ chính xác
- Lên đến 6 đầu vào giữ sự kiện
- Lên đến 2 giao diện mã hóa lệch pha nhau 90°
- Lên đến 8 Timer 32Bit(6 cho eCAPs và 2 cho eQEPs) - Lên đến 9 Timer 16Bit (6 cho ePWMs và 3 XINTCTRs)
• Thiết bị ngoại vi cổng nối tiếp - Lên đến 2 module CAN
- Lên đến 3 module SCI (UART )
- Lên đến 2 module McBSP (cấu hình như SPI) - Một module SPI
- Một bus Inter - Integrated Circuit (I2C)
• ADC 12Bit, 16 kênh
- Tỷ lệ chuyển đổi 80ns
- Bộ dồn kênh đầu vào 2x8 kênh - Chuyển đổi đồng thời/độc lập - Lấy mẫu bên trong hoặc ngoài
• Lên đến 88 cá thể lập trình, các chân GPIO đa hợp với lọc đầu vào
• Hỗ trợ quét biên JTAG
• Tính năng mô phỏng nâng cao
- Real Time gỡ lỗi thông qua phần cứng
• Hỗ trợ phát triển bao gồm
- ANSI C/C++ Compiler/Assembler/Linker - Code Composer Studio IDE
- DSP/BIOS
- Thư viện phần mềm điều khiển động cơ số và nguồn số
• Chế độ Low Power và tiết kiệm điện (hỗ trợ IDLE, STANDBY, HALT)
2.6.2 Giới thiệu
2.6.2.1 Sự phân chia các chân và mô tả các tín hiệu
Hình 2.13 Card DSP TMS320F28335
Bảng 2.1 Các GPIO cơ bản của CARD DSP TMS320F28335
Tên Thông tin
GPIO0 Mục đích sử dụng là đầu vào hoặc đầu ra 0 (vào/ra/trở kháng
cao) EPWM1A
Ngõ ra A bộ tăng cường PWM1 và kênh HRPWM (ngõ ra)
GPIO1 Mục đích sử dụng là đầu vào hoặc đầu ra 1 (I/O/Z)
EPWM1B Ngõ ra B bộ tăng cường PWM1
ECAP6 Ngõ vào/ra tăng cường tự kích
MFSRB Ngõ vào/ra McBSP-B nhận cửa đồng bộ
GPIO2 Mục đích sử dụng là đầu vào hoặc đầu ra 2 (vào/ra/trở kháng
cao)
GPIO3 Mục đích sử dụng là đầu vào hoặc đầu ra 3 ((I/O/Z)
EPWM2B Ngõ ra B bộ tăng cường PWM2
ECAP5 Ngõ vào/ra tăng cường tự kích
MCLKRB Ngõ vào/ra McBSP-B nhận xung clock
GPIO4 Mục đích sử dụng là đầu vào hoặc đầu ra 4 (vào/ra/trở kháng
cao)
EPWM3A Ngõ ra A bộ tăng cường PWM3 và kênh HRPWM (ngõ ra)
GPIO5 Mục đích sử dụng là đầu vào hoặc đầu ra 5 ((I/O/Z)
EPWM3B Ngõ ra B bộ tăng cường PWM3
ECAP1 Ngõ vào/ra tăng cường tự kích
MFSRA Ngõ vào/ra McBSP-A nhận của sổ đồng bộ
GPIO6 Mục đích sử dụng là đầu vào hoặc đầu ra 6 (I/O/Z)
EPWM4A Ngõ ra A bộ tăng cường PWM4 và kênh HRPWM (ngõ ra)
EPWMSYN CI EPWMSYN
O
Ngõ vào đồng bộ xung ePWM bên ngoài Ngõ ra đồng bộ xung ePWM bên ngoài
GPIO7 Mục đích sử dụng là đầu vào hoặc đầu ra 7 (I/O/Z)
EPWM4B Ngõ ra B bộ tăng cường PWM4
ECAP2 Ngõ vào/ra tăng cường tự kích
MCLKRA Ngõ vào/ra McBSP-A nhận xung clock
GPIO8 Mục đích sử dụng là đầu vào hoặc đầu ra 8 (I/O/Z)
EPWM5A Ngõ ra A bộ tăng cường PWM5và kênh HRPWM (ngõ ra)
𝐴𝐷𝐶𝑆𝑂𝐶𝐴𝑂
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ Ngõ ra cho phép chuyển đổi ADC kênh A
GPIO9 Mục đích sử dụng là đầu vào hoặc đầu ra 8 (I/O/Z)
EPWM5B Ngõ ra B bộ tăng cường PWM5
ECAP3 Ngõ vào/ra tăng cường tự kích
SCITXDB Ngõ ra chuyển dữ liệu SCI-B
GPIO10 Mục đích sử dụng là đầu vào hoặc đầu ra 10 (I/O/Z)
EPWM6A Ngõ ra A bộ tăng cường PWM6 và kênh HRPWM (ngõ ra)
CANRXB Tăng cường nhận CAN-B
𝐴𝐷𝐶𝑆𝑂𝐶𝐵𝑂
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ Ngõ ra cho phép chuyển đổi ADC kênh B
GPIO11 Mục đích sử dụng là đầu vào hoặc đầu ra 8 (I/O/Z)
EPWM6B Ngõ ra B bộ tăng cường PWM6
ECAP4 Ngõ vào/ra tăng cường tự kích
2.6.2.2 Tổng quan chức năng
2.6.3 Sơ đồ bộ nhớ
Bảng 2.2 Địa chỉ phân vùng Flash trong F28335
2.7 Tổng quan về FPGA
2.7.1 FPGA là gì?
FPGA (Field-Programmable Gate Array) là vi mạch dùng cấu trúc mảng phần tử logic mà người dùng có thể lập trình được. Vi mạch FPGA được cấu thành từ các bộ phận:
- Các khối logic cơ bản lập trình được (logic block) - Hệ thống mạch liên kết lập trình được
- Khối vào/ra (IO Pads)
- Phần tử thiết kế sẵn khác như DSP slice, RAM, ROM, nhân vi xử lý... So sánh FPGA với ASIC và các vi mạch bán dẫn khác:
ASIC (Application-Specific Integrated Circuit) là một vi mạch IC được thiết kế dành cho một ứng dụng cụ thể.
FPGA cũng được xem như một loại vi mạch bán dẫn chuyên dụng ASIC, nhưng nếu so sánh FPGA với những ASIC đặc chế hoàn toàn hay ASIC thiết kế
trên thư viện logic thì FPGA không đạt đựợc mức độ tối ưu như những loại này, và hạn chế trong khả năng thực hiện những tác vụ đặc biệt phức tạp, tuy vậy FPGA ưu việt hơn ở chỗ có thể tái cấu trúc lại khi đang sử dụng, công đoạn thiết kế đơn giản do vậy chi phí giảm, rút ngắn thời gian đưa sản phẩm vào sử dụng.
Còn nếu so sánh với các dạng vi mạch bán dẫn lập trình được dùng cấu trúc mảng phần tử logic như PLA, PAL, CPLD thì FPGA ưu việt hơn các điểm:
- Tác vụ tái lập trình của FPGA thực hiện đơn giản hơn. - Khả năng lập trình linh động hơn
- Kiến trúc của FPGA cho phép nó có khả năng chứa khối lượng lớn cổng logic (logic gate), so với các vi mạch bán dẫn lập trình được có trước nó.
Thiết kế hay lập trình cho FPGA được thực hiện chủ yếu bằng các ngôn ngữ mô tả phần cứng HDL như VHDL, Verilog, AHDL, các hãng sản xuất FPGA lớn như Xilinx, Altera thường cung cấp các gói phần mềm và thiết bị phụ trợ cho quá trình thiết kế, cũng có một số các hãng thứ ba cung cấp các gói phần mềm kiểu này như Synopsys, Synplify... Các gói phần mềm này có khả năng thực hiện tất cả các bước của toàn bộ quy trình thiết kế IC chuẩn với đầu vào là mã thiết kế trên HDL (còn gọi là mã RTL).
2.7.2 Ứng dụng của FPGA
Ứng dụng của FPGA bao gồm: xử lý tín hiệu số DSP, các hệ thống hàng không, vũ trụ, quốc phòng, tiền thiết kế mẫu ASIC (ASIC prototyping), các hệ thống điều khiển trực quan, phân tích nhận dạng ảnh, nhận dạng tiếng nói, mật mã học, mô hình phần cứng máy tính...
Do tính linh động cao trong quá trình thiết kế cho phép FPGA giải quyết lớp những bài toán phức tạp mà trước kia chỉ thực hiện nhờ phần mềm máy tính, ngoài ra nhờ mật độ cổng logic lớn FPGA được ứng dụng cho những bài toán đòi hỏi khối lượng tính toán lớn và dùng trong các hệ thống làm việc theo thời gian thực.
2.7.3 Cấu trúc của 1 FPGA
Cấu trúc tổng thể của một FPGA được minh họa ở hình sau:
Hình 2.16 Cấu trúc tổng thể 1 FPGA
2.7.3.1 Khối logic FPGA
Hình 2.17 Khối logic FPGA
Phần tử chính của FPGA là các khối logic (logic block). Khối logic được cấu thành từ LUT và một phần tử nhớ đồng bộ flip-flop.
LUT (Look up table) là khối logic có thể thực hiện bất kì hàm logic nào từ 4
đầu vào, kêt quả của hàm này tùy vào mục đích mà gửi ra ngoài khối logic trực tiếp hay thông qua phần tử nhớ flip-flop.
Nếu nhìn cấu trúc tổng thể của mảng LUT thì ngoài 4 đầu vào kể trên còn hỗ trợ thêm 2 đầu vào bổ sung từ các khối logic phân bố trước và sau nó nâng tổng số đầu vào của LUT lên 6 chân. Cấu trúc này là nhằm tăng tốc các bộ số học logic.