Ngày nay việc ứng dụng vi điều khiển, vi xử lý đang ngày càng phát triển rộng rãi và thâm nhập ngày càng nhiều vào các lĩnh vực kỹ thuật và đời sống xã hội.Với xu hướng tất yếu này cùng với sự phát triển mạnh mẽ của công nghệ chế tạo,người ta đã tạo những vi điều khiển có cấu trúc mạnh hơn, đáp ứng thời gian thực tốt hơn, chuẩn hóa hơn so với các vi điều khiển 8 bit trước đây. Với sự phát triển mạnh mẽ của khoa học,đặc biệt là ngành điện, điện tử,sự phát minh ra các linh kiện điện tử đã và đang ngày càng đáp ứng được yêu cầu của các hệ thống.Ưu điểm của việc sử dụng các linh kiện điện tử làm cho các hệ thống linh hoạt và đa dạng hơn,giá thành thấp hơn và độ chính xác cao hơn. Sau thời gian học tập và tìm hiểu,chúng em đã được làm quen với môn học vi xử lý và đo lường hệ thống. Để áp dụng lý thuyết với thực tế của môn học này chúng em nhận bài tập lớn: thiết kế mạch mô phỏng đo và hiển thị tốc độ động cơ( có gắn Encoder 100 xungvòng, khoảngđo 02500vòngphút”. Tuy nhiên do kiến thức còn hạn chế,tài liệu tham khảo có giới hạn nên còn có những sai sót.Chúng em rất mong thầy,cô giáo thông cảm và giúp đỡ chúng em hoàn thiện bài tập lớn này.
LỜI MỞ ĐẦU Ngày việc ứng dụng vi điều khiển, vi xử lý ngày phát triển rộng rãi thâm nhập ngày nhiều vào lĩnh vực kỹ thuật đời sống xã hội.Với xu hướng tất yếu với phát triển mạnh mẽ công nghệ chế tạo,người ta tạo vi điều khiển có cấu trúc mạnh hơn, đáp ứng thời gian thực tốt hơn, chuẩn hóa so với vi điều khiển bit trước Với phát triển mạnh mẽ khoa học,đặc biệt ngành điện, điện tử,sự phát minh linh kiện điện tử ngày đáp ứng yêu cầu hệ thống.Ưu điểm việc sử dụng linh kiện điện tử làm cho hệ thống linh hoạt đa dạng hơn,giá thành thấp độ xác cao Sau thời gian học tập tìm hiểu,chúng em làm quen với môn học vi xử lý đo lường hệ thống Để áp dụng lý thuyết với thực tế môn học chúng em nhận tập lớn:'' thiết kế mạch mô đo hiển thị tốc độ động cơ( có gắn Encoder 100 xung/vòng, khoảngđo[ 0-2500vòng/phút]” Tuy nhiên kiến thức hạn chế,tài liệu tham khảo có giới hạn nên có sai sót.Chúng em mong thầy,cô giáo thông cảm giúp đỡ chúng em hoàn thiện tập lớn Chúng em xin chân thành cảm ơn! MUC LUC PhầnI Phân tích yêu cầu công nghệ 1.1 Phân tích giới hạn đặc điểm thiết bị 1.2 Trình bày phương pháp đo tốc độ dùng Encoder PhầnII Thiết kế hệ thống 2.1 Phân tích giới hạn tính toán lựa chọn thiết bị 2.2 Xây dựng mạch nguyên lí thuyết minh 2.3 Xây dựng thật toán 2.4 Viết chương trình 2.5 Sơ đồ mạch mô Phần III Kết luận 3.1 Các kết đạt 3.2 Các hạn chế tồn phương hướng khắc phục PHẦN 1: PHÂN TÍCH YÊU CẦU CÔNG NGHỆ 1.1: Phân tích giới hạn đặc điểm thiết bị Hệ thống vi điều khiển 8051 ghép nối 04 LED bảy hiển thị số đo tốc độ động dùng Encoder bao gồm : • Vi điều khiển 89C51 • Mạch truyền thông chuẩn RS 232 (dùng vi mạch MAX 232) • 04 LED bảy • Cảm biến đo tốc độ động Encoder, • Loa cảnh báo ngưỡng thấp, cao nút ấn RUN, STOP A, Bộ vi điều khiển bit AT89C51 hoạt động tần số 12MHz, với nhớ ROM 4kbyte,bộ nhớ RAM 128byte cư trú bên mở rộng nhớ ngoài.Ở vi điều khiển có cổng 8bit (P0,P1,P2,P3) vào/ra chiều để giao tiếp với thiết bị ngoại vi Hình 1.1.1: Sơ đồ khối AT89C51 -Ngoài ra,nó có: • định thời 16 bit (Time0 Time1) • Mạch giao tiếp nối tiếp • Bộ xử lý bit • Hệ thống điều khiển xử lý ngắt • • • Các kênh điều khiển/ liệu/địa CPU Các ghi chức đặc biệt (SFR) Sơ đồ chân tín hiệu AT89C51 Chức chân tín hiệu sau: -P0.0 đến P0.7 chân cổng -P1.0 đến P1.7 chân cổng -P2.0 đến P2.7 chân cổng -P3.0 đến P3.7 chân cổng -RxD:nhận tín hiệu kiểu nối tiếp -TxD:truyền tín hiệu kiểu nối tiếp -INT0:ngắt -INT1:ngắt -T0: chân vào Timer/Counter -T1: chân vào1của bộTimer/Counter -Wr: ghi liệu vào nhớ -RST:chân vào Reset,tích cực mức logic cao khoảng chu kỳ máy -XTAL1:chân vào mạch khuếch đại dao động -XTAL2:chân từ mạch khuếch đại dao động -PSEN:chân cho phép đọc nhớ chương trình -ALE:chân tín hiệu cho phép chốt địa để truy cập nhớ ngoài,khi On–chip xuất byte thấp địa chỉ.Nó dùng cho bộTimer cho mục đích tạo xung Clock -EA/Vpp: cho phép On–chip truy cập nhớ chương trình EA=0,nếu EA=1thì On-chip làm việc với nhớ chương trình nội trú -VCC :cung cấp nguồn cho On-chip -GND:nối mát +Các ghi chức đặc biệt khác: Các ghi chức đặc biệt ghi đảm nhiệm chức khác chíp Chúng nằm RAM bên trrong chíp chiếm vùng không gian nhớ 128 bytes định địa từ 80 đến Ffh • Thanh ghi tích lũy (ACC): Đây ghi quan trọng chíp, dùng để lưu trữ toán hạng kết phép tính.Thanh ghi ACC dài 8bit,có địa E0h SFR • Thanh ghi B: ghi thường sử dụng thực phép toán nhân, chia Đối với lệnh khác,thanh ghi B xem ghi đệm tạm thời Trong SFR ghi B dài 8bits có địa F0h • Con trỏ ngăn xếp: ghi dài 8bits,có địa SFR 81h,giá trị tăng tự động trước thực lệnh CALL, PUSH Ngăn xếp đặt nơi RAM chíp,nhưng sau khởi động lại ngăn xếp trỏ ngăn xếp mặc định trỏ tới địa khởi đầu 07h,vậy ngăn xếp tạo 08h • Con trỏ liệu: ghi dài 16 bits, gồm hai dài 8bits hợp lại ghi byte cao DPH ghi byte thấp DPL.Con trỏ liệu sử dụng ghi 16bits hai ghi 8bits độc lập.Trong SFR ghi DPH có địa 83h,còn ghi DPLcó địa 82h • Thanh ghi PSW: ghi dài 8bits,có địa SFR D0h Thanh ghi PSW dùng để chứa thông tin trạng thái chương trình.Mỗi bit PSW đảm nhiệm chức cụ thể Thanh ghi phép truy cập dạng mức bit • Thanh ghi PCON: ghi điều khiển nguồn • Thanh ghi IE: ghi cho phép ngắt EA:nếu EA=0 không cho phép ngắt hoạt động.Nếu EA=1 nguồn ngắt riêng biệt phép không phép hoạt động cách đặt xóa bit Enable ET2: bit cho phép không cho phép ngắt Timer2 ET1: bit cho phép không cho phép ngắt tràn Timer1 EX1: bit cho phép không cho phép ngắt EX0: bit cho phép không cho phép ngắt tràn timer EX1: bit cho phép không cho phép ngắt • Thanh ghi IP: ghi ưu tiên ngắt • Thanh ghi TCON: ghi điều khiển timer/ Counter TF1: cờ tràn Timer TR1: bit điều khiển Timer hoạt động TF0: cờ tràn Timer TR0: bit điều khiển Timer hoạt động IE1: cờ ngắt IE0: cờ ngắt • Thanh ghi TMOD: ghi điều khiển kiểu Timer/ Counter GATE: Khi TRx thiết lập GATE = 1, Timer/ Counterx hoạt động chân INTx mức cao Khi GATE = 0, Timer/ Counterx hoạt động TRx =1 C/T: bit cho phép chịn chức Timer hay Counter M0,M1: bit chọn Mode, để xác định trạng thái kiểu Timer/Counter • Thanh ghi SCON: ghi trạng thái điều khiển cổng nối tiếp B, Mạch truyền thông chuẩn MAX 232 Theo tiêu chuẩn RS232 quy định mức logic “0” ứng với điện áp +3V đến +12V , mức logic “1” ứng với điện áp -3V đến -12V ,mà vi điều khiển truyền nhận tín hiệu theo chuẩn TTL/CMOS quy định mưc logic “0” ứng với điện áp 0V, mức logic “1” ứng với 3,3V hay5V Hình 1.1.2 sơ đồ chân RS232 +T1IN, T2IN chân số 10 11 chân ngõ vào tín hiệu dạng TTL/CMOS +T1OUT, T2OUT chân số 14 chân ngõ Tín hiệu RS-232 +R1IN, R2 IN chân số 13 ngõ vào tín hiệu dạng RS-232 +R1OUT, R2OUT chân số 12 ngõ tín hiệu dạng RS-232 +Vcc, GND chân cấp nguồn cho ic hoạt động -Cổng com DB9: Hầu hết máy tính cá nhân trang bị cổng Com hay cổng nối tiếp RS232 Số lượng cổng Com lên tới tùy loại main máy tính Khi cổng Com đánh dấu Com 1, Com 2, Com Trên có loại đầu nối sử dụng cho cổng nối tiếp RS232 loại chân (DB9) 25 chân (DB25) Tuy hai loại đầu nối có song song hai loại đầu nối phân biệt cổng đực (DB9) cổng (DB25)(ít sử dụng) Hình 1.1.3: sơ đồ chân cổng DB9 + chân : Data Carrier Detect (DCD) : Phát tín hiệu mang liệu + chân 2: Receive Data (RxD) : Nhận liệu + chân : Transmit Data (TxD) : Truyền liệu + chân : Data Termial Ready (DTR) : Đầu cuối liệu sẵn sàng kích hoạt phận muốn truyền liệu + chân : Singal Ground ( SG) : Mass tín hiệu + chân : Data Set Ready (DSR) : Dữ liệu sẵn sàng, kích hoạt truyền sẵn sàng nhận liệu + chân : Request to Send : yêu cầu gửi,bô truyền đặt đường lên mức hoạt động sẵn sàng truyền liệu + chân : Clear To Send (CTS) : Xóa để gửi ,bô nhận đặt đường lên mức kích hoạt động để thông báo cho truyền sẵn sàng nhận tín hiệu + chân : Ring Indicate (RI) : Báo chuông cho biết nhận nhận tín hiệu rung chuông C, Led Hình 1.1.4: Cấu tạo led Led có cấu tạo gồm led đợn có dạng xếp theo hình có thêm led đơn hình tròn nhỏ để thể dấu chấm tròn góc dưới, bên phải led đoạn led đơn led đoạn có Anode(cức +) Cathode(cực -) nối chung với vào điểm, đưa chân đê kết nối với mạch điện cực lại led đơn đưa thành chân riêng, đưa để kết nối với mạch điện Nếu led đoạn Anode (cực +) chung, đầu chung nối với +Vcc, chân lại dùng để điều khiển trạng thái sáng tắt led đơn, led sáng tín hiệu đặt vào chân mức Nếu led đoạn có cathode (cực -) chung, đầu chung nối xuống Ground (hay mass), chân lại dùng để điều khiển trạng thái sáng tắt led đơn, led sáng tín hiệu đặt vào chân mức Vì led đoạn chứa bên led đơn, kết nối cần đảm bảo dòng qua led đơn khoảng 10mA – 20 mA để bảo vệ led.Nếu kết nối với nguồn 5V hạn dòng điện trở 330Ω trước chân nhận tín hiệu điều khiển D, Giới thiệu Encoder Hình 1.1.5: Cấu tạo Encoder Nhìn hình ta thấy encoder gồm: đĩa tròn có khắc lỗ, Hệ thống LED phát thu • Cấu tạo encoder: -Gồm 1bộ phát ánh sáng (led phát ),một thu ánh sáng nhạy từ ánh sáng phát (bộ thu thường photodiotde phototransistor) hay đĩa quang gắn trục quay đặt phát thu,thông thường trục quay gắn với trục quay đối tượng cần đo tốc độ • Nguyên tắc hoạt động: -Nguyên lý encoder:đó đĩa tròn xoay, quay quanh trục Trên đĩa có lỗ (rãnh) Người ta dùng đèn led để chiếu lên mặt đĩa.Khi đĩa quay, chỗ lỗ (rãnh),đèn led không chiếu xuyên qua được,chỗ có lỗ (rãnh),đèn led chiếu xuyên qua.Khi đó,phía mặt bên đĩa,người ta đặt mắt thu.Với tín hiệu có, ánh sáng chiếu qua, người ta ghi nhận đèn led có chiếu qua lỗ hay không.Số xung đếm tăng lên tính số lần ánh sáng bị cắt Như encoder tạo tín hiệu xung vuông tín hiệu xung vuông cắt từ ánh sáng xuyên qua lỗ.Nên tần số xung đầu phụ thuộc vào tốc độ quay tròn đó.Ứng dụng encoder:trong toán đo tốc độ động cơ,trong máy CNC dùng để xác định khoảng dịch chuyển đối tượng thông qua đếm số vòng quay trục Hình 1.1.6: Encoder có lỗ định vị Như cho dù có lệch xung,mà thấy Encoder ngang qua lỗ định vị này,thì biết Encoder bị đếm sai Tuy nhiên có vấn đề lớn là,làm biết Encoder xoay theo chiều nào.Bởi xoay theo chiều xung giống nhau.Vì vậy,người ta đặt thêm vòng lỗ vòng lỗ thứ vòng lỗ định vị cho lỗ vòng vòng lệch nhau,các cạnh lỗ vòng nằm lỗ vòng ngược lại Hình 1.1.7: sơ đồ động Encoder E, Một số linh kiện khác Tụ điện Tụ điện linh kiện thụ động ,gồm cực kim loại ghép cách hau khoảng d, tụ dung dịch hay điện môi cách điện có điện dung C.Tụ cho phép dòng xoay chiều qua cản dòng chiều Hình 1.1.8: tụ điện Khi tụ nạp điện bắt đầu nạp từ điện áp 0V tăng đến điện áp UDC giảm từ điện áp VDC xuống 0V Điện trở Điện trở linh kiện thụ động có tác dụng cản trở dòng áp,được sử dụng nhiều lĩnh vực điện tử Hình 1.1.9: điện trở -Điện trở dây dẫn có trị số lớn hay nhỏ phụ thuộc vào vật liệu làm dây,tỉ lệ thuận với chiều dài dây tỉ lệ nghịch với tiết diện dây R=(ρ.l)/S R=U/I ρ:điện trở suất vật liệu(Ωm) S:tiết diện dây(m^2) l: chiều dài dây(m) R:điện trở (Ω) Điện trở treo Hình 1.1.10: điện trở treo Sử dụng điện trở (treo) giúp việc thiết kế mạch dễ dàng hơn,điên trở treo gồm: điện trở giá trị với đầu điện trở nối với nhau,đầu chung đưa chân nữa,thông thường chân chung nối với nguồn Vcc Điện trở treo có nhiệm vụ tạo điện áp mức theo yêu cầu,theo giá trị đặt chân Thạch anh Hình 1.1.11: Thạch anh dao động Thạch anh dao động có nhiệm vụ tạo xung điều khiển thích hợp phục vụ cho vi điều khiển , thạch anh sử dụng loại 12MHz 1.2 Trình bày phương pháp đo tốc độ động dùng Encoder Gọi số xung xuất từ kênh A (kênh B) 1s là: n Số xung đĩa encoder là: Ne (khi động quay vòng kênh A B xuất Ne xung) -> tốc độ động cơ: v=n/Ne (vòng/giây) Vậy để đo tốc độ động cơ, cần đếm số xung xuất từ kênh A B thời gian 1s hay nói cách khác tần số xung encoder Thời gian 1s gọi thời gian lấy mẫu, nhiên chọn thời gian lấy mẫu lớn (1s) dẫn đến sai số việc đếm số xung, làm thời gian thực thi vi điều khiển làm cho trình hiệu chỉnh tốc độ (nếu có) không liên tục Vì việc chọn thời gian lấy mẫu quan trọng, không lớn không bé - Gọi thời gian lấy mẫu là: Ts - Gọi số xung encoder xuất thời gian Ts ns -> tốc độ động cơ: v=(ns*100)/(Ne*Ts) PHẦN II THIẾT KẾ HỆ THỐNG 2.1 Phân tích giới hạn tính toán lựa chọn thiết bị • Kết nối với vi điều khiển -Ngõ nhận tín hiệu led đoạn có đường dùng port vi điều khiển để điều khiển led đoạn.Vì led đoạn nhận liệu bit từ vi điều khiển để điều khiển hoạt động sáng tắt led đơn -Có hai kiểu hiển thị led đoạn:mã dành cho led đoạn có anode (cực +) chung mã dành cho led đoạn có cathode (cực -) chung.Chẳng hạn,nếu sử dụng anode chung,muốn led đơn sáng đặt vào chân led điện áp la 0V(mức 0) led đơn lại đặt điện áp 5V(mức 1).Nếu sử dụng cathode chung,muốn led sáng làm hoàn toàn ngược lại với anode chung Bảng mã hiển thị led đoạn dành cho led đoạn có anode chung Số hiển thị led đoạn Mã hiển thị led đoạn dạng nhị phân Mã hiển thị led đoạn dạng thập lục phân A hgfedcba 11000000 11111001 10100100 10110000 10011001 10010010 11000010 11111000 10000000 10010000 10001000 C0 F9 A4 B0 99 92 82 F8 80 90 88 B C D E F - 10000011 11000110 10100001 10000110 10001110 10111111 83 C6 A1 86 8E BF Bảng mã hiển thị led đoạn dành cho led đoạn có cathode chung Số hiển thị led đoạn Mã hiển thị led đoạn dạng nhị phân A B C D E F - 00111111 00000110 01011011 01001111 01100110 01101101 01111101 00000111 01111111 01101111 01110111 01111100 00111001 01011110 01111001 01110001 01000000 Mã hiển thị led đoạn dạng thập lục phân 3F 06 5B 4F 66 6D 7D 07 7F 6F 77 7C 39 5E 79 71 40 Nút ấn RUN, STOP chọn kiểu tiếp điểm thường mở Loa cảnh báo ngưỡng cao, thấp: 500v/p 2500v/p 2.2 Xây dựng mạch nguyên lí thuyết minh Phím ấn Gồm nút ấn Start stop Hình 2.2.1: nút ấn Khối hiển thị Hình 2.2.2: khối hiển thị Mắc thêm điện trở để hạn chế dòng điện bảo vệ đèn led Khối xử lí trung tâm Để tạo xung nhịp (clock) cho vi điều khiển ta dùng thạch anh 12MHz có giá trị từ 33p Chu kì 8051 là: cổng P0 thực chức xuất nhập phải dùng trở để kéo lên ,vì ta dùng trở băng có giá trị 4,7k-10k đấu vào P0 Việc kết nối chân RESET đảm bảo hệ thống bắt đầu làm việc Vi điều khiển cấp điện, hoạt động mà hệ thống bị lỗi cần tác động cho Vi điều khiển hoạt động trở lại, người sử dụng muốn quay trạng thái hoạt động ban đầu Vì chân RESET kết hình vẽ sau với C=10uf,R=10k Hình 2.2.3: nút ấn RESET 2.3 Xây dựng thuật toán 2.4 Viết chương trình Chương trình hợp ngữ: ORG 0H ;Khai bao dia chi bat dau CT tu 0h Ram noi LJMP MAIN ; Nhay den chuong trinh chinh ORG 0BH LJMP INT_TIMER0 ORG 1BH LJMP INT_TIMER1 ORG 3H LJMP INT_EX0 ORG 13H LJMP INT_EX1 ;Nhay den nhan INT_TIMER0 ;Nhay den nhan INT_TIMER1 ;Nhay den nhan INT_EXO ;Nhay den nhan INT_EX1 ;DINH NGHIA CAC BIEN(gan gia tri cac bien) LOA EQU RUN EQU VONG_GIAY ;LOA co gia tri = EQU 7h ;So vong/giay = 7h=7 XUNG_DU EQU 32H ;So xung du =100 50 DIGIT_1 EQU 33H ;DIGIT_1 = 33H=51 DIGIT_2 EQU 34H =52 DIGIT_3 EQU 35H =53 DIGIT_4 EQU 36H =54 ;CHUONG TRINH CHINH ORG 30H 100 ;Khai bao dia chi bat dau chuong trinh chinh MAIN: SETB IT1 ;P3.5 = dau vao cua xung dem T1 SETB IT0 ;Dau vao cua xung dem T0(ngat canh xuong) SETB EX0 ;Cho phep ngat ngoai INT0 SETB EX1 ;Cho phep ngat ngoai INT1 MOV R0,#200 ;Di chuyen R0 = 200 MOV TMOD,#00010110b ;Khoi dong TIMER – Che 16 BIT MOV TH0,#-100 ;Nap byte cao cua 100 MOV TL0,#-100 ;Nap byte thap cua 100 ;Tao chu ky tran cho C0 = 100 xung/vong SETB ET0 ;Cho phep ngat T0 SETB ET1 ;Cho phep ngat T1 SETB TF1 ;Cho phep bao bo dem cua T1 bi SETB TR1 ;Cho phep timer chay SETB TR0 ;Cho phep timer chay SETB EA ;Cho phep ngat toan bo(T/H CT tu bo nho JMP $ tran(Tcon.7) trong) ;NGAT COUNTER INT_TIMER0: INC VONG_GIAY ;Tang gia tri VONG_GIAY moi lan la 1V RETI ;NGAT TIMER 1(tao thoi gian 1s de do) INT_TIMER1: JNB RUN,EXIT ;Nhay den EXIT neu RUN = MOV A,40H JZ BAT_LOA;Nhay toi BAT_LOA neu (a) = (a)là nội dug ghi a SUBB A,#16 ;Neu A > 16 A=A-16 JC CONT;Nhay den nhan CONT :nhảy đến CONT c=1 (c)nd cờ c BAT_LOA: CPL P3.6 ;Dao P3.6 p3.6=đảo p3.6 CONT: MOV TH1,#HIGH(-5000) ;Nap byte cao cua -5000 MOV TL1,#LOW(-5000) ;Nap byte thap cua -5000 DJNZ R0,QUET_LED ;Nhay den QUET_LED neu R0 khac ;(Vong lap neu chua du 1s thi quet led) MOV R0,#200 CLR TR0 ;Ngat timer CLR TR1 ;Ngat timer MOV XUNG_DU,TL0 ; CALL CALCULATOR ;Chuong trinh tinh so V/P MOV TL0,#-100 ;Nap byte thap cua -100 SETB TR0 ;Khoi dong timer SETB TR1 ;Khoi dong timer RETI QUET_LED: CJNE R1,#0,LED_2 MOV DPTR,#LED ;Quet LED_2 Neu R1 khac ;Nap dia chi gian tiep tu LED(ram ngoài) vào ;trỏ DPTR MOV A,DIGIT_1 MOVC A,@A+DPTR ;Chuyen du lieu vung nho A+DPTR vao A MOV P2,#0 ;Xoa cong P2 MOV P0,A MOV P2,#1 ;P2=1 INC R1 ;Tang R1+ (Quet LED tiep theo) ;Di chuyen P0=A RETI LED_2: CJNE R1,#1,LED_3 MOV A,DIGIT_2 MOVC ;Nhay den quet LED_3 neu R1 khac A,@A+DPTR nho A+DPTR vao A MOV P2,#0 MOV P0,A MOV P2,#2 ;Xoa P2 ;Chuyen du lieu vung INC R1 RETI LED_3: CJNE R1,#2,LED_4 MOV A,DIGIT_3 MOVC ;Nhay den quet LED_4 neu R1 khac A,@A+DPTR ;Chuyen du lieu vung nho A+DPTR vao A MOV P2,#0 MOV P0,A MOV P2,#4 INC R1 ;Xoa P2 RETI LED_4: MOV A,DIGIT_4 MOVC A,@A+DPTR ;Chuyen du lieu vung nho A+DPTR vao A MOV P2,#0 ;Xoa P2 MOV P0,A MOV P2,#8 MOV R1,#0 ;Quay ve LED MOV A,VONG_GIAY ;Di chuyen DL0 VONG_GIAY vao A MOV 40H,A ;Di chuyen A vao o nho 40h MOV VONG_GIAY,#0 MOV B,#6 ;Nap TG B = MUL AB ;Nhan A voi B < 255 Nen duoc chua A MOV B,#100 DIV AB MOV DIGIT_1,A MOV A,B EXIT: RETI CALCULATOR: ;Chia A/B MOV B,#10 DIV AB MOV DIGIT_2,A MOV R3,B ;DIGIT_4: ;Gia tri tam thoi cua DIGIT_3 la so (XUNG_DU*60)/100 MOV A,XUNG_DU CLR C SUBB A,#9CH MOV B,#10 DIV AB MOV R4,B MOV B,#3 MUL AB MOV B,#5 DIV AB MOV R5,B ADD A,R3 MOV B,#10 DIV AB ADD A,DIGIT_2 MOV DIGIT_2,A MOV DIGIT_3,B ;A-9CH=156 ;Luu lai so le vao R4 ;Cong A va R3 Ket qua luu o A ;SODU MOV A,R5 RL A MOV R5,A MOV A,R4 MOV B,#3 MUL AB MOV B,#5 DIV AB ADD A,R5 ;Xoay trai gia tri ghi A MOV DIGIT_4,A RET INT_EX0: SETB RUN ;RUN =1 MOV P2,#0 ;Xoa P2 CLR RUN ;RUN =0 Dung chuong trinh RETI INT_EX1: RETI LED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END 2.5 Sơ đồ mạch mô Nguyên lý hoạt động mạch : Khi ta ấn nút Start hệ thống bắt đầu làm việc, động quay, Encoder gắn trục động cảm biến tốc độ, phát tín hiệu chuyển tới mạch vi điều khiển Tại đây, tín hiệu vi mạch xử lí biến đổi để hiển thị led Khi ấn nút Stop: hệ thống dừng hoạt động Kết thúc trình làm việc mạch/ Trường hợp có cố xảy ta ấn nút Reset để khôi phục lại trạng thái ban đầu mạch CHƯƠNG III : Kết luận 3.1 Kết đạt - Mạch có dải đo tốc độ lớn - Khả đáp ứng nhanh với thay đổi biến trở - Mạch đặt độ khống chế tốc độ động cơ, báo tốc độ cao tốc độ thấp - Mạch hiển thị LED đoạn nên dễ dàng cho người sử dụng theo dõi tốc độ động - Mạch thiết kế nhỏ gọn, dễ sử dụng, tiện lợi dùng nhiều loại nguồn: pin, sạc điện thoại,… nên động 3.2 Hạn chế phương pháp khắc phục - Còn có sai số tốc độ sai số linh kiện sai số tính toán thiêt kế mạch chấp nhận - Phương pháp khắc phục: sử dụng thiết bị linh kiện có độ xác cao [...]... chung Bảng mã hiển thị led 7 đo n dành cho led 7 đo n có anode chung Số hiển thị trên led 7 đo n Mã hiển thị led 7 đo n dạng nhị phân Mã hiển thị led 7 đo n dạng thập lục phân 0 1 2 3 4 5 6 7 8 9 A hgfedcba 11000 000 111 11001 1 01001 00 10 11000 0 1001 1001 1001 0010 11000 010 111 11000 1000 0000 1001 0000 1000 1000 C0 F9 A4 B0 99 92 82 F8 80 90 88 B C D E F - 1000 0011 11000 110 1 01000 01 1000 0110 1000 1110 10111111... có thể ấn nút Reset để khôi phục lại trạng thái ban đầu của mạch CHƯƠNG III : Kết luận 3.1 Kết quả đạt được - Mạch có dải đo tốc độ lớn - Khả năng đáp ứng nhanh với sự thay đổi của biến trở - Mạch có thể đặt độ khống chế tốc độ động cơ, báo tốc độ cao và tốc độ thấp - Mạch hiển thị LED 7 đo n nên dễ dàng cho người sử dụng theo dõi tốc độ động cơ - Mạch được thiết kế nhỏ gọn, dễ sử dụng, tiện lợi và. .. đồ mạch mô phỏng Nguyên lý hoạt động của mạch : Khi ta ấn nút Start hệ thống sẽ bắt đầu làm việc, động cơ quay, Encoder gắn trên trục của động cơ sẽ cảm biến tốc độ, phát tín hiệu và chuyển tới mạch vi điều khiển Tại đây, tín hiệu sẽ được vi mạch xử lí và biến đổi để hiển thị trên 4 led 7 thanh Khi ấn nút Stop: hệ thống dừng mọi hoạt động Kết thúc 1 quá trình làm việc của mạch/ Trường hợp khi có sự... 1000 1110 10111111 83 C6 A1 86 8E BF Bảng mã hiển thị led 7 đo n dành cho led 7 đo n có cathode chung Số hiển thị trên led 7 đo n Mã hiển thị led 7 đo n dạng nhị phân 0 1 2 3 4 5 6 7 8 9 A B C D E F - 00111111 00000110 01011011 01001 111 0 11001 10 01101101 01111101 00000111 01111111 01101111 01110111 0111 1100 001 11001 01011110 011 11001 01 11000 1 01000 000 Mã hiển thị led 7 đo n dạng thập lục phân 3F 06 5B 4F 66... tạo ra các xung điều khiển thích hợp phục vụ cho vi điều khiển , thạch anh sử dụng ở đây là loại 12MHz 1.2 Trình bày về phương pháp đo tốc độ động cơ dùng Encoder Gọi số xung xuất ra từ kênh A (kênh B) trong 1s là: n Số xung của đĩa encoder là: Ne (khi động cơ quay được 1 vòng thì trên kênh A hoặc B sẽ xuất ra Ne xung) -> tốc độ động cơ: v=n/Ne (vòng/giây) Vậy để đo được tốc độ động cơ, chỉ cần đếm... được quá lớn và không được quá bé - Gọi thời gian lấy mẫu là: Ts - Gọi số xung encoder xuất ra trong thời gian Ts là ns -> tốc độ động cơ: v=(ns *100) /(Ne*Ts) PHẦN II THIẾT KẾ HỆ THỐNG 2.1 Phân tích giới hạn và tính toán lựa chọn thiết bị • Kết nối với vi điều khiển -Ngõ nhận tín hiệu led 7 đo n có 8 đường vì vậy có thể dùng 1 port nào đó của vi điều khiển để điều khiển led 7 đo n.Vì vậy led 7 đo n nhận... điều khiển led 7 đo n.Vì vậy led 7 đo n nhận một dữ liệu 8 bit từ vi điều khiển để điều khiển hoạt động sáng tắt của từng led đơn trong nó -Có hai kiểu hiển thị led 7 đo n:mã dành cho led 7 đo n có anode (cực +) chung và mã dành cho led 7 đo n có cathode (cực -) chung.Chẳng hạn,nếu sử dụng anode chung,muốn led đơn nào sáng thì đặt vào chân led đó điện áp la 0V(mức 0) các led đơn còn lại đặt điện áp là... nhập phải dùng trở để kéo lên ,vì thế ta dùng trở băng có giá trị 4,7k-10k đấu vào P0 Việc kết nối chân RESET đảm bảo hệ thống bắt đầu làm việc khi Vi điều khiển được cấp điện, hoặc đang hoạt động mà hệ thống bị lỗi cần tác động cho Vi điều khiển hoạt động trở lại, hoặc do người sử dụng muốn quay về trạng thái hoạt động ban đầu Vì vậy chân RESET được kết như hình vẽ sau với C=10uf,R=10k Hình 2.2.3: nút... độ động cơ - Mạch được thiết kế nhỏ gọn, dễ sử dụng, tiện lợi và có thể dùng nhiều loại nguồn: pin, sạc điện thoại,… nên rất cơ động 3.2 Hạn chế và phương pháp khắc phục - Còn có sai số tốc độ do sai số linh kiện và những sai số trong khi tính toán thiêt kế mạch nhưng chấp nhận được - Phương pháp khắc phục: sử dụng thiết bị linh kiện có độ chính xác cao hơn ... thường mở Loa cảnh báo ngưỡng cao, thấp: dưới 500v/p và trên 2500v/p 2.2 Xây dựng mạch nguyên lí và thuyết minh Phím ấn Gồm nút ấn Start và stop Hình 2.2.1: nút ấn Khối hiển thị Hình 2.2.2: khối hiển thị Mắc thêm điện trở để hạn chế dòng điện và bảo vệ đèn led Khối xử lí trung tâm Để tạo xung nhịp (clock) cho vi điều khiển ta dùng thạch anh 12MHz có giá trị từ 33p Chu kì của 8051 là: cổng P0 khi