đề tài “ điều khiển on_off tốc độ động cơ dc ''''

42 437 0
đề tài “ điều khiển on_off tốc độ động cơ dc ''''

Đ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

Đề tài Điều khiển ON_OFF tốc độ động DC Báo cáo đồ án môn học I Mục lục 1.2. Nh n xétậ 8 1.3. Khái qt v ch c n ng c a các port trong vi đi u khi n PIC16F877Aề ứ ă ủ ề ể 8 1.4. T i sao s d ng PIC16F877A mà khơng dùng 8051 cho đ tàiạ ử ụ ề 10 2. Tìm hi u v vi đi u khi n PIC16F877Aể ề ề ể 11 2.1. C u trúc ph n c ng c a PIC16F877Aấ ầ ứ ủ 11 2.2. T ch c b nh PIC16F877aổ ứ ộ ớ 14 2.2.1. B nh ch ng trìnhộ ớ ươ 14 2.2.2. B nh d li uộ ớ ữ ệ 15 2.2.3. M t vài thanh ghi ch c n ng đ c bi t SFRộ ứ ă ặ ệ 17 2.3. Thanh ghi W(work) và t p l nh c a PIC16F877Aậ ệ ủ 19 2.3.1. Thanh ghi W 19 2.3.2. T p l nh c a PIC16F877Aậ ệ ủ 19 II. Motor Driver L293D : 22 III. Các IC khác 25 IV. i t ng đi u khi n : ng c DCĐố ượ ề ể Độ ơ 27 Ch ng III : Ngun lý ho t đ ng c a m t s module trong m chươ ạ ộ ủ ộ ố ạ 32 I.M ch ngu n 5 V chu n cung c p cho vi đi u khi n và ngu n 24 cung c p cho đ ng c .ạ ồ ẩ ấ ề ể ồ ấ ộ ơ 32 1. S đ ngun lýơ ồ 32 2. Gi i thích ngun lý ho t đ ngả ạ ộ 32 II. Kh i m ch reset vi đi u khi n PIC16F877Aố ạ ề ể 33 1.S đ ngun lýơ ồ 33 2. Gi i thíchả 33 III. Kh i m ch qt phímố ạ 34 1.S đ ngun lýơ ồ 34 2. Gi i thích k t n iả ế ố 34 3. Gi i thu t qt phímả ậ 34 IV. Gi i thu t đi u khi n ON_OFF đ ng c DCả ậ ề ể ộ ơ 35 1.S đ ngun lýơ ồ 35 2. Gi i thu t đi u khi nả ậ ề ể 35 Ch ng IV: Ch ng trình vi t b ng Assembly đi u khi n ON_OFF đ ng c DCươ ươ ế ằ ề ể ộ ơ 36 Tài li u tham kh oệ ả 41 GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh2 Báo cáo đồ án môn học I Lời cảm ơn Kính gửi Thầy TS. Nguyễn Thiện Thành! Em là Nguyễn Uy Danh, sinh viên năm 4, khoa Điện_Điện Tử, Đại Học Bách Khoa Tp.HCM. Học kỳ này, em rất vinh dự được thực hiện đề tài của đồ án mơn học I dưới sự hướng dẫn tận tình của Thầy. Chính sự nhiệt tình chỉ dẫn của Thầý đã giúp em hồn thành đồ án khá tốt, đạt được những u cầu bản mà đề tài đặt ra. Và cũng qua đó, em đã học hỏi, tiếp cận được nhiều vấn đề thực tế hơn, bổ sung những “khe hở” kiến thức do việc học thiên về lý thuyết để lại. Em xin chân thành cảm ơn Thầy. Cũng qua đây, em xin gửi lời cảm ơn chân thành của mình đến gia đình, bạn bè –những người đã động viên, quan tâm hết mực đến em trong suốt q trình thực hiện đồ án. Đó là những động lực thúc đẩy em cố gắng hơn, quyết tâm hơn, để cuối cùng em được kết quả như ngày hơm nay. Em xin gửi lời cảm ơn đến tất cả. Sinh viên thực hiện Nguyễn Uy Danh Chương I : Giới thiệu về đề tài GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh3 Báo cáo đồ án môn học I I.Tóm tắt đề tài đồ án mơn học I 1. Giới thiệu các module mạch của đề tài Đề tài đồ án mơn học I của em là : Điều khiển ON_OFF tốc độ động DC”. Với u cầu đề tài như trên, hướng thực hiện đề tài của em được tóm tắt như sau: - Sử dụng vi điều khiển PIC16F877A làm chip điều khiển trung tâm. - Xây dựng bàn phím gồm 13 phím. Trong đó: +1 phím để đồng thời reset vi điều khiển và dừng động DC + 10 phím ứng với 10 số từ 0 đến 9 để người dùng nhập tốc độ đặt + 1 phím ra lệnh động quay thuận (FORWARD) + 1 phím ra lệnh động quay ngược (REVERSE) - Sử dụng 8 led 7 đoạn. Trong đó + 4 led dùng để người dùng nhập tốc độ đặt mong muốn + 4 led để người dùng quan sát tốc độ đo trực tiếp từ động - Sử dụng driver cầu H L293D trực tiếp điều khiển chiều quay, đóng ngắt động DC - Đối tượng điều khiểnđộng DC gắn encoder đồng trục. - Ngồi ra, trên mạch còn các linh kiện khác để thực hiện truyền tín hiệu giữa vi điều khiển trung tâm với các thiết bị hiển thị nói trên. Tất cả các module mạch trên sẽ được em trình bày rõ trong các phần tiếp theo của đề tài. 2. Sơ đồ ngun lý kết nối các module trong mạch GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh4 Báo cáo đồ án môn học I 3. Cách vận hành mạch + Bước 1: ta sẽ nhập tốc độ đặt từ bàn phím. Tốc độ đặt này gồm 4 chữ số, sẽ hiện lên thơng qua 4 led. Ta phải nhấn đủ 4 con số thì mạch mới hoạt động được, nếu khơng nhấn đủ mạch sẽ “treo đó”, chờ người dùng nhấn số tiếp. Nếu nhập sai tốc độ, ta thể nhấn phím reset để nhập tốc độ lại từ đầu. Nếu nhấn nhầm sang các phím RESERVE hoặc FORWARD trước khi nhập đủ 4 số ở phần cài đặt tốc độ thì người dùng hồn tồn thể nhấn lại mà khơng ảnh hưởng đến kết quả. + Bước 2: ta nhấn tiếp RESERVE hay FORWARD cho động chạy theo ý muốn. Trong q trình động quay, vi điều khiển sẽ nhận liên tục nhận xung phát ra từ encoder, tính tốn ra tốc độ và so sánh với tốc độ đặt ban đầu để ra quyết định ON_OFF động cơ. Tốc độ nhận về sẽ được so sánh với tốc độ đặt cứ 1ms một lần. Ngồi ra cứ 1s thì vi điều khiển sẽ cập nhật tốc độ thực của động cơ, thể hiện ra 4 led 7 đoạn để người dùng thể theo dõi và đánh giá. GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh5 Báo cáo đồ án môn học I II. Các u cầu của đề tài 1. Thơng qua đề tài, làm quen với cách thức điều khiển đối tượng động cơ. 2. Tìm hiểu thực tế các linh kiện, các loại IC, hoạt động của các loại cảm biến…. 3. Thiết kế, thi cơng mạch điều khiển và mạch động lực điều khiển động DC 4. Viết chương trình cho vi điều khiển PIC16F877A thực hiện thành cơng theo u cầu đề ra. 5. Đánh giá về sai số ,chất lượng hệ thống điều khiển 6. Tìm hiểu các hướng phát triển của đề tài, nâng cao chất lượng của hệ thống GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh6 Báo cáo đồ án môn học I Chương II : Giới thiệu về các linh kiện, phần tử sử dụng trong mạch I. Vi điều khiển PIC16F877A 1. Khái qt về vi điều khiển PIC16F877A 1.1.Sơ đồ chân và sơ đồ ngun lý của PIC16F877A Sơ đồ chân đồ ngun lý GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh7 Báo cáo đồ án môn học I 1.2. Nhận xét Từ sơ đồ chân và sơ đồ ngun lý ở trên, ta rút ra các nhận xét ban đầu như sau : - PIC16F877A tất cả 40 chân - 40 chân trên được chia thành 5 PORT, 2 chân cấp nguồn, 2 chân GND, 2 chan thạch anh và một chân dùng để RESET vi điều khiển. - 5 port của PIC16F877A bao gồm : + PORTB : 8 chân + PORTD : 8 chân + PORTC : 8 chân + PORTA : 6 chân + PORT E : 3 chân 1.3. Khái qt về chức năng của các port trong vi điều khiển PIC16F877A PORTA GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh8 Báo cáo đồ án môn học I PORTA gồm 6 chân. Các chân của PortA, ta lập trình để thể thực hiện được chức năng “hai chiều” : xuất dữ liệu từ vi điều khiển ra ngoại vi và nhập dữ liệu từ ngoại vi vào vi điều khiển. Việc xuất nhập dữ liệu ở PIC16F877A khác với họ 8051. Ở tất cả các PORT của PIC16F877A, ở mỗi thời điểm chỉ thực hiện được một chức năng :xuất hoặc nhập. Để chuyển từ chức năng này nhập qua chức năng xuất hay ngược lại, ta phải xử lý bằng phần mềm, khơng như 8051 tự hiểu lúc nào là chức năng nhập, lúc nào là chức năng xuất. Trong kiến trúc phần cứng của PIC16F877A, người ta sử dụng thanh ghi TRISA ở địa chỉ 85H để điều khiển chức năng I/O trên. Muốn xác lập các chân nào của PORTA là nhập (input) thì ta set bit tương ứng chân đó trong thanh ghi TRISA. Ngược lại, muốn chân nào là output thì ta clear bit tương ứng chân đó trong thanh ghi TRISA. Điều này hồn tồn tương tự đối với các PORT còn lại Ngồi ra, PORTA còn các chức năng quan trọng sau : - Ngõ vào Analog của bộ ADC : thực hiện chức năng chuyển từ Analog sang Digital - Ngõ vào điện thế so sánh - Ngõ vào xung Clock của Timer0 trong kiến trúc phần cứng : thực hiện các nhiệm vụ đếm xung thơng qua Timer0… - Ngõ vào của bộ giao tiếp MSSP (Master Synchronous Serial Port) PORTB PORTB 8 chân. Cũng như PORTA, các chân PORTB cũng thực hiện được 2 chức năng : input và output. Hai chức năng trên được điều khiển bới thanh ghi TRISB. Khi muốn chân nào của PORTB là input thì ta set bit tương ứng trong thanh ghi TRISB, ngược lại muốn chân nào là output thì ta clear bit tương ứng trong TRISB. Thanh ghi TRISB còn được tích hợp bộ điện trở kéo lên thể điều khiển được bằng chương trình. PORTC PORTC 8 chân và cũng thực hiện được 2 chức năng input và output dưới sự điều khiển của thanh ghi TRISC tương tự như hai thanh ghi trên. GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh9 Báo cáo đồ án môn học I Ngồi ra PORTC còn các chức năng quan trọng sau : - Ngõ vào xung clock cho Timer1 trong kiến trúc phần cứng - Bộ PWM thực hiện chức năng điều xung lập trình được tần số, duty cycle: sử dụng trong điều khiển tốc độ và vị trí của động v.v…. - Tích hợp các bộ giao tiếp nối tiếp I2C, SPI, SSP, USART PORTD PORTD 8 chân. Thanh ghi TRISD điều khiển 2 chức năng input và output của PORTD tương tự như trên. PORTD cũng là cổng xuất dữ liệu của chuẩn giao tiếp song song PSP (Parallel Slave Port). PORTE PORTE 3 chân. Thanh ghi điều khiển xuất nhập tương ứng là TRISE. Các chân của PORTE ngõ vào analog. Bên cạnh đó PORTE còn là các chân điều khiển của chuẩn giao tiếp PSP. 1.4. Tại sao sử dụng PIC16F877A mà khơng dùng 8051 cho đề tài Trong chương trình đào tạo của Trường Đại Học Bách Khoa, em được học và thí nghiệm trên kit của vi điều khiển 8051. Họ vi điều khiển 8051 là một họ vi điều khiển điển hình, phổ biến, dễ sử dụng và lập trình, rất phù hợp với sinh viên mới bắt đầu làm quen đến lập trình cho vi điều khiển. Tuy nhiên, cũng trong q trình nghiên cứu và thí nghiệm với các chip điều khiển thuộc họ 8051 ( điển hình là 89C51, 89052…), em nhận thấy nó những nhược điểm bản sau đây : - Bộ nhớ Ram nội dung lượng thấp , chỉ 128 bytes. Điều nàý gây trở ngại lớn khi thực hiện các dự án lớn với vi điều khiển 8051. Để khắc phục ta phải mở rộng thêm làm hạn chế số chân dành cho các ứng dụng của vi điều khiển. - Số lượng các bộ giao tiếp với ngoại vi được tích hợp sẵn trong 8051 ít, khơng các bộ ADC, PWM, truyền dữ liệu song song…. Khi muốn sử dụng các chức năng này, ta phải sử dụng thêm các IC bên ngồi, gây tốn kém và khó thực hiện vì dễ bị nhiễu nếu khơng biết cách chống nhiễu tốt. GVHD : TS. Nguyễn Thiện Thành SVTH: Nguyễn Uy Danh10 [...]... tượng điều khiển : Động DC Đây cà động em sử dụng trong đề tài : GVHD : TS Nguyễn Thiện Thành 27 SVTH: Nguyễn Uy Danh Báo cáo đồ án môn học I Bên trong động gắn một encoder đồng trục với nó dùng để xác định tốc độ và vị trí của động Các thơng số của động như sau: + Điện áp DC cấp cho động : 24VDC + Tốc độ tối đa 4000 vòng/phút + Số xung của encoder 108xung/vòng + Điện cảm L=102mH Động. .. hiệu số lớn hơn 0 ( khơng nhớ) thì cho động tiếp tục chạy, nếu hiệu số nhỏ hơn 0 (cờ nhớ lên 1) thì tiến hành tắt động bằng cách cho bit EN=0 b5: Cứ sau 1s thì hiện tốc độ của động ra led 7 đoạn một lần b6: Lặp lại liên tục q trình trên, ta tốc độ đo dao động xung quanh tốc độ đặt Chương IV: Chương trình viết bằng Assembly điều khiển ON_OFF động DC Phần chương trình sẽ được em trình bày... vào 2 dây nguồn của động Sử dụng 2 bit RC6 và RC7 của PORTC vi điều khiển nối vào 2 chân 2 và 7 của L293D để điều khiển chiều quay Bit RC5 là bit cho phép động hoạt động Chân RA4 được định ở chế độ input để nhận xung từ encoder truyền về 2 Giải thuật điều khiển b1: Đặt 2 bit RC6 và RC7 là 0, 1 hoặc ngược lại để xác định chiều quay của động Bật bit RC5 lên 1 cho phép động quay b2: Dùng Timer1... Việc kết hợp timer2 với 2 bộ định tỉ lệ cho phép nó hoạt động như một bộ đinh thời 16 bit Module timer2 cung cấp thời gian hoạt động cho chế độ điều biến xung PWM nếu module CCP được chọn Sơ đồ khối của Timer2 II Motor Driver L293D : L293D là IC dùng để điều khiển cùng 1 lúc 2 động nhỏ Trong đề tài của mình, em chỉ dùng nó để điều khiển một động Dòng giới hạn của L293 là 600mA Sơ đồ chân của L293... Timer của 8051 ít, chỉ 2 Timer Chính điều này làm cho giải thuật khi viết chương trình gặp khó khăn Những nhược điểm căn bản trên của 8051, em đã quyết định khơng dùng vi điều khiển này cho đề tài iều khiển tốc độ động của mình Với kỳ vọng dựa trên nền tản kiến thức tiếp thu được khi học vi điều khiển 8051, em rất muốn tự bản thân tìm hiểu một họ vi điều khiển mới mạnh hơn, đầy đủ tính năng hơn... cảm L=102mH Động tất cả 6 dây ra : + 2 dây cung cấp nguồn 24 V cho đơng + 2 dây nguồn 5V cung cấp áp cho encoder + 1 dây tín hiệu kênh A và 1 dây kênh A bù đưa xung encoder ra ngồi Phương pháp điều khiển : Thay đổi tốc độ động bằng cách thay đổi áp cấp vào cho động Ngun lý hoạt động của cảm biến encoder : nhiều loại encoder khác nhau Mỗi loại lại một ngun lý hoạt động khác nhau,... vòng ngồi là 90 độ Khi đó, dạng xung ra từ 2 vòng trên như sau : Hai xung đưa ra từ 2 vòng lệch nhau 90 độ, nếu vòng ngồi nhanh pha hơn vòng trong thì chắc chắn động quay từ trái sang phải và ngược lại Một lỗ ở vòng trong cùng dùng để phát hiện điểm bắt đầu của động thể viết chương trình cho vi điều khiển nhận biết : nếu một xung phát ra từ vòng trong cùng này, tức là động đã quay đúng... trong một đề tài khơng lớn như đề tài iều khiển tốc độ động thể là một lãng phí Tuy nhiên với mục đích nâng cao kiến thức, nâng cao khả năng tự tìm tòi ,học hỏi qua các kênh thơng tin giáo dục khác nhau, nhằm phục vụ mục đích lâu dài sau này, thì đây là một sự lựa chọn hồn tồn xác đáng Và trên thực tế, trong một thời gian tương đối ngắn, em đã nắm vững được những mãng kiến thức bản nhất... đó ta thể dùng vi điều khiển đếm số xung đó trong một đơn vị thời gian và tính ra tốc độ động Cái encoder mà em sử dụng trong đồ án của mình, hồn tồn giống với mơ hình ở trên Tuy nhiên, mơ hình trên nhược điểm lớn là : ta khơng thể xác định được động quay trái hay quay phải, vì quay theo chiều nào đi nữa thì chỉ một dạng xung đưa ra Ngồi ra điểm bắt đầu của động cơ, ta cũng khơng thể... FFFFh rồi về 0000h, lúc này TMR1IF sẽ bật lên Timer1 3 chế độ hoạt động : - Chế độ hoạt động định thời đồng bộ : Chế độ được lựa chọn bởi bit TMR1CS Trong chế độ này xung cấp cho Timer1 là Fosc/4, bit T1SYNC khơng tác dụng GVHD : TS Nguyễn Thiện Thành 21 SVTH: Nguyễn Uy Danh Báo cáo đồ án môn học I - Chế độ đếm đồng bộ : trong chế độ này, giá trị của timer1 sẽ tăng khi xung cạnh lênh vào chân . của em là : “ Điều khiển ON_ OFF tốc độ động cơ DC . Với u cầu đề tài như trên, hướng thực hiện đề tài của em được tóm tắt như sau: - Sử dụng vi điều khiển PIC16F877A làm chip điều khiển trung. cho động cơ chạy theo ý muốn. Trong q trình động cơ quay, vi điều khiển sẽ nhận liên tục nhận xung phát ra từ encoder, tính tốn ra tốc độ và so sánh với tốc độ đặt ban đầu để ra quyết định ON_ OFF động. điều khiển và mạch động lực điều khiển động cơ DC 4. Viết chương trình cho vi điều khiển PIC16F877A thực hiện thành cơng theo u cầu đề ra. 5. Đánh giá về sai số ,chất lượng hệ thống điều khiển 6.

Ngày đăng: 28/06/2014, 06:43

Từ khóa liên quan

Mục lục

  • 1.2. Nhận xét

  • 1.3. Khái quát về chức năng của các port trong vi điều khiển PIC16F877A

  • 1.4. Tại sao sử dụng PIC16F877A mà không dùng 8051 cho đề tài

  • 2. Tìm hiểu về vi điều khiển PIC16F877A

  • 2.1. Cấu trúc phần cứng của PIC16F877A

  • 2.2. Tổ chức bộ nhớ PIC16F877a

  • 2.2.1. Bộ nhớ chương trình

  • 2.2.2. Bộ nhớ dữ liệu

  • 2.2.3. Một vài thanh ghi chức năng đặc biệt SFR

  • 2.3. Thanh ghi W(work) và tập lệnh của PIC16F877A

  • 2.3.1. Thanh ghi W

  • 2.3.2. Tập lệnh của PIC16F877A

  • II. Motor Driver L293D :

  • III. Các IC khác

  • IV. Đối tượng điều khiển : Động cơ DC

  • Chương III : Nguyên lý hoạt động của một số module trong mạch

  • I.Mạch nguồn 5 V chuẩn cung cấp cho vi điều khiển và nguồn 24 cung cấp cho động cơ.

  • 1. Sơ đồ nguyên lý

  • 2. Giải thích nguyên lý hoạt động

  • II. Khối mạch reset vi điều khiển PIC16F877A

Tài liệu cùng người dùng

Tài liệu liên quan