Kỹ thuật vi điều khiển hiện nay rất phát triển,nóđáp ứng được nhu cầu của nhiều ngành lĩnh vực sản xuất công nghiệp, tự động hóa ,trong đời sống…So với kỹ thuật số thì kỹ thuật vi điều k
Trang 1Đồ Án Thiết Kế Hệ Thống Điện Tử
Giáo viên hướng dẫn: Đào Tất Hùng
Sinh viên thực hiện: Trịnh Trường Long
Mã sinh viên: 1700502
Lớp: K41 – ĐH ĐIỆN TỬ 2
Khoa: ĐIỆN – ĐIỆN TỬ
Hà Nội – Năm 2020
Trang 2Đề Tài: Mạch Cảm Biến Nhiệt Độ LM35
và AT89s52 Hiển Thị Trên LCD
CHƯƠNG II: Cơ sở ý thuyết:
2.1 Giới thiệu chung về AT 89s52
2.1.1 Cấu trúc chung bộ VĐK 8051
2.1.1.2 Sơ đồ khối
2.1.1.3 Sơ đồ chân tín hiệu
2.1.2 Các thanh ghi
2.2 Giới thiệu chung về cảm biến nhiệt LM35
2.3 Giới thiệu về ADC 0808
2.4 Giới thiệu về LCD
2.4.1 Hình dáng và cấu tạo
2.4.2 Chức năng các chân
Trang 32.5 Những linh kiện khác
CHƯƠNG III: Thiết Kế và thi công mạch:
3.1 Sơ đồ khối
3.2 Chức năng từng khối
3.3 Quá trình đo nhiệt độ
3.4 Sơ đồ nguyên lý và nguyên lý hoạt động của mạch
3.4.1 Sơ đồ nguyên lý
3.4.2 Nguyên lý hoạt động của mạch
3.5 Lưu đồ thuật toán
Trang 4Để tăng chất lượng học tập của sinh viên nhà trường nói chúng và Khoa Điện – Điện
Tử nói riêng đã tổ chức cho sinh viên làm Đồ Án Môn Học nhằm tạo nền tảng vững chắc cho sinh viên khi ra trường , đáp ứng nhu cầu tuyển dụng việc làm
- Với sự nhảy vọt của khoa học , kỹ thuật điện- điện tử, mà vì thế trong một thời gianngắn nó đã đạt được những thành tựu to lớn trong hầu hết các lĩnh vực trong đời sống xãhội.Thiết bị và công nghệ ngày càng đổi mới để góp phần nâng cao chất lượng cuộcsống.Ngày nay các thiết bị vi điều khiển có ứng dụng càng rộng rãi với ưu điểm nhỏgọn ,linh hoạt và có thể điều khiển được rộng rãi Vi điều khiển ngày càng chiếm lĩnh vàđóng vai trò cực kỳ quan trọng trong kỹ thuật điều khiển và tự động hóa
- Giờ đây, nhu cầu chuyên dụng hóa, tối ưu( thời gian, không gian, giá thành) bảo
mật ,tính chủ động linh hoạt trong công nghệ… ngày càng đòi hỏi khắc khe việc đưa ra công nghệ mới trong lĩnh vực chế tạo mạch điều khiển điện tử, để đáp ứng các nhu cầu cấp thiết trong khoa học kỹ thuật điện -điện tử Kỹ thuật vi điều khiển hiện nay rất phát triển,nóđáp ứng được nhu cầu của nhiều ngành lĩnh vực sản xuất công nghiệp, tự động hóa ,trong đời sống…So với kỹ thuật số thì kỹ thuật vi điều khiển nhỏ gọn hơn, do đó nó được tập hợplại và có khả năng lập trình để điều khiển nên tiện dụng và cơ động.Với các tính chất ưu việc đó, trong đề tài này em sử dụng mạch cảm biến nhiệt độ dùng cảm biến LM35 xử lí hiển thị bằng LCD 1602
Ngày nay lĩnh vực điều khiển đã được ứng dụng rộng rãi trong các thiết bị, sản phẩm phục vụ cho nhu cầu sinh hoạt hằng ngày của cong người như máy giặt, ti vi, tủ lạnh, đồng hồ, v.v nhằm giúp cho đời sốn ngày càng hiện đại và tiện lợi hơn Đề tài ứng dụng vi điều khiển trong đời sống thực tế rất phong phú và đa dạng ngằm đáp ứngcho cuộc sống thuận tiện,tiện lợi hơn của con người Với mục đích tìm hiểu và đáp ứng những yêu cầu trên chúng em đã lựa chọn một đề tài có tính ứng dụng thực tế, nhưng không quá xa lạ đối với mọi người đó là : “Thiết Kế Mạch Cảm Biến Nhiệt Độ LM35 + AT89s52 Hiển Thị Trên LCD”
Trong suốt thời gian thực hiện đề tài, chúng em đã gặp một số vướng mắc về lý thuyết và khó khăn trong việc thi công sản phẩm Tuy nhiên chúng em đã được sự giải
Trang 5đáp và hướng dẫn tận tình của thầy Đào Tất Hùng, sự góp ý kiến của các bạn trong lớp, nhóm Được như vậy chúng em xin chân thành cảm ơn và mong muốn nhân đượcnhiều hơn sự giúp đỡ, chỉ bảo của thầy cô và các bạn trong đồ án sau này.
Chúng em xin chân thành cảm ơn
CHƯƠNG I: Tổng Quan Về Đề Tài:
1.1 Đặt vấn đề:
Nhiệt độ là một trong những đại lượng vật lý được quan tâm nhiều nhất Bởi vì nhiệt có vai trò quyết định trong nhiều tính chất của vật chất Một trong nhwunxg đặc điểm tác động của nhiệt là làm thay đổi một cách liên tục các đại lượng chịu
sự ảnh hưởng của nó, ví dụ như áp suất , thể tích của một chất khí Bởi vậy, trong các nghiên cứu khoa học, trong công nghiệp và đời sống hàng ngày việc đo nhiệt
độ là điều cần thiết Tuy nhiên, để đo được trị số chính xác của nhiệt độ lại là vấn
đề không đơn giản
Cùng với sự ra đời và phát triển mạnh mẽ của các hệ vi xử lý, việc đo nhiệt độ áp dụng vi xử lý, vi điều khiển đã mở ra nhiều hướng khác nhau và đưa đến nhiều phương pháp khác nhau, linh hoạt, chính xác hơn.có nhiều cách để đo nhiệt độ, trong đó có thể liệt kê một số phương pháp sau đây:
- Phương pháp quang dựa trên sự phân bố bức xạ nhiệt do dao động
- Phương pháp quang dựa trên sự phân bố bức xạ nhiệt do dao động nhiệt (do hiệu ứng Doppler)
- Phương pháp cơ dựa trên sự dãn nở của vật rắn, của chất lỏng hoặc khí (với áp suất không đổi ) hoặc dựa trên tốc độ âm
- Phương pháp dựa trên sự phụ thuộc của điện trở vào nhiệt độ, hiệu ứng Sêbeck,hoặc dựa trên sự thay đổi tần số dao động của thạch anh
1.2 Các phương pháp đo nhiệt độ:
Trước tiên nói về các cảm biến nhiệt độ,đó là các cảm biến được sử dụng vào các quátrình nhiệt như: đốt nóng, làm lạnh, trao đổi nhiệt v v Đại lượng vào của cảm biến
Trang 6nhiệt độ là nhiệt độ và đại lượng ra là tín hiệu điện (dòng,áp).Một số cảm biến thường
sử dụng:
+Nhiệt điện trở : Nguyên lý làm việc là có điện trở thay đổi theo sự thay đổinhiệt độ của nó.Tuỳ theo tác dụng nhiệt của dòng điện cung cấp chạy qua chuyển đổingười ta phân ra: Nhiệt điện trở đốt nóng và nhiệt điện trở không đốt nóng
Nhiệt điện trở đốt nóng,dòng điện chạy qua rất lớn làm nhiệt độcủa nó tăng lên cao hơn nhiệt độ môi trường(100C -800C) nên có sự toả nhiệt ra môitrường xung quanh, như nhiệt dẫn, đối lưu, bức xạ
Nhiệt điện trở không đốt nóng, dòng điện chạy qua rất nhỏ không làm tăngnhiệt độ của điện trở và nhệt độ của nó bằng nhiệt độ môi trường Nhiệt điện trở loạinày dùng để đo nhiệt độ và các đại lượng cơ học như đo di chuyển
Nhiệt điện trở phân làm hai loại: Nhiệt điện trở dây(nhiệt điện trở đồng,nhiệt điện trở
Platin, nhiệt điện trở Niken) và nhiệt điện trở bán dẫn.
+Cặp nhiệt điện:Nguyên lý làm việc dựa trên 2 hiệu ứng:Thomson và Seebek ứng dụng của cặp nhiệt điện chủ yếu để đo nhiệt độ, ngoài ra nó còn dược dùng để đocác đại lượng không điện và điện khác như: đo dòng điện ở tần số cao,đo hướngchuyển động và lưu ượng của các dòng chảy, đo di chuyển , đo áp suất nhỏ
+Cảm biến nhiệt độ dùng đặc tính diode và tranzitor
Đo nhiệt độ là nhiệm vụ thường gặp trong các ngành nhiệt học, hoá học ,luyệnkim Tuỳ theo nhiệt độ đo mà có thể dùng các phương pháp đo khác nhau.Thôngthường nhiệt độ đo được chia thành 3 giải : Nhiệt độ thấp, nhiệt độ trung bình và nhiệt
độ cao.ở nhiệt độ trung bình và thấp, phương pháp đo thường là tiếp xúc nghĩa là cácchuyển đổi được đặt trực tiếp ở ngay môi trường cần đo Đối với nhiệt độ cao,đo bằngphương pháp không tiếp xúc, nghĩa là dụng cụ đo đặt ngoài môi trường đo
Một trong số những cách đó là đo nhiệt độ không tiếp xúc sử dụng cảm biếnLM35
1.3 Nhiệm vụ thiết kế:
Trang 7Thiết kế hệ bộ VXL đo nhiệt độ sử dụng VĐK89S52 và cảm biến LM35 giải quyếtnhững vấn đề sau:
- Thiết kế mạch đo nhiệt độ trong dải từ 0oC-100oC và hiển thị
- Viết chương trình phần mềm giải quyết những vấn đề trên
Khi nghiên cứu đồ án này chúng em đã:
Hiểu được cách thức và chế độ hoạt động của VĐK AT89S52
Hiểu được cách thức hoạt động của cảm biến nhiệt độ LM 35
Thiết kế, chế tạo được mạch đo nhiệt độ dùng AT89S52
1.4 Ý nghĩa đề tài:
+ Ý nghĩa lý luận:
Toàn bộ chương trình và bản thuyết minh của đề tài sẽ trở thành tài liệu nghiên cứu, tham khảo nhanh, dễ hiểu, thiết thực cho các bạn sinh viên, những người thích tìm hiểu về đề tài này của chúng em
+ Ý nghĩa thực tiễn:
Với sự thành công của đề tài sẽ góp phần giúp cho các bạn sinh viên mới nóichung và các bạn sinh viên khoa Điện – Điện Tử nói riêng thấy rõ được ý nghĩa thực
tế và thêm yêu thích chuyên ngành mình đã chọn
CHƯƠNG II: CƠ SỞ LÝ THUYẾT
2.1 Giới thiệu về chung AT89S51:
VI ĐIỀU KHIỂN AT89S52 LÀ GÌ
AT89S52 là họ IC vi điều khiển do hãng Atmel sản xuất Các sản phẩm AT89S52 thí
ch hợp cho những ứng dụng điều khiển Việc xử lý trên byte và các toán số học ở cấu trúc dữ liệu nhỏ được thực hiện bằng nhiều chế độ truy xuấtdữ liệu nhanh trên RAM nội
Tập lệnh cung cấp một bảng tiện dụng của những lệnh số học 8 bit gồm cả lệnh nhân
và lệnh chia Nó cung cấp những hổ trợ mở rộng trên chip dùng cho những biến một bit như là kiểu dữ liệu riêng biệt cho phép quản lý và kiểm tra bit trực tiếp trong hệ thống điều khiển.
Cấu trúc tổng quát AT89S52
- 4KB ROM để nạp chương trình điều khiển
- 256 byte RAM gồm các thanh ghi
- 4 Port vào ra 8 bit
Trang 8- 2 bộ định thời 16 bit
- Một cổng giao tiếp nối tiếp chuẩn RS232
- Có thể quản lý 64KB bộ nhơ chương trình và 64KB bộ nhớ dữ liệu
- Một bộ xử lý các phép toàn logic
- 210 bit RAM nội được dịa chỉ hóa
- Bộ nhân/chia thực hiện trong 4 micro giây
Thông số kỹ thuật: Vi điều khiển IC 89s52
o Họ vi điều khiển 8 bit
Trang 92.1.1.3 Sơ đồ chân tín hiệu:
Trang 10Chức năng của các chân tín hiệu như sau:
- P0.0 đến P0.7 là các chân của cổng 0
- P1.0 đến P1.7 là các chân của cổng 1
- P2.0 đến P2.7 là các chân của cổng 2
- P3.0 đến P3.7 là các chân của cổng 3
- RxD (Pin 10 - P3.0): Nhận tín hiệu kiểu nối tiếp
- TxD (Pin 11 - P3.1): Truyền tín hiệu kiểu nối tiếp
- /INT0 (Pin 12 - P3.2): Ngắt ngoài 0
- /INT1(Pin 13 - P3.3): Ngắt ngoài 1
- T0 (Pin 14 - P3.4): Chân vào 0 của bộ Timer/Counter 0
Trang 11- T1(Pin 15 - P3.5): Chân vào 1 của bộ Timer/Counter 1.
- /Wr (Pin 16 - P3.6): Ghi dữ liệu vào bộ nhớ ngoài
- /Rd (Pin 17 - P3.7): Đọc dữ liệu từ bộ nhớ ngoài
- RST (Pin 9): Chân vào Reset, tích cực ở mức logic cao trong khoảng 2 chu kỳmáy
- XTAL1(Pin 19): Chân vào mạch khuếch đaị dao động
- XTAL2 (Pin 18): Chân ra từ mạch khuếch đaị dao động
- /PSEN (Pin 29): Chân cho phép đọc bộ nhớ chương trình ngoài (ROM ngoài)
Mô tả chức năng một số chân quan trọng:
- Vcc: Chân cung cấp điện
- GND: Chân nối đất
- Port 0: Port 0 là port xuất nhập 8 bit 2 chiều cực D hở Port 0 còn được cấu
hình làm bus địa chỉ (byte thấp) và làm bus dữ liệu đa hợp trong khi truy
xuất bộ nhớ dữ liệu ngoài và bộ nhớ chương trình ngoài Port 0 cũng nhận
các byte mã trong khi lập trình cho Flash và xuất các byte mã trong khi kiểm
tra chương trình
- Port 1: Port 1 là port xuất nhập 8 bit hai chiều có các điện trở kéo lên bên trong.
Khi các logic 1 được ghi lên các chân của port 1, các chân này được kéo lên mứccao bởi các điện trở kéo lên bên trong và có thể được sử dụng như là các ngõvào Khi làm nhiệm vụ là các port nhập, các chân của port 1 đang được kéoxuống mức thấp do tác động bên ngoài sẽ cấp dòng do có các điện trở kéo lênbên trong
Port 2: Port 2 là port xuất nhập 8 bit hai chiều có các điện trở kéo lên bên trong.Khi các logic 1 được ghi lên các chân của port 2, các chân này được sử dụng như
là các ngõ vào Khi làm nhiệm vụ port nhập, các chân của port 2 đang được kéoxuống mức thấp do tác động bên ngoài sẽ cấp dòng do có các điện trở kéo lên bêntrong Port 2 tạo ra byte cao của bus địa chỉ trong thời gian tìm nạp lệnh từ bộ nhớ
Trang 12chương trình ngoài, và trong thời gian truy xuất bộ nhớ dữ liệu ngoài sử dụng cácđịa chỉ 16 bit.
Port 3: Là port xuất nhập 8 bit hai chiều có các điện trở kéo lên bên trong Khi cáclogic 1 được ghi lên các chân của port 3, các chân này được kéo lên mức cao bởicác điện trở kéo lên bên trong và có thể được sử dụng như là các ngõ vào Khilàm nhiệm vụ port nhập, các chân của port 3 đang được kéo xuống mức thấp dotác động bên ngoài sẽ cấp dòng do có các điện trở kéo lên bên trong Port 3 cònđược sử dụng làm các chức năng khác của AT89C51
RST: Ngõ vào Reset Mức cao trên chân này trong 2 chu kỳ máy trong khi bộ daođộng đang hoạt động sẽ Reset AT89C51
Chân reset có tác dụng reset cho chíp, mức tích cực của chân này là mức 1,
để reset ta phải đưa mức 1 (5v) đến chân này với thời gian tối thiểu 2 chu kỳ máy ( tương đương 2µs – tương đương với thạch anh 12Mhz )
ALE: ALE là một xung ngõ ra cho phép chốt địa chỉ ALE (Address Latch Enable)cho phép chốt byte thấp của địa chỉ trong thời gian truy xuất bộ nhớ ngoài Chânnày cũng được dùng làm ngõ vào xung lập trình ( PROG ) trong thời gian lập
trình cho Flash
- Khi hoạt động bình thường, xung của ngõ ra ALE luôn luôn có tần số bằng 1/6
tần số của mạch dao động trên chip, có thể được sử dụng cho các mục đích định thời từ bên ngoài và tạo xung Clock Tuy nhiên cần lưu ý là một xung ALE sẽ bị
bỏ qua trong mỗi chu kì truy xuất của bộ nhớ dữ liệu ngoài
- Khi cần, hoạt động cho phép chốt byte thấp của địa chỉ sẽ được vô hiệu hoá bằng
cách set bit 0 của thanh ghi chức năng đặc biệt có địa chỉ byte là 8E(h) Khi bit này được set, ALE chỉ tích cực trong thời gian thực thi lệnh MOVX hoặc
MOVC Ngược lại chân này sẽ được kéo lên mức cao Việc set bit không cho
phép hoạt động chốt byte thấp của địa chỉ sẽ không có tác dụng nếu bộ vi điều khiển đang ở chế độ thực thi chương trình ngoài
Trang 13 XTAL1: Ngõ vào đến mạch khuếch đại đảo của mạch dao động và ngõ vào đếnmạch tạo xung Clock bên trong chip.
XTAL2: Ngõ ra từ mạch khuếch đại đảo của mạch dao động.
2.1.2 Các thanh ghi:
Bộ đếm chương trình (Program couter- PC) 0000h
Accumulator (A) 00h
B register (B) 00h
PSW (Thanh ghi trạng thái chương trình) 00h
SP (Stack pointer – Thanh ghi ngăn xếp) 07h
DPTR (Con trỏ dữ liệu) 0000h
All ports (Các port P0,1,2,3) FFh
IP (Thanh ghi ưu tiên ngắt) XXX00000b
IE (Thanh ghi điều khiển ngắt ) 0XX00000b
All timer registers ( tất cả các thanh ghi của bộ định
2.2 Giới thiệu về cảm biến nhiệt LM35
- LM35 là họ cảm biến nhiệt mạch tích hợp chính xác cao có điện áp đầu ra tỷ lệtuyến tính với nhiệt độ theo thang độ Celsius Họ cảm biến này cũng không yêu cầucăn chỉnh ngoài vì vốn nó đã được căn chỉnh
Trang 14
Sơ đồ chân của cảm biến nhiệt độ LM 35
LM35 là cảm biến nhiệt độ analog ,nhiệt độ được xác định bằng cách đo hiệuđiện thế ngõ ra của LM35
o Đơn vị nhiệt độ : 0C
o Có mức điện áp thay đổi trực tiếp theo 0C ( 10 mV/0C)
o Có hiệu năng cao,công suất tiêu thụ là 60 Ua
o Sản phẩm không cần phải căn chỉnh nhiệt đội khi sử dụng
o Độ chính xác thực tế : 1/4 0C ở nhiệt độ phòng và ¾ 0C ở ngoài khoảng
Trang 15-Độ chính xác +1.5 0C.
-Đầu ra 10 Mv/F
Một số thông số chính của cảm biến đo nhiệt độ LM35:
Cảm biến LM35 là bộ cảm biến nhiệt mạch tích hợp chính xác cao mà điện ápđầu ra của nó tỷ lệ tuyến tính với nhiệt độ theo thang độ Celsius Chúng cũng khôngyêu cầu cân chỉnh ngoài vì vốn chúng đã được cân chỉnh
Đặc điểm chính của cảm biến LM35:
+Điện áp đầu vào từ 4V đến 30V
+ Độ phân giải điện áp đầu ra là 10mV/°C
+ Độ chính xác cao ở 25 C° là 0.5° C
+ Trở kháng đầu ra thấp 0.1 cho 1mA tải
Dải nhiệt độ đo được của LM35 là từ -55 °C - 150° C với các mức điện áp rakhác nhau.Xét một số mức điện áp sau :
- Nhiệt độ -55 C điện áp đầu ra -550Mv
- Nhiệt độ 25° C điện áp đầu ra 250mV
- Nhiệt độ 150°C điện áp đầu ra 1500mV
Tùy theo cách mắc của LM35 để ta đo các giải nhiệt độ phù hợp Đối với hệthống này thì đo từ 0°Cđến 150°C
2.3 Giới thiệu về ADC 0808:
Tính năng: Tự động cập nhật giá trị ADC (giá trị nhiệt độ của LM35) từ IC
ADC0808 rồi hiển thị lên LCD , tạo xung đồng hồ cho IC ADC0808 sử dụng ngắttimer
Trang 16Hình ảnh ADC0808
Sơ đồ chân ADC0808
- Tổng quát: