Đồ án Nghiên cứu xây dựng hệ thống kết nối thông tin giữa các bộ điều khiển - Nguyễn Văn Nhất

pdf 92 trang huongle 1600
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Nghiên cứu xây dựng hệ thống kết nối thông tin giữa các bộ điều khiển - Nguyễn Văn Nhất", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfdo_an_nghien_cuu_xay_dung_he_thong_ket_noi_thong_tin_giua_ca.pdf

Nội dung text: Đồ án Nghiên cứu xây dựng hệ thống kết nối thông tin giữa các bộ điều khiển - Nguyễn Văn Nhất

  1. LỜI NÓI ĐẦU Mạng truyền thông công nghiệp cũng nhƣ công nghệ bus trƣờng không phải là một lĩnh vực kỹ thuật hoàn toàn mới, mà thực chất là các công nghệ đƣợc kế thừa, chắt lọc và phát triển từ kỹ thuật truyền thông nói chung cho phù hợp với các yêu cầu trong công nghiệp. Từ hơn một thập kỷ nay, công nghệ bus trƣờng đã trở nên không thể thiếu trong các hệ thống điều khiển và giám sát hiện đại. Song thực tế ngƣời sử dụng trong công nghiệp thƣờng gặp phải hàng loạt các vấn đề khác nhau, do vậy trƣớc khi xây dựng một giải pháp tự động hóa không còn là nên hay không nên mà là phải lựa chọn hệ thống mạng truyền thông nào cho phù hợp với yêu cầu và nhiệm vụ của ứng dụng thực tế. Qua thời gian học tập tại trƣờng sau khi kết thúc khoá học em đã đƣợc các thầy, cô truyền đạt cho những kiến thức cả về lý thuyết và thực hành,để chúng em áp dụng những kiến thức đó vào thực tế và làm quen công việc độc lập của ngƣời kỹ sƣ trong tƣơng lai, thông qua một công việc cụ thể, chính vì lý do đó mà chúng em đã đƣợc nhận đề tài tốt nghiệp rất thực tế đó là: "Nghiên cứu xây dựng hệ thống kết nối thông tin giữa các bộ điều khiển". Trong quá trình thực hiện đồ án chúng em đƣợc sự hƣớng dẫn nhiệt tình của thầy giáo Ths. Nguyễn Trọng Thắng là giảng viên Bộ môn Điện Dân Dụng Công Nghiệp. Tuy nhiên, trong quá trình thực hiện đồ án em còn nhiều bỡ ngỡ, do chƣa có kinh nghiệm thực tiễn nên không tránh khỏi những sai sót. Mong thầy giáo và các bạn giúp đỡ em trong quá trình nghiên cứu. Đề tài gồm những nội dung sau - Chƣơng 1 : Tổng quan về hệ thống thông tin công nghiệp, cơ sở kỹ thuật, bus tiêu biểu. - Chƣơng 2 : Thiết kế hệ thống truyền thông trên nền vi điều khiển PIC - Chƣơng 3 : Thiết kế sơ đồ mạch phần cứng: mạch in, mạch nguyên lý, sơ đồ khối. Em xin chân thành cảm ơn ! Hải Phòng, ngày tháng năm 2010 Sinh viên Nguyễn Văn Nhất 1
  2. CHƢƠNG 1: TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN CÔNG NGHIỆP,CƠ SỞ KỸ THUẬT, BUS TIÊU BIỂU A: GIỚI THIỆU CHUNG. 1.1. GIỚI THIỆU CHUNG VỀ MẠNG TRUYỀN THÔNG CÔNG NGHIỆP Mạng truyền thông công nghiệp thực chất là một dạng đặc biệt của mạng máy tính, có thể đƣợc so sánh với mạng máy tính thông thƣờng ở những điểm giống và khác nhau nhƣ sau: - Kỹ thuật truyền thông số hay truyền dữ liệu là dặc trƣng chung - Mạng máy tính sử dụng trong công nghiệp đƣợc coi là một phần (ở các cấp điều khiển giám sát, điều hành sản xuất và quản lý công ty) trong mô hình phân cấp của mạng công nghiệp. -Yêu cầu về tính năng thời gian thực, độ tin cậy và khả năng tƣơng thích trong môi trƣờng công nghiệp của mạng truyền thông công nghiệp cao hơn so với mạng máy tính thông thƣờng, trong khi đó mạng máy tính thƣờng đòi hỏi cao hơn về độ bảo mật của thông tin. -Mạng máy tính có phạm vi trải rộng khác nhau, ví dụ có thể nhỏ nhƣ mạng LAN cho một nhóm vài máy tính , hoặc rất lớn nhƣ mạng Internet. Trong nhiều trƣờng hợp mạng máy tính gián tiếp sử dụng dịch vụ truyền dữ liệu của mạng viễn thông. Trong khi đó cho đến nay các hệ thống mạng công nghiệp thƣờng có tính chất độc lập, phạm vi hoạt động tƣơng đối hẹp. 1.2. VAI TRÕ MẠNG TRUYỀN THÔNG CÔNG NGHIỆP - Đơn gián hoá cấu trúc lien kết giữa các thiết bị công nghiệp - GIảm đáng kể giá thành dây nối và công lắp đặt hệ thống - Nâng cao độ tin cậy và độ chính xác của thông tin nhờ truyền thông số - Nâng cao độ linh hoạt , tính năng mở của hệ thống - Đơn giản hoá, tiện lợi hoá việc chuẩn đoán định vị lỗi sự cố các thiết bị 2
  3. - Nâng cao khả năng tƣơng tác giữa các thành phần ( phần cúng và mềm) nhờ các giao diện chuẩn - Mở ra chức năng và khả năng ứng dụng mới của hệ thống, ví dụ các hệ thống điều khiển phân tán, điều khiển giám sát hoặc chuẩn đoán lỗi từ xa qua Internet H1.1 Nối dây truyền thống(a) nối mạng công nghiệp(b) 1.3. PHÂN LOẠI VÀ ĐẶC TRƯNG CÁC HỆ THỐNG MẠNG CÔNG NGHIỆP Dựa vào mô hình phân cấp quen thuộc cho các công ty, xí nghiệp sản xuất. Với loại mô hình này, các chức năng đƣợc phân thành nhiều cấp khác nhau H1.2 Mô hình phân cấp chức năng một nhà máy công nghiệp 3
  4. Ở những cáp dƣới thì chức năng càng cơ bản đòi hỏi yêu cầu cao hơn về độ nhạy thờ gian phản ứng.Cấp trên ko đòi hỏi thời gian phản ứng nhanh nhƣng lƣợng thông tin lại nhiều - Bus trƣờng, bus thiết bị( fieldbus): Sử dụng kỹ thuật truyền tin số để kết nối các thiết bị thuộc cấp điều khỉên( PC, PLC ) với nhau và với các thiết bị chấp hành, hay thiết bị trƣờng. Chức năng là đo lƣờng, dẫn động và chuyển đổi tín hiệu trong trƣờng hợp cần thiết. Các bus trƣờng chỉ chấp hành với các bộ điều khiển cũng đƣợc gọi là bus chấp hành/cảm biến.(tg phản ứng 0.1-vài miligiây) tóc độ truyền thông Mbit/s. các hệ thống bus trƣờng đƣợc sử dụng rộng rãi hiện nay PROFIBUS, CotrolNet, CAN, WorldFIP, Modbus, Foundation Fildbus, DeviceNet, AS-I, EIB, Bitbuslaf một vài hệ thống bus cảm biến / chấp hành tiêu biểu . - Bus hệ thống, bus quá trình:Các hệ thống mạng công nghiệp đƣợc dung để kết nối các máy tính trên cấp điều khiển giám sát với nhau gọi là bus hệ thống ( system bus ) hay bus quá trình ( process bus) ( tg phản ứng tiêu biểu một vài trăm miligiây. Tốc độvài trăm Kbit/s- vài Mbit/s. kiếu bus thông dụng Ethernet , Industrial Ethernet - Mạng xí nghiệp thực ra là mạng LAN bình thƣờng kết nối các máy văn phòng thuộc cấp điều hành với cấp điều khiển giám sát , ko yêu cầu nghiêm ngặt về thời gian thực. 2 loại dung phổ biến Ethernet và Token-Ring trên cơ sớ các giao thức TCP/IP IPX/SPX - Mạng công ty nằm trên cùng mô hình phân cáp hệ thống truyền thông của một công ty sản xuất công nghiệp. Đặc trƣng của mạng công ty gần với một mạng viễn thông hoặc mạng máy tính diện rộng . Chức năng của mạng này là kết nối các máy tính văn phòng của các xí nghiệp, cung cấp dịch vụ trao đổi thông tin nội bộ và khách hang. Đòi hỏi về tốc độ truyền thông độ an toàn tin cậy cao. 4
  5. B: CƠ SỞ KỸ THUẬT. 1.4. CÁC KHÁI NIỆM 1.4.1 Thông tin, dữ liệu, tín hiệu. - Thông tin: Thông tin là cơ sở cho sự giao tiếp, thông qua việc giao tiếp mà các đối tác có thêm hiểu biết lẫn nhau hoặc về cùng một vấn đề, một sự kiện hoặc một hệ thống. Thông tin là thƣớc đo mức nhận thức sự hiểu biết về một vẫn đề một sự kiện hoặc một hệ thống. H1.3 Vai trò của thông tin trong các hệ thống kỹ thuật. - Dữ liệu: Thông tin có thể đƣợc mô tả hoặc số lƣợng hoá bằng dữ liệu để có thể lƣu trữ và xử lý trong máy tính. Trong trƣờng hợp đó thông tin đƣợc số hoá sử dụng hệ đếm nhị phân hay mã hoá nhị phân. Nói trong ngữ cảnh cấu trúc một bức điện dữ liệu chính là phần thông tin hữu ích đƣợc biểu diễn bằng dãy các bit 1,0. Hoặc dữ liệu là phần thông tin hữu dụng ( thông tin nguồn) trong một bức điện. - Lƣợng thông tin:Thông tin chính là sự xoá bỏ tính bất định mức độ sự xoá bỏ tính bất định này hay nói cách khác giá trị về sự hiểu biết một nguồn thông tin mang lại đƣợc gọi là lƣợng thông tin. Đơn vị “bit”. - Tín hiệu:Là diễn biến của một đại lƣợng vật lý chứa đựng tham số thông tin/ dữ liệu và có thể truyền dẫn đƣợc. các tham số thƣờng đƣợc dung trực tiếp hoặc gián tiếp hay kết hợp để biểu thị nội dung thông tin: biên độ, tần số, nhịp xung, độ rrộng xung, sƣờn xung, pha. Theo diễn biến thời gian hoặc tập hợp giá trị tham số dạng : tƣơng tự, rời rạc, liên tục, gián đoạn. 5
  6. H1.4 Một số dạng tín hiệu thông dụng. 1.4.2 Truyền thông, truyền dữ liệu và truyền tín hiệu. - Giao tiếp và truyền thông: Là quá trình trao đổi thông tin giữa 2 chủ thể với nhau đƣợc gọi là cá đối tác giao tiếp theo một phƣơng pháp đƣợc qui định trƣớc . Đối tác này có thể điều khiển đối tác kia hoặc quan sát trnạg thái các đối tác. Đối tác có thể là ngƣời hoặc hệ thống kỹ thuật. Để thực hiện giao tiếp hay truyền thông ta cần các tín hiệu thích hợp. Trên cơ sở các dạng tín hiệu khác nhau có các kiểu giao tiếp sau: giao tiếp tiếng nói, hình ảnh, văn bản, dữ liệu.Trong các hệ thống truyền thông công nghiệp hiện đại ta chỉ quan tâm tới truyền tín hiệu số hay là truyền dữ liệu, chuẩn giao tiếp là các chuẩn giao tiếp số. - Mã hoá, giải mã: H1.5 Nguyên tắc cơ bản của truyền thông. 6
  7. Mã hoá chỉ quá trình biến đổi nguồn thông tin( dữ liệu) cần trao đổi sang một chuỗi tín hiệu thích hợp để truyền dẫn. Quá trình này ít nhất bao gồm 2 bƣớc mã hoá nguồn và mã hoá đƣờng truyền. Tín hiệu truyền đi cần có một phƣơng pháp phân biệt giới hạn giữa các bit dữ liệu nối tiếp nhau gọi là phƣơng pháp đồng bộ hoá . Quá trình giải mã ngƣợc lại chuyển đổi tín hiệu nhận đƣợc thành dãy bit tƣơng ứng - Điều chế và điều biến tín hiệu:Điều chế là tạo một tín hiệu trực tiếp mang tham số thông tin,thể hiện qua biên độ,tần số hoặc pha,trong đótham số thông tin thông tin có thể lấy một giá trị bất kỳ.Điều biến là quá trình dung tín hiệu mang thông tin để điều khiển biến đổi các tham số thích hợp của một tín hiệu thứ 2 . Mục đích sử dụng tín hiệu mang có dải tần khác để thực hiện phƣơng pháp dồn kênh phân chia tần số hoặc tránh truyền dẫn ở dải tần cơ sở dễ bị nhiễu. - Tốc độ truyền, tốc độ bit :Tính bằng số bit truyền tải trong 1s ( baud, bps) V= f*n ( v: số bit truyền đi, f: tần số sung nhịp, n: số bit truyền đi trong một nhịp ) - Thời gian bit/ chu kỳ bit :Thời gian bit là thời giant rung bình cần thiết để chuyển một bit hay chính bằng giá trị nghịch đảo của tốc độ truyền tải -Tb= 1/v , Tb= 1/f (n=1) - Thời gian lan truyền tín hiệu :Là thời gian cần để một tín hiệu phát ra từ một đầu dây lan truyền tới đầu dây khác. phụ thuộc vào chiều dài cấu tạo dây dẫn.Ts= l/9(k*c) với: Ts là thời gian lan truyền tín hiệu, l là chiều dài dây dẫn, c là tốc độ ánh sang (300.000.000)m/s , k biểu thị hệ số giảm tốc độ truyền do lớp cách ly.K= 1/ ε Với ε là hằng số điện môi của lớp cách ly, Polyethylen = 2.3, k= 0.66,Ts sẽ phụ thuộc chiều dài dây dẫn. Ts= 1/200 000 000. 1.4.3 Tính năng thời gian thực Là một trong những đặc trƣng quan trọng nhất đối với các hệ thống tự động hoá nói chung và bus trƣờng nói riêng. Sự hoạt động bình thƣờng của một hệ thống làm việc trong thời gian thực không chỉ phụ thuộc vào độ chính 7
  8. xác đúng đắn của kết quả đầu ra mà òn phụ thuộc thời điểm đƣa ra kết quả. Một hệ thống có tính năng thời gian thực không nhất thiết phải có phản ứng nhanh mà quan trọng hơn là phải có phản ứng kịp thời với các yêu cầu tác động bên ngoài. Nhƣ vậy một hệ thống truyền thông có tính năng thời gian thực phải có khả năng truyền tải thông tin một cách tin cậy và kịp thời với các đối tác truyền thông. Tính năng thời gian thực của một hệ thống điều khiển phân tán phụ thuộc rất nhiều vào hệ thống bus trƣờng đƣợc dung. Để đảm bảo tính năng thời gian thực một hệ thống bus phải có những đặc tính sau: - Độ nhanh nhạy: tốc độ truyền thông hữu ích phải đủ nhanh đẻ đáp ứng nhu cầu trao đổi dữ liệu trong một giải pháp cụ thể. - Tính tiền định : dự đoán trƣớc về thời gian phản ứng tiêu biểu và thời gian phản ứng chậm nhất với yêu cầu từng trạm - Độ tin cậy, kịp thời: Đảm bảo tổng thời gian cần cho việc vận chuyển dữ liệu một cách tin cậy giữa các trạm nằm trong một khoảng cáhc nhất định. - Tính bền vững : Có khả năng xử lý sự cố một cách thích hợp để không gây hại thêm cho toàn bộ hệ thống. 1.5. CHẾ ĐỘ TRUYỀN TẢI Là phƣơng thức các bit dữ liệu đƣợc chuyển giũa các đối tác truyền thông, có nhìn nhận từ các góc độ sau đây: - Truyền song song hay nối tiếp - Truyền đồng bộ hay không đồng bộ - Truyền một chiều( simplex) hai chiều toàn phần ( duplex , full- duplex) hay hai chiều dán đoạn ( half- duplex) - Truyền tải dải cơ sở, truyền tải dải mang và truyền tải dải rộng 8
  9. 1.5.1 Truyền bit song song và nối tiếp H1.6 Truyền bit song song và truyền bit nối tiếp - Phƣơng pháp song song dùng phổ biển trong bus nội bộ của máy tính nhƣ bus địa chỉ,dữ liệu và điều khiển ( tín hiệu truyền đồng thời nên cần đồng bộ hoá ở cả nơi phát và nhận) - Phƣơng pháp nối tiếp từng bit đƣợc chuyển đi tuần tự qua một đƣờng truyền duy nhất ( hạn chế về tốc độ nhƣng thực hiện đơn giản tin cậy cao). H1.7 Nguyên tắc truyền bit nối tiếp. 1.5.2 Truyền đồng bộ và không đồng bộ Liên quan tới truyền bit song song. - Trong chế độ đồng bộ các đối tác làm việc theo cùng một nhịp( cùng f và độ lệch pha không đổi) . Có thể qui định một trạm có vai trò tạo nhịp và dung một đƣờng dây riêng mang nhịp đồng bộ cho các trạm khác. Biện pháp kinh tế hơn là dung phƣơng pháp mã hoá bit thích hợp đẻ bên nhận có thể có thể tái tạo nhịp đồng bộ từ chính tín hiệu mang dữ liệu. 9
  10. 1.5.3 Truyền một chiều, hai chiều toàn phần và gián đoạn. - Chế độ này ít phụ thuộc vào tính chất vật lý của môi trƣờng truyền dẫn, mà phụ thuộc vào phƣơng pháp truyền dẫn tín hiệu., chuẩn truyền dẫn RS-232 RS- 422 RS-485 và vào cấu hình của hệ thống truyền dẫn. H 1.8 Truyền Simplex , half- duplex và duplex - Truyền một chiều: thông tin chỉ truyền đi theo một chiều, mổt trạm chỉ có thể là bên phát hoặc thu trong suốt quá trình giao tiếp. - Truyền 2 chiều gián đoạn cho phép mỗi trạm có thể tham gia nhận hoặc gửi thông tin nhƣng không cùng một lúc. Ƣu điểm là không cần cấu hình cao nhƣng có thể truyền tốc độ cao. Chế độ truyền này đƣợc sử dụng phổ biến trong mạng công nghiệp vd với chuẩn RS-485. - Với chế độ truyền 2 chiều toàn phần mỗi trạm đều có thể gửi và nhận thông tin cùng một lúc. Chế độ này chỉ khác với chế độ hai chiều gián đoạn là dung 2 đƣờng truyền cho thu và phát. 1.5.4 Truyền tải cơ sở, dải mang và truyền tải dải rộng. - Truyền tải dải cơ sở:Môt tín hiệu mang một nguồn thông tin có thể biểu diễn bằng tổng của nhiều dao động có tần số khác nhau nằm trong phạm vi hẹp gọi là dải tần cơ sở hay dải hẹp. Tín hiệu truyền đi cũng chính là tín hiệu đƣợc tạo ra sau khi mã hoá bit, nên có tần số cố định hoặc nằm trong khoảng hẹp nào đó, tuỳ thuộc vào phƣơng pháp mã hoá bit. Phƣơng pháp này dễ thực hiện nhƣng tốc độ hạn chế. Dùng chủ yếu trong truyền thông công nghiệp. 10
  11. - Truyền tải dải mang:Tín hiệu mang có tần số nằm trong dải tần thích hợp(dải mang) Dữ liệu cần truyền tải sẽ dùng để điều chế tần số, biên đọ hoặc pha tín hiệu mang. Bên nhận sẽ thực hiện quá trình giải điều chế để hồi phuc thông tin nguồn. Dùng cho kênh truyền tin duy nhất. - Truyền tải dải rộng:Tín hiệu có thể chứa đựng nhiều nguồn thông tin khác nhau bằng cách sử dụng kết hợp nhiều thông số thông tin. Thông tin đƣợc mã hoá, mỗi tín hiệu tạo ra sẽ dung để điều biến một tín hiệu khác thƣờng có tần số lớn hơn nhiều( tín hiệu mang) Do tín hiệu có tần số khác nhau nên có thể pha trộn thành 1 tín hiệu, tín hiệu này lại dùng điều biến tín hiệu khác. TÍn hiệu thu đƣợc từ khâu này mới đƣợc truyền đi. Đâychính là kỹ thuật dồn kênh phân tần trong truyền tải thông tin. Phía nhận sẽ thực hiện giải điều biến và phân kênh hồi phục tín hiệu mang các nguồn thông tin khác nhau. Sử dụng rộng rãi trong mạng viễn thông. 1.6. CẤU TRÚC MẠNG - TOPOLOGY Các đối tác truyền thông có thể có một hoặc nhiều lien kết: - Liên kết điểm- điểm( chỉ có 2 đối tác tham gia), - Liên kết điểm- nhiều điểm( 1 trạm chủ phát đi nhiều trạm còn lại có thể truyền qua 1 cáp duy nhất) , - Liên kết nhiều điểm( Trong một mối lien kết có nhiều đói tác tham gia và có thể trao đôir thông tin qua lại tự do - Topology là cấu trúc liên kết của một mạng hay là tổng hợp của nhiều lien kết.( có sắp xếp logic các nút mạng). Có các loại cấu truc sau: 1.6.1 Cấu trúc bus: - Các thành viên của mạng đều đƣợc nối trực tiếp với đƣờng dẫn chung- tiết kiệm công lắp đặt. Có 3 kiếu cấu hình trong cấu trúc này: 11
  12. H1.9 Cấu trúc bus Nhƣợc điểm: - Trình tự truyền không kiểm soát đƣợc - Trạm phải xác định thông tin có phải gửi cho mình không nên khi mở rộng pải dùng các bộ lặp - L dây dẫn dài nên chất lƣợng giảm - Khi đứt dây kết nối bus hỏng cả hệ thống ngừng hoạt động - Cấu trúc đƣờng thẳng lien kết đa điểm cố hữu nên khó áp dụng công nghệ mới Một số mạng công nghiệp sử dụng cấu trúc bus nhƣ PROFIBUS, CAN, WorldFIP . 1.6.2 Cấu trúc mạch vòng( tích cực). Thành viên đƣợc nối từ điểm này đến điểm kia một cách tuần tự trong một mạch vòng khép kín. Mỗi thành viên đều tham gia vào việc kiểm soát dòng tín hiệu. 12
  13. H1.10 Cấu trúc mạch vòng. Ƣu điểm: -Một nút đồng thời là khuyếch đại nên khoảng cáhc trạm mở rộng, mỗi trạm có thể vừa nhận và phát một lúc. Mỗi thành viên ngăn cáhc mạch ravòng ra làm 2 phần tín hiệu chỉ truyền theo một chiều nên tránh xung đột - Có khả năng xác định vị trí sự cố: H 1.11 Xử lý sự cố trong mạch vòng đúp Cấu trúc này đƣợc sử dụng trong một số hệ thống có độ tin cậy cao Interbus, Token-Ring,(IBM) và FDD 13
  14. H1.12 sử dụng bộ chuyển mạch by- pass 1.6.3 Cấu trúc hình sao. Trạm trung tâm điều khiển tất cả H1.13 Cấu trúc sao Nhƣợc điểm: Trạm trung tâm hòng se tê liệt hoàn toàn, tốn dây dẫn 14
  15. 1.6.4 Cấu trúc cây Là cấu trúc liên kết nhiều mạng con có cấu trúc đƣờng thẳng H1.14 Cấu trúc cây 1.7. KIẾN TRÚC GIAO THỨC 1.7.1 Dịch vụ truyền thông H1.15 Dịch vụ có xác nhận và không xác nhận 15
  16. 1.7.2 Giao thức - Trong kỹ thuật truyền thông bên cung cấp dịch vụ và bên sử dụng đều phải tuân theo qui tắc, thủ tục giao tiếp gọi là giao thức. Một qui tắc giao thức gồm: Cú pháp-syntax ( cấu trúc, dữ liệu, ), Ngữ nghĩa-semamtic, Dịnh thời. - Quá trình xử láy giao thức có thể là mã hoá gọi là xử lý giao thức - Một số giao thức( phần mềm) FTP- trao đổi file từ xa, HTTP TCP/IP . 1.7.3 Mô hình lớp H1.16 Xử lý giao thức theo mô hình lớp - Các phần việc đƣợc sắp xếp theo chiều dọc thành từng lớp tƣơng ứng với các lớp dịch vụ và các lớp giao thức khác nhau. Mỗi lớp giải quyểt một nhiệm vụ rõ rang phục vụ việc truyền thông. Một dịch vụ ở lớp trên sử dụng dịch vụ ở lớp dƣới ngay kề nó. 16
  17. 1.7.4 Kiến trúc giao thức OSI H1.17Mô hình qui chiếu ISO/ OSI 1.7.5 Kiến trúc giao thức TCP/IP Ngày nay nó xâm nhập rất nhiều phạm vi ứng dụng khác nhau trong đó có mạng máy tính cục bộ và mạng truyền thông công nghiệp 1.8. TRUY NHẬP BUS - Một trong những vấn đề quan trọng nhất ảnh hƣởng tới hệ thống chất lƣợng bus là phƣơng pháp phân chia thời gian gửi thông tin trên đƣờng dẫn hay là phƣơng pháp truy nhập bus .Nó có ảnh hƣởng khác nhau tới các tính năng kỹ thuật của hệ thống. - Phân loại truy nhập bus 17
  18. H 1.18 Phân loại phƣơng pháp truy nhập bus 1.8.1 Master/ Slave - Trạm chủ phân chia quyền truy nhập bus cho các trạm con, trạm con chỉ có quyền truy nhập bus và gửi tín hiệu đi khi có yêu cầu. H1.19 Phƣơng pháp chủ/tớ. - Ƣu điểm: Kết nối mạng các trạm tớ đơn giản, đỡ tốn kém. Mọi việc đều chủ yếu tập trung ở trạm chủ. - Nhƣợc:Hiệu suất trao đổi thông tin giữa các trạm tớ bị giảm do dữ liệu phải đi qua khâu trung gian là trạm chủ, nên giảm hiệu xuất đƣờng truyền, 2 trạm tớ trao đổi nhau mất thời gian dài hơn một chu kỳ bus. Độ tin cậy của hệ thống truyền thông phụ thuộc hoàn toàn vào một trạm chủ duy nhất, khi trạm chủ hỏng thì cả hệ thống hỏng. 18
  19. 1.8.2 TDMA( Time Division Multiple Access) Phƣơng pháp đa truy nhập phân chia thời gian. - Mỗi trạm thay nhau gửi thông tin trong khoảng thời gian cho phép, theo tuần tự định sẵn. Việc phân chia này thực hiện trƣớc khi ht hoạt động. H1.20 Phƣơng pháp TDMA 1.8.3 Token Passing: Là một bức điện ngắn không mang dữ liệu, có cấu trúc đặc biệt để phân biệt với các bức điện nguồn, đƣợc dùng tƣơng tự nhƣ một chìa khoá . Một trạm đƣợc quyền truy nhập bus và gửi thông tin đi chỉ trong thời gian nó giữ token. Khi không có nhu cầu trạm không có token sẽ gửi tới trạm khác theo một trình tự nhất định. Một trạm đang giữ token đƣợc gửi thông tin đi và kiểm soát của một số trạm khác. Trong thời gian xác lập cấu hình các trạm có thể dự tính về thời gian dùng token của mình và tìm chu kỳ bus thích hợp để cá quyền tham gia gửi thông tin và kiểm soát hoạt động truyền thông của mạng. Việc kiểm soát gồm các bƣớc: giám sát token, khởi tạo token, tách trạm ra khỏi mạch vòng logic , bổ xung trạm mới. H1.21 Hai dạng của phƣơng pháp Token- Passing 19
  20. 1.8.4 CSMA/CD ( Carier Sense Multiple Access with Collision Detection) H1.22 Phƣơng pháp CSMA/CD - Nguyên tắc làm việc: 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. Các bƣớc tiến hành - Điều kiện rang buộc: Phƣơng pháp bị hạn chế bởi chiều dài dây dẫn, tốc độ truyền thông và chiều dài bức điện. Điều kiện thực hiện phƣơng pháp là tg gửi một bức điện phải lớn hơn 2 lần thời gian lan truyền tín hiệu ( Chiều dài bức điện n/ Tốc độ truyền v) > 2 Ts hay n/v > 2l / ( 0.66* 300 000 000) với l là chiều dài dây dẫn và hệ số k= 0.66 hay lv< 100 000 000n - Ƣu điểm: Đơn giản , linh hoạt - Nhƣợc: tính bất định thời gian của phản ứng 1.8.5 CSMA/CA ( Carier Sense Multiple Access with Collision Avoidance) Nhƣ phƣơng pháp CSMA/CD mỗi trạm đều phải nghe đƣờng dẫn trƣớc khi gửi cũng nhƣ sau khi gửi thông tin. Tuy nhiên một phƣơng pháp mã hoá bit thích hợp đƣợc sử dụng khi xung đột một tín hiếu sẽ lấn át tín hiệu kia. 20
  21. H1.23 Phƣơng pháp CSMA/CD - Điều kiện rang buộc : 1/v >2 Ts hay 1/v > 2l / ( 0.66*300 000 000) hay lv< 100 000000 Sử dụng mức ƣu tiên: Mỗi bức điện đều đƣợc bắt đầu bằng một dãy bit đặc biệt gọi là cờ hiệu, sau đó là tới các phần khác nhƣ thông tin kiểm soát, địa chỉ pp này có thể sử dụng mức ƣu tiên cho mỗi trạm ( hoặc theo loại thông tin) và gắn mã ƣu tiên ( 001, 010, ) vào phần đằng sau cờ hiệu của mỗi bức điện. Bức điện nào có mức ƣu tiên cao sẽ lấn át bức điện khác . 1.9. BẢO TOÀN DỮ LIỆU Trong truyền thông công nghiệp mặc dù đã sử dụng kỹ thuật truyền tín hiệu số nhƣng do nhiễu và tác động của môi trƣờng truyền dẫn nên thông tin truyền tải bị sai lệch. Các lỗi thƣờng gặp: phát hiện đƣợc nhƣng không sửa đƣợc, phát hiện đƣợc sửa đƣợc, không phát hiện đƣợc Khắc phục bằng các biện pháp sử dụng các phần cứng cao cấp và bọc lót đƣờng truyền nhƣng giá thành cao. Bảo toàn dữ liệu là phƣơng pháp sử dụng xử lý giao thức để phát hiện và khắc phục lỗi. Các phƣơng pháp bảo toàn dữ liệu thông dụng: - Prity bit: Tuỳ theo tổng số bit 1 trong thông tin nguồn là chẵn hay lẻ mà thêm vào một bit thông tin phụ trợ p=0 hoặc p=1 gọi là paritybit hay bit chẵn lẻ. Có thẻ gọi bit một chiều 21
  22. VD dùng parity chẵn - Dãy bit nguyên bản : 1001101 - Dãy bit gửi đi :10011010 - Parity bit 2 chiều: Còn gọi là phƣơng pháp bảo toàn khối. Dãy bit mang thông tin nguồn đƣợc chia thành từng khối coi nhƣ có 2 chiều. Trong thực tế chọn 7 hàng và 7 cột tính parity thực hiện cả 2 chiều VD Búc điện sử dụng parity bit 2 chiều không lỗi với cấu trúc ( 7+1)* ( 7+1). Số bit 1 hoặc 0 ở cột p ( hang ) cũng giống nhƣ ở hàng ( cột) nên bit cuối cùng giữa hàng và cột có thể tính parity theo hàng hoặc cột Trong trƣờng hợp chỉ 1 bit bị đảo ví dụ ở hàng thƣ3 và cột thứ 4 trong bảng sau lỗi đƣợc phát hiện vàđịnh vị sửa đƣợc - CRC( Cyclic Redundancy Check) Phƣơng pháp mã vòng: Nguyên tắc: - Giả sử đa thức G có bạc n, dãy bit thông tin nguồn I đƣợc thêm vào n bit 0 và coi nhƣ một đa thức nhị phân P - Đa thức P chia cho G 22
  23. - Phần dƣ thay thế vào chỗ n chữ 0 bổ xung trong P, tức là D= P+R Nếu D-R chia hết cho G thì D= P+R cũng thế D chính là dãy bit đƣợc gửi đi thay cho I - Dãy bit nhận đƣợc là D’ khác D ( không chia hết cho G) thì xác xuất rất cao bức điện nhận đƣợc không lỗi VD - Bit Stuffing( nhồi bit) : Nhồi thêm một số bit vào dãy bit nguyên bản đẻ tránh xuất hiện một chuỗi dài bit 1 liên tục cũng nhƣ tránh trùng lặp với một số mẫu bit đặc biệt. Tạo điều kiên cho bên nhận dễ nhận lỗi Nguyên tắc: - Bên gửi: Trong dữliệu có n bit 1 liền nhau thì thêm bit 0 vào sau nên mỗi day bit chuyển đi không thể xuất hiện n+1 bit 1 đi liền nhau - Bên nhận: Nếu thấy n bits 1 liền nhau mà bit tiếp theo là 0 thì tách ra , còn nếu là bit 1 thì chắc chán là lỗi 23
  24. VD 1.10. MÃ HOÁ BIT Là quá trình chuyển đổi dãy bit (0, 1) sang một tín hiệu thích hợp để có thể truyền dẫn trong môi trƣờng vật lý. Việcchuyển đổi này là sử dụng một tham số thông tin thích hợp để mã hoá dãy bit cần chuyển tải. Các tham số thông tin có thể đƣợc chứa đựng trong biên độ, tần số, pha hoặc sƣờn xung. 1.10.1 Các tiêu chuẩn mã hoá bit: - Tần số của tín hiệu: ảnh hƣởng tới tính năng của hệ thống, f cao thì suy giảm tín hiệu lớn và gây nhiễu điện từ xung quanh. Tần số tín hiệu tỷ lệ tƣơng đối với tần số nhịp có thể lớn hoặc nhỏ hơn tần số nhịp tuỳ theo cách mã hoá. - Thông tin đồng bộ hoá có trong tín hiệu: Trong th chế độ truyền dẫn đƣợc chọn là đồng bộ nếu pp ma hoá bit tạo ra tín hiệu có mang kèm theo thông tin đồng bộ hoá nhịp sẽ tiết kiệm dây dẫn tín hiệu nhịp. Tuy nhiên hệ thống thƣờng không yêu cầu tín hiệu đồng bộ có ở mỗi nhịp mà có thể ở cách quãng vài nhịp - Triệt tiêu dòng một chiều: Dòng một chiều không những cản trở khả năng đồng tải nguồn mà còn gây rất nhiều khó khăn trong kỹ thuật truyền dẫn tín hiệu Nếu vƣợt quá giới han nhất định dòng một chiều dễ gây phát xung nguy hiểm trong các môi trƣờng dễ cháy nổ. 24
  25. - Khả năng phối hợp nhận lỗi: Nếu pp mã hoá bit tạo ra những tín hiệu có đặc thù riêng theo một mẫu biệt lập thì bên nhận có thêm khả năng đẻ nhận biết lỗi nếu tín hiệu bị sai lệch mà không cần bổ xung thông tin kiểm lỗi. 1.10.2 NRZ, RZ ( Phƣơng pháp điều chế biên độ xung) - NRZ( Non- Return To Zero) và RZ ( Return to Zero) đều mã hoá bit ( 0, 1) với 2 mức biên độ tín hiệu khác nhau Các khả năng thể hiện 2 mức có thể là: - Đất và điện áp dƣơng - Điện áp âm và đất - Điện áp âm và dƣơng cùng giá trị tín hiệu ( tín hiệu lưỡng cực) H1.24 NRZ và RZ - Mã Manchester: Phƣơng pháp điều chế pha xung,tham số thông tin thể hiện qua sƣờn xung, bit 1 mã hoá sƣờn lên 0 sƣờn xuống của xung ở chu kỳ bit T hoặc ngƣợc lại H 1.25 Manchester II và AFP 25
  26. - AFP ( Alternate Flanks Puslse) phƣơng pháo xung sừơn xoay chiều : mỗi sự thay đổi trạng thái trạng thái logic đƣợc đánh dấu bằng một xung có sự thay đổi luân phiên - FSK ( Frequency Shift Keying): Phƣơng pháo điều chế dịch tần số: 2 tần số khác nhau đƣợc dùng đẻ mã hoá các trạng thái logic 0 , 1 H 1.26 Mã hoá dịch tần số FSK 1.11. CHUẨN TRUYỀN DẪN Truyền dữ liệu nối tiếp không đồng bộ là phƣơng pháp đƣợc sử dụng chủ yếu trong các hệ thống mạng truyền thông công nghiệp. - Các chuẩn truyền dẫn TIA/EIA( Telecommunication Industry Association/ Electronic Industry Association): Chia làm 3 phạm trù sau: - Chuẩn giao diện trọn vẹn (Complete Interface Standards ) TIA/ EIA- 232-F, TIA/ EIA-530-A , TIA/EIA- 561 đƣa ra toàn bộ các qui định về mặt chức năng cơ học và điện học. - Chuẩn riêng về điện học: ( Electrical Only Standards ) TIA/EIA- 232F, TIA/EIA-422-B, TIA/EIA485-A chỉ định nghĩa thông số mặt điện học - Chuẩn về chất lƣợng tín hiệu : ( Signal Quality Standards ) EIA-334- A, EIA-363, EIA-404-A định nghĩa các thuật ngữ và các phƣơng pháp cho việc đánh giá chất lƣợng tín hiệu 26
  27. 1.11.1 Phƣơng thức truyền dẫn tín hiệu : - Truyền dẫn không đối xứng : Sử dụng điện áp của một dây dẫn so với đất để thể hiện các trạng thái logic ( 0, 1) của một số tín hiệu H 1.27 Truyền dẫn không đối xứng D: ( driver) bộ phát hay bộ kích thích, R( receiver) bộ thu - Truyền dẫn chênh lệch đối xứng : Sử dụng điện áp của 2 dây dẫn A( -) và B( +) để biểu diễn trạng thái logic (0,1) của tín hiệu không phụ thuộc vào đất. H 1.28 Truyền dẫn trênh lệch đối xứng( 3 kênh 7 dây dẫn) 27
  28. - Trở đầu cuối : ( Terminating Resistance) - Vod : điện áp chênh lệch đầu ra bbọ kích thích qua trở đầu cuối( giữa dây A và B) Vt,Vod không phụ thuộc đất, chuẩn thì Vod=1.5V bộ thu chỉ cần mức 200mA - Vos: điện áp lệch - Vcm : điện áp chế độ chung VCM= Vos + VNOISE + VGPD H1.29 Điện áp chênh lệch đầu ra V OD và điện áp lệch VOS - VGPD Chênh lệch điện áp đất H 1.30 Điện áp chế độ chung VCM và chênh lệch điện áp đất VGPD 1.11.2 RS-232 Giao tiếp điểm- điểm giữa hai DTE, sử dụng truyền không đối xứng, điện áp sử dụng dao động( -15V, 15V) 28
  29. H 1.31 Qui định trạng thái logic của tín hiệu RS-232 Bảng thông số quan trọng của RS-232 1.11.3 RS-422 : Sử dụng tín hiệu chênh lệch điện áp đối xứng giữa 2 dây dẫn A và B, có khả năng ghép nối điểm-điểm, điểm- nhiều điểm Bảng thông số quan trọng: 29
  30. 1.11.4 RS-485 : Bảng thông số quan trọng Ngoài ra còn có chuẩn IEC 1158-2 1.12 Môi trƣờng truyền dẫn : Ảnh hƣởng tới chất lƣợng tín hiệu độ bền vững với nhiễu và tính tƣơng thích điện từ của hệ thống truyền thông. Trong kỹ thuật truyền thông ngƣời ta sử dụng phƣơng tiện truyền dẫn sau: - Cáp điện: đồng trục và đôi dây xoắn H 1.32 Đôi dây xoắn và tác dụng trung hoà trƣờng điện từ. 30
  31. Cáp đôi xoắn STP và UTP( Shielded Twisted Pair- Unshielded Twisted Pair) ,đồng trục - Cáp quang: Cáp sợi thuỷ tinh, cáp sợi chất dẻo H1.33 Nguyên tắc làm việc của cáp quang - Vô tuyến : Vi song( microwave), tia hồng ngoại, siêu âm. 1.13. THIẾT BỊ LIÊN KẾT MẠNG Để cho dòng dữ liệu giữa hai phần mạng có thể truyền qua lại với nhau Thông thƣờng thì mỗi phần mạng đƣợc thiết lập các giao thức truyền thông riêng, các giao thức này có thể giống hoặc khác nhau so với mạng còn lại. Để liên kết hai mạng lại mà không phải thiết lập lại giao thức tuỳ theo đặc điểm giống và khác nhau giũa hai phần cần liên kết có thể thực hiện bằng cách chọn các loại thiết bị liên kết cho phù hợp trong số các loại liên kết nhƣ bộ lăp( Repeater), cầu nối ( Bridge) Router và gateway. C CÁC HỆ THỐNG BUS TIÊU BIỂU: 1.14. PROFIBUS : Định nghĩa các đặc tính của hệ thống bus dùng kết nối các thiết bị trƣờng với thiết bị điều khiển và giám sát. Là hệ thống nhiều chủ( multi 31
  32. master) cho phép các thiết bị điều khiển tự động các trạm kỹ thuật và hiển thị quá trình cũng nhƣ các phụ kiện phân tán cùng làm việc trên cùng mạng bus. - Kiến trúc giao thức H1.34 Kiến truc giao thức PRROFIBUS chuẩn EN 50170 - Cấu trúc mạng và kỹ thuật truyền dẫn : Truyền dẫn với RS-485, cáp quang, IEC 1158-2 - Truy nhấp bus: H 1.35 Cấu hình Multi-Master trong PROFIBUS 32
  33. - Dịch vụ truyền dữ liệu: H1.36 Các dịch vụ truyền dữ liệu PROFIBUS - Cấu trúc bức điện : Một bức điện ( telegram) Trong giao thức thuộc lớp 2 của PROFIBUS đƣợc gọi là khung( frame) Ba loại khung có khoảng cách Hamming 4 ( HD= 4) và một loại khung đặc biệt đánh dấu một token đƣợc qui định nhƣ sau: 33
  34. 1.15. CAN ( Controller Area Network ) - Kiến trúc giao thức H 1.37 Phạm vi định nghĩa của CAN trong mô hình OSI 34
  35. - Cấu trúc mạng và kỹ thuật truyền dẫn: CAN thực chất chỉ là chuẩn giao thức từ phần trên của lớp vâtj lý cho tới hết lớp liên kết dữ liệu vì vậy không qui định cụ thể về chuẩn truyền dẫn cũng nhƣ môi trƣờng truyền thông. CAN phân biệt hai trạng thái logic của tín hiệu là mức trội( dominant ) và mức lặn( recessive ), tuy nhiên không qui định rõ ràng giá trị bit nào ứng với mức tín hiệu nào. Khi cả bit trội và lặn phát đồng thời thì bit trội sẽ lấn át và tín hiệu trên bus có mức trội. - Cơ chế giao tiếp : Đặc trƣng của CAN là phƣơng pháp định nghĩa chỉ và giao tiếp hƣớng đối tƣợng, trong khi hầu hết các hệ thống bú trƣờng khác đều giao tiếp dựa vào địa chỉ các trạm. Mỗi thông tin trao đổi trong mạng đƣợc coi nhƣ một đối tƣợng đƣợc gán một mã căn cƣớc. Thông tin đƣợc gửi trên bus theo kiểu truyền thông báo với độ dài có thể khác nhau. - Cấu trúc bức điện : Can định nghĩa 4 kiểu bức điện sau: - Khung dữ liệu( data frame) mang dữ liệu từ một trạm truyền tới các trạm nhận. - Khung yêu cầu dữ liệu( remote frame ) đƣợc gửi từ một trạm yêu cầu truyền khung dữ liệu với cùng mã căn cƣớc. - Khung lỗi (error frame ) đƣợc gửi từ bất kỳ trạm nào phát hiện lỗi - Khung quá tải( overload frame ) đƣợc sử dụng nhằm tạo một khoảng cách thời gian bổ xung giữa khung dữ liệu hoặc yêu cầu dữ liệu trong trƣờng hợp một trạm bị quá tải. 35
  36. H 1.38 Cấu trúc khung dữ liệu ở CAN H 1.39 Cấu trúc khung lỗi 36
  37. H 1.40 Cấu trúc khung quá tải - Truy nhập bus : CAN sử dụng phƣơng pháo truy nhập môi trƣờng CSMA/CA điều khiển phân kênh theo từng bit. Phƣơng pháp phân mức ƣu tiên truy cập bus dựa theo tính cấp thiết của nội dung thông báo. Mức ƣu tiên này phải đƣợc đặt cố định trƣớc khi hệ thống đi vào vận hành. Thực tế mã căn cƣớc không những mang ý nghĩa của dữ liệu trong thông báo mà còn đồng thời đƣợc sử dụng là mức ƣu tiên. - Bảo toàn dữ liệu : CAN kết hợp nhiều biện pháp tự kiểm tra phát hiện và báo lỗi. Các biện pháp kiểm soát lỗi: - Theo dõi mức tín hiệu của mỗi bit truyền đi và so sánh với tín hiệu nhận đƣợc trên bus - Kiểm soát qua mã CRC - Thục hiện nhồi bit ( nhồi 1 bit nghịch đảo sau 5 bit giống nhau ) - Kiểm sáot khung thông báo Với các biện pháp trên hiệu quả đƣợc là - Phát hiện đƣợc các lỗi toàn cục - Phát hiện đƣợc các lỗi cục bộ tại bộ phát - Phát hiện đƣợc 5 bit lỗi phân bố ngẫu nhiên trong một bức điện 37
  38. - Phát hiện đƣợc các lỗi đột ngột có chiều dài nhỏ hơn 15bit trong một thông báo - Phát hiện đƣợc các lỗi có số bit lỗi là chẵn - Tỉ lệ lỗi còn lại ( xác suất một thông báo còn bị lỗi không phát hiện ) nhỏ hơn 4.7*10-11. - Mã hoá bit : Trƣớc khi đƣợc chuyển đổi thành tín hiệu trên đƣờng truyền CAN sử dụng phƣơng pháp nhồi bit. Dãy bit đầu vào cần nhồi bao gồm bit khởi đầu khung, ô phân sử, ô điều kiện,dữ liệu vào và dãy CRC. Khi 5 bit liên tục giống nhau bộ phát sẽ tự động bổ xung một bit nghịch đảo vào cuối. Bên nhận sẽ phát hiện ra bit đƣợc nhồi và tái tạo thông tin ban đầu. Việc nhồi bit không thực hiện với các phần còn lại của khung dữ liệu và khung yêu cầu dữ liệu , khung lỗi khung quá tải. Cuối cùng dãy bit đƣợc mã hoá theo phƣơng pháp Non- Return- Zero( NRZ) có nghĩa là trong suốt một chu kỳ bit mức tín hiệu có thể trội hoặc lặn. - Một số hệ thống tiêu biểu dụă trên CAN: CANopen , SDS 1.16. DIVICENET - Cơ chế giao tiếp: - Điều khiển theo sự kiện: Một thiết bị chỉ gửi dữ liệu mỗi khi dữ liệu có thay đổi. - Điều khiển theo thời gian: Có thể gửi dữ liệu tuần hoàn theo chu kỳ cho ngƣời sử dụng. - Gửi đồng loạt: - Hỏi tuần tự cổ điển cho các hệ thống có cấu hình chủ/tớ 38
  39. - Mô hình đối tƣợng : H1.41 Mô hình đối tƣợng một trạm thiết bị DeviceNet - Mô hình địa chỉ : H1.42 Nguyên tắc định địa chỉ thuộc tính và dịch vụ DeviceNet 39
  40. - Cấu trúc bức điện : 1.17. MODBUS - Cơ chế giao tiếp H1.43 Chu trình yêu cầu đáp ứng giũă trạm chủ và tớ - Chế độ truyền : - Chế độ ASCII : Cấu trúc một ký tự khung gửi đi 40
  41. - Chế độ RTU - Cấu trúc bức điện : - Khung ASCII - Khung RTU 41
  42. 1.18. INTERBUS -S - Kiến trúc giao thức : H 1.44 Kiến trúc giao thức - Cấu trúc mạng : H 1.45 Cấu trúc mạng 42
  43. - Cơ chế giao tiếp : H 1.46 Nguyên tắc làm việc của Interbus-S H 1.47 Giao thức truyền 43
  44. - Cấu trúc bức điện H 1.48 Cấu trúc bức điện Interbus-S 1.18. AS-I ( Actuator Sensor Interface ) H 1.49 Ghép nối cảm biến và cơ cấu chấp hành số với AS-I 44
  45. - Kiến trúc giao thức : Phản ánh đặc điểm của các hoạt động giao tiếp giữa một bộ điều khiển với các thiết bị cảm biến và cơ cấu chấp hành số là hạn chế ở việc trao đổi dữ liệu thuần tuý và lƣợng dữ liệu trao đổi rất nhỏ. Để nâng cao hiệu suất và đơn giản hoá việc thực hiện các vi mạch, toàn bộ việc xử lý giao thức đƣợc gói gọn trong lớp 1 ( lớp vật lý ) theo mô hình OSI - Cấu trúc mạng và cáp truyền : H 1.50 Nguyên tắc ghép nối thiết bị trong một hệ AS-I - Cơ chế giao tiếp : theo phƣơng pháp chủ tớ, một mặt cho phép thực hiện vi mạch ghép nối cho các trạm tớ rất đơn giản , nên giá thành giảm tạo độ linh hoạt cho hệ thống. Khi có lỗi trạm chủ gửi lại riêng tùng bức điện không có trả lời mà không lặp lại chu trình. Trạm chủ cũng có thể gửi thông báo kèm theo mà không ảnh hƣởng tới thời gian chu kỳ bus. 45
  46. - Cấu trúc bức điện : H 1.51 Cấu trúc bức điện AS-I - Mã hoá bit : H 1.52 Mã hoá đƣờng truyền AS- I sử dụng phƣơng pháp APM 46
  47. D. CÁC THÀNH PHẦN HỆ THỐNG MẠNG . - Một số chuẩn giao tiếp công nghiệp . - Chuẩn MMS ( Manufactoring Message Specification ) : chuẩn quốc tế cho việc xây dựng lớp ứng dụng theo mô hình qui chiếu OSI, cơ bản MMS qui định một tập hợp các dịch vụ chuẩn cho việc trao đổi dữ liệu thời gian thực và thông tin điều khỉên giám sát. Các dịch vụ này cũng nhƣ các giao thức tƣơng ứng đƣợc chuẩn hoá trong ISO/IEC 9506 - Chuẩn IEC 61131-5 . - Mô hình giao tiếp mạng : H 1.53 Mô hình giao tiếp mạng . - Dịch vụ giao tiếp : - Bộ điều khiển ( tổng thể ) - Vào / ra - Bộ xử lý trung tâm - Cung cấp nguồn - Bộ nhớ - Hệ thống truyền thông 47
  48. - Kiểm tra thiết bị : Khối hàm STATUS và USTATUS hỗ trợ bộ điều khiển kiểm tra trạng thái các thiết bị khác - Thu thập dữ liệu : Dữ liệu qua các thiết bị khác có thể biểu diễn qua các biến, có 2 phƣơng pháp : hỏi tuần tự và lập trình - Điều khiển : có 2 phƣơng pháp là Điều khiển tham số và Điều khiển khoá liên động - Báo động : Bộ điều khiển sẽ gửi tới các clinet khi có sự cố, Clinet có thể thông báo lại đã xác nhận tới bộ điều khiển 48
  49. - Quản lý các mối liên kết : Các chƣơng trình ứng dụng trong bộ điều khiển sử dụng khối CONNECT để quản lý các mối liên kết. - OPC ( OLE for Process Control ) : - Tổng quan kiến trúc OPC H 1.54 Kiến trúc sơ lƣợc của OPC OPC đƣợc xây dựng trên cơ sở mô hình thành phần COM, nó định nghĩa thêm một số giao diện khai thác dữ liệu từ quá trình kỹ thuật, tạo cơ sở cho việc xây dựng các ứng dụng điều khiển phân tán mà không bị phụ thuộc vào mạng công nghiệp cụ thể 49
  50. CHƢƠNG 2. THIẾT KẾ HỆ THỐNG TRUYỀN THÔNG TRÊN NỀN VI ĐIỀU KHIỂN PIC A GIỚI THIỆU CHUNG VỀ VI ĐIỀU KHIỂN PIC 2.1. PIC LÀ GÌ? PIC là viết tắt của “Programable Intelligent Computer”, có thể tạm dịch là “máy tính thông minh khả trình” do hãng Genenral Instrument đặt tên cho vi điều khiển đầu tiên của họ: PIC1650 đƣợc thiết kế để dùng làm các thiết bị ngoại vi cho vi điều khiển CP1600. Vi điều khiển này sau đó đƣợc nghiên cứu phát triển thêm và từ đó hình thành nên dòng vi điều khiển PIC ngày nay. 2.2. TẠI SAO CHỌN PIC MÀ KHÔNG CHỌN CÁC VI ĐIỀU KHIỂN KHÁC Hiện nay trên thị trƣờng có rất nhiều họ vi điều khiển nhƣ 8051, Motorola 68HC, AVR, ARM, Ngoài họ 8051 đƣợc hƣớng dẫn một cách căn bản ở môi trƣờng đại học, chọn họ vi điều khiển PIC để mở rộng vốn kiến thức và phát triển các ứng dụng trên công cụ này vì các nguyên nhân sau: Họ vi điều khiển này có thể tìm mua dễ dàng tại thị trƣờng Việt Nam. Giá thành không quá đắt. Có đầy đủ các tính năng của một vi điều khiển khi hoạt động độc lập. Là một sự bổ sung rất tốt về kiến thức cũng nhƣ về ứng dụng cho họ vi điều khiển mang tính truyền thống: họ vi điều khiển 8051. Số lƣợng ngƣời sử dụng họ vi điều khiển PIC. Hiện nay tại Việt Nam cũng nhƣ trên thế giới, họ vi điều khiển này đƣợc sử dụng khá rộng rãi. Điều này tạo nhiều thuận lợi trong quá trình tìm hiểu và phát triển các ứng dụng nhƣ: số lƣợng tài liệu, số lƣợng các ứng dụng mở đã đƣợc phát triển thành công, dễ dàng trao đổi, học tập, dễ dàng tìm đƣợc sự chỉ dẫn khi gặp khó khăn, Sự hỗ trợ của nhà sản xuất về trình biên dịch, các công cụ lập trình, nạp chƣơng trình từ đơn giản đến phức tạp, Các tính năng đa dạng của vi điều khiển PIC, và các tính năng này không ngừng đƣợc phát triển. 50
  51. 2.3. KIẾN TRÚC PIC Cấu trúc phần cứng của một vi điều khiển đƣợc thiết kế theo hai dạng kiến trúc: kiến trúc Von Neuman và kiến trúc Havard. H 2.1 Kiến trúc Havard và kiến trúc Von-Neuman Tổ chức phần cứng của PIC đƣợc thiết kế theo kiến trúc Havard. Điểm khác biệt giữa kiến trúc Havard và kiến trúc Von-Neuman là cấu trúc bộ nhớ dữ liệu và bộ nhớ chƣơng trình. Đối với kiến trúc Von-Neuman, bộ nhớ dữ liệu và bộ nhớ chƣơng trình nằm chung trong một bộ nhớ, do đó ta có thể tổ chức, cân đối một cách linh hoạt bộ nhớ chƣơng trình và bộ nhớ dữ liệu. Tuy nhiên điều này chỉ có ý nghĩa khi tốc độ xử lí của CPU phải rất cao, vì với cấu trúc đó, trong cùng một thời điểm CPU chỉ có thể tƣơng tác với bộ nhớ dữ liệu hoặc bộ nhớ chƣơng trình. Nhƣ vậy có thể nói kiến trúc Von-Neuman không thích hợp với cấu trúc của một vi điều khiển. Đối với kiến trúc Havard, bộ nhớ dữ liệu và bộ nhớ chƣơng trình tách ra thành hai bộ nhớ riêng biệt. Do đó trong cùng một thời điểm CPU có thể tƣơng tác với cả hai bộ nhớ, nhƣ vậy tốc độ xử lí của vi điều khiển đƣợc cải thiện đáng kể. Một điểm cần chú ý nữa là tập lệnh trong kiến trúc Havard có thể đƣợc tối ƣu tùy theo yêu cầu kiến trúc của vi điều khiển mà không phụ thuộc vào cấu trúc dữ liệu. Ví dụ, đối với vi điều khiển dòng 16F, độ dài lệnh luôn là 14 bit (trong khi dữ liệu đƣợc tổ chức thành từng byte), còn đối với kiến trúc Von-Neuman, độ dài lệnh luôn là bội số của 1 byte (do dữ liệu đƣợc tổ chức thành từng byte). 51
  52. 2.4. RISC và CISC Nhƣ đã trình bày ở trên, kiến trúc Havard là khái niệm mới hơn so với kiến trúc Von-Neuman. Khái niệm này đƣợc hình thành nhằm cải tiến tốc độ thực thi của một vi điều khiển. Qua việc tách rời bộ nhớ chƣơng trình và bộ nhớ dữ liệu, bus chƣơng trình và bus dữ liệu, CPU có thể cùng một lúc truy xuất cả bộ nhớ chƣơng trình và bộ nhớ dữ liệu, giúp tăng tốc độ xử lí của vi điều khiển lên gấp đôi. Đồng thời cấu trúc lệnh không còn phụ thuộc vào cấu trúc dữ liệu nữa mà có thể linh động điều chỉnh tùy theokhả năng và tốc độ của từng vi điều khiển. Và để tiếp tục cải tiến tốc độ thực thi lệnh, tập lệnh của họ vi điều khiển PIC đƣợc thiết kế sao cho chiều dài mã lệnh luôn cố định (ví dụ đối với họ 16Fxxxx chiều dài mã lệnh luôn là 14 bit) và cho phép thực thi lệnh trong một chu kì của xung clock ( ngoại trừ một số trƣờng hợp đặc biệt nhƣ lệnh nhảy, lệnh gọi chƣơng trình con cần hai chu kì xung đồng hồ). Điều này có nghĩa tập lệnh của vi điều khiển thuộc cấu trúc Havard sẽ ít lệnh hơn, ngắn hơn, đơn giản hơn để đáp ứng yêu cầu mã hóa lệnh bằng một số lƣợng bit nhất định. Vi điều khiển đƣợc tổ chức theo kiến trúc Havard còn đƣợc gọi là vi điều khiển RISC (Reduced Instruction Set Computer) hay vi điều khiển có tập lệnh rút gọn. Vi điều khiển đƣợc thiết kế theo kiến trúc Von-Neuman còn đƣợc gọi là vi điều khiển CISC (ComplexInstruction Set Computer) hay vi điều khiển có tập lệnh phức tạp vì mã lệnh của nó không phải là một số cố định mà luôn là bội số của 8 bit (1 byte). 2.5. PIPELINING Đây chính là cơ chế xử lí lệnh của các vi điều khiển PIC. Một chu kì lệnh của vi điều khiển sẽ bao gồm 4 xung clock. Ví dụ ta sử dụng oscillator có tần số 4 MHZ, thì xung lệnh sẽ có tần số 1 MHz (chu kì lệnh sẽ là 1 us). Giả sử ta có một đoạn chƣơng trình nhƣ sau: 1. MOVLW 55h 2. MOVWF PORTB 52
  53. 3. CALL SUB_1 4. BSF PORTA,BIT3 5. instruction @ address SUB_1 Ở đây ta chỉ bàn đến qui trình vi điều khiển xử lí đoạn chƣơng trình trên thông qua từng chu kì lệnh. Quá trình trên sẽ đƣợc thực thi nhƣ sau: Hình 2.2: Cơ chế pipelining TCY0: đọc lệnh 1 TCY1: thực thi lệnh 1, đọc lệnh 2 TCY2: thực thi lệnh 2, đọc lệnh 3 TCY3: thực thi lệnh 3, đọc lệnh 4. TCY4: vì lệnh 4 không phải là lệnh sẽ đƣợc thực thi theo qui trình thực thi của chƣơng trình (lệnh tiếp theo đƣợc thực thi phải là lệnh đầu tiên tại label SUB_1) nên chu kì thực thi lệnh này chỉ đƣợc dùng để đọc lệnh đầu tiên tại label SUB_1. Nhƣ vậy có thể xem lênh 3 cần 2 chu kì xung clock để thực thi. TCY5: thực thi lệnh đầu tiên của SUB_1 và đọc lệnh tiếp theo của SUB_1. Quá trình này đƣợc thực hiện tƣơng tự cho các lệnh tiếp theo của chƣơng trình. Thông thƣờng, để thực thi một lệnh, ta cần một chu kì lệnh để gọi lệnh đó, và một chu kì xung clock nữa để giải mã và thực thi lệnh. Với cơ chế pipelining đƣợc trình bày ở trên, mỗi lệnh xem nhƣ chỉ đƣợc thực thi trong một chu kì 53
  54. lệnh. Đối với các lệnh mà quá trình thực thi nó làm thay đổi giá trị thanh ghi PC (Program Counter) cần hai chu kì lệnh để thực thi vì phải thực hiện việc gọi lệnh ở địa chỉ thanh ghi PC chỉ tới. Sau khi đã xác định đúng vị trí lệnh trong thanh ghi PC, mỗi lệnh chỉ cần một chu kì lệnh để thực thi xong. 2.6. CÁC DÒNG PIC VÀ CÁCH LỰA CHỌN VI ĐIỀU KHIỂN PIC Các kí hiệu của vi điều khiển PIC: PIC12xxxx: độ dài lệnh 12 bit PIC16xxxx: độ dài lệnh 14 bit PIC18xxxx: độ dài lệnh 16 bit C: PIC có bộ nhớ EPROM (chỉ có 16C84 là EEPROM) F: PIC có bộ nhớ flash LF: PIC có bộ nhớ flash hoạt động ở điện áp thấp LV: tƣơng tự nhƣ LF, đây là kí hiệu cũ Bên cạnh đó một số vi điệu khiển có kí hiệu xxFxxx là EEPROM, nếu có thêm chữ A ở cuối là flash (ví dụ PIC16F877 là EEPROM, còn PIC16F877A là flash). Ngoài ra còn có thêm một dòng vi điều khiển PIC mới là dsPIC. Ở Việt Nam phổ biến nhất là các họ vi điều khiển PIC do hãng Microchip sản xuất. Cách lựa chọn một vi điều khiển PIC phù hợp: Trƣớc hết cần chú ý đến số chân của vi điều khiển cần thiết cho ứng dụng. Có nhiều vi điều khiển PIC với số lƣợng chân khác nhau, thậm chí có vi điều khiển chỉ có 8 chân, ngoài ra còn có các vi điều khiển 28, 40, 44, chân. Cần chọn vi điều khiển PIC có bộ nhớ flash để có thể nạp xóa chƣơng trình đƣợc nhiều lần hơn. Tiếp theo cần chú ý đến các khối chức năng đƣợc tích hợp sẵn trong vi điều khiển, các chuẩn giao tiếp bên trong. Sau cùng cần chú ý đến bộ nhớ chƣơng trình mà vi điều khiển cho phép. Ngoài ra mọi thông tin về cách lựa chọn vi điều khiển PIC có thể đƣợc tìm thấy trong cuốn sách “Select PIC guide” do nhà sản xuất Microchip cung cấp. 54
  55. 2.7. NGÔN NGỮ LẬP TRÌNH CHO PIC Ngôn ngữ lập trình cho PIC rất đa dạng. Ngôn ngữ lập trình cấp thấp có MPLAB (đƣợc cung cấp miễn phí bởi nhà sản xuất Microchip), các ngôn ngữ lập trình cấp cao hơn bao gồm C, Basic, Pascal, Ngoài ra còn có một số ngôn ngữ lập trình đƣợc phát triển dành riêng cho PIC nhƣ PICBasic, MikroBasic, 2.8. MẠCH NẠP PIC Đây cũng là một dòng sản phẩm rất đa dạng dành cho vi điều khiển PIC. Có thể sử dụng các mạch nạp đƣợc cung cấp bởi nhà sản xuất là hãng Microchip nhƣ: PICSTART plus, MPLAB ICD 2, MPLAB PM 3, PRO MATE II. Có thể dùng các sản phẩm này để nạp cho vi điều khiển khác thông qua chƣơng trình MPLAB. Dòng sản phẩm chính thống này có ƣu thế là nạp đƣợc cho tất cả các vi điều khiển PIC, tuy nhiên giá thành rất cao và thƣờng gặp rất nhiều khó khăn trong quá trình mua sản phẩm. Ngoài ra do tính năng cho phép nhiều chế độ nạp khác nhau, còn có rất nhiều mạch nạp đƣợc thiết kế dành cho vi điều khiển PIC. Có thể sơ lƣợc một số mạch nạp cho PIC nhƣ sau: JDM programmer: mạch nạp này dùng chƣơng trình nạp Icprog cho phép nạp các vi điều khiển PIC có hỗ trợ tính năng nạp chƣơng trình điện áp thấp ICSP (In Circuit SerialProgramming). Hầu hết các mạch nạp đều hỗ trợ tính năng nạp chƣơng trình này.WARP-13A và MCP-USB: hai mạch nạp này giống với mạch nạp PICSTART PLUS do nhà sản xuất Microchip cung cấp, tƣơng thích với trình biên dịch MPLAB, nghĩa là ta có thể trực tiếp dùng chƣơng trình MPLAB để nạp cho vi điều khiển PIC mà không cần sử dụng một chƣơng trình nạp khác, chẳng hạn nhƣ ICprog.P16PRO40: mạch nạp này do Nigel thiết kế và cũng khá nổi tiếng. Ông còn thiết kế cả chƣơngtrình nạp, tuy nhiên ta cũng có thể sử dụng chƣơng trình nạp Icprog. Mạch nạp Universal của Williem: đây không phải là mạch nạp chuyên dụng dành cho PIC nhƣ P16PRO40. 55
  56. Các mạch nạp kể trên có ƣu điểm rất lớn là đơn giản, rẻ tiền, hoàn toàn có thể tự lắp ráp một cách dễ dàng, và mọi thông tin về sơ đồ mạch nạp, cách thiết kế, thi công, kiểm tra và chƣơng trình nạp đều dễ dàng tìm đƣợc và download miễn phí thông qua mạng Internet. Tuy nhiên các mạch nạp trên có nhƣợc điểm là hạn chế về số vi điều khiển đƣợc hỗ trợ, bên cạnh đó mỗi mạch nạp cần đƣợc sử dụng với một chƣơng trình nạp thích hợp. 56
  57. B VI ĐIỀU KHIỂN PIC 16F877A 2.9. SƠ ĐỒ CHÂN VI ĐIỀU KHIỂN PIC16F877A H 2.3 Các dạng sơ đồ chân 57
  58. 2.10. MỘT VÀI THÔNG SỐ VI ĐIỀU KHIỂN PIC 16F877A Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit. Mỗi lệnh đều đƣợc thực thi trong một chu kì xung clock. Tốc độ hoạt động tối đa cho phép là 20 MHz với một chu kì lệnh là 200ns. Bộ nhớ chƣơng trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ nhớ dữ liệu EEPROM với dung lƣợng 256x8 byte. Số PORT I/O là 5 với 33 pin I/O. Các đặc tính ngoại vi bao gồmcác khối chức năng sau: Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit. Timer1: bộ đếm 16 bit với bộ chia tần số, có thể thực hiện chức năng đếm dựa vào xung clock ngoại vi ngay khi vi điều khiển hoạt động ở chế độ sleep. Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler. Hai bộ Capture/so sánh/điều chế độ rông xung. Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C. Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ. Cổng giao tiếp song song PSP (Parallel Slave Port) với các chân điều khiển RD, WR, CS ở bên ngoài.Các đặc tính Analog: 8 kênh chuyển đổi ADC 10 bit. Hai bộ so sánh. Bên cạnh đó là một vài đặc tính khác của vi điều khiển nhƣ: Bộ nhớ flash với khả năng ghi xóa đƣợc 100.000 lần. Bộ nhớ EEPROM với khả năng ghi xóa đƣợc 1.000.000 lần. 58
  59. Dữ liệu bộ nhớ EEPROM có thể lƣu trữ trên 40 năm. Khả năng tự nạp chƣơng trình với sự điều khiển của phần mềm. Nạp đƣợc chƣơng trình ngay trên mạch điện ICSP (In Circuit Serial Programming) thông qua 2 chân. Watchdog Timer với bộ dao động trong. Chức năng bảo mật mã chƣơng trình. Chế độ Sleep. Có thể hoạt động với nhiều dạng Oscillator khác nhau. 59
  60. 2.11. SƠ ĐỒ KHỐI VI ĐIỀU KHIỂN PIC 16F877A H 2.4. Sơ đồ khối vi điều khiển PIC16F877A. 60
  61. 2.12. TỔ CHỨC BỘ NHỚ Cấu trúc bộ nhớ của vi điều khiển PIC16F877A bao gồm bộ nhớ chƣơng trình (Program memory) và bộ nhớ dữ liệu (Data Memory). 2.12.1 Bộ nhớ chƣơng trình Bộ nhớ chƣơng trình của vi điều khiển PIC16F877A là bộ nhớ flash, dung lƣợng bộ nhớ 8K word (1 word = 14 bit) và đƣợc phân thành nhiều trang (từ page0 đến page 3) . Nhƣ vậy bộ nhớ chƣơng trình có khả năng chứa đƣợc 8*1024 = 8192 lệnh (vì một lệnh sau khi mã hóa sẽ có dung lƣợng 1 word (14 bit).Để mã hóa đƣợc địa chỉ của 8K word bộ nhớ chƣơng trình, bộ đếm chƣơng trình có dung lƣợng 13 bit (PC ). Khi vi điều khiển đƣợc reset, bộ đếm chƣơng trình sẽ chỉ đến địa chỉ 0000h (Reset vector). Hình 2.5 Bộ nhớ chƣơng trình Khi có ngắt xảy ra, bộ đếm chƣơng trình sẽ chỉ đến địa chỉ 0004h (Interrupt vector).Bộ nhớ chƣơng trình không bao gồm bộ nhớ stack và không đƣợc địa chỉ hóa bởi bộ đếm chƣơng trình. Bộ nhớ stack sẽ đƣợc đề cập cụ thể trong phần sau. 2.12.2 Bộ nhớ dữ liệu Bộ nhớ dữ liệu của PIC là bộ nhớ EEPROM đƣợc chia ra làm nhiều bank. Đối với PIC16F877A bộ nhớ dữ liệu đƣợc chia ra làm 4 bank. Mỗi bank có dung 61
  62. lƣợng 128 byte, bao gồm các thanh ghi có chức năng đặc biệt SFG (Special Function Register) nằm ở các vùng địa chỉ thấp và các thanh ghi mục đích chung GPR (General Purpose Register) nằm ở vùng địa chỉ còn lại trong bank. Các thanh ghi SFR thƣờng xuyên đƣợc sử dụng (ví dụ nhƣ thanh ghi STATUS) sẽ đƣợc đặt ở tất cà các bank của bộ nhớ dữ liệu giúp thuận tiện trong quá trình truy xuất và làm giảm bớt lệnh của chƣơng trình. Sơ đồ cụ thể của bộ nhớ dữ liệu PIC16F877A nhƣ sau: 62
  63. H 2.6 Bộ nhớ dữ liệu 63
  64. 2.12.2.1 Thanh ghi chức năng đặc biệt SFR Đây là các thanh ghi đƣợc sử dụng bởi CPU hoặc đƣợc dùng để thiết lập và điều khiển các khối chức năng đƣợc tích hợp bên trong vi điều khiển. Có thể phân thanh ghi SFR làm hai lọai: thanh ghi SFR liên quan đến các chức năng bên trong (CPU) và thanh ghi SRF dùng để thiết lập và điều khiển các khối chức năng bên ngoài (ví dụ nhƣ ADC, PWM, ). Phần này sẽ đề cập đến các thanh ghi liên quan đến các chức năng bên trong. Các thanh ghi dùng để thiết lập và điều khiển các khối chức năng sẽ đƣợc nhắc đến khi ta đề cập đến các khối chức năng đó Thanh ghi STATUS (03h, 83h, 103h, 183h):thanh ghi chứa kết quả thực hiện phép toán của khối ALU, trạng thái reset và các bit chọn bank cần truy xuất trong bộ nhớ dữ liệu. Thanh ghi OPTION_REG (81h, 181h): thanh ghi này cho phép đọc và ghi, cho phép điều khiển chức năng pull-up của các chân trong PORTB, xác lập các tham số về xung tác động, cạnh tác động của ngắt ngoại vi và bộ đếm Timer0. Thanh ghi INTCON (0Bh, 8Bh,10Bh, 18Bh):thanh ghi cho phép đọc và ghi, chứa các bit điều khiển và các bit cờ hiệu khi timer0 bị tràn, ngắt ngoại vi RB0/INT và ngắt interrput- on-change tại các chân của PORTB. 64
  65. Thanh ghi PIE1 (8Ch): chứa các bit điều khiển chi tiết các ngắt của các khối chức năng ngoại vi. Thanh ghi PIR1 (0Ch) chứa cờ ngắt của các khối chức năng ngoại vi, các ngắt này đƣợc cho phép bởi các bit điều khiển chứa trong thanh ghi PIE1. Thanh ghi PIE2 (8Dh): chứa các bit điều khiển các ngắt của các khối chức năng CCP2, SSP bus, ngắt của bộ so sánh và ngắt ghi vào bộ nhớ EEPROM. Thanh ghi PIR2 (0Dh): chứa các cờ ngắt của các khối chức năng ngoại vi, các ngắt này đƣợc cho phép bởi các bit điều khiển chứa trong thanh ghi PIE2. Thanh ghi PCON (8Eh): chứa các cờ hiệu cho biết trạng thái các chế độ reset của vi điều khiển. 2.12.2.2 Thanh ghi mục đích chung GPR Các thanh ghi này có thể đƣợc truy xuất trực tiếp hoặc gián tiếp thông qua thanh ghiFSG (File Select Register). Đây là các thanh ghi dữ liệu thông thƣờng, ngƣời sử dụng có thể tùy theo mục đích chƣơng trình mà có thể dùng các thanh ghi này để chứa các biến số, hằng số, kết quả hoặc các tham số phục vụ cho chƣơng trình. 65
  66. 2.12.3 STACK Stack không nằm trong bộ nhớ chƣơng trình hay bộ nhớ dữ liệu mà là một vùng nhớ đặc biệt không cho phép đọc hay ghi. Khi lệnh CALL đƣợc thực hiện hay khi một ngắt xảy ra làm chƣơng trình bị rẽ nhánh, giá trị của bộ đếm chƣơng trình PC tự động đƣợc vi điều khiển cất vào trong stack. Khi một trong các lệnh RETURN, RETLW hat RETFIE đƣợc thực thi, giá trị PC sẽ tự động đƣợc lấy ra từ trong stack, vi điều khiển sẽ thực hiện tiếp chƣơng trình theo đúng qui trình định trƣớc. Bộ nhớ Stack trong vi điều khiển PIC họ 16F87xA có khả năng chứa đƣợc 8 địa chỉ và hoạt động theo cơ chế xoay vòng. Nghĩa là giá trị cất vào bộ nhớ Stack lần thứ 9 sẽ ghi đè lên giá trị cất vào Stack lần đầu tiên và giá trị cất vào bộ nhớ Stack lần thứ 10 sẽ ghi đè lên giá tri6 cất vào Stack lần thứ 2. Cần chú ý là không có cờ hiệu nào cho biết trạng thái stack, do đó ta không biết đƣợc khi nào stack tràn. Bên cạnh đó tập lệnh của vi điều khiển dòng PIC cũng không có lệnh POP hay PUSH, các thao tác với bộ nhớ stack sẽ hoàn toàn đƣợc điều khiển bởi CPU. 2.13. CÁC CỔNG XUẤT NHẬP CỦA PIC 16F877A Cổng xuất nhập (I/O port) chính là phƣơng tiện mà vi điều khiển dùng để tƣơng tác với thế giới bên ngoài. Sự tƣơng tác này rất đa dạng và thông qua quá trình tƣơng tác đó, chức năng của vi điều khiển đƣợc thể hiện một cách rõ ràng. Một cổng xuất nhập của vi điều khiển bao gồm nhiều chân (I/O pin), tùy theo cách bố trí và chức năng của vi điều khiển mà số lƣợng cổng xuất nhập và số lƣợng chân trong mỗi cổng có thể khác nhau. Bên cạnh đó, do vi điều khiển đƣợc tích hợp sẵn bên trong các đặc tính giao tiếp ngoại vi nên bên cạnh chức năng là cổng xuất nhập thông thƣờng, một số chân xuất nhập còn có thêm các chức năng khác để thể hiện sự tác động của các đặc tính ngoại vi nêu trên đối với thế giới bên ngoài. Chức năng của từng chân xuất nhập trong 66
  67. mỗi cổng hoàn toàn có thể đƣợc xác lập và điều khiển đƣợc thông qua các thanh ghi SFR liên quan đến chân xuất nhập đó. Vi điều khiển PIC16F877A có 5 cổng xuất nhập, bao gồm PORTA, PORTB, PORTC, PORTD và PORTE. Cấu trúc và chức năng của từng cổng xuất nhập sẽ đƣợc đề cập cụ thể trong phần sau. 2.13.1 Port A PORTA (RPA) bao gồm 6 I/O pin. Đây là các chân “hai chiều” (bidirectional pin),nghĩa là có thể xuất và nhập đƣợc. Chức năng I/O này đƣợc điều khiển bởi thanh ghi TRISA (địa chỉ 85h). Muốn xác lập chức năng của một chân trong PORTA là input, ta “set” bit điều khiển tƣơng ứng với chân đó trong thanh ghi TRISA và ngƣợc lại, muốn xác lập chức năng của một chân trong PORTA là output, ta “clear” bit điều khiển tƣơng ứng với chân đó trong thanh ghi TRISA. Thao tác này hoàn toàn tƣơng tự đối với các PORT và các thanh ghi điều khiển tƣơng ứng TRIS (đối với PORTA là TRISA, đối với PORTB là TRISB, đối với PORTC là TRISC, đối với PORTD là TRISD và đối với PORTE là TRISE). Bên cạnh đó PORTA còn là ngõ ra của bộ ADC, bộ so sánh, ngõ vào analog ngõ vào xung clock của Timer0 và ngõ vào của bộ giao tiếp MSSP (Master Synchronous Serial Port). Đặc tính này sẽ đƣợc trình bày cụ thể trong phần sau.Các thanh ghi SFR liên quan đến PORTA bao gồm: PORTA (địa chỉ 05h) : chứa giá trị các pin trong PORTA. TRISA (địa chỉ 85h) : điều khiển xuất nhập. CMCON (địa chỉ 9Ch) : thanh ghi điều khiển bộ so sánh. CVRCON (địa chỉ 9Dh) : thanh ghi điều khiển bộ so sánh điện áp. ADCON1 (địa chỉ 9Fh) : thanh ghi điều khiển bộ 2.13.2 Port B PORTB (RPB) gồm 8 pin I/O. Thanh ghi điều khiển xuất nhập tƣơng ứng là TRISB. 67
  68. Bên cạnh đó một số chân của PORTB còn đƣợc sử dụng trong quá trình nạp chƣơng trình cho vi điều khiển với các chế độ nạp khác nhau. PORTB còn liên quan đến ngắt ngoại vi và bộ Timer0. PORTB còn đƣợc tích hợp chức năng điện trở kéo lên đƣợc điều khiển bởi chƣơng trình. Các thanh ghi SFR liên quan đến PORTB bao gồm: PORTB (địa chỉ 06h,106h) : chứa giá trị các pin trong PORTB TRISB (địa chỉ 86h,186h) : điều khiển xuất nhập OPTION_REG (địa chỉ 81h,181h) : điều khiển ngắt ngoại vi và bộ Timer0 2.13.3 Port C PORTC (RPC) gồm 8 pin I/O. Thanh ghi điều khiển xuất nhập tƣơng ứng là TRISC. Bên cạnh đó PORTC còn chứa các chân chức năng của bộ so sánh, bộ Timer1, bộ PWM và các chuẩn giao tiếp nối tiếp I2C, SPI, SSP, USART. Các thanh ghi điều khiển liên quan đến PORTC: PORTC (địa chỉ 07h) : chứa giá trị các pin trong PORTC TRISC (địa chỉ 87h) : điều khiển xuất nhập. 2.13.4 Port D PORTD (RPD) gồm 8 chân I/O, thanh ghi điều khiển xuất nhập tƣơng ứng là TRISD. PORTD còn là cổng xuất dữ liệu của chuẩn giao tiếp PSP (Parallel Slave Port). Các thanh ghi liên quan đến PORTD bao gồm: Thanh ghi PORTD : chứa giá trị các pin trong PORTD. Thanh ghi TRISD : điều khiển xuất nhập. Thanh ghi TRISE : điều khiển xuất nhập PORTE và chuẩn giao tiếp PSP. 2.13.4 Port E PORTE (RPE) gồm 3 chân I/O. Thanh ghi điều khiển xuất nhập tƣơng ứng là TRISE. 68
  69. Các chân của PORTE có ngõ vào analog. Bên cạnh đó PORTE còn là các chân điều khiển của chuẩn giao tiếp PSP. Các thanh ghi liên quan đến PORTE bao gồm: PORTE : chứa giá trị các chân trong PORTE. TRISE : điều khiển xuất nhập và xác lập các thông số cho chuẩn giao tiếp PSP. ADCON1 : thanh ghi điều khiển khối ADC 2.14. TIMER 0 Đây là một trong ba bộ đếm hoặc bộ định thời của vi điều khiển PIC16F877A. Timer0 là bộ đếm 8 bit đƣợc kết nối với bộ chia tần số (prescaler) 8 bit. Cấu trúc của Timer0 cho phép ta lựa chọn xung clock tác động và cạnh tích cực của xung clock. Ngắt Timer0 sẽ xuất hiện khi Timer0 bị tràn. Bit TMR0IE (INTCON ) là bit điều khiển của Timer0. TMR0IE=1 cho phép ngắt Timer0 tác động, TMR0IF= 0 không cho phép ngắt Timer0 tác động. Sơ đồ khối của Timer0 nhƣ sau H 2.7 Sơ đồ khối của Timer0 69
  70. Các bit PS2:PS0 (OPTION_REG ) xác định tỉ số chia tần số của prescaler. Xem lại thanh ghi OPTION_REG để xác định lại một cách chi tiết về các bit điều khiển trên. Các lệnh tác động lên giá trị thanh ghi TMR0 sẽ xóa chế độ hoạt động của prescaler. Khi đối tƣợng tác động là Timer0, tác động lên giá trị thanh ghi TMR0 sẽ xóa prescaler nhƣng không làm thay đổi đối tƣợng tác động của prescaler. Khi đối tƣợng tác động là WDT,lệnh CLRWDT sẽ xóa prescaler, đồng thời prescaler sẽ ngƣng tác vụ hỗ trợ cho WDT. Các thanh ghi điều khiển liên quan đến Timer0 bao gồm: TMR0 (địa chỉ 01h, 101h) : chứa giá trị đếm của Timer0. INTCON (địa chỉ 0Bh, 8Bh, 10Bh, 18Bh): cho phép ngắt hoạt động (GIE và PEIE). OPTION_REG (địa chỉ 81h, 181h): điều khiển prescaler. Muốn Timer0 hoạt động ở chế độ Timer ta clear bit TOSC (OPTION_REG ), khi đó giá trị thanh ghi TMR0 sẽ tăng theo từng chu kì xung đồng hồ (tần số vào Timer0 bằng ¼ tần số oscillator). Khi giá trị thanh ghi TMR0 từ FFh trở về 00h, ngắt Timer0 sẽ xuất hiện. Thanh ghi TMR0 cho phép ghi và xóa đƣợc giúp ta ấn định thời điểm ngắt Timer0 xuất hiện một cách linh động. Muốn Timer0 hoạt động ở chế độ counter ta set bit TOSC (OPTION_REG ). Khi đó xung tác động lên bộ đếm đƣợc lấy từ chân RA4/TOCK1. Bit(OPTION_REG ) cho phép lựa chọn cạnh tác động vào bột đếm. Cạnh tác động sẽ là cạnh lên nếu TOSE=0 và cạnh tác động sẽ là cạnh xuống nếu TOSE=1. Khi thanh ghi TMR0 bị tràn, bit TMR0IF (INTCON ) sẽ đƣợc set. Đây chính là cờ ngắt của Timer0. Cờ ngắt này phải đƣợc xóa bằng chƣơng trình trƣớc khi bộ đếm bắt đầu thực hiện lại quá trình đếm. Ngắt Timer0 không thể “đánh thức” vi điều khiển từ chế độ sleep. Bộ chia tần số (prescaler) đƣợc chia sẻ giữa Timer0 và WDT (Watchdog Timer). Điều đó có 70
  71. nghĩa là nếu prescaler đƣợc sử dụng cho Timer0 thì WDT sẽ không có đƣợc hỗ trợ của prescaler và ngƣợc lại. Prescaler đƣợc điều khiển bởi thanh ghi OPTION_REG. Bit PSA (OPTION_REG ) xác định đối tƣợng tác động của prescaler. 2.15 TIMER 1 Timer1 là bộ định thời 16 bit, giá trị của Timer1 sẽ đƣợc lƣu trong hai thanh ghi (TMR1H:TMR1L). Cờ ngắt của Timer1 là bit TMR1IF (PIR1 ). Bit điều khiển của Timer1 sẽ là TMR1IE (PIE ). Tƣơng tự nhƣ Timer0, Timer1 cũng có hai chế độ hoạt động: chế độ định thời (timer) với xung kích là xung clock của oscillator (tần số của timer bằng ¼ tần số của oscillator) và chế độ đếm (counter) với xung kích là xung phản ánh các sự kiện cần đếm lấy từ bên ngoài thông qua chân RC0/T1OSO/T1CKI (cạnh tác động là cạnh lên). Việc lựa chọn xung tác động (tƣơng ứng với việc lựa chọn chế độ hoạt động là timer hay counter) đƣợc điều khiển bởi bit TMR1CS (T1CON ). Sau đây là sơ đồ khối của Timer1: Ngoài ra Timer1 còn có chức năng reset input bên trong đƣợc điều khiển bởi một trong hai khối CCP (Capture/Compare/PWM).Khi bit T1OSCEN (T1CON ) đƣợc set, Timer1 sẽ lấy xung clock từ hai chân RC1/T1OSI/CCP2 và RC0/T1OSO/T1CKI làm xung đếm. Timer1 sẽ bắt đầu 71
  72. đếm sau cạnh xuống đầu tiên của xung ngõ vào. Khi đó PORTC sẽ bỏ qua sự tác động của hai bit TRISC và PORTC đƣợc gán giá trị 0. Khi clear bit T1OSCEN Timer1 sẽ lấy xung đếm từ oscillator hoặc từ chân RC0/T1OSO/T1CKI. Timer1 có hai chế độ đếm là đồng bộ (Synchronous) và bất đồng bộ (Asynchronous). Chế độ đếm đƣợc quyết định bởi bit điều khiển(T1CON ).Khi=1 xung đếm lấy từ bên ngoài sẽ không đƣợc đồng bộ hóa với xung clock bên trong, Timer1 sẽ tiếp tục quá trình đếm khi vi điều khiển đang ở chế độ sleep và ngắt doTimer1 tạo ra khi bị tràn có khả năng “đánh thức” vi điều khiển. Ở chế độ đếm bất đồng bộ, Timer1 không thể đƣợc sử dụng để làm nguồn xung clock cho khối CCP (Capture/Compare/Pulse width modulation).Khi=0 xung đếm vào Timer1 sẽ đƣợc đồng bộ hóa với xung clock bên trong. Ở chế độ này Timer1 sẽ không hoạt động khi vi điều khiển đang ở chế độ sleep.Các thanh ghi liên quan đến Timer1 bao gồm: INTCON (địa chỉ 0Bh, 8Bh, 10Bh, 18Bh): cho phép ngắt hoạt động (GIE và PEIE). PIR1 (địa chỉ 0Ch): chứa cờ ngắt Timer1 (TMR1IF). PIE1( địa chỉ 8Ch): cho phép ngắt Timer1 (TMR1IE). TMR1L (địa chỉ 0Eh): chứa giá trị 8 bit thấp của bộ đếm Timer1. TMR1H (địa chỉ 0Eh): chứa giá trị 8 bit cao của bộ đếm Timer1. T1CON (địa chỉ 10h): xác lập các thông số cho Timer1. 2.16. TIMER 2 Timer2 là bộ định thời 8 bit và đƣợc hỗ trợ bởi hai bộ chia tần số prescaler va postscaler. Thanh ghi chứa giá trị đếm của Timer2 là TMR2. Bit cho phép ngắt Timer2 tác động là TMR2ON (T2CON ). Cờ ngắt của Timer2 là bit TMR2IF (PIR1 ). Xung ngõ vào (tần số bằng ¼ tần số oscillator) đƣợc đƣa qua bộ chia tần số prescaler 4 bit (với các tỉ số chia tần 72
  73. số là 1:1, 1:4 hoặc 1:16 và đƣợc điều khiển bởi các bit T2CKPS1:T2CKPS0 (T2CON )). Hình 2.8 Sơ đồ khối Timer2. Timer2 còn đƣợc hỗ trợ bởi thanh ghi PR2. Giá trị đếm trong thanh ghi TMR2 sẽ tăng từ 00h đến giá trị chứa trong thanh ghi PR2, sau đó đƣợc reset về 00h. Kh I reset thanh ghi PR2 đƣợc nhận giá trị mặc định FFh. Ngõ ra của Timer2 đƣợc đƣa qua bộ chia tần số postscaler với các mức chia từ 1:1 đến 1:16. Postscaler đƣợc điều khiển bởi 4 bit T2OUTPS3:T2OUTPS0. Ngõ ra của postscaler đóng vai trò quyết định trong việc điều khiển cờ ngắt. Ngoài ra ngõ ra của Timer2 còn đƣợc kết nối với khối SSP, do đó Timer2 còn đóng vai trò tạo ra xung clock đồng bộ cho khối giao tiếp SSP. Các thanh ghi liên quan đến Timer2 bao gồm: INTCON (địa chỉ 0Bh, 8Bh, 10Bh, 18Bh): cho phép toàn bộ các ngắt (GIE và PEIE). PIR1 (địa chỉ 0Ch): chứa cờ ngắt Timer2 (TMR2IF). PIE1 (địa chị 8Ch): chứa bit điều khiển Timer2 (TMR2IE). TMR2 (địa chỉ 11h): chứa giá trị đếm của Timer2. T2CON (địa chỉ 12h): xác lập các thông số cho Timer2.PR2 (địa chỉ 92h): thanh ghi hỗ trợ cho Timer2. 73
  74. Ta có một vài nhận xét về Timer0, Timer1 và Timer2 nhƣ sau: Timer0 và Timer2 là bộ đếm 8 bit (giá trị đếm tối đa là FFh), trong khi Timer1 là bộ đếm 16 bit (giá trị đếm tối đa là FFFFh). Timer0, Timer1 và Timer2 đều có hai chế độ hoạt động là timer và counter. Xung clock có tần số bằng ¼ tần số của oscillator. Xung tác động lên Timer0 đƣợc hỗ trợ bởi prescaler và có thể đƣợc thiết lập ở nhiều chế độ khác nhau (tần số tác động, cạnh tác động) trong khi các thông số của xung tác động lên Timer1 là cố định. Timer2 đƣợc hỗ trợ bởi hai bộ chia tần số prescaler và postcaler độc lập, tuy nhiên cạnh tác động vẫn đƣợc cố định là cạnh lên. Timer1 có quan hệ với khối CCP, trong khi Timer2 đƣợc kết nối với khối SSP. Một vài so sánh sẽ giúp ta dễ dàng lựa chọn đƣợc Timer thích hợp cho ứng dụng 74
  75. CHƢƠNG 3 : THIẾT KẾ SƠ ĐỒ MẠCH PHẦN CỨNG, MẠCH IN MẠCH NGUYÊN LÝ, SƠ ĐỒ KHỐI ,NGUYÊN LÝ HOẠT ĐỘNG. Sau khi đi sâu vào nghiên cứu về HỆ THỐNG MẠNG CÔNG NGHIỆP cũng nhƣ nghiên cứu về vi điều khiển PIC 16F877A là phần tử quan trọng trong quá trình lập trình và một số linh kiện để xây dụng mạch em đã sử dụng phần mềm ORCARD( v10.0) để vẽ và thiết kế sơ đồ mạch in, sơ đồ mạch nguyên lý cho mô hình nguyên cứu. A: GIỚI THIỆU CÁC PHẦN TỬ TRONG MẠCH 3.1. VI ĐIỀU KHIỂN PIC 16F877A 75
  76. - Sơ đồ chân 76
  77. - Sơ đồ khối 77
  78. - Một vài thông số Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit.Mỗi lệnh đều đƣợc thực thi trong một chu kì xung clock. Tốc độ hoạt động tối đa cho phép là 20 MHz với một chu kì lệnh là 200ns. Bộ nhớ chƣơng trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ nhớ dữ liệu EEPROM với dung lƣợng 256x8 byte. Số PORT I/O là 5 với 33 pin I/O. Các đặc tính ngoại vi bao gồmcác khối chức năng sau: Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit. Timer1: bộ đếm 16 bit với bộ chia tần số, có thể thực hiện chức năng đếm dựa vào xung clock ngoại vi ngay khi vi điều khiển hoạt động ở chế độ sleep. Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler. Hai bộ Capture/so sánh/điều chế độ rông xung. Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C. Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ. Cổng giao tiếp song song PSP (Parallel Slave Port) với các chân điều khiển RD, WR, CS ở bên ngoài.Các đặc tính Analog: 8 kênh chuyển đổi ADC 10 bit. Hai bộ so sánh. Bên cạnh đó là một vài đặc tính khác của vi điều khiển nhƣ: Bộ nhớ flash với khả năng ghi xóa đƣợc 100.000 lần. Bộ nhớ EEPROM với khả năng ghi xóa đƣợc 1.000.000 lần. Dữ liệu bộ nhớ EEPROM có thể lƣu trữ trên 40 năm. Khả năng tự nạp chƣơng trình với sự điều khiển của phần mềm. Nạp đƣợc chƣơng trình ngay trên mạch điện ICSP (In Circuit Serial Programming) thông qua 2 chân. Watchdog Timer với bộ dao động trong. Chức năng bảo mật mã chƣơng trình. 78
  79. Chế độ Sleep. Có thể hoạt động với nhiều dạng Oscillator khác nhau. 3.2. LED 7 THANH Led 7 thanh bao gồm nhiều loại led tích hợp bên trong các led đƣợc nối chung nhau 1 chân .Trong thực tế có 2 loại led 7 thanh là loại anot chung và loại katot chung. Trong chƣơng trình này sử dụng loại anot chung , các led sẽ có chung nhau chân nguồn (chân dƣơng) chân còn lại a,b,c,d,e,f,g của led nào đƣợc nối đất thì led đó sẽ sáng.Thay vì sử dụng loại led 7 thanh trên thị trƣờng đang sử dụng,ở đây em thiết kế led 7 thanh đƣợc tích hợp bởi nhiều led đơn trong đó.Điện áp đƣa vào anot chung là 12 VDC, Imax của led 7 thanh là khoảng 1,4A.Bảng logic nhƣ sau: a b c d e f G h 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 1 2 0 0 1 0 0 1 0 1 3 0 0 0 0 1 1 0 1 4 1 0 0 1 1 0 0 1 5 0 1 0 0 1 0 0 1 6 0 1 0 0 0 0 0 1 7 0 0 0 1 1 1 1 1 8 0 0 0 0 0 0 0 1 9 0 0 0 0 1 0 0 1 79
  80. 3.3. IC ĐỆM ULN 2003 APG - Sơ đồ chân và sơ đồ logic - Sơ đồ nguyên lý cấu tạo trong của ULN2003:(1cặp darlington) 80
  81. Đặc tính của ULN2003: • Dòng đầu ra :500 mA • Đầu ra điện áp cao: 50V • Thích hợp với nhiều kiểu logic • Ứng dụng điều khiển rơle Đầu vào đƣợc mở với điện áp là3.85V,dòng là 1.85mA;Đầu ra có thể đƣa 500mA xuống mass 3.4. LM 2576T - Sơ đồ chân - Sơ đồ nguyên lý 81
  82. - Thông số vào ra 3.5. TRANSISTOR A1015 - Sơ đồ chân - Thông số vào ra 82
  83. 3.6. TRANSISTOR QUANG PC817 - Sơ đồ chân - Thông số vào ra Ngoài ra còn một số linh kiện khác nhƣ: điện trở, điôt ,led, Rơle 12VDC , tụ điện, cầu chì và một số nút nhấn .do không có điều kiện cho phép nên em chỉ nêu ra một số linh kiện quan trọng. 83
  84. B: SƠ ĐỒ MẠCH IN VÀ MẠCH NGUYÊN LÝ V À LƯU ĐỒ THUẬT TOÁN 3.7. SƠ ĐỒ MẠCH IN 84
  85. 3.8. SƠ ĐỒ MẠCH NGUYÊN LÝ 85
  86. LƢU ĐỒ THUẬT TOÁN 86
  87. LƢU ĐỒ THUẬT TOÁN Start Khởi tạo các modul cần thiết: Timer, cổng truyền thông Đọc thông số từ cảm biến Truyền thông số NO Có nhận dữ liệu YES Đọc dữ liệu nhận Hiển thị dữ liệu NO Stop YES END 87
  88. KẾT LUẬN Sau thời gian nguyên cứu và đi vào thiết kế đề tài em đã hoàn thành mô hình nghiên cứu với lỗ lực tìm hiểu của bản thân và sự giúp đỡ nhiệt tình của giảng viên hƣớng dẫn Th.s Nguyễn Trọng Thắng . Đồ án bao gồm những phần sau : - Chƣơng 1 : Tổng quan về hệ thống thông tin công nghiệp, cơ sở kỹ thuật, bus tiêu biểu. - Chƣơng 2 : Thiết kế hệ thống truyền thông trên nền vi điều khiển PIC - Chƣơng 3 : Thiết kế sơ đồ mạch phần cứng: mạch in, mạch nguyên lý, sơ đồ khối. Trong quá trình nghiên cứu và thực hiện hoàn thành đồ án em đã gặp rất nhiều khó khăn về việc tìm tài liệu cũng nhƣ lựa chọn các linh kiện sao cho phù hợp. Phải tìm hiểu các phần mềm chuyên ngành nhƣ Ocard, Proteus Việc test thử mạch chạy sao cho đúng cũng mất nhiều thời gian Do thời gian nguyên cứu không nhiều cộng với vốn kiến thức tích luỹ trong quá trình học tập còn hạn chế nên đề tài em nguyên cứu chƣa đi sâu phân tích đƣợc các trƣờng hợp riêng cụ thể mà chỉ xét tổng quát những vấn đề quan trọng. Nếu có thời gian em sẽ đi sâu nghiên cứu cụ thể hơn để hoàn chỉnh đồ án. Cuối cùng em xin cảm ơn Th.s Nguyễn Trọng Thắng cùng các thầy cô bộ môn và các bạn đã giúp em hoàn thành đồ án của mình! 88
  89. TÀI LIỆU THAM KHẢO 1.Hoàng Minh Sơn ( 2001) - Mạng truyền thông công nghiệp- NXB Khoa học và kỹ thuât. 2. T.s Nguyễn Mạnh Giang – Các vi điều khiển PIC- NXB Khoa học và kỹ thuật 3. Ngô Diên Tập _ Lập trình ghép nối máy tính – NXB Khoa học và kỹ thuật 4. Nguyễn Kim Ánh- Nguyễn Mạnh Hà - Mạng truyền thông công nghiệp- Giáo trình và bài giảng . 89
  90. MỤC LỤC LỜI NÓI ĐẦU 1 CHƢƠNG 1: TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN CÔNG NGHIỆP,CƠ SỞ KỸ THUẬT, BUS TIÊU BIỂU 2 A: GIỚI THIỆU CHUNG. 2 1.1. GIỚI THIỆU CHUNG VỀ MẠNG TRUYỀN THÔNG CÔNG NGHIỆP 2 1.2. VAI TRÒ MẠNG TRUYỀN THÔNG CÔNG NGHIỆP 2 1.3. PHÂN LOẠI VÀ ĐẶC TRƢNG CÁC HỆ THỐNG MẠNG CÔNG NGHIỆP 3 B: CƠ SỞ KỸ THUẬT. 5 1.4. CÁC KHÁI NIỆM 5 1.4.1 Thông tin, dữ liệu, tín hiệu. 5 1.4.2 Truyền thông, truyền dữ liệu và truyền tín hiệu. 6 1.4.3 Tính năng thời gian thực 7 1.5. CHẾ ĐỘ TRUYỀN TẢI 8 1.5.1 Truyền bit song song và nối tiếp 9 1.5.2 Truyền đồng bộ và không đồng bộ 9 1.5.3 Truyền một chiều, hai chiều toàn phần và gián đoạn. 10 1.5.4 Truyền tải cơ sở, dải mang và truyền tải dải rộng. 10 1.6. CẤU TRÚC MẠNG - TOPOLOGY 11 1.6.1 Cấu trúc bus: 11 1.6.2 Cấu trúc mạch vòng( tích cực). 12 1.6.3 Cấu trúc hình sao. 14 1.6.4 Cấu trúc cây 15 1.7. KIẾN TRÚC GIAO THỨC 15 1.7.1 Dịch vụ truyền thông 15 1.7.2 Giao thức 16 1.7.3 Mô hình lớp 16 1.7.4 Kiến trúc giao thức OSI 17 1.7.5 Kiến trúc giao thức TCP/IP 17 1.8. TRUY NHẬP BUS 17 1.8.1 Master/ Slave 18 1.8.2 TDMA( Time Division Multiple Access) Phƣơng pháp đa truy nhập phân chia thời gian 19 1.8.3 Token Passing: 19 1.8.4 CSMA/CD ( Carier Sense Multiple Access with Collision Detection) 20
  91. 1.8.5 CSMA/CA ( Carier Sense Multiple Access with Collision Avoidance) 20 1.9. BẢO TOÀN DỮ LIỆU 21 1.10. MÃ HOÁ BIT 24 1.10.1 Các tiêu chuẩn mã hoá bit: 24 1.10.2 NRZ, RZ ( Phƣơng pháp điều chế biên độ xung) 25 1.11. CHUẨN TRUYỀN DẪN 26 1.11.1 Phƣơng thức truyền dẫn tín hiệu : 27 1.11.2 RS-232 28 1.11.3 RS-422 : 29 1.11.4 RS-485 : Bảng thông số quan trọng 30 1.12 MÔI TRƢỜNG TRUYỀN DẪN : 30 1.13. THIẾT BỊ LIÊN KẾT MẠNG 31 C CÁC HỆ THỐNG BUS TIÊU BIỂU: 31 1.14. PROFIBUS : 31 1.15. CAN ( Controller Area Network ) 34 1.16. DIVICENET 38 1.17. MODBUS 40 1.18. INTERBUS -S 42 1.19. AS-I ( Actuator Sensor Interface ) 44 D. CÁC THÀNH PHẦN HỆ THỐNG MẠNG . 47 CHƢƠNG 2. THIẾT KẾ HỆ THỐNG TRUYỀN THÔNG TRÊN NỀN VI ĐIỀU KHIỂN PIC 50 A GIỚI THIỆU CHUNG VỀ VI ĐIỀU KHIỂN PIC 50 2.1. PIC LÀ GÌ? 50 2.2. TẠI SAO CHỌN PIC MÀ KHÔNG CHỌN CÁC VI ĐIỀU KHIỂN KHÁC 50 2.3. KIẾN TRÚC PIC 51 2.4. RISC và CISC 52 2.5. PIPELINING 52 2.6. CÁC DÒNG PIC VÀ CÁCH LỰA CHỌN VI ĐIỀU KHIỂN PIC 54 2.7. NGÔN NGỮ LẬP TRÌNH CHO PIC 55 2.8. MẠCH NẠP PIC 55 B VI ĐIỀU KHIỂN PIC 16F877A 57 2.9. SƠ ĐỒ CHÂN VI ĐIỀU KHIỂN PIC16F877A 57 2.10. MỘT VÀI THÔNG SỐ VI ĐIỀU KHIỂN PIC 16F877A 58 2.12. TỔ CHỨC BỘ NHỚ 61
  92. 2.12.1 Bộ nhớ chƣơng trình 61 2.12.2 Bộ nhớ dữ liệu 61 2.12.3 STACK 66 2.13. CÁC CỔNG XUẤT NHẬP CỦA PIC 16F877A 66 2.13.1 Port A 67 2.13.2 Port B 67 2.13.3 Port C 68 2.13.4 Port D 68 2.13.4 Port E 68 2.14. TIMER 0 69 2.15 TIMER 1 71 2.16. TIMER 2 72 CHƢƠNG 3 : THIẾT KẾ SƠ ĐỒ MẠCH PHẦN CỨNG, MẠCH IN MẠCH NGUYÊN LÝ, SƠ ĐỒ KHỐI ,NGUYÊN LÝ HOẠT ĐỘNG. 75 A: GIỚI THIỆU CÁC PHẦN TỬ TRONG MẠCH 75 3.1. VI ĐIỀU KHIỂN PIC 16F877A 75 3.2. LED 7 THANH 79 3.3. IC ĐỆM ULN 2003 APG 80 3.4. LM 2576T 81 3.5. TRANSISTOR A1015 82 3.6. TRANSISTOR QUANG PC817 83 B: SƠ ĐỒ MẠCH IN VÀ MẠCH NGUYÊN LÝ V À LƯU ĐỒ THUẬT TOÁN 84 3.7. SƠ ĐỒ MẠCH IN 84 3.8. SƠ ĐỒ MẠCH NGUYÊN LÝ 85 KẾT LUẬN 88 TÀI LIỆU THAM KHẢO 89