Đồ án : Thiết kế mạch và viết chương trình điều khiển động cơ bước dùng vi điều khiển 8051

31 1.5K 1
Đồ án : Thiết kế mạch và viết chương trình điều khiển động cơ bước  dùng vi điều khiển 8051

Đ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

Thiết kế mạch và viết chương trình điều khiển động cơ bướcNgày nay, cùng với sự phát triển của công nghệ điều khiển trong các thiết bị điện tử, ứng dụng của vi xử lý và vi điều khiển ngày càng rộng rãi trong các lĩnh vực kỹ thuật và đời sống xã hội. Có mặt hầu hết trong các thiết bị từ đơn giản đến phức tạp, từ thiết bị điều khiển tự động, trong sản xuất công nghiệp, thiết bị văn phòng phổ thông cho đến các thiết bị trong gia đình đều có sử dụng các bộ vi điều khiển. Vào năm 1981 hãng Intel giới thiệu bộ vi điều khiển được gọi là 8051. 8051 đã trở lên phổ biến sau khi Intel cho phép các nhà sản xuất khác sản xuất và bán các dạng biến thể của 8051. Điều này dẫn đến sự ra đời nhiều phiên bản của 8051 với các tốc độ khác nhau và dung lượng ROM trên chip khác nhau.Trong bài dưới đây, em xin trình bày về vi điều khiển 8051. Nội dung chính bao gồm : PHẦN I : GIỚI THIỆU VI ĐIỀU KHIỂN 8051PHẦN II : THIẾT KẾ MẠCH NGUỒN CHO VI ĐIỀU KHIỂN BẰNG PHẦN MỀM ALTIUMPHẦN III : GHÉP NỐI HIỂN THỊ TỐC ĐỘ ĐỘNG CƠ TRÊN LCDPHẦN IV : LẬP TRÌNH ĐIỀU KHIỂN TỐC ĐỘ ĐỘNG CƠ BƯỚCPHẦN V : MÔ PHỎNG MẠCH ĐIỀU KHIỂN VÀ MẠCH LỰC ...................

PHẦN I : GIỚI THIỆU VI ĐIỀU KHIỂN 8051 I TỔNG QUAN VỀ HỌ VI ĐIỀU KHIỂN MCS-51 họ vi điều khiển hãng Intel Vi mạch tổng quát họ MCS-51 chip 8051 8051 trở lên phổ biến sau Intel cho phép nhà sản xuất khác sản xuất bán dạng biến thể 8051 Điều dẫn đến đời nhiều phiên 8051 với tốc độ khác dung lượng ROM chip khác Mặc dù có nhiều biến thể khác 8051 tốc độ dung lượng nhớ ROM chip, tất chúng tương thích với 8051 ban đầu lệnh Điều có nghĩa viết chương trình cho phiên 8051 chạy với phiên khác mà không phân biệt sản xuất từ hãng Chip 8051 có số đặc trưng sau :  Bộ nhớ chương trình bên : KB (ROM)  Bộ nhớ liệu bên : 128 byte (RAM)  Bộ nhớ chương trình bên : 64 KB (ROM)  Bộ nhớ liệu bên : 64 KB (RAM)  40 chân 32 chân vào/ra  nguồn ngắt  cổng xuất nhập (I/O Port) bit  Có định thời 16 bit  Mạch giao tiếp nối tiếp  Bộ xử lý bit (thao tác bit riêng lẻ)  Có 210 vị trí nhớ định địa chỉ, vị trí bit  Nhân / Chia µs Ngoài ra, họ MCS-51 có số chip vi điều khiển khác có cấu trúc tương đương : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - - II PHẦN CỨNG CỦA VI ĐIỀU KHIỂN 8051 SƠ ĐỒ KHỐI CỦA CHIP 8051 - CPU (Central Processing Unit) : Đơn vị xử lý trung tâm tính toán điều khiển trình hoạt động hệ thống - OSC (Oscillator) : Mạch dao động tạo tín hiệu xung clock cung cấp cho khối chip hoạt động - Interrupt control : Điều khiển ngắt > nhận tín hiệu ngắt từ bên (INT0, INT1), từ định thời (Timer 0, Timer 1) từ cổng nối tiếp (Serial port), lần luợt đua tín hiệu ngắt đến CPU để xử lý - Other registers : Các ghi khác, Lưu trữ liệu port xuất/nhập, trạng thái làm việc khối chip suốt trình hoạt động hệ thống - RAM (Random Access Memory) : Bộ nhớ liệu chip lưu trữ liệu - ROM (Read Only Memory) : Bộ nhớ chương trình chip lưu trữ chương trình hoạt động chip - I/O ports (In/Out ports) : Các port xuất/nhập điều khiển việc xuất nhập liệu duới dạng song song chip thông qua port P0, P1, P2, P3 - Serial port : Port nối tiếp điều khiển việc xuất nhập liệu duới dạng nối tiếp chip thông qua chân TxD, RxD - Timer 0, Timer : Bộ định thời 0, dùng để định thời gian đếm kiện (đếm xung) thông qua chân T0, T1 - Bus control : Điều khiển bus điều khiển hoạt động hệ thống bus việc di chuyển thông tin hệ thống bus - Bus system : Hệ thống bus liên kết khối chip lại với SVTH : Đặng Minh Đức DHTD8A2_HN Trang - - SƠ ĐỒ CHÂN VÀ CHỨC NĂNG CÁC CHÂN CỦA VI ĐIỀU KHIỂN 8051 Sơ đồ chân vi điều khiển 8051 * Chân đến : gọi Cổng (Port 1), chân có chức xuất nhập Cổng xuất nhập theo bit byte Ta đánh tên cho chân Port P1.X (X = đến 7) * Chân : chân vào reset 8051 Khi tín hiệu đưa lên mức cao chu kỳ máy, ghi vi điều khiển tải giá trị thích hợp để khởi động hệ thống Hay nói cách khác vi điều khiển bị reset chân kích hoạt mức cao Sơ đồ mạch reset 8051 * Chân 10 đến 17 : gọi Cổng (Port 3), chân chức xuất nhập chân cổng (chân đến 8) chân có chức riêng nữa, cụ thể sau : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - - Bit P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 Tên RxD TxD INT0 INT1 T0 T1 WR RD Địa bit B0H B1H B2H B3H B4H B5H B6H B7H Chức Chân nhận liệu port nối tiếp Chân phát liệu port nối tiếp Ngõ vào ngắt Ngõ vào ngắt Ngõ vào định thời/đếm Ngõ vào định thời/đếm Điều khiển ghi vào RAM Điều khiển đọc từ RAM * Chân 18 19 (XTAL1 & XTAL2) : chân sử dụng để nối với dao động Mạch dao động cấp cho 8051 - Chức :  Dùng để nối với thạch anh mạch dao động tạo xung clock bên ngoài, cung cấp tín hiệu xung clock cho chip hoạt động  XTAL1 : ngõ vào mạch tạo xung clock chip  XTAL2 : ngõ mạch tạo xung clock chip Lưu ý : fTYP=12MHz fTYP (MHz) : tần số danh định * Chân 20 : nối vào chân 0V nguồn cấp * Chân 21 đến chân 28 : gọi cổng (Port 2), chân cổng có công dụng, chức cổng xuất nhập cổng cổng byte cao bus địa sử dụng nhớ * Chân 29 (PSEN) : Chân PSEN chân điều khiển đọc chương trình nhớ ngoài, nối với chân OE ROM phép đọc byte mã lệnh ROM PSEN mức thấp thời gian đọc mã lệnh Khi thực chương trình ROM nội PSEN trì mức cao * Chân 30 (ALE) : Chân ALE cho phép tách đường liệu đường địa Port Port SVTH : Đặng Minh Đức DHTD8A2_HN Trang - - * Chân 31 (EA) : Tín hiệệu chân EA cho phép chọn nhớ chương trình tr nhớ hay vi điềều khiển Nếu chân EA nối mứcc cao (nối (n nguồn Vcc), vi điềuu khiển thi hành chương trình ình ROM nội n Nếu chân EA mức thấp (được nốii GND) vi điều khiểnn thi hành chương trình tr từ nhớ * Chân 32 đến 39 : đượcc ggọi cổng (Port 0) Cổng gồm m chân c có công dụng, chứcc xu xuất nhập, cổng bus đa hợpp d liệu địa chỉ, chức đượ ợc sử dụng 8051 giao tiếp vớii biết bi bị có kiếnn trúc Bus vi m mạch nhớ Vì cổng P0 mộtt máng mở m khác so với cổng P1, P2 P3 nên chân cổng phải nối vớii điện trở kéo sử dụng ng chân chân vào/ra Đi Điện trở tùy thuộcc vào đặc đ tính ngõ vào thành phầnn ghép nnối với chân port Thường ng ta dùng điện trở kéo khoảng 4K7 đến 10K N Nối điện trở kéo cho cổng 8051 * Chân 40 : chân nguồnn ccủa vi điều khiển, nốii vào chân VCC c nguồn TỔ CHỨC BỘ NHỚ C CỦA CHIP 8051 - Bộ vi xử lý có không gian bbộ nhớ chung cho liệuu chương trình tr chương trình liệu nnằm chung RAM truớcc đưa vào CPU để đ thực thi - Bộ vi điều khiển có không gian bbộ nhớ riêng cho liệuu chương trình tr SVTH : Đặng Minh Đứcc DHTD8A2 DHTD8A2_HN Trang - - chương trình liệu nằm riêng ROM RAM truớc đưa vào CPU để thực thi - Tổ chức nhớ chip 8051 : Không gian nhớ chip 8051 3.1 Bộ nhớ chương trình (ROM) : - Dùng để lưu trữ chương trình điều khiển cho chip 8051 hoạt động - Chip 8051 có KB ROM trong, địa truy xuất : 000H – FFFH 3.2 Bộ nhớ liệu (RAM) : - Dùng để lưu trữ liệu tham số - Chip 8051 có 128 byte RAM trong, địa truy xuất : 00H – 7FH - RAM chip 8051 chia :  RAM đa chức :  RAM định địa bit : Cho phép xử lý bit liệu riêng lẻ mà không ảnh hưởng đến bit khác byte SVTH : Đặng Minh Đức DHTD8A2_HN Trang - -  Các dãy ghi : Cho phép truy xuất liệu nhanh, lệnh truy xuất đơn giản ngắn gọn 3.3 Thanh ghi chức đặc biệt : 3.3.1 Thanh ghi A : 3.3.2 Thanh ghi B : 3.3.3 Thanh ghi từ PSW : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - - - Cờ CY (Carry Flag) : cờ nhớ  báo có nhớ/muợn bit  CY = : nhớ từ bit muợn cho bit  CY = : có nhớ từ bit có muợn cho bit - Cờ AC (Auxiliary Carry) : cờ nhớ phụ  báo có nhớ/muợn bit  AC = : nhớ từ bit muợn cho bit  AC = : có nhớ từ bit có muợn cho bit - Cờ F0 (Flag 0) : cờ zero  có nhiều mục đích dành cho ứng dụng khác nguời lập trình (dự trữ cho phiên chip tương lai) - Bit RS0, RS1 (Register Select) : bit chọn dãy ghi  cho phép xác định dãy ghi tích cực (hay dãy ghi mà ghi có tên R0-R7) - Cờ OV (Overflow) : cờ tràn  báo kết tính toán phép toán số học (phép toán có dấu) có nằm khoảng từ -128 đến +127 hay không  OV = : -128  kết  +127  OV = : kết < -128 kết > +127 Nói cách khác : Đối với phép cộng OV=1 có nhớ từ bit nhớ từ bit có nhớ từ bit nhớ từ bit Đối với phép trừ OV=1 có mượn cho bit mượn cho bit có mượn bit mượn bit - Cờ P (Parity) : cờ chẵn lẻ  báo số chữ số ghi A số chẵn hay số lẻ (trong chip 8051 sử dụng chế độ parity chẵn)  P = : số chữ số ghi A số chẵn (parity chẵn)  P = : số chữ số ghi A số lẻ (parity chẵn) 3.3.4 Thanh ghi SP : - Ngăn xếp vùng nhớ dùng để lưu trữ tạm thời liệu - Đối với chip 8051 vùng nhớ đuợc dùng để làm ngăn xếp giữ RAM nội SVTH : Đặng Minh Đức DHTD8A2_HN Trang - - - Để sử dụng ngăn xếp ta phải khởi động ghi SP (nghĩa nạp giá trị cho ghi SP)  vùng nhớ ngăn xếp có địa bắt đầu : (SP)+1 địa kết thúc : 7FH - Nếu không khởi động SPvùng nhớ ngăn xếp có địa bắt đầu : 08H địa kết thúc : 7FH (chế độ mặc định) 3.3.5 Thanh ghi DPTR : 3.3.6 Thanh ghi port xuất nhập : 3.3.7 Thanh ghi port nối tiếp : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - - 3.3.8 Thanh ghi định thời : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 10 - Chức : so sánh giá trị ghi với Nếu không giảm giá trị ghi nhảy tới vị trí nhãn.Nếu thoát khỏi câu lệnh Lưu ý : lập trình ta nên ghi có giá trị dương Lệnh SETB : Cấu trúc : SETB bit Chức : thiết lập mức trạng thái cao cho bit thoát khỏi câu lệnh Lưu ý : bit mức đưa lên mức 1, mức giữ nguyên Lệnh CLR : Cấu trúc : CLR bit Chức : thiết lập mức trạng thái cho bit thoát khỏi câu lệnh Lưu ý : bit mức đưa xuống mức 0, mức giữ nguyên Có thể thay bit ghi nà tất bit ghi đưa xuống mức Lệnh INC : Cấu trúc : INC ghi Chức : tăng giá trị ghi lên thoát khỏi câu lệnh Lệnh LJMP : Cấu trúc : LJMP nhãn Chức : nhảy tới vị trí nhãn Lưu ý : nhảy toàn chương trình 10.Lệnh SJMP : Cấu trúc : SJMP nhãn Chức : nhảy tới vị trí nhãn Lưu ý : nhảy phạm vi 128byte 127byte sau câu lệnh 11.Lệnh RET : Cấu trúc : RET Chức : kết thúc chương trình đưa trỏ vị trí lúc gọi chương trình 12.Lệnh LCALL : Cấu trúc : LCALL nhãn Chức : gọi chương trình vị trí nhãn Lưu ý : gọi toàn chương trình Từ câu lệnh ta áp dụng để lập trình cho VĐK 8051 SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 17 - PHẦN II : THIẾT KẾ MẠCH NGUỒN CHO VI ĐIỀU KHIỂN BẰNG PHẦN MỀM ALTIUM DESIGNER I THIẾT KẾ CHI TIẾT KHỐI NGUỒN Sơ đồ nguyên lý mạch nguồn Linh kiện sử dụng thiết kế khối nguồn :  biến áp 220VAC/9-12VAC/2A  diode 1N4007 1A  tụ 470µF/25V, tụ 100µF tụ 104  điện trở 1K, led 5V  IC ổn áp LM7805 Nguồn đầu vào điện lưới 220VAC, qua biến áp hạ xuống 12VAC, qua cầu chỉnh lưu điện áp chiều : 12 VDC Từ đưa vào IC ổn áp LM7805 cho đầu 5VDC ổn định (thực tế khoảng điện áp dao động từ 4.8V – 5.4 V) IC LM7805 có chân cho ta kết nối với : Chân chân nguồn đầu vào, chân chân GND , chân chân lấy điện áp - Chân - (Chân điện áp đầu vào IN/GND) : Đây chân cấp nguồn đầu vào cho LM7805 hoạt động Giải điện áp cho phép đầu vào lớn 40V - Chân ( Chân điện áp đầu OUT) : Chân cho lấy điện áp đầu ổn định 5V Đảm bảo đầu ổn định nằm giải từ (4.75V đến 5.25V) - Đảm bảo tản nhiệt tốt cho LM7805 chạy với tải Khi công suất tăng lên LM7805 linh kiện bán dẫn công suất nên nóng tải lớn Để tránh hỏng linh kiện cho linh kiện hoạt động nhiệt độ bình thường cần phải tản nhiệt tốt - Tụ C1, C2 lọc nguồn đầu vào cho LM7805 Tụ tụ hóa phải có điện dung đủ lớn để lọc phẳng điện áp đầu vào điện áp tụ chịu đựng phải lớn điện áp đầu vào nên sử dụng tụ 470µF/25V - Tụ C3, C4 lọc nguồn đầu cho 7805 Tụ C3 tụ hóa, tụ C4 tụ gốm, tụ có điện dung nhỏ dùng để lọc nguồn đầu cho băng phẳng Trong thành phần chiều có sóng điều hòa bậc 2, sóng nhấp nhô có tần số cao, nhiễu bên Các sóng ảnh hưởng đến hoạt động SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 18 - 7805 Nếu mạch tồn thành phần sóng làm sai sót khó phát mạch làm cho mạch hoạt động không ổn định Tụ điện đóng vai trò lọc nguồn san phẳng điện áp Để lọc tần số cao điện dung tụ điện nhỏ - Chống dòng ngược hay bảo vệ mạch chống dòng ngược mạch phải có mạch chiều Tránh trường hợp người sử dụng lắp ngược nguồn sinh hỏng mạch cháy mạch Diode D5 mạch có tác dụng bảo vệ tượng lắp ngược nguồn đầu vào để bảo vệ mạch Cái quan trọng mạch chiều II VẼ MẠCH TRONG ALTIUM DESIGNER Vẽ sơ đồ mạch điện phía linh kiện có sẵn thư viện Altium : Sau vẽ mạch nguyên lý, chuyển mạch nguyên lý sang mạch mô PCB, ta : - Mạch nguồn dạng 2D : Điện áp 220VAC vào cổng J1 5VDC cổng J2 SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 19 - - Mạch nguồn mô 3D : - Mạch in phủ đồng GND sẵn sàng cho trình làm mạch thật : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 20 - PHẦN III – IV : GHÉP NỐI HIỂN THỊ TỐC ĐỘ ĐỘNG CƠ TRÊN LCD - LẬP TRÌNH ĐIỀU KHIỂN TỐC ĐỘ ĐỘNG CƠ LCD sử dụng loại 16x2 - Chân VCC, Vss, VEE : chân VCC VSS cáp dương nguồn 5v mass tương ứng Chân VEE dùng để điều khiển độ tương phản - Chân chọn ghi RS(Register Select) : có ghi LCD chân RS dùng để chọn ghi Nếu RS=0 ghi mã lệnh chọn phép người dùng gửi lệnh lên chẳng hạn xoá hình, đưa trỏ đầu dòng… Nếu RS=1 ghi liệu chọn cho phép người dùng gửi liệu cần hiển thị lên LCD - Chân đọc/ghi (R/W) : đầu vào đọc/ghi cho phép người dùng đọc thông tin từ LCD R/W=1 ghi thông tin lên LCD - Chân cho phép E(Enable) : chân cho phép sử dụng LCD để chốt liệu Khi liệu cấp đến chân liệu xung mức cao xuống thấp phải áp đến chân để LCD chốt liệu chân liệu Xung có độ rộng tối thiểu 450ns - Chân D0-D7 : đường liệu bit, dùng để gửi thông tin lên LCD đọc nội dung ghi LCD Để hiển thị chữ số, gửi mã ASCII chữ từ A đến Z , a đến z chữ số từ đến đến chân bật RS=1 Các bước để lập trình điều khiển LCD : Bước : Khởi tạo cho LCD Bước : Gán giá trị cho bit điều khiển chân RS, RW, EN cho phù hợp với chế độ : hiển thị kí tự lên LCD hay thực lệnh LCD Bước : Xuất byte liệu cổng điều khiển bit liệu LCD Bước : Kiểm tra cờ bận xem LCD sẵn sàng nhận liệu chưa Bước : Quay vòng lại bước Các hệ truyền động rời rạc thường thực nhờ động chấp hành đặc biệt gọi động bước Động bước loại động điện có nguyên lý ứng dụng khác biệt với đa số loại động điện thông thường Chúng thực chất động đồng dùng để biến đổi tín hiệu điều khiển dạng xung điện rời rạc thành chuyển động góc quay chuyển động Rotor có khả cố định Rotor vào vị trí cần thiết Động bước làm việc nhờ chuyển mạch điện tử đưa tín hiệu điều khiển vào Stator (phần ứng) theo thứ tự định tần số định Tổng số góc quay Rotor (phần cảm) tương ứng với số lần chuyển mạch, chiều quay tốc độ quay Rotor phụ thuộc vào thứ SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 21 - tự chuyển đổi tần số chuyển đổi Khi xung điện áp đặt vào cuộn dây Stator động bước, Rotor động quay góc định, góc bước quay động Vậy để điều khiển động quay liên tục việc cấp xung cho cuộn dây Có cách điều khiển động bước : - Điều khiển full bước - Điều khiển nửa bước Ở sử dụng cách điều khiển full bước, có nghĩa lần cấp điện áp cho cuộn dây, động quay đủ bước (5.625 độ), thứ tự cấp xung điều khiển sau (thứ tự từ trái sang phải : cuộn -> cuộn -> cuộn -> cuộn 4) : Bước : 0011 Bước : 0110 Bước : 1100 Bước : 1001 Để điều khiển động quay nửa bước, thứ tự xung cấp vào cuộn dây sau (thứ tự từ trái sang phải : cuộn -> -> cuộn cuộn -> -> cuộn 4) : Bước 1: 0110 1110 Bước 2: 1100 1101 Bước 3: 1001 1011 Bước 4: 0011 0111 ULN 2003 vi mạch đệm, chất cấu tạo mảng darlington chịu dòng đện lớn điện áp cao, có chứa cặp transistor NPN ghép darlington cực góp hở với cực phát chung Mỗi kênh ULN 2003 có diode chặn sử dụng trường hợp tải có tính cảm ứng, ví dụ relay ULN 2003 có khả điều khiển kênh riêng biệt, nối trực tiếp với vi điều khiển 5V Bên cạnh đó, kênh ULN 2003 chịu dòng điện lớn khoảng thời gian dài lên tới 500mA với biên độ đỉnh lên tới 600mA Ứng dụng ULN 2003 sử dụng mạch đệm điều khiển động chiều, động bước, khối hiển thị ma trận led, SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 22 - Code lập trình : /* Khai báo tiền định */ #include #include // Khai báo kết nối với LCD sbit LCD_RS = P2^0; sbit LCD_EN = P2^1; #define LCD_DATA P0 // Chân data LCD // Trễ theo giá trị nhập vào dùng timer void delay_ms(unsigned int t) { unsigned int i; for(i=0;i cuộn dây P2_2 = 0; P2_3 = 1; P2_4 = 0; // Led quay thuận sáng P2_5 = 1; // Led quay nghịch tắt } if(P2_3==0) // Chiều nghịch { chieu_step(t/4,2,&s); P2_2 = 1; P2_3 = 0; P2_4 = 1; // Led quay thuận tắt P2_5 = 0; // Led quay nghịch sáng } else SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 26 - { P2_4 = 0; // Led quay thuận sáng P2_5 = 1; // Led quay nghịch tắt chieu_step(t/4,1,&s); // Chiều quay thuận mặc định while(!P2_2) break; } sprintf(dt," %.1f V/P ",d); // Hiển thị tốc độ d LCD ghi_lenh(0xc0); ghi_chuoi(dt); // Các nút nhấn điều khiển StepMotor if (P1_0==0 && dem==0xff) // Start/stop { if (t==0) t=400; // Đang dừng gán t = 400, tốc độ quay 150V/P else t=0; // Đang chạy gán t = 0, động dừng dem=0; // Về để sẵn sàng cho nút khác } if (P1_1==0 && dem==0xff && t 600, t khác { t=t+10; // Tăng thời gian delay t lên 10, giảm tốc dem=0; // Về để sẵn sàng cho nút khác } if (P1_2==0 && dem==0xff && t>300) // Khống chế không cho t < 300 { t=t-10; // Giảm thời gian delay t 10, tăng tốc dem=0; // Về để sẵn sàng cho nút khác } if (P1==0xff) dem=P1; // Set P1 lên } } SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 27 - PHẦN V : MÔ PHỎNG MẠCH ĐIỀU KHIỂN VÀ MẠCH LỰC Mạch điều khiển mô phần mềm Altium Designer : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 28 - Linh kiện sử dụng thiết kế bao gồm :            vi điều khiển (AT89C52) mạch đệm điều khiển động bước (ULN 2003) hình LCD (16x2) nút nhấn điện trở điện trở thạch anh 12MHz đèn led tụ gốm tụ hóa diode 1N4007 1A IC ổn áp LM7805 Chạy thử mạch mô phần mềm Proteus Professional : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 29 - KẾT LUẬN Ngày nay, ứng dụng vi điều khiển sâu vào đời sống sinh hoạt sản xuất người Thực tế hầu hết thiết bị điện dân dụng có góp mặt vi điều khiển Ứng dụng vi điều khiển thiết kế hệ thống làm giảm chi phí thiết kế hạ giá thành sản phẩm đồng thời nâng cao tính ổn định thiết bị hệ thống Qua thời gian nghiên cứu thực đề tài, em phần nắm nguyên tắc sử dụng, làm việc ứng dụng vi điều khiển 8051 Đặc biệt đồ án nghiên cứu giới thiệu vài ứng dụng hữu ích vi điều khiển 8051 điều khiển động bước, đo tốc độ động hiển thị hình LCD Mặc dù cố gắng việc nghiên cứu thực đồ án, thời gian hiểu biết em hạn chế nên đồ án dừng lại mức đơn giản, chưa hoàn toàn tối ưu hóa Đồng thời, đồ án chắn không tránh khỏi thiếu sót nên em mong nhận ý kiến nhận xét, đóng góp từ quý thầy cô Em xin chân thành cảm ơn! SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 30 - PHỤ LỤC Tài liệu tham khảo : - Giáo trình Vi Điều Khiển Và Ứng Dụng (Trường Đại Học Kinh Tế Kỹ Thuật Công Nghiệp) - Kỹ Thuật Vi Xử Lý Và Lập Trình Asemnly Cho Hệ VI Xử Lý (tg Đỗ Xuân Tiến, NXB Khoa Học & Kỹ Thuật, 2001) - Giáo Trình 8051 (tg Tống Văn On, DHBK TPHCM) - Và số tài liệu vi điều khiển sưu tầm từ diễn đàn điện tử nước thông qua internet (codientu.org, dientuchiase.com, mcu.banlinhkien.com, ) Các phần mềm sử dụng : - Altium Designer (in AD16) - Proteus Professional - Keil uVision5 SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 31 - [...]... chương trình : Địa chỉ 0000H SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 14 - III ỨNG DỤNG CỦA VI ĐIỀU KHIỂN 8051 Kết nối VĐK 8051 với một số ngoại vi đơn giản : + VĐK giao tiếp led đơn và phím nhấn + Kết nối VĐK với Rơle + Kết nối VĐK với LCD + Kết nối VĐK với ma trận led + Điều khiển động cơ DC + Điều khiển động cơ bước Vi điều khiển là một IC lập trình, vì vậy Vi điều khiển cần được lập trình trước... trợ của máy vi tính, người vi t chương trình có thể vi t chương trình cho vi điều khiển bằng các ngôn ngữ lập trình cấp cao, sau khi vi c vi t chương trình được hoàn tất, các trình biên dịch sẽ chuyển các câu lệnh cấp cao thành mã máy một cách tự động Các mã máy này sau đó được đưa (nạp) vào bộ nhớ ROM của Vi điều khiển, Vi điều khiển sẽ tìm đến đọc các lệnh từ ROM để thực hiện chương trình Bản thân... -> cuộn 4) : Bước 1 : 0011 Bước 2 : 0110 Bước 3 : 1100 Bước 4 : 1001 Để điều khiển động cơ quay nửa bước, thứ tự các xung cấp vào các cuộn dây như sau (thứ tự từ trái sang phải : cuộn 1 -> -> cuộn 4 cuộn 1 -> -> cuộn 4) : Bước 1: 0110 1110 Bước 2: 1100 1101 Bước 3: 1001 1011 Bước 4: 0011 0111 3 ULN 2003 là một vi mạch đệm, bản chất cấu tạo là các mảng darlington chịu được dòng đện lớn và điện áp cao,... thiết kế hệ thống làm giảm chi phí thiết kế và hạ giá thành sản phẩm đồng thời nâng cao tính ổn định của thiết bị và hệ thống Qua thời gian nghiên cứu thực hiện đề tài, em đã phần nào nắm được căn bản nguyên tắc sử dụng, làm vi c và các ứng dụng của vi điều khiển 8051 Đặc biệt đồ án đã nghiên cứu và giới thiệu về một vài ứng dụng hữu ích của vi điều khiển 8051 đó là điều khiển động cơ bước, đo tốc độ động. .. điều khiển động cơ quay liên tục thì chúng ta chỉ vi c cấp xung lần lượt cho các cuộn dây Có 2 cách điều khiển động cơ bước là : - Điều khiển full bước - Điều khiển nửa bước Ở đây sử dụng cách điều khiển full bước, có nghĩa là mỗi lần cấp điện áp cho các cuộn dây, động cơ sẽ quay đủ 1 bước (5.625 độ), thứ tự cấp xung điều khiển như sau (thứ tự từ trái sang phải : cuộn 1 -> cuộn 2 -> cuộn 3 -> cuộn 4) :. .. } if (P1==0xff) dem=P1; // Set P1 lên 1 } } SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 27 - PHẦN V : MÔ PHỎNG MẠCH ĐIỀU KHIỂN VÀ MẠCH LỰC Mạch điều khiển mô phỏng bằng phần mềm Altium Designer : SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 28 - Linh kiện sử dụng thiết kế bao gồm :            1 vi điều khiển (AT89C52) 1 mạch đệm điều khiển động cơ bước (ULN 2003) 1 màn hình LCD (16x2) 6 nút nhấn... chương trình con và đưa con trỏ về vị trí lúc gọi chương trình con 12.Lệnh LCALL : Cấu trúc : LCALL nhãn Chức năng : gọi một chương trình con bắt đầu từ vị trí của nhãn Lưu ý : có thể gọi trong toàn chương trình Từ các câu lệnh trên ta áp dụng để lập trình cho VĐK 8051 SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 17 - PHẦN II : THIẾT KẾ MẠCH NGUỒN CHO VI ĐIỀU KHIỂN BẰNG PHẦN MỀM ALTIUM DESIGNER I THIẾT KẾ CHI... muốn thực hiện phải có các chương trình mô phỏng dành riêng SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 15 - Chương trình cho Vi điều khiển có thể vi t bằng C++, C, Visual Basic, hoặc băng các ngôn ngữ cấp cao khác Tuy nhiên hợp ngữ Assembler được đa số người dùng Vi điều khiển sử dụng để lập trình, vì lí do này chúng tôi chọn Assembly để hướng dẫn vi t chương trình cho Vi điều khiển Assembly là một ngôn... hợp với các chế độ : hiển thị kí tự lên LCD hay thực hiện 1 lệnh của LCD Bước 3 : Xuất byte dữ liệu ra cổng điều khiển 8 bit dữ liệu của LCD Bước 4 : Kiểm tra cờ bận xem LCD sẵn sàng nhận dữ liệu mới chưa Bước 5 : Quay vòng lại bước 1 2 Các hệ truyền động rời rạc thường được thực hiện nhờ động cơ chấp hành đặc biệt gọi là động cơ bước Động cơ bước là một loại động cơ điện có nguyên lý và ứng dụng khác... biệt với đa số các loại động cơ điện thông thường Chúng thực chất là một động cơ đồng bộ dùng để biến đổi các tín hiệu điều khiển dưới dạng các xung điện rời rạc kế tiếp nhau thành các chuyển động góc quay hoặc các chuyển động của Rotor và có khả năng cố định Rotor vào những vị trí cần thiết Động cơ bước làm vi c được là nhờ các bộ chuyển mạch điện tử đưa các tín hiệu điều khiển vào Stator (phần ứng) ... chieu_step(t/4 ,2, &s); P2 _2 = 1; P2_3 = 0; P2_4 = 1; // Led quay thuận tắt P2_5 = 0; // Led quay nghịch sáng } else SVTH : Đặng Minh Đức DHTD8A2_HN Trang - 26 - { P2_4 = 0; // Led quay thuận sáng P2_5 =... else d=0; if(P2 _2= =0) // Chiều thuận { chieu_step(t/4,1,&s); // Delay t/4 -> cuộn dây P2 _2 = 0; P2_3 = 1; P2_4 = 0; // Led quay thuận sáng P2_5 = 1; // Led quay nghịch tắt } if(P2_3==0) // Chiều... nguồn :  biến áp 22 0VAC/9-12VAC/2A  diode 1N4007 1A  tụ 470µF /25 V, tụ 100µF tụ 104  điện trở 1K, led 5V  IC ổn áp LM7805 Nguồn đầu vào điện lưới 22 0VAC, qua biến áp hạ xuống 12VAC, qua cầu chỉnh

Ngày đăng: 19/12/2016, 21:44

Từ khóa liên quan

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

Tài liệu liên quan