Trình bày những tìm hiểu xung quanh đối tượng động cơ thực
tế sử dụng. Lý do của việc này là: Khi mua động cơ từ hãng cung cấp
LinMot, bộ truyền động động cơ tuyến tính đã bao gồm compact một
hệ thống động cơ+drive+phần mềm. Do vậy, các tài liệu hãng cung cấp
chủ yếu trên quan điểm dành cho người sử dụng, lập trình ứng dụng
(application). Các thông số về điện của động cơ là hết sức khiêm tốn,
gây khó khăn nhất định cho công việc tiến hành thiết kế chế tạo và thử
nghiệm bộ điều khiển LinDrive.
29 trang |
Chia sẻ: lvbuiluyen | Lượt xem: 2221 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Thiết kế chế tạo và thử nghiệm bộ điều khiển LinDrive, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
- 1 -
LUẬN VĂN
Thiết kế chế tạo và thử nghiệm
bộ điều khiển LinDrive
- 2 -
GIỚI THIỆU
Báo cáo sẽ bao gồm 03 phần:
Phần I: Trình bày những tìm hiểu xung quanh đối tượng động cơ thực
tế sử dụng. Lý do của việc này là: Khi mua động cơ từ hãng cung cấp
LinMot, bộ truyền động động cơ tuyến tính đã bao gồm compact một
hệ thống động cơ+drive+phần mềm. Do vậy, các tài liệu hãng cung cấp
chủ yếu trên quan điểm dành cho người sử dụng, lập trình ứng dụng
(application). Các thông số về điện của động cơ là hết sức khiêm tốn,
gây khó khăn nhất định cho công việc tiến hành thiết kế chế tạo và thử
nghiệm bộ điều khiển LinDrive.
Phần II: trình bày những thao tác thực hiện thực nghiệm đối với mạch
thiết kế theo phiên bản lần 1. Tuy nhiên, thực nghiệm cho thấy thiết kế
này là không phù hợp với điều kiện nghiên cứu ban đầu. Thiết kế này
sẽ phù hợp hơn trong điều kiện các nghiên cứu trước đó đã cho kết quả
ổn định, cần tinh giảm linh kiện, hạ giá thành phù hợp cho thương
phẩm. Phần III trình bày các cải tiến trong mạch thiết kế lần 2, trong đó
bổ xung các mạch bảo vệ điện tử công suất, mạch CPLD để thay đổi
linh hoạt phương thức kết hợp giao hoán các kênh điều khiển, các kết
quả đo thực tế.
- 3 -
PHẦN I:
THÔNG SỐ ĐỘNG CƠ VÀ CẢM BIẾN ĐI KÈM
Các thông số được kèm theo catalog sản phẩm có như sau:
Thông số Giá trị Đơn vị
Lực tác động 39 (8,77) (Ibf/A)
Dòng điện cực đại 15 A
Điện trở pha 25/80°C 3.1/3.7 Ω
Điện cảm pha 3.1 mH
Loại sensor vị trí Sine/cosine
Tốc độ cực đại 1.7 m/s
Đường kính stator 48 mm
Chiều dài stator 290 Mm
Chiều dài slider 630 mm
Các thông số trên đây rất khiêm tốn. Đặc biệt gần như không có thông tin
về cảm biến vị trí gắn liền với động cơ. Thông tin cảm biến có được là:
Cảm biến dạng cách ly hiệu ứng Hall
Là dạng có chu kỳ lặp lại sin/cos
Được cấp điện áp vào là 5V. Có hai kênh điện áp ra, không có tín
hiệu zero
- 4 -
Để có thể tìm hiểu cảm biến, nhóm nghiên cứu đã nối động cơ vào bộ
điều khiển của chính hãng, lập trình để slider chuyển động theo quỹ đạo lặp
lại với một tốc độ không đổi. Sử dụng chức năng quan sát bằng đồ thị (dữ liệu
thu thập qua cổng COM RS232), thu được kết quả sau:
Hình 1.1: Thí nghiệm cảm biến vị trí
Trong đó
Đường 1: Tín hiệu Sine
Đường 2: Tín hiệu Cosine
Đường 3: Góc chuyển mạch
Đường 4: Vị trí tính toán
- 5 -
Phương pháp thử nghiệm:
- Cấp nguồn 5V cho mạch sensor của động cơ
- Dịch chuyển động cơ về cực hạn trái (điểm lấy
mốc, khuyên sắt)
- Dịch chuyển từ từ rotor sang trái (hướng người
nhìn), đo max, min, bước của hai tín hiệu sensor
0.5V
2.5V
4.5V
0.3V
60mm (60/540mm length)Hướng trái
Cực hạn trái (cơ khí)
Sine_s = 2.5V
Cosine_s=0.5V
Sine Cosine
Hình 1.2: Tương quan tín hiệu cảm biến và vị trí thực
Từ các thí nghiệm, có kết luận về cảm biến vị trí như sau:
Điện áp nguồn nuôi 5V, điện áp ra là tín hiệu sine theo vị trí, có giá
trị min = 0.5V, max=4.5V. Điểm zero của tín hiệu sine là điện áp
2.5V
Tín hiệu sine và cosine đúng lệch pha nhau π/2.
Chu kỳ của tín hiệu sine/cosine phản ánh bước cực nam châm trên
thanh slider.
Mỗi cặp cực nam châm có chiều dài 60mm, tổng hành trình là
540mm (09 cặp).
Từ thông số cảm biến có được, mạch phần cứng để nhận tín hiệu vị trí
được tính toán như sau:
- 6 -
Hình 1.3: Trị số linh kiện cho mạch nhận tín hiệu cảm biến
Tầng khuếch đại đầu bao gồm hai khuếch đại thuật toán U701A và
U701B tạo thành mạch khuếch đại vi sai, hệ số khuếch đại là 1:1, mục đích
tạo trở kháng cao đầu vào. Tầng thứ hai là tầng khuếch đại với hệ số khuếch
đại là 5:3. Trong đó giá trị cực đại điện áp vào chọn là 5V, giá trị điện áp ra
cực đại là 3V. Chọn R705 và R706 là điện trở 10k, vậy R hồi tiếp cần có là
6k. Tuy nhiên, điện trở 6k là loại linh kiện hiếm nên chọn giải pháp mắc song
song hai điện trở 12k. Tụ C705 đóng vai trò chính trong mạch lọc thông thấp.
Điện trở R713 và diode zener D704 đóng vai trò mạch bảo vệ điện áp vào
kênh ADC của DSP.
//ADCINA2, Sensor Sine
RawData = (AdcRegs.ADCRESULT4>>4)&0x0FFF;
// Remove 4 LSB unused bits
Tmp = (float)(RawData*3.0)/4095.0;
// Scale to 0-3V, integer calculating
Tmp = Tmp*5/3; // Scale to 0-5V, float calculating
Tmp = Tmp - 2.5; // Zero point is 2.5V
if (Tmp>2.0) Tmp=2.0; // high limit
- 7 -
if (Tmp<-2.0) Tmp=-2.0; // low limit
Tmp=Tmp/2.0; // Scale to [-1;1]
p->fSinValue=Tmp;
//ADCINB2, Sensor Cosine
RawData = (AdcRegs.ADCRESULT5>>4)&0x0FFF;
// Remove 4 LSB unused bits
Tmp = (float)(RawData*3.0)/4095.0;
// Scale to 0-3V, integer calculating
Tmp = Tmp*5/3; // Scale to 0-5V, float calculating
Tmp = Tmp - 2.5; // Zero point is 2.5V
if (Tmp>2.0) Tmp=2.0; // high limit
if (Tmp<-2.0) Tmp=-2.0;// low limit
Tmp=Tmp/2.0;// Sclae to [-1;1]
p->fCosValue=Tmp;
Hình 1.4: Đoạn chương trình tính toán với cảm biến vị trí
PHẦN II:
THỰC HIỆN MẠCH LINDRIVE, V1.2
1. Vấn đề tụ boostrap:
Điểm nổi bật của mạch điều khiển động cơ tuyến tính này là mạch công
suất sử dụng hai cầu H (H-bridge) với phương án điều khiển van bằng kiểu
mạch boostrap.
- 8 -
Hình 2.1: Mạch điều khiển van Boostrap
Căn cứ vào tài liệu “AN-978: HV Floating MOS-Gate driver ICs”,
trang 6, tính toán tụ boostrap như sau
Tụ bootstrap trong mạch trên là tụ C532, tác dụng tạo ra một điện áp
chênh so với VBUS để có thể mở van phía áp cao hơn Q531. Tụ được nạp
trong thời gian van Q531 off, với giả thiết lúc đó van Q532 on, kéo thế chân
Vs của IC U504 xuống GND (cho phép chênh thế 5V Vs-GND). Dòng nạp
chảy từ Vcc(15V) qua diode D531 và trở R531 (Diode xung).
Các yếu tố sau ảnh hưởng đến giá trị điện dung tụ bootstrap:
Điện áp ngưỡng mở cửa Gate của van
IQBS Dòng tiêu thụ tĩnh quiescent current khi không có xung
PWM
Dòng của mạch nâng áp
Dòng rò tiếp giáp gate-source
Dòng rò tụ bootstrap
Riêng dòng rò tụ bootstrap chỉ đáng để ý khi dùng tụ hóa. Trong trường
hợp không cần thiết, không nên dùng tụ hóa. Loại tụ không-hóa (gốm…) có
thể bỏ qua
Công thức tính như sau:
- 9 -
( ax) ( )2 2 qbs m Cbs leakg ls
cc f LS Min
I I
Q Q
f f
C
V V V V
Qg = Điện tích nạp high-side FET, IRF37100 là 130nC
f = tần số điều chế, dự kiến f=10kHz
ICbs(leak)= Dòng rò tụ. Bỏ qua vì dùng tụ dán
Iqbs(max) = Dòng tĩnh cực đại của IC driver, IR2101 là 55uA
Vcc = Điện áp nguồn nạp tụ, thiết kế 15V
Vf = Điện áp rơi trên diode nạp. Trong trường hợp mạch trên khó
xác định vì bao gồm cả điện áp rơi trên trở R531. Tạm lấy Vf là 1V
VLS = Điện áp giữa chân 6 của driver IC với GND. Trong trường
hợp mạch trên là điện áp rơi trên FET IR3710: RDS x IDSmax = 23mΩ
x 57A ≈ 1.3 V
VMin = Hiệu điện thế tối thiểu giữa VB và VS, IR2101 là 9V
Qls= Điện tích để dịch mức (thường 5nC với loại dùng VBUS 600V,
20nC với loại 1200V). Lấy 5nC
Kết luận:
6
9 9
3
55 102 2 130 10 5 10
10 10
146
15 1 1.3 9
C nF
Dùng tụ nhỏ hơn: Không mở được van
Dùng tụ lớn hơn nhiều: Hỏng diode xung
Chọn tụ: 224 hoặc 474 hoặc 105
2. Vấn đề kỹ thuật nạp trình lên flash on-chip của TMS320F2812:
TMS320F2812 có 03 vùng nhớ để chứa chương trình do người dùng
viết và nạp vào là:
Vùng nhớ SRAM-H0 (8k x 16): Nạp chương trình chạy tạm thời,
bị xóa khi ngắt nguồn cung cấp
- 10 -
Vùng nhớ Flash (128k x 16): Không bị hủy chương trình khi
ngắt nguồn
Vùng nhớ ngoài XINTF: Giống như ROM ngoài với vi điều
khiển 8 bit truyền thống.
Việc DSP chọn vùng nhớ nào để lấy chương trình khởi động phụ thuộc
vào một số chân chọn của chip. Trên thiết kế, các chân này đã được nối với
các jumper chuyển để người dùng có thể chuyển chế độ boot. Khi nạp chương
trình vào Flash, người dùng phải chuyển jumper sang vị trí chạy như sau để
DSP có thể khởi động khi cấp nguồn
Để nạp chương trình xuống DSP vào vùng Nhớ Flash hoặc SRAM-H0,
phải thông qua giao diện JTAG. Có 02 phương thức để thực hiện việc này:
Dùng bộ “XDS510 USB JTAG Emulator” và các phần mềm
SDConfig, SDFlash. Bộ “XDS510 USB JTAG Emulator” có một
jack cắm vào cổng USB của máy tính, một jack 7x2 chân cắm
vào card (xem trên trang
Trên card đã tích hợp sẵn chip JTAG để người dùng có thể nạp
chương trình, debug thông qua giao diện LPT (máy in) trên PC
bằng phần mềm Code Composer Studio (CCS) do Texas cung
cấp. Tuy nhiên để CCS (của Texas) có thể giao tiếp với card
ezDsp (của hãng Spectrum Digital) cần có driver riêng, được
download từ trang web
- 11 -
Chú ý: phải download đúng version giữa CCS và driver. Ví dụ,
CCS có version là 3.1 thì driver lấy tại
Sau khi download,
người dùng cần cài đúng vào vị trí cài đã cài CCS. Ngoài ra,
cần download plugins tại https://www-
a.ti.com/downloads/sds_support/C2000-3.1-SA-to-UA-TI-
FLASH2X.htm
Sau khi cài đặt plugins, có thể kiểm tra trực tiếp sự tồn tại của thư mục
mới Flash28xx như dưới đây:
Thiết lập môi trường cho Code Composer:
CCS là phần mềm giao diện phát triển cho nhiều loại chip của
Texas. Vì vậy, trước khi chạy phải thiết lập loại chip cần thiết. Bước thực
hiện: Chạy Code Composer Setup (từ Start Menu hoặc Desktop)
- 12 -
Từ tab “Factory Boards”, chọn mục “F2812 eZdsp” sau đó nhấn
nút “<<Add”. Nếu mục “F2812 eZdsp” không tồn tại trên danh sách,
điều đó nghĩa là chưa cài đặt driver cung cấp bởi Spectrum Digital.
Sau khi làm đúng, trên danh sách “My System” sẽ có tên board cần lập
trình.
Cuối cùng, nhấn nút “Save & Quit”.
Cách viết chương trình để có thể nạp lên Flash:
Chương trình viết chạy từ SRAM và chương trình chạy từ Flash
Memory có gì khác nhau ?
Câu trả lời: Khác nhau cơ bản là việc định nghĩa vùng nhớ
chương trình cho các hàm và biến (dữ liệu). Theo cách lập trình của Code
Composer, việc định nghĩa này được thực hiện thông qua file có đuôi
- 13 -
*.cmd. Một project có thể có một hoặc nhiều file *.cmd định nghĩa tên các
vùng nhớ và địa chỉ cho các struct. Chương trình viết để chạy từ SRAM và
chạy từ Flash về cơ bản không có khác biệt (ngoại trừ file *.cmd). Tuy
nhiên, nếu hàm trong chương trình dùng tác động lên chính bộ nhớ Flash
(ví dụ: khởi tạo các thanh ghi cho bộ nhớ Flash), bắt buộc phải chạy từ
SRAM. Khi ấy, cần viết đoạn chương trình để copy code đoạn chương
trình từ Flash sang SRAM để chạy (chi tiết xin tham khảo tài liệu
SPRC097 của Texas).
Các bước thực hiện nạp chương trình lên bộ nhớ Flash:
Bước 1: Thêm file “f2812.cmd” vào chương trình
Mở chương project chương trình, loại
bỏ tất cả các file *.cmd (nếu có) khỏi
project bằng cách trỏ chuột chọn sau đó
nhấn phím DEL trên bàn phím.
Dùng chức năng Project/Add Files to
Project... để thêm file F2812.cmd vào
project. File này được cung cấp theo các
ví dụ về điều khiển động cơ (download từ trang của Texas).
Bước 2: Kết nối với board DSP
Dùng chức năng Debug/Connect hoặc nhấn Alt-C để Code
Composer nối với card thông qua cổng LPT (chuyển thành JTAG nhờ
chip JTAG). Nếu kết nối thành công, giao diện như sau
- 14 -
Các biểu tượng Run và Animate sẽ được active (màu xanh). Khi
đó, board eZdsp đã sẵn sàng nhận chương trình.
Bước 3: Nạp chương trình
Biên dịch chương trình để có được file đuôi *.out
Dùng chức năng Tool/F28xx On-chip Flash Programer hoặc
nhấn nút tương ứng trên Toolbar để xuất hiện cửa sổ nạp trình
Các thông số của cửa sổ này nên giữ nguyên như mặc định, trong
đó chú ý:
- 15 -
Tốc độ thạch anh OSCCLK là: 30MHz
Thông số PLLCR là: 10
Chế độ nạp là : “Erase, Program, Verify”
Nhấn nút “Flash Programer Setting...” để xuất hiện cửa sổ sau
Để nạp được chương trình xuống Flash, Code Composer
không nạp được trực tiếp mà phải thông qua một chương trình
khác nạp trước xuống SRAM. Chương trình này tiếp nhận file
*.out người dùng muốn nạp xuống Flash và ghi chúng xuống
Flash. Vì vậy, quá trình này yêu cầu thao tác xóa/ghi/kiểm tra
Flash. Texas Instrument gọi đó là Algorithm. Người nạp phải xác
định file này cho chương trình thông qua cửa sổ “Flash
Programmer Settings” trên đây.
Nhấn vào nút “Browse...” để trỏ đến file algorithm (cũng
là một file *.out).
Trong trường hợp kiểm tra không thấy thư mục: CCS Dir\
plugins\Flash28xx\Algorithms\2812\ nghĩa là Plugins cho eZdsp
chưa được cài đặt hoặc cài đặt không đúng.
Nhấn OK để quay lại cửa sổ “On-chip Flash Programer”,
nhấn nút “Execute Operation” và đợi đến khi quá trình nạp kết
thúc. Chú ý: Trong quá trình nạp nếu mất điện sẽ khó có khả
năng truy cập lại bộ nhớ Flash, do vùng Password bị ghi mọt giá
trị bất kỳ.
- 16 -
3. Các tồn tại của thiết kế LinDrive, v1.2:
Sau khi lập chương trình thử nghiệm điều chế đơn giản, nạp xuống
flash on-chip để đo đạc thử nghiệm, nhóm nghiên cứu phát hiện thấy rằng
thiết kế có rất nhiều khiếm khuyết. Cụ thể như sau:
Sử dụng IR2101 làm IC driver cho van công suất theo kiểu mạch boostrap
là không hợp lý. Các van mở không được khóa chéo, hậu quả dẫn
đến thông mạch VBUS-GND mỗi khi điều chế sai, kích thích nhiễu,
sự cố nguồn.. Nên sử dụng thêm một IC CPLD, ví dụ như
GAL16V08.
Các tụ cùng loại CF611, C532 sai kích cỡ linh kiện trên mạch in
Các IC PC817, phần mạch digital input, chân 3-4 bị chéo (nhầm từ bản vẽ
nguyên lý)
Các driver không dùng nguồn cách ly mà sử dụng kỹ thuật boostrap. Khi
thử nghiệm không an toàn, điện áp cao có thể xâm nhập vào IC driver
khi van bị đánh thủng dẫn đến điện áp cao xâm nhập phần mạch
logic, phá hỏng hàng loạt linh kiện. Thực tế đã phá hỏng 03 card
ezDsp.
Kênh sin/cos encoder không cần thiết có diode phía đầu khuếch đại thuật
toán vì ngưỡng điện áp tối thiểu đã là 0.5V (tối đa 4.5V)
Việc đưa tín hiệu PWM ra theo dạng đảo, thông qua IC 74HCT14 (mục
đích đảm bảo mức zero khi bị trạng thái “treo”) là không hợp lý.
Nguyên nhân: tuy chân PWM của DSP có thể định nghĩa mức tích
cực là high hoặc low. Tuy nhiên, phần deadtime chỉ được tính là một
số dương, nghĩa là cho phép kênh sau (ví dụ PWM2) mở sau kênh
trước (VD PWM1). Nếu nghịch đảo, xung kênh trước và sau trở thành
chồng nên nhau (ngắn mạch DC bus).
- 17 -
Hình 2.2: Overlap xung điều khiển
Phần nguồn sử dụng mạch ngoài không được hợp lý. Khi cấp nguồn, phần
DSP cấp riêng, phần Driver cấp riêng dẫn đến không biết trước nguồn
nào được cấp trước, nguồn nào sau dẫn đến có thể có trạng thái không
xác lập không mong muốn, có thể dẫn đến sự cố.
Phần cấp nguồn cho cảm biến dòng điện pha chưa có chân GND (Lỗi thiết
kế).
Chính vì những khiếm khuyết cơ bản trên của mạch nên nhóm quyết
định thiết kế lại, bổ xung thêm các chức năng hợp lý và sửa chữa các khuyết
tật của mạch LinDrive v1.2
- 18 -
PHẦN III:
PHẦN THỬ NGHIỆM MẠCH LINDRIVE V2.1
Các thay đổi trên thiết kế mới:
Thiết kế lại phần nguồn cấp.
Chuyển phương án mạch drive cho các van công suất từ phương án
kiểu boostrap sang phương án dùng IC drive có bảo vệ quá dòng.
Bổ xung vào mạch điều chế phần tử logic lập trình được CPLD làm
nhiệm vụ khóa chéo kênh điều chế (interlock), hoán đổi kênh điều chế
linh hoạt.
Bổ xung các sai sót thiết kế cũng như sai sót thực hiện layout mạch.
1. Thiết kế lại phần nguồn:
Bao gồm:
Nguồn cấp cho board mạch DSP, các IC logic họ TTL
Nguồn cách ly cho từng van riêng biệt
Phần nguồn cấp cho các IC họ CMOS và tạo áp chuẩn cho ADC giữ
nguyên phương án cũ.
Hình 3.1: Mạch phía sơ cấp các cuộn biến áp
Mạch nguồn thiết kế theo phương án push-pull half-bridge (kéo/đẩy)
Tính toán tần số:
- 19 -
4 9
1 1 71.5
1.4 ( 150) 1.4 (10 150) 10T T
f kHz
R C
Thực tế kiểm tra:
Hình 3.2: Điện áp sơ cấp biến áp push-pull
Phần mạch tạo nguồn vi sai +/-15V cho các IC loại Op-Amp và nguồn 5V
cho các IC TTL, đồng thời cấp cho mạch DSP như sau:
Hình 3.3: Nguồn cho Op-Amp và TTL
- 20 -
Thực hiện mạch trong thực tế:
Hình 3.4: Hình ảnh phần mạch nguồn
Khi thực hiện thử nghiệm phiên bản LinDrive1.2 thấy rằng: Việc cách ly
tín hiệu điều khiển đến van (xung PWM) là không đủ. Khi có sai sót thí
nghiệm, van bị đánh thủng và ở trạng thái ba cực G-S-D thông nhau. Điện áp
cao từ mạch lực, theo đường nguồn cấp cho IC drive đưa vào phá hủy các
phần khác trong mạch.
Phiên bản LinDrive2.1 thiết kế phần nguồn cách ly cho từng van riêng biệt
và cũng sử dụng duy nhất một IC tạo xung push-pull phía sơ cấp. Phần tử
công suất chịu dòng lớn sử dụng 02 van MOSFET loại IRF640.
- 21 -
Hình 3.5: Nguồn cách ly cho từng IC khiển van công suất
Vì nguồn nuôi cho IC khiển van có thể nằm trong dải rộng từ 8V đến 30V
nên chỉ cần một cầu chỉnh lưu phía thứ cấp biến áp là đủ, không cần IC ổn áp
gây phức tạp mạch nguồn.
2. Mạch khiển van:
Chuyển từ phương án Boostrap sang sử dụng IC khiển có chức năng bảo
vệ cao hơn. Dùng nguồn cách ly hoàn toàn. Cụ thể trên mạch có 08 van công
suất (hai cầu H), sử dụng 08 IC drive và 08 nguồn riêng biệt.
IC HPCL316J có các đặc điểm chính sau:
Cách ly hoàn toàn phía logic và phía lực. Phía logic sử dụng nguồn
riêng 4.5-5.5V, tương thích cả CMOS/TTL. Phía lực sử dụng nguồn
riêng, chính bằng điện áp sẽ cấp đến chân van công suất.
Bảo vệ quá dòng, ngắt tín hiệu khiển đến van nếu phát hiện quá dòng.
Nguyên tắc của việc này là chip nhận biết điện áp rơi trên lớp tiếp
giáp D-S. Khi quá cao chính là khi quá dòng, chip ngắt tín hiệu mở
tại chân G, khóa drive, báo lỗi nên rất an toàn trong điều kiện tiến
hành thử nghiệm.
- 22 -
Hình 3.6: Mạch khiển van công suất
Hình 3.7: Tín hiệu mở van tại chân Gate
3. Mạch bảo vệ logic và phối hợp tín hiệu PWM:
Dựa trên kinh nghiệm thí nghiệm thi công thiết kế cũ, LinDrive v1.2 thấy
rằng cần thiết có các mạch như sau:
Mạch Enable xung điều chế bằng khóa cứng (dù trong phần mềm đã
có thể làm điều này). Điều này giúp cho mạch công suất thêm một
tầng an toàn.
Phương án mạch công suất bao gồm 4 nhánh van song song, nối vào
mạch một chiều trung gian. Điều này cho phép thực hiện linh hoạt
nhiều phương án điều chế (đơn cực, lưỡng cực, vector không gian cho
ba pha). Tuy nhiên, khi đó tín hiệu tự các chân PWM của chip DSP
đưa ra đến các IC drive của van sẽ có sự thay đổi thứ tự. Điều này sẽ
- 23 -
được thực hiện tương đối đơn giản và thuận lợi nếu ta đặt giữa tầng
DSP và Drive một IC khả trình kiểu CPLD.
Các tín hiệu PWM cần được khóa chéo nhau tránh trường hợp ngắn
mạch một chiều. Đây là tầng bảo vệ cơ sở, trước tầng bảo vệ dòng
được thực hiện trên mạch drive.
Vì vậy, trong thiết kế LinDrive2.1, nhóm đưa vào thêm một cụm mạch
dùng chip “trắng” CPLD để lập trình các logic cần thiết
Hình 3.8: Mạch dùng CPLD EPM7064
Tín hiệu vào gồm có:
Toàn bộ 12 đường tín hiệu PWM từ DSP. Việc chọn tín hiệu nào xuất
ra kênh đầu ra phụ thuộc vào việc cấu hình chip CPLD
08 kênh báo lỗi từ các IC drive
Tín hiệu Reset. Khi các IC drive chuyển sang chế độ bảo vệ quá dòng,
các IC này sẽ chốt (latch) trạng thái bảo vệ cho đến khi có xung reset.
Tín hiệu Enable cho các kênh PWM.
- 24 -
Thực hiện phần khóa lỗi. Một trong các IC drive báo lỗi sẽ tạo thành xung
ngắt, đưa về DSP:
Hình 3.10: Config ngắt lỗi
Thực hiện khóa chéo:
Hình 3.11: Khóa chéo tín hiệu điều chế bằng phần cứng,
phối hợp PWM_EN
Kết quả thực nghiệm cho thấy mạch hoạt động rất hiệu quả. Các sai sót
trong quá trình thử nghiệm được loại trừ hậu quả tối đa.
4. Kết quả thi công và thử nghiệm:
Trang bên là một số hình ảnh của thiết bị và các đặc tính
- 25 -
Hình 4.1: Toàn bộ mạch thực hiện, từ góc trái
Hình 4.2: Mạch LinDrive 2.1 nhìn từ trên xuống
- 26 -
Hình 4.3: Cận ảnh phần mạch drive van và bảo vệ
Hình 4.4: Tín hiệu ra của chip CPLD, đưa đến IC drive
- 27 -
Hình 4.5: Tín hiệu điều chế tại chân IC drive, đo trên một nhánh cầu H
Hình 4.6: Tín hiệu tại chân G-S, đo trên một nhánh cầu H
- 28 -
Hình 4.7: Điện áp trên cuộn dây pha A và