HỆ THỎNG ĐIÊU KHIỂN NGÔI NHÀ THÔNG MINH _ _HỆ THÓNG ĐIỆU KHIỂN NGÔI NHÀ THÔNG MINH

127 26 0
HỆ THỎNG ĐIÊU KHIỂN NGÔI NHÀ THÔNG MINH _ _HỆ THÓNG ĐIỆU KHIỂN NGÔI NHÀ THÔNG MINH

Đ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

HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM Lời cảm ơn Cuốn luận văn hoàn thành tốt đẹp theo thời gian quy định nhà trường khoa.Việc đạt kết không nỗ lực em mà giúp đỡ, bảo thầy hướng dẫn, quý thầy cô bạn sinh viên Em xin chân thành cám ơn !: Sự dạy dỗ, bảo góp ý quý thầy cô khoa Đặc biệt giúp đỡ bảo tân tình Thầy giáo Huỳnh Văn Kiểm người trực tiếp hướng dẫn chúng em trình làm luận văn Xin cám bạn sinh viên khoa giúp đỡ nhiều mặt: phương tiện, sách vở, ý kiến … HCM, ngày 01 tháng 07 năm 2009 Sinh viên thực hiện: - Phan Cảnh Danh - Nguyễn Nguyên Hà LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM NHẬN XÉT CỦA GIÁO VIỆN H ƯỚNG DẪN HCM, ngày tháng năm 2009 Giáo viên hướng dẫn Th.s Huỳnh Văn Kiểm LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM NHẬN XÉT CỦA GIÁO VIỆN PHẢN BIỆN HCM, ngày tháng năm 2009 Giáo viên phản biện LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM M ỤC L ỤC  Lời cảm ơn NHẬN XÉT CỦA GIÁO VIỆN HƯỚNG DẪN NHẬN XÉT CỦA GIÁO VIỆN PHẢN BIỆN Lời mở đầu CHƯƠNG 1: DẪN NHẬP 1.1.ĐẶT VẤN ĐỀ: 1.2 MỤC ĐÍCH NGHIÊN CỨU: 1.3 Ý NGHĨA THỰC TIỂN: CHƯƠNG 2: GIỚI THIỆU CHUNG VỀ BỘ VI ĐIỀU KHIỂN 2.1.GIỚI THIỆU : 2.2.LỊCH SỬ PHÁT TRIỂN CỦA C ÁC BỘ VI ĐIỀU KHIỂN : 2.3.KHẢO SÁT BỘ VI ĐIỀU KHIỂN 8051 V À 8031: 10 2.3.1.Cấu trúc bên 8051 / 8031 11 2.3.2 Cấu trúc bên chức chân 8051 12 2.4.TỔ CHỨC BỘ NHỚ 8051: 15 2.5.CÁC THANH GHI ĐẶC BIỆT: 18 2.6 BỘ NHỚ NGOÀI: 22 2.7 CÁC NHÓM LỆNH CỦA 8051/8053: 25 2.7.1.Nhóm lệnh xử lý số học 26 2.7.2.Nhóm lệnh luận lý 27 2.7.3.Nhóm lệnh chuyển liệu 28 2.7.4.Nhóm lệnh chuyền điều khiển 29 CHƯƠNG 3: TÌM HIỂU GIAO TIẾP MÁY TÍNH 30 3.1 CÁC PHƯƠNG PHÁP GIAO TI ẾP: 30 3.1.1.Giao Tiếp Với Máy Tính Thông Qua Slot Card .30 3.1.2.Giao Tiếp Qua Serial Port (Port COM) 30 3.1.3.Giao Tiếp Qua Cổng PRINT (Cổng Máy In) .31 3.2 GIAO TIẾP QUA CỔNG NỐI TIẾP: 31 3.2.1 Cấu tạo cồng nối tiếp 31 3.2.2 Truyền thông hai nút 35 3.2.3 Truy xuất trực tiếp thông qua cổng 36 CHƯƠNG 4: CHUẨN GIAO TIẾP VÀ CÁC LINH KIỆN 40 4.1 CHUẨN RS232 VÀ CHUẨN RS485: 40 4.1.1 Chuẩn RS232 40 4.1.2 Chuẩn RS-485 41 4.1.2.1 Một số vấn đề liên quan đến chuẩn RS485 43 LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM 4.1.2.2 Các kiểu mẫu truyền nhận RS485 47 4.2 BỘ CHUYỂN ĐỔI ADC0809: 50 4.2.1 sơ đồ chân 50 4.2.2 chức chân 50 4.2.3.Các đặc điểm củaADC 0809 50 4.2.4 Nguyên lý hoạt động 51 4.3 MÀN HÌNH LCD: 53 4.3.1.Sơ đồ chân LCD để kết nối với vi điều khiển 53 4.3.2.Một số tính LCD 54 4.3.3 Ghép nối LCD với VĐK họ MSC -51 54 4.3.4.Bảng mã code LCD 55 CHƯƠNG 5:TÌM HIỂU LẬP TRÌNH VISUABASIC .56 5.1.LẬP TRÌNH VỚI VISUAL BASIC: 56 5.2 CÁC ĐặC TÍNH CỦA MSCOMM: 58 5.2.1 Đặc tính Settings 58 5.2.2 Đặc tính CommPort 58 5.2.3 Đặc tính PortOpen 58 5.2.4.Đặc tính Input 59 5.2.5 Đặc tính Output 59 CHƯƠNG 6:THIẾT KẾ VÀ THI CÔNG HỆ THỐNG 63 6.1 MÔ TẢ HỆ THỐNG: 63 6.1.1 Sơ đồ khối hệ thống 63 6.1.2 Mô tả 64 6.2 MÔ TẢ SƠ ĐỒ CHI TIẾT: 64 6.2.1 Mạch nguồn .64 6.2.2 Mạch chuyển đổi RS_232 sang RS_485 65 6.2.2.1.Sơ đồ chi tiết 65 6.2.2.2 Nguyên lý hoạt động 65 6.2.3 khối VXL1 68 6.2.4 khối VXL 69 6.3 LƯU ĐỒ GIẢI THUẬT VÀ CHƯƠNG TRÌNH: 77 6.3.1.khối điều khiển cửa 77 6.3.1.1 lưu đồ giải thuật 77 6.3.1.2 Chương trình: 79 6.3.2 Khối Điều Khiển Thiết Bị .87 6.3.2.1.lưu đồ giải thuật 87 6.3.2.2 Chương trình VXL 92 6.4 GIAO DIỆN VÀ CHƯƠNG TRÌNH VB: 104 6.4.1 Giao diện VB 104 6.4.2 Chương trình VB 106 6.5 KẾT QUẢ THỰC HIỆN: 125 LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM 6.5.1.Phần cứng .125 6.5.2 Giao diện máy tính 125 KẾT LUẬN 127 TÀI LIỆU THAM KHẢO 127 LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM Lời m đầu Kỹ thuật vi xử lí với tốc độ phát triển nhanh mang đến thay đổi to lớn khoa học công nghệ đời sống hàng ngày Ngày nay, thiết bị máy móc ngày trở nên thơng minh hơn, công việc thực với hiệu cao hơn, nhờ vi xử lý, vi điều khiển Kỹ thuật vi xử lý, vi điều khiển kỹ thuật tương lai, chìa khóa vào công nghệ đại Đối với sinh viên chuyên ngành Điện_Điện Tử, lĩnh vực mới, hứa hẹn mở nhiều triển vọng Những kiến thức lực đạt trình học tập trường đánh giá qua đợt bảo vệ luận văn cuối khóa Vì chúng em cố gắng tận dụng tất kiến thức học trường với tìm tồi nghiên cứu, để hoàn thành tốt luận văn Những sản phẫm kết đạt ngày hôm lớn lao Nhưng thành năm học tập Là thành công chúng em trước trường Trong trình thực đề tài này, chúng em cố gắng, xong chắn không tránh khỏi thiếu sót Rất mong nhận góp ý, phê bình, dẫn q thầy bạn đọc HCM, ngày 01 tháng 07 năm 2009 Sinh viên thực hiện: - Phan Cảnh Danh - Nguyễn Nguyên Hà LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM CHƯƠNG 1: DẪN NHẬP 1.1.ĐẶT VẤN ĐỀ: Cùng với phát triển cơng nghệ , người ln tìm tịi phát minh khơng ngừng góp phần nâng cao suất lao động việc tăng cường tạo tiện nghi cho đời sống sinh hoạt ngày thiếu Điều khiển, quản lý thiết bị nhà, khu dân cư hay nhà máy, xí nghiệp ngày trở nên quang trọng Nắm yêu cầu với việc ứng dụng VXL vào ngành tự động hóa để góp phần tạo tảng ban đầu cho việc học tập, tìm hiểu kỹ thuật vi xử lý, cách thức truyền liệu máy tính với vi xử lý thiết bị ngoại vi chúng em xin đề nghị thực đề tài: “HỆ THỐNG ĐIỀU KHIỂN NGÔI NHÀ THÔNG MINH” Hệ thống điều kiển thiết bị nh gồm: cửa, quạt, đèn, máy bơm sương, còi báo động cách thu thu thập liệu từ cảm biến: nhiệt độ, độ ẩm, cường độ sáng máy tính tác dụng quan sát, quản lý thay đổi thông số cảm biến, thiết bị, cài đặt thu thập sở liệu Đề tài điều kiện để chúng em thực hành kiểm tra lại kiến thức đă học, ứng dụng thực tế mạch điện tử sống, bổ sung kiến thức bổ ích hổ trợ tốt cho việc học tập ứng dụng đời sống thực tế 1.2 MỤC ĐÍCH NGHIÊN CỨU: Mục đích trước hết thực đề tài để hồn tất chương trình môn học để đủ điều kiện trường Cụ thể nghiên cứu thực đề tài chúng em muốn phát huy thành ứng dụng vi điều khiển nhằm tạo sản phẩm, thiết bị tiên tiến hơn, đạt hiệu sản xuất cao Mặc khác tập luận văn làm tài liệu tham khảo cho sinh viên khóa sau Giúp họ hiểu rõ ứng dụng vi điều khiển Ngịai q trình nghiên cứu thực đề tài hội để chúng em tự kiểm tra lại kiến thức học trường, đồng thời phát huy tính sáng tạo, khả giải vấn đề theo yêu cầu đặt Và dịp để chúng em tự khẳng định trước trường để tham gia vào hoạt động sản xuất xã hội 1.3 Ý NGHĨA THỰC TIỂN: Việc thực đề tài giúp chúng em ứng dụng kiến thức học vào thực tế Biết cách sử dụng nhiều thiết bị ngoại vi ngo ài thực tế Cũng cố thêm nhiều kiến thức, cao khả lập trình, tư sáng tạo thêm nhiều kinh nghiệm thực tế LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM CHƯƠNG 2: GIỚI THIỆU CHUNG VỀ BỘ VI ĐIỀU KHIỂN 2.1.GIỚI THIỆU : Bộ vi điều khiển viết tắt l Micro-controller, mạch tích hợp chip lập trình được, dùng để điều khiển hoạt động hệ thống Theo tập lệnh người lập trình, vi điều khiển tiến hành đọc, lưu trữ thông tin, xử lý thông tin, đo thời gian tiến hành đóng mở cấu Trong thiết bị điện điện tử dân dụng, vi điều khiển, điều khiển hoạt động TV, máy giặt, đầu đọc laser, điện thọai, l ò vi-ba…Trong hệ thống sản xuất tự động, vi điều khiển sử dụng Robot, dây chuyền tự động Các hệ thống “thông minh” vai trị c hệ vi điều khiển quan trọng 2.2.LỊCH SỬ PHÁT TRIỂN CỦA C ÁC BỘ VI ĐIỀU KHIỂN : Bộ vi điều khiển thực ra, l loại vi xử lí tập hợp vi xử lý nói chung Bộ vi điều khiển phát triển từ vi xử lí, từ năm 70 phát triển hoàn thiện công nghệ vi điện tử dựa kỹ thuật MOS (Metal-OxideSemiconductor) , mức độ tích hợp linh kiện bán dẫn chip ng ày cao Năm 1971 xuất vi xử lí bit loại TMS1000 công ty texas Instruments vừa nơi phát minh vừa nhà sản xuất Nhìn tổng thể vi xử lí có chứa tr ên chip chức cần thiết để xử lí ch ương trình theo trình tự, cịn tất phận phụ trợ khác cần thiết nh : nhớ liệu , nhớ ch ương trình , chuển đổi AID, khối điều khiển, khố i hiển thị, điều khiển máy in, hối đồng hồ v lịch linh kiện nằm bên nối vào vi xử lí Mãi đến năm 1976 công ty INTEL (Interlligen -Elictronics) Mới cho đời vi điều khiển đơn chip giới với tên gọi 8048 Bên cạnh xử lí trung tâm 8048 chứa nhớ liệu, nhớ ch ương trình, đếm phát thời gian cổng vào Digital chip Các công ty khác lần lược cho đời vi điều khiển 8bit t ương tự 8048 hình thành họ vi điều khiển MCS-48 (Microcontroller-sustem-48) LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM Đến năm 1980 công ty INTEL cho đời hệ thứ hai vi điều khiển đ ơn chip với tên gọi 8051 Và sau hàng loạt vi điều khiển loại với 8051 đời hình thành họ vi điều khiển MCS-51 Đến họ vi điều khiển bit MCS51 có đến 250 thành viên hầu hết công ty hàng dẫn hàng đầu giới chế tạo Đứng đầu l công ty INTEL nhiều công ty khác : AMD, SIEMENS, PHILIPS, DALLAS, OKI … Ngoài cịn có cơng ty khác c ũng có họ vi điều khiển riêng như: Họ Họ Họ Họ 68HCOS ST62 H8 pic công ty Motorola công ty SGS-THOMSON công ty Hitachi cuả công ty Microchip 2.3.KHẢO SÁT BỘ VI ĐIỀU KHIỂN 8051 V À 8031: IC vi điều khiển 8051/8031 thuộc họ MCS51 có đặt điểm sau : - 4kbyte ROM (được lập trình nhà sản xuất có 8051) - 128 búyt RAM - 4port I10 8bit - Hai định thời 16bit - Giao tiếp nối tiếp - 64KB không gian nhớ chương trình mở rộng - 64 KB không gian nhớ liệu mở rộng - xử lí luận lí (thao tác bit đơn) - 210 bit địa hóa - nhân / chia 4s LUẬN VĂN TỐT NGHIỆP Trang 10 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM Dim vGet() As Byte, tGet() As Byte, bGet As Boolean bRead = True If Not myCom.PortOpen Then GoTo errHandler myCom.Output = Chr(mID) & Chr(vCommand) & Chr(4) OnCom = True bGet = False t1 = Timer Do While OnCom DoEvents t2 = Timer If myCom.InBufferCount Then tGet = myCom.Input If Not bGet Then vGet = tGet Else it = UBound(vGet) + ReDim Preserve vGet(it + UBound(tGet)) For i = To UBound(tGet) Step vGet(i t + i) = tGet(i) Next i End If bGet = True If UBound(vGet) >= Then ReadData = True str = vGet Exit Function End If Else If t2 - t1 > Then GoTo errHandler End If Loop errHandler: ReadData = False End Function ' ' Tên hàm : ReadData ' Công việc: Gửi liệu từ máy vi tính xuống thiết bị ' Tham biến: mID: Số máy; cmd: Lệnh; v: Giá trị gửi xuống ' - LUẬN VĂN TỐT NGHIỆP Trang 113 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM Private Function SendData(ByVal mID As Byte, ByVal cmd As Byte, ByVal v As Byte) As Boolean 'Bật cờ báo gửi liệu để ch ương trình đọc tham số tạm ngưng bSend = True 'Biến đếm thời gian Dim t1 As Double, t2 As Double Dim str() As Byte ' Kiểm tra xem cổng có mở hay khơng ' Nếu cổng khơng mở v báo lỗi If Not myCom.PortOpen Then GoTo errHandler myCom.Output = Chr(mID) & Chr(cmd) & Chr(v) Delay t1 = Timer Do While True DoEvents t2 = Timer If myCom.InBufferCount Then str = myCom.Input If str(0) Then GoTo errHandler If UBound(str) > Then If str(1) = Then SendData = True bSend = False Exit Function Else GoTo errHandler End If Else GoTo errHandler End If Else 'Kiểm tra thời gian tính tới 3ms, ngồi 3ms mà thiết bị 'khơng truyền liệu If t2 - t1 > Then GoTo errHandler End If Loop errHandler: SendData = False LUẬN VĂN TỐT NGHIỆP Trang 114 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM bSend = False End Function 'Bật chế độ điều khiển tay Private Sub optManualOn_Click() If optManualOn.Value And Not bManual Then mt1 = Timer + If SendData(1, 62, 0) Then sbMain.Panels(1).Text = "Đ ã chuyển sang điều khiển tay!" tGet.Interval = bManual = True On Error Resume Next setButton lStatus For i = To Step Me.Controls("frame" & i).Enabled = True Next i Else sbMain.Panels(1).Text = "Chuy ển điều khiển tay không thành!" optManualOn.Value = False bControl = True optManualOff.Value = True bControl = False End If End If End Sub 'Tắt chế độ điều khiển tay Private Sub optManualOff_Click() If bControl Then Exit Sub If optManualOff.Value Then mt1 = Timer + SendData 1, 62, 11 sbMain.Panels(1).Text = "Đ ã chuyển điều khiển tự động!" If cmdStart.Caption = "&Ng ng" Then tGet.Interval = 500 bManual = False ResetButton End If LUẬN VĂN TỐT NGHIỆP Trang 115 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM End Sub Private Sub optFanOff_Click() If bControl Then Exit Sub If optFanOff.Value Then mt1 = Timer + SendData 1, 62, sbMain.Panels(1).Text = "Đ ã tắt quạt!" imgLamp(0).Picture = ImageList1.ListImages(2).Picture bFan = False End If End Sub Private Sub optFanOn_Click() If bControl Then Exit Sub If optFanOn.Value Then mt1 = Timer + SendData 1, 62, sbMain.Panels(1).Text = "Đ ã bật quạt!" imgLamp(0).Picture = ImageList1.ListImages(1).Picture bFan = True End If End Sub Private Sub optHanhlangOff_Click() If bControl Then Exit Sub If optHanhlangOff.Value Then mt1 = Timer + SendData 1, 62, 10 sbMain.Panels(1).Text = "Đ ã tắt Đèn hành lang!" imgLamp(5).Picture = ImageList1.ListImages(2).Picture End If End Sub Private Sub optHanhlangOn_Click() If bControl Then Exit Sub If optHanhlangOn.Value Then mt1 = Timer + LUẬN VĂN TỐT NGHIỆP Trang 116 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM SendData 1, 62, sbMain.Panels(1).Text = "Đ ã bật đợc Đèn hành lang!" imgLamp(5).Picture = ImageList1.ListImages(1).Picture End If End Sub Private Sub optLamp1Off_Click() If bControl Then Exit Sub If optLamp1Off.Value Then mt1 = Timer + SendData 1, 62, sbMain.Panels(1).Text = "Đ ã tắt Đèn 1!" imgLamp(3).Picture = ImageList1.ListImages(2).Pictu re End If End Sub Private Sub optLamp1On_Click() If bControl Then Exit Sub If optLamp1On.Value Then mt1 = Timer + SendData 1, 62, sbMain.Panels(1).Text = "Đ ã bật Đèn 1!" imgLamp(3).Picture = ImageList1.ListImages(1).Pi cture End If End Sub Private Sub optLamp2Off_Click() If bControl Then Exit Sub If optLamp2Off.Value Then mt1 = Timer + SendData 1, 62, sbMain.Panels(1).Text = "Đ ã tắt Đèn 2!" imgLamp(4).Picture = ImageList1.ListImages( 2).Picture End If End Sub Private Sub optLamp2On_Click() LUẬN VĂN TỐT NGHIỆP Trang 117 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM If bControl Then Exit Sub If optLamp2On.Value Then mt1 = Timer + SendData 1, 62, sbMain.Panels(1).Text = "Đ ã bật Đèn 2!" imgLamp(4).Picture = ImageList1.ListImag es(1).Picture End If End Sub Private Sub optPumpOff_Click() If bControl Then Exit Sub If optPumpOff.Value Then mt1 = Timer + SendData 1, 62, sbMain.Panels(1).Text = "Đ ã tắt máy bơm!" imgLamp(2).Picture = ImageList1.ListImages(2).Picture End If End Sub Private Sub optPumpOn_Click() If bControl Then Exit Sub If optPumpOn.Value Then mt1 = Timer + SendData 1, 62, sbMain.Panels(1).Text = "Đ ã bật máy bơm!" imgLamp(2).Picture = ImageList1.ListImages(1).Picture End If End Sub 'Kiem tra va so sanh de bat den theo gio cai dat Private Sub tBatden_Timer() 'Bat den hanh lang If Hour(Now) = Hour(dtpBat.Value) And _ Minute(Now) = Minute(dtpBat.Value) And Second(Now) = Then mt1 = Timer + lStatusOn If SendData(1, 61, 0) Then sbMain.Panels(1).Text = "M đèn hành lang thành công!" LUẬN VĂN TỐT NGHIỆP Trang 118 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM Else sbMain.Panels(1).Text = "M đèn hành lang không thành công!" End If End If 'Tat den hanh lang If Hour(Now) = Hour(dtpTat.Value) And _ Minute(Now) = Minute(dtpTat.Value) And Second(Now) = Then mt1 = Timer + lStatusOn If SendData(1, 60, 0) Then sbMain.Panels(1).Text = "T đèn hành lang thành công!" Else sbMain.Pan els(1).Text = "Tắt đèn hành lang không thành công!" End If End If If Timer > mt1 Then sbMain.Panels(1).Text = pStatus End Sub 'Tu dong nhan gia tri Anh sang, Do am, Nhiet Private Sub tGet_Timer() If Not bSend Then getInfor getLamp End If End Sub 'Tao hinh sinh dong Private Sub Timer1_Timer() If bFan Then Image1.Picture = ImageList2.ListImages(k).Picture k = k + If k > Then k = End If If bHorn Then imgHorn.Picture = ilHorn.ListImages(h) Picture If h = Then If chkPlay Then Call sndPlaySound(App.Path & " \alarm.wav", SND_ASYNC) End If LUẬN VĂN TỐT NGHIỆP Trang 119 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM End If h = h + If h = Then h = End If End Sub 'Tao tre 0.3s Private Sub Delay() Dim d1 As Long d1 = Timer Do While True DoEvents If Timer - d1 > 0.3 Then Exit Do Loop End Sub ' 'Ham kiem tra chi cho nhap so text box Private Function CheckDigit(ByVal KeyAscii As Integer) As Integer If KeyAscii > &H39 Or KeyAscii < &H30 Then If KeyAscii Then CheckDigit = Else CheckDigit = KeyAscii End If Else CheckDigit = KeyAscii End If End Function 'Ham kiem tra nguoi du ng nhap vao gia tri 'Neu nhap vao >100 thi tra ve 100 'Khong nhap thi tra ve Private Function CheckValue(ByVal Value As String) As String If Trim(Value) = "" Then CheckValue = Else If CLng(Value) > 100 Then CheckValue = 100 LUẬN VĂN TỐT NGHIỆP Trang 120 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM Else CheckValue = Value End If End If End Function ' ' Kiem tra chi cho phep nguoi dung nhap vao so nho hon 100 Private Sub txtMoquat_Change() txtMoquat.Text = CheckValue(t xtMoquat.Text) End Sub Private Sub txtBaodong_Change() txtBaodong.Text = CheckValue(txtBaodong.Text) End Sub Private Sub txtBomsuong_Change() txtBomsuong.Text = CheckValue(txtBomsuong.Text) End Sub Private Sub txtDen1_Change() txtDen1.Text = Check Value(txtDen1.Text) End Sub Private Sub txtDen2_Change() txtDen2.Text = CheckValue(txtDen2.Text) End Sub ' -' -'Gioi han chi cho nhap so Private Sub txtMoquat_KeyPress(KeyAscii As Integer) KeyAscii = CheckDigit(KeyAscii) End Sub Private Sub txtBaodong_KeyPress(KeyAscii As Integer) KeyAscii = CheckDigit(KeyAscii) End Sub Private Sub txtBomsuong_KeyPress(KeyAscii As Integer) KeyAscii = CheckDigit(KeyA scii) End Sub Private Sub txtDen1_KeyPress(KeyAscii As Integer) KeyAscii = CheckDigit(KeyAscii) End Sub Private Sub txtDen2_KeyPress(KeyAscii As Integer) KeyAscii = CheckDigit(KeyAscii) End Sub LUẬN VĂN TỐT NGHIỆP Trang 121 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM ' ' Xoa cac phim bat tat bang tay ve mac dinh Private Sub ResetButton() optFanOn.Value = False optFanOff.Value = False optPumpOn.Value = False optPumpOff.Value = False optLamp1On.Value = False optLamp1Off.Value = False optLamp2On.Value = False optLamp2Off.Value = False optHanhlangOn.Value = False optHanhlangOff.Value = False For i = To Step Me.Controls("frame" & i).Enabled = False Next i End Sub ' Cai dat cac phim bat tat bang tay hien thi theo den tuong ung Private Sub setButton(ByRef str() As Byte) bControl = True On Error Resume Next optFanOn.Value = Not CBool(str(0)) optFanOff.Value = CBool(str(0)) optPumpOn.Value = Not CBool(str(2)) optPumpOff.Value = CBool(str(2)) optLamp1On.Value = Not CBool(str(3)) optLamp1Off.Value = CBool(str(3)) optLamp2On.Value = Not CBool(str(4)) optLamp2Off.Value = CBool(str(4)) optHanhlangOn.Value = Not CBool(str(5)) optHanhlangOff.Value = CBool(str(5)) bControl = False End Sub 'Cap nhat database Private Sub Capnhat_thongso( ByVal Nhietdo As Byte, ByVal Doam As Byte, ByVal Anhsang As Byte) If (Minute(Now) Mod lSaveData) = Then If Not bStatus Then LUẬN VĂN TỐT NGHIỆP Trang 122 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM bStatus = True Else Exit Sub End If Else bStatus = False Exit Sub End If Dim str As String str = "INSERT INTO dulieu1 (Ngay, Gio, Nhietdo, Doam, Anhsang) " & _ "VALUES (#" & Format(Now, "mm/dd/yyyy") & "#, #" & _ Format(Now, "HH:mm") & "#, " & Nhietdo & ", " & Doam & _ ", " & Anhsang & ")" If cn.State = adStateOpen Then On Error GoTo errHandler cn.Execute str End If errHandler: If Err Then sbMain.Panels(1).Text = Err.Description End Sub Private Sub Capnhat_Den(ByVal d1 As Boolean, _ ByVal d3 As Boolean, _ ByVal d5 As Boolean) If (Minute(Now) Mod lSaveData) = If Not bDen Then bDen = True Else Exit Sub End If Else bDen = False Exit Sub End If Dim str As String LUẬN VĂN TỐT NGHIỆP Boolean, ByVal d2 As Boolean, ByVal d4 As Boolean, ByVal d6 As Then Trang 123 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM str = "INSERT INTO dulieu2 (Ngay, Gio, Quat, Baodong, Maybom, " & _ "Den1, Den2, Hanhlang) VALUES (#" & Format(Now, "mm/dd/yyyy") & _ "#, #" & Format(Now, "H H:mm") & "#, " & d1 & ", " & d2 & ", " & _ d3 & ", " & d4 & ", " & d5 & ", " & d6 & ")" If cn.State = adStateOpen Then On Error GoTo errHandler cn.Execute str End If errHandler: If Err Then sbMain.Panels(1).Text = Err.Description End Sub Private Sub OpenComm() bSend = True If myCom.PortOpen Then myCom.PortOpen = False i = myCom.Settings = "9600,n,8,1" 'Thiet lap thong so cho cong Com myCom.CommPort = cboPort.ListIndex + 'Cong ket noi myCom.InputLen = 'Reset buffer cong ve myCom.InputMode = comInputModeBinary 'Kieu du lieu truyen / nhan On Error Resume Next myCom.PortOpen = True 'Mo cong If Err Then pStatus = "C truyền bị lỗi" Else pStatus = "C truyền sẵn sàng" End If sbMain.Panels(1).Text = pStatus bSend = False End Sub LUẬN VĂN TỐT NGHIỆP Trang 124 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM 6.5 KẾT QUẢ THỰC HIỆN: 6.5.1.Phần cứng Đã thực mạch điều khiển cửa password hiển thị LCD Mạch cảm biến hồng ngồi phát người đóng, mở cửa Mạch cơng suất điều khiển động bước đóng mở cửa khối mạch điều khiển thiết bị nhà mắc theo mạch chuyển đổi RS232_RS485, có khả truyền nhận liệu từ máy tính xuống vi điều khiển Mạch rơle có khả nhận lệnh từ vi điều khiển để đóng ngắt thiết bị Mạch vi điều khiển nút nhấn có khả điều khiển r ơle Mạch đo nhiệt độ có khả khuyết đại điện áp LM35 để đ ưa vào chuyển đổi ADC, mạch đo độ ẩm, độ sáng Mạch chuyển đổi ADC chuyển đổi tín hiệu t ương tự sang số Mạch có khả nhận liệu từ máy tính để cài đặt thơng số đóng mở thiết bị có khả truyền nhiệt độ, độ ẩm, độ sáng , thơng số trạng thái thiết bị máy tính 6.5.2 Giao diện máy tính Tạo giao diên máy tính VisualBasic 6.0 Trên giao diện có khả truyền nhận liệu từ máy tính với vi điều khiển Tạo sở liệu lưu lại thông số cảm biến trạng thái thiết bị ứng với chu kỳ ngày qui định LUẬN VĂN TỐT NGHIỆP Trang 125 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM * Cơ sở liệu tình trạng thiết bị * Cơ sở thông số cảm biến LUẬN VĂN TỐT NGHIỆP Trang 126 HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD: Th.S HUỲNH VĂN KIỂM KẾT LUẬN Sau tháng thực đề tài, gặp nhiều khó khăn với cố gắng, nổ lực thân giúp đỡ, hướng dẫn tận tình q thầy cơ, bạn bè giúp chúng em hoàn thành tập luận văn thời hạn đề Luận văn giúp cho chúng em nhiều kiến thức đặc biệt đ ược làm việc cọ sát với thực tế nguồn kinh nghiệm q giá cho cơng việc sau * Ưu điển: Mạch chạy ổn định, Tạo giao diện quản lý, thu thập liệu điều khiển thiết bị máy tính * Hạn chế: Mạch điều khiển khố cửa chưa thật hồn hảo chưa liên kết với mạng RS_485 chưa giao tiếp với máy tính Chưa có cảm biến độ ẩm giả lập biến trở Điều khiển thiết bị mơ giả lập mơ hình, chưa với thiết bị công suất thực tế * Hướng phát triển: Mở rộng liên kết với nhiều trạm hơn, điều khiển giám sát hệ thống nhiệt độ, độ ẩm, độ sáng nhà, khu dân cư hay dây chuyền sản xuất Đề tài tiền đề để phát triển điều khiển thiết bị có ứng dụng khác hệ thống lớn Có thể mở rộng truyền thông qua mạng INTERNET, mạng không dây… TÀI LIỆU THAM KHẢO [1] Tống Văn Ơn, Hồng Đức Hải, 2007, Họ vi điều khiển 8051,nhà xuất Lao động xã hội [2] nguyễn phước, 2003, Linh kiện điện tử, Nhà xuất tổng hợp Tphcm [3] Nguyễn Đức Thành, 2005, Đo lường điều khiển máy tính, nh xuất ĐH Quốc Gia TP Hồ CHÍ MINH [4] Đậu Quang Tuấn, 2000, Tự học lập tr ình Visual Basic 6.0, Nhà xu ất Trẻ [5] Nguyễn Thị Ngọc Mai (chủ nhiệm), GSTS Nguyễn Hữu Anh (cố vấn khoa học), 2000, Visual Basic 6.0 & lập trình sở liệu, Nhà xuất Giáo dục LUẬN VĂN TỐT NGHIỆP Trang 127 ... ý, phê bình, dẫn q thầy bạn đọc HCM, ngày 01 tháng 07 năm 2009 Sinh viên thực hiện: - Phan Cảnh Danh - Nguyễn Nguyên Hà LUẬN VĂN TỐT NGHIỆP Trang HỆ THỐNG ĐIỀU KHIỂN NGÔI NH À THÔNG MINH GVHD:

Ngày đăng: 30/10/2022, 18:43

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

Tài liệu liên quan