Bài tập lớn môn Vi xử lý, vi điều khiển Thiết kế bộ điều khiển tốc độ của động cơ điện một chiều được thực hiện trên vi điều khiển ATmega16 nhằm giúp cho các bạn sinh viên ngành Cơ học kỹ thuật và Tự động hóa nắm được kiến thức cơ bản về vi điều khiển này, cách đọc, viết, cách nhận biết các chân của vi điều khiển và vận dụng bài học vào thực tế. Mời các bạn cùng tham khảo.
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ BÀI TẬP LỚN Môn: Vi xử lý, vi điều khiển Đề bài: Thiết kế điều khiển tốc độ động điện chiều GVHD: PGS.TS Phạm Mạnh Thắng ThS Hồng Văn Mạnh Nhóm sinh viên: Nhóm 18 Lớp: K57M Khoa Cơ học kỹ thuật Tự động hóa Hà Nội, ngày 21/11/2015 Bài tập lớn Lời mở đầu Nước ta đang công công nghiệp hóa, tự động hóa, đổi phát triền tồn diện Phục vụ cho cơng đổi máy móc đại điều khiển vơ phức tạp; mà làm giảm tối đa góp mặt người vào q trình sản xuất Tự động hóa phát triển kéo theo công nghệ điều khiển tiên tiến phát triển đóng góp vai trị vơ quan trọng sản xuất Có thể kể đến rô bốt công nghiệp, tay máy hay dây chuyền tự động lập trình sẵn trình lớn Ở phạm vi nhỏ hơn, việc điều khiển thực cách dễ dàng với vi xử lý vi điều khiển lập trình sẵn góp mặt vơ nhiều ứng dụng thực tế sống Trong ứng dụng liên quan đến truyền động, thành phần gần khơng thể thiếu động điện, có tác dụng gây lực làm cấu chấp hành hoạt động Động điện có nhiều ứng dụng sống, sản xuất công nghiệp Việc điều khiển tốc độ chiều quay vấn đề cần giải Kết hợp với vi điều khiển, việc điều khiển động trở lên dễ dàng nhiều Xuất phát từ yêu cầu đó, nhóm chúng em nghiên cứu làm tập điều khiển động điện chiều “thiết kế điều khiển tốc độ động điện chiều” với yêu cầu điều khiển quay nhanh, quay chậm, quay thuận, quay ngược dừng Vận dụng kiến thức học trường nhóm thực vi điều khiển ATmega16 nhằm nắm vi điều khiển này, cách đọc, viết, cách nhận biết chân vi điều khiển vận dụng vào thực tế Các thành viên nhóm: - Phạm Trần Hồng - Vũ Đình Ngọc - Nguyễn Viết Bình Vi xử lý, vi điều khiển Trang Bài tập lớn Mục lục Phần I Cơ sở lý thuyết Vi điều khiển ATmega16 I Cấu trúc nhân Sơ đồ khối Ý nghĩa chân Bộ định thời II Động điện chiều 10 Cấu tạo 10 Nguyên lý làm việc 10 Phân loại 11 III Các phương pháp điều khiển động điện chiều 11 Điều khiển chiều quay động điện chiều 11 Điều khiển tốc độ động điện chiều 12 Phần II Nội dung 18 Thiết kế thi công phần cứng 18 I Sơ đồ khối 18 Sơ đồ nguyên lý mạch in 18 Mô Proteus 21 Hình ảnh mạch thực tế 22 II Viết code cho vi điều khiển 23 Phần III Kết luận 26 Vi xử lý, vi điều khiển Trang Bài tập lớn Phần I Cơ sở lý thuyết I Vi điều khiển ATmega16 ATmega16 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 tốc độ 1MIPS MHz Ngồi 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 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, … Hình Hình ảnh thực tế vi điều khiển Atmega16 Hình Sơ đồ chân ATmega16 Vi xử lý, vi điều khiển Trang Bài tập lớn Cấu trúc nhân CPU Atmega16 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 trình tính tốn, điều khiển thiết bị ngoại vi quản lý ngắt - Cấu trúc tổng quát AVR sử dụng cấu trúc Harvard, tách riêng nhớ bus cho chương trình liệu Các lệnh thực chu kỳ xung clock Bộ nhớ chương trình lưu nhớ Flash Hình Cấu trúc tổng quát Atmega16 - ALU ALU làm việc trực tiếp với ghi chức chung Các phép toán thực chu kỳ xung clock Hoạt động ALU chia làm loại: đại số, logic theo bit - Thanh ghi trạng thái Đây 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 Thanh ghi trạng thái Vi xử lý, vi điều khiển Trang Bài tập lớn Trong đó: + C: Carry Flag: cờ nhớ (Nếu phép tốn có nhớ 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ờ thiết lập tràn số bù 2) + 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 bit cho phép toàn cục ngắt Nếu bit trạng thái logic khơng có ngắt phục vụ.) - Các ghi chức chung Hình 5: Các ghi chức chung - Con trỏ ngăn xếp (SP) Là ghi 16 bit xem 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 Hình 6: Thanh ghi trỏ ngăn xếp - Quản lý ngắt Vi xử lý, vi điều khiển Trang Bài tập lớn Ngắt chế cho phép thiết bị ngoại vi báo cho CPU biết tình trạng sẵn sàng cho đổi liệu mình.Ví dụ: truyền nhận UART nhận byte báo cho CPU biết thơng qua cờ RXC, truyền byte cờ TX thiết lập … Khi có tín hiệu báo ngắt CPU tạm dừng công việc đạng thực lại lưu vị trí thực hiên chương trình (con trỏ PC) vào ngăn xếp sau trỏ tới vector phuc vụ ngắt thức chương trình phục vụ ngắt chơ tới gặp lệnh RETI (return from interrup) CPU lại lấy PC từ ngăn xếp tiếp tục thực chương trình mà trước có ngăt thực Trong trường hợp mà có nhiều ngắt yêu cầu lúc CPU lưu cờ báo ngắt lại thực ngắt theo mức ưu tiên Trong thực ngắt mà xuất ngắt xảy hai trường hợp Trường hợp ngắt có mức ưu tiên cao phục vụ Cịn mà có mức ưu tiên thấp bị bỏ qua Bộ nhớ ngăn xếp vùng SRAM từ địa 0x60 trở lên Để truy nhập vào SRAM thơng thường ta dùng trỏ X, Y, Z để truy nhập vào SRAM theo kiểu ngăn xếp ta dùng trỏ SP Con trỏ ghi 16 bit truy nhập hai ghi bit chung có địa chỉ: SPL: 0x3D/0x5D(IO/SRAM) SPH:0x3E/0x5E Khi chương trình phục vụ ngắt chương trình trỏ PC lưu vào ngăn xếp trỏ ngăn xếp giảm hai vị trí.Và trỏ ngăn xếp giảm thực lệnh PUSH Ngược lại thực lệnh POP trỏ ngăn xếp tăng thực lệnh RET RETI trỏ ngăn xếp tăng Như trỏ ngăn xếp cần chương trình đặt trước giá trị khởi tạo ngăn xếp trước chương trình gọi ngắt cho phép phục vụ Và giá trị ngăn xếp phải lớn 60H (0x60) 5FH trỏ lại vùng ghi Sơ đồ khối: Hình 7: Sơ đồ khối Vi xử lý, vi điều khiển Trang Bài tập lớn Ý nghĩa chân + ChânVCC: Chân số 10 VCC cấp điện áp nguồn cho Vi điều khiển Nguồn điện cấp khoảng +5V ± 0,5 + Chân GND: Chân số11 chân số 31 nối GND(hay nối Mass) Khi thiết kế cần sử dụng mạch ổn áp để bảo vệ cho Vi điều khiển, cách đơn giản sử dụng IC ổn áp 7805 + Port A (PA): Port A gồm chân (từ chân 33 đến 40) có chức năng: đầu vào cho chuyển đổi ADC + Port B (PB): Port PB gồm chân (từ chân đến chân 8), có chức làm đường xuất/nhập cịn có nhiều chức phụ khác + Port C (PC): Port C gồm chân (từ chân 22 đến chân 29) : Nếu giao tiếp JTAG kích hoạt điện trở PC5(TDI), PC3 (TMS) ,PC2 (TCK) kích hoạt khởi động lại (reset) + Port D (PD): Port D gồm chân (từ chân 14 đến 21):chưc xuất nhập + Chân RESET(RST): Ngõ vào RST chân ngõ vào Reset dùng để thiết lập trạng thái ban đầu cho vi điều khiển Hệ thống thiết lập lại giá trị ban đầu ngõ mức tối thiểu chu kì máy + Chân XTAL1 XTAL2: Hai chân có vị trí chân 12 13 sử dụng để nhận nguồn xung clock từ bên để hoạt động, thường ghép nối với thạch anh tụ để tạo nguồn xung clock ổn định + Chân AVCC: Nguồn cấp cho cổng A chuyển đổi ADC , chân nên nối với nguồn cấp VCC bên , chuyển đổi ADC không sử dụng Nếu chuyển đổi ADC không sử dụng , chân AVCC nên nối với nguồn qua lọc + Chân AREF: AREF chân chuẩn analog cho chuyển đổi ADC Bộ định thời Bộ định thời (timer/counter) module định thời/đếm bit, có đặc điểm sau: + Bộ đếm kênh + Xóa định thời mode so sánh + PWM + Tạo tần số + Bộ đếm kiện + Bộ chia tần 10 bit + Nguồn ngắt tràn đếm so sánh TCNT0 OCR0 ghi bit Các tín hiệu yêu cầu ngắt nằm ghi TIFR Các ngắt che ghi TIMSK Bộ định thời sử dụng xung clock nội thông qua chia xung clock chân T0 Khối chọn xung clock điều khiển việc định thời đếm dùng nguồn xung để tăng giá trị Ngõ khối chọn xung clock xem xung clock định thời Thanh ghi OCR0 so sánh với giá trị định thời/bộ đếm Kết so sánh sử dụng để tạo PWM biến đổi tần số ngõ chân OC0 Phần định thời bit đơn vị đếm song hướng lập trình Cấu trúc hình đây: Vi xử lý, vi điều khiển Trang Bài tập lớn Hình Sơ đồ đơn vị đếm + + + + + Count: tăng hay giảm TCNT0:1 Direction: lựa chọn đếm lên đếm xuống Clear: xóa ghi TCNT0 TOP: báo hiệu định thời đẫ tăng đến giá trị lớn BOTTOM: báo hiệu định thời giảm đến giá trị nhỏ Bộ so sánh bit liên tục so sánh giá trị TCNT0 với giá trị ghi so sánh ngõ (OCR0) Khi giá trị TCNT0 với OCR0, so sánh tạo báo hiệu Báo hiệu đặt giá trị cờ so sánh ngõ (OCF0) lên vào chu kỳ xung clock Nếu kích hoạt (OCIE0=1), cờ OCF0 tạo ngắt so sánh ngõ tự động xóa ngắt thực thi Cờ OCF0 xóa phần mềm Hình Sơ đồ đơn vị so sánh ngõ Mô tả ghi Thanh ghi điều khiển định thời/bộ đếm TCCR0 + Bit (FOC0): so sánh ngõ bắt buộc: bit tích cực bit WGM00 định chế độ làm việc khơng có PWM Khi đặt bit lên 1, báo hiệu so sánh bắt buộc xuất đơn vị tạo dạng sóng Vi xử lý, vi điều khiển Trang Bài tập lớn + Bit (WGM00) – bit (WGM01): chế độ tạo dạng sóng: bit điều khiển hoạt động chân OC0 Nếu hai bit COM01, COM00 đặt lên 1, ngõ OC0 hoạt động + Bit (CS02), bit (CS01), bit (CS00): chọn xung đồng hồ: ba bit dùng để lựa chọn nguồn xung cho định thời/bộ đếm Hình 10 Lựa chọn nguồn xung cho định thời Thanh ghi định thời/bộ đếm Thanh ghi định thời/bộ đếm cho phép truy cập trực tiếp vào đếm bit Thanh ghi so sánh ngõ – OCR0 Thanh ghi chứa giá trị bit liên tục so sánh với giá trị đếm Thanh ghi mặt nạ ngắt + Bit (OCIE0): cho phép ngắt báo hiệu so sánh + Bit (TOIE0): cho phép ngắt tràn đếm Thanh ghi cờ ngắt định thời Vi xử lý, vi điều khiển Trang Bài tập lớn Hình 12 Dòng điện chạy mạch cầu H chế độ quay thuận Ở chế độ quay ngược, Q1 = 1, Q2 = 0; Q3 = 1; Q4 = 0, dòng điện từ Q2 qua động Q3 xuống đất Như làm cho động quay theo chiều ngược lại Muốn cho động dừng khơng quay cho Q1, Q3 Q2, Q4 mức - Sử dụng IC chuyên dụng: IC chuyên dụng dùng để điều khiển động dễ dàng tìm thấy L293, L293D, L298, L298N, … Hình 13 IC L298 sơ đồ chân IC L298 tích hợp sẵn bên hai mạch cầu H điều khiển hai động chiều với IC L298 Hai chân OUTPUT1 OUTPUT2 cho động hai chân OUTPUT3 OUTPUT4 cho động thứ Chân INPUT1 đưa tín hiệu điều khiển động 1, chân INPUT2 đưa tín hiệu điều khiển động Để điều khiển chiều quay động chiều cần đưa chân INPUT lên mức 1, đó, với động cơ, giả sử chân OUT1 OUT2, đề điều khiển quay thuận cho OUT1 = 1, OUT2 = 0; điều khiển quay ngược cho OUT1 = 0, OUT2 = 1; dừng động cho đồng thời OUT1 = OUT2 = OUT1 = OUT2 = Với hai chân OUT3 OUT4 làm tương tự sau đưa INPUT2 lên mức Điều khiển tốc độ động điện chiều Điều khiển tốc độ động điện u cầu cần thiết có máy móc hoạt động với tốc độ khác nhau, nhanh chậm tùy loại, tùy công việc điều kiện làm việc Điều chỉnh tốc độ động cách điều chỉnh điện áp nguồn cung cấp sử dụng cho động chiều động không đồng Tuy sử dụng chủ yếu cho động chiều kích từ độc lập Phương trình đặc tính động điện chiều kích từ độc lập: Vi xử lý, vi điều khiển Trang 12 Bài tập lớn U Ru Rpu M k (k )2 Trong đó: Ru Rpu điện trở phần ứng điện trở phụ mắc nối tiếp phần ứng K: số M: moment động Φ: từ thông cực U: điện áp cung cấp Như vậy, Ru, Rpu, M, k, Φ khơng đổi, thay đổi U tốc độ góc ω động thay đổi Điều chỉnh tốc độ động sử dụng chỉnh lưu bán dẫn Để thực phương pháp điều chỉnh này, cần phải có nguồn cung cấp mà điện áp thay đổi để cung cấp cho phần ứng động Các nguồn điện áp thường tạo chỉnh lưu bán dẫn có điều khiển (dùng thyristor) khơng có điều khiển (dùng diode) Hình 14 Điều chỉnh điện áp phần ứng chỉnh lưu: a/ khơng có điều khiển; b/ có điều khiển Hình a: thay đổi điện áp đặt lên phần ứng động sử dụng điều chỉnh điện áp Hình b: điện áp đặt lên phần ứng động phụ thuộc góc mở thyristor chỉnh lưu có điều khiển Điều chỉnh tốc độ động sử dụng thiết bị điều chỉnh xung áp Phương pháp điều chỉnh đóng ngắt động vào nguồn cung cấp cách có chu kỳ Khi đóng động vào nguồn cung cấp, lượng đưa từ nguồn vào động Năng lượng phần chủ yếu truyền qua trục động cơ, phần cịn lại tích dạng động lượng điện từ Khi ngắt động khỏi nguồn hệ truyền động tiếp tục làm việc nhờ lượng tích lũy Hình 15 Sơ đồ nguyên lý tương đương điều chỉnh xung áp Vi xử lý, vi điều khiển Trang 13 Bài tập lớn Hình 16 Biểu đồ thời gian điện áp dịng điện Nhờ khóa chuyển đổi K mà phần ứng động đóng, ngắt cách có chu kỳ vào nguồn điện chiều có điện áp khơng đổi Trong khoảng thời gian t1 khóa K đóng, động cấp nguồn, bỏ qua sụt áp khóa K Ut = U Trong khoảng thời gian t2 khóa K ngắt Do ảnh hưởng điện cảm phía chiều, dịng điện cảm ứng iu tiếp tục chạy qua diode D Điện áp Ut giai đoạn sụt áp thuận diode ngược dấu U t = UD Từ đồ thị, nhận thấy trị số trung bình dòng điện phần ứng itb định tốc độ động Do để thay đổi tốc độ động cần thay đổi trị số dòng điện trung bình phần ứng itb Để thay đổi dịng điện trung bình itb thay đổi t1 t2 t1 t2 Nếu giữ nguyên chu kỳ đóng cắt khóa (T ck = const) thay đổi t1 có phương pháp điều chỉnh xung theo độ rộng Nếu giữ nguyên thời gian đóng khóa (t1 = const) thay đổi t2 có phương pháp điều chỉnh tần số xung Phương pháp biến đổi độ rộng xung xử dụng phổ biến cho phạm vi điều chỉnh rộng Phương pháp điều chỉnh tần số xung có sơ đồ đơn giản phạm vi điều chỉnh hẹp tăng t2 q lớn T ck tiến đến vơ cực, nghĩa thực chất ý nghĩa điều chỉnh xung khơng cịn tác dụng Điều chỉnh tốc độ động điều chỉnh điện áp chiều có đổi chiều quay Sơ đồ nguyên lý thực đảo chiều động điện chiều kích từ độc lập theo phương pháp thay đổi cực tính điện áp đặt vào phần ứng động cơ: Vi xử lý, vi điều khiển Trang 14 Bài tập lớn Hình 17 Điều chỉnh điện áp đặt vào động Các cặp van K1 K3, K2 K4 thay đóng, ngắt Thực đảo chiều cách: thời gian t1 cho K1 K3 đóng (K2 K4 ngắt) đầu A phần ứng nối với dương nguồn, đầu B nối âm nguồn Trong khoảng thời gian t2 cho K2 K4 đóng (K1 K3 ngắt) đầu B phần ứng nối với dương nguồn đầu A phần ứng nối với âm nguồn Khi điện áp trung bình phần ứng động tính cơng thức: U tb U (t1 t2 ) Tck Như cách biến đổi t1 t2 biến đổi trị số U tb thay đổi dấu nó, điều chỉnh lúc tốc độ chiều quay Điều chỉnh tốc độ động chiều không đảo chiều dùng transistor Hình 18 Sơ đồ nguyên lý điều khiển tốc độ động chiều không đảo chiều dùng transistor T1 đóng vai trị tầng khuếch đại sơ mắc theo kiểu Collector chung (mạch lặp Emiter) T2 T3 tầng khuếch đại công suất mắc theo kiểu Darlington để có cơng suất lớn Chức mchj T2 định cịn T3 có tác dụng khuếch đại dịng điện Nguyên lý hoạt động: có xung điều khiển Uv đưa vào bazor T1 tạo thiên áp cho T1 T1 mở Tín hiệu emitor T1 đưa vào bazor T2 làm cho T2 T3 làm việc dẫn đến điện áp phần ứng động khuếch đại lên Xung điều khiển thay đổi cách điều chỉnh tần số xung dẫn đến U be T1 thay đổi làm cho Uce T1 thay đổi theo, qua khuếch đại công suất T2 T3 làm cho điện áp đặt vào phần ứng động chiều thay đổi tốc độ thay đổi Vi xử lý, vi điều khiển Trang 15 Bài tập lớn Điều chỉnh tốc độ động chiều có đảo chiều dùng transistor OPAM Hình 19 Mạch đảo chiều động dùng transistor khuếch đại thuật toán Mạch gồm tầng khuếch đại: - Tầng khuếch đại điện áp đầu vào sử dụng khuếch đại thuật toán uA741 - Tầng tầng khuếch đại công suất dùng T1, T2, T3, T4 ghép kiểu darlington Điện áp cung cấp cho tầng khuếch đại công suất ±12V Mạch phản hồi âm báo từ đầu cuối khuếch đại thuật toán D1, D2 diode ổn định điện áp cho khuếch đại thuật toán Tụ C1 C2 với R10 có tác dụng lọc thành phần xoay chiều động làm việc chế độ máy phát phát đổi chiều quay Rf điện trở mạch phản hồi Nguyên lý làm việc: Khi Udk có cực tính dương chân KĐTT có điện áp âm đặt vào bazor T1 T2 T1 loại NPN T2 loại PNP T1 khóa cịn T2 dẫn Khi T2 dẫn nguồn âm (12V) qua R5, qua T2 (đang dẫn) đặt vào bazor T3 T4 Do T3 loại NPN, T4 PNP T3 bị khóa cịn T4 dẫn Do T2 T4 dẫn nên có dùng điện từ qua động cơ, qua T4 nguồn âm (-12V), động quay theo chiều định Nguyên tắc giữ ổn định tốc độ động cơ: giả sử tốc độ động giảm dòng điện Id tăng làm điện áp đầu UR giảm Thông qua điện trở phàn hổi R f, điện đầu vào chân khuếch đại thuật toán tăng lên U2 = Udk – UR Udk = const nên UR giảm U2 tăng Khi điện áp đầu vào khuếch đại thuật toán tăng lên điện áp đầu tăng theo làm cho U R tăng làm tốc độ động tăng Ngược lại U dk có cực tính âm đầu có điện áp dương đặt vào bazo T1 T2 Lúc T1 T3 dẫn cịn T2 T4 khóa, có dòng từ nguồn (+12V) qua T3 qua động làm động quay chiều ngược lại Điều chỉnh tốc độ động dùng thyristor Thyristor dùng điều khiển động công suất lớn điện áp phần ứng cao Trong điều khiển động cơng suất thấp dùng giá thành cao Vi xử lý, vi điều khiển Trang 16 Bài tập lớn Hình 20 Sơ đồ điều chỉnh tốc độ động chiều dùng diode thyristor D1, D2, D3, D4 phối hợp tạo thành mạch cầu chỉnh lưu hai nửa chu kỳ L D5 có tác dụng san dịng điện Thyristor T có tác dụng điều chỉnh điện áp chỉnh lưu Vi xử lý, vi điều khiển Trang 17 Bài tập lớn Phần II Nội dung I Thiết kế thi công phần cứng Sơ đồ khối Sơ đồ nguyên lý mạch in a Mạch nguồn Hình 21 Sơ đồ nguyên lý mạch nguồn dùng IC LM2576 Hình 22 PCB mạch nguồn Vi xử lý, vi điều khiển Trang 18 Bài tập lớn b Mạch điều khiển Hình 23 Sơ đồ nguyên lý mạch điều khiển dùng VĐK Atmega16 Hình 24 Khối nút nhấn Vi xử lý, vi điều khiển Trang 19 Bài tập lớn Hình 25 PCB mạch điều khiển c Mạch cơng suất Hình 26 Mạch cơng suất điều khiển động sử dụng IC LM298 Vi xử lý, vi điều khiển Trang 20 Bài tập lớn Hình 27 PCB mạch công suất Mô Proteus Vi xử lý, vi điều khiển Trang 21 Bài tập lớn Hình ảnh mạch thực tế Hình 28 Mạch nguồn Hình 28 Mạch điều khiển Vi xử lý, vi điều khiển Trang 22 Bài tập lớn Hình 30 Mạch cơng suất II Viết code cho vi điều khiển #include #include int duty = 1000; interrupt [EXT_INT0] void ext_int0_isr(void) { if(duty >= 2000) { duty = 2000; } else { duty += 100; OCR1A = duty; } } interrupt [EXT_INT1] void ext_int1_isr(void) Vi xử lý, vi điều khiển Trang 23 Bài tập lớn { if(duty < 0) { duty = 0; } else { duty -= 100; OCR1A = duty; } } void main(void) { PORTC = 0xfe; DDRC = 0xff; PORTD = 0xff; DDRD = 0x23; // Cau hinh timer1 TCCR1A = 0x82; TCCR1B = 0x5A; TCNT1H = 0x00; TCNT1L = 0x00; ICR1H = 0x07; ICR1L = 0xd0; OCR1A = duty; OCR1BH = 0x00; OCR1BL = 0x00; // Khoi tao ngat GICR|=0xC0; MCUCR = 0x0A; MCUCSR = 0x00; GIFR = 0xC0; TIMSK = 0x00; #asm("sei") while (1) { // Nut quay thuan Vi xử lý, vi điều khiển Trang 24 Bài tập lớn if(PIND.6 == 0) { delay_ms(20); { if(PIND.6 == 0) { while(PIND.6 == 0); PORTC.1 = 0; PORTC.0 = 1; PORTC.2 = 1; PORTD.0 = 1; PORTD.1 = 0; } } } // Nut quay nguoc if(PIND.7 == 0) { delay_ms(20); { if(PIND.7 == 0) { while(PIND.7 == 0) PORTC.2 = 0; PORTC.0 = 1; PORTC.1 = 1; PORTD.0 = 0; PORTD.1 = 1; } } } // Nut dung if(PIND.4 == 0) { delay_ms(20); { if(PIND.4 == 0) { while(PIND.4 == 0) PORTC.0 = 0; PORTC.1 = 1; PORTC.2 = 1; Vi xử lý, vi điều khiển Trang 25 Bài tập lớn PORTD.0 = 1; PORTD.1 = 1; } } } } } Phần III Kết luận Đánh giá sản phẩm - Ưu điểm: mạch chạy yêu cầu, thiết kế nhỏ gọn, chi phí phù hợp - Nhược điểm: gồm nhiều module nên phải sử dụng dây kết nối làm giảm tính thống Tính thực tế sản phẩm Với mơ hình này, ứng dụng ứng dụng đóng mở cửa nơi cơng cộng nhà hàng, khách sạn Có thể ứng dụng đồ chơi cho trẻ em ô tô đồ chơi dùng điều khiển cầm tay Một ứng dụng thực tế điều khiển đóng mở cánh âu thuyền, ứng dụng khả điều khiển quay thuận, ngược động cơ, nhiên phải thiết kế lại mạch công suất để phù hợp với động công suất lớn Đề xuất cải tiến hướng phát triển - Hướng cải tiến: phát triển module board mạch để sản phẩm thống nhất, khơng bị rối mắt phải câu nhiều dây - Hướng phát triển: tích hợp thêm điều khiển từ xa thay cho nút nhấn để điều khiển thuận lợi kết hợp với ứng dụng thông minh điện thoại thông minh để có điều khiển hồn hảo Vi xử lý, vi điều khiển Trang 26 ... pháp điều khiển động điện chiều Điều khiển chiều quay động điện chiều Đảo chiều quay động điện chiều thực dễ dàng cách thay đổi chiều dịng điện cấp vào động điện thay đổi chiều quay động Một số... vi? ??c điều khiển động trở lên dễ dàng nhiều Xuất phát từ yêu cầu đó, nhóm chúng em nghiên cứu làm tập điều khiển động điện chiều ? ?thiết kế điều khiển tốc độ động điện chiều? ?? với yêu cầu điều khiển. .. tốc độ động dùng thyristor Thyristor dùng điều khiển động công suất lớn điện áp phần ứng cao Trong điều khiển động cơng suất thấp dùng giá thành cao Vi xử lý, vi điều khiển Trang 16 Bài tập lớn