PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > dsPIC - Bộ điều khiển tín hiệu số 16-bit

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

dsPIC - Bộ điều khiển tín hiệu số 16-bit Theo dự kiến của Microchip, vào khoảng năm 2011 dsPIC sẽ có doanh số lớn hơn PIC

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 16-04-2009, 02:28 PM   #1
NATO308
Nhập môn đệ tử
 
Tham gia ngày: May 2008
Bài gửi: 9
:
Frequency PWM and Resolution

Anh Nam và mọi người giúp mình trả lời câu hỏi này nhé :
Câu 1: tần số PWM lớn nhất mà dspic30f4011 có thể tạo ra là bao nhiêu . Tương ứng là bao nhiêu bit ( hay độ phân giải )
Mình đã tìm trong datasheet và thấy có Công thức :

Tpwm =( Tcy.(PTPER +1 ) ) / (PTMR Prescale Value )
Resolution = log ( 2.(Tpwm/Tcy) ) / log ( 2 )

Với CT này , thì Fpwm muốn max thì Tpwm phải min , PTMR = 64 , Fcy = 160 MHz ( PLLx16)
Nhưng mình không biết giá trị PTPER phải bằng bao nhiêu để Fpwm max ( có phải = 1 ?? ). Giá trị max và min của PTPER là bằng bao nhiêu ?

Ở công thức tính độ phân giải , đơn vị của công thức đó có phải là bit ko ?

Câu 2 : Có sự khác nhau "về chất" của PWM (biên độ, dải tần số , pin tạo ra PWM ,độ ổn định .... ) giữa " Power supply PWM " và " Motor Control PWM Module " không ? Mình thấy microchip chia ra làm 2 phần riêng biệt .

Thanks !

thay đổi nội dung bởi: NATO308, 16-04-2009 lúc 03:12 PM.
NATO308 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 16-04-2009, 05:53 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
Trích:
Nguyên văn bởi NATO308 View Post
Anh Nam và mọi người giúp mình trả lời câu hỏi này nhé :
Câu 1: tần số PWM lớn nhất mà dspic30f4011 có thể tạo ra là bao nhiêu . Tương ứng là bao nhiêu bit ( hay độ phân giải )
Mình đã tìm trong datasheet và thấy có Công thức :

Tpwm =( Tcy.(PTPER +1 ) ) / (PTMR Prescale Value )
Resolution = log ( 2.(Tpwm/Tcy) ) / log ( 2 )

Với CT này , thì Fpwm muốn max thì Tpwm phải min , PTMR = 64 , Fcy = 160 MHz ( PLLx16)
Nhưng mình không biết giá trị PTPER phải bằng bao nhiêu để Fpwm max ( có phải = 1 ?? ). Giá trị max và min của PTPER là bằng bao nhiêu ?

Ở công thức tính độ phân giải , đơn vị của công thức đó có phải là bit ko ?

Câu 2 : Có sự khác nhau "về chất" của PWM (biên độ, dải tần số , pin tạo ra PWM ,độ ổn định .... ) giữa " Power supply PWM " và " Motor Control PWM Module " không ? Mình thấy microchip chia ra làm 2 phần riêng biệt .

Thanks !
1. Công thức tính Fpwm của bạn không chính xác, vì nếu biến đổi công thức đã nêu trong "dsPIC30F Family Reference Manual" thì nên có công thức sau:
Code:
Fpwm = Fcy/[(PTMR Prescaler)*(PTPER+1)]
Như vậy Fpwm sẽ đạt giá trị lớn nhất nếu hai biểu thức nằm ở mẫu số cùng đạt giá trị nhỏ nhất, và Fcy đạt giá trị lớn nhất. Với dsPIC30F4011, Fcy lớn nhất nằm trong giới hạn hoạt động được khuyến cáo của nhà sản xuất là 30 MHz. PTPER là một thanh ghi 16-bit, có thể được gán giá trị nguyên từ 0 đến 65535.

Do đó, về mặt lý thuyết thì Fpwm có thể đạt Fcy, khi thiết lập PTPER = 0, và PTMR prescaler = 1:1. Tuy nhiên, ở tần số này thì bạn thực sự không có nhiều lựa chọn cho duty cycle (chỉ có 2 giá trị là 0% và 100%, theo lý thuyết, vì tôi chưa bao giờ thử nghiệm ở chế độ khá vô nghĩa này).

Độ phân giải đúng là tính bằng đơn vị bit.

2. Module "Power Supply PWM" được thiết kế riêng cho các ứng dụng về nguồn chuyển mạch, do đó có những đặc tính cao cấp hơn vốn không cần thiết trong module "Motor Control PWM". Như vậy, có sự hơn hẳn "về chất" khi so sánh module "Power Supply PWM" với module "Motor Control PWM".

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 16-04-2009, 07:46 PM   #3
NATO308
Nhập môn đệ tử
 
Tham gia ngày: May 2008
Bài gửi: 9
:
thanks anh Nam, đúng là có sự khác biệt về công thức tính Tpwm trong 2 datasheet ""dsPIC30F Family Reference Manual" và "dspic30f4011/4012 datasheet " nên em bị sai công thức trên. Mình chụp sự khác biệt giữa 2 datasheet, ai muốn xem thì đỡ phải tra datasheet.
Hình Kèm Theo
File Type: jpg dspic30f4011.4012 datasheet.JPG (171.4 KB, 21 lần tải)
File Type: jpg dsPIC30F Family Reference Manual.JPG (94.0 KB, 18 lần tải)
NATO308 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 16-04-2009, 08:11 PM   #4
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
Trích:
Nguyên văn bởi NATO308 View Post
thanks anh Nam, đúng là có sự khác biệt về công thức tính Tpwm trong 2 datasheet ""dsPIC30F Family Reference Manual" và "dspic30f4011/4012 datasheet " nên em bị sai công thức trên. Mình chụp sự khác biệt giữa 2 datasheet, ai muốn xem thì đỡ phải tra datasheet.
Thực ra hai công thức không hẳn mâu thuẫn nhau, chỉ vì bạn dùng giá trị PTMR = 64 (như là PTMR Prescale Value) nên tôi mới nói rằng công thức của bạn là không chính xác.

Bạn để ý trong công thức của các datasheet người ta dùng PTMR Prescale Value (tức là toàn bộ cụm 1/N, nếu như prescale được mô tả là 1:N), còn trong "dsPIC30F Family Reference Manual" thì người ta dùng PTMR Prescaler (tức là giá trị N, nếu như prescale được mô tả là 1:N).

Do đó, nếu dùng công thức trong các datasheet với PTMR Prescale Value = 1/N và dùng công thức trong "dsPIC30F Family Reference Manual" với PTMR Prescaler = N, cho trường hợp prescale được mô tả là 1:N, thì sẽ cho các kết quả không mâu thuẫn với nhau.

Bạn đã dùng công thức trong datasheet với PTMR Prescale Value = 64, thay vì 1/64, nên tôi mới nói rằng công thức của bạn không chính xác. Cần chú ý phân biệt PTMR Prescale Value (tỷ số chia trước = 1/N) và PTMR Prescaler (hệ số chia trước = 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 28-05-2009, 08:02 PM   #5
tienminh
Đệ tử 3 túi
 
Tham gia ngày: Oct 2006
Bài gửi: 50
:
Các bác cho em hỏi,
Em đang dùng con 30F2020 có 4 bộ PWM.
Vậy nó có thể tạo được 4 bộ tín hiệu PWM có tần số khác nhau được không?
tienminh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 28-05-2009, 09:45 PM   #6
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
Trích:
Nguyên văn bởi tienminh View Post
Các bác cho em hỏi,
Em đang dùng con 30F2020 có 4 bộ PWM.
Vậy nó có thể tạo được 4 bộ tín hiệu PWM có tần số khác nhau được không?
dsPIC30F2020 có thể tạo ra 4 tín hiệu PWM có tần số khác nhau, vì 4 bộ tạo tín hiệu PWM có các time base độc lập nhau.

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 03-09-2009, 12:15 AM   #7
ngoctan2310
Nhập môn đệ tử
 
Tham gia ngày: Oct 2008
Bài gửi: 2
:
Unhappy

em sinh viên ĐH cần thơ ,mới tự học về dsPic nên chưa hiểu lắm , em chủ yếu đọc datasheet và các tutorial trên picvietnam dsPic30f4011 có 6 pin xuất PWM nhưng chỉ thấy một thanh ghi TPMR và một thanh ghi PRPER làm sao mình set cả 6 chân này với 6 tần số PWM khác nhau được ?

Có 3 thanh ghi duty cycle PDC<1-3> vậy các chân ngõ ra PWMxL và PWMxH sẽ có cùng duty cycle ?

em cần điều khiển 4 DC motor với tốc độ khác nhau - nhưng em không rõ dsPic30f4011 có đáp ứng được không? mong các thành viên diễn đàn giải thích giùm .
ngoctan2310 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-08-2010, 11:26 PM   #8
tienminh
Đệ tử 3 túi
 
Tham gia ngày: Oct 2006
Bài gửi: 50
:
Hi anh Nam,
Trong datasheet của dsPIC30F2020,phần PWM Period (trang 125) có công thức:
Period Duration = (PTPER + 1)/120 MHz @ 30 MIPS
Em thấy có vẻ công thức này không được tổng quát và khoa học.
Nếu em không chạy ở 30MIPS , giả sử chỉ dùng thạch anh ngoài 4MHz với PLL, và muốn tạo PWM=50KHz thì công thức tính tổng quát sẽ như thế nào?
Thanks.
tienminh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 21-08-2010, 01:28 AM   #9
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
Trích:
Nguyên văn bởi tienminh View Post
Hi anh Nam,
Trong datasheet của dsPIC30F2020,phần PWM Period (trang 125) có công thức:
Period Duration = (PTPER + 1)/120 MHz @ 30 MIPS
Em thấy có vẻ công thức này không được tổng quát và khoa học.
Nếu em không chạy ở 30MIPS , giả sử chỉ dùng thạch anh ngoài 4MHz với PLL, và muốn tạo PWM=50KHz thì công thức tính tổng quát sẽ như thế nào?
Thanks.
Bạn xem mục 30.9 trong tài liệu "Power Supply PWM" (DS70270C), link download dưới đây:
http://ww1.microchip.com/downloads/e...Doc/70270C.pdf

PWM Period = 1/(PWM Switching Frequency)

Tùy vào việc bạn dùng time base chung hoặc dùng time base độc lập mà giá trị được tính dựa vào giá trị của thanh ghi PTPER hay PHASEx.

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 20-12-2010, 03:18 PM   #10
trường sa 001
Nhập môn đệ tử
 
Tham gia ngày: Dec 2010
Bài gửi: 3
:
anh ơi!e muốn dùng pic18f4431 để điều khiển động cơ 1 chiều nhưng ko hiêu kỹ lắm về các nguồn pwm của nó.
anh chỉ dùm e y nghĩa của lệnh này được ko?
setup_power_pwm(PWM_CLOCK_DIV_16|PWM_UP_DOWN|PWM_D EAD_CLOCK_DIV_4,1,0,62,0,1,10);
trường sa 001 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-12-2010, 03:23 PM   #11
trường sa 001
Nhập môn đệ tử
 
Tham gia ngày: Dec 2010
Bài gửi: 3
:
anh nam trả chỉ giúp em đi anh?
e đọc datasheep mai ma ko hiểu anh ah!
trường sa 001 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 03-03-2011, 10:10 PM   #12
hcmut.khoamaisi
Đệ tử 4 túi
 
hcmut.khoamaisi's Avatar
 
Tham gia ngày: Dec 2009
Nơi Cư Ngụ: TPHCM
Bài gửi: 79
:
Send a message via Yahoo to hcmut.khoamaisi
có ai giải thích giùm "PTMR Prescale Value" là như thế nào không?đọc datasheet thấy các con số 1:1 1:4 1:8 1:16 nhưng chưa hiểu được ý nghĩa các con số này liên quan tới PTMR Prescale Value như thế nào!
__________________
My blog: http://autumnneverreturn.blogspot.com/
Đối thủ khó chiến thắng nhất là bản thân !!!
hcmut.khoamaisi vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 03-03-2011, 11:43 PM   #13
vietdien
Nhập môn đệ tử
 
Tham gia ngày: Nov 2006
Bài gửi: 6
:
Prescale Value có thể hiểu đơn giản là cần chia tần số cho giá trị nào. thông thường dspic dùng FOS làm tần số đầu vào cho các bộ chia tần. VD bạn để FRC x4, thì tần số FOS là 7,14Mhz, đặt Prescale Val 1:4 thì tần số cho phần timer của PWM là 7,14/4 = 1,7xxxMhz.
vietdien 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à 01:04 AM.


Đượ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