ĐỒ ÁN TỐT NGHIỆP: ĐIỀU KHIỂN VÀ GIÁM SÁT NHÀ CAO TẦNG DÙNG VI XỬ LÝ 89C51

117 44 1
ĐỒ ÁN TỐT NGHIỆP: ĐIỀU KHIỂN VÀ GIÁM SÁT NHÀ CAO TẦNG DÙNG VI XỬ LÝ 89C51

Đ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

= BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA TP HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ NGÀNH ĐIỀU KHIỂN TỰ ĐỘNG  Đề tài: GVHD: Nguyễn Thị Phương Hà SVTH : Lê Hoàng Dũng K97TĐ MSSV : 49700301 01-2002 MỤC LỤC PHẦN I: GIỚI THIỆU ĐỀ TÀI Chương I: Tổng quan đề tài phương án thiết kế thi công I Yêu cầu đề tài II Hướng thực đề tài III Vấn đề kết nối mạng Chương II: Sơ lược cảm biến báo cháy I Chuyeån đổi nhiệt điện Chuyển đổi cặp nhiệt điện Các loại cảm biến nhieät II Mạch phát khói ( dùng cảm biến quang hay cảm biến ion ) Mạch phát khói dùng phương pháp quang ( cảm biến quang) Mạch phát khói dùng nguyên lý ion (cảm biến ion) III Mạch phát cháy 10 Tế bào quang điện 10 Quang điện trở 10 Photo diode 10 IV Đo nhiệt độ thạch anh 11 Cộng hưởng thạch anh 11 Độ nhạy nhiệt 13 Cách thực nhiệt kế đo 13 PHẦN II: THIẾT KẾ MẠCH ĐIỀU KHIỂN VÀ GIÁM SÁT NHÀ CAO TẦNG DÙNG VI XỬ LÝ 89C51 A Thiết kế phần cứng 15 I Tổng quan đề tài 15 Sơ lược đề tài 15 Các khối chức naêng 17 II Thiết kế phần cứng 17 Cảm biến quang Mạch mô cảm biến quang phát người 19 Mạch động lực đóng cắt thiết bị 20 Mạch nguồn cung cấp 21 Maïch hiển thị nhiệt độ LED đoạn 22 Công tắc đóng ngắt thiết bị theo yêu cầu 23 Mạch chuông 23 Mạch giao tiếp máy tính qua mạng RS-485 24 Mạch cảm biến đo nhiệt độ dùng IC LM335 28 10 Thiết kế mạch 89C51 sơ đồ chân chức chúng 32 10.1 Giới thiệu vi xử lý 89C51 32 10.2 Tổ chức sử dụng chân 89C51 37 B Lưu đồ giải thuật 40 C Chương trình vi xử ly ù61 D Giới thiệu IC dùng đề tài 72 PHẦN III: GIAO TÍÊP MÁY TÍNH VỚI VI XỬ LÝ Chương I: Sơ lược mạng máy tính giao thức truyền 77 A Tổng quan mạng máy tính 77 I Các yếu tố mạng máy tính 77 II Phân loại mạng máy tính 78 III Đường truyền vá thiết bị dùng mạng máy tính78 B Giao tiếp nối tiếp 81 I Đặc điểm chuẩn RS-232, RS-422, RS-485 82 RS-232 82 RS-422 83 RS-485 83 II Các phương thức truyền thông 83 III Truyền thông tuần tö 84 Chương II: Giao tiếp máy tính với vi xử ly A Điều khiển thu phát liệu thông qua cổng Com 86 I Coång RS-232 86 II Chip thu phát bất đồng bộ-Vi mạch UART (Universal Asynchronous Receiver) 8250A/16450 88 III Truyền nhận liệu qua cổng nối tiếp 89 Chương III: chương trình truyền thông ngôn ngữ visual basic 6.0 I Tổng quan veà Visual Basic 90 II Truyền thông nối tiếp dùng visual basic 92 III Phần giao diện 101 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà PHẦN I GIỚI THIỆU ĐỀ TÀI Chương I TỔNG QUAN VỀ ĐỀ TÀI ĐIỀU KHIỂN VÀ GIÁM SÁT TOÀ NHÀ BẰNG VI XỬ LÝ 89C51 I Yêu cầu đề tài: Trong sống tại, khoa học kỹ thuật phát triển nhanh, công cụ đời giúp giải phóng lao động trí óc: nghiên cứu, cải tiến, sáng tạo Chỉ tiêu khoa học kỹ thuật nâng cao chất lượng hiệu suất công việc, công nghệ tự động đời đáp ứng nhu cầu Cho nên, em nghiên cứu đề tài “ Điều khiển giám sát nhà cao tầng dùng vi xử lý 89C51 qua mạng RS-485 Các kít vi xử lý hoạt động hoàn toàn độc lập theo chương trình lập sẵn Bên cạnh đó, chúng giám sát điều khiển thiết bị phòng thông qua gởi lệnh đến kít vi xử lý cần điều khiển để thi hành lệnh Ngoài việc điều khiển thiết bị dùng điện phòng, ta đảm bảo an ninh cho phòng hệ thống phát cháy, phát trộm cảm biến quang Một chuyên gia công nghệ nhà thông minh ( Home Automation ) – Kenne P.Wacks – viết báo giới thiệu nhà thông minh sau: “ Hơn năm qua, công nghệ gọi công nghệ nhà thông minh nghiên cứu phát triển Công nghệ tạo nên hệ thiết bị cung cấp cho người dùng chúng Những công nghệ trước với khái niệm nhà thông minh sau tạo nên sản phẩm loại hình dịch vụ mẻ tương lai Một số công ty giới thiệu nhà tự động Một vài công ty lớn viện nghiện cứu thăm dò công nghệ đầy tiềm Mạng truyền thông nhà cung cấp sở hạ tầng để liên kết thiết bị cảm biến, điều khiển bảng điều khiển nhà Điều trở nên khả thi cách tạo phát triển công nghệ truyền thông nhà tự động Trong nhà thông minh từ “thiết bị” không đề cập đến dụng cụ nhà bếp, thiết bị video/audio, hệ thống dịch chuyển , thiết bị chiếu sáng, thiết bị sưởi ấm, làm lạnh, hệ thống an ninh Công nghệ bật đèn xanh cho công ty nghiên cứu cho đời sản phẩm hình thức dịch vụ Các sản phẩm có chung điểm tương đồng thuộc tính tương tự Các thuộc tính là: SVTH: Lê Hoàng Dũng Trang Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà  Vai trò thiết bị nhà thông minh: hầu hết thiết bị nhà có vỏ nhựa hay kim loại Một vài thiết bị vận hành độc lập với thiết bị khác Tuy nhiên có dụng cụ cần có thiết bị khác điều khiển Các thiết bị nhà thông minh truyền liệu Ta nhóm thiết bị lại chung nhóm Ví dụ: hệ thống an ninh, hệ thống Audio/Video Trong tương lai hệ thống cho phép máy giặt hay máy rửa chén yêu cầu phận nung nóng nước, chuẩn bị nước nóng chúng cần đến  Sự hợp chuẩn truyền thông: thiết bị tương lai có chuẩn truyền thông chung, có dây nối đặc biệt Tiêu chuẩn nhà thông minh làm nhẹ bớt công việc nhà sản xuất việc phải sáng chế giao thức truyền thông cung cấp đường dây dẫn liệu -  Yêu cầu đề tài mà em giao: Thiết kế phần cứng mạch báo cháy tự động Mạch động lực điều khiển thiết bị dùng điện vi xử lý Mạch phát trộm cảm biến: dùng LED hồng ngoại Mạch giao tiếp máy tính vi xử lý Lập trình giao tiếp ngôn ngữ visual basic II Hướng thực đề tài Để thực phần cứng đảm bảo yêu cầu trên, em thiết kế mạch mô cảm biến quang phát trộm cảm biến quang đếm người vào phòng Do mạch cảm biến cháy có giá trị cao nên em dùng IC đo nhiệt độ để mô Đó IC nhiệt LM 335 Dùng vi xử lý 89C51 để điều khiển mạch động lực đóng tắt thiết bị Chuẩn truyền thông nối tiếp thông dụng RS-232C, nhiên chuẩn truyền thông dùng truyền số liệu khoảng cách ngắn (15m) Nên để truyền liệu từ kit vi xử lý máy tính khoảng cách xa ta dùng chuẩn RS-485 Để chuyển đổi từ chuẩn RS-232C sang chuẩn RS-485 ta cần phải có mạch điện chuyển đổi Sơ đồ khối mạch chuyển đổi sau: Kit vi xử lí I TXD 75176 Max RTS 232 PC RXD Kit vi xử lí II Sơ đồ khối mạch kết nối máy tính kit vi xử lí SVTH: Lê Hoàng Dũng Trang Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Kit vi xử lý em thiết kế có chức sau:  Đo nhiệt độ phòng hiển thị lên LED đoạn, chức đo nhiệt độ, mạch thay cho cảm biến cháy Khi nhiệt độ IC LM335 tăng lên, tùy theo mức lập sẵn chương trình mà báo chuông, hay gởi liệu máy tính biết trạng thái phòng theo giao thức truyền liệu theo kiểu hỏi vòng  Ngoài ra, mạch có chức đếm số người hay vào phòng Trong phòng để đảm bảo tính tự động hoàn toàn công tắc điện thiết bị mà vi xử lý điều khiển Nếu số người phòng lớn hay vi xử lý gởi tín hiệu đến mạch động lực kích đóng thiết bị quạt, máy lạnh, đèn Nếu người phòng không vi xử lý gởi tín hiệu đến mạch động lực tắt thiết bị phòng Tuy nhiên, mạch có hai nút nhấn hay số nút nhấn để người phòng điều khiển có tín hiệu hồi tiếp vi xử lý nhận biết thiết bị đóng hay mở Khi người dùng nhấn nút tương ứng tùy vào trạng thái thiết bị mà vi xử lý kích đóng hay ngắt thiết bị Phần làm cho mạch linh động, không tuân theo chương trình phần mềm cài sẵn cách cứng ngắt  Giả sử nhiệt độ trời giảm xuống khoảng 15oC không cần bật máy lạnh làm Tuy nhiên, vi xử lý nhận thấy có người phòng đóng nguồn cho máy lạnh hoạt động Người phòng tắt máy lạnh nút nhấn mạch vi xử lý Ta khắc phục nhược điểm cách viết chương trình cho vi xử lý so sánh nhiệt độ phòng với nhiệt độ chuẩn ( 15oC chẳng hạn ) Nếu nhiệt độ đo bé 15oC tắt máy lạnh Do mạch sử dụng ADC 0809 sai số tương đối không nhiều, nhiên mạch gia công tín hiệu IC nhiệt LM335 nhiệt độ thấp áp nhỏ ADC đổi sai số tương đối cao Sai số mạch gia công gây đồng thời cộng thêm sai số thân ADC 0809 Cho nên không đảm bảo mạch hoạt động thiết kế nhiệt độ nhỏ 15oC  Mạch cảm biến quang dùng để phát trộm đặt thiết bị hay dụng cụ cần gìn giữ III Vấn đề kết nối mạng Thuật ngữ mạng trở nên quen thuộc mạng thông tin Internet ngày trở nên gần gũi với người Nếu quản lý thiết bị phòng theo phương pháp thông thường không kinh tế tiết kiệm Ta cần phải để tiết kiệm cho nhiều tốt Cho nên để tránh lãng phí ta nên điều khiển thiết bị máy tính Chỉ cần nhân viên tắt hay mở SVTH: Lê Hoàng Dũng Trang Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà thiết bị phòng Nếu ta tắt thiết bị tay không kinh tế, khách khỏi phòng mà quên tắt thiết bị lãng phí nhiều lượng điện Tiết kiệm phần lượng hao phí ta giúp cho việc giảm giá thành kinh doanh cho thuê phòng chẳng hạn Máy tính có khả đóng tắt thiết bị thông qua vi xử lý, đồng lưu trữ trạng thái thiết bị trước PC RTS RXD TXD Khối chuyển đổi RS-485 sang R-232 B A B B Khối chuyển đổi mức TTL sang RS-485 RXD TXD Kit vi xử lí phòng A A B Khối chuyển đổi mức TTL sang RS-485 Điều RXD khiển TXD A Khối chuyển đổi mức TTL sang RS-485 Điều khiển Kit vi xử lí phòng RXD TXD Điều khiển Kit vi xử lí phòng Sơ đồ khối mạch kết nối máy tính kit vi xử lí SVTH: Lê Hoàng Dũng Trang Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Chương II GIỚI THIỆU VỀ CÁC MẠCH BÁO CHÁY Cảm biến dựa vào đặc tính vật lý vật liệu, tượng vật lý để chuyển đổi đại lượng phi điện thành tín hiệu điện để đơn giản trình đo lường tính toán Mô tả toán học cảm biến hàm truyền ký hiệu H Phương trình mô tả cảm biến biểu diễn sau: Đại lượng (điện)=H x đại lượng vào (phi điện)  Các đặc tính chuẩn cảm biến: _ Độ nhạy _ Độ ổn định _ Nhiễu (có khả hoạt động trường có tín hiệu gây nhiễu hay nhiễu cảm biến sinh trình hoạt động) _ Tầm đo _ Độ tuyến tính (cảm biến có độ tuyến tính cao tốt)  Hệ thống báo cháy thường gồm loại mạch báo cháy thông dụng: _ Mạch báo cháy nhiệt _ Mạch báo cháy khói _ Mạch báo cháy lửa Hầu hết linh kiện điện tử có đặc tính nhiệt thay đổi theo nhiệt độ Nhưng để làm cảm biến ta chọn vật liệu có độ nhạy cao hàm truyền tốt mà Đây loại cảm biến tương đối phức tạp tinh vi, sử dụng linh kiện điện tử chuyên dụng Các linh kiện điện tử có nhiều thị trường linh, kiện Việt Nam Nó sử dung nguyên tắc dòng hay áp linh, kiện thay đổi nhiệt độ nơi đặt thiết bị thay đổi Tùy theo loại mà tăng hay giảm đại lượng điện theo nhiệt độ Loại cảm biến nhạy gây tình trạng báo động nhầm có nguồn nhiệt để gần cảm biến Ví dụ thân nhiệt người chẳng hạn I Chuyển đổi nhiệt điện : Chuyển đổi nhiệt điện chuyển đổi dựa trình nhiệt đốt nóng, làm lạnh, trao đổi nhiệt… Thực tế đo lường đại lượng không điện theo phương pháp điện thường dùng hai tượng, ( hiệu ứng nhiệt điện hiệu ứng thay đổi nhiệt trở dây dẫn hay chất bán dẫn nhiệt độ thay đổi SVTH: Lê Hoàng Dũng Trang Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Tương ứng với hai tượng trên, người ta phân thành hai loại: chuyển đổi cặp nhiệt điện chuyển đổi nhiệt điện trở Chuyển đổi cặp nhiệt điện: a Nguyên lý làm việc cặp nhiệt điện : chủ yếu dựa hai tượng sau: Nếu hai dây dẫn khác nối với hai điểm 2, hai điểm ( ví dụ ta lấy điểm 1) đốt nóng mạch xuất dòng điện gây sức điện động gọi sức điện động nhiệt điện, hiệu số hàm số nhiệt độ ET = f(t1)- f(t2) Mạch điện gọi cặp nhiệt điện hay cặp điện ngẫu Điểm đốt nóng gọi đầu công tắc ( điểm ), điểm lại gọi đầu tự do( điểm thứ ) số f(t2)=const thì: ET = f(t1) – C Biểu thức sở phép đo nhiệt độ cặp nhiệt điện Theo phương pháp này, việc đo nhiệt độ t1 dẫn đến việc đo sức điện động cặp nhiệt điện giữ cố định nhiệt độ đầu tự Vật liệu dùng để chế tạo cặp nhiệt điện ngẫu cần đảm bảo yêu cầu sau: quan hệ sức điện động nhiệt điện với nhiệt độ hàm đơn trị, tính chất nhiệt điện không thay đổi, độ bền hóa học học phải cao, dẫn nhiệt tốt, có trị số suất điện động nhiệt lớn Cặp nhiệt điện nối với phương pháp hàn đặc biệt đặt thiết bị bảo vệ nhằm tránh bị ăn mòn hóa học, thiết bị chế tạo từ vật liệu bền học, không thấm khí, không bị ăn mòn Thiết bị thường ống chế tạo thép đặc biệt Đối với cặp nhiệt điện q , ống bảo vệ chế tạo thạch anh gốm Để cách điện người ta dùng Amian (3000C ), ống thạch anh ( với 10000C ) ống sứ đến 1400C b Những nguyên nhân gây sai số hiệu chỉnh cho đúng: Ta biết phương trình biến đổi cặp nhiệt điện trường hợp chung, cách gần biểu diễn dạng : ET =A.t+B.t2 +C.t3 ET : sức điện động nhiệt T: hiệu nhiệt độ đầu công tắc đầu tự A, B, C :các số phụ thuộc vào vật liệu dây làm cặp nhiệt điện Và độ nhạy tính sau: ST  A+2Bt +3Ct SVTH: Lê Hoàng Dũng Trang Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Độ nhạy số mà phụ thuộc vào nhiệt độ Do cặp nhiệt điện công nghiệp thường cho trước bảng sức điện động ứng với nhiệt độ khác khoảng 10C với đầu tự 00C c Chuyển đổi nhiệt điện trở: Nhiệt điện trở chuyển đổi có điện trở thay đổi theo thay đổi nhiệt độ Tùy theo tác dụng nhiệt dòng điện cung cấp chạy qua chuyển đổi người ta phân ra: nhiệt điện trở đốt nóng nhiệt điện trở không đốt nóng Trong nhiệt điện trở không đốt nóng dòng điện chạy qua nhỏ không làm tăng nhiệt độ điện trở nhiệt độ nhiệt độ môi trường Nhiệt điện trở loại dùng để đo nhiệt độ đại lượng học đo dịch chuyển Nhiệt điện trở đốt nóng, dòng điện chạy qua lớn làm nhiệt độ tăng lên cao nhiệt độ môi trường , nên có tỏa nhiệt môi trường xung quanh Nhiệt điện trở loại dùng việc đo lưu lượng, lưu tốc dòng chảy, phân tích chất hóa học… Nhiệt điện trở chế tạo dây chất bán dẫn Yêu cầu vật liệu chế tạo có hệ số nhiệt độ lớn, bền hóa học, điện trở suất lớn, khó nóng chảy… Để giảm tổn hao nhiệt dẫn, chiều dài nhiệt điện trở cần phải lớn đường kính dây gấp nhiều lần Các loại cảm biến nhiệt: a Thermocouples: Thermocouples biến đổi đại lượng nhiệt độ thành dòng điện hay điện áp DC nhỏ Nó gồm có hai dây kim loại khác nối với hai đầu mối nối Khi mối nối đặt vị trí khác nhau, dây dẫn xuất sức điện động Sức điện động tỉ lệ với chênh lệch nhiệt độ hai đầu mối nối Thermocouples có hệ số nhiệt dương b Thermistor: Thermistor điện trở có độ nhạy nhiệt cao phi tuyến vả có hệ số nhiệt âm Điện trở giảm phi tuyến tăng nhiệt độ Thermistor điện trở nên dòng điện qua sinh nhiệt gây nên sai số lớn Do phải hạn chế dòng qua nhỏ c Điện trở dò nhiệt (RTDs): Cảm biến loại dựa vào đặc tính trở phụ thuộc nhiệt độ vật liệu Nó có hệ số nhiệt dương nhỏ, đo xác d IC cảm biến nhiệt độ bán dẫn: IC cảm biến bán dẫn kết hợp với mạch gia công bên Nhờ IC tạo tín hiệu điện áp tỷ lệ với nhiệt độ tuyệt đối, với độ nhạy nhiệt độ SVTH: Lê Hoàng Dũng Trang Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Hàm tương tự thuộc tính Output trả lại số byte ký tự gửi Sự kiện Oncomm Sự kiện OnComm phát sinh vào giá trị thuộc tính CommEvent thay đổi Cú pháp kiện : Private Sub [form.]Mscomm1_OnComm() Thuộc tính CommEvent chứa mã số lỗi hay kiện phát sinh kiện OnComm Nếu đặt thuộc tính Rthreshold SThreshold vô hiệu bẫy kiện Receive Send Hỏi vòng cổng RS-232 : Thường làm việc với điều khiển Mscomm1, ta dùng phương pháp điều khiển theo kiện Nhưng ta sử dụng kỹ thuật hỏi vòng để thông tin qua cổng RS-232 Chương trình ví dụ sau sử dụng COM2 để gửi thông báo “Hello” sau chờ chuỗi nhận Kỹ thuật quy định nhận đáp ứng cách kiểm tra liên tục số ký tự nhận đệm nhận (InBufferCount) Khi có nhiều ký tự đệm lối vào ký tự đọc Chương trình sau : Private Sub Form_Load() Dim Str as String ‘chuỗi để chứa liệu nhập Mscomm11.ComPort =2 ‘duøng COM2 Mscomm11.Settings=”9600 ,N ,8 ,1” ‘9600 baud ,không ‘parity ,8 bits data ,1 ‘stop bit Mscomm11.InputLen=0 ‘đọc hết đệm lối vào Input dùng ‘mở cổng Mscomm11.PortOpen=True Text1.text=”Sending : Hello” Mscomm11.Output=”Hello” ‘gửi thông báo Do ‘chờ đáp ứng từ cổng DoEvents Loop Until Mscomm11.InBufferCount>=2 Str = Mscomm11.Input ‘đọc đệm Input Text2.Text=”Received:” +Str Mscomm11.PortOpen=False ‘đóng cổng nối tiếp End Sub SVTH: Lê Hoàng Dũng Trang 100 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Các thông báo lỗi (Error Messages Code) Số loãi 380 383 394 8000 8001 8002 8003 8004 8005 8006 8007 8008 Mô tả Giá trị thuộc tính không hợp lệ Thuộc tính đọc, comSetNotSupport Thuộc tính đọc, comGetNotSupport Tác động không hợp lệ lên cổng mở Giá trị timeout cần phải lớn Zero Số lỗi 8009 Số cổng không hợp lệ 8014 Thuộc tính có chạy chương trình Thuộc tính đọc chạy chương trình Cổng mở Số nhận dạng thiết bị không hợp lệ không hỗ trợ Giá trị Baud xác định không hợp lệ Kích thước byte xác định không hợp lệ 8010 8011 Mô tả Lỗi thông số mặc định Phần cứng không sẵn dùng (bị khóa thiết bị khác) Không thể định vị hàng đợi (queues) 8012 Cổng chưa mở 8013 Cổng mở 8015 8016 8018 Không thể cho phép khai báo(nitification)comm Không đặt trạng thái cho comm Không đặt mặt nạ kiện comm Tác động hợp lệ cổng mở 8019 Thiết bị bận 8020 Lỗi đọc thiết bị truyền thông 8021 Lỗi bên liên quan khối điều khiển thiết bị port III Phần giao diện : SVTH: Lê Hoàng Dũng Trang 101 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Chương trình giao tiếp nối tiếp dùng ngôn ngữ Visual Basic sau: ‘Phần khai báo biến toàn cục trrong module SVTH: Lê Hoàng Dũng Trang 102 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà public LenhT, DiaChi As String 'bien chua ma lenh dua ve cho vi xu ly Public GTNhan As Variant ' bien chua data tu vi xu ly gui len Public Byte1, Byte2, Byte3, Byte4 As String 'la byte nhan duoc tu vi xu ly 'byte1 chua dia chi cua vxl 'byte2 chua gia tri nhiet 'byte3 chua so nguoi phong 'byte4 trang thai den va quat Public Byte21, Byte22, Byte23, Byte24 As String 'cac bien cho phong Public Const AnNinh = "Khong co nguoi la xam nhap" Public Const KAnNinh = "Canh bao co nguoi la xam nhap" ‘ ham truyen du lieu toi cac vi xu li Public Sub TRUYEN(GIATRI As String) Dim i As Integer frmchinh.MSComm1.RTSEnable = True frmchinh.MSComm1.Output = GIATRI For i = To 10000 i = i + Next i frmchinh.MSComm1.RTSEnable = False End Sub ‘ Ham nhan du lieu tu vi xu li Public Sub NHAN() Dim i, thongbao As Integer Dim Test As String frmchinh.MSComm1.RTSEnable = False For i = To 30000 i = i + Next i Do DoEvents Loop Until (frmchinh.MSComm1.InBufferSize >= 4) Or (i >= 30000) GTNhan = frmchinh.MSComm1.Input 'thuc hien gan gia tri cho bytei (i=1-4) Test = Left$(GTNhan, 1) If Test = "A" Then SVTH: Leâ Hoàng Dũng Trang 103 Luận văn tốt nghiệp Byte1 Byte2 Byte3 Byte4 GVHD: Nguyễn Thị Phương Hà = = = = Left$(GTNhan, 1) Mid$(GTNhan, 2, 1) Mid$(GTNhan, 3, 1) Right$(GTNhan, 1) Else If Test = "B" Then Byte21 = Left$(GTNhan, 1) Byte22 = Mid$(GTNhan, 2, 1) Byte23 = Mid$(GTNhan, 3, 1) Byte24 = Right$(GTNhan, 1) Else thongbao = MsgBox("So lieu truyen ve bi loi.Can xem lai duong truyen", vbOKOnly, "Loi duong truyen") End If End If End Sub ‘******************************************************** ‘Chuong trinh Frmchinh ‘******************************************************* Dim ToanCuc As Variant Dim Dem, i, j As Integer Dim NHAN As String Private Sub ChkP01_Click() If ChkP01.Value = Then frmP01.Show If ChkP01.Value = Then Unload frmP01 End If '****************************** End Sub Private Sub ChkP02_Click() If ChkP02.Value = Then frmP02.Show If ChkP02.Value = Then Unload frmP02 End If '*************************** End Sub Private Sub Command1_Click() End End Sub SVTH: Lê Hoàng Dũng Trang 104 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Haø Private Sub Form_Load() Dim i1, i2 As Integer ChkP03.Enabled = False ChkP04(1).Enabled = False LblTThai.Caption = "Binh thuong" TxtChinh = CStr(2) OptAuto.Value = True '********************************* 'PHAN GIA DINH BIEN Byte2 = "!" Byte3 = "!" Byte4 = "O" Byte22 = "!" Byte23 = "!" Byte24 = "O" LenhT = "a" '********************************* 'KHOI DONG COM If MSComm1.PortOpen = True Then MSComm1.PortOpen = False MSComm1.CommPort = MSComm1.Settings = "9600,n,8,1" MSComm1.PortOpen = True 'cho thu du lieu dua ve tu vi xu ly frmP02.Timer1.Enabled = True frmP01.Timer1.Enabled = True 'hien thi so nguoi len frmchinh frmchinh.Timer1 = True End Sub Private Sub OptAuto_Click() With frmP01 frmP01.fraDkP01.Enabled = False frmP01.OptTdenP01.Enabled = False frmP01.OptMdenP01.Enabled = False frmP01.OptTquatP01.Enabled = False frmP01.OptMquatP01.Enabled = False frmP01.Frame1.Enabled = False frmP01.Frame2.Enabled = False End With With frmP02 frmP02.FraDkP02.Enabled = False frmP02.OptTdenP02.Enabled = False frmP02.OptMdenP02.Enabled = False SVTH: Leâ Hoàng Dũng Trang 105 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà frmP02.OptTquatP02.Enabled = False frmP02.OptMquatP02.Enabled = False frmP02.Frame2.Enabled = False frmP02.Frame3.Enabled = False End With frmP01.cmdDongYP01.Enabled = False frmP02.cmDongYP02.Enabled = False '*********************************** End Sub Private Sub OptDenChinh_Click() FrmDkDen.Show End Sub Private Sub OptManual_Click() With frmP01 frmP01.fraDkP01.Enabled = True frmP01.OptTdenP01.Enabled = True frmP01.OptMdenP01.Enabled = True frmP01.OptTquatP01.Enabled = True frmP01.OptMquatP01.Enabled = True frmP01.Frame1.Enabled = True frmP01.Frame2.Enabled = True End With With frmP02 frmP02.FraDkP02.Enabled = True frmP02.OptTdenP02.Enabled = True frmP02.OptTquatP02.Enabled = True frmP02.OptMdenP02.Enabled = True frmP02.OptMquatP02.Enabled = True frmP02.Frame2.Enabled = True frmP02.Frame3.Enabled = True End With frmP01.cmdDongYP01.Enabled = True frmP02.cmDongYP02.Enabled = True '************************************ End Sub Private Sub OptQuatChinh_Click() FrmDkQuat.Show End Sub SVTH: Lê Hoàng Dũng Trang 106 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Private Sub Timer1_Timer() ' xuat so nguoi frmchinh i1 = Val(frmP01.TxtSoNguoiP01.Text) i2 = Val(frmP02.TxtSoNguoiP02.Text) TxtChinh.Text = CStr(i1 + i2) End Sub Private Sub cmdDongYP01_Click() Dim Test As String 'xac dinh lenh hoat dong cho vxl If (OptMdenP01.Value = False And OptMquatP01.Value = False) Then LenhT = "C" If (OptMdenP01.Value = False And OptMquatP01.Value = True) Then LenhT = "D" If (OptMdenP01.Value = True And OptMquatP01.Value = False) Then LenhT = "F" If (OptMdenP01.Value = True And OptMquatP01.Value = True) Then LenhT = "G" 'xac dinh dia chi truyen la vxl DiaChi = "A" Test = LenhT 'goi ham truyen LenhT cho vi xu ly Call TRUYEN(DiaChi) Call TRUYEN(Test) Stop End Sub Private Sub cmdThoatP01_Click() Unload Me frmchinh.ChkP01.Value = False End Sub Private Sub Option1_Click() End Sub Private Sub Form_Load() If frmchinh.OptAuto.Value = True Then With frmP01 frmP01.fraDkP01.Enabled = False SVTH: Lê Hoàng Dũng Trang 107 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Haø frmP01.OptTdenP01.Enabled = False frmP01.OptMdenP01.Enabled = False frmP01.OptTquatP01.Enabled = False frmP01.OptMquatP01.Enabled = False frmP01.Frame1.Enabled = False frmP01.Frame2.Enabled = False End With With frmP02 frmP02.FraDkP02.Enabled = False frmP02.OptTdenP02.Enabled = False frmP02.OptMdenP02.Enabled = False frmP02.OptTquatP02.Enabled = False frmP02.OptMquatP02.Enabled = False frmP02.Frame2.Enabled = False frmP02.Frame3.Enabled = False End With End If '************************************** 'KHOI DONG COM If frmchinh.MSComm1.PortOpen = True Then frmchinh.MSComm1.PortOpen = False frmchinh.MSComm1.CommPort = frmchinh.MSComm1.Settings = "9600,n,8,1" frmchinh.MSComm1.PortOpen = True 'Cap nhat trang thai cua phong frmP01.Timer1.Enabled = True End Sub Private Sub CapnhatP01() Dim NhietdoP01, SoNguoiP01, i As Integer Dim thongbao As String NhietdoP01 = Asc(Byte2) txtNhietDoP01.Text = Val(NhietdoP01) nhiet SoNguoiP01 = Asc(Byte3) TxtSoNguoiP01.Text = Val(SoNguoiP01) nguoi If Byte4 = "O" Then txtDenP01.Text = "OFF" txtQuatP01.Text = "OFF" frmchinh.LblTThai = AnNinh End If If Byte4 = "P" Then SVTH: Lê Hoàng Dũng 'hien thi 'hien thi so Trang 108 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà txtDenP01.Text = "OFF" txtQuatP01.Text = "OFF" frmchinh.LblTThai = KAnNinh End If If Byte4 = "Q" Then txtDenP01.Text = "OFF" txtQuatP01.Text = "ON" frmchinh.LblTThai = AnNinh End If If Byte4 = "R" Then txtDenP01.Text = "OFF" txtQuatP01.Text = "ON" frmchinh.LblTThai = KAnNinh End If If Byte4 = "S" Then txtDenP01.Text = "ON" txtQuatP01.Text = "OFF" frmchinh.LblTThai = AnNinh End If If Byte4 = "T" Then txtDenP01.Text = "ON" txtQuatP01.Text = "OFF" frmchinh.LblTThai = AnNinh End If If Byte4 = "U" Then txtDenP01.Text = "ON" txtQuatP01.Text = "ON" frmchinh.LblTThai = AnNinh End If If Byte4 = "X" Then txtDenP01.Text = "ON" txtQuatP01.Text = "ON" frmchinh.LblTThai = KAnNinh End If 'BAO LOI TRUYEN (lenh truyen ve sai) Select Case Byte4 Case "O" GoTo TB Case "P" GoTo TB Case "Q" GoTo TB SVTH: Leâ Hoàng Dũng Trang 109 Luận văn tốt nghiệp GVHD: Nguyễn Thị Phương Hà Case "R" GoTo TB Case "S" GoTo TB Case "T" GoTo TB Case "U" GoTo TB Case "X" GoTo TB End Select thongbao = MsgBox("Ban can kiem tra lai he thong.Chu cac he thong chong trom", vbOKOnly, "Loi dieu khien") TB: i = i + End Sub Private Sub Timer1_Timer() Dim Kich As String Kich = "E" Call TRUYEN(DiaChi) Call TRUYEN(Kich) Call CapnhatP01 End Sub SVTH: Lê Hoàng Dũng Trang 110 Hướng phát triển đề tài Ngày đà phát triển chung nước ta ngày có thêm nhiều nhà cao tầng, để quản lý toàn tòa nhà có phương pháp dùng mạng kết nối thành vìên phòng lại với Trong chuẩn mạng truyền thông mạng RS-485 sử dụng nhiều tính hiệu kinh tế Để tài áp dụng thực tế tính sát thực Ngoài dùng để điều khiển thiết bị đèn quạt đề tài kit vi xử lý điều khiển thêm nhiều thiết bị khác Tuy nhiên thực tế có nhiều phòng cần điều khiển, áp dụng cách điều khiển trực tiếp từ máy tính xuống kit mạng RS-485 đáp ứng được, ta có đến vài trăm phòng, mạng RS-485 tối đa 128 slave ta áp dụng phương pháp điều khiển phân cấp Tại tầng có master đóng vai trò trung gian giao tiếp máy tính kit vi xử lý phòng Master chịu trách nhiệm việc phân chia thời gian truyền kit vi xử lý, máy tính giao tiếp với master trung gian mà thôi, hệ thống có tới cấp điều khiển Hạn chế ta dùng phương pháp hỏi vòng chu kỳ bus dài, không đáp ứng trường hợp cần truyền máy tính Tài liệu tham khảo [1] Hoàng Minh Sơn: “ Mạng truyền thông công nghiệp”, NXB Khoa Học Kỹ Thuật, 2001 [2] “Tra cứu IC Nhật Bản”, NXB Khoa Học Kỹ Thuật [3] Dương Minh Trí,” Sơ đồ chân linh kiện”, NXB Khoa Học Kỹ Thuật [4] Ngô Diên Tập, “Đo lường điều khiển máy tính”, NXB Khoa Học Kỹ Thuật [5] Ngô Diên Tập, “ Lập trình kết nối máy tính Window”, NXB Khoa Học Kỹ Thuật [6] The 8051 Microcontroller-I Scott Mackenzie 2nd ed By Prentice Inc-1995 [7] Jan Axelson :” Programming and Circuits for RS-232 and RS-485 Links and Network: BÁO CÁO KẾT QUẢ THI CÔNG Với phần cứng mạch trình bày viết chương trình điều khiển gây số khó khăn lúc xử lý chương trình Phần hiển thị LED: Do mạch dùng hiển thị LED đoạn theo phương pháp quét, giải mã phần cứng( dùng IC giải mã 74247 ) Cho nên ta phải quét LED liên tục để đảm bảo độ sáng cho LED LED phép sáng vòng 1ms Nếu chương trình bị ngắt gây khoảng thời gian delay không quét LED thời gian 5ms làm cho LED tắt Đây điều không mong muốn Ta có hai hướng để khắc phục tình trạng sau:  Bằng phần cứng: dùng phương pháp chốt để hiển thị LED, không ảnh hưởng đến độ sáng LED ta ngắt chương trình để thực việc khác  Bằng phần mềm: ta dùng ngắt timer để hiển thị LED , để tạo khoảng thời gian delay dài cần thiết Khi ngắt truyền xảy ta cần đến 5ms liên tiếp để truyền số liệu máy tính Khi ngắt timer xảy cho phép AD đổi lần thứ nhất, ngắt timer xảy ta cho phép hiển thị LED Chỉ đến 500ms sau ta cho phép AD đổi lần thứ hai Mạch động lực: Mạch động lực em thiết kế nguyên tắc kích đóng mức kích ngắt mức điều làm cho vi xử lý kích đóng thiết bị ta reset lại vi xử lý Ta tránh tình trạng cách kích mức thấp để đóng ngắt thiết bị Điều thực cách cho tín hiệu kích từ vi xử lý qua mạch logic NOT LỜI CẢM TẠ Sinh viên thực xin bày tỏ lòng biết ơn đến cô Nguyễn Thị Phương Hà cương vị người hướng dẫn đề tài tận tình giúp đỡ suốt trình thực đồ án Sinh viên thực xin bày tỏ lòng biết ơn đến thầy cô trường Đại Học Kỹ Thuật tận tình dạy dỗ truyền thụ kinh nghiệm quý báu suốt thời gian qua Cuối sinh viên thực xin chân thành cảm ơn tác giả tài liệu tham khảo tập báo cáo đóng góp ý kiến cuả tất bạn sinh viên suốt trình thực đo án Ngày 20 tháng năm 2001 Sinh viên thực Lê Hoàng Dũng ... nâng cao chất lượng hiệu suất công vi? ??c, công nghệ tự động đời đáp ứng nhu cầu Cho nên, em nghiên cứu đề tài “ Điều khiển giám sát nhà cao tầng dùng vi xử lý 89C51 qua mạng RS-485 Các kít vi xử lý. .. Chức khối: a Vi xử lý 89C51: Đây xứ lý trung tâm mạch đặt phòng nhà 89C51 loại IC có khả xử lý điều khiển theo chương trình lập sẵn có khả thực yêu cầu gởi đến từ máy tính Vi xử lý 89C51 mạch thiết... trình lập sẵn Bên cạnh đó, chúng giám sát điều khiển thiết bị phòng thông qua gởi lệnh đến kít vi xử lý cần điều khiển để thi hành lệnh Ngoài vi? ??c điều khiển thiết bị dùng điện phòng, ta đảm bảo an

Ngày đăng: 22/08/2020, 22:54

Từ khóa liên quan

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

Tài liệu liên quan