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

Điều khiển ON OFF tốc độ động cơ DC

52 341 0

Đ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 52
Dung lượng 1,69 MB

Nội dung

Lời cảm ơn Kính gửi Thầy TS Nguyễn Thiện Thành! Em 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 vinh dự thực đề tài đồ án môn học I hướng dẫn tận tình Thầy Chính nhiệt tình dẫn Thầý giúp em hoàn thành đồ án tốt, đạt yêu cầu mà đề tài đặt Và qua đó, em học hỏi, tiếp cận nhiều vấn đề thực tế hơn, bổ sung “khe hở” kiến thức việc học thiên 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 đến gia đình, bạn bè –những người động viên, quan tâm đến em suốt trình thực đồ án Đó động lực thúc đẩy em cố gắng hơn, tâm hơn, để cuối em có kết ngày hôm Em xin gửi lời cảm ơn đến tất Sinh viên thực Nguyễn Uy Danh Chương I : Giới thiệu đề tài I.Tóm tắt đề tài đồ án môn học I Giới thiệu module mạch đề tài Đề tài đồ án môn học I em : “ Điều khiển ON_OFF tốc độ động DC” Với yêu cầu đề tài trên, hướng thực đề tài em tóm tắt 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 dừng động DC + 10 phím ứng với 10 số từ đến để người dùng nhập tốc độ đặt + phím lệnh động quay thuận (FORWARD) + phím lệnh động quay ngược (REVERSE) - Sử dụng led đoạn Trong + led dùng để người dùng nhập tốc độ đặt mong muốn + 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 có gắn encoder đồng trục - Ngoài ra, mạch có linh kiện khác để thực truyền tín hiệu vi điều khiển trung tâm với thiết bị hiển thị nói Tất module mạch em trình bày rõ phần đề tài Sơ đồ nguyên lý kết nối module mạch 3 Cách vận hành mạch + Bước 1: ta nhập tốc độ đặt từ bàn phím Tốc độ đặt gồm có chữ số, lên thông qua led Ta phải nhấn đủ số mạch hoạt động được, không nhấn đủ mạch “treo đó”, chờ người dùng nhấn số tiếp Nếu nhập sai tốc độ, ta nhấn phím reset để nhập tốc độ lại từ đầu Nếu nhấn nhầm sang phím RESERVE FORWARD trước nhập đủ số phần cài đặt tốc độ người dùng hoàn toàn nhấn lại mà không ảnh hưởng đến kết + Bước 2: ta nhấn tiếp RESERVE hay FORWARD cho động chạy theo ý muốn Trong trình động quay, vi điều khiển nhận liên tục nhận xung phát từ encoder, tính toán tốc độ so sánh với tốc độ đặt ban đầu để định ON_OFF động Tốc độ nhận so sánh với tốc độ đặt 1ms lần Ngoài 1s vi điều khiển cập nhật tốc độ thực động cơ, thể led đoạn để người dùng theo dõi đánh giá II Các yêu cầu đề tài Thông qua đề tài, làm quen với cách thức điều khiển đối tượng động Tìm hiểu thực tế linh kiện, loại IC, hoạt động loại cảm biến… Thiết kế, thi công mạch điều khiển mạch động lực điều khiển động DC Viết chương trình cho vi điều khiển PIC16F877A thực thành công theo yêu cầu đề Đánh giá sai số ,chất lượng hệ thống điều khiển Tìm hiểu hướng phát triển đề tài, nâng cao chất lượng hệ thống Chương II : Giới thiệu linh kiện, phần tử sử dụng mạch I Vi điều khiển PIC16F877A Khái quát vi điều khiển PIC16F877A 1.1.Sơ đồ chân sơ đồ nguyên lý PIC16F877A Sơ đồ chân Sơ đồ nguyên lý 1.2 Nhận xét Từ sơ đồ chân sơ đồ nguyên lý trên, ta rút nhận xét ban đầu sau : - PIC16F877A có tất 40 chân - 40 chân chia thành PORT, chân cấp nguồn, chân GND, chan thạch anh chân dùng để RESET vi điều khiển - port PIC16F877A bao gồm : + PORTB : chân + PORTD : chân + PORTC : chân + PORTA : chân + PORT E : chân 1.3 Khái quát chức port vi điều khiển PIC16F877A PORTA PORTA gồm có chân Các chân PortA, ta lập trình để thực chức “hai chiều” : xuất liệu từ vi điều khiển ngoại vi nhập liệu từ ngoại vi vào vi điều khiển Việc xuất nhập liệu PIC16F877A khác với họ 8051 Ở tất PORT PIC16F877A, thời điểm thực chức :xuất nhập Để chuyển từ chức nhập qua chức xuất hay ngược lại, ta phải xử lý phần mềm, không 8051 tự hiểu lúc chức nhập, lúc chức xuất Trong kiến trúc phần cứng PIC16F877A, người ta sử dụng ghi TRISA địa 85H để điều khiển chức I/O Muốn xác lập chân PORTA nhập (input) ta set bit tương ứng chân ghi TRISA Ngược lại, muốn chân output ta clear bit tương ứng chân ghi TRISA Điều hoàn toàn tương tự PORT lại Ngoài ra, PORTA có chức quan trọng sau : - Ngõ vào Analog ADC : thực chức chuyển từ Analog sang Digital - Ngõ vào điện so sánh - Ngõ vào xung Clock Timer0 kiến trúc phần cứng : thực nhiệm vụ đếm xung thông qua Timer0… - Ngõ vào giao tiếp MSSP (Master Synchronous Serial Port) PORTB PORTB có chân Cũng PORTA, chân PORTB thực chức : input output Hai chức điều khiển bới ghi TRISB Khi muốn chân PORTB input ta set bit tương ứng ghi TRISB, ngược lại muốn chân output ta clear bit tương ứng TRISB Thanh ghi TRISB tích hợp điện trở kéo lên điều khiển chương trình PORTC PORTC có chân thực chức input output điều khiển ghi TRISC tương tự hai ghi Ngoài PORTC có chức quan trọng sau : - Ngõ vào xung clock cho Timer1 kiến trúc phần cứng - Bộ PWM thực chức điều xung lập trình tần số, duty cycle: sử dụng điều khiển tốc độ vị trí động v.v… - Tích hợp giao tiếp nối tiếp I2C, SPI, SSP, USART PORTD 10 - Các IC 7824, 7812, 7805 IC ổn áp, ổn áp 24V, 12V 5V đầu - led D14, D15, D16 để hiển thị có áp đầu II Khối mạch reset vi điều khiển PIC16F877A 1.Sơ đồ nguyên lý HI 10k 15 16 17 18 23 24 25 26 13 14 12 31 M C L R */V P P R R R R R R A A A A A A /A N /A N /A N /V R E F -/C V R E F /A N /V R E F + /T C K I/C O U T /A N /S S * /C O U T R R R R R R R R C C C C C C C C /T O S O /T C K I /T O S I/C C P /C C P /S C K /S C L /S D I/S D A /S D O /T X/C K /R X/D T O S C /C L K IN O S C /C L K O U T VSS VSS R B /IN T R B1 R B2 R B /P G M R B4 R B5 R B /P G C R B /P G D R R R R R R R R D D D D D D D D /P /P /P /P /P /P /P /P S S S S S S S S P P P P P P P P R E /R D */A N R E /W R * /A N R E /C S */A N P IC F 7 A VD D VD D 3 3 3 4 2 2 2 9 10 11 32 Giải thích Vi điều khiển 16F877A hoạt động chân số MCLR mức bị reset bị clear mức Với mạch reset trên, bình thường phím nhấn hở ra, chân reset mức , vi điều khiển hoạt động Khi nhấn phím xuống, chân chạm đất bị clear 0, vi điều khiển reset trở lại trạng thái ban đầu ( ghi PC trỏ địa 0000h nhớ chương trình) 38 III Khối mạch quét phím 1.Sơ đồ nguyên lý HI 10k H I 1 1 2 2 C 30p 13 M C L R * /V P P R R R R R R A A A A A A R R R R R R R R C C C C C C C C /T O S O /T C K I /T O S I/C C P 2 /C C P /S C K /S C L /S D I/S D A /S D O /T X /C K /R X/D T /A N /A N /A N /V R E F -/C V R E F /A N /V R E F + /T C K I/C O U T /A N /S S * /C O U T O S C /C L K IN 4M hz 14 C 12 31 30p R B /IN T R B1 R B2 R B /P G M R B4 R B5 R B /P G C R B /P G D O S C /C L K O U T VSS VSS R R R R R R R R D D D D D D D D /P /P /P /P /P /P /P /P S S S S S S S S P P P P P P P P R E /R D * /A N R E /W R */A N R E /C S * /A N P IC F 7 A VD D VD D 33 34 35 36 37 38 39 40 10k 19 20 21 22 27 28 29 30 HANG HANG 10 11 32 10k 10k 10k HANG H I H I HANG 0 Giải thích kết nối Sử dụng PORTD vi điều khiển để thực hiển quét phím Các chân 6,5,4 kết nối thành cột (colums), chân 3,2,1,0 kết nối thành hàng (rows), chân bỏ trống Thiết lập chân rows chân input, chân cols chân output Kéo điện trở lên nguồn rows để xác định mức logic bên đưa vào vi điều khiển Giải thuật quét phím b1: Kiểm tra có kẹt phím không Nếu không bị kẹt phím qua bước b2: Tiến hành quét phím, xem thử phím nhấn, lấy mã phím lưu biến key 39 b3: Mỗi giá trị biến key đại diện cho phím bàn phím Ứng với biến key, ta đặt phím hiển thị led mong muốn b4: Tra bảng để đổi giá trị biến key sang mã BCD chuẩn bị đưa vào 7447 để đổi dang mã led đoạn b5 : Lặp lại bước để nhấn phím IV Giải thuật điều khiển ON_OFF động DC 1.Sơ đồ nguyên lý V G C C H I cc N D A A - Encoder :108 xung, 4000vong/phut Encoder + - 10k H I Nguon 24V N N N N G G G G VC C VC C /4 E N /2 E N M G 14 11 Y Y Y Y 4A 3A 2A 1A 16 H I D D D D 13 12 4 1 1 2 2 15 10 C 30p 13 U 14 M C L R */V P P R R R R R R A A A A A A /A N /A N /A N /V R E F -/C V R E F /A N /V R E F + /T C K I/C O U T /A N /S S * /C O U T R R R R R R R R C C C C C C C C /T O S O /T C K I /T O S I/C C P /C C P /S C K /S C L /S D I/S D A /S D O /T X /C K /R X /D T O S C /C L K IN - A + 14 C 12 31 30p R R R R R R R R D D D D D D D D /P /P /P /P /P /P /P /P S S S S S S S S P P P P P P P P R E /R D */A N R E /W R */A N R E /C S */A N 4M hz L293 R B /IN T R B1 R B2 R B /P G M R B4 R B5 R B /P G C R B /P G D 3 3 3 4 2 2 2 9 10 O S C /C L K O U T VSS VSS P IC F 7 A VD D VD D 11 32 Nối chân L293D vào dây nguồn động Sử dụng bit RC6 RC7 PORTC vi điều khiển nối vào chân L293D để điều khiển chiều quay Bit RC5 bit cho phép động hoạt 40 động Chân RA4 định chế độ input để nhận xung từ encoder truyền Giải thuật điều khiển b1: Đặt bit RC6 RC7 0, ngược lại để xác định chiều quay động Bật bit RC5 lên cho phép động quay b2: Dùng Timer1 định thời gian 1ms, Timer0 chế độ đếm xung từ encoder Cứ sau 1ms ( thời gian lấy mẫu) ngắt timer1 xảy ra, chương trình phục vụ ngắt timer1, tiến hành đọc xung encoder chứa ghi TMR0 timer0 b3 : Từ số xung Timer0 1ms, ta tính toán tốc độ động b4 : Thực phép trừ tốc độ đặt tốc độ đo Nếu hiệu số lớn ( nhớ) cho động tiếp tục chạy, hiệu số nhỏ (cờ nhớ lên 1) tiến hành tắt động cách cho bit EN=0 b5: Cứ sau 1s tốc độ động led đoạn lần b6: Lặp lại liên tục trình trên, ta có tốc độ đo dao động xung quanh tốc độ đặt 41 Chương IV Chương trình viết Assembly điều khiển ON_OFF động DC Phần chương trình em trình bày buổi bảo vệ đồ án môn học Các phần đánh giá chất lượng điều khiển , nhận xét v.v… em trình bày báo cáo thức buổi bảo vệ đồ án môn học 42 Phụ lục: Tập lệnh PIC16F877A 43 44 45 46 47 Tài liệu tham khảo Hồ Trung Mỹ Vi xử lý Nhà xuất đại học Quốc Gia Microchip Datasheet 16F877A Trương Sa Sanh (chủ biên) Kỹ Thuật điện Đại Cương Nhà xuất đại học Quốc Gia Nguyễn Thị Phương Hà Lý Thuyết điều khiển Tự Động Nhà xuất đại học quốc gia Các tài liệu từ internet, từ diễn đàn www.picvietnam.com luận văn anh chị khóa 48 Mục lục Đề mục trang Lời cảm ơn………………………………………………………………………… ……………………………………………………… Chương I : Giới thiệu đề tài………………………………………………………………………… … ………… I Tóm tắt đề tài đồ án môn học I …………………………………………………………………… Giới thiệu module mạch đề tài……………………………………… 2 Sơ đồ nguyên lý kết nối module mạch …………………… 3 Cách vận hành mạch …………………………………………………………………………… 49 II Các yêu cầu đề tài ………………………………………………………………………… ………… Chương II : Giới thiệu linh kiện, phần tử sử dụng mạch…………… I Vi điều khiển PIC16F877A …………………………………………………………………………… … Khái quát vi điều khiển PIC16F877A……………………………………… 1.1 Sơ đồ chân sơ đồ nguyên lý PIC16F877A……………… 1.2 Nhận xét …………………………………………………………………………… ……………… 1.3 Khái quát chức port vi điều khiển PIC16F877A………………………………………………… ………………………………………………… 1.4 Tại sử dụng PIC16F877A ………………………………………………… Tìm hiểu vi điều khiển PIC16F877A ……………………………………… 10 2.1 Cấu trúc phần cứng PIC16F877A………………………………… 10 2.2 Tổ chức nhớ PIC16F877a……………………………………………………… 13 2.2.1.Bộ nhớ chương trình…………………………………………………………… 13 2.2.2 Bộ nhớ liệu ……………………………………………………………………… 14 2.2.3 Một vài ghi chức đặc biệt SFR……………… 16 2.3 Thanh ghi W(work) tập lệnh PIC16F877A………… 18 50 2.3.1 Thanh ghi W…………………………………………………………… …………… 18 2.3.2 Tập lệnh PIC16F877A……………………………………………… 18 2.4 Các vấn đề Timer ……………………………………………………………… … 18 II Motor Driver L293D …………………………………………………………………………… …………… 22 III Các IC khác …………………………………………………………………………… …………………………… 24 IV Đối tượng điều khiển : Động DC ………………………………………………………… 27 Chương III :Nguyên lý hoạt động số module mạch …………… …… 31 I.Mạch nguồn V chuẩn cung cấp cho vi điều khiển nguồn 24 cung cấp cho động cơ………………………………………………………………………… ………………………………… 31 II Khối mạch reset vi điều khiển PIC16F877A………………………………………… 32 III Khối mạch quét phím……………………………………………………………………… ………………… 33 IV Giải thuật điều khiển ON_OFF động DC…………………………………… …… 34 Chương IV:Chương trình viết Assembly điều khiển ON_OFF động DC……………………………………………………………………… ………………………………………………………… 36 51 Phụ lục: Tập lệnh PIC16F877A…………………………………………………………… …………………………… 37 52 [...]... tượng điều khiển : Động cơ DC Đây cà động cơ em sử dụng trong đề tài : Bên trong động cơ có 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ơ 32 Các thông số của động cơ như sau: + Điện áp DC cấp cho động cơ : 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 cơ có tất cả 6 dây ra : + 2 dây cung cấp nguồn 24 V cho đông cơ + 2... 90 độ, nếu vòng ngoài nhanh pha hơn vòng trong thì chắc chắn động cơ 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 cơ Có thể viết chương trình cho vi điều khiển nhận biết : nếu có một xung phát ra từ vòng trong cùng này, tức là động cơ đã quay đúng một vòng Với những đặc tính trên, encoder dùng rất phổ biến trong việc xác định vị trí góc của động. .. ngoài Phương pháp điều khiển : Thay đổi tốc độ động cơ bằng cách thay đổi áp cấp vào cho động cơ Nguyên lý hoạt động của cảm biến encoder : có nhiều loại encoder khác nhau Mỗi loại lại có một nguyên lý hoạt động khác nhau, trong khuôn khổ báo cáo đồ án I em xin trình bày phần nguyên lý loại encoder trong đề tài mà em sử dụng : incremental encoder Mô hình thứ 1 33 Incremental encoder về cơ bản là một đĩa... 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 cơ nhỏ Trong đề tài của mình, em chỉ dùng nó để điều khiển một động cơ Dòng giới hạn của L293 là 600mA Sơ đồ chân của L293 26 Sơ đồ hoạt đông của L293D 27 Bảng điều khiển các chân chức năng của L293D 28 ENABLE... Timer của 8051 ít, chỉ có 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ơ 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... 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 quá 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ó có những nhược điểm cơ bản sau đây : - Bộ nhớ... xuất trong bộ nhớ dữ liệu 19 Thanh ghi OPTION_REG : có mặt ở bank2 và bank3 có địa chỉ 81h và 181h Thanh ghi này cho phép đọc và ghi, cho phép điều khiển chức năng pull_up của các chân trong PORTB, xác lập các tham số về xung tác động, cạnh tác động của ngắt ngoại vi và bộ đếm Timer0 Thanh ghi INTCON : có mặt ở cả 4 bank ở địa chỉ 0Bh,8Bh,10Bh,18Bh Thanh ghi cho phép đọc và ghi, chứa các bit điều khiển. .. mắc hơn 2 lần giá một con chip họ 8051 Việc sử dụng PIC16F877A trong một đề tài không lớn như đề tài điều khiển tốc độ động cơ có 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, 12 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 hoàn toàn xác đáng Và trên thực tế, trong một thời gian tương... sẽ được lưu trong hai thanh ghi 8 bit TMR1H:TMR1L Cờ ngắt của Timer1 là bit TMR1IF, bit điều khiển của Timer1 là TRM1IE Cặp thanh ghi của TMR1 sẽ tăng từ 0000h lên đến FFFFh rồi sau đó tràn về 0000h Nếu ngắt được cho phép, nó sẽ xảy ra khi khi giá trị của TMR1 tràn từ FFFFh rồi về 0000h, lúc này TMR1IF sẽ bật lên Timer1 có 3 chế độ hoạt động : - Chế độ hoạt động định thời đồng bộ : Chế độ được lựa chọn... quang Trong quá trình encoder quay quanh trục, nếu gặp lỗ rống thì ánh sáng chiếu qua được, nếu gặp mãnh chắn thì tia sáng không chiếu quá được Do đó tín hiệu nhận được từ sensor quang là một chuổi xung Mỗi encoder được chế tạo sẽ biết sẵn số xung trên một vòng Do đó ta có 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ơ Cái encoder mà em sử dụng trong đồ án ... tượng điều khiển : Động DC Đây cà động em sử dụng đề tài : Bên động có gắn encoder đồng trục với dùng để xác định tốc độ vị trí động 32 Các thông số động sau: + Điện áp DC cấp cho động : 24VDC + Tốc. .. từ encoder, tính toán tốc độ so sánh với tốc độ đặt ban đầu để định ON_OFF động Tốc độ nhận so sánh với tốc độ đặt 1ms lần Ngoài 1s vi điều khiển cập nhật tốc độ thực động cơ, thể led đoạn để người... thức điều khiển đối tượng động Tìm hiểu thực tế linh kiện, loại IC, hoạt động loại cảm biến… Thiết kế, thi công mạch điều khiển mạch động lực điều khiển động DC Viết chương trình cho vi điều khiển

Ngày đăng: 27/02/2016, 20:02

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w