Đồ án môn học Hệ thống nhúng và giao tiếp máy tính "Điều khiển động cơ và giao tiếp máy tính" được trình bày với các nội dung: Các phương pháp điều khiển động cơ, vi điều khiển ATmega16, giao tiếp vi điều khiển với máy tính, thiết kế phần cứng cho đề tài, lập trình cho vi điều khiển. Để tìm hiểu rõ hơn về nội dung chi tiết, mời các bạn cùng tham khảo đề tài.
HỌC VIỆN CƠNG NGHỆ BƢU CHÍNH VIỄN THƠNG CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ MINH KHOA ĐIỆN TỬ II ĐỒ ÁN MÔN HỌC HỆ THỐNG NHÚNG VÀ GIAO TIẾP MÁY TÍNH NGÀNH KỸ THUẬT ĐIỆN-ĐIỆN TỬ NIÊN KHĨA: 2007-2012 CHUYÊN ĐỀ: ĐIỀU KHIỂN ĐỘNG CƠ VÀ GIAO TIẾP M ÁY T ÍNH GV hƣớng dẫn: THS Phạm Thế Duy THS Tơn Thất Bảo Đạt Nhóm thực hiện: Nhóm : Lê Đức Thuận Lê Văn Kiểm Lê Văn Hoá Đặng Vân Nam Phạm Xuân kỳ D07DTA1 LỚP : TP.HỒ CHÍ MINH -2011 ỜI MỞ Đ U Em xin chân thành cảm ơn Th.s Phạm Thế Duy & Th.s Tôn Thất Đạt tận tình hƣớng dẫn, hỗ trợ cho chúng em ý tƣởng, tài liệu suốt trình thực đề t i Ngày lĩnh vực khoa học kỹ thuật xuất khái niệm Kỹ thuật số vi xử lý v điều khiển, với trợ giúp máy tính kỹ thuật vi xử lý v điều khiển có pháttriển mạnh mẽ đặc biệt phát triển nhanh chóng họ vi xử lý v điều khiển với tính Để phục vụ tốt cho môn học chúng em thực đề t i: Đo v Điều khiển Tốc Độ Động Cơ với mục đích tích luỹ kiến thức đặc biệt kinh nghiệm trình lắp mạch thực tế song thời gian kiến thức có hạn, nên mạch thiết kế nhiều thiếu sót Chúng em mong nhận đƣợc góp ý thầy để nâng cao chất lƣợng thiết kế, chúng em xin chân thành cảm ơn ! Tp Hồ Chí Minh, / 2011 Sinh viên: MỤC LỤC LỜI MỞ Đ U CHƢƠNG I: CÁC PHƢƠNG PHÁP ĐIỀU KHIỂN ĐỘNG CƠ CHƢƠNG II: VI ĐIỀU KHIỂN ATMEGA16 2.1 Giới thiệu chung 2.2 Cấu trúc nhân AVR 2.2.1 ALU 2.2.2 Thanh ghi trạng thái 2.2.3 Con trỏ ngăn xếp (SP 2.2.4 Quản lý ngắt 2.3 Cấu trúc nhớ 2.3.1 Bộ nhớ chƣơng trình (Bộ nhớ Flash) 2.3.2 Bộ nhớ liệu SRAM 2.3.2 Bộ nhớ liệu SRAM 2.3.3 Bộ nhớ liệu EEPROM 2.4 Các cổng vào (I/O) 2.4.1 Thanh ghi DDRx 2.4.2 Thanh ghi PORTx 2.4.3 Thanh ghi PINx 2.5 Bộ định thời 2.5.1 Các ghi Đơn vị đếm Đơn vị so sánh ngõ 2.5.4 Mô tả ghi 2.6 USART 2.6.1 Tạo xung clock Định dạng khung truyền 2.6.3 Khởi tạo USART 2.6.4 Truyền thông liệu-bộ truyền USART 2.6.5 Nhận liệu-bộ nhận USART 2.7 Bộ biến đổi A/D 2.7.1 ADMUX: Multiplexer select register 2.7.2 ADCSR-ADC control and status register 2.7.3 Thanh ghi liệu ACDH ADCL 2.7.4 Nguyên tắc hoạt động lập trình điều khiển CHƢƠNG III: GIAO TIẾP VI ĐIỀU KHIỂN VỚI MÁY TÍNH 3.1 Chuẩn RS232 3.2 Cổng COM 3.3 Truyền thông hai nút CHƢƠNG IV: THIẾT KẾ PHẦN CỨNG CHO ĐỀ TÀI 4.1 Sơ đồ thiết kế tổng quát 4.2 Một số linh kiện sử dụng mạch 4.2.1 Cảm biến nhiệt độ lm35 4.2.2 IC max 232 4.2.3 Màn hình hiển thị( LCD 16x2) 4.3 Tính tốn thiết kế cho khối 4.3.1 Khối xử lý trung tâm 4.3.2 Khối phím điều khiển 4.3.3 Khối hiển thị 4.3.5 Khối mạch thu phát hồng ngoại 4.3.6 khối mạch khuếch đại vi sai dòng điện 4.3.7 khối mạch cảm biến điện áp 4.3.8 khối mạch cơng suất CHƢƠNG V: LẬP TRÌNH CHO VI ĐIỀU KHIỂN CHƢƠNG I: CÁC PHƢƠNG PHÁP ĐIỀU KHIỂN ĐỘNG CƠ Giới thiệu chung Điều khiển tốc độ yêu cầu cần thiết tất yếu máy sản xuất Ta biết hầu hết máy sản xuất đòi hỏi có nhiều tốc độ, tùy theo cơng việc, điều kiện làm việc mà ta lựa chọn tốc độ khác để tối ƣu hố q trình sản xuất Muốn có Đƣợc tốc độ khác máy ta thay đổi cấu trúc học máy nhƣ tỉ số truyền thay đổi tốc độ động truyền động Ở khảo sát theo phƣơng pháp thay đổi tốc độ động truyền động.Tốc độ làm việc động ngƣời điều khiển quy định đƣợc gọi tốc độ đặt Trong trình làm việc, tốc độ động bị thay đổi tốc độ động phụ thuộc rấ tnhiều vào thông số nguồn, mạch tải nên thông số thay đổi tốc độ động bị thay đổi theo Tình trạng gây sai số tốc độ khơng cho phép Để khắc phục ngƣời ta dùng phƣơng pháp ổn định tốc độ Độ ổn định tốc độ ảnh hƣởng quan trọng đến giải điều chỉnh (phạm vi điều chỉnh tốc độ) khả tải động Độ ổn định cao giải điều chỉnh có khả mở rộng mơ men q tải lớn Có nhiều phƣơng pháp để điều chỉnh tốc độ động nhƣ: - Điều chỉnh tham số - Điều chỉnh điện áp nguồn - Điều chỉnh cấu trúc sơ đồ Ở đề cập đến phƣơng pháp điều khiển tốc độ động chiều Các phƣơng pháp điều khiển động chiều 2.1 điều chỉnh tốc độ cách điều chỉnh điện áp Cách điều khiển ta thay đổi tốc độ động DC thay đổi điện áp đặt vào hai đầu động tốc độ củng thay đổi theo Ƣu điểm phƣơng pháp n y l mạch điện dễ thực mạch điện đơn giản đạt hiệu cao cho động hoạt động với công suât lớn Nhƣợc điểm phƣơng pháp n y động dễ mô men thay đổi tốc độ từ cao xuống thấp đạt hiệu khơng cao cho động chạy tốc độ thấp có tải kèm Hình 1.2.1 Điều khiển tốc độ động điện áp 2.2 Điều khiển tốc độ động xung pwm Đối với loại động kích từ độc lập dùng nam châm vĩnh cữu, để thay đổi tốc độ, ta thay đổi điện áp cung cấp cho roto Việc cấp áp chiều thay đổi thƣờng khó khăn, ngƣời ta dùng phƣơng pháp điều xung (PWM) Ƣu điểm biện pháp n y điều khiển tƣơng đối xác tốc độ động cơ, thay đổi đƣợc tốc độ mà không làm giảm mô men động Nhƣợc điểm phƣơng pháp n y l mạch điều khiển phức tạp xung điều khiển đƣợc số hóa, mạch điều khiển loại n y có giá th nh cao Hình 2 Điều khiển động pwm CHƢƠNG II: VI ĐIỀU KHIỂN ATMEGA 16 2.1 Giới thiệu chung ATmega16 l vi điều khiển bit dựa kiến trúc RISC Với khả thực lệnh vòng chu kỳ xung clock, ATmega16 đạt đƣợc tốc độ 1MIPS MHz (1 triệu lệnh/s/MHz) Dƣới l sơ đồ khối ATmega16 Hình 2.2.1: Sơ đồ cấu trúc ATmega16 ATmega16 có đặc điểm sau: 16KB nhớ Flash với khả đọc ghi, 512 byte nhớ EEPROM, 1KB nhớ SRAM, 32 ghi chức chung, 32 đƣờng vào chung, định thời/bộ đếm, ngắt nội ngắt ngoại, USART, giao tiếp nối tiếp dây, kênh ADC 10 bit, ATmega 16 hỗ trợ đầy đủ chƣơng trình v cơng cụ phát triển hệ thống nhƣ: trình dịch C, macro assemblers, chƣơng trình mơ phỏng/sửa lỗi, kit thử nghiêm, 2.2 Cấu trúc nhân AVR CPU AVR có chức bảo đảm hoạt động xác chƣơng trình Do phải có khả truy cập nhớ, thực q trình tính tốn, điều khiển thiết bị ngoại vi quản lý ngắt Hình 2.2.2: Cấu trúc tổng quát AVR sử dụng cấu trúc Harvard, tách riêng nhớ v bus cho chƣơng trình v liệu Các lệnh đƣợc thực chu kỳ xung clock Bộ nhớ chƣơng trình đƣợc lƣu nhớ Flash 10 2.2.1 ALU ALU làm việc trực tiếp với ghi chức chung Các phép toán đƣợc thực chu kỳ xung clock Hoạt động ALU đƣợc chia làm loại: đại số, logic theo bit 2.2.2 Thanh ghi trạng thái Đây l ghi trạng thái có bit lƣu trữ trạng thái ALU sau phép tính số học logic Hình 2.2.3 : Thanh ghi trạng thái SREG C: Carry Flag ;cờ nhớ (Nếu phép tốn có nhớ cờ đƣợc thiết lập) Z: Zero Flag ;Cờ zero (Nếu kết phép toán 0) N: Negative Flag (Nếu kết phép toán âm) V: Two’s complement overflow indicator (Cờ n y đƣợc thiết lập tràn số bù 2) V, For signed tests (S=N XOR V)S: N H: Half Carry Flag T: Transfer bit used by BLD and BST instructions(Đƣợc sử dụng l m nơi chung gian lệnh BLD,BST) I: Global Interrupt Enable/Disable Flag (Đây l bit cho phép to n cục ngắt Nếu bit trạng thái logic khơng có ngắt n o đƣợc phục vụ.) 2.2.3 Con trỏ ngăn xếp (SP) Là ghi 16 bit nhƣng đƣợc xem nhƣ hai ghi chức đặc biệt bit Có địa ghi chức đặc biệt $3E (Trong nhớ RAM $5E) Có nhiệm vụ trỏ tới vùng nhớ RAM chứa ngăn xếp 11 Ghi CGRAM/ Write data Ghi liệu vào CGRAM DDRAM 40us 1 Read data Đọc liệu từ CGRAM DDRAM 40us DDRAM Đọc CGRAM/ DDRAM c) Các bit viết tắt mã lệnh Tên bit Mô tả I/D 0=khơng dịch chuyển vị trí trỏ 1=dịch chuyển vị trí trỏ S =0 khơng dịch chuyển hiển thị =1 dịch chuyển hiển thị D 0=tắt hiển thị =1 bật hiển thị C 0=tắt trỏ =1 bật trỏ B 0=con trỏ không nhấp nháy =1 trỏ nhấp nháy S/C 0=di chuyển trỏ =1 dịch chuyển hiển thị R/L 0= dịch trái =1 dịch phải DL 0=chế độ 4bit liệu =1 chế độ 8bit liệu N 0=1 dòng 1= dòng F 0= font 5x7 1= font 5x10 BF 0= không bận 1= bận 39 4.3 Tính tốn thiết kế cho khối hình 4.5 : sơ đồ ngun lí mạch 40 4.3.1 Khối xử lý trung tâm VDK chíp AVR ATmega16 : Mạch tạo reset 41 Để đảm bảo tạo reset xung reset phải d i độ rộng xung tối thiểu trst =1,5 s ATmega16 có Vrst = 0,1VCC 0,9VCC trst =1,5 s V t t / rst V CC e ln V CC V rst t ln V CC V rst 1,5s ln 0,9.5 Mà RC RC 1,424.10-5 Chọn C = 100nF R = 10K Mạch dao động Hình 4.6: Mạch tạo dao động 42 4.3.2 Khối phím điều khiển Hình4.7: Sơ đồ mạch phím nhấn Chức bàn phím: dùng để thiết lậpt độ ẩm khống chế Nút thứ phím set thiết lập giá trị khởi động mạch Nút thứ phím up tăng giá trị đặt Nút thứ phím dow giảm giá trị đặt Nút thứ phím exit thiết lập giá trị xong nhấn phím n y để bắt đầu đo v điều khiển 43 4.3.3 Khối hiển thị Hình4.8 : hình LCD 16x2 4.3.4 Khối mạch nguồn ổn áp Hình 4.9: Sơ đồ thiết kế khối nguồn ổn áp Khối ổn áp với nhiệm vụ tạo điện áp ổn định cung cấp cho mạch Trong mạch sử dụng vi xử lý cảm biến nhiệt độ chuyển đổi ADC có yêu cầu cao ổn định điện áp nên mạch ổn áp thiết kế phải đạt chât lƣợng tốt đổ ổn định củng nhƣ công suất đáp ứng Mạch có sơ đồ thiết kế nhƣ hình BR1 ốt cầu dùng để biến đổi dòng xoai chiều thành dòng điện chiều Ta sử dụng 4diot 1N4007 với tham số nhƣ sau: Umax=100V,Imax=2A IC ổn áp LM7805 l ic sử dụng thông dụng mạch điện ổn áp nguồn với đặc tính cho điện áp tƣơng đối ổn định công suất đáp ứng tốt cho mạch dùng vi điều khiển (Lm7805 Uout=5V,Imax=1.5A) 44 C1;C có nhiệm vụ dùng để lọc nhiểu tần số cao tụ n y thƣờng dùng loại khơng phân cực có giá trị điện dung nhỏ Ta chon tụ sứ có giá trị C= 0.1uf (104) Tụ C2, C3 dùng để lọc nguồn cho dòng điện bớt nhấp nhơ trƣớc đƣa v o IC ổn áp làm giảm thời gian độ bật nguồn Diot led dùng để báo hiệu R1 điện trở hạn chế dòng qua Led giá trị n y ta thƣờng chọn 330 Ohm, ta chọn R1=1k led hoạt động với thời gian dài nên ta hạn chế cơng suất để kéo dài tuổi thọ (Iled= 10-30 mA Uled=1.7-2.5V) 4.3.5 Khối thu phát hồng ngoại Hình 4.9: Sơ đồ thiết kế Nhiệm vụ khối n y đếm số vòng quay motor truyền tín hiệu nhận đƣợc tới trung tâm xử lý Nguyên lý làm việc khối đơn giản bên phát liên tục phát sóng hồng ngoại Bên thu nhận tín hiệu sóng led thu ma nhận đƣợc ngỏ CLK có điện áp khoảng 0V khơng nhận đƣợc ngỏ có điện áp xấp xỉ 5V - Tính tốn giá trị Mạch phát đƣợc cấu tạo bở điện trở led phát hồng ngoại Tƣơng tụ nhƣ led phát quang led hồng ngoại hoạt động với dòng điện khoảng 10-30 mA ,điện áp 1.75-2.5V Ta có điện áp nguồn 5V nên ta dể dàng chọn đƣợc giá trị R9 giá trị phù hợp 330 ohm 45 4.3.6 Khối mạch khuếch đại vi sai dòng điện Hình: sơ đồ thiết kế Nhiệm vụ khối chuyển giá trị dòng điện chạy motor tới trung tâm xử lý Nguyên tắc hoạt động nhƣ sau: khối gồm mạch khoách đại thuật toán vi sai dùng opam ta có cơng thức tính nhƣ sau Khi ta chọn R10=R13; R11=R12 thi công thƣc dduocj viế gọn lại nhƣ sau: Vout=(Vin1-Vin2 ) Ta có Vout Umax N N Y I >Imax PWM=0 ReSET Chiều quay động Begin 51 CHƢƠNG TRÌNH CON ĐIỀU KHIỂN CHIỀU QUAY Begin Keypress 1weTFreadKey N Keypress N Keypress Y Y Quay trái=1 Quay phải=1 Quay phải=0 Quay trái=o Keypress = N Y End 52 KẾT UẬN Tài liệu tham khảo : 53 ... trúc sơ đồ Ở đề cập đến phƣơng pháp điều khiển tốc độ động chiều Các phƣơng pháp điều khiển động chiều 2.1 điều chỉnh tốc độ cách điều chỉnh điện áp Cách điều khiển ta thay đổi tốc độ động DC... CHƢƠNG V: LẬP TRÌNH CHO VI ĐIỀU KHIỂN CHƢƠNG I: CÁC PHƢƠNG PHÁP ĐIỀU KHIỂN ĐỘNG CƠ Giới thiệu chung Điều khiển tốc độ yêu cầu cần thiết tất yếu máy sản xuất Ta biết hầu hết máy sản xuất đòi hỏi có... tắc hoạt động lập trình điều khiển CHƢƠNG III: GIAO TIẾP VI ĐIỀU KHIỂN VỚI MÁY TÍNH 3.1 Chuẩn RS232 3.2 Cổng COM 3.3 Truyền thông hai nút CHƢƠNG IV: THIẾT KẾ PHẦN CỨNG CHO ĐỀ TÀI 4.1 Sơ đồ thiết