Đề tài Tìm hiểu và điều khiển động cơ bước

Nhớ rằng hai nửa của một mấu không bao giờ được kích cùng một lúc. Cả hai dãy nêu trên sẽ quay một động cơ nam châm vĩnh cửu một bước ở mỗi thời điểm. Dãy bên trái chỉ cấp điện cho một mấu tại một thời điểm, như mô tả trong hình trên; vì vậy, nó dùng ít năng lượng hơn. Dãy bên phải đòi hỏi cấp điện cho cả hai mấu một lúc và nói chung sẽ tạo ra một moment xoắy lớn hơn dãy bên trái 1.4 lần trong khi phải cấp điện gấp 2 lần. Phần Điều khiển mức trung bình trong tài liệu này sẽ cung cấp chi tiết về phương pháp tạo ra những dãy tín hiệu điều khiển như vậy, còn phần Các mạch điều khiển nói về mạch đóng ngắt các mạch điện cần thiết để điều khiển các mấu động cơ từ các dãy điều khiển trên.

pdf26 trang | Chia sẻ: aquilety | Lượt xem: 2321 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đề tài Tìm hiểu và điều khiển động cơ bước, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Bộ Công Thương Trường Đại Học Công Nghiệp Hà Nội ***** Khoa Điện ***** Đề tài : Tìm hiểu và điều khiển động cơ bước Giáo viên hướng dẫn : Nguyễn Đăng Khang Sinh viên thực hiện : Nguyễn Văn Hải lớp : Điện2 _ K2 Hà nội 7/2010 Điều khiển động cơ bước Chương 1 : 1.1 : giới thiệu chung về bộ điều khiển 1.1.1 : giới thiệu về Vi xử lý 8051 ( 89S52) 1.1.2 : giới thiệu về các van bán dẫn 1.2 : Giới thiệu chung về động cơ bước 1.3 : ứng dụng của động cơ bước Chương 2 : 2.1 : phân loại động cơ bước 2.2 : sơ đồ nguyên lý và mạch in điều khiển động cơ bước đơn cực 2.3 : lưu đồ thuật toán điều khiẻn 2.4 : chương trình điều khiển động cơ bước đơn cực Tài liệu tham khảo : Một số nhà cung cấp động cơ (động cơ rất bé) (động cơ cỡ trung bình) gmbh.de/ (German) inc.com/ (100 to 800 steps per revolution) (động cơ siêu nhỏ) bin/agree.cgi?lang=1 (Japan) Chương 1 11 : giới thiệu chung về bộ điều khiển động cơ bước. Trong thực tế có rất nhiều hãng sản xuất động cơ bước có sản xuất kèm theo bộ điều khiển động cơ đi kèm theo một bộ( có đầy đủ nhưng chức năng như hiển thị , truyền thoog với các thiết bị điều khiển khác) . các bộ điều khiển này co ưu điểm rất tốt đó là nó có tính ổn đinh cao và có sự đồng bộ hóa . nhưng nhược điểm đó là giá thành quá cao . Vì vậy . nhóm em xin giới thiệu về nguyên lý điều khiển và bộ điều khiển động cơ bước đơn giản sử dụng vi điều khiển 8051 ( 89S52) và các van bán dẫn để điều khiển động cơ bước . Tổng quan về họ vi điều khiển 8051 Cấu trúc bus Bus địa chỉ của họ vi điều khiển 8051 gồm 16 đường tín hiệu (thường gọi là bus địa chỉ 16 bit). Với số lượng bit địa chỉ như trên, không gian nhớ của chip được mở rộng tối đa là 216 = 65536 địa chỉ, tương đương 64K. Bus dữ liệu của họ vi điều khiển 8051 gồm 8 đường tín hiệu (thường gọi là bus dữ liệu 8 bit), đó là lý do tại sao nói 8051 là họ vi điều khiển 8 bit. Với độ rộng của bus dữ liệu như vậy, các chip họ 8051 có thể xử lý các toán hạng 8 bit trong Bộ nhớ chương trình Vi điều khiển họ 8051 có không gian bộ nhớ chương trình là 64K địa chỉ, đó cũng là dung lượng bộ nhớ chương trình lớn nhất mà mỗi chip thuộc họ này có thể có được. Bộ nhớ chương trình của các chip họ 8051 có thể thuộc một trong các loại: ROM, EPROM, Flash, hoặc không có bộ nhớ chương trình bên trong chip. Tên của từng chip thể hiện chính loại bộ nhớ chương trình mà nó mang bên trong, cụ thể là vài ví dụ sau S TT Tên chip ROM EPROM Flash 1 8051 4 Kbyte x x 2 8052 8 Kbyte x x 3 8031 x x x 4 8032 x x x 5 87C51 x 4 Kbyte x 6 87C52 x 8 Kbyte x 7 AT89C51 / AT89S51 x x 4 Kbyte 8 AT89C52 / AT89S52 x x 8 Kbyte Bộ nhớ dữ liệu Vi điều khiển họ 8051 có không gian bộ nhớ dữ liệu là 64K địa chỉ, đó cũng là dung lượng bộ nhớ dữ liệu lớn nhất mà mỗ i chip thuộc họ này có thể có được (nếu phối ghép một cách chính tắc, sử dụng các đường tín hiệu của bus địa chỉ và d ữ liệu). Bộ nhớ dữ liệu của các chip họ 8051 có thể thuộc một hay hai loại: SRAM hoặc EEPROM. Bộ nhớ dữ liệu SRAM được tích hợp bên trong mọi chip thuộc họ vi đi ều khiển này, có dung lượng khác nhau tùy loại chip, nhưng thường chỉ khoảng vài trăm byte. Đây chính là nơi chứa các biến trung gian trong quá trình hoạt động c ủa chip. khi mất điện, do bản chất của SRAM mà giá trị của các biến này cũng bị mất theo. Khi có điện trở lại, nội dung của các ô nhớ chứa các biến này cũng là bất kỳ, không thể xác định trướ c. Bên cạnh bộ nhớ loại SRAM, một số chip thuộc họ 8051 còn có thêm bộ nhớ dữ liệu loại EEPROM với dung lượng tối đa vài Kbyte, tùy từng loại chip cụ thể. Dưới đ ây là một vài ví dụ về bộ nhớ chương trình của một số loại chip thông dụng thuộc họ 8051. S TT Tên chip Bộ nhớ SRAM Bộ nhớ EEPROM 1 AT89C51 128 byte 0 2 AT89C52 256 byte 0 3 AT89C2051 128 byte 0 4 AT89S51 128 byte 0 5 AT89S52 256 byte 0 6 AT89S8252 256 byte 2048 byte Cổng vào/ra song song (Parrallel I/O Port) trong 8051 8051 có 4 cổng vào ra song song, có tên lần lượt là P0, P1, P2 và P3. Tất cả các cổng này đều là cổng vào ra hai chiều 8bit. Các bit của mỗi cổng là một chân trên chip, như vậy mỗi cổng sẽ có 8 chân trên chip. Hướng dữ liệu (dùng cổng đó làm c ổng ra hay cổng vào) là độc lập giữa các cổng và giữa các chân (các bit) trong cùng một cổng. Ví dụ, ta có thể định nghĩa cổng P0 là cổng ra, P1 là cổng vào hoặc ngược lại một cách tùy ý, với cả 2 cổng P2 và P3 còn lại c ũng vậy. Trong cùng một cổng P0, ta cũng có thể định nghĩa chân P0.0 là cổng vào, P0.1 lại là cổng ra tùy ý. Liên quan đến mỗi cổ ng vào/ra song song c ủa 8051 chỉ có một thanh ghi SFR ( thanh ghi chức năng đặc biệt) có tên trùng v ới tên của cổ ng. Ta có các thanh ghi P0 dùng cho cổng P0, thanh ghi P1 dùng cho cổng P1 Đây là các thanh ghi đánh địa chỉ đến từng bit (bit addressable), do đó ta có thể dùng các lệnh tác động bit đối với các bit c ủa các thanh ghi này. Mỗi thanh ghi này gồm 8 bit tương ứng với các chân (bit) của cổng đó. Khi một chân (bit) cổng nào đó được dùng làm cổng vào thì trước đó bit tương ứng trong thanh ghi SFR phải được đặt ở mức 1. Nếu một chân (bit) cổng nào đó được dùng làm cổng ra thì giá tr ị của bit tương ứng trong thanh ghi SFR sẽ là giá tr ị lôgic muốn đưa ra chân cổng đó. Nếu muốn đưa ra mức lôgic cao (điện áp gần 5V), bit tương ứng trong thanh ghi ph ải được đặt bằng 1, hiển nhiên nếu muố n đưa ra mức lôgic thấp (điện áp gần 0V) thì bit tương ứng trong thanh ghi phải được đặt bằng 0. Như đã nói ở trên, các bit trong thanh ghi cổng có thể đượ c đặt bằng 1/0 mà không làm ảnh hưởng đến các bit còn lại trong cổng đó bằng cách dùng các lệnh setb (đặt lên 1) hay clr (đặt về 0). Sau khi đặt một chân cổ ng làm cổng vào, ta có thể dùng các lệnh kiểm tra bit để đọc vào và kiểm tra các mức lôgic của mạch ngoài đang áp vào là mức 0 hay mức 1. Các lệnh này là jb (nhảy nếu bit bằng 1), jnb (nhảy nếu bit bằng 0). Mỗi cổng có cấu trúc gồm một latch (chính là các bit của thanh ghi cổng), mạch lái đầu ra (output driver) và mạch đệm đầu vào (input buffer). Ngoài chức năng vào/ra thông thường, một số c ổng còn được tích hợp thêm chức năng của một số ngoại vi khác. Xem bảng liệt kê sau: Các chân cổng P1.0 và P1.1 được tích hợp với các tín hiệu của timer2 trong trường hợp chip là 8052. Khi dùng với các chức năng của các ngoại vi, chân cổng tương ứng phải được đặt lên 1. Nếu không các tín hiệu sẽ luôn bị ghim ở mức 0. Sơ đồ của mạch của một chân cổng: Cổng P0 không có đ iện trở treo cao (pullup resistor) bên trong, mạch lái tạo mức cao chỉ có khi sử dụng cổng này với tính năng là bus dồn kênh địa chỉ/dữ liệ u. Như vậy với chức năng ra thông thường, P0 là cổng ra open drain, với chức năng vào, P0 là cổng vào cao trở (high impedance). Nếu muốn sử dụng cổng P0 làm c ổng vào/ra thông thường, ta phải thêm điện trở pullup bên ngoài. Giá trị điện trở pullup bên ngoài thường từ 4K7 đến 10K. Các cổng P1, P2 và P3 đều có điện trở pullup bên trong, do đó có thể dùng với chức năng cổng vào/ra thông thườ ng mà không cần có thêm điện trở pullup bên ngoài. Thực chất, điện trở pullup bên trong là các FET, không phải điện trở tuyến tính thông thường, tuy vậy nhưng khả năng phun dòng ra của mạch lái khi đầu ra ở mức cao (hoặc khi là đầu vào) rất nhỏ, chỉ khoảng 100 micro Ampe. Trong datasheet của AT89S5x (một trong những biến thể của họ 8051 do Atmel sản xuất) có thống kê số liệu như sau: Cơ chế ngắt của 8051 8051 chỉ có một số lượng khá ít các nguồn ngắt (interrupt source) hoặc có thể gọ i là các nguyên nhân ng ắt. Mỗi ngắt có một vector ngắt riêng, đó là một địa chỉ cố định nằm trong bộ nhớ ch ương trình, khi ngắt xả y ra, CPU sẽ tự động nhảy đến thực hiện lệnh nằm tại địa chỉ này. Bảng tóm tắt các ngắt trong 8051 như sau STT Tên ngắt Mô tả cờ ngắt Thanh ghi chứa cờ Vector ngắt 1 INT0 Ngắt ngoài 0 khi có tín hiệu tích cực theo kiểu đã chọn ở chân P3.2 IE0 TCON 0x0003 2 Timer0 Ngắt tràn timer0 khi giá trị timer0 tràn từ giá trị max về giá trị min TF0 TCON 0x000B 3 INT1 Ngắt ngoài 1 khi có tín hiệu tích cực theo kiểu đã chọn ở chân P3.3 IE1 TCON 0x0013 4 Timer1 Ngắt tràn timer1 khi giá trị timer1 tràn từ giá trị max về giá trị min TF1 TCON 0x001B 5 Serial Port Ngắt cổng nối tiếp khi vi điều khiển nhận hoặc truyền xong một byte bằng cổng nối tiếp TI, RI SCON 0x0023 Với 8052, ngoài các ngắt trên còn có thêm ngắt của timer2 (do vi điều khiển này có thêm timer2 trong số các ngoại vi onchip). Mỗi ngắt được dành cho một vector ngắt kéo dài 8byte. Về mặ t lý thuyết, nếu chương trình đủ ngắn, mã tạo ra chứa đủ trong 8 byte, người lập trình hoàn toàn có thể đặt phần chương trình xử lý ngắt ngay tại vector ngắt. Tuy nhiên trong hầ u hết các trường hợp, chươ ng trình xử lý ngắt có dung lượng mã tạo ra lớn hơn 8byte nên tại vector ngắt, ta chỉ đặt lệnh nhảy tới chươ ng trình xử lý ngắt nằm ở vùng nhớ khác. Nếu không làm vậy, mã chương trình xử lý ngắt này sẽ lấn sang, đè vào vector ngắt kế cận. Liên quan đến ngắt chủ yếu có hai thanh ghi là thanh ghi IE và thanh ghi IP. Ngắt ngoài (External Interrupt) Như đã nói ở trên, 8051 có 2 ngắt ngoài là INT0 và INT1. Ngắt ngoài được hiểu là ngắ t được gây ra bởi sự kiện mức lôgic 0 (mức điện áp thấp, gần 0V) hoặc sườn xuống (sự chuyển mức điện áp từ mức cao về mức thấp) xảy ra ở chân ngắt tương ứng (P3.2 với ngắt ngoài 0 và P3.3 với ngắt ngoài 1). Việc lựa chọn kiểu ngắt được thực hiện bằng các bit IT (Interrupt Type) nằm trong thanh ghi TCON. Đ ây là thanh ghi điều khiển timer nhưng 4 bit LSB (bit0..3) được dùng cho các ngắt ngoài. Các timer/counter trong 8051 8051 có 2 timer tên là timer0 và timer1. Các timer này đều là timer 16bit, giá trị đếm max do đó bằng 216 = 65536 (đếm từ 0 đến 65535). Hai timer có nguyên lý hoạt động hoàn toàn giống nhau và độc lập. Sau khi cho phép chạy, mỗi khi có thêm một xung tại đầu vào đếm, giá trị của timer sẽ tự động được tăng lên 1 đơn vị, cứ như vậy cho đến khi giá trị tăng lên vượt quá giá trị max mà thanh ghi đếm có thể biểu diễn thì giá trị đếm lại được đưa trở về giá trị min (thông thường min = 0) . Sự kiện này được hiểu là sự kiện tràn timer (overflow) và có thể gây ra ngắt nếu ngắt tràn timer được cho phép (bit ETx trong thanh ghi IE = 1). Việc cho timer chạy/dừng được thực hiện bởi các bit TR trong thanh ghi TCON (đánh địa chỉ đến từng bit). Cổng nối tiếp (Serial Port) của 8051 Cổng nối tiếp trong 8051 chủ yếu đượ c dùng trong các ứng dụng có yêu cầu truyền thông với máy tính, hoặc với một vi điều khiển khác. Liên quan đến cổng nối tiếp chủ yếu có 2 thanh ghi: SCON và SBUF. Ngoài ra, một thanh ghi khác là thanh ghi PCON (không đánh địa chỉ bit) có bit 7 tên là SMOD quy định tốc độ truyền của cổng nối tiếp có gấp đôi lên (SMOD = 1) hay không (SMOD = 0). Dữ liệu được truyền nhận nối tiếp thông qua hai chân cổng P3.0(RxD) và P3.1(TxD). Mạch cơ bản để 8051 có thể hoạt động : - Sử dụng IC ổn áp LM7805 thông dụng; Xem datasheet ở đây LM7805 1) IN: điện áp vào từ 7-35V DC 2) GND 3) OUT: điện áp đầu ra ổn định ở 5V DC Thạch anh 12Mhz - Đầu vào và đầu ra của 7805 nên có các tụ lọc trị số tuỳ theo tải, mạch đơn giản thì trị số có .thể chọn như hình, với tải nhiều nên chọn tụ đầu vào 1000uF, đầu ra 470uF 1.1.2 : linh kiện bán dẫn : ở bộ điều khiển này nhóm em sử dụng trasistor lưỡng cực PNP dòng tran công suất Tip 41C Transistor là một linh kiện bán dẫn thường được sử dụng như một thiết bị khuếch đại hoặc một khóa điện tử. Tranzitor là khối đơn vị cơ bản xây dựng nên cấu trúc mạch ở máy tính điện tử và tất cả các thiết bị điện tử hiện đại khác. Vì đáp ứng nhanh và chính xác nên các tranzitor được sử dụng trong nhiều ứng dụng tương tự và số, như khuếch đại, đóng cắt, điều chỉnh điện áp, điều khiển tín hiệu, và tạo dao động.Tranzitor cũng thường được kết hợp thành mạch tích hợp (IC),có thể tích hợp tới một tỷ tranzitor trên một diện tích nhỏ. 1.2 : giới thiệu chung về động cơ bước Động cơ bước có thể được mô tả như là một động cơ điện không dùng bộ chuyển mạch. Cụ thể, các mấu trong động cơ là stator, và rotor là nam châm vĩnh cửu hoặc trong trường hợp của động cơ biến từ trở, nó là những khối răng làm bằng vật liệu nhẹ có từ tính. Tất cả các mạch đảo phải được điều khiển bênngoài bởi bộ điều khiển, và đặc biệt, các động cơ và bộ điều khiển được thiết kế để động cơ có thể giữ nguyên bất kỳ vị trí cố định nào cũng như là quay đến bất kỳ vị trí nào. Hầu hết các động cơ bước có thể chuyển động ở tần số âm thanh, cho phép chúng quay khá nhanh, và với một bộ điều khiển thích hợp, chúng có thể khởi động và dừng lại dễ dàng ở các vị trí bất kỳ. Trong một vài ứng dụng, cần lựa chọn giữa động cơ servo và động cơ bước. Cả hai loại động cơ này đều như nhau vì có thể xác định được vị trí chính xác,nhưng chúng cũng khác nhau ở một số điểm. Servo motor đòi hỏi tín hiệu hồi tiếp analog. Đặc biệt, điều này đòi hỏi một bộ tắc cô để cung cấp tín hiệu hồi tiếp về vị trí của rotor, và một số mạch phức tạp để điều khiển sự sai lệch giữa vị trí mong muốn và vì trí tức thời vì lúc đó dòng qua động cơ sẽ dao động tắt dần. Để lựa chọn giữa động cơ bước và động cơ servo, phải xem xét một số vấn đề, và nó phụ thuộc vào các ứng dụng thực tế. Ví dụ, khả năng trở về một vị trí đãvượt qua phụ thuộc vào hình dạng rotor động cơ bước, trong khi đó, khả năng lặp lại vị trí của động cơ servo nói chung phụ thuộc vào độ ổn định của bộ tắc cô và các linh kiện analog khác trong mạch hồi tiếp. Động cơ bước có thể được dùng trong hệ thống điều khiển vòng hở đơn giản;những hệ thống này đảm bảo cho hệ thống điều khiển gia tốc với tải trọng tĩnh,nhưng khi tải trọng thay đổi hoặc điều khiển ở gia tốc lớn, người ta vẫn dùng hệ Điều khiển vòng kín với động cơ bước. Nếu một động cơ bước trong hệ điều khiển vòng mở quá tải, tất cả các giá trị về vị trí của động cơ đều bị mất và hệ thống phải nhận diện lại; 1.2 : ứng dụng của động cơ bước - điều khiênr vị trí - trong máy CNC - dây chuyền đóng nắp chai - điều kgiển rôbot - nói chung : động cơ bước úng dung rất nhiều vào trong công nghiệp Chương 2 2.1 : phân loại động cơ bước Các loại động cơ bước Động cơ bước được chia làm hai loại, nam châm vĩnh cửu và biến từ trở (cũng cóloại động cơ hỗn hợp nữa, nhưng nó không khác biệt gì với động cơ nam châmvĩnh cửu). Nếu mất đi nhãn trên động cơ, các bạn vẫn có thể phân biệt hai loại động cơ này bằng cảm giác mà không cần cấp điện cho chúng. Động cơ nam châm vĩnh cửu dường như có các nấc khi bạn dùng tay xoay nhẹ rotor của chúng, trong khi động cơ biến từ trở thì dường như xoay tự do (mặc dù cảm thấy chúng cũng có những nấc nhẹ bởi sự giảm từ tính trong rotor). Bạn cũng có thể phân biệt hai loại động cơ này bằng ohm kế. Động cơ biến từ trở thường có 3 mấu, với một dây về chung, trong khi đó, động cơ nam châm vĩnh cửu thường có hai mấu phân biệt, có hoặc không có nút trung tâm. Nút trung tâm được dùng trong động cơ nam châm vĩnh cửu đơn cực. Động cơ bước phong phú về góc quay. Các động cơ kém nhất quay 90 độ mỗi bước, trong khi đó các động cơ nam châm vĩnh cửu xử lý cao thường quay 1.8 độ đến 0.72 độ mỗi bước. Với một bộ điều khiển, hầu hết các loại động cơ nam châm vĩnh cửu và hỗn hợp đều có thể chạy ở chế độ nửa bước, và một vài bộ điều khiển có thể điều khiển các phân bước nhỏ hơn hay còn gọi là vi bước. Đối với cả động cơ nam châm vĩnh cửu hoặc động cơ biến từ trở, nếu chỉ một mấu của động cơ được kích, rotor (ở không tải) sẽ nhảy đến một góc cố định và sau đó giữ nguyên ở góc đó cho đến khi moment xoắn vượt qua giá trị moment xoắn giữ (hold torque) của động cơ. Hình 1.1 Nếu motor của bạn có 3 cuộn dây, được nối như trong biểu đồ hình 1.1, với một đầu nối chung cho tất cả các cuộn, thì nó chắc hẳn là một động cơ biến từ trở. Khi sử dụng, dây nối chung (C) thường được nối vào cực dương của nguồn và các cuộn được kích theo thứ tự liên tục. Dấu thập trong hình 1.1 là rotor của động cơ biến từ trở quay 30 độ mỗi bước. Rotor trong động cơ này có 4 răng và stator có 6 cực, mỗi cuộn quấn quanh hai cực đối diện. Khi cuộn 1 được kích điện, răng X của rotor bị hút vào cực 1. Nếu dòng qua cuộn 1 bị ngắt và đóng dòng qua cuộn 2, rotor sẽ quay 30 độ theo chiều kim đồng hồ và răng Y sẽ hút vào cực 2. Để quay động cơ này một cách liên tục, chúng ta chỉ cần cấp điện liên tục luân phiên cho 3 cuộn. Theo logic đặt ra, trong bảng dưới đây 1 có nghĩa là có dòng điện đi qua các cuộn, và chuỗi điều khiển sau sẽ quay động cơ theo chiều kim đồng hồ 24 bước hoặc 2 vòng: Cuộn 1 1001001001001001001001001 Cuộn 2 0100100100100100100100100 Cuộn 3 0010010010010010010010010 thời gian > Phần Điều khiển mức trung bình cung cấp chi tiết về phương pháp tạo ra các dãy tín hiệu điều khiển như vậy, và phần Các mạch điều khiển bàn về việc đóng ngắt dòng điện qua các cuộn để điều khiển động cơ từ các chuỗi như thế. Hình dạng động cơ được mô tả trong hình 1.1, quay 30 độ mỗi bước, dùng số răng rotor và số cực stator tối thiểu. Sử dụng nhiều cực và nhiều răng hơn cho phép động cơ quay với góc nhỏ hơn. Tạo mặt răng trên bề mặt các cực và các răng trên rotor một cách phù hợp cho phép các bước nhỏ đến vài độ. Hình 1.2 Động cơ bước đơn cực cả nam châm vĩnh cửu và động cơ hỗn hợp, với 5, 6 hoặc 8 dây ra thường được quấn như sơ đồ hình 1.2, với một đầu nối trung tâm trên các cuộn. Khi dùng, các đầu nối trung tâm thường được nối vào cực dương nguồn cấp, và hai đầu còn lại của mỗi mấu lần lượt nối đất để đảo chiều từ trường tạo bởi cuộn đó. Sự khác nhau giữa hai loại động cơ nam châm vĩnh cửu đơn cực và động cơ hỗn hợp đơn cực không thể nói rõ trong nội dung tóm tắt của tài liệu này. Từ đây, khi khảo sát động cơ đơn cực, chúng ta chỉ khảo sát động cơ nam châm vĩnh cửu, việc điều khiển động cơ hỗn hợp đơn cực hoàn toàn tương tự. Mấu 1 nằm ở cực trên và dưới của stator, còn mấu 2 nằm ở hai cực bên phải và bên trái động cơ. Rotor là một nam châm vĩnh cửu với 6 cực, 3 Nam và 3 Bắc, xếp xen kẽ trên vòng tròn. Để xử lý góc bước ở mức độ cao hơn, rotor phải có nhiều cực đối xứng hơn. Động cơ 30 độ mỗi bước trong hình là một trong những thiết kế động cơ nam châm vĩnh cửu thông dụng nhất, mặc dù động cơ có bước 15 độ và 7.5 độ là khá lớn. Người ta cũng đã tạo ra được động cơ nam châm vĩnh cửu với mỗi bước là 1.8 độ và với động cơ hỗn hợp mỗi bước nhỏ nhất có thể đạt được là 3.6 độ đến 1.8 độ, còn tốt hơn nữa, có thể đạt đến 0.72 độ. Như trong hình, dòng điện đi qua từ đầu trung tâm của mấu 1 đến đầu a tạo ra cực Bắc trong stator trong khi đó cực còn lại của stator là cực Nam. Nếu điện ở mấu 1 bị ngắt và kích mấu 2, rotor sẽ quay 30 độ, hay 1 bước. Để quay động cơ một cách liên tục, chúng ta chỉ cần áp điện vào hai mấu của đông cơ theo dãy. Mấu 1a 1000100010001000100010001 Mấu 1a 1100110011001100110011001 Mấu 1b 0010001000100010001000100 Mấu 1b 0011001100110011001100110 Mấu 2a 0100010001000100010001000 Mấu 2a 0110011001100110011001100 Mấu 2b 0001000100010001000100010 Mấu 2b 1001100110011001100110011 thời gian > thời gian > Nhớ rằng hai nửa của một mấu không bao giờ được kích cùng một lúc. Cả hai dãy nêu trên sẽ quay một động cơ nam châm vĩnh cửu một bước ở mỗi thời điểm. Dãy bên trái chỉ cấp điện cho một mấu tại một thời điểm, như mô tả trong hình trên; vì vậy, nó dùng ít năng lượng hơn. Dãy bên phải đòi hỏi cấp điện cho cả hai mấu một lúc và nói chung sẽ tạo ra một moment xoắy lớn hơn dãy bên trái 1.4 lần trong khi phải cấp điện gấp 2 lần. Phần Điều khiển mức trung bình trong tài liệu này sẽ cung cấp chi tiết về phương pháp tạo ra những dãy tín hiệu điều khiển như vậy, còn phần Các mạch điều khiển nói về mạch đóng ngắt các mạch điện cần thiết để điều khiển các mấu động cơ từ các dãy điều khiển trên. Vị trí bước được tạo ra bởi hai chuỗi trên không giống nhau; kết quả, kết hợp 2 chuỗi trên cho phép điều khiển nửa bước, với việc dừng động cơ một cách lần lượt tại những vị trí đã nêu ở một trong hai dãy trên. Chuỗi kết hợp như sau: Mấu 1a 11000001110000011100000111 Mấu 1b 00011100000111000001110000 Mấu 2a 01110000011100000111000001 Mấu 2b 00000111000001110000011100 Thời gian > Hình 1.3 Động cơ nam châm vĩnh cửu hoặc hỗn hợp hai cực có cấu trúc cơ khí giống y như động cơ đơn cực, nhưng hai mấu của động cơ được nối đơn giản hơn, không có đầu trung tâm. Vì vậy, bản thân động cơ thì đơn giản hơn, nhưng mạch điều khiển để đảo cực mỗi cặp cực trong động cơ thì phức tạp hơn. Minh hoạ ở hình 1.3 chỉ ra cách nối động cơ, trong khi đó phần rotor ở đây giống y như ở hình 1.2. 2.2 : sơ đồ nguyên lý : Sử dụng gồm VDK 89S52 Transistor c828 và tip41C 2 bộ nguồn ổn áp 5V và 12V Khối tín hiệu đầu vào : Khối tín hiệu đầu ra Sử dụng 4 pin của PORT 2 là P2.1, P2.2 , P2.3, P2.4 Mach hiển thị: Mạch sơ đồ nguyên lý : Khối nguồn 5 V Khối nguồn 12 V Điều khiển một pha (200 bước / vòng) Bước thứ Cuộn 1a Cuộn 2a Cuộn 1b Cuộn 2b 1 1 0 0 0 2 0 1 0 0 3 0 0 1 0 4 0 0 0 1 5 1 0 0 0 6 0 1 0 0 7 0 0 1 0 8 0 0 0 1 Điều khiển hai pha (200 bước / vòng) Bước thứ Cuộn 1a Cuộn 2a Cuộn 1b Cuộn 2b 1 1 1 0 0 2 0 1 1 0 3 0 0 1 1 4 1 0 0 1 5 1 1 0 0 6 0 1 1 0 7 0 0 1 1 8 1 0 0 1 Điều khiển hỗn hợp 1 pha 2 pha (400 bước / vòng) Bước thứ Cuộn 1a Cuộn 2a Cuộn 1b Cuộn 2b 1 1 0 0 0 2 1 1 0 0 3 0 1 0 0 4 0 1 1 0 5 0 0 1 0 6 0 0 1 1 7 0 0 0 1 8 1 0 0 1 2.3 : lưu đồ thuật toán điều khiển : CT điều khiển Động cơ bước đơn cực Đọc tín hiệu đầu vào P3= ? Ra lệnh điều khiển Động cơ bước Hiển thị LED 7 thanh Ret 2.3 chương trình điều khiển : //* ha noi 7/6/2010*// //*code dk dong co buoc don cuc hien thi LED *// //* chip : 89S52 *// //* thach anh 12Mhz*// //* by : Nguyen Van Hai*// //* Lop : DIEN 2 _ K2 DAI HOC CONG NGHIEP HA NOI*// #include #define tang 0x7e //01111110 #define tang1 0x7d //01111101 #define tang2 0x7f //01111111 #define tang3 0x7c //01111100 #define giam 0xbe //10111110 #define giam2 0xbf //10111111 #define giam1 0xbd //10111101 #define giam3 0xbc //10111100 #define chaythuan 0xde //11011110 #define chaynghich 0xdd //11011101 #define daochieu 0xdc //11011100 sbit l1=P2^7; sbit l2=P2^6; sbit l3=P2^5; void delay_ms(unsigned int ms) // ham tao thoi gian delay {unsigned int i; for(i=0;i<ms;++i); } void tre(unsigned int ms) {unsigned int i; unsigned int j; for(i=0;i<ms;++i); for(j=0;j<100;++j); } unsigned int num,k,n; unsigned char donvi,chuc,tram,m; void quaythuan() // ham con phuc vu phat xung quay thuan { P2=0x10;delay_ms(num); P2=0x04;delay_ms(num); P2=0x02;delay_ms(num); P2=0x08;delay_ms(num); } void quaynghich() // ham con phuc vu phat xung quay nguoc {P2=0x08;delay_ms(num); P2=0x02;delay_ms(num); P2=0x04;delay_ms(num); P2=0x10;delay_ms(num); } void dieukhienthuan(void) // hàm con thực hiện đoc tín hiệu PORT 3 { unsigned char input; input = P3 ; switch (input) { case chaythuan: { for(n=0;n<k;n++) {for(m=0;m<5;++m) { quaythuan(); }} break ; } case chaynghich: { for(n=0;n<k;n++) {for(m=0;m<5;++m) { quaynghich(); }} break ; } case daochieu: { for(n=0;n<k;n++) {for(m=0;m<5;++m) {quaythuan(); }} P2=0xff; tre(50000); for(n=0;n<k;n++) {for(m=0;m<5;++m) {quaynghich(); }} break ; } case tang: { tre(20000); k=k+5; break ; } case tang1: { tre(20000); k=k+5; break ; } case tang2: { tre(20000); k=k+5; break ; } case tang3: { tre(20000); k=k+5; break ; } case giam: { tre(20000); k=k-5; break ; } case giam1: { tre(20000); k=k-5; break ; } case giam2: { tre(20000); k=k-5; break ; } case giam3: { tre(20000); k=k-5; break ; } } } void xoa_led(void) // hàm con xóa LED { P1=0xff; } code unsigned char dulieu[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10}; void hienthi() // hàm con thực hiện chương trình hiển thị { xoa_led(); tram =k/100; if((tram==0) ) {l3=1;l1=l2=0;P1=dulieu[tram] ;tre(1);} else {l3=1;l1=l2=0; P1=dulieu[tram] ; tre(1);} chuc = (k%100)/10; if((chuc==0)&&(tram==0)) {l2=1;l1=l3=0;P1=dulieu[chuc];tre(1);} else {l2=1;l1=l3=0; P1=dulieu[chuc] ; tre(1); } donvi =(k%100)%10; if((chuc==0)&&(donvi==0)) {l1=1;l2=l3=0;P1=dulieu[donvi];tre(1);} else {l1=1;l2=l3=0; P1=dulieu[donvi] ; tre(1); } xoa_led() ; } void main(void) // hàm chương trình chính { TMOD=0x10; // khoi tap timer 1 che do 16 bit TH1=50535/256 ; TL1=50535%256; TR1=1; IE =0x8f; //cho phep ngat IP=0; P3=0xff; num=4000; k=0; while(1) // hàm lập vô hạn { P2=0xff; dieukhienthuan(); }} void ngatngoai(void) interrupt 0 // chuong trinh con phục vụ ngat ngoài 0 { tre(20000); num=num+50; } void ngatngoai1(void) interrupt 2 // chuong trinh con phục vụ ngat ngoài 1 { tre(20000); num=num-50; } void ngat1 (void) interrupt 3 // chuong trinh con phục vụ ngat timer 1 {TF1=0; TR1=0; TH1=50535/256 ; TL1=50535%256; TR1=1; hienthi();}

Các file đính kèm theo tài liệu này:

  • pdfdo_an_mon_tdd_dieu_khien_dong_co_buoc_735.pdf