dsPIC là một họ vi điều khiển số (Digital Signal Controller) 16-bit do hãng Microchip sản xuất. Sự khác biệt của dsPIC so với các vi điều khiển khác là dsPIC được tích hợp các công cụ xử lý tín hiệu số. Tuy mới ra đời (từ năm 2005) nhưng dsPIC đã nhanh chóng chiếm được thị phần lớn trong thị trường chip trên thế giới cũng như tại Việt Nam bởi chip dsPIC có tốc độ xử lý cao, trên phiến tích hợp các module chức năng phù hợp với nhiều ứng dụng khác nhau, đồng thời giá thành của dsPIC tương đối thấp. Những yếu tố đó cho phép thực hiện các dự án trên dsPIC rất hiệu quả. Trong nội dung bài báo này, chúng tôi trình bày về thiết kế một kit dsPIC đa năng phục vụ thí nghiệm thực hành vi điều khiển của học phần vi điều khiển trong chương trình đào tạo kỹ sư thuộc các chuyên ngành điện.
Trang 1VẤN ĐỀ TRAO ĐỔI
THIẾT KẾ KIT dsPIC33/PIC32 DÙNG TRONG NGHIÊN CỨU
PHÁT TRIỂN CÁC HỆ TRUYỀN ĐỘNG ĐIỆN
DESIGN OF A dsPIC33/PIC32 KIT FOR STUDY ELECTRICAL DRIVE SYSTEMS
Nhữ Khải Hồn1, Quách Đức Cường2
Ngày nhận bài: 30/10/2013; Ngày phản biện thơng qua: 15/12/2014; Ngày duyệt đăng: 02/6/2014
TĨM TẮT
dsPIC là một họ vi điều khiển số (Digital Signal Controller) 16-bit do hãng Microchip sản xuất Sự khác biệt của dsPIC so với các vi điều khiển khác là dsPIC được tích hợp các cơng cụ xử lý tín hiệu số Tuy mới ra đời (từ năm 2005) nhưng dsPIC đã nhanh chĩng chiếm được thị phần lớn trong thị trường chip trên thế giới cũng như tại Việt Nam bởi chip dsPIC cĩ tốc độ xử lý cao, trên phiến tích hợp các module chức năng phù hợp với nhiều ứng dụng khác nhau, đồng thời giá thành của dsPIC tương đối thấp Những yếu tố đĩ cho phép thực hiện các dự án trên dsPIC rất hiệu quả Trong nội dung bài báo này, chúng tơi trình bày về thiết kế một kit dsPIC đa năng phục vụ thí nghiệm thực hành vi điều khiển của học phần
vi điều khiển trong chương trình đào tạo kỹ sư thuộc các chuyên ngành điện.
ABSTRACT
dsPIC is a 16-bit Digital Signal Controller which is produced by Microchip company The dsPIC is integrated digital signal processing tool on chip This is difference between dsPIC and other microcontroller families Although it was produced in 2005 but now the dsPIC is one off the most popular chip on the World and in Vietnam Because the dsPIC has high operate speed and many powerful features which are suitable for many different applications Additionally, it is also low-cost From the elements above, we can implement effective projects with dsPIC In this paper we present the design
of a general-purpose dsPIC control kit which is used to study PIC microcontroller courses for power engineering training programs.
Từ khĩa: dsPIC33FJ256MC710, vi điều khiển, Microchip
1 ThS Nhữ Khải Hồn, 2 TS Quách Đức Cường: Khoa Điện - Điện tử - Trường Đại học Nha Trang
I MỞ ĐẦU
Kit phát triển dsPIC được thiết kế cho
dịng dsPIC điều khiển động cơ chuyên dụng -
dsPIC33FJ256MC710 Đây là dịng chip điều khiển
động cơ mới nhất của Microchip Khi thiết kế, chúng
tơi đã tham khảo một số kit dsPIC của Microchip,
MikroC, Olimex đồng thời cũng đặt ra một số yêu
cầu đối với thiết bị, ví dụ như: tính đa năng (sử
dụng để học tập thực hành, đồng thời cũng cĩ thể
sử dụng Kit dsPIC trong nghiên cứu phát triển các
ứng dụng thực tế) Kit dsPIC này được sử dụng để
thực thi các giải thuật điều khiển hiện đại cho hệ
thống điều khiển, điều khiển các thiết bị điện tử cơng
suất như biến tần, chỉnh lưu, băm áp trong các hệ
truyền động điện DC, ba pha AC (động cơ đồng bộ
và khơng đồng bộ), một pha AC, động cơ bước (step motor) và động cơ một chiều khơng chổi than (BLDC motor) Ngồi ra cũng cĩ thể thực hiện các nội dung đo lường và điều khiển khác như: thu thập
dữ liệu, giao tiếp với PC, MCU, PLC thơng qua các chuẩn giao tiếp CAN, RS232, RS485, I2C
Kit dsPIC được thiết kế dùng riêng cho chip dsPIC33FJ256MC710, nhưng board này vẫn cĩ thể dùng cho một số chip PIC32 (dịng chip 32 bit)
100 chân ví dụ như chip PIC32MX460F512L Sự
đa dạng này giúp sinh viên cĩ thể thực hành nhiều dịng chip của Microchip trên bản mạch Cĩ thể nĩi kit dsPIC này là một sản phẩm phù hợp với nhu cầu thực hành về kỹ thuật đo lường và điều khiển sử dụng vi điều khiển số
Trang 21.2 Cấu trúc của kit dsPIC
Hình 1 thể hiện sơ đồ tổng thể của kit dsPIC
Lõi chip trung tâm là dsPIC33FJ256MC710 hoặc
PIC32MX460F512L Chip trung tâm này sẽ gửi
dữ liệu hiển thị lên màn hình LCD thông qua chip
PIC16F877A, giao tiếp giữa dsPIC33FJ256MC710
và PIC16F877A được lựa chọn thực hiện theo một
module giao tiếp của kit dsPIC bao gồm: RS232,
WIRELESS, USB Một số module thiết bị như DC motor drive, SVPWM inverter cho phép thực hành
áp dụng các giải thuật điều khiển hiện đại trong hệ điều khiển DC motor và kỹ thuật điều chế vector của biến tần ba pha Trên kít cũng có sẵn các bus điều khiển động cơ và bus truyền dữ liệu mở rộng cho phép đa dạng hóa các bài thực hành ứng dụng
cụ thể
II NỘI DUNG
1 Cấu trúc của KIT dsPIC
1.1 Một số tính năng của bộ điều khiển số dsPIC33FJ256MC710
Theo catalog từ hãng Microchip, bộ vi điều khiển số dsPIC33FJ256MC710 có tính năng như trong bảng 1 [1]
Bảng 1 Đặc tính kỹ thuật của chip điều khiển số dsPIC33FJ256MC710
Hình 1 Sơ đồ khối thiết bị trên kit dsPIC Hình 2 kit dsPIC
Trang 3Điều đặc biệt đối với kit dsPIC là trên bản
mạch có module biến tần ba pha Với module biến
tần này sẽ cho phép sinh viên thực hiện, kiểm tra
và chỉnh sửa giải thuật điều chế vector trong biến
tần SVPWM trước khi thực hiện trên hệ biến tần
công suất Module biến tần được thiết kế với sáu
Tranzitor C1815 và có chế độ chống ngắn mạch,
chống xung áp ngược
Nạp chương trình cho chip thông qua kết
nối ICSP hoặc JTAG Đây là chuẩn nạp và gỡ lỗi
chương trình onchip của Microchip Hệ thống nạp
và gỡ lỗi này rất thuận lợi cho việc chỉnh sửa và
phát triển dự án trên dsPIC Chúng tôi sử dụng
thiết bị PICKIT2 để nạp chương trình cho kit dsPIC,
fi rmware của thiết bị nạp được cập nhật trên trang web Microchip [2]
1.3 Một số module ngoại vi
1.3.1 Module điều khiển động cơ DC Module điều khiển động cơ DC sử dụng mạch cầu tích hợp L6203 chuyên dụng Vi mạch L6203
có điện áp làm việc lên tới 52V, dòng điện 4A, tần
số băm xung 100KHz Bên trong L6203 tích hợp 4 MOSFET cho phép điều khiển 4 góc phần tư đặc tính tải của động cơ DC Ngoài ra trên L6203 cũng
có mạch đo lường dòng điện, tín hiệu dòng điện từ L6203 sẽ qua bộ lọc thông thấp trước khi đưa vào module ADC của dsPIC Phần cứng mạch drive L6203 thể hiện trên hình 3
Hình 3 Module L6203 cho động cơ DC Hình 4 Module SVPWM trên kit dsPIC
1.3.2 Module SVPWM
Module SVPWM được bố trí nằm trên góc trái
của kit dsPIC (hình 4) Chúng ta có thể thực hành
lập trình các giải thuật điều chế vector cho biến tần
ba pha thông qua module này
1.3.3 Module Wireless
Module Wireless sử dụng thiết bị thu phát
wireless POP2032 (hình 5), ở tốc độ thu phát 9600
baud khoảng cách thu phát có thể đạt tới 500m
POP2032 kết hợp với vi điều khiển PIC16F688 tạo thành một thiết bị có hai chức năng
Chức năng thứ nhất: Module Wireless đóng vai trò của Wireless Sensor Node, nó thu thập tín hiệu vật lý như nhiệt độ, ánh sáng, điện áp và truyền
về trạm trung tâm
Chức năng thứ hai: Module Wireless đóng vai trò thiết bị trung gian để PC và MCU thực hiện thu phát wireless
Hình 5 Wireless module
Trang 42 Trình biên dịch
Ngôn ngữ lập trình cho dsPIC có hai loại cơ bản
là ngôn ngữ ASM và ngôn ngữ C Lập trình trên ASM
cho phép tạo ra mã gọn nhẹ, tốc độ thực thi nhanh
Tuy nhiên, nhược điểm của ngôn ngữ ASM là trình
bày phức tạp, khó khăn cho việc thực hiện các giải
thuật tính toán đối với người lập trình không chuyên
Trong khi đó ngôn ngữ C với cấu trúc rõ ràng, khả
năng module hóa cao, thực hiện thuật toán một cách
trực quan sáng sủa đã thực sự trở thành một ngôn
ngữ lý tưởng cho lập trình hệ nhúng Hiện nay trình
biên dịch sử dụng ngôn ngữ C cho dsPIC được nhiều
hãng cung cấp, như MikroC của MikroElectronika,
MPLAB C30 của Microchip, CCS của CCS Inc [3]…
Mỗi một trình biên dịch đều có ưu điểm, nhược
điểm riêng, ví dụ các trình biên dịch MikroC và CCS
cung cấp hệ thống fi rmware đồ sộ, kết quả là đối với
những người lập trình không chuyên việc phát triển
dự án dsPIC hết sức đơn giản Bởi thông qua hệ
thống fi rmware đó MikroC/CCS đã che hết toàn bộ
phần cứng của hệ nhúng dsPIC Điều này rõ ràng vừa có ưu điểm và cũng có nhược điểm của MikroC/CCS Ưu điểm là phát triển hệ thống dễ dàng, nhược điểm là người lập trình hoàn toàn phụ thuộc vào hệ thống fi rmware do hãng cung cấp qua
đó làm cho người lập trình “ngần ngại” trong việc tìm hiểu tổ chức phần cứng hệ nhúng Đối với sinh viên, những người đang trong quá trình học tập và nghiên cứu, điều này hết sức nên tránh
Ngoài hai ngôn ngữ căn bản ASM và C như đã nói ở trên, lập trình tạo mã cho dsPIC còn có thể thực hiện theo dạng sơ đồ khối chức năng thông qua thư viện Embedded Target for Microchip dsPIC của MATLAB & SIMULINK Cũng giống như các thư viện Target for C6000/C2000, Target for Infi neon C166 trong MATLAB, thư viện Embedded Target for Microchip dsPIC cung cấp các sơ đồ khối chức năng trên chip như ADC, PWM, UART… cho phép người lập trình sử dụng sơ đồ khối SIMULINK
để thực hiện các nội dung lập trình cho dsPIC
Hai chức năng này được thể hiện thông qua sơ đồ ghép nối giao tiếp wireless trên hình 6 và hình 7
Hình 6 Sơ đồ ghép nối thu thập dữ liệu
Trang 5Trong thực tế, công việc lập trình cho dsPIC thông
qua thư viện SIMULINK của MATLAB chỉ phù hợp
cho việc kiểm nghiệm giải thuật điều khiển Khi thiết
kế một dự án - ứng dụng hoàn chỉnh, đa phần người
lập trình vẫn phải viết mã chương trình trong ASM
hoặc C
Trong những trình biên dịch kể trên, MPLAB
C30 là trình biên dịch do chính hãng Microchip cung
cấp Với trình biên dịch MPLAB C30, người lập trình
sẽ nắm vững được tổ chức phần cứng và phần
mềm trên hệ nhúng dsPIC từ đó có thể phát triển
những fi rmware riêng cho dự án của mình hoặc sử
dụng những fi rmware do chính hãng cung cấp Do
đó chúng tôi lựa chọn MPLAB C30 làm trình biên
dịch phát triển hệ thống nhúng dsPIC
3 Một số kết quả thực hành thu thập dữ liệu và
điều khiển trên kit dsPIC
3.1 Thực hiện giải thuật điều chế vector cho biến
tần 3 pha
Điều chế vector cho biến tần ba pha thực hiện
ở tần số băm xung 3KHz, tần số điện áp ba pha là
10Hz Giản đồ điện áp ba pha quan sát từ máy hiện
sóng thể hiện trên hình 8
3.2 Điều khiển tốc độ, góc quay động cơ DC bằng giải thuật điều khiển mờ thích nghi trực tiếp
Trong phần này chúng tôi sẽ giới thiệu một vài kết quả điều khiển hệ DC motor sử dụng kit dsPIC Động cơ sử dụng trong thí nghiệm là loại D06D03 của Hitachi có thông số của động cơ ghi trong bảng 2
Bảng 2 Thông số của DC motor
Sử dụng giải thuật điều khiển mờ thích nghi trực tiếp để điều khiển tốc độ và góc quay của động cơ Sơ đồ điều khiển như trên hình 9 dsPIC33FJ256MC710 hoạt động ở tần số 40 MHz Tần số lấy mẫu dữ liệu là 400 Hz, bộ PWM hoạt động ở tần số băm xung của PWM 9,775 KHz, độ phân giải của PWM là 12-bit Thông số của encoder
là 2000 pps
Hình 8 Điện áp pha của biến tần SVPWM
Hình 9 Sơ đồ điều khiển động cơ DC sử dụng kit dsPIC
Trường hợp điều khiển tốc độ: Hình 10 thể hiện
đáp ứng tốc độ của động cơ DC bám theo hàm step mẫu
Trường hợp điều khiển góc quay: Đáp ứng vị trí
bám theo một tín hiệu analog thể hiện trên hình 11
Hình 10 Đáp ứng tốc độ của động cơ DC Hình 11 Đáp ứng vị trí của động cơ DC
Trang 63.3 Thu thập dữ liệu thông qua Wireless module
Thực hành truyền tin wireless với tốc độ truyền
tin và khoảng cách truyền xa nhất mà wireless
module có thể thực hiện được ghi trong bảng 3 Các
giá trị này được thí nghiệm dưới điều kiện không
gian truyền tin không bị cản trở bởi các chướng ngại
vật như tòa nhà, dãy núi…
Bảng 3 Tốc độ truyền và khoảng cách
thu - phát của Wireless module
Tốc độ truyền Khoảng cách xa nhất có thể thu - phát dữ liệu
IV KẾT LUẬN
Bài báo này chúng tôi đã đưa ra để trao đổi vấn
đề nghiên cứu và phát triển một kit vi xử lý 16-bit dsPIC dùng trong nghiên cứu - thực hành phát triển các hệ truyền động điện DC và AC Kết quả nghiên cứu trên kit bước đầu thực hiện một số ví dụ như: điều chế vector cho biến tần ba pha, hệ thống điều khiển tốc độ và vị trí động cơ DC với giải thuật điều khiển mờ thích nghi trực tiếp, giao tiếp truyền dữ liệu thông qua wireless module cho thấy kit dsPIC hoạt động chính xác và ổn định
Trong tương lai, chúng tôi sẽ nghiên cứu phát triển hệ điều khiển vector cho động cơ điện AC với board điều khiển trung tâm là kit dsPIC Những kết quả nghiên cứu đó, chúng tôi sẽ trình bày trong những nội dung báo cáo sau
TÀI LIỆU THAM KHẢO
1 Microchip, 2011 16-bit language tools getting started
2 Microchip, 2011 MPLAB C Complier for PIC24 MCUs and dsPIC DSCs User’s Guide