1. Trang chủ
  2. » Luận Văn - Báo Cáo

Điều khiển tốc độ động cơ điện một chiều

55 1,8K 6
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 55
Dung lượng 1,24 MB

Nội dung

Điều khiển tốc độ động cơ điện một chiều

Trang 1

Lời cảm ơn

Lời cảm ơn

Với sự giúp đỡ tận tình của các thầy cô trong khoa Điện tự động hóa Trường Cao Đẳng Công Nghệ Đại học Đà Nẵng cùng với người thân, gia đình và bạn bè, chúng em đã hoàn thành đồ án theo đúng thời gian quy định

Để đạt được thành công này, chúng em xin chân thành cảm ơn thầy giáo Phó giáo sư-Tiến sĩ Đoàn Quang Vinh, người đã luôn theo dõi, chỉ bảo tận tình cho

em trong suốt thời gian thực hiện đề tài, người đã đóng góp ý kiến và hướng dẫn em hoàn thành đồ án Bên cạnh đó, em cũng xin chân thành cảm ơn đến các thầy cô giáo trong khoa Điện tử động đã tận tình dạy dỗ chúng em trong những năm học vừa qua Cuối cùng, chúng em xin gởi lời cảm ơn chân thành đến gia đình, bạn bè

đã giúp đỡ em hoàn thành đồ án này

Chúng em xin chân thành cảm ơn

Trang 2

Lời cam đoan

Cộng hòa xã hội chủ nghĩa Việt NamĐộc lập – Tự do – Hạnh phúc

Lời cam đoan

Kính gởi: Hội đồng bảo vệ tốt nghiệp khoa Điện tự động – Trường Cao Đẳng Công Nghệ – Đại học Đà Nẵng

Em tên là: Trần Nguyễn Quốc Huy

Phan Hoàng Anh

Nguyễn Đức Ba

Nguyễn Tấn Thạch

Đang là sinh viên lớp 08LTĐ – Khoa Điện tự động – Trường Cao Đẳng Công Nghệ – Đại học Đà Nẵng

Hiện nay chúng em làm đồ án tốt nghiệp với đề tài “Điều khiển tốc độ động

cơ điện một chiều ”

Chúng em xin cam đoan nội dung đồ án hoàn toàn không giống với bất kỳ đồ

án hoặc công trình nào đã có trước đó

Trang 3

Mục lục

MỤC LỤC

Chương 1: Động cơ điện một chiều 1

1.1 Giới thiệu chương 1

1.2 Nội dung 1

1.2.1 Giới thiệu động cơ DC 1

1.2.2 Mô hình hóa động cơ DC 1

1.2.3 Phương pháp điều khiển tốc độ động cơ: 3

1.2.4 Khảo sát hàm truyền 4

1.2.4.1 Hàm truyền lý tưởng: 4

1.2.4.2 Hàm truyền gần đúng tìm được bằng thực nghiệm 5

1.2.5 Phương pháp ổn định động cơ dùng thuật toán PID 6

1.2.5.1 Thuật toán PID 6

1.2.5.2 Phương pháp hiệu chỉnh thông số bộ PID Ziegler-Nichols: 7

1.3 Kết chương 8

Chương 2 : Giới thiệu vi điều khiển PIC16F887 9

1.4 Giới thiệu chương 9

1.5 Nội dung 9

2.2.1 Một vài chi tiết chính của vi điều khiển PIC16F887 9

2.2.2 Bộ dao động của PIC16F887 11

2.2.3 Các Port I/O 12

2.2.4 Hoạt động của khối giao tiếp EUSART 13

2.2.5 Cấu tạo và hoạt động của khối điều xung PWM 15

2.2.6 Ngắt ngoài trên chân RB0 17

2.2.7 Cấu tạo và hoạt động của bộ Timer1 18

Trang 4

Mục lục

2.2.8 Cách nạp cho PIC16F887 18

1.6 Kết chương 20

Chương 3: Thiết kế và thi công phần cứng 21

1.7 Mở chương 21

1.8 Nội dung 21

3.2.1 Sơ đồ khối phần cứng 21

3.2.2 Sơ đồ nguyên lý và hoạt động của các khối mạch 22

3.2.3 Tính toán các thông số của mạch 24

3.2.3.1 Mạch đảo chiều động cơ 24

3.2.3.2 Tính toán cho FET 25

3.2.3.3 Tính toán mạch lái cho FET 27

3.3.4 Layout và thi công mạch 30

1.9 Kết chương 31

Chương 4 : Thiết kế phần mềm 32

1.10 Mở chương 32

1.11 Nội dung 32

4.2.1 Phần mềm cho vi điều khiển PIC16F887 32

4.2.1.1 Thuật toán chương trình chính 32

4.2.1.2 Thuật toán chương trình xử lý phím 35

4.2.1.3 Thuật toán chương trình đo tốc độ động cơ 38

4.2.1.4 Thuật toán chương trình phục vụ ngắt nhận UART 40

4.2.2 Phần mềm trên máy vi tính giao tiếp với mạch điều khiển 42

1.12 Kết luận chương 47

1.13 Nhận xét đánh giá hệ thống 47

Trang 5

Mục lục

1.14 Hướng phát triển đề tài 47 .48

Trang 6

Các từ viết tắt

CÁC TỪ VIẾT TẮT

PID Proportional–Integral–Derivative

PWM Pulse Width Modulation

EEPROM Electrically Erasable Programmable Read Only Memory

ADC Analog Digital Converter

USART Universal Synchronous Synchronous Asynchronous Receiver

Transmitter

MCU Microcontroller Unit

GPIO General Purpose Input Ourput

EUSART Enhanced Universal Synchronous Asynchronous Receiver

Transmitter LCD Liquid Crystal Display

FET Field-Effect Transistor

BJT Bipolar Junction Transistor

MOSFET Metal Oxide Semiconductor Field-Effect Transistor

UART Universal Asynchronous Receiver Transmitter

Trang 7

Mở đầu

Mở đầu

Với sự phát triển rộng rãi của thiết bị điện, ngày nay, người người, nhà nhà hầu hết đã sử dụng các công nghệ hiện đại Và khi mức sống của người dân được nâng cao thì việc quản lý các thiết bị điện trong nhà là hết sức cần thiết Chính vì vậy việc điều khiển thiết bị và giám sát hoạt động của nó thông qua một quá trình tự động là việc làm mang nhiều lợi ích

Đề tài thực hiện việc điều khiển thông qua vi điều khiển PIC16F887A, chính

vì vậy đề tài nghiên cứu sâu về việc ổn định tốc độ động cơ điện một chiều Trong giới hạn thời gian nghiên cứu cho phép, đề tài chỉ phát triển một hệ thống điều khiển đơn giản Các thiết bị được giám sát và điều khiển tiêu tốn rất ít năng lượng

sẽ mang lại lợi ích kinh tế và hiệu quả sử dụng cao

Nội dung của đồ án gồm:

Chương 1: Động cơ điện 1 chiềuChương 2: Giới thiệu về vi điều khiển PIC 16F887AChương 3:Thiết kế và thi công phần cứng

Chương 4: Thiết kế phần mềmPhương pháp nghiên cứu của đồ án là tính toán thiết kế mạch, xây dựng các lưu đồ thuật toán và thi công lắp ráp để kiểm chứng tính đúng đắn của thiết kế và các lưu đồ thuật toán đã xây dựng

Với phương pháp trên, đồ án đã được thiết kế và thi công thành công

Vì thời gian chuẩn bị không nhiều cùng với kiến thức còn hạn hẹp, đồ án không tránh khỏi những sai sót, chúng em rất mong nhận được ý kiến đóng góp của các thầy cô trong khoa, chúng em xin chân thành cảm ơn

Đà Nẵng, ngày 10 tháng 06 năm 2010

Sinh viên thực hiện Trần Nguyễn Quốc Huy Phan Hoàng Anh

Nguyễn Đức Ba Nguyễn Tấn Thạch

Trang 8

Chương 1: Động cơ điện một chiều

Chương 1: Động cơ điện một chiều

Chương này giới thiệu cơ bản về động cơ DC, các phương pháp điều khiển tốc độ động cơ và phương pháp ổn định tốc độ động cơ dùng thuật toán PID

1.2.1 Giới thiệu động cơ DC

Động cơ điện một chiều là động cơ điện hoạt động với dòng điện một chiều Động cơ điện một chiều ứng dụng rộng rãi trong các ứng dụng dân dụng cũng như công nghiệp

Cấu tạo của động cơ gồm có 2 phần: stato đứng yên và rôto quay so với stato Phần cảm (phần kích từ-thường đặt trên stato) tạo ra từ trường đi trong mạch

từ, xuyên qua các vòng dây quấn của phần ứng (thường đặt trên rôto) Khi có dòng điện chạy trong mạch phần ứng, các thanh dẫn phần ứng sẽ chịu tác động bởi các lực điện từ theo phương tiếp tuyến với mặt trụ rôto, làm cho rôto quay

Tùy theo cách mắc cuộn dây roto và stato mà người ta có các loại động cơ sau:

- Động cơ kích từ độc lập: Cuộn dây kích từ (cuộn dây stato) và cuộn dây phần ứng (roto) mắc riêng rẽ nhau, có thể cấp nguồn riêng biệt

- Động cơ kích từ nối tiếp: Cuộn dây kích từ mắc nối tiếp với cuộn dây phần ứng

Đối với loại động cơ kích từ độc lập, người ta có thể thay thế cuộn dây kích

từ bởi nam châm vỉnh cữu, khi đó ta có loại động cơ điện 1 chiều dùng nam châm vĩnh cữu Đây là loại động cơ được sử dụng trong đồ án này

1.2.2 Mô hình hóa động cơ DC

Mô hình tương đương của phần ứng động cơ như sau:

Trang 9

Chương 1: Động cơ điện một chiều

dt

di L i R

n k

a R i e

a t L

K

R I U

Trang 10

Chương 1: Động cơ điện một chiều

1.2.3 Phương pháp điều khiển tốc độ động cơ:

Đối với loại động cơ kích từ độc lập dùng nam châm vĩnh cữu, để thay đổi tốc độ, ta thay đổi điện áp cung cấp cho roto Việc cấp áp 1 chiều thay đổi thường khó khăn, do vậy người ta dùng phương pháp điều xung (PWM):

Trang 11

Chương 1: Động cơ điện một chiều

T d (p) = K t ΦI a (p) (1.11)

) ( ) ( 2 ) ( 2 )

Từ 1.12 tính được:

) 1 (

2

) ( ) ( ) (

p B

p T p T p n

τ

(1.14)Trong đó: τa=La/Ra Hằng số thời gian của mạch phần ứng

m

τ =J/B Hằng số thời gian cơ.

Vậy ta có mô hình hệ thống như sau:

Hình 1.3 Mô hình hệ thống động cơ điện DCKhi momen tải bằng 0, ta có:

Φ + + +

Φ

=

v m

a t

a

a

K p

p K

BR p

U p n

) 1 )(

1 (

2

1 )

( ) (

ττ

π

Vậy hàm truyền của động cơ lúc này có dạng khâu dao động

Trang 12

Chương 1: Động cơ điện một chiều

1.2.4.2 Hàm truyền gần đúng tìm được bằng thực nghiệm

Để tìm hàm truyền bằng thực nghiệm ta tìm đáp ứng xung của động cơ

Ta đặt áp bằng áp định mức vào động cơ và vẽ đồ thị vận tốc theo thời gian

Vì thời gian lấy mẫu vận tốc nhỏ do đó ta không thấy được các điểm uốn của đồ thị,

do đó ở đây ta xấp xỉ hàm truyền động cơ là khâu quán tính bậc 1 có dạng như sau

Đáp ứng xung của động cơ:

n(p)= (Tp kU+1)pBiến đổi Laplace ngược ta được:

n=kU(1-e-t/T)Khi t = T, n = kU(1-e-1)=0.63kU=0.63nmax

Vậy trên đồ thị ta xác định điểm tại đó n=0.63nmax sau đó tìm được T

Dựa vào đồ thị tìm được bằng thực nghiệm ta tìm được kU và T

Hình 1.4 Đồ thị tìm được bằng thực nghiệm của động cơ DC

kU = 150 vòng/s

T = 30ms=0.03s

Trang 13

Chương 1: Động cơ điện một chiều

Vậy hàm truyền gần đúng:

1 03 0

5 37 1

03 0

24 / 150

+

=

p p

Tp

k G

1.2.5 Phương pháp ổn định động cơ dùng thuật toán PID

1.2.5.1 Thuật toán PID

τττ

τ

d

de K d e K K

Vọt lố

Thời gian ổn định

Sai lệch so với trạng thái bền

Bảng 1.1 Luật điều khiển PIDDựa vào bảng trên ta thấy rằng luật tỉ lệ (P) có đặc điểm tác động nhanh nhưng không triệt tiêu được sai lệch, đồng thời làm vọt lố của hệ thống tăng Khâu tích phân cho phép triệt tiêu sai lệch nhưng tác động chậm Khâu vi phân phản ứng

Trang 14

Chương 1: Động cơ điện một chiều

với tốc độ biến thiên của sai lệch Ta cần xác định các thông số Kp, Ki, Kd để được

hệ thống có chất lượng mong muốn

 Thuật toán của bộ điều khiển PID số:

Khâu tỉ lệ P (Proportional): G P (z) = K P

Khâu tích phân I (Integrate):

1 1

1 )

=

z T K z

t e

) ( )

vi phân xấp xỉ bởi

T

T n e nT e dt

t

de( ) = ( ) − (( − 1 ) )

Vậy ta được hàm truyền khâu PID rời rạc:

) 1 ( 1

1 )

=

z K K z E

z U

Udk(z)(1-z-1) = E(z)(Kp(1-z-1) + Ki + Kd(1-z-1)2

Suy ra:

uk – uk-1 = Kp(ek – ek-1) + Kiek + Kd(ek – 2ek-1 – ek-2)

1.2.5.2 Phương pháp hiệu chỉnh thông số bộ PID Ziegler-Nichols:

Thông thường việc chọn các thông số P, I, D được xác định bằng thực nghiệm dựa vào đáp ứng xung của hệ thống Ziegler – Nichols đưa ra phương pháp chọn tham số PID cho mô hình quán tính bậc nhất có trễ Ở đây ta xấp xỉ hàm truyền của động cơ để dùng phương pháp này, tuy không hoàn toàn chính xác nhưng có thể cho đáp ứng tương đối tốt

Phương pháp này đỏi hỏi phải tính được giá trị giới hạn của của khâu tỉ lệ

Kgh và chu kì giới hạn của hệ kín Tgh Sau đó tìm các thông số khác theo bảng sau:

Trang 15

-Chương 1: Động cơ điện một chiều

Bảng 1.2 Các giá trị thông dụng của các hệ số KP, KI, KD.

Để tìm được Kgh và Tgh, ban đầu ta chỉnh Ki, Kd bằng 0 sau đó tăng từ từ Kp

để hệ thống ở biên giới ổn định (dao động với biên độ và chu kì không đổi), tại đây

ta xác định được Kgh và Tgh sau đó tính các thông số khác tùy theo bộ điều khiển như bảng trên

Ki = Kp/Ti

Kd = KxTd

Để thuận tiện trong quá trình điều chỉnh và quan sát đáp ứng của động cơ, đồ

án này đã xây dựng chương trình viết bằng VB trên máy tính để giao tiếp với mạch điều khiển Phần này sẽ được giới thiệu trong chương 4

Trang 16

Chương 2: Giới thiệu vi điều khiển PIC16F887

Chương 2 : Giới thiệu vi điều khiển PIC16F887

Chương này giới thiệu cơ bản về vi điều khiển PIC16F887 của hãng Microchip và hoạt động của nó bao gồm nội dung về cách cấu hình xung clock, hoạt động khối giao tiếp UART, khối PWM, ngắt ngoài trên chân RB, cấu tạo và hoạt động của các bộ timer, và cách nạp chương trình cho PIC16F887

2.2.1 Một vài chi tiết chính của vi điều khiển PIC16F887

PIC16F887 là vi điều khiển 8-bit có kiến trúc Harvard của Microchip có những thông số kỹ thuật như sau:

- Clock hoạt động tối đa 20MHz

- Chu kỳ máy bằng bốn lần chu kỳ xung clock

- Chip có nhiều dạng vỏ khác nhau, loại chip được sử dụng trong đề tài là loại 40 chân PDIP

- Điện áp hoạt động rộng từ 2V đến 5.5V

- Bộ nhớ dữ liệu và bộ nhớ chương trình tách biệt nhau, bus địa chỉ cũng như bus dữ liệu là riêng biệt Bộ nhớ chương trình Flash 8K ô nhớ cho phép ghi 100,000 lần Mỗi ô nhớ có 14 bit Bộ nhớ dữ liệu RAM có 512 Byte gồm các thanh ghi chức năng đặc biệt và các thanh ghi đa mục đích Ngoài ra PIC16F887 được tích hợp 256 Byte EEPROM cho phép ghi đến 1,000,000 lần

- 35 chân I/O của 5 port điều khiển là PortA, PortB, PortC, PortD, PortE

- Bộ chuyển đổi ADC 10-bit với 14 kênh

- 3 bộ timer Bộ timer0 8-bit, bộ timer1 16-bit và bộ timer2 8-bit

- Module Capture, Compare và PWM

- Module Enhanced USART hỗ trợ RS-485, RS-232

Những chi tiết trên được thể hiện cụ thể trong hình 2.1

Trang 17

Chương 2: Giới thiệu vi điều khiển PIC16F887

Hình 2.1 Sơ đồ khối của PIC16F887

Trang 18

Chương 2: Giới thiệu vi điều khiển PIC16F887

2.2.2 Bộ dao động của PIC16F887

Sơ đồ khối của bộ dao động được minh họa trong hình 2.2

Hình 2.2 Sơ đồ khối bộ dao động của PIC16F887Clock hệ thống của PIC16F887 có thể được chọn từ hai nguồn dao động nội (Internal Oscillator) hoặc dao động ngoại (External Oscillator) nhờ bộ chọn kênh MUX Bộ MUX được điều khiển bởi các bit FOSC<2:0> (bit 2, bit 1, bit 0 của thanh ghi CONFIG1 16-bit định vị tại địa chỉ 2007H và 2008H trong bộ nhớ chương trình) và bit SCS<0> (bit 0 của thanh ghi OSCCON) Nếu SCS = 1, clock

hệ thống được chọn từ INTOSC Nếu SCS = 0, clock hệ thống được chọn từ bộ dao động ngoại Các bit FOSC<2:0> được sử dụng để cấu hình bộ dao động ngoại là

LP, XT, HS, RC, RCIO hay EC

 Bộ dao động nội gồm 2 bộ dao động HFINTOSC 8MHz và LFINTOSC 31kHz Clock 8MHz của bộ HFINTOSC được chia thành các tần số 8MHz, 4MHz, 2MHz, 1MHz, 500kHz, 250kHz, 125kHz nhờ bộ chia tần

số postscaler Các bit IRCF<2:0> điều khiển bộ MUX chọn kênh cho INTOSC

Trang 19

Chương 2: Giới thiệu vi điều khiển PIC16F887

 Bộ dao động ngoại (được tích hợp bên trong PIC) cần được kết nối với các bộ lọc tại các chân OSC1, OSC2 Trong đề tài, tôi sử dụng thạch anh 12MHz và 2 tụ 33pF kết nối như hình 2.3 Bộ dao động ngoại được hoạt động ở chế độ HS Tín hiệu dao động được qua bộ đệm Trigger theo sườn xuống và tạo thành xung clock HS 12MHz cung cấp cho clock hệ thống

Hình 2.3 Bộ dao động ngoại ở chế độ HS

2.2.3 Các Port I/O

PIC16F887 tất cả 35 chân I/O mục đích thông thường (GPIO: General Purpose Input Ouput) có thể được sử dụng Tùy theo những thiết bị ngoại vi được chọn mà một vài chân có thể không được sử dụng ở chức năng GPIO Thông thường, khi một thiết bị ngoại vi được chọn, những chân liên quan của thiết bị ngoại

vi có thể không được sử dụng ở chức năng GPIO 35 chân GPIO được chia cho 5 Port: PortA gồm 8 chân, PortB gồm 8 chân, PortC gồm 8 chân, PortD gồm 8 chân

và PortE gồm 3 chân

Mỗi port được điều khiển bởi 2 thanh ghi 8-bit, thanh ghi Port và thanh ghi Tris Thanh ghi Tris được sử dụng để điều khiển port là nhập hay xuất Mỗi bit của Tris sẽ điều khiển mỗi chân của port đó, nếu giá trị của bit là 1 thì chân liên quan là nhập, ngược lại nếu giá trị của bit là 0 thì chân liên quan là xuất Thanh ghi Port được sử dụng để chứa giá trị của port liên quan Mỗi bit của thanh ghi Port sẽ chứa giá trị của chân liên quan

Cấu trúc của chân GPIO được thể hiện trong hình 2.4

Trang 20

Chương 2: Giới thiệu vi điều khiển PIC16F887

Hình 2.4 Cấu tạo của chân GPIO

2.2.4 Hoạt động của khối giao tiếp EUSART

Khối giao tiếp nối tiếp EUSART (Enhanced Universal Synchronous Asynchronous Receiver Transmitter) cho phép cấu hình hoạt động ở chế độ giao tiếp nối tiếp đồng bộ và không đồng bộ Trong đề tài này, chế độ giao tiếp không đồng bộ được sử dụng Phần này sẽ tập trung mô tả hoạt động của module EUSART ở chế độ không đồng bộ

 Hoạt động truyền:

Sơ đồ khối bộ truyền được thể hiện trong hình 2.5

Hình 2.5 Sơ đồ khối bộ truyền của module EUSART

Trang 21

Chương 2: Giới thiệu vi điều khiển PIC16F887

Bộ phận chính của khối truyền là thanh ghi truyền TSR Thanh ghi này không thể truy cập bằng phần mềm, mà được truy cập gián tiếp qua thanh ghi đệm truyền TXREG Bộ truyền được kích hoạt khi cấu hình các bit TXEN=1, SYNC=0, SPEN=1 TXEN=1 kích hoạt bộ truyền của EUSART SYNC=0 cấu hình EUSART hoạt động ở chế độ không đồng bộ SPEN=1 cho phép bộ EUSART hoạt động và cấu hình chân TX/CK là chân xuất

- Quá trình truyền được khởi tạo bằng cách ghi dữ liệu truyền vào thanh ghi TXREG Nếu đây là dữ liệu truyền đầu tiên hoặc dữ liệu truyền trước

đã truyền hoàn tất thì dữ liệu trong TXREG ngay lập tức sẽ được truyền vào thanh ghi TSR Nếu thanh ghi TSR vẫn còn chứa dữ liệu của ký tự truyền trước thì dữ liệu mới trong TXREG sẽ được giữ cho đến khi bit Stop của ký tự đang truyền hoàn tất Sau đó dữ liệu chờ trong TXREG sẽ được truyền vào TSR

- Các bước thiết lập quá trình truyền:

o Khởi tạo cặp thanh ghi SPBRGH, SPBRG và các bit BRGH, BRG16 để cấu hình tốc độ Baud

o Thiết lập bit SYNC=0, và bit SPEN=1

o Gởi dữ liệu cần truyền vào TXREG, quá trình truyền sẽ bắt đầu

 Hoạt động nhận:

Sơ đồ khối bộ nhận được thể hiện trong hình 2.6

Dữ liệu được nhận trên chân RX/DT và đẩy vào khối Data Recovery Khi tất

cả 8 hoặc 9 bit của ký tự nhận đã được dịch vào, chúng sẽ ngay lập tức được chuyển vào bộ đệm 2 ký tự FIFO Bộ đệm FIFO và thanh ghi RSR không thể truy cập trực tiếp bằng phần mềm mà được truy cập gián tiếp thông qua thanh ghi RCREG Dữ liệu trong bộ đệm nhận được đọc bằng cách đọc thanh ghi RCREG Bộ nhận được kích hoạt khi cấu hình các bit CREN=1, SYNC=0, SPEN=1 CREN=1 kích hoạt bộ nhận của EUSART SYNC=0 cấu hình EUSART hoạt động ở chế độ không đồng bộ SPEN=1 cho phép bộ EUSART hoạt động và cấu hình chân RX/DT là chân nhập

Trang 22

Chương 2: Giới thiệu vi điều khiển PIC16F887

Cờ ngắt nhận RCIF=1 khi bộ nhận EUSART được kích hoạt và có một ký tự

đã được nhận trong bộ đệm nhận FIFO và chưa được đọc Bit RCIF là bit chỉ đọc, không thể ghi bằng phần mềm Ngắt nhận được kích hoạt khi cấu hình các bit sau: RCIE=1, PEIE=1 và GIE=1 Sau khi đã thiết lập các bit như trên, ngắt nhận xảy ra ngay khi nhận xong một ký tự trong bộ đệm nhận Cờ RCIF được xóa bằng phần cứng khi không có ký tự nào chưa đọc trong bộ đệm nhận

Hình 2.6 Sơ đồ khối bộ nhận USART

2.2.5 Cấu tạo và hoạt động của khối điều xung PWM

PIC16F887 có hai bộ điều xung, hai bộ này sẽ tạo ra các tín hiệu điều xung trên các chân CCP1 và CCP2 Độ rộng, chu kỳ, và độ phân giải được xác định bởi các thanh ghi PR2, T2CON, CCPR1L, CCPR2L, CCP1CON, CCP2CON

Để các chân CCPx (CCP1 và CCP2) hoạt động ở chế độ PWM, cần xóa bit TRIS tương ứng của các chân đó Sơ đồ khối của các bộ điều xung được mô tả trong hình 2.7

Chú thích (1) trong hình 2.7 biểu thị rằng thanh ghi 8-bit TMR2 được kết hợp với 2-bit prescaler của bộ dao động nội để tạo ra bộ định thời 10-bit Các thanh ghi CCPRxH là các thanh ghi chỉ đọc, kết hợp với 2 bit 5 và 4 của các thanh ghi CCPxCON có vai trò định độ rộng của xung, các thanh ghi này được ghi gián tiếp thông qua các thanh ghi CCPRxL Thanh ghi 8-bit PR2 định chu kỳ cho xung ra

Trang 23

Chương 2: Giới thiệu vi điều khiển PIC16F887

Hình 2.7 Sơ đồ khối bộ PWM

Sóng điều xung tại các chân CCPx có giản đồ thời gian như hình 2.8

Hình 2.8 Giản đồ thời gian của sóng điều xung tại chân CCPxThanh ghi TMR2 kết hợp với 2 bit prescaler sẽ đếm lên nhờ xung clock của

hệ thống Khi giá trị của TMR2 nhỏ hơn giá trị của CCPRxL:CCPxCON<5:4>, chân CCPx ở mức cao Khi giá trị của TMR2 bằng với giá trị này, bộ so sánh sẽ đảo chân CCPx xuống mức 0 Khi giá trị của TMR2 bằng với PR2, TMR2 sẽ được xóa

về 0 đồng thời kết thúc chu kỳ xung, chân CCPx lại được thiết lập mức cao

Chu kỳ của xung được tính theo công thức sau:

Chu kỳ PWM = [(PR2)+1].4.TOSC.(giá trị Prescale của TMR2)

Ở đây TOSC là chu kỳ của clock hệ thống TOSC = 1/FOSC.

Độ rộng xung được tính theo công thức sau:

Độ rộng xung = (CCPxL:CCPxCON<5:4>).TOSC.(giá trị Prescale của TMR2)

Trang 24

Chương 2: Giới thiệu vi điều khiển PIC16F887

2.2.6 Ngắt ngoài trên chân RB0

Hình 2.9 là sơ đồ khối logic của hệ thống ngắt trong PIC16F887

Hình 2.9 Sơ đồ khối logic của hệ thống ngắt trong PIC16F887

Ngắt ngoài trên chân RB0 được kích khởi theo sườn Sườn lên nếu như bit INTEDG=1 (bit 6 của thanh ghi OPTION_REG), sườn xuống nếu INTEDG=0 Khi một sườn thích hợp xuất hiện trên chân RB0, cờ INTF được bật lên 1 Ngắt này có thể được cho phép nếu bit INTE=1, không cho phép nếu INTE=0 Cờ INTF cần được xóa bằng phần mềm trong trình phục vụ ngắt trước khi cho phép ngắt trở lại

Trang 25

Chương 2: Giới thiệu vi điều khiển PIC16F887

2.2.7 Cấu tạo và hoạt động của bộ Timer1

Bộ timer1 là bộ định thời 16-bit có cấu tạo như hình 2.10

Hình 2.10 Sơ đồ khối của bộ timer1

Bộ timer1 là bộ đếm lên 16-bit được truy xuất gián tiếp thông qua cặp thanh ghi TMR1H, TMR1L Đọc hoặc ghi các thanh ghi này sẽ cập nhật trực tiếp giá trị cho bộ timer Khi được sử dụng với nguồn clock nội, bộ timer 1 sẽ có vai trò là bộ định thời Khi được sử dụng với nguồn clock ngoại, nó sẽ có vai trò là định thời hoặc bộ đếm Sử dụng bit TMR1CS để chọn nguồn clock

Các bit T1CKPS<1:0> định giá trị cho bộ chia tần số Prescaler Khi bộ TMR1 tràn (từ FFFFh đến 0000h) cờ ngắt TMR1IF sẽ được thiết lập lên 1 Nếu lúc này cờ TMR1IE =1, cờ PEIE=1 và GIE=1 thì ngắt timer1 sẽ xảy ra Cờ TMR1IF cần được xóa trong trình phục vụ ngắt timer1

2.2.8 Cách nạp cho PIC16F887

Có nhiều cách nạp cho chip PIC16F887, trong đề tài này sử dụng cách nạp bằng mạch nạp ezPIC Programmer của Sunrom và phần mềm nạp PICPgm Programmer Mạch nạp được kết nối qua cổng COM của máy vi tính Sơ đồ nguyên

Trang 26

Chương 2: Giới thiệu vi điều khiển PIC16F887

lý, mạch thực tế của mạch nạp ezPIC Programmer của Sunrom được cho ở hình 2.11 và 2.12

Hình 2.11 Sơ đồ nguyên lý mạch nạp ezPIC Programmer của Sunrom

Hình 2.12 Mạch nạp ezPIC Programmer của Sunrom

Trang 27

Chương 2: Giới thiệu vi điều khiển PIC16F887

Phần mềm nạp PICPgm Programmer được viết bởi Christian Stadler, phần mềm này giao tiếp được với nhiều mạch nạp, trong đó có ezPIC Programmer của Sunrom Đặc biệt PICPgm Programmer nạp được hầu hết các dòng PIC của Microchip Phần mềm này rất dễ sử dụng và hoạt động rất ổn định, giao diện được thể hiện trong hình 2.13

Hình 2.13 Giao diện phần mềm PICPgm Programmer

Chương này đã mô tả sơ lược cấu tạo của PIC16F887, hoạt động của một vài thiết bị ngoại vi được sử dụng trong đề tài, cách nạp cho PIC16F887 bằng mạch nạp ezPIC và chương trình nạp PICPgm Programmer

Chương tới sẽ trình bày quá trình thiết kế và thi công phần cứng

Ngày đăng: 25/04/2013, 10:13

HÌNH ẢNH LIÊN QUAN

Hình 1.2 Dạng sóng dòng và áp trên động cơ. - Điều khiển tốc độ động cơ điện một chiều
Hình 1.2 Dạng sóng dòng và áp trên động cơ (Trang 10)
Hình 1.1 Điều chỉnh độ rộng xung PWM. - Điều khiển tốc độ động cơ điện một chiều
Hình 1.1 Điều chỉnh độ rộng xung PWM (Trang 10)
Hình 1.1 Điều chỉnh độ rộng xung PWM. - Điều khiển tốc độ động cơ điện một chiều
Hình 1.1 Điều chỉnh độ rộng xung PWM (Trang 10)
Hình 1.2 Dạng sóng dòng và áp trên động cơ. - Điều khiển tốc độ động cơ điện một chiều
Hình 1.2 Dạng sóng dòng và áp trên động cơ (Trang 10)
Vậy ta có mô hình hệ thống như sau: - Điều khiển tốc độ động cơ điện một chiều
y ta có mô hình hệ thống như sau: (Trang 11)
Hình 1.4 Đồ thị tìm được bằng thực nghiệm của động cơ DC kU = 150 vòng/s - Điều khiển tốc độ động cơ điện một chiều
Hình 1.4 Đồ thị tìm được bằng thực nghiệm của động cơ DC kU = 150 vòng/s (Trang 12)
Hình 1.4 Đồ thị tìm được bằng thực nghiệm của động cơ DC kU = 150 vòng/s - Điều khiển tốc độ động cơ điện một chiều
Hình 1.4 Đồ thị tìm được bằng thực nghiệm của động cơ DC kU = 150 vòng/s (Trang 12)
Hình 1.5 Mô hình hệ thống PID. - Điều khiển tốc độ động cơ điện một chiều
Hình 1.5 Mô hình hệ thống PID (Trang 13)
Hình 1.5 Mô hình hệ thống PID. - Điều khiển tốc độ động cơ điện một chiều
Hình 1.5 Mô hình hệ thống PID (Trang 13)
Hình 2.1 Sơ đồ khối của PIC16F887 - Điều khiển tốc độ động cơ điện một chiều
Hình 2.1 Sơ đồ khối của PIC16F887 (Trang 17)
Hình 2.1 Sơ đồ khối của PIC16F887 - Điều khiển tốc độ động cơ điện một chiều
Hình 2.1 Sơ đồ khối của PIC16F887 (Trang 17)
Sơ đồ khối của bộ dao động được minh họa trong hình 2.2. - Điều khiển tốc độ động cơ điện một chiều
Sơ đồ kh ối của bộ dao động được minh họa trong hình 2.2 (Trang 18)
Sơ đồ khối của bộ dao động được minh họa trong hình 2.2. - Điều khiển tốc độ động cơ điện một chiều
Sơ đồ kh ối của bộ dao động được minh họa trong hình 2.2 (Trang 18)
Hình 2.3 Bộ dao động ngoại ở chế độ HS. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.3 Bộ dao động ngoại ở chế độ HS (Trang 19)
Sơ đồ khối bộ truyền được thể hiện trong hình 2.5. - Điều khiển tốc độ động cơ điện một chiều
Sơ đồ kh ối bộ truyền được thể hiện trong hình 2.5 (Trang 20)
Hình 2.6 Sơ đồ khối bộ nhận USART. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.6 Sơ đồ khối bộ nhận USART (Trang 22)
Hình 2.6 Sơ đồ khối bộ nhận USART. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.6 Sơ đồ khối bộ nhận USART (Trang 22)
Hình 2.7 Sơ đồ khối bộ PWM. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.7 Sơ đồ khối bộ PWM (Trang 23)
Hình 2.9 là sơ đồ khối logic của hệ thống ngắt trong PIC16F887. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.9 là sơ đồ khối logic của hệ thống ngắt trong PIC16F887 (Trang 24)
Hình 2.9 là sơ đồ khối logic của hệ thống ngắt trong PIC16F887. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.9 là sơ đồ khối logic của hệ thống ngắt trong PIC16F887 (Trang 24)
Bộ timer1 là bộ định thời 16-bit có cấu tạo như hình 2.10. - Điều khiển tốc độ động cơ điện một chiều
timer1 là bộ định thời 16-bit có cấu tạo như hình 2.10 (Trang 25)
Hình 2.10 Sơ đồ khối của bộ timer1. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.10 Sơ đồ khối của bộ timer1 (Trang 25)
lý, mạch thực tế của mạch nạp ezPIC Programmer của Sunrom được cho ở hình 2.11 và 2.12 - Điều khiển tốc độ động cơ điện một chiều
l ý, mạch thực tế của mạch nạp ezPIC Programmer của Sunrom được cho ở hình 2.11 và 2.12 (Trang 26)
Hình 2.11 Sơ đồ nguyên lý mạch nạp ezPIC Programmer của Sunrom. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.11 Sơ đồ nguyên lý mạch nạp ezPIC Programmer của Sunrom (Trang 26)
Hình 2.12 Mạch nạp ezPIC Programmer của Sunrom. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.12 Mạch nạp ezPIC Programmer của Sunrom (Trang 26)
Hình 2.13 Giao diện phần mềm PICPgm Programmer. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.13 Giao diện phần mềm PICPgm Programmer (Trang 27)
Hình 2.13 Giao diện phần mềm PICPgm Programmer. - Điều khiển tốc độ động cơ điện một chiều
Hình 2.13 Giao diện phần mềm PICPgm Programmer (Trang 27)
Sơ đồ khối phần cứng được mô tả như hình 3.1. - Điều khiển tốc độ động cơ điện một chiều
Sơ đồ kh ối phần cứng được mô tả như hình 3.1 (Trang 28)
Sơ đồ khối phần cứng được mô tả như hình 3.1. - Điều khiển tốc độ động cơ điện một chiều
Sơ đồ kh ối phần cứng được mô tả như hình 3.1 (Trang 28)
Hình 3.2 Sơ đồ nguyên lý. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.2 Sơ đồ nguyên lý (Trang 30)
Hình 3.2 Sơ đồ nguyên lý. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.2 Sơ đồ nguyên lý (Trang 30)
Hình 3.3 Phần mạch đảo chiều động cơ. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.3 Phần mạch đảo chiều động cơ (Trang 31)
Hình 3.3 Phần mạch đảo chiều động cơ. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.3 Phần mạch đảo chiều động cơ (Trang 31)
Hình 3.4 Dạng sóng VDS và VGS khi FET chuyển mạch. Tổn hao trong quá trình chuyển từ off sang on - Điều khiển tốc độ động cơ điện một chiều
Hình 3.4 Dạng sóng VDS và VGS khi FET chuyển mạch. Tổn hao trong quá trình chuyển từ off sang on (Trang 33)
Hình 3.5 Mạch lái cho FET. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.5 Mạch lái cho FET (Trang 34)
Hình 3.6 Dạng sóng chuyển mạch trên Q6. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.6 Dạng sóng chuyển mạch trên Q6 (Trang 35)
Hình 3.6 Dạng sóng chuyển mạch trên Q6. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.6 Dạng sóng chuyển mạch trên Q6 (Trang 35)
Hình 3.7 Layout của phần mạch điều khiển. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.7 Layout của phần mạch điều khiển (Trang 37)
Hình 3.7 Layout của phần mạch điều khiển. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.7 Layout của phần mạch điều khiển (Trang 37)
Hình 3.8 Mạch điều khiển sau khi thi công xong. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.8 Mạch điều khiển sau khi thi công xong (Trang 38)
Hình 3.8 Mạch điều khiển sau khi thi công xong. - Điều khiển tốc độ động cơ điện một chiều
Hình 3.8 Mạch điều khiển sau khi thi công xong (Trang 38)
Hình 4.1 Lưu đồ thuật toán chương trình chính.Bắt đầu - Điều khiển tốc độ động cơ điện một chiều
Hình 4.1 Lưu đồ thuật toán chương trình chính.Bắt đầu (Trang 41)
Hình 4.1 Lưu đồ thuật toán chương trình chính. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.1 Lưu đồ thuật toán chương trình chính (Trang 41)
Hình 4.2 Lưu đồ thuật toán chương trình xử lý phím.Bắt đầu - Điều khiển tốc độ động cơ điện một chiều
Hình 4.2 Lưu đồ thuật toán chương trình xử lý phím.Bắt đầu (Trang 44)
Hình 4.2 Lưu đồ thuật toán chương trình xử lý phím. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.2 Lưu đồ thuật toán chương trình xử lý phím (Trang 44)
Hình 4.3 Lưu đồ thuật toán chương trình phục vụ ngắt timer1.Bắt đầu - Điều khiển tốc độ động cơ điện một chiều
Hình 4.3 Lưu đồ thuật toán chương trình phục vụ ngắt timer1.Bắt đầu (Trang 46)
Hình 4.3 Lưu đồ thuật toán chương trình phục vụ ngắt timer1. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.3 Lưu đồ thuật toán chương trình phục vụ ngắt timer1 (Trang 46)
Hình 4.3 Lưu đồ thuật toán chương trình phục vụ ngắt nhận UART.Bắt đầu - Điều khiển tốc độ động cơ điện một chiều
Hình 4.3 Lưu đồ thuật toán chương trình phục vụ ngắt nhận UART.Bắt đầu (Trang 48)
Hình 4.3 Lưu đồ thuật toán chương trình phục vụ ngắt nhận UART. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.3 Lưu đồ thuật toán chương trình phục vụ ngắt nhận UART (Trang 48)
Hình 4.4 Giao diện phần mềm điều khiển trên máy tính. Trong hình 4.4, giao diện gồm 4 phần: - Điều khiển tốc độ động cơ điện một chiều
Hình 4.4 Giao diện phần mềm điều khiển trên máy tính. Trong hình 4.4, giao diện gồm 4 phần: (Trang 49)
Hình 4.4 Giao diện phần mềm điều khiển trên máy tính. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.4 Giao diện phần mềm điều khiển trên máy tính (Trang 49)
Hình 4.5 Lưu đồ thuật toán khi điều khiển thanh trượt Kp. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.5 Lưu đồ thuật toán khi điều khiển thanh trượt Kp (Trang 50)
Hình 4.8 Lưu đồ thuật toán khi điều khiển thanh trượt Speed.Bắt đầu - Điều khiển tốc độ động cơ điện một chiều
Hình 4.8 Lưu đồ thuật toán khi điều khiển thanh trượt Speed.Bắt đầu (Trang 51)
Hình 4.8 Lưu đồ thuật toán khi điều khiển thanh trượt Speed. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.8 Lưu đồ thuật toán khi điều khiển thanh trượt Speed (Trang 51)
Hình 4.7 Lưu đồ thuật toán khi điều khiển thanh trượt Kd. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.7 Lưu đồ thuật toán khi điều khiển thanh trượt Kd (Trang 51)
Hình 4.10 Lưu đồ thuật toán khi điều khiển nút Direction.Kết thúc - Điều khiển tốc độ động cơ điện một chiều
Hình 4.10 Lưu đồ thuật toán khi điều khiển nút Direction.Kết thúc (Trang 52)
Hình 4.9 Lưu đồ thuật toán khi điều khiển các nút On/Off. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.9 Lưu đồ thuật toán khi điều khiển các nút On/Off (Trang 52)
Hình 4.9 Lưu đồ thuật toán khi điều khiển các nút On/Off. - Điều khiển tốc độ động cơ điện một chiều
Hình 4.9 Lưu đồ thuật toán khi điều khiển các nút On/Off (Trang 52)
Hình 4.11 là lưu đồ thuật toán chương trình nhận dữ liệu từ MCU và hiển thị  trên giao diện - Điều khiển tốc độ động cơ điện một chiều
Hình 4.11 là lưu đồ thuật toán chương trình nhận dữ liệu từ MCU và hiển thị trên giao diện (Trang 53)

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w