PIC Vietnam

Go Back   PIC Vietnam > Các Đề Tài > Luận văn tốt nghiệp

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Luận văn tốt nghiệp Nếu bạn thắc mắc vì sao chúng tôi muốn phổ biến các luận văn tốt nghiệp? Xin xem tại đây

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 07-04-2009, 10:17 PM   #1
mtuankct
Đệ tử 6 túi
 
Tham gia ngày: Apr 2006
Bài gửi: 125
:
Điều khiển động cơ BLDC dùng IR2110 cần được giúp đỡ

Em đang làm cái đề tài điều khiển động cơ BLDC dùng dsPIC
Động cơ của em là cái Hub motor công suất khoảng 250W, nguồn 24V
Mạch lực em sử dụng mosfet 60N06 với IR2110 để làm drive
Sơ đồ em attach luôn ở đây
Thuật toán đk ban đầu chưa có gì vì em chỉ mới làm nó quay mà chưa được
Đơn giản là đọc tín hiệu Hall về và đưa xung ra IR để mở van
PWM ở phía lowside hoạt động ở chế độ Override còn phía highside tương tự nhưng sẽ được AND với một xung pwm tần số 1kHz để duty khoảng 90% trở lại để đảm bảo chu kỳ phóng nạp của IR (em đang dùng con diode xung mua ở chợ trời nên chỉ chạy được 1kHz, em đã thử con schottky 1A thì có thể nâng tần số lên nhưng thỉnh thoảng lại thấy cháy con diode nên đi luôn cả con IR)
Em thử với cái động cơ nhỏ hơn công suất khoảng vài chục W thì mạch chạy tương đối ổn nhưng cứ cắm con độg cơ 250W vào là lại đi vài chú fet hoặc IR
PWM em đã thêm deadtime maximum rồi mà vẫn cứ cháy nổ ầm ầm
mà chẳng hiểu sao cháy luôn cả con IR, khi cháy thì thường là bị ngắn mạch giữa chân Vcc và LO, điện trở cực Gate em đang dùng con 8.2R nhưng đo thì toàn thấy là 9.5R
Bác nào giải thích hộ em cái là sai ở đâu?
Có gì em viết chưa rõ các bác cứ hỏi em sẽ bổ sung thêm
Thanks các bác
File Kèm Theo
File Type: pdf schematic.pdf (444.5 KB, 2995 lần tải)
mtuankct vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 10:35 PM   #2
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Bạn có đo được dạng sóng dòng điện không?

ACSx là những linh kiện gì? Bạn đưa tín hiệu như thế nào vào các chân PHASEx?

Tại sao lại dùng duty cycle = 90 % mà không dùng giá trị nhỏ hơn?

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 10:42 PM   #3
mtuankct
Đệ tử 6 túi
 
Tham gia ngày: Apr 2006
Bài gửi: 125
:
ACS là con cảm biến dòng điện loại ACS714 dòng 30A nhưng em chưa hàn con này vào, còn dòng điện thì không quá lớn đâu, trước đây em đã làm con động cơ này quay được với so đồ tương tự nhưng thay con IR2110 bằng IR2103, chạy một lúc con fet hơi nóng nên em đổi sang con IR2110
Duty thi em đang đặt nhỏ thôi có 1/4 tức 25% à nên dòng điện khởi động cũng không quá lớn vậy mà vẫn cháy hixhix, còn cái 90% là cái duty max mà em thấy con diode này có thể đáp ứng được (bằng thực nghiệm)
mtuankct vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 10:45 PM   #4
nhatson.elec
Đệ tử 4 túi
 
Tham gia ngày: Nov 2008
Bài gửi: 84
:
hiện tại bác chỉ xuất PWM fix, chưa có current control???
nhatson.elec vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 10:46 PM   #5
nhatson.elec
Đệ tử 4 túi
 
Tham gia ngày: Nov 2008
Bài gửi: 84
:
áp driver cấp cho Ir hiện tại là bao nhiêu?

em nghĩ bị quá dòng, PWM base 1khz , độ rộng xung 25% là thời gian khá dài ah. Cục nguồn cho motor bác dùng nguồn dì. bao lớn ah?

thay đổi nội dung bởi: nhatson.elec, 07-04-2009 lúc 10:51 PM.
nhatson.elec vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 10:50 PM   #6
mtuankct
Đệ tử 6 túi
 
Tham gia ngày: Apr 2006
Bài gửi: 125
:
Em mới chỉ làm cho nó quay mà chưa được, nên chưa hàn cảm biến dòng vào, hàn vào tháo ra không được à, con này em phải nhờ đứa bạn mua hộ hixhix
còn mạch vòng đk thì em đã làm với con động cơ nhỏ rồi, thuật toán tương tự nhau thôi, vấn đề bây giờ là cái mạch lực nó không chạy
còn áp cấp cho IR là 12V, logic là 5V
mtuankct vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 10:54 PM   #7
nhatson.elec
Đệ tử 4 túi
 
Tham gia ngày: Nov 2008
Bài gửi: 84
:
mình nghĩ dùng dien trỡ shunt là đủ, ko cần tới hall sensor làm dì ( cách ly, nhưng tốc độ chậm )
nhatson.elec vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 10:54 PM   #8
nhatson.elec
Đệ tử 4 túi
 
Tham gia ngày: Nov 2008
Bài gửi: 84
:
bác có thể tham khảo cái mạch này của microchip

http://ww1.microchip.com/downloads/e...Doc/51554b.pdf
nhatson.elec vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 11:03 PM   #9
mtuankct
Đệ tử 6 túi
 
Tham gia ngày: Apr 2006
Bài gửi: 125
:
Em đã làm được cái động cơ này quay với con IR2103
con IR2110 thì chỉ khác con IR2103 là nó cả 2 đầu vào HI và LI đề là đầu vào tích cực cao, nó cũng không có bộ tạo deadtime bên trong, không có phần logic chống ngắt mạch do mở 2 van cùng lúc
Em post đoạn code config pwm lên đây các bác xem có đúng không hộ em
Code:
	
	_PTSIDL = 0; 	// pwm time base run in idle mode
	_PTOPS = 0;		// pwm time base postscale select bit 1:1
	_PTCKPS = 0;	// pwm time base input clock prescale select bit
											// 11 -> 1:64
											// 10 -> 1:16
											// 01 -> 1:4
											// 00 -> 1:1
	// PTMR config (PWM time base register)

	// PTPER config (PWM time base priod register)
	PTPER = (Fcy/Fpwm - 1);
	// SEVTCMP config (special event compare register)
	SEVTCMP = PTPER;
	// PWMCON1 config
	_PMOD3 = 0;		// PMODx = 1 pwm I/0 pin pair is in the independent ouput mode
					// PMODx = 0 pwm I/0 pin pair is in the complementary output mode
	_PMOD2 = 0;
	_PMOD1 = 0;
	
	_PEN3H = 1;		// =1 to enable for pwm output
	_PEN3L = 1;
	_PEN2H = 1;
	_PEN2L = 1;
	_PEN1H = 1;
	_PEN1L = 1;
	// PWMCON2 config
	
	// DTCON1 config (dead time control register)
	_DTAPS = 3;		// Dead time unit A prescale select bit
					// = 3 -> 1:8
					// = 2 -> 1:4
					// = 1 -> 1:2
					// = 0 -> 1:1
	_DTA = 63;		// Unsigned 6 bit Dead time value bits for dead time unit A
	// FLTACON config (Fault A control register)
	// FLTBCON config
	// OVDCON config (Override control register)
	OVDCON = 0x0000;	// all pwm pin are control by the value in the corresponding POUTxx bit
					// POUTxx = 0	
	PDC1 =(unsigned int) (PTPER *0.4);
	PDC2 =(unsigned int) (PTPER *0.4);
	PDC3 =(unsigned int) (PTPER *0.4);
	PWMCON2 = 0x0F00;		//Postscale = 1:16

	PTCON = 0x8000;			//Kich hoat module PWM
	Delay_ms(10);
	SD = 0;          // day la chan shutdown của IR
	Delay_ms(1);
	_POUT1L = 1;// bat may chan Lowside để nạp điện đầy cho tụ, sẵn sàng chạy
	_POUT2L = 1;
	_POUT3L = 1;
còn đây là chương trình em dùng để test cái động cơ nó quay
Code:
void BLDC_test_forward(void){

	if((HallA == 0) & (HallB == 1) & (HallC == 1)){ // CASE 1
		OVDCON = (1 << BL) + (1 << CH_P);	// BL & CH
		return;
	}
	if((HallA == 0) & (HallB == 0) & (HallC == 1)){ // CASE 2
		OVDCON = (1 << BL) + (1 << AH_P);	// BL & AH
		return;
	}
	if((HallA == 1) & (HallB == 0) & (HallC == 1)){ // CASE 3
		OVDCON = (1 << CL) + (1 << AH_P);	// CL & AH
		return;
	}
	if((HallA == 1) & (HallB == 0) & (HallC == 0)){ // CASE 4
		OVDCON = (1 << CL) + (1 << BH_P);	// CL & BH
		return;
	}
	if((HallA == 1) & (HallB == 1) & (HallC == 0)){ // CASE 5
		OVDCON = (1 << AL) + (1 << BH_P);	// AL & BH
		return;
	}
	if((HallA == 0) & (HallB == 1) & (HallC == 0)){ // CASE 6
		OVDCON = (1 << AL) + (1 << CH_P);	// AL &CH
		return;
	}
}
em xin giải thích một tẹo ở đây các hằng số được định nghĩa như sau:
Code:
#define AL 0
#define AH 1
#define BL 2
#define BH 3
#define CL 4
#define CH 5

#define AL_P 8
#define AH_P 9
#define BL_P 10
#define BH_P 11
#define CL_P 12
#define CH_P 13
có nghĩa là nếu muốn pha A dẫn phía L và pha C dẫn phía H thì em sẽ ghi giá trị 1 vào POUT1L và đặt 3H ở chế độ xung pwm
mtuankct vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 11:07 PM   #10
mtuankct
Đệ tử 6 túi
 
Tham gia ngày: Apr 2006
Bài gửi: 125
:
Nguồn ở đây em dùng nguồn 24V lấy từ 2 cái acquy 12V nối nối tiếp, mỗi con dung lượng khoảng 4Ah thôi
mtuankct vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-04-2009, 01:42 PM   #11
nhatson.elec
Đệ tử 4 túi
 
Tham gia ngày: Nov 2008
Bài gửi: 84
:
với động cơ nhỏ>> R coil lớn nên dùng PWM base 1khz độ rộng 25% ko sao, nhưng động cơ cs lớn >> R coil thường nhỏ>> 25% là thơi gian dài>>> quá dòng>> dứt fet

b/r
nhatson.elec vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-04-2009, 02:37 PM   #12
mtuankct
Đệ tử 6 túi
 
Tham gia ngày: Apr 2006
Bài gửi: 125
:
Mình đã thử với nhiều duty cycle khác nhau nhưng kết quả vẫn tuơng tự
Một điểm nữa mình không hiểu là sao IR2110 lại chết (ngắn mạch giữa Vcc và LO)
mtuankct vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-04-2009, 02:42 PM   #13
nhatson.elec
Đệ tử 4 túi
 
Tham gia ngày: Nov 2008
Bài gửi: 84
:
thêm 1 vấn đề nữa khi dứt thì dứt con fet trên hay con fet dưới nhi?
nhatson.elec vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-04-2009, 02:55 PM   #14
mtuankct
Đệ tử 6 túi
 
Tham gia ngày: Apr 2006
Bài gửi: 125
:
haha cái này thì chưa tìm ra quy luật, đứt cả trên cả dưới luôn tùy lúc
Không phải nó bị hỏng do quá nóng, thường là nó bị hỏng xong rồi mơi bắt đầu nóng cả cặp fet lên. Chắc là nó bị hỏng do một xung quá lớn nào đó, mà mình chẳng hiểu là xung gì
Cho mình hỏi là khi con Fet bị hỏng thì làm sao biết được nó bị cháy con diode hay là hỏng phần mosfet nhỉ? Mình chỉ biết là nó bị ngắn mạch D và S thôi
mtuankct vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-04-2009, 05:10 PM   #15
nhatson.elec
Đệ tử 4 túi
 
Tham gia ngày: Nov 2008
Bài gửi: 84
:
Nếu Fet chưa hõng, thì đo sẽ thấy khi diode nội phân cực thuận hay ko

còn fet đã tèo... thì phải vứt đi, ko cần đo nữa đâu ah

bác thử nói với motor nhỏ với mạch chạy 2119 thử xem sao

b/r
nhatson.elec vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 06:43 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam