Thông tin tài liệu
Trương Ngọc Anh :GVHD 2 Đồ án 1 Đỗ Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án LỜI NÓI ĐẦU Đất nước ta đang trong thời kì công nghiệp hóa , hiện đại hóa. Nền kinh tế ngày càng phát triển mạnh mẽ , đời sống nhân dân ngày càng được nâng cao. Qua đó nhu cầu của ngừơi dân cũng tăng theo, điều đó đòi hỏi các nhà máy sản xuất phải nâng cao năng suất và đảm bảo cả về mặt chất lượng. Để làm được điều đó các nhà máy phải ngày càng nâng cao về mặt tự động hóa. Trong các dây chuyền sản xuất tự động thì động cơ DC là một cơ cấu điều khiển hữu hiệu. Động cơ DC được sử dụng rộng rãi trong các dây chuyền sản xuất tự động , ngoài ra động cơ DC còn được ứng dụng trong các thiết bò điều khiển chính xác, ví dụ như điều khiển robot… Trong quá trình học ở trường sinh viên cần phải vận dụng được các kiến thức đã học vào thưc tế. Đồ án môn học “ĐIỀU KHIỂN TỐC ĐỘ ĐỘNG CƠ DC DÙNG PID” là một trong những kết quả của sự vận dụng những kiến thức đã học của sinh viên Đại Học ngành điện tử vào thực tế. Qua đó giúp cho mỗi sinh viên có thể hiểu rõ hơn những gì đã học ở lý thuyết mà chưa có dòp để ứng dụng vào thực tế. 2 Đỗ Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án LỜI CẢM ƠN Dù Em đã có nhiều cố gắng trong quá trình thực hiện đồ án này, tuy nhiên cũng không thể tránh khỏi những thiếu sót. Kính mong Thầy cùng các bạn thẳng thắn đóng góp ý kiến để đồ án môn học của em được hoàn thiện hơn. Em xin chân thành cảm ơn Thầy Trương Ngọc Anh đã tận tình chỉ bảo và hướng dẫn , Đồng cảm ơn đến các bạn trong lớp 081011 đã góp ý cho mình trong quá trình thực hiện đồ án . 3 Đỗ Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án MỤC LỤC PHẦN I. GIỚI THIỆU ĐỀ TÀI 1.Giới thiệu sơ lược các module của mạch 2.Giới thiệu về thuật toán PID 3.Phương án thực hiện 4.Sơ đồ nguyên lý mạch 5.Các bước vận hành mạch 6.Giới hạn đề tài 7.Hướng phát triển đề tài PHẦN II. NỘI DUNG •CHƯƠNG 1: Giới thiệu linh kiện •CHƯƠNG 2: Thiết kế mạch 1.KHỐI ĐIỀU KHIỂN 2.KHỐI HIỂN THỊ 3.KHỐI XỬ LÝ 4.KHỐI CƠNG SUẤT •CHƯƠNG 3: THIẾT KẾ LƯU ĐỒ KHỐI VÀ VIẾT CODE •CHƯƠNG4: THI CƠNG 1.Sơ đồ mạch in 2.Sơ đồ linh kiện PHẦN III. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 1.Kết luận (nêu tóm tắt các vấn đề đã thực hiện được( 2.Hướng phát triển (nêu hướng phát triển của đề tài( 3.Phụ lục:Code chương trình 4 Đỗ Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án PHẦN I: GIỚI THIỆU ĐỀ TÀI 1.GIỚI THIỆU SƠ LƯC CÁC MODULE CỦA MẠCH •Yêu cầu đặt ra: Lập trình C cho PIC16f877a điều khiển ổn đònh tốc độ động cơ DC dùng phương pháp PID. Tốc độ đặt trước động cơ được nhập từ nút nhấn, tốc độ tức thời hồi tiếp từ động cơ được hiển thò trên LCD 16x2. •Tóm tắt hướng thực hiện đề tài: +Sử dụng vi điều khiển PIC làm vi điều khiển trung tâm. Dùng phần mềm CCS để lập trình và biên dòch. +Xây dựng khối nút nhấn gồm 6 nút nhấn để điều khiển tốc độ và chiều động cơ, đồng thời có thêm một nút nhấn để reset VĐK. +Hiển thò tốc độ động cơ dùng màn hình LCD 16x2 lập trình ở chế độ 8 bit. 5 Đỗ Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án +Dùng IC L298 và IC cổng logic 7408 và 7414 để làm cơ cấu lái và đệm công suất cho động cơ. +Dùng kênh PWM ccp1 để thay đổi tốc độ cho động cơ. +Đối tượng điều khiển là động cơ DC 12V có tích hợp encoder +Khối nguồn cung cấp cho mạch sử dụng IC7805 ổn đònh 5V cấp cho vi điều khiển và khối nguồn dùng IC7812 tạo điện áp 12V cấp cho động cơ DC. 2.GIỚI THIỆU VỀ THUẬT TOÁN PID: -Một bộ điều khiển vi tích phân tỉ lệ (bộ điều khiển PID) là một cơ chế phản hồi vòng điều khiển (bộ điều khiển) tổng qt được sử dụng rộng rãi trong các hệ thống điều khiển cơng nghiệp – bộ điều khiển PID được sử dụng phổ biến nhất trong số các bộ điều khiển phản hồi. Một bộ điều khiển PID tính tốn một giá trị "sai số" là hiệu số giữa giá trị đo thơng số biến đổi và giá trị đặt mong muốn. Bộ điều khiển sẽ thực hiện giảm tối đa sai số bằng cách điều chỉnh giá trị điều khiển đầu vào. Trong trường hợp khơng có kiến thức cơ bản về q trình, bộ điều khiển PID là bộ điều khiển tốt nhất. [1] Tuy nhiên, để đạt được kết quả tốt nhất, các thơng số PID sử dụng trong tính tốn phải điều chỉnh theo tính chất của hệ thống-trong khi kiểu điều khiển là giống nhau, các thơng số phải phụ thuộc vào đặc thù của hệ thống. -Giải thuật tính tốn bộ điều khiển PID bao gồm 3 thơng số riêng biệt, do đó đơi khi nó còn được gọi là điều khiển ba khâu: các giá trị tỉ lệ,tích phân và đạo hàm, viết tắt là P, I, và D. Giá trị tỉ lệ xác định tác động của sai số hiện tại, giá trị tích phân xác định tác động của tổng các sai số q khứ, và giá trị vi phân xác định tác động của tốc độ biến đổi sai số. Tổng chập của ba tác động này dùng để điều chỉnh q trình thơng qua một phần tử điều khiển như vị trí của van điều khiển hay bộ nguồn của phần tử gia nhiệt. Nhờ vậy, những giá trị này có thể làm sáng tỏ về quan hệ thời gian: P phụ thuộc vào sai số hiện tại, I phụ thuộc vào tích lũy các sai số q khứ, và D dự đốn các sai số tương lai, dựa vào tốc độ thay đổi hiện tại. -Bằng cách điều chỉnh 3 hằng số trong giải thuật của bộ điều khiển PID, bộ điều khiển có thể dùng trong những thiết kế có u cầu đặc biệt. Đáp ứng của bộ điều khiển có thể được mơ tả dưới dạng độ nhạy sai số của bộ điều khiển, giá trị mà bộ điều khiển vọt lố điểm đặt và giá trị dao động của hệ thống. Lưu ý là cơng dụng của giải thuật PID trong điều khiển khơng đảm bảo tính tối ưu hoặc ổn định cho hệ thống. -Vài ứng dụng có thể u cầu chỉ sử dụng một hoặc hai khâu tùy theo hệ thống. Điều này đạt được bằng cách thiết đặt đội lợi của các đầu ra khơng mong muốn về 0. Một bộ điều khiển PID sẽ được gọi là bộ điều khiển PI, PD, P hoặc I nếu vắng mặt các tác động bị khuyết . Bộ điều khiển PI khá phổ biến, do đáp ứng vi phân khá nhạy đối với các nhiễu đo lường, trái lại nếu 6 Đỗ Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án thiếu giá trị tích phân có thể khiến hệ thống không đạt được giá trị mong muốn. Giải thuật điều khiển PID tốc độ: PID là cách viết tắt của các từ Propotional (tỉ lệ), Integral (tích phân) và Derivative (đạo hàm). Tuy xuất hiện rất lâu nhưng đến nay PID vẫn là giải thuật điều khiển được dùng nhiều nhất trong các ứng dụng điều khiển tự động. Đề tài này điều khiển tốc độ của động cơ DC dùng giải thuật PID có thể được giải thích như sau: Gọi F là lực quay động cơ. Ban đầu động cơ ở vận tốc bằng 0, nhiệm vụ đặt ra là điều khiển lực F (một cách tự động) để làm quay động cơ đạt tới tốc độ đặt trước với các yêu cầu: chính xác (accurate), nhanh (fast response), ổn định (small overshot .( Một điều rất tự nhiên, nếu vận tốc hiện tại của động cơ rất xa vận tốc mong muốn, hay nói cách khác sai số (error) lớn, chúng ta cần tác động lực F lớn để nhanh chóng đưa vận tốc động cơ về tới vận tốc đặt trước. Một cách đơn giản để công thức hóa ý tưởng này là dùng quan hệ tuyến tính: F=Kp*e (1( Trong đó Kp là một hằng số dương nào đó mà chúng ta gọi là hệ số P (Propotional gain), e là sai số cần điều khiển tức độ chênh lệch giữa vận tốc đặt trước với vận tốc hiện tại của động cơ. Mục tiêu điều khiển là đưa e tiến về 0 7 Đỗ Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án càng nhanh càng tốt. Rõ ràng nếu Kp lớn thì F cũng sẽ lớn và động cơ rất nhanh chóng tiến về vận tốc đặt trước. Tuy nhiên, lực F quá lớn sẽ gia tốc cho động cơ rất nhanh (định luật II của Newton: F=ma). Khi động cơ đã đến vận tốc đặt trước (tức e=0), thì tuy lực F=0 (vì F=Kp*e=F=Kp*0) nhưng do quán tính tốc độ động cơ vẫn tiếp tục tăng, sai số e lại trở nên khác 0, giá trị sai số lúc này được gọi là overshot (vượt quá). Lúc này, sai số e là số âm, lực F lại xuất hiện nhưng với chiều ngược lại để hãm tốc độ động cơ về lại tốc độ đặt trước. Nhưng một lần nữa, do Kp lớn nên giá trị lực F cũng lớn và có thể kéo tốc độ động cơ về thấp hơn tốc độ đặt trước. Quá trình cứ tiếp diễn, tốc độ động cơ cứ mãi dao động quanh tốc độ đặt trước. Có trường hợp tốc độ dao động càng ngày xàng xa tốc độ đặt trước. Bộ điều khiển lúc này được nói là không ổn định. Một đề xuất nhằm giảm overshot của động cơ là sử dụng một thành phần “thắng” trong bộ điều khiển. Sẽ rất lý tưởng nếu khi tốc độ đang ở xa điểm O (tốc độ đặt trước), bộ điều khiển sinh ra lực F lớn nhưng khi tốc độ động cơ đã tiến gần đến điểm O thì thành phần “thắng” sẽ giảm tốc độ động cơ lại. Chúng ta đều biết khi một vật dao động quanh 1 điểm thì vật đó có vận tốc cao nhất ở tâm dao động (điểm O). Nói một cách khác, ở gần điểm O sai số e của tốc độ động cơ thay đổi nhanh nhất (cần phân biệt: e thay đổi nhanh nhất không phải e lớn nhất). Mặt khác, tốc độ thay đổi của e có thể tính bằng đạo hàm của biến này theo thời gian. Như vậy, khi tốc độ động cơ từ ban đầu tiến về gần O, đạo hàm của sai số e tăng giá trị nhưng ngược chiều của lực F (vì e đang giảm nhanh dần). Nếu sử dụng đạo hàm làm thành phần “thắng” thì có thể giảm được overshot của động cơ. Thành phần “thắng” này chính là thành phần D (Derivative) trong bộ điều khiển PID mà chúng ta đang khảo sát. Thêm thành phần D này vào bộ điều khiển P hiện tại, chúng ta thu được bộ điều khiển PD nhu sau: F=Kp*e + Kd*(de/dt) (2( Trong đó (de/dt) là vận tốc thay đổi của sai số e và Kd là một hằng số không âm gọi là hệ số D (Derivative gain .( Sự hiện diện của thành phần D làm giảm overshot của động cơ, khi vận tốc động cơ tiến gần về O, lực F gồm 2 thành phần Kp*e > =0 (P) và Kd*(de/dt) <=0 (D). Trong một số trường hợp thành phần D có giá trị lớn hơn thành phần P và lực F đổi chiều, “thắng” động cơ lại, vận tốc của động cơ vì thế giảm mạnh ở gần điểm O. Một vấn đề nảy sinh là nếu thành phần D quá lớn so với thành phần P hoặc bản thân thành phần P nhỏ thì khi vận tốc động cơ tiến gần điểm O (chưa thật sự đến O), động cơ có thể không tăng tốc nữa, thành phần D bằng 0 (vì sai số e không thay đổi nữa), lực F = Kp*e. Trong khi Kp và e lúc này đều nhỏ nên lực F cũng nhỏ và có thể không thắng được lực ma sát tĩnh. Bạn hãy tưởng tượng tình huống bạn dùng sức của mình để đẩy một xe tải nặng vài chục tấn, tuy lực đẩy tồn tại nhưng xe không thể di chuyển. Như thế, động cơ sẽ không tăng tốc dù sai số e vẫn chưa bằng 0. Sai số e trong tình huống này gọi là steady state error (tạm dịch là sai số trạng thái tĩnh). Để tránh steady state error, người ta thêm vào bộ điều khiển một thành phần có chức năng “cộng dồn” sai số. Khi steady state error xảy ra, 2 thành phần P và D mất tác dụng, thành phần 8 Đỗ Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án điều khiển mới sẽ “cộng dồn” sai số theo thời gian và làm tăng lực F theo thời gian. Đến một lúc nào đó, lực F đủ lớn để thắng ma sát tĩnh và tăng tốc động cơ tiến tiếp về điểm O. Thành phần “cộng dồn” này chính là thành phần I (Integral - tích phân) trong bộ điều khiển PID. Vì chúng ta điều biết, tích phân một đại lượng theo thời gian chính là tổng của đại lượng đó theo thời gian. Bộ điều khiển đến thời điểm này đã đầy đủ là PID: F=Kp*e + Kd*(de/dt)+Ki*§edt (3( Như vậy, chức năng của từng thành phần trong bộ điều khiển PID giờ đã rõ. Tùy vào mục đích và đối tượng điều khiển mà bộ điều khiển PID có thể được lượt bớt để trở thành bộ điều khiển P, PI hoặc PD. Cơng việc chính của người thiết kế bộ điều khiển PID là chọn các hệ số Kp, Kd và Ki sao cho bộ điều khiển hoạt động tốt và ổn định (q trình này gọi là PID gain tuning.( 3.PHƯƠNG ÁN THỰC HIỆN: SƠ ĐỒ KHỐI TOÀN MACH: Sơ đồ khối: 1. 9 Đỗ Huy Duy :SVTH KHỐI ĐIỀU KHIỂN HỒI TIẾP HIỂN THỊ NGÕ RA ĐỘNG CƠ DC Trng Ngc Anh :GVHD 2 ỏn Khi ngun: cp ngun cho ton mch Khi iu khin: iu khin khi cụng sut n nh tc ng c DC,ng thi nhn xung t khi hi tip v iu khin v hin th. Khi hi tip: l encorder tớch hp sn trong ng c DC,a xung v cho khi iu khin x lý. Khi hin th: nhn d liu t khi iu khin hin th Ngừ ra:gm IC s lỏi va IC mch cu H(L298) iu khin ng c DC ng c DC:ng c 12V cú tớch hp encorder 4.Sễ ẹO NGUYEN LY MAẽCH: 10 Huy Duy :SVTH NGUN [...]... TÀI Dùng C# lập trình điều khiển động cơ qua máy tính, vẽ biểu đồ tốc độ động cơ theo thời gian, có thể thay đổi tốc độ động cơ như ý muốn Thiết kế mạch công suất để có thể điều khiển động cơ có công suất lớn Dùng led7đoạn để tăng khả năng quan sát 7 PHẦN II: NỘI DUNG CHƯƠNG I: GIỚI THIỆU LINH KIỆN • :PIC16F877A 1 I TỔNG QUAN VỀ VI ĐIỀU KHIỂN PIC PIC là một họ vi điều khiển RISC được sản xuất bởi cơng... được nối với GND mà bỏ trống cho người dùng nối một điện trở nhỏ gọi là sensing resistor Bằng cách đo điện áp rơi trên điện trở này chúng ta có thể tính được dòng qua điện trở, cũng là dòng qua động cơ :ĐỘNG CƠ ĐIỆN MỘT CHIỀU 5 :Độ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 :Ngun tắc hoạt độngcủa động cơ điện một chiều Stator của động cơ điện 1 chiều thường là 1 hay nhiều... Đồ án :IV KHỐI CÔNG SUẤT Dùng kênh A của IC cầu H L298 để xuất tín hiệu ra cho động cơ • Dùng IC 7414 và 7408 để làm cơ cấu lái đổi chiều cho động cơ • Thơng thường, khi thiết kế một mạch driver cho motor người ta thường dành 3 đường điều khiển đó là PWM dùng điều khiển vận tốc, DIR điều khiển hướng và En cho phép mạch hoạt động Chip L298D đã có sẵn đường En nhưng 2 đường điều khiển In1 và In2 khơng... VẬN HÀNH MẠCH Bước 1: nhấn nút MODE chọn chế độ hoạt động bình thường hay • ổn đònh tốc độ Bước 2: chọn tốc độ đặt trước và chọn chiều quay • Bước 3: nhấn nút START/STOP cho động cơ bắt đầu chạy, nhấn • lần nữa thì động cơ dừng Đỗ 11 Huy Duy :SVTH 5 Trương Ngọc Anh :GVHD 2 Đồ án :GIỚI HẠN ĐỀ TÀI 6 Mạch cầu H sử dụng IC L298 chỉ điều khiển được động cơ DC với cơng suất nhỏ Đối với khối hiển thị,do tính... CHƯƠNG II: THIẾT KẾ MẠCH • :I.KHỐI ĐIỀU KHIỂN :Gồm 6 nút nhấn Nút UP đêû tăng tốc độ cho động cơ, nút này nối với chân RA0 của • VĐK Nút DOWN đêû giảm tốc độ cho động cơ, nút này nối với chân RA1 • của VĐK Đỗ 25 Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án Nút RIGHT đêû đặt chiều quay phải cho động cơ, nút này nối với chân RA2 của VĐK Nút LEFT đêû đặt chiều quay trái cho động cơ, nút này nối với chân RA3... để đảo chiều động cơ DIR = 0: động cơ quay trái DIR = 1: động cơ quay phải RC2 là chân cấp xung PWM Đỗ • • 28 Huy Duy :SVTH Trương Ngọc Anh :GVHD 2 Đồ án RC3 là chân EN EN =1: cho phép động cơ chạy, EN = 0: động cơ dừng • CHƯƠNG III: THIẾT KẾ LƯU ĐỒ VÀ VIẾT CODE :Giới thiệu phần mềm CCS viết code và biên dịch 1 CCS là trình biên dịch dùng ngơn ngữ C lập trình cho VĐK - :Các tập lệnh cơ bản trong CCS... các bộ chuyển đổi ADC 10/12 bit • (Có các bộ so sánh điện áp (Voltage Comparators • Có các khối Capture/Compare/PWM • Có hỗ trợ giao tiếp LCD • Có MSSP Peripheral dùng cho các giao tiếp I²C, SPI, và I²S • Có bộ nhớ nội EEPROM - có thể ghi/xố lên tới 1 triệu lần • Có khối Điều khiển động cơ, đọc encoder • Có hỗ trợ giao tiếp USB • :Tốc độ hoạt động DC- 20MHz ngõ vào xung clock DC- 200ns chu kì lệnh... hoạt động của kênh A cũng tương tự kênh I, điểm khác nhau là trong 1 vòng quay của motor, có N “xung” xuất hiện trên kênh A N là số rãnh trên đĩa và được gọi là độ phân giải (resolution) của encoder Mỗi loại encoder có độ phân giải khác nhau, có khi trên mỗi đĩa chĩ có vài rãnh nhưng cũng có trường hợp đến hàng nghìn rãnh được chia Để điều khiển động cơ, bạn phải biết độ phân giải của encoder đang dùng. .. phải cho động cơ, nút này nối với chân RA2 của VĐK Nút LEFT đêû đặt chiều quay trái cho động cơ, nút này nối với chân RA3 của VĐK Nút START/STOP đêû khởi động hay dừng động cơ, nút này nối với chân RA4 của VĐK Nút MODE đêû chọn chế độ hoạt động cho động cơ, nút này nối với chân RA6 của VĐK Đồng thời có thêm một nút nhấn RESET mạch cho VĐK • • • • • :Sơ đồ mạch +5V R 9 8K2 R 3 8K2 R 4 8k2 R 5 8k2 R 6 8k2... trường giữa stator và rotor cùng dấu, trở lại pha 1 :Cơ chế sinh lực quay của động cơ điện một chiều Khi có một dòng điện chạy qua cuộn dây quấn xung quanh một lõi sắt non, cạnh phía bên cực dương sẽ bị tác động bởi một lực hướng lên, trong khi cạnh đối diện lại bị tác động bằng một lực hướng xuống theo ngun lý bàn tay trái của Fleming Các lực này gây tác động quay lên cuộn dây, và làm cho rotor quay Để . tự động thì động cơ DC là một cơ cấu điều khiển hữu hiệu. Động cơ DC được sử dụng rộng rãi trong các dây chuyền sản xuất tự động , ngoài ra động cơ DC còn được ứng dụng trong các thiết bò điều. Lập trình C cho PIC16f877a điều khiển ổn đònh tốc độ động cơ DC dùng phương pháp PID. Tốc độ đặt trước động cơ được nhập từ nút nhấn, tốc độ tức thời hồi tiếp từ động cơ được hiển thò trên LCD. được dùng nhiều nhất trong các ứng dụng điều khiển tự động. Đề tài này điều khiển tốc độ của động cơ DC dùng giải thuật PID có thể được giải thích như sau: Gọi F là lực quay động cơ. Ban đầu động
Ngày đăng: 27/05/2014, 11:36
Xem thêm: điều khiển tốc độ động cơ dc dùng pid, điều khiển tốc độ động cơ dc dùng pid