Đăng ký Đăng nhập
Trang chủ đồ án tốt nghiệp điều khiển thiết bị gia đình bằng sms được thể hiện thông qua m...

Tài liệu đồ án tốt nghiệp điều khiển thiết bị gia đình bằng sms được thể hiện thông qua mô hình nhà thông minh

.DOC
57
1425
63

Mô tả:

đồ án tốt nghiệp điều khiển thiết bị gia đình bằng sms được thể hiện thông qua mô hình nhà thông minh
Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà MỤC LỤC LỜI NÓI ĐẦU.......................................................................................................3 CHƯƠNG 1: DẪN NHẬP.....................................................................................4 1.1 Đặt vấn đề....................................................................................................4 1.2 Ý nghĩa của đề tài.........................................................................................5 1.3 Giới hạn đề tài nghiên cứu...........................................................................6 1.4 Mục tiêu nghiên cứu....................................................................................7 1.5 Kết quả nghiên cứu của đề tài......................................................................8 1.6 SƠ ĐỒ TỔNG QUAN CỦA HỆ THỐNG..................................................9 CHƯƠNG 2: ETHERNET VÀ HỌ GIAO THỨC TCP/IP.................................12 2.1 Tổng quan về Ethernet...............................................................................12 2.1.1 Cấu trúc khung tin Ethernet................................................................12 2.1.2 Cấu trúc địa chỉ Ethernet.....................................................................12 2.1.3 Các loại khung Ethernet......................................................................13 2.1.3.1 Khung unicast..............................................................................13 2.1.3.2 Khung broadcast..........................................................................13 2.1.3.3 Khung multicast...........................................................................14 2.1.4 Truy nhập bus sử dụng phương pháp CSMA/CD...............................14 Nguyên tắc làm việc phương pháp CSMA/CD:......................................14 2.2 Họ giao thức TCP/IP..................................................................................15 2.2.1 Tầng Ứng Dụng (Application Layer)..................................................15 2.2.2 Tầng Giao Vận (Transport Layer)......................................................17 2.2.3 Tầng Internet (Internet Layer).............................................................22 2.2.4 Lớp giao tiếp mạng.............................................................................27 2.3 Microchip TCP/IP Stack...........................................................................28 2.3.1 Cấu trúc của Microchip TCP/IP Stack................................................28 2.3.2 Hoạt động của TCP/IP Stack..............................................................29 1 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà CHƯƠNG 3: TỔNG QUAN VỀ TIN SMS, MODULE SIM900 VÀ ATCOMAND.......................................................................................................31 3.1 Tổng quan về tin nhắn SMS.......................................................................31 3.2 Giới thiệu Module SIM900........................................................................31 3.2.1 Tổng quan về Module SIM900...........................................................31 3.2.2 Khảo sát sơ đồ chân............................................................................32 3.2.3 Kết nối giữa Module SIM900 và vi điều khiển..................................32 3.3 Khảo sát tập lệnh AT.................................................................................33 CHƯƠNG 4: THIẾT KẾ VÀ THI CÔNG...........................................................35 4.1 Phân tích yêu cầu điều khiển......................................................................35 4.2 Tổng quan chương trình chính...................................................................37 4.3 Thiết kế và thi công Webserver.................................................................38 4.3.1 Thiết kế giao diện web........................................................................38 4.3.2 Giám sát trên Web...............................................................................38 4.3.3 Điều khiển trên Web...........................................................................41 4.3.4 Phương pháp truyền dữ liệu................................................................43 Sau khi hoàn tất thiết lập các biến trong web,ta tiến hành tạo file ảnh của web để lưu trữ vào ROM bằng phần mềm MPFS2 đi cùng bộ TCP/IP Stack của Microchip.................................................................................45 4.4 Thiết kế và thi công Module SIM900........................................................47 4.4.1 Giải thuật nhận tin nhắn và thực thi điều khiển:.................................47 4.4.2 Sơ đồ nguyên lý kết nối Module SIM900...........................................50 4.5 Thiết kế phần cứng mạch chính.................................................................51 Chương 5: KẾT LUẬN........................................................................................55 5.1 Kết luận......................................................................................................55 5.2 Hướng phát triển đề tài..............................................................................56 TÀI LIỆU THAM KHẢO....................................................................................58 2 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà LỜI NÓI ĐẦU Ngày nay, với những ứng dụng của khoa học kỹ thuật tiên tiến, thế giới của chúng ta đã và đang ngày một thay đổi, văn minh và hiện đại hơn. Và khái niệm về ngôi nhà thông minh đã ra đời. Một ngôi nhà thông là một giải pháp điều khiển tích hợp cho các căn hộ cao cấp, tích hợp các thiết bị điện tử, nghe nhìn, truyền thông thành một hệ thống hoàn chỉnh và thống nhất. Nhận thức được tầm thực tiễn của ngôi nhà thông minh là cơ sở để chúng em chọn đề tài đồ án tốt nghiệp “Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS”. Trong suốt thời gian hoàn thành đồ án, chúng em đã tìm hiều về vi điều khiển, các chế độ truyền thông, cảm biến đo, cơ cấu chấp hành, cách kết nối mạng Ethernet, điều khiển qua tin nhắn SMS, đồng thời tìm hiểu về các chỉ tiêu của một ngôi nhà thông minh. Dưới sự hướng dẫn, chỉ bảo nhiệt tình của thầy Vũ Vân Hà cùng với sự cố gắng nỗ lực của các thành viên trong nhóm, chúng em đã hoàn thành đồ án đúng thời hạn cho phép. Tuy nhiên do thời gian hạn chế, cũng như lượng kiến thức rất lớn nên chúng em không thể tránh khỏi nhiều thiếu xót. Vì vậy chúng em rất mong sẽ nhận được nhiều ý kiến đánh giá, góp ý của thầy cô giáo và các bạn sinh viên để chúng em có thể phát triển và hoàn thiện thêm đề tài này. Chúng em xin chân thành cảm ơn! Nhóm sinh viên thực hiện 1. Nguyễn Tất Nam 2. Đào Cửu Long 3. Mai Trung Chính 3 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà CHƯƠNG 1: DẪN NHẬP 1.1 Đặt vấn đề Ngày nay cùng với sự phát triển mạnh mẽ của các ngành khoa học kỹ thuật, công nghệ kỹ thuật điện tử mà trong đó là kỹ thuật tự động điều khiển đóng vai trò quan trọng trong mọi lĩnh vực khoa học kỹ thuật, quản lí, công nghiệp, cung cấp thông tin ... Do đó là một sinh viên chuyên ngành Điều khiển tự động chúng ta phải biết nắm bắt và vận dụng nó một cách có hiệu quả nhằm góp phần vào sự phát triển nền khoa học kỹ thuật thế giới nói chung và trong sự phát triển kỹ thuật điện tử nói riêng. Bên cạnh đó còn là sự thúc đẩy sự phát triển của nền kinh tế nước nhà. Như chúng ta cũng đã biết, gần như các thiết bị tự động trong nhà máy, trong đời sống của các gia đình ngày nay đều hoạt động độc lập với nhau, mỗi thiết bị có một quy trình sử dụng khác nhau tuỳ thuộc vào sự thiết lập, cài đặt của người sử dụng. Chúng chưa có một sự liên kết nào với nhau về mặt dữ liệu. Nhưng đối với hệ thống điều khiển thiết bị từ xa thông qua mạng Ethernet và tin nhắn SMS thì lại khác. Ở đây, các thiết bị điều khiển tự động được kết nối với nhau thành một hệ thống hoàn chỉnh qua một một thiết bị trung tâm và có thể giao tiếp với nhau về mặt dữ liệu. Điển hình của một hệ thống điều khiển thiết bị trong nhà từ xa thông qua mạng Ethernet và tin nhắn SMS gồm có các thiết bị đơn giản như bóng đèn, quạt máy, lò sưởi đến các thiết bị tinh vi, phức tạp như tivi, máy giặt, hệ thống báo động … Nó hoạt động như một ngôi nhà thông minh. Nghĩa là tất cả các thiết bị này có thể giao tiếp với nhau về mặt dữ liệu thông qua một đầu não trung tâm. Đầu não trung tâm ở đây có thể là một máy vi tính hoàn chỉnh hoặc có thể là một bộ xử lí đã được lập trình sẵn tất cả các chương trình điều khiển. Bình thường, các thiết bị trong ngôi nhà này có thể được điều khiển từ xa thông qua mạng Ethernet hoặc tin nhắn SMS của chủ nhà. Chẳng hạn như việc tắt quạt, đèn điện 4 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà … khi người chủ nhà quên chưa tắt trước khi ra khỏi nhà. Hay chỉ với một tin nhắn SMS, người chủ nhà có thể bật máy điều hòa để làm mát phòng trước khi về nhà trong một khoảng thời gian nhất định. Bên cạnh đó nó cũng gửi thông báo cho người điều khiển biết nhiệt độ trong phòng hiện tại là bao nhiêu, đồng thời phát tín hiệu cảnh báo khi nhiệt độ phòng vượt quá giới hạn cho phép. Ngoài ra, hệ thống còn mang tính bảo mật. Nghĩa là chỉ có những số điện thoại được cài đặt trước và biết đúng mật khẩu thì mới có thể điều khiển được hệ thống. Từ những yêu cầu thực tế, những đòi hỏi ngày càng cao của cuộc sống, cộng với sự hợp tác, phát triển mạnh mẽ của mạng di động nên chúng em đã chọn đề tài " Điều khiển thiết bị điện trong nhà thông qua mạng Ethernet và tin nhắn SMS " để đáp ứng được nhu cầu ngày càng cao của con người và góp phần vào sự tiến bộ, văn minh, hiện đại của nước nhà. Với đề tài trên nhóm đề tài đã thực hiện việc điều khiển từ xa theo ba hướng hướng chính:  Điều khiển thiết bị qua Ethernet với giao thức TCP/IP. Người dùng đăng nhập vào Website và thực hiện điều khiển thiết bị qua giao diện Web.  Điều khiển thiết bị qua tin nhắn SMS từ những số điện thoại được cho phép. Thiết bị sẽ nhận tin nhắn SMS theo cấu trúc cho trước. Phân tích yêu cầu điều khiển và thực hiện điều khiển thiết bị.  Đo và thông báo nhiệt độ trong phòng, phát tín hiệu cảnh báo nếu nhiệt độ trong phòng tăng cao vượt quá giới hạn cho phép. 1.2 Ý nghĩa của đề tài Ngày nay cùng với sự tiến bộ của khoa học kỹ thuật, các thiết bị điện tử ra đời ngày càng nhiều về chủng loại cũng như tính năng sử dụng. Bên cạnh đó nhu cầu sử dụng các thiết bị một cách tự động ngày càng cao, con người ngày càng muốn có nhiều thiết bị giải trí cũng như các thiết bị sinh hoạt với kỹ thuật và 5 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà công nghệ ngày càng cao. Có thể ở Việt nam chưa phát triển mạnh mẽ trong lĩnh này nhưng hiện nay ở trên thế giới, nhất là các quốc gia thuộc Châu âu hay Mỹ thì mô hình ngôi nhà tự động được điều khiển từ xa đã phát triển rất mạnh mẽ. Từ những nhu cầu thực tế đó, nhóm em muốn đưa một phần những kỹ thuật hiện đại của thế giới áp dụng vào điều kiện thực tế trong nước để có thể tạo ra một hệ thống điều khiển thiết bị trong nhà từ xa thông qua mạng Ethernet và tin nhắn SMS nhằm đáp ứng nhu cầu ngày càng cao của con người. Đề tài lấy cơ sở là mạng Ethernet và tin nhắn SMS để điều khiển thiết bị. Việc sử dụng mạng Ethernet và tin nhắn SMS để điều khiển thiết bị có thuận lợi là tiết kiệm chi phí, mang tính cạnh tranh và cơ động cao. Ngoài ra, sản phẩm của đề tài này có tính mở, có thể áp dụng cho nhiều đối tượng khác nhau trong dân dụng cũng như trong công nghiệp. 1.3 Giới hạn đề tài nghiên cứu Để thực thi một hệ thống điều khiển thiết bị từ xa thông qua mạng Ethernet và tin nhắn SMS áp dụng cho một ngôi nhà hoàn chỉnh như nói trên là rất phức tạp và rất tốn kém. Để đáp ứng việc điều khiển toàn bộ các thiết bị này đòi hỏi phải có một lượng thời gian, kiến thức nhất định. Bên cạnh đó còn là vấn đề tài chính. Với lượng thời gian và kiến thức có hạn, trong đề tài này nhóm em thực hiện chỉ thực thi một phần của hệ thống hoàn chỉnh đó. Đó là điều khiển đóng mở đèn, ngoài ra còn có chức năng báo động khi nhiệt độ trong phòng tăng cao quá nhiệt độ cho phép. Với những gì đã trình bày trên, nhóm em đã tiến hành nghiên cứu, khảo sát và thực hiện và dự kiến đạt được các mục tiêu đặt ra như sau: - Thiết lập một Website và thực hiện điều khiển các thiết bị qua giao diện Web, sau khi thực hiện lệnh điều khiển trạng thái của thiết bị on/off được thể hiện ngay trên giao diện Web. 6 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà - Điều khiển các thiết bị trong nhà bằng tin nhắn SMS. Sau khi thực hiện lệnh điều khiển xong, tự động gửi tin nhắn lại cho người dùng biết đã thực hiện thành công. - Gửi tin nhắn thông báo trạng thái của các thiết bị và nhiệt độ trong phòng hiện tại là bao nhiêu. - Ngoài ra, hệ thống còn có chức năng tự động phát tín hiệu cảnh bảo qua chuông và tin nhắn khi nhiệt độ trong phòng tăng cao vượt quá giới hạn cho phép. 1.4 Mục tiêu nghiên cứu - Đồ án được nghiên cứu và thực hiện với mục đích áp dụng những kiến thức đã được học trong nhà trường để thiết kế, tạo ra một hệ thống điều khiển tự động từ xa qua mạng Ethernet và tin nhắn SMS. - Nghiên cứu và tạo một giao diện Websever để thực hiện điều khiển qua mạng Ethernet với chuẩn giao tiếp TCP/IP. - Tìm hiều về hệ thống điện thoại di động GSM hiện nay. Nghiên cứu và sử dụng các module GSM/GPRS phổ biến hiện nay. Module nhóm thực hiện nghiên cứu và sử dụng là module SIM900 của hãng SIMCom. - Nghiên cứu và sử dụng chip vi điều khiển PIC của Mircochip. Chip mà nhóm đã tiến hành nghiên cứu và sử dụng là chip PIC18F8722. 1.5 Kết quả nghiên cứu của đề tài Với những mục tiêu và kế hoạch đã đề ra, cùng với sự nỗ lực nghiên cứu, tìm tòi của các thành viên trong nhóm thực hiện đề tài, nhóm thực hiện đã đạt được những kết quả nhất định sau: Thiết kế thành công mạch điều khiển giao tiếp qua mạng Ethernet và tin nhắn SMS với các tính năng: 7 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà + Giao tiếp thành công với mạng Ethernet qua chuẩn truyền thông TCP/IP, thực hiện quan sát trạng thái và ra lệnh điều khiển thiết bị qua giao diện Webserver. + Giao tiếp thành công với module SIM900, nhận và gửi tin nhắn thành công, thực hiện điều khiển thiết bị qua tin nhắn SMS. + Cảnh báo tới người dùng và phát tín hiệu ra chuông khi nhiệt độ phòng tăng cao vượt quá giới hạn cho phép. + Ngoài ra, mạch điều khiển được thiết kế sẵn sàng cho việc tích hợp thêm các ngoại vi trong tương lai. 8 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà 1.6 SƠ ĐỒ TỔNG QUAN CỦA HỆ THỐNG  Sơ đồ tổng quan của hệ thống: Hình 1.1 Sơ đồ tổng quan hệ thống Dù đang ở rất xa ngôi nhà, người sử dụng có thể dùng máy tính được kết nối với mạng Internet hoặc các thiết bị như điện thoại, máy tính bảng có hỗ trợ tin nhắn SMS để gửi tín hiệu tới bộ điều khiển tác động lên các thiết bị điện trong gia đình. Điều này rất thuật tiện khi bạn thường xuyên phải ra khỏi nhà và muốn cập nhật trạng thái và điều khiển hoạt động của các thiết bị điện trong ngôi nhà. 9 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà  Sơ đồ khối của bộ điều khiển: Hình 1.2 Sơ đồ khối của bộ điều khiển Chức năng từng khối:  Khối giao tiếp SMS: Gồm Module SIM900, có chức năng gửi nhận tin nhắn SMS cho việc điều khiển các thiết bị. Module SIM900 được kết nối với vi điều khiển PIC18F8722, có nhiệm vụ nhận SMS gửi tới vi điều khiển và gửi SMS tới người sử dụng khi có yêu cầu.  Khối giao tiếp ETHERNET: Gồm ENC26JC0 được kết nối với vi điều khiển PIC18F8722 truyền nhận tín hiệu qua giao thức SPI. Khối này có nhiệm vụ nhận lệnh điều khiển qua 10 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà Webserver với giao thức TCP/IP. Vi điều khiển nhận lệnh, thực thi xong và gửi trả lại kết quả.  Khối vi điều khiển PIC18F8722 Khối trung tâm trong việc xử lý và điều khiển. Vi điều khiển nhận tín hiệu từ khối giao tiếp SMS, khối giao tiếp Ethernet và cảm biến, sau đó đưa ra tín hiệu điều khiển đồng thời hiển thị lên LCD.  Khối cảm biến nhiệt độ Cảm biến được sử dụng là DS18B20 có nhiệm vụ đo nhiệt độ và gửi tín hiệu tới vi điều khiển. Khi nhiệt độ đo được lớn hơn giá trị cho phép thì vi điều khiển phát tín hiệu cảnh báo.  Khối hiển thị LCD Gồm TEXT LCD 16x2, có nhiệm vụ hiện thị các thông tin có liên quan tới việc điều khiển, giúp cho giao diện giữa người dùng và thiết bị trực quan hơn.  Khối công suất Khối này bao gồm 4 BJT C1815 có nhiệm vụ khuếch đại điện áp để kích cho relay. Khối công suất với dòng thấp, đáp ứng tải tiêu tụ công suất dân dụng như bóng đèn.  Khối nguồn Tạo nguồn với hai mức điện áp 5V cấp cho vi điều khiển và 3V3 cấp cho ENC26JC0. Ngoài ra module SIM900 được cấp nguồn với điện áp 4V. 11 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà CHƯƠNG 2: ETHERNET VÀ HỌ GIAO THỨC TCP/IP 2.1 Tổng quan về Ethernet 2.1.1 Cấu trúc khung tin Ethernet Các chuẩn Ethernet đều hoạt động ở tầng Data Link trong mô hình 7 lớp OSI vì thế đơn vị dữ liệu mà các trạm trao đổi với nhau là các khung (frame). Cấu trúc khung Ethernet như sau: Bảng 2.1: Cấu trúc khung MAC theo IEEE 802.3/ Ethernet Mở đầu 555…5H SFD (D5H) Địa chỉ Địa chỉ Độ dài Dữ liệu đích nguồn PAD FCS kiểu gói 7byte 1 byte 2/6 byte 2/6 byte 2 byte 46-1500 byte 4 byte - Preamble (mở đầu): trường này đánh dấu sự xuất hiện của khung bit, nó luôn mang giá trị 10101010. Từ nhóm bit này, phía nhận có thể tạo ra xung đồng hồ 10 Mhz. - SFD (start frame delimiter): trường này mới thực sự xác định sự bắt đầu của 1 khung. Nó luôn mang giá trị 10101011. - Các trường Destination và Source: mang địa chỉ vật lý của các trạm nhận và gửi khung, xác định khung được gửi từ đâu và sẽ được gửi tới đâu. - LEN: giá trị của trường nói lên độ lớn của phần dữ liệu mà khung mang theo. - FCS mang CRC (cyclic redundancy checksum): phía gửi sẽ tính toán trường này trước khi truyền khung. Phía nhận tính toán lại CRC này theo cách tương tự. Nếu hai kết quả trùng nhau, khung được xem là nhận đúng, ngược lại khung coi như là lỗi và bị loại bỏ. 2.1.2 Cấu trúc địa chỉ Ethernet Mỗi giao tiếp mạng Ethernet được định danh duy nhất bởi 48 bit địa chỉ (6 octet). Đây là địa chỉ được ấn định khi sản xuất thiết bị, gọi là địa chỉ MAC 12 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà (Media Access Control Address ). Địa chỉ MAC được biểu diễn bởi các chữ số hexa ( hệ cơ số 16 ). Ví dụ:00:60:97:8F:4F:86 hoặc 00-60-97-8F-4F-86.Khuôn dạng địa chỉ MAC được chia làm 2 phần: - 3 octet đầu xác định hãng sản xuất, chịu sự quản lý của tổ chức IEEE. - 3 octet sau do nhà sản xuất ấn định. Kết hợp ta lẽ có một địa chỉ MAC duy nhất cho một giao tiếp mạng Ethernet. Địa chỉ MAC được sử dụng làm địa chỉ nguồn và địa chỉ đích trong khung Ethernet. 2.1.3 Các loại khung Ethernet 2.1.3.1 Khung unicast Khung này được truyền tới một trạm xác định. Tất cả các trạm trong phân đoạn mạng trên sẽ đều nhận được khung này nhưng: - Chỉ có trạm 2 thấy địa chỉ MAC đích của khung trùng với địa chỉ MAC của giao tiếp mạng của mình nên tiếp tục xử lý các thông tin khác trong khung. - Các trạm khác sau khi so sánh địa chỉ sẽ bỏ qua không tiếp tục xử lý khung nữa. 2.1.3.2 Khung broadcast Các khung broadcast có địa chỉ MAC đích là FF-FF-FF-FF-FF-FF. Khi nhận được các khung này, mặc dù không trùng với địa chỉ MAC của giao tiếp mạng của mình nhưng các trạm đều phải nhận khung và tiếp tục xử lý. 2.1.3.3 Khung multicast Trạm nguồn gửi khung tới một số trạm nhất định chứ không phải là tất cả. Địa chỉ MAC đích của khung là địa chỉ đặc biệt mà chỉ các trạm trong cùng nhóm mới chấp nhận các khung gửi tới địa chỉ này. 2.1.4 Truy nhập bus sử dụng phương pháp CSMA/CD 13 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà Hình 2.1: Minh họa phương pháp CSMA/CD Nguyên tắc làm việc phương pháp CSMA/CD: Theo phương pháp CSMA/CD, mỗi trạm đều có quyền truy nhập bus mà không cần một sự kiểm soát nào. Phương pháp được tiến hành như sau: - Mỗi trạm đều phải tự nghe đường dẫn (carrier sense), nếu đường dẫn rỗi (không có tín hiệu ) thì mới được phát. - Do việc lan truyền tín hiệu cần một thời gian nào đó, nên vẫn có khả năng hai trạm cùng phát tín hiệu lên đường dẫn. Chính vì vậy, trong khi phát thì mỗi trạm vẫn phải nghe đường dẫn để so sánh tín hiệu phát đi với tín hiệu nhận được xem có xảy ra xung đột hay không (collision detection). - Trong trường hợp xảy ra xung đột, mỗi trạm đều phải hủy bỏ bức điện của mình, chờ một thời gian ngẫu nhiên và thử gửi lại. 14 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà 2.2 Họ giao thức TCP/IP TCP/IP là viết tắt của Transmission Control Protocol / Internet Protocol (Giao thức Điều Khiển Truyền Thông /Giao thức Internet).Các tầng trong mô hình này là: - Tầng Ứng Dụng (Application Layer). - Tầng Giao Vận (Transport Layer). - Tầng Liên Mạng (Internet Layer). - Tầng Giao Tiếp Mạng (Network Interface Layer). Hình 2.2: Cấu trúc họ giao thức TCP/IP 2.2.1 Tầng Ứng Dụng (Application Layer) Gồm nhiều giao thức cung cấp cho các ứng dụng người dùng. Được sử dụng để định dạng và trao đổi thông tin người dùng và hệ thống. Một số giao thức thông dụng trong tầng này là: HTTP, FTP, SMTP,…Trong phạm vi đồ án, chúng ta sử dụng giao thức HTTP mà cụ thể là xây dựng một Webserver nhúng vào hệ thống. HTTP là giao thức truyền tải siêu văn bản (HyperText Transfer Protocol). HTTP xác định cách các thông điệp được định dạng và truyền tải ra sao và hoạt động của Webserver và các trình duyệt Web.Trong mô hình của HTTP, 15 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà Webserver đồng thời cũng là TCPServer, mở sẵn port mặc định dành cho dịch vụ HTTP là TCP80 (ở chế độ listen), sẵn sàng đợi yêu cầu kết nối từ các client. Các client sẽ khởi tạo kết nối TCP thông qua port này, sau khi Webserver chấp nhận kết nối, client sẽ gửi một bản tin HTTP (HTTP message) gọi là HTTP request tới server trên kết nối TCP vừa thiết lập. Server sẽ trả lời lại bằng một bản tin HTTP khác là HTTP response. Bản tin này sẽ chứa nội dung trang Web yêu cầu (được viết bằng ngôn ngữ HTML). Như vậy giao thức HTTP sẽ dựa cơ bản trên các bản tin HTTP, gồm 2 loại là HTTP request và HTTP response. Giả sử ta truy nhập vào địa chỉ IP của webserver là 192.168.1.10 qua trình duyệt:  Lúc đó, máy tính của chúng ta sẽ gửi đi một bản tin request của giao thức HTTP là HTTP Get thông qua giao thức TCP (với cổng TCP được qui định cho giao thức HTTP là 80) đến địa chỉ webserver trên.  Webserver, ở đây chính là vi điều khiển của chúng ta nhận được bản tin này (khi đã đi qua hết các lớp giao thức ethernet, IP, TCP rồi mới đến HTTP). Tại đây vi điều khiển sẽ đọc và phân tích bản tin HTTP request này để biết máy tính đang yêu cầu tải nội dung trang web nào.  Sau đó vi điều khiển sẽ lấy nội dung trang web này (được soạn thảo theo ngôn ngữ HTML) chứa trên trên ROM, nó cũng có thể thêm vào trang web đó một số thông tin (ví dụ đọc giá trị từ các sensor cảm biến nhiệt độ và đưa vào trong trang web), và gửi toàn bộ nội dung trang web thông qua giao thức TCP trở lại cho máy tính. Nếu nội dung trang web lớn nó có thể được gửi đi trên rất nhiều gói tin, vì mỗi gói tin chỉ chứa tối đa 1460 byte dữ liệu.  Máy tính nhận nội dung trang web và trình duyệt sẽ hiển thị lên cho chúng ta thấy. Để điều khiển thiết bị kết tới hệ thống từ xa qua web, trên trang web ta có thể thiết kế một nút nhấn chẳng hạn. Khi ta nhấn nút này trên trình duyệt, máy tính sẽ gửi đi một bản tin HTTP nữa là HTTP Get. Vi điều khiển sẽ nhận bản tin HTTP post này, phân tích dữ liệu chứa trong đó 16 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà để có đáp ứng tương ứng (bật tắt bóng đèn) sau đó nó sẽ gửi trả lại lần nữa nội dung trang web đã cập nhật những thay đổi vừa rồi.Trình duyệt sẽ cập nhật nội dung này lên và ta sẽ thấy được tác động của thao tác điều khiển. 2.2.2 Tầng Giao Vận (Transport Layer) Nhiệm vụ của tầng là thiết lập phiên truyền thông giữa các máy tính và quy định cách truyền dữ liệu. Hai giao thức chính trong tầng này gồm UDP (User Datagram Protocol) và TCP (Transmission Control Protocol). Do UDP cung cấp các kênh truyền thông phi kết nối nên nó không đảm bảo truyền dữ liệu một cách tin cậy nên trong phạm vi đồ án chúng ta sử dụng thức TCP.Ngược lại với UDP, TCP cung cấp các kênh truyền thông hướng kết nối và đảm bảo truyền dữ liệu 1 cách tin cậy. TCP thường truyền các gói tin có kích thước lớn và yêu cầu phía nhận xác nhận về các gói tin đã nhận. Cấu trúc gói TCP: Hình 2.3: Cấu trúc gói TCP Chú thích: - Số port đích và số port nguồn: để phân biệt các tiến trình ứng dụng đang xảy ra trong máy tính 17 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà - Các số sequence và Acknowledgement: số sequence để phân biệt các segment khác nhau trong một dòng dữ liệu, các số Acknowledgement dùng trong cơ chế xác nhận - Vùng Data offset: chiều dài của Header tính theo đơn vị 32 bit Một số cờ (flags): .URG (Urgent): thiết lập 1 khi có dữ liệu quan trọng cần truyền ngay. .ACK: cho biết có số xác nhận nằm trong vùng Acknowledgement . PSH (Push): được thiết lập trong trường hợp dữ liệu nên được giao tức thời .RST (Reset): chỉ thị một lỗi sai và hủy bỏ phiên làm việc . SYN (Synchronize): trong các bản tin khởi tạo khi thiết lập một kết nối truyền dữ liệu . FIN (Finish): dùng đóng 1 phiên làm việc - Vùng Window: chỉ ra số lượng không gian bộ đệm khả dụng để nhận dữ liệu Vùng Checksum: vùng kiểm tra sai cho cả segment Vùng Urgent Pointer: chỉ ra chiều dài của dữ liệu urgent Vùng Options: xác định kích thước cực đại của 1 segment Cụ thể hơn, vai trò của TCP trong chồng giao thức TCP gồm 3 chức năng chính: điều khiển luồng, kiểm soát lỗi và báo nhận. - Điều khiển luồng: điều phối tốc độ và kích thước luồng dữ liệu để đảm bảo phía nhận đủ khả năng nhận và xử lý luồng dữ liệu. - Kiểm soát lỗi: đảm bảo các gói tin đến đúng và đủ. - Báo nhận: khi nhận được dữ liệu và không có lỗi, phía nhận phải báo lại với phía gửi biết. Để thực hiện được các chức năng đó, một quá trình truyền dữ liệu qua giao thức TCP (mà ta gọi là phiên truyền thông – session) gồm có 3 giai đoạn: Thiết lập kết nối, truyền dữ liệu và giải phóng kết nối. 18 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà Để có thể giám sát chặt chẽ trạng thái và mọi sự kiện xảy ra trong một kết nối TCP, trạng thái của một kết nối TCP được chuyển đổi tuân theo một lưu đồ trạng thái như sau: Hình 2.4: Lưu đồ trạng thái kết nối TCP Giải thích: - TCP là giao thức hướng kết nối, dạng client – server. Tức là trong một phiên truyền thông thì sẽ có một phía đóng vai trò client, phía còn lại, lúc nào cũng ở trạng thái chờ đợi các client thiết lập kết nối tới chính là server. - Ví dụ khi ta truy cập web, thì máy tính của ta là client, máy chủ chứa trang web chính là server – vi điều khiển, lúc nào cũng ở trạng thái đợi các máy tính client kết nối đến (và phải có khả năng thiết lập đồng thời nhiều kết nối, vì có thể có nhiều client kết nối tới cùng lúc). 19 Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua Ethernet và SMS GVHD: TS. Vũ Vân Hà - Trong lưu đồ trên, áp dụng cho cả client và server. Cả client và server đều bắt đầu bằng trạng thái “Close”. Client sẽ thiết lập kết nối theo con đường Active Open (nó chủ động thiết lập kết nối). Server sẽ thiết lập kết nối theo con đường Passive Open (thụ động, vì nó đợi client bắt đầu mà) Quá trình chuyển trạng thái: - Cả hai bắt đầu bằng trạng thái close, không có kết nối nào tồn tại. - Khi Server mở một port TCP để đợi client thiết lập kết nối, nó chuyển sang trạng thái “Listen”. - Khi client gửi đi bản tin SYN, nó chuyển sang trạng thái “SYN sent”. - Lúc này khi server nhận được bản tin SYN từ client và gửi đáp lại 1 bản tin SYN, nó chuyển sang trạng thái “SYN Received”. - Lúc này client gửi lại bản tin xác nhận ACK (bước 3 trong ví dụ), nó chuyển sang trạng thái thiết lập kết nối “Established”. - Server nhận được bản tin ACK trên của client, nó cũng chuyển sang trạng thái “Established”. - Sau đó hai bên tiến hành truyền dữ liệu, trạng thái cả hai đều là “Established”. - Một trong hai phía truyền xong dữ liệu, đến đây thì vai trò hai bên là như nhau, ta giả sử client truyền xong dữ liệu trước, nó sẽ gửi bản tin FIN, và chuyển sang trạng thái “FIN wait 1”. - Phía server nhận được bản tin này, gửi xác nhận ACK, và chuyển sang trạng thái “Close wait”. - Khi client nhận được xác nhận từ server (nhận được bản tin ACK trên) thì nó chuyển sang trạng thái “FIN wait 2”. - Đến lúc này server vẫn có thể tiếp tục gửi dữ liệu và client vẫn tiếp tục nhận (vì chỉ có client báo là gửi xong dữ liệu). - Đến khi nào server cũng gửi hết dữ liệu, nó sẽ gửi đi bản tin FIN, cho biết nó cũng đã gửi xong dữ liệu và chuyển sang trạng thái “LAST ACK”. - Khi client nhận được bản tin FIN trên từ server, nó gửi xác nhận (ACK) và chuyển sang trạng thái “Time wait”, sau đó chờ 1 khoảng thời gian Timeout và đóng kết nối, quay lại trạng thái “Close”. 20
- Xem thêm -

Tài liệu liên quan