Tài liệu Tổng quan về daq (data acquisition and control)

Tài liệu: TỔNG QUAN VỀ DAQ (DATA ACQUISITION AND CONTROL) Tài liệu DAQ Chương 1 Trang 1 GV: Phạm Hùng Kim Khánh Chương 1 TỔNG QUAN VỀ DAQ (DATA ACQUISITION AND CONTROL) 1. Định nghĩa và khái niệm Thu thập dữ liệu (data acquisition) là quá trình chuyển tín hiệu vật lý từ thế giới thực thành tín hiệu điện để đo lường và chuyển sang tín hiệu số cho quá trình xử lý, phân tích và lưu trữ bằng máy tính. Trong hầu hết các ứng dụng, hệ thu thập dữ liệu (Data Acquisition (DAQ)

pdf87 trang | Chia sẻ: huongnhu95 | Lượt xem: 400 | Lượt tải: 0download
Tóm tắt tài liệu Tài liệu Tổng quan về daq (data acquisition and control), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
System) được thiết kế không những chỉ để thu thập dữ liệu mà còn cả chức năng điều khiển. Vì vậy khi nói hệ DAQ thường hàm ý cả chức năng điều khiển (Data Acquisition and Control) Hình 1.1 – Các thành phần cơ bản của hệ DAQ Tài liệu DAQ Chương 1 Trang 2 GV: Phạm Hùng Kim Khánh 1.1. Bộ chuyển đổi (transducer) và cảm biến (sensor) Bộ chuyển đổi và cảm biến thực hiện thay đổi các tín hiệu vật lý thành tín hiệu điện để phần cứng có thể xử lý. Bộ chuyển đổi có thể chuyển hầu hết các đại lượng cần đo sang tín hiệu điện như: cặp nhiệt điện, nhiệt kế điện trở (RTD – Resistive Temperature Detector), nhiệt trở, 1.2. Dây nối và cáp truyền thông Dây nối: liên kết ngõ ra của chuyển đổi/cảm biến đến phần cứng khối xử lý tín hiệu hoặc từ khối xử lý tín hiệu đến PC nếu khối xử lý tín hiệu cách xa PC. Trường hợp phần cứng khối xử lý tín hiệu cách xa PC và chuẩn truyền tín hiệu là RS-232 hoặc RS-485 : cáp truyền thông Đây thường là thành phần cồng kềnh nhất của hệ thống và dễ chịu tác động của nhiễu bên ngoài, đặc biệt trong môi trường công nghiệp khắc nghiệt. Vì vậy cần quan tâm đặc biệt đến vấn đề chống nhiễu cho dây nối và cáp truyền thông để giảm thiểu ảnh hưởng của nhiễu. 1.3. Xử lý tín hiệu (Data conditioning) Tín hiệu điện đầu ra của cảm biến cần được chuyển sang dạng thích hợp, tương thích với phần cứng khối thu thập dữ liệu, đặc biệt là bộ chuyển đổi A/D. Các nhiệm vụ của thành phần này có thể là: - Lọc: thường là bộ lọc thông thấp để loại các thành phần tần số nhiễu. - Khuếch đại: dùng để tăng độ phân giải cho hệ thống. - Tuyến tính hóa: dùng để hiệu chỉnh cho các bộ chuyển đổi phi tuyến như cặp nhiệt điện. - Cách ly: dùng để cách ly với máy tính nhằm bảo vệ máy tính trước các thành phần điện áp cao. - Kích thích: dùng cho các bộ chuyển đổi cần dòng hay áp kích thích ngoài như cảm biến điện trở, nhiệt trở, 1.4. Phần cứng thu thập dữ liệu Thực hiện các chức năng sau: - Chuyển tín hiệu dạng tương tự sang dạng số để hiển thị, lưu trữ và phân tích - Đọc vào tín hiệu số chứa đựng thông tin về quá trình của một hệ thống. - Chuyển tín hiệu số từ PC sang tín hiệu điều khiển để điều khiển một hệ thống hay quá trình. - Xuất ra tín hiệu điều khiển dạng số. Phần cứng thu thập dữ liệu tồn tại dưới nhiều hình thức khác nhau từ nhiều nhà sản xuất, có thể là: card giao tiếp mở rộng (plug-in expansion bus boards), intelligent stand-alone loggers and controllers (loại này có thể được định cấu hình, quan sát và điều khiển từ máy tính qua RS-232 hoặc có thể hoạt động độc lập), hoặc Tài liệu DAQ Chương 1 Trang 3 GV: Phạm Hùng Kim Khánh các thiết bi độc lập từ xa có thể điều khiển và định cấu hình từ máy tính qua chuẩn giao tiếp IEEE-488. 1.5. Phần mềm thu thập dữ liệu Có 3 lựa chọn: - Đọc và xuất dữ liệu trực tiếp dùng tác động lên các thanh ghi của phần cứng thu thập dữ liệu - Dùng driver đi kèm với phần cứng cung cấp bởi nhà sản xuất để phát triển phần mềm - Dùng gói phần mềm ứng dụng cung cấp kèm với phần cứng thu thập dữ liệu để thực hiện tất cả các nhiệm vụ yêu cầu cho một ứng dụng cụ thể 1.6. Máy chủ Dùng thực thi các chương trình phần mềm và lưu trữ dữ liệu, có ảnh hưởng rất lớn đến tốc độ của hệ thống. 2. Cấu hình hệ DAQ Việc lựa chọn cấu hình cho hệ DAQ phụ thuộc vào: - Môi trường làm việc (phòng thí nghiệm, thu thập dữ liệu trong cùng khu vực sản xuất hay từ xa), - Số lượng cảm biến và cơ cấu chấp hành yêu cầu, vị trí của chúng với máy chủ, hình thức xử lý tín hiệu yêu cầu, độ khắc nghiệt của môi trường làm việc là các yếu tố quan trọng. Các cấu hình thông dụng của hệ DAQ: - Vào/ra tại chỗ (tập trung) với PC - Vào/ra phân tán - Các bộ thu thập dữ liệu và điều khiển độc lập hoặc phân tán - Các thiết bị theo chuẩn IEEE-488 2.1. Vào / ra tập trung (Plug-in I/O) - Các mạch vào/ra tập trung được cắm trực tiếp vào máy tính qua các bus mở rộng - Đặc điểm: nhỏ gọn, tốc độ thu thập dữ liệu và điều khiển nhanh nhất, chi phí thấp vì vậy thường được dùng. - Được sử dụng trong các ứng dụng mà máy chủ ở gần cảm biến và cơ cấu chấp hành. Tài liệu DAQ Chương 1 Trang 4 GV: Phạm Hùng Kim Khánh Hình 1.2 – Một số ví dụ của Plug-in I/O board 2.2. Vào / ra phân tán (Distributed I/O) Trong môi trường sản xuất công nghiệp, cảm biến và cơ cấu chấp hành thường ở xa máy chủ, ở trong môi trường khắc nghiệt và bao phủ trong một diện tích rộng, cách xa máy chủ hàng trăm mét. Do đó, khó có thể nhận được tín hiệu nhỏ từ các cảm biến như cặp nhiệt, cảm biến điện trở (strain gauge) qua đường truyền dài đồng thời dây nối từ cảm biến về máy chủ dài và tốn kém. Giải pháp: - Module xử lý tín hiệu được đặt gần mỗi cảm biến tương ứng cũng như mỗi cảm biến cần có một module xử lý tín hiệu: vào/ra phân tán. - Giải pháp này có thể tốn kém nếu có nhiều cảm biến nhưng chất lượng tín hiệu và độ chính xác cao. - Dạng thường gặp của vào/ra phân tán là bộ phát số. Bộ phát số này thực hiện tất cả các chức năng xử lý tín hiệu cần thiết, có bộ vi điều khiển và chuyển đổi tương tự - số (ADC) để chuyển tín hiệu cần đo sang dạng số. Tín hiệu dạng số này được truyền về máy chủ bằng chuẩn RS-232 hoặc RS-485. - RS-232: khoảng cách truyền gần. - RS-485: (multi-drop): giảm số lượng cáp truyền, có thể kết nối đến 32 modules, khoảng cách truyền có thể lên đến 10km nếu dùng multi-drop network. (RS-232: tối đa 15m). Tài liệu DAQ Chương 1 Trang 5 GV: Phạm Hùng Kim Khánh - Cần bộ chuyển đổi từ RS-232 sang RS-485 do hầu hết các máy chủ không hỗ trợ chuẩn RS-485. Hình 1.3 – Vào / ra phân bố - module phát số 2.3. Bộ thu thập dữ liệu độc lập hay phân tán Ưu điểm: giống ưu điểm của I/O phân tán với các bộ xử lý tín hiệu thông minh, đồng thời khả năng tự quyết định từ xa làm tăng độ tin cậy của hệ thống, có thể điều khiển và định cấu hình từ máy tính dùng giao tiếp nối tiếp hoặc card PCMCIA (Personal Computer Memory Card International Association) và có thể hoạt động độc lập mà không cần máy chủ (đây là mục tiêu chính). Vì vậy rất hữu ích khi phải đặt các bộ thu thập dữ liệu ở xa hoặc trong môi trường khắc nghiệt hoặc các ứng dụng không cho phép sự kết nối liên tục tới máy tính (ví dụ: điều khiển nhiệt độ trong các xe tải đông lạnh). Tài liệu DAQ Chương 1 Trang 6 GV: Phạm Hùng Kim Khánh Hình 1.4 - Sử dụng card PCMCIA để nhập dữ liệu từ bộ điều khiển / đăng nhập độc lập Hình 1.5 - Sơ đồ bộ thu thập dữ liệu độc lập qua giao tiếp nối tiếp RS-232 Tài liệu DAQ Chương 1 Trang 7 GV: Phạm Hùng Kim Khánh Hình 1.6 - Kết nối bộ thu thập dữ liệu độc lập qua mạng điện thoại hay radio Hình 1.7 - Hệ thu thập dữ liệu phân tán Tài liệu DAQ Chương 1 Trang 8 GV: Phạm Hùng Kim Khánh 2.4. Các thiết bị lập trình được IEEE-488 - Chuẩn truyền thông này còn được gọi là GPIB (General Purpose Interface Bus), được thành lập năm 1965 bởi Hewlett-Packard để kết nối và điều khiển các thiết bị đo thử lập trình được của hãng. Chuẩn này nhanh chóng được thế giới chấp nhận và trở thành chuẩn IEEE-488 nhờ tốc độ, tính linh hoạt và hữu ích trong việc kết nối các thiết bị trong phòng thí nghiệm. - GPIB là chuẩn giao tiếp truyền thông song song tốc độ cao cho phép kết nối đồng thời 15 thiết bị trên bus truyền dữ liệu song song. Thường yêu cầu có bộ điều khiển GPIB để định địa chỉ cho từng thiết bị và khởi tạo các thiết bị sẽ truyền thông với nhau. - Tốc độ truyền thông tối đa, chiều dài cáp truyền tối đa, khoảng cách tối đa giữa các thiết bị phụ thuộc vào tốc độ và khả năng xử lý của bộ điều khiển GPIB và loại cáp truyền. - Phù hợp cho các phòng thí nghiệm nghiên cứu hoặc đo thử trong công nghiệp - Có hàng ngàn sản phẩm trên thị trường hỗ trợ chuẩn giao tiếp này Hình 1.8 - Cấu trúc hệ GPIB thông dụng Tài liệu DAQ Chương 2 Trang 9 GV: Phạm Hùng Kim Khánh Chương 2 XỬ LÝ TÍN HIỆU NGÕ VÀO CHO HỆ DAQ (SIGNAL CONDITIONING) 1. Giới thiệu Tín hiệu điện ngõ ra của bộ chuyển đổi / cảm biến cần được biến đổi cho phù hợp với ngõ vào của phần cứng DAQ. Ngoài ra, một số bộ chuyển đổi / cảm biến cần nguồn kích thích hoặc cầu Wheaston và tuyến tính hóa để tín hiệu đo được chính xác. Hầu hết các hệ DAQ đều bao gồm khâu xử lý tín hiệu dưới một hình thức nào đó. Các hình thức cơ bản mà khâu xử lý tín hiệu có thể thực hiện là: - Khuếch đại - Cách ly - Lọc - Kích thích - Tuyến tính hóa Khâu xử lý tín hiệu của hệ DAQ phải thực hiện nhiệm vụ nào và cách thức thực hiện là gì phụ thuộc vào số lượng và loại của bộ chuyển đổi / cảm biến, yêu cầu về nguồn kích thích và nối đất cho cảm biến, đồng thời không kém phần quan trọng là khoảng cách từ cảm biến tới máy chủ trung tâm. 2. Các kiểu xử lý tín hiệu 2.1. Khuếch đại Là nhiệm vụ chính yếu của khâu xử lý tín hiệu nhằm: - Tăng độ phân giải cho phép đo (nhiệm vụ chính) - Tăng tỷ số tín hiệu/nhiễu (SNR) Tăng độ phân giải: Ví dụ: Xét tín hiệu ngõ ra cảm biến 0-10mV nếu đưa trực tiếp vào ADC 12bit với full-scale 10V ADC 12 bit  có tất cả 212 = 4096 mức điện áp khác nhau. Điện áp ngõ vào ADC từ 0V – 12V  độ phân giải 10V/4096 = 2,44 mV Ngõ ra cảm biến từ 0 – 10 mV  chỉ phân biệt 5 mức điện áp: 0V; 2,44 mV; 4,88 mV; 7,32 mV và 9,76 mV. Nếu thực hiện khuếch đại tín hiệu tại ngõ ra cảm biến 10 lần: điện áp đưa vào ADC sẽ nằm trong khoảng 0 – 100 mV  phân biệt được 41 mức điện áp khác nhau. Tăng SNR: Tín hiệu nhỏ ở ngõ ra của cảm biến cách xa phần cứng DAQ nếu được truyền trong môi trường nhiễu sẽ bị ảnh hưởng lớn của nhiễu. Nếu tín hiệu nhỏ (bị nhiễu) này được khuếch đại tại phần cứng DAQ sau khi được truyền qua môi trường nhiễu thì Tài liệu DAQ Chương 2 Trang 10 GV: Phạm Hùng Kim Khánh nhiễu trong tín hiệu này cũng được khuếch đại như tín hiệu cần đo. Nếu nhiễu so sánh được với tín hiệu cần đo (SNR thấp) sẽ dẫn đến sai số lớn cho phép đo và phép đo là vô nghĩa. Tăng SNR bằng cách khuếch đại tín hiệu nhỏ ở đầu ra cảm biến trước khi truyền. Ví dụ: Cặp nhiệt loại J có độ nhạy 50uV/0C. Nếu tín hiệu đầu ra cặp nhiệt được truyền trong môi trường có nhiễu lớn với khoảng cách 10m, nhiễu đặt lên tín hiệu của cặp nhiệt có thể lên đến 200uV dẫn đến sai số đến 4oC. Nếu khuếch đại tín hiệu tại đầu ra cặp nhiệt lên 500 lần thì độ nhạy lúc này là 25mV/0C, sai số đo nhiễu lúc này (hàng uV) là rất nhỏ. 2.2. Cách ly  Cách ly dùng Opto : thường dùng cho tín hiệu số  Cách ly bằng phương pháp từ trường/điện trường: dùng cho tín hiệu tương tự, thực hiện bằng cách điều chế tín hiệu điện áp thành tần số, sau đó truyền tín hiệu tần số và biến đổi tần số thành điện áp ở đầu ra  Cách ly bằng biến áp: Cách ly giúp bảo vệ thiết bị phần cứng DAQ, PC cũng như người vận hành khỏi điện áp cao trong quá trình quá độ, sét hay tĩnh điện cũng như hỏng hóc của các thiết bị cao áp. Các bộ bảo vệ quá áp được đặt ở đầu vào của khâu xử lý tín hiệu để bảo vệ khâu này. Cách ly còn nhằm đảm bảo vòng nối đất không ảnh hưởng đến tín hiệu đo. Tài liệu DAQ Chương 2 Trang 11 GV: Phạm Hùng Kim Khánh 2.3. Mạch lọc Mạch lọc thực hiện nhiệm vụ loại bỏ nhiễu ra khỏi tín hiệu cần đo trước khi tín hiệu này được khuếch đại và đưa vào ADC. Quá trình lọc có thể thực hiện bằng phần cứng hoặc phần mềm. Lọc bằng phần mềm: đọc tín hiệu đo nhiều lần hơn cần thiết và lấy trung bình. Phương pháp này loại bỏ được nhiễu tuần hoàn hoàn toàn nếu các mẫu được trung bình hóa trong một chu kỳ của nhiễu. Lọc bằng phần cứng: các mạch lọc tương tự là rẻ nhất, bao gồm các mạch lọc thụ động (dùng các phần tử thụ động như RLC) và tích cực (dùng khuếch đại thuật toán – OpAmp) Các thông số thông dụng của mạch lọc: - Tần số cắt - Roll-off: độ dốc của đường cong biên độ theo tần số (biểu đồ Bode) tại tần số cắt. - Hệ số phẩm chất: quyết định độ lợi của mạch lọc tại tần số cộng hưởng và roll-off 2.4. Tuyến tính hóa Thông thường, quan hệ giữa ngõ ra của cảm biến và tín hiệu đầu vào cần đo là phi tuyến. Phần mềm của hệ DAQ thường thực hiện chức năng tuyến tính hóa. Tuy nhiên, nếu mối quan hệ phi tuyến là dự đoán được và có tính lặp lại thì có thể tuyến tính hóa bằng phần cứng. 3. Phân loại khâu xử lý tín hiệu 3.1. Các mạch xử lý tín hiệu cắm vào PC - Mạch xử lý tín hiệu nằm trên phần cứng DAQ cắm vào máy chủ như hình. - Mỗi mạch xử lý tín hiệu cho một loại cảm biến - Sử dụng cho ứng dụng nhỏ với số lượng cảm biến ít và nằm gần máy chủ 3.2. Các bộ phát 2 dây nối trực tiếp Bộ phát 2 dây là module xử lý tín hiệu 2 cửa: nhận tín hiệu cần xử lý ở đầu vào và xuất tín hiệu đã xử lý ở đầu ra. Mỗi module cần một loại cảm biến. Các bộ phát này không phải là thiết bị thông minh và không có ADC trên mạch. Tài liệu DAQ Chương 2 Trang 12 GV: Phạm Hùng Kim Khánh Tín hiệu đã được xử lý được truyền về phần cứng hệ DAQ tại máy chủ bằng 2 dây, tín hiệu truyền có thể là điện áp hoặc mạch vòng dòng điện (4-20 mA).  Tín hiệu truyền điện áp (± 10V hoặc 0-10V) tương thích với hầu hết với đầu vào các mạch DAQ cho phép giao tiếp dễ dàng với các board DAQ hiện đại. Tuy nhiên hạn chế của tín hiệu này là sụt áp trên dây truyền ở khoảng cách xa nên chỉ dùng phương pháp truyền điện áp khi đường truyền ngắn.  Tín hiệu dòng điện có khả năng miễn nhiễm với nhiễu cao và có thể truyền với khoảng cách hàng trăm m (lên đến 1000m). Bộ thu chuyển dòng sang áp để đưa vào ADC. Bộ thu thường là một điện trở khoảng 500  / 10V (dòng 20 mA).  Mỗi cặp cáp truyền cho một cảm biến riêng lẻ nhiều cáp kết nối đến máy chủ.  Nguồn cung cấp (15-40V) cần đủ công suất cung cấp dòng cho các modules theo yêu cầu.  Sơ đồ khối của một bộ phát 2 dây trực tiếp như hình Tài liệu DAQ Chương 2 Trang 13 GV: Phạm Hùng Kim Khánh 3.3. Vào/ra phân tán - bộ phát số Mạch xử lý tín hiệu vào/ra phân tán sử dụng bộ phát số Mạch xử lý tín hiệu vào/ra phân tán sử dụng bộ phát số riêng biệt Tài liệu DAQ Chương 2 Trang 14 GV: Phạm Hùng Kim Khánh 4. Nhiễu và ảnh hưởng của nhiễu 4.1. Khái niệm Nhiễu: tín hiệu điện không mong muốn trong mạch. Không thể triệt nhiễu hoàn toàn mà chỉ có thể giảm biên độ nhiễu cho đến khi biên độ của nó không gây ảnh hưởng lên tín hiệu đo 4.2. Nguồn nhiễu và phân loại nhiễu Có 3 thành phần tham gia quá trình sinh nhiễu: Tài liệu DAQ Chương 2 Trang 15 GV: Phạm Hùng Kim Khánh Các hình thức gây nhiễu thường gặp trong hệ DAQ - Ghép nối hỗ cảm (inductive coupling) - Ghép nối điện dung (capacitive coupling) - Ghép nối điện trở (conductive coupling) Ghép nối điện trở: Ghép nối điện dung: Tài liệu DAQ Chương 2 Trang 16 GV: Phạm Hùng Kim Khánh Ghép nối hỗ cảm: Tài liệu DAQ Chương 2 Trang 17 GV: Phạm Hùng Kim Khánh 4.3. Chống nhiễu Dùng cáp có vỏ bọc và nối đất vỏ bọc : giảm nhiễu do tương hỗ điện dung gây ra. Vn = jω RS C2S VNS Nối đất vỏ cáp: Tài liệu DAQ Chương 2 Trang 18 GV: Phạm Hùng Kim Khánh Dùng cáp có vỏ bọc và xoắn đôi Dùng cáp xoắn đôi Dùng cáp đồng trục Tài liệu DAQ Chương 3 Trang 19 GV: Phạm Hùng Kim Khánh Chương 3 GIAO TIẾP GIỮA HỆ DAQ VỚI MÁY TÍNH 1. Chuyển đổi AD (Analog to Digital) 1.1. Nguyên lý Chuyển đổi AD là qua trình chuyển từ tín hiệu tương tự từ các nguồn bên ngoài thành dạng tín hiệu số để máy tính có thể xử lý được. Quá trình chuyển đổi AD bao gồm: - Lấy mẫu tín hiệu (Sampling). - Lượng tử hóa (Quantizing). - Mã hóa (Coding). 1.1.1. Lấy mẫu Là quá trình thay tín hiệu tương tự bằng biên độ của nó ở những thời điểm cách đều nhau, gọi là chu kỳ lấy mẫu. Các giá trị này sẽ được chuyển thành số nhị phân để có thể xử lý được. Vấn đề ở đây là phải lấy mẫu như thế nào để có thể khôi phục lại tín hiệu gốc. Tín hiệu lấy mẫu của tín hiệu gốc s(t) biểu diễn là s(nT) với T là chu kỳ lấy mẫu. s(nT) = s(t)u(t) (3.1) trong đó u(t) là chuỗi xung Dirac u(t) =     n )nTt( (3.2) Phổ của tín hiệu lấy mẫu là tích chập của S(f) và U(f), do đó: Ss(f) = S(f)*U(f) =     n ) T n f(S T 1 (3.3) Hình 3.1 – Tín hiệu lấy mẫu và phổ 1/T 0 0 s t t f f Tài liệu DAQ Chương 3 Trang 20 GV: Phạm Hùng Kim Khánh Quá trình lấy mẫu mô tả ở trên là quá trình lấy mẫu lý tưởng. Trong thực tế, do tín hiệu u(t) là các xung lấy mẫu với chu kỳ T, độ rộng  và biên độ a nên phổ tín hiệu thực tế sẽ không chỉ là hàm S(f) mà là: S(f)a   f )fsin( (3.4) (do giá trị lấy mẫu là a    2/nT 2/nT dt)t(s ) Tuy nhiên do  << T nên sai lệch không đáng kể. Tần số lấy mẫu: Xét tín hiệu sin có tần số f và quá trình lấy mẫu với các chu kỳ lấy mẫu khác nhau. Như vậy, ta thấy rằng nếu tần số lấy mẫu càng cao thì dạng của tín hiệu càng có khả năng khôi phục giống như tín hiệu gốc. Tuy nhiên, nếu tần số càng cao thì cần phải dùng dung lượng lớn hơn để lưu trữ và đồng thời tốc độ xử lý sẽ chậm lại do cần xử lý số lượng dữ liệu lớn. Từ đó, ta cần xác định tần số lấy mẫu sao cho có thể khôi phục lại gần đúng dạng tín hiệu với yêu cầu tốc độ xử lý giới hạn trong mức cho phép. Định lý lấy mẫu Định lý lấy mẫu xác định điều kiện để một tập mẫu có thể cho phép khôi phục lại chính xác tín hiệu trước khi lấy mẫu. Như khảo sát ở trên (hình 3.1), phổ của tín hiệu lấy mẫu là tín hiệu có chu kỳ trên miền tần số. Để khôi phục lại dạng của tín hiệu, ta chỉ cần giới hạn phổ tần của tín hiệu. Quá trình này có thể thực hiện bằng một mạch lọc thông thấp với hàm truyền: fs = 16f fs = 8f fs = 4f fs = 2f Hình 3.2 – Lấy mẫu tín hiệu với các tần số khác nhau Tài liệu DAQ Chương 3 Trang 21 GV: Phạm Hùng Kim Khánh H(f) =         2 f f0 2 f f0 f 1 s s s (3.5) Hay: h(t) = T/t )T/tsin(   (3.6) Phổ của tín hiệu sau khi khôi phục là: S(f) = Ss(f)H(f) (3.7) Hay: s(t) =              'dt T/)'tt( )T/)'tt(sin( )nT't()'t(s n s(t) =      n )nT/t( )nT/t(sin )nT(s (3.8) Như vậy, ta có thể khôi phục lại tín hiệu trước khi lấy mẫu khi phổ tín hiệu sau khi qua mạch lọc phải giống hệt với phổ tín hiệu gốc. Theo hình 3.3, điều kiện này thoả mãn khi phổ tín hiệu gốc không chứa thành phần tần số lớn hơn fs/2. fs = 1/T 0 0 s t t f f f Ss H S 0 h t Hình 3.3 - Khôi phục tín hiệu sau khi lấy mẫu fs/2 Tài liệu DAQ Chương 3 Trang 22 GV: Phạm Hùng Kim Khánh Trong trường hợp ngược lại, phổ của tín hiệu lấy mẫu sẽ bị méo dạng nên khi sử dụng mạch lọc để khôi phục tín hiệu thì tín hiệu này sẽ khác với tín hiệu gốc, hiện tượng này gọi lài chồng phổ (aliasing). Từ đó định lý lấy mẫu phát biểu như sau: "Một tín hiệu không chứa bất kỳ thành phần tần số nào lớn hơn hay bằng một giá trị fm có thể biểu diễn chính xác bằng tập các giá trị của nó với chu kỳ lấy mẫu T = 1/2fm" Như vậy, tần số lấy mẫu phải thoả mãn điều kiện fs ≥ 2fm trong đó fm là thành phần tần số lớn nhất có trong tín hiệu. Tần số giới hạn này được gọi là tần số Nyquist và khoảng (-fs/2,fs/2) gọi là khoảng Nyquist. Trong thực tế , tín hiệu trước khi lấy mẫu sẽ bị giới hạn bằng một mạch lọc để tần số tín hiệu nằm trong khoảng Nyquist. Ví dụ như tín hiệu âm thanh thường nằm trong khoảng (300,3400) Hz nên người ta sẽ đưa tí hiệu qua mạch lọc thông thấp để loại các thành phần tần số bậc cao và thực hiện lấy mẫu ở tần số tối thiểu là 6,8 KHz. 1.1.2. Lượng tử hóa Lượng tử hoá là quá trình xấp xỉ các giá trị của tín hiệu lấy mẫu s(nT) bằng bội số của một giá trị q (q gọi là bước lượng tử). Nếu q không thay đổi thì quá trình lượng tử gọi là đồng nhất. Quá trình này thực hiện bằng hàm bậc thang mô tả như sau: Quá trình lượng tử có thể thực hiện bằng cách định nghĩa giá trị trung tâm của hàm lượng tử. Ví dụ như trong hình 3.5, các giá trị trong khoảng từ (n – ½)q đến (n + ½)q sẽ được làm tròn là n. Phương pháp này sẽ cực tiểu hóa công suất của tín hiệu lỗi. f Ss Hình 3.4 – Hiện tượng chồng phổ Hình 3.5 – Hàm lượng tử với bước lượng tử q = 1 -6 -4 -2 0 2 4 6 -5 -4 -3 -2 -1 0 1 2 3 4 5 s(n) s q (n ) Tài liệu DAQ Chương 3 Trang 23 GV: Phạm Hùng Kim Khánh Một phương pháp khác có thể sử dụng là dùng hàm cắt, nghĩa là các giá trị trong khoảng [nq,(n+1)q) sẽ làm tròn thành n. Như vậy, quá trình lượng tử hóa sẽ làm méo dạng tín hiệu và xem như tồn tại một tín hiệu nhiễu. Sự méo dạng này gọi là méo lượng tử hay còn gọi là nhiễu lượng tử. s(n) = sq(n) + e(n) (3.9) Biên độ của tín hiệu nhiễu lượng tử sẽ nằm trong khoảng (-q/2,q/2). Do sai số lượng tử không biết trước nên việc mô tả sai số lượng tử mang tính thống kê. Tổng quát, ta có thể xem e(n) là chuỗi các biến ngẫu nhiên trong đó: - Thống kê của e(n) không thay đổi theo thời gian (nhiễu lượng tử hóa là quá trình ngẫu nhiên dừng). - Nhiễu lượng tử e(n) là chuỗi các biến ngẫu nhiên không tương quan. - Nhiễu lượng tử e(n) không tương quan với tín hiệu ngõ vào s(n). - Hàm mật độ xác suất của e(n) phân bố đều trên tầm các giá trị của sai số lượng tử. Như vậy, nhiễu lượng tử được phân bố đều trên khoảng (-q/2,q/2) và có phương sai (công suất nhiễu lượng tử) là: 12 q 22 e  (3.10) Tín hiệu được lấy mẫu và lượng tử hóa bao gồm một tập hợp các số và được lưu trữ ở dạng nhị phân. Đối với số nhị phân N bit sẽ có tối đa 2N giá trị khác nhau ứng Hình 3.6 – Lỗi lượng tử 0 1 2 3 4 5 6 -10 -8 -6 -4 -2 0 2 4 6 8 10 0 1 2 3 4 5 6 -5 -4 -3 -2 -1 0 1 2 3 4 5 Tài liệu DAQ Chương 3 Trang 24 GV: Phạm Hùng Kim Khánh với 2N mức lượng tử khác nhau. Như vậy, phạm vi lượng tử sẽ bị giới hạn trong khoảng từ q đến 2Nq, bất kỳ biên độ tín hiệu nào vượt quá giá trị này thì sẽ bị cắt bỏ. Giả sử tín hiệu mã hóa có biên độ trong khoảng [-Am,Am]: Am = 2 N q/2 (3.11) Từ đó, giả sử công suất tín hiệu là 2 s  thì tỷ số tín hiệu trên nhiễu lượng tử hóa (SQNR – Signal to Quantizing Noise Ratio) là: SQNR [dB] = 2 e 2 slog10   = 6.02(N-1) + 10.79 - 20 s m A log  (3.12) 1.1.3. Mã hóa Tín hiệu ở ngõ ra bộ lượng tử hóa được đưa đến bộ mã hóa, bộ mã hóa sẽ gán một số nhị phân cho mỗi mức lượng tử. Quá trình này gọi là mã hóa. Có nhiều phương pháp mã hóa khác nhau nhưng trong đa số hệ thống xử lý tín hiệu số sử dụng phương pháp bù 2. Một ví dụ đối với N = 3 như sau: Số nhị phân Giá trị Số nhị phân Giá trị 000 0 000 0 001 1/4 001 1/4 010 1/2 010 1/2 011 3/4 011 3/4 111 - 1/4 100 1 110 - 1/2 101 5/4 101 - 3/4 110 3/2 100 -1 111 7/4 Ngoài phương pháp mã hóa tuyến tính như trên (các mức lượng tử có cùng số bit nhị phân bằng nhau), ta còn sử dụng phương pháp mã hóa phi tuyến. Phương pháp này sử dụng các bước lượng tử thay đổi theo biên độ tín hiệu. 1.2. Các thông số Khi thực hiện quá trình ADC, các thông số cần quan tâm của hệ thống:  Số bit mã hóa Số bit mã hóa của quá trình AD xác định một mức lượng tử sẽ được mã hóa thành bao nhiêu bit nhị phân. Nếu số bit mã hóa lớn, độ phân giải của hệ thống sẽ tăng lên nhưng đòi hỏi dung lượng lưu trữ dữ liệu và thời gian xử lý lớn hơn và ngược lại.  Độ rộng mã hóa Là giá trị của ngõ vào tương tự làm cho giá trị mã hóa ở ngõ ra thay đổi. Ví dụ như bộ ADC có số bit mã hóa 12 với ngõ vào tương tự từ 0 – 10V có độ rộng mã hóa là 10/2 12 = 2,44 mV. Độ rộng mã hóa còn gọi là bước lượng tử. Tài liệu DAQ Chương 3 Trang 25 GV: Phạm Hùng Kim Khánh  Phạm vi ngõ vào Phạm vi ngõ vào là khoảng giá trị nhỏ nhất và lớn nhất mã ADC có thể chuyển đổi chính xác sang dạng số. Phạm vi này có thể ở dạng đơn cực (chỉ có điện áp dương) hay lưỡng cực (bao gồm cả điện áp dương và âm). Trong các board ADC, thông thường phạm vi ngõ vào có thể thay đổi.  Phương pháp mã hóa dữ liệu Dùng để xác định dữ liệu số ở ngõ ra theo tín hiệu tương tự ngõ vào. Phương pháp mã hóa đơn giản nhất là offset: dữ liệu số thay đổi tuyến tính theo các mức lượng tử.  Thời gian chuyển đổi Là thời gian từ lúc bắt đầu quá trình chuyển đổi cho tới khi có dữ liệu số hợp lệ tại ngõ ra. Ví dụ như ADC0804 và 0809 có thời gian chuyển đổi 100 µs. 1.3. Một số vi mạch ADC Hình 3.7 – Vi mạch ADC  Mạch ứng dụng +IN 6 -IN 7 VREF/2 9 DB7 11DB6 12DB5 13DB4 14DB3 15DB2 16DB1 17DB0 18 CLKR 19 VCC/VREF 20 CLKIN 4 INTR 5 CS 1 RD 2 WR 3 U4 ADC0804 CLK 10 OE 9 EOC 7 D0 17 D1 14 D2 15 D3 8 D4 18 D5 19 D6 20 D7 21 START 6 ALE 22 VCC 11 REF+ 12 REF- 16 IN0 26 IN1 27 IN2 28 IN3 1 IN4 2 IN5 3 IN6 4 IN7 5 A0 25 A1 24 A2 23 U4 ADC0809 Hình 3.9 – Sơ đồ mạch ứng dụng ADC0804 R3 1.13K +5V R11 +5V C3 1 nF 10K R-PACK 1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9 ADC0804 6 7 9 11 12 13 14 15 16 17 18 19 4 5 1 2 3 +IN -IN VREF/2 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 CLKR CLKIN INTR CS RD WR +5V -5V A P1 +5V +5V +5V R14R12 1 2 1 2 1 2 PORT A 1 2 3 4 5 6 7 8 1 2 R5 10K P3 R1 1K R2 1K 1 2 1 2 R4 10K J1 R6 10K 1 2 R7 P2 + - 5 6 7 8 4 J2 C +5V R8 R13 S1 START +5V B 1 2 R9 -5V R10 +5V + - JR4558 3 2 1 8 4 T à i liệu D A Q C h ư ơ n g 3 T ra n g 2 0 G V : P h ạ m H ù n g K im K h á n h Tài liệu DAQ Chương 3 Trang 27 GV: Phạm Hùng Kim Khánh 2. Chuyển đổi DA (Digital to Analog) 2.1. Nguyên lý Bộ biến đổi số - tương tự (DAC) thực hiện công việc biến đổi các giá trị số thành các đại lượng tương tự (dòng điện hoặc điện áp) tương ứng. DAC nhận n bit song song ở ngõ vào và thực hiện chuyển đổi thành tín hiệu tương tự ở ngõ ra. Giá trị ngõ ra thông thường là dòng điện và cỏ thể thực hiện chuyển đổi thành điện áp bằng các bộ khuếch đại thuật toán (OpAmp). DAC bao gồm một mạng các chuyển mạch tương tự điều khiển bằng dữ liệu số ngõ vào và một mạng các điện trở.  Chuyển mạch bằng dòng điện Hình 3.10 – DAC chuyển mạch dòng điện Phương pháp này tạo dòng điện ở ngõ ra bằng cách cộng tất cả các dòng điện thành phần. Các dòng điện thành phần được điều khiển bằng các transistor, nếu giá trị ngõ vào tương ứng là logic 0 thì dòng điện qua R  diode  transistor tắt, ngược lại thì dòng điện qua R  transistor  OpAmp. Giả sử dòng điện tại ngõ vào OpAmp là IT  Vout = -ITR/2 IT = ( 1)EF 2 iR i V B R    Vout =  ( 1) 1 2EF EF 0 1 12 2 2 ... 2i nR i R nV B V B B B         DAC R-2R Phương pháp này chỉ dùng các điện trở có giá trị R và 2R. Giống như phần trên, phương pháp này cũng dùng ngõ vào số và điện áp chuẩn VREF để tạo dòng IT tại ngõ ra. R/2 Tài liệu DAQ Chương 3 Trang 28 GV: Phạm Hùng Kim Khánh Hình 3.11 – DAC R-2R 2.2. Các thông số  Độ phân giải Là giá trị chênh lệch ở ngõ ra khi ngõ vào thay đổi 1 giá trị. Giá trị này càng nhỏ (ứng với số bit mã hóa càng lớn) thì dạng sóng ngõ ra DAC càng mịn.  Phạm vi ngõ ra Ngõ ra của DAC có 2 dạng: điện áp hay dòng điện. Nếu sử dụng ngõ ra ở dạng điện áp, cần phải thêm các mạch khuếch đại thuật toán để chuyển từ dòng thành áp. Để thay đổi offset, độ lợi (nghĩa là phạm vi ngõ ra), bên trong bộ DAC có điện trở hồi tiếp. Nếu có nhiều điện trở hồi tiếp, phạm vi ngõ ra của DAC có thể thay đổi được, các giá trị này được xác định bằng các jumper trên board DAC.  Mã ngõ vào Tùy theo dạng mã ngõ vào (nhị phân, bù 2, BCD), tín hiệu ngõ ra sẽ được xác định.  Thời gian xác lập Là thời gian để ngõ ra ổn định, thời gian này bao gồm: thay đổi bộ chuyển mạch từ on sang off hay ngược lại, thay đổi dòng điện trong transistor và thời gian xử lý trên OpAmp.  Tốc độ thay đổi Là tốc độ lớn nhất mà DAC có thể tạo được dạng tín hiệu ở ngõ ra. Tốc độ này thường bị giới hạn bởi tốc độ của bộ khuếch đại tại ngõ ra.  Tốc độ cập nhật Phụ thuộc vào thời gian xác lập và tốc độ thay đổi, dùng để xác định tần số lớn nhất mà DAC có thể tạo được. Tài liệu DAQ Chương 3 Trang 29 GV: Phạm Hùng Kim Khánh 2.3. Một số vi mạch DAC Hình 3.12 – Vi mạch DAC0808 và ứng dụng P 1 -1 2 V P B 1 O U T - P B 2 R 1 0 2 .7 K R 1 4 5 .3 5 K + C 4 1 0 0 u F C 3 0 .0 1 u F P O R T B 12345678 O U T + +- 56 7 84 P B 6 R 1 2 2 .7 K D A C 0 8 0 8 1 2 1 1 1 0 9 8 7 6 5 1 4 1 5 4 2 1 6 A 8 A 7 A 6 A 5 A 4 A 3 A 2 A 1 V R + V R - IO U T IO U T C O M P R 1 1 2 .7 K P B 0 P B 4 P B 3 R 1 5 2 .7 K P B 5 D 1 Z 5 V 1 P B 7 + 1 2 V R 1 6 5 .3 5 K +- 32 1 84 R 9 8 2 0 C 5 0 .0 1 u F C 2 0 .0 1 u F R 1 3 2 .7 K A8 12 A7 11 A6 10 A5 9 A4 8 A3 7 A2 6 A1 5 VR+ 14 VR- 15 IOUT 4 IOUT 2 COMP 16 U4 DAC0808 Tài liệu DAQ Chương 3 Trang 30 GV: Phạm Hùng Kim Khánh 3. Giao tiếp qua cổng máy in 3.1. Giới thiệu Cổng song song gồm có 4 đường điều khiển, 5 đường trạng thái và 8 đường dữ liệu bao gồm 5 chế độ hoạt động: - Chế độ tương thích (compatibility). - Chế độ nibble. - Chế độ byte. - Chế độ EPP (Enhanced Parallel Port). - Chế độ ECP (Extended Capabilities Port). 3 chế độ đầu tiên sử dụng port song song chuẩn (SPP – Standard Parallel Port) trong khi đó chế độ 4, 5 cần thêm phần cứng để cho phép hoạt động ở tốc độ cao hơn. Sơ đồ chân của máy in như sau: Hình 3.13 – Hình dạng và sơ đồ cổng máy in 1 3 2 5 1 2 2 4 1 1 2 3 1 0 2 2 9 2 1 8 2 0 7 1 9 6 1 8 5 1 7 4 1 6 3 1 5 2 1 4 1 P 1 C O N N E C T O R D B 2 5 Thanh ghi trạng thái Thanh ghi điều khiển Thanh ghi dữ liệu Tài liệu DAQ Chương 3 Trang 31 GV: Phạm Hùng Kim Khánh Chân Tín hiệu Mô tả 1 STR (Out) Mức tín hiệu thấp, truyền dữ liệu tới máy in 2 D0 Bit dữ liệu 0 3 D1 Bit dữ liệu 1 4 D2 Bit dữ liệu 2 5 D3 Bit dữ liệu 3 6 D4 Bit dữ liệu 4 7 D5 Bit dữ liệu 5 8 D6 Bit dữ liệu 6 9 D7 Bit dữ liệu 7 10 ACK (In) Mức thấp: máy in đã nhận 1 ký tự và có khả năng nhận nữa 11 BUSY (In) Mức cao: ký tự đã được nhận; bộ đệm máy in đầy...0 P: kiểm tra chẵn lẻ, với các giá trị: Giá trị Mô tả O Odd (kiểm tra lẻ) E Even (kiểm tra chẵn) M Mark (luôn bằng 1) S Space (luôn bằng 0) N Không kiểm tra D: số bit dữ liệu (4, 5, 6, 7 hay 8), mặc định là 8 bit S: số bit stop (1, 1.5, 2) VD: MSComm1.Settings = "9600,O,8,1" sẽ xác định tốc độ truyền 9600bps, kiểm tra parity chẵn với 1 bit stop và 8 bit dữ liệu.  CommPort: Xác định số thứ tự của cổng truyền thông, cú pháp: MSComm1.CommPort = PortNumber PortNumber là giá trị nằm trong khoảng từ 1  99, mặc định là 1. VD: MSComm1.CommPort = 1 xác định sử dụng COM1  PortOpen: Đặt trạng thái hay kiểm tra trạng thái đóng / mở của cổng nối tiếp. Nếu dùng thuộc tính này để mở cổng nối tiếp thì phải sử dụng trước 2 thuộc tính Settings và CommPort. Cú pháp: MSComm1.PortOpen = True | False Giá trị xác định là True sẽ thực hiện mở cổng và False để đóng cổng đồng thời xoá nội dung của các bộ đệm truyền, nhận. VD: Mở cổng COM1 với tốc độ truyền 9600 bps MSComm1.Settings = "9600,N,8,1" MSComm1.CommPort = 1 MSComm1.PortOpen = True  Các thuộc tính nhận dữ liệu: Input: nhận một chuỗi ký tự và xoá khỏi bộ đệm. Cú pháp: InputString = MSComm1.Input Tài liệu DAQ Chương 4 Phạm Hùng Kim Khánh Trang 59 Thuộc tính này kết hợp với InputLen để xác định số ký tự đọc vào. Nếu InputLen = 0 thì sẽ đọc toàn bộ dữ liệu có trong bộ đệm. InBufferCount: số ký tự có trong bộ đệm nhận. Cú pháp: Count = MSComm1.InBufferCount Thuộc tính này cùng dược dùng để xoá bộ đệm nhận bắng cách gán giá trị 0. MSComm1.InBufferCount = 0 InBufferSize: đặt và xác định kích thước bộ đệm nhận (tính bằng byte). Cú pháp: MSComm1.InBufferCount = NumByte Giá trị măc định là 1024 byte. Kích thước bộ đệm này phải đủ lớn để tránh tình trạng mất dữ liệu. VD: Đọc toàn bộ nội dung trong bộ đệm nhận nếu có dữ liệu MSComm1.InputLen = 0 If MSComm1.InBufferCount 0 Then InputString = MSComm1.Input End If  Các thuộc tính xuất dữ liệu: Bao gồm các thuộc tính Output, OutBufferCount và OutBufferSize, chức năng của các thuộc tính này giống như các thuộc tính nhập.  CDTimeout: Đặt và xác định khoảng thời gian lớn nhất (tính bằng ms) từ lúc phát hiện sóng mang cho đến lúc có dữ liệu. Nếu quá khoảng thời gian này mà vẫn chưa có dữ liệu thì sẽ gán thuộc tính CommEvent là CDTO (Carrier Detect Timeout Error) và tạo sự kiện OnComm. Cú pháp: MSComm1.CDTimeout = NumTime  DSRTimeout: Xác định thời gian chờ tín hiệu DSR trước khi xảy ra sự kiện OnComm.  CTSTimeout: Đặt và xác định khoảng thời gian lớn nhất (tính bằng ms) đợi tín hiệu CTS trước khi đặt thuộc tính CommEvent là CTSTO và tạo sự kiện OnComm. Cú pháp: MSComm1.CTSTimeout = NumTime  CTSHolding: Xác định đã có tín hiệu CTS hay chưa, tín hiệu này dùng cho quá trình bắt tay bằng phần cứng (cho biết DCE sẵn sàng nhận dữ liệu), trả về giá trị True hay False.  DSRHolding: Xác định trạng thái DSR (báo hiệu sự tồn tại của DCE), trả về giá trị True hay False.  CDHolding: Tài liệu DAQ Chương 4 Phạm Hùng Kim Khánh Trang 60 Xác định trạng thái CD, trả về giá trị True hay False.  DTREnable: Đặt hay xoá tín hiệu DTR để báo sự tồn tại của DTE. Cú pháp: MSComm1.DTREnable = True | False  RTSEnable: Đặt hay xoá tín hiệu RTS để yêu cầu truyền dữ liệu đến DTE. Cú pháp: MSComm1.RTSEnable = True | False  NullDiscard: Cho phép nhận các ký tự NULL (rỗng) hay không (= True: cấm). Cú pháp: MSComm1.NullDiscard = True | False  SThreshold: Số byte trong bộ đệm truyền làm phát sinh sự kiện OnComm. Nếu giá trị này bằng 0 thì sẽ không tạo sự kiện OnComm. Cú pháp: MSComm1.SThreshold = NumChar  HandShaking: Chọn giao thức bắt tay khi thực hiện truyền dữ liệu. Cú pháp: MSComm1.HandShaking = Protocol Các giao thức truyền bao gồm: Protocol Giá trị Mô tả ComNone ComXon/Xoff ComRTS ComRTSXon/Xoff 0 1 2 3 Không băt tay (mặc định) Bắt tay phần mềm (Xon/Xoff) Bắt tay phần cứng (RTS/CTS) Bắt tay phần cứng và phàn mềm  CommEvent: Trả lại các lỗi truyền thông hay sự kiện xảy ra tại cổng nối tiếp Các sự kiện: Sự kiện Giá trị Mô tả ComEvSend ComEvReceive ComEvCTS ComEvDSR ComEvCD 1 2 3 4 5 Đã truyền ký tự Khi có ký tự trong bộ đệm nhận Có thay đổi trên CTS (Clear To Send) Có thay đổi trên DSR (Data Set Ready) Có thay đổi trên CD (Carrier Detect) Tài liệu DAQ Chương 4 Phạm Hùng Kim Khánh Trang 61 ComEvRing ComEvEOF 6 7 Phát hiện chuông Nhận ký tự kết thúc file Các lỗi truyền thông: Lỗi Giá trị Mô tả ComBreak ComCTSTO ComFrame ComOver ComCDTO ComRxOver ComRxParity ComTxFull 1001 1002 1004 1006 1007 1008 1009 1010 Nhận tín hiệu Break Carrier Detect Timeout Lỗi khung Phần cứng không đọc ký tự trước khi gởi ký tự kế Carrier Detect Timeout Tràn bộ đệm nhận Lỗi parity Tràn bộ đệm truyền 5.3.3. Sự kiện OnComm Sự kiện OnComm xảy ra bất cứ khi nào giá trị của thuộc tính CommEvent thay đổi. Các thuộc tính RThreshold và SThreshold = 0 sẽ cấm sự kiện OnComm khi thực hiện nhận hay gởi dữ liệu. Thông thường, SThreshold = 0 và RThreshold = 1. Một chương trình truyền nhận đơn giản thực hiện bằng cách nối chân TxD với RxD của cổng COM1 (loopback). Phương pháp này dùng để kiểm tra cổng nối tiếp. Thuộc tính cơ bản của cổng nối tiếp: Hình 3.23 – Các thuộc tính cơ bản của MSComm Tài liệu DAQ Chương 4 Phạm Hùng Kim Khánh Trang 62 Cửa sổ chương trình thực thi: Hình 3.24 – Cửa sổ chương trình loopback Chương trình nguồn: VERSION 5.00 Object = “{648A5603-2C6E-101B-82B6- 000000000014}#1.1#0”; “MSCOMM32.OCX” Begin VB.Form Form1 Caption = “Loopback Serial Port Example” ClientHeight = 3195 ClientLeft = 60 ClientTop = 345 ClientWidth = 4680 LinkTopic = “Form1” ScaleHeight = 3195 ScaleWidth = 4680 StartUpPosition = 3 „Windows Default Begin VB.CommandButton cmdExit Caption = “Exit” Height = 615 Left = 2640 TabIndex = 5 Top = 2160 Width = 1095 End Begin VB.CommandButton cmdSend Caption = “Send” Height = 615 Left = 1200 TabIndex = 4 Top = 2160 Width = 975 Textbox chứa các ký tự gởi Textbox chứa các ký tự nhận Đối tượng MSComm Yêu cầu truyền dữ liệu Tài liệu DAQ Chương 4 Phạm Hùng Kim Khánh Trang 63 End Begin VB.TextBox txtReceive Height = 735 Left = 1320 Locked = -1 „True TabIndex = 3 Top = 1080 Width = 2535 End Begin VB.TextBox txtTransmit Height = 735 Left = 1320 TabIndex = 0 Top = 240 Width = 2535 End Begin MSCommLib.MSComm MSComm1 Left = 3960 Top = 240 _ExtentX = 1005 _ExtentY = 1005 _Version = 393216 DTREnable = -1 „True RThreshold = 1 End Begin VB.Label Label2 Caption = “Receive:” Height = 375 Left = 240 TabIndex = 2 Top = 1200 Width = 855 End Begin VB.Label Label1 Caption = “Transmit:” Height = 375 Left = 240 TabIndex = 1 Top = 240 Width = 975 End End Attribute VB_Name = “Form1” Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Tài liệu DAQ Chương 4 Phạm Hùng Kim Khánh Trang 64 Private Sub cmdExit_Click() MSComm1.PortOpen = False „Đóng cổng End End Sub Private Sub cmdSend_Click() MSComm1.Output = Trim(txtTransmit.Text)‟Gởi dữ liệu End Sub Private Sub Form_Load() MSComm1.CommPort = 1 „COM1 MSComm1.Settings = “9600,n,8,1” „Tốc độ 9600bps MSComm1.PortOpen = True „ Mở cổng End Sub Private Sub MSComm1_OnComm() If (MSComm1.CommEvent = comEvReceive) Then txtReceive.Text = txtReceive.Text + MSComm1.Input End If End Sub 5.4. Giao tiếp với hệ DAQ Khi thực hiện giao tiếp với vi điều khiển, ta phải dùng thêm mạch chuyển mức logic từ TTL  232 và ngược lại. Các vi mạch thường sử dụng là MAX232 của Maxim hay DS275 của Dallas. Mạch chuyển mức logic mô tả như sau: Hình 3.25 – Mạch chuyển mức logic TTL  RS232 R1IN 13 R 2 IN 8 T1IN 11 T 2 IN 1 0 C+ 1 C1- 3 C2+ 4 C2- 5V+ 2 V- 6 R1OUT 12 R 2 O U T 9 T1OUT 14 T 2 O U T 7 MAX2325 9 4 8 3 7 2 6 1 DB9 C25 10u C26 10u C27 10u VCC C28 10u C29 10u TxD RxD _PC _PC Tài liệu DAQ Chương 4 Phạm Hùng Kim Khánh Trang 65 Tuy nhiên, khi sử dụng mạch chuyển mức logic dùng các vi mạch thì đòi hỏi phải dùng chung GND giữa máy tính và vi mạch  có khả năng làm hỏng cổng nối tiếp khi xảy ra hiện tượng chập mạch ở mạch ngoài. Do đó, ta có thể dùng thêm opto 4N35 để cách ly về điện. Sơ đồ mạch cách ly mô tả như sau: Hình 3.26 – Mạch chuyển mức logic TTL  RS232 cách ly Khi giao tiếp, vi điều khiển chính là một DTE nên sẽ nối RxD của máy tính với TxD của vi điếu khiển và ngược lại. Mạch kết nối đơn giản giữa vi điều khiển và máy tính như sau: 4.7K TxD 1 6 2 5 4 4N35 16 2 5 4 4N35 1K VCC 4.7K 68K RxD_PC TxD_PC 5 9 4 8 3 7 2 6 1 2.2K RTS RxD VCC DTR . SW DIP-8 1 2 3 4 5 6 7 8 9 330 R1IN 13 R 2 IN 8 T1IN 11 T 2 IN 1 0 C+ 1 C1- 3 C2+ 4 C2- 5V+ 2 V- 6 R1OUT 12 R 2 O U T 9 T1OUT 14 T 2 O U T 7 MAX2325 9 4 8 3 7 2 6 1 10u C26 10u C27 10u VCC C28 10u C29 10u RST 9 XTAL2 18XTAL1 19 PSEN 29 ALE/PROG 30 EA/VPP 31 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 P2.7/A15 28 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.5/T1 15 P3.6/WR 16 P3.7/RD 17 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 AT89C51 11.059MHz 33p C31 VCC 1 2 74LS04 3 4 74LS04 5 6 74LS04 9 8 74LS04 11 10 74LS04 13 12 74LS04 1 2 74LS04 VCC 3 4 74LS04 1 2 3 4 5 6 7 8 9 330 LED LED LED LED LED LED LED LED Hình 3.27 – Kết nối với DAQ P h ạ m H ù n g K im K h á n h T ra n g 2 0 T à i liệu L ậ p trìn h h ệ th ố n g C h ư ơ n g 4 Tài liệu DAQ Chương 3 Trang 67 GV: Phạm Hùng Kim Khánh Chương trình nguồn cho vi điều khiển AT89C51: MOV TMOD,#20h MOV SCON,#52h ; Truyền 8 bit dữ liệu, no parity MOV TH1,#(-3) ; Tốc độ truyền 9600 bps MOV TL1,#(-3) SETB TR1 Receive: JNB RI,Transmit ; Có dữ liệu hay không CLR RI MOV A,SBUF ; Nếu có thì xuất ra LED MOV P1,A Transmit: JNB TI,Receive ; Đã truyền xong chưa CLR TI MOV A,P2 ; Nếu xong thì truyền trạng thái MOV SBUF,A ; của công tăc SW DIP-8 JMP Receive Giao diện của chương trình trên máy tính: Hình 3.28 – Chương trình giao tiếp với vi điều khiển Chương trình nguồn: VERSION 5.00 Object = "{648A5603-2C6E-101B-82B6- 000000000014}#1.1#0"; "MSCOMM32.OCX" Begin VB.Form Form1 Caption = "Microcontroller Interface Example" ClientHeight = 4665 Tài liệu DAQ Chương 3 Trang 68 GV: Phạm Hùng Kim Khánh ClientLeft = 60 ClientTop = 345 ClientWidth = 4020 LinkTopic = "Form1" ScaleHeight = 4665 ScaleWidth = 4020 StartUpPosition = 3 'Windows Default Begin VB.CheckBox chkSW Height = 375 Index = 7 Left = 1800 TabIndex = 17 Top = 3480 Width = 1575 End Begin VB.CheckBox chkSW Height = 375 Index = 6 Left = 1800 TabIndex = 16 Top = 3000 Width = 1575 End Begin VB.CheckBox chkSW Height = 375 Index = 5 Left = 1800 TabIndex = 15 Top = 2520 Width = 1575 End Begin VB.CheckBox chkSW Height = 375 Index = 4 Left = 1800 TabIndex = 14 Top = 2040 Width = 1575 End Begin VB.CheckBox chkSW Height = 375 Index = 3 Left = 1800 TabIndex = 13 Top = 1560 Width = 1575 End Begin VB.CheckBox chkSW Height = 375 Tài liệu DAQ Chương 3 Trang 69 GV: Phạm Hùng Kim Khánh Index = 2 Left = 1800 TabIndex = 12 Top = 1080 Width = 1575 End Begin VB.CheckBox chkSW Height = 375 Index = 1 Left = 1800 TabIndex = 11 Top = 600 Width = 1575 End Begin VB.CheckBox chkSW Height = 375 Index = 0 Left = 1800 TabIndex = 10 Top = 120 Width = 1575 End Begin VB.CommandButton cmdExit Caption = "Exit" Height = 495 Left = 1680 TabIndex = 9 Top = 3960 Width = 975 End Begin MSCommLib.MSComm MSComm1 Left = 3360 Top = 3960 _ExtentX = 1005 _ExtentY = 1005 _Version = 393216 DTREnable = -1 'True RThreshold = 1 End Begin VB.CommandButton cmdSend Caption = "Send" Height = 495 Left = 240 TabIndex = 8 Top = 3960 Width = 1095 End Begin VB.Label lblLED BackStyle = 0 'Transparent Tài liệu DAQ Chương 3 Trang 70 GV: Phạm Hùng Kim Khánh Caption = "LED7" Height = 375 Index = 7 Left = 240 TabIndex = 7 Top = 3480 Width = 1095 End Begin VB.Label lblLED BackStyle = 0 'Transparent Caption = "LED6" Height = 375 Index = 6 Left = 240 TabIndex = 6 Top = 3000 Width = 975 End Begin VB.Label lblLED BackStyle = 0 'Transparent Caption = "LED5" Height = 375 Index = 5 Left = 240 TabIndex = 5 Top = 2520 Width = 975 End Begin VB.Label lblLED BackStyle = 0 'Transparent Caption = "LED4" Height = 375 Index = 4 Left = 240 TabIndex = 4 Top = 2040 Width = 975 End Begin VB.Label lblLED BackStyle = 0 'Transparent Caption = "LED3" Height = 375 Index = 3 Left = 240 TabIndex = 3 Top = 1560 Width = 975 End Begin VB.Label lblLED Tài liệu DAQ Chương 3 Trang 71 GV: Phạm Hùng Kim Khánh BackStyle = 0 'Transparent Caption = "LED2" Height = 375 Index = 2 Left = 240 TabIndex = 2 Top = 1080 Width = 975 End Begin VB.Label lblLED BackStyle = 0 'Transparent Caption = "LED1" Height = 375 Index = 1 Left = 240 TabIndex = 1 Top = 600 Width = 975 End Begin VB.Label lblLED BackStyle = 0 'Transparent Caption = "LED0" Height = 375 Index = 0 Left = 240 TabIndex = 0 Top = 120 Width = 975 End Begin VB.Shape shpLED BorderColor = &H000000FF& FillColor = &H000000FF& FillStyle = 0 'Solid Height = 375 Index = 7 Left = 840 Shape = 3 'Circle Top = 3480 Width = 375 End Begin VB.Shape shpLED BorderColor = &H000000FF& FillColor = &H000000FF& FillStyle = 0 'Solid Height = 375 Index = 6 Left = 840 Shape = 3 'Circle Top = 3000 Tài liệu DAQ Chương 3 Trang 72 GV: Phạm Hùng Kim Khánh Width = 375 End Begin VB.Shape shpLED BorderColor = &H000000FF& FillColor = &H000000FF& FillStyle = 0 'Solid Height = 375 Index = 5 Left = 840 Shape = 3 'Circle Top = 2520 Width = 375 End Begin VB.Shape shpLED BorderColor = &H000000FF& FillColor = &H000000FF& FillStyle = 0 'Solid Height = 375 Index = 4 Left = 840 Shape = 3 'Circle Top = 2040 Width = 375 End Begin VB.Shape shpLED BorderColor = &H000000FF& FillColor = &H000000FF& FillStyle = 0 'Solid Height = 375 Index = 3 Left = 840 Shape = 3 'Circle Top = 1560 Width = 375 End Begin VB.Shape shpLED BorderColor = &H000000FF& FillColor = &H000000FF& FillStyle = 0 'Solid Height = 375 Index = 2 Left = 840 Shape = 3 'Circle Top = 1080 Width = 375 End Begin VB.Shape shpLED BorderColor = &H000000FF& FillColor = &H000000FF& Tài liệu DAQ Chương 3 Trang 73 GV: Phạm Hùng Kim Khánh FillStyle = 0 'Solid Height = 375 Index = 1 Left = 840 Shape = 3 'Circle Top = 600 Width = 375 End Begin VB.Shape shpLED BorderColor = &H000000FF& FillColor = &H000000FF& FillStyle = 0 'Solid Height = 375 Index = 0 Left = 840 Shape = 3 'Circle Top = 120 Width = 375 End End Attribute VB_Name = "Form1" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Private Sub cmdExit_Click() If MSComm1.PortOpen Then MSComm1.PortOpen = False End If End End Sub Private Sub cmdSend_Click() Dim t As Integer Dim i As Integer t = 0 For i = 0 To 7 t = t + (2 ^ i) * (1 - shpLED(i).FillStyle) Next i MSComm1.Output = Chr(t) End Sub Private Sub Form_Load() MSComm1.Settings = "9600,N,8,1" MSComm1.CommPort = 1 MSComm1.PortOpen = True End Sub Private Sub lblLED_Click(Index As Integer) Tài liệu DAQ Chương 3 Trang 74 GV: Phạm Hùng Kim Khánh shpLED(Index).FillStyle = 1 - shpLED(Index).FillStyle End Sub Private Sub MSComm1_OnComm() Dim t As String Dim n As Integer Dim i As Integer If MSComm1.CommEvent = comEvReceive Then n = Asc(MSComm1.Input) For i = 0 To 7 chkSW(i).Value = n Mod 2 If chkSW(i).Value = 0 Then chkSW(i).Caption = "Switch " & Str(i) & " off" Else chkSW(i).Caption = "Switch " & Str(i) & " on" End If n = Fix(n / 2) Next i End If End Sub 5.5. Chuẩn RS-485 Chuẩn RS232 dùng đường truyền không cân bằng vì các tín hiệu lấy chuẩn là GND chung nên dễ bị ảnh hưởng của nhiễu làm tốc độ và khoảng cách truyền bị giới hạn. Khi muốn tăng khoảng cách truyền, môt phương pháp có thể sử dụng là dùng 2 dây truyền vi sai vì lúc này 2 dây có cùng đặc tính nên sẽ loại trừ được nhiễu chung. Hai chuẩn được sử dụng là RS422 và RS485 nhưng thông thường sử dụng RS485. Điện áp vi sai yêu cầu phải lớn hơn 200mV. Nếu VAB > 200 mV thì tương ứng với logic 1 và VAB < -200 mV tương ứng với logic 0. Chuẩn RS485 sử dụng hai điện trở kết thúc là 120  tại hai đầu xa nhất của đường truyền và sử dụng dây xoắn đôi. Hình 3.29 – Chuẩn giao tiếp RS422 Tài liệu DAQ Chương 3 Trang 75 GV: Phạm Hùng Kim Khánh Hình 3.30 – Chuẩn giao tiếp RS485 5.5.1. Các đặc tính kỹ thuật: Đặc tính RS422 RS485 Số thiết bị truyền 1 32 Số thiết bị nhận 10 32 Chiều dài cable cực đại 1200m 1200m Tốc độ truyền cực đại (từ 12 – 1200m) 10Mps – 100Kbps 10Mps – 100Kbps Điện áp cực đại tại ngõ ra thiết bị truyền -0.25V  6V -7V  12V Điện áp ngõ vào thiết bị nhận -10V  10V -7V  12V 5.5.2. Các chế độ truyền: Bán song công Tài liệu DAQ Chương 3 Trang 76 GV: Phạm Hùng Kim Khánh Song công: 5.5.3. So sánh giữa RS232 và RS485: RS232 RS485 Chế độ hoạt động Đơn Vi sai Tổng số bộ điều khiển và thu trên 1 dây 1 bộ điều khiển (driver) + 1 bộ thu (receiver) 32bộ điều khiển (driver) + 32 bộ thu (receiver) Chiều dài cáp tối đa 15m 1200m Tốc độ tối đa 20 Kbps/15m 10Mbps/12m 1Mbps/120m 100Kbps/1.2km Mức tín hiệu ngõ ra có tải  5   15V  1.5V Mức tín hiệu ngõ ra không tải  25V  6V Trở kháng của bộ điều khiển 3 K - 7 K 54  Phạm vi điện áp bộ thu  15V -7V – 12V Độ nhạy bộ thu  3V  200 mV Trở kháng bộ thu 3 K - 7 K  12 K Đối với chuẩn RS232, khoảng cách truyền không cho phép đi xa nên khi muốn thực hiện truyền ở khoảng cách xa thì phải chuyển từ RS232 sang chuẩn RS485 để truyền đi và sau đó chuyển từ RS485 sang RS232 để máy tính có thể nhận dạng được. Sơ đồ mạch chuyển đổi từ RS232 sang RS485 và ngược lại mô tả như sau: Tài liệu DAQ Chương 3 Trang 77 GV: Phạm Hùng Kim Khánh Hình 3.31 – Chuyển đổi từ RS232 sang RS485 và ngược lại RO 1 DI 4 RE 2DE 3 A 6 B 7 MAX485 120 120 VCC 1 2 3 4 5 6 7 8 CON8 R1IN 13 R 2 IN 8 T1IN 11 T 2 IN 1 0 C+ 1 C1- 3 C2+ 4 C2- 5V+ 2 V- 6 R1OUT 12 R 2 O U T 9 T1OUT 14 T 2 O U T 7 MAX2325 9 4 8 3 7 2 6 1 DB9 10u 10u 10u VCC 10u 10u RO 1 DI 4 RE 2 DE 3 A 6 B 7 MAX485 Tài liệu DAQ Chương 4 Trang 107 GV: Phạm Hùng Kim Khánh Chương 4 TỔNG QUAN VỀ SCADA (SUPERVISORY CONTROL AND DATA ACQUISITION) 1. Giới thiệu SCADA là hệ thống cho phép người điều hành giám sát và điều khiển các quá trình được phân bố trong các nơi ở xa. Có nhiều quá trình sử dụng hệ thống SCADA như: thủy điện, các khâu xử lý và phân phối nước, khí tự nhiên, v.vCác hệ thống SCADA cho phép các nơi xa liên lạc với phương tiện điều khiển và cung cấp dữ liệu điều khiển cần thiết cho các quá trình điều khiển. Khi khoảng cách đến các nơi xa tăng thì càng khó truy cập hơn, khi đó SCADA trở thành sự chọn tốt nhất cho người điều hành để điều chỉnh và quan sát. Khoảng cách và sự ở xa là hai yếu tố chính để cài đặt các hệ thống SCADA . Các hệ thống SCADA hiện đại có nhiều đặc tính tiên tiến như: kiến trúc phân bố, cơ sở dữ liệu phân bố, giao tiếp đồ họa với người sử dụng (GUI = Graphic User Interface), các đơn vị đo lường từ xa thông minh v.v Hệ SCADA thường được dùng để chỉ tất cả các hệ thống máy tính được thiết kế để thực hiện các chức năng sau: - Thu thập dữ liệu từ các thiết bị công nghiệp hoặc các bộ cảm biến / chuyển đổi năng lượng. - Xử lý và thực hiện các phép tính trên dữ liệu thu thập được. - Hiển thị dữ liệu thu thập và dữ liệu đã xử lý. - Nhận lệnh từ người điều hành và thực hiện gởi các lệnh điều khiển đến các thiết bị. - Xử lý các lệnh điều khiển tự động hoặc bằng tay đúng lúc và tin cậy. Các hệ thống như vậy có thể được gọi bằng các tên khác trong các tình huống và các công nghệ khác như: DAC (Data Acquition and Control = Điều khiển và thu thập dữ liệu), DCS (Distributed Control Systems = Các hệ thống điều khiển phân bố), Tất cả các hệ thống này về cơ bản thực hiện cùng các chức năng. Tùy theo ứng dụng cụ thể, các đặc điểm sau dùng để phân biệt các hệ thống: - Vị trí và sự phân bố các nguồn dữ liệu công nghiệp. - Lượng dữ liệu được thu thập. - Tốc độ thu thập dữ liệu. - Mức độ tự động của các lệnh điều khiển. - Kiểu tính toán và vị trí mà tác động điều khiển được thực hiện. Hệ thống SCADA có 4 phần tử chính: người điều hành (operator), phần tử thiết bị đầu cuối chính MTU (Master Terminal Unit), truyền thông liên lạc và phần tử thiết bị đầu Tài liệu DAQ Chương 4 Trang 108 GV: Phạm Hùng Kim Khánh cuối ở xa RTU (Remote Terminal Unit). Người điều hành thực hiện điều khiển qua thông tin được mô tả trong khối hiển thị hình ảnh VDU (Video Display Unit). Phần nhập của hệ thông thường xuất phát từ người điều hành qua bàn phím của MTU. Thông tin từ các nơi ở xa được MTU giám sát và hiển thị các thông tin này cho người điều hành. MTU (Master Terminal Unit) Hình 4.1: Các phần nhập và xuất của MTU. Trung tâm của hệ thống là MTU. Nhiệm vụ của MTU là khởi động tất cả các công việc: truyền thông liên lạc, thu thập dữ liệu, lưu trữ thông tin, gửi thông tin đến các hệ thống khác, và giao tiếp với người điều hành. Sự khác biệt chính giữa MTU và RTU là MTU khởi động ảo tất cả các truyền thông bằng lập trình giữa nó và con người. Hầu hết tất cả các truyền thông được thực hiện bởi MTU. MTU cũng liên lạc với các thiết bị ngoại vi khác như: monitor, máy in hoặc các hệ thống thông tin khác. Thành phần giao tiếp cơ bản với người điều hành là monitor mà trong đó hiển thị các valve, bơm, Khi dữ liệu đến thay đổi thì màn hình được cập nhật. RTU (Remote Terminal Unit): RTU thu thập thông tin ở xa từ nhiều thiết bị nhập như các valve, bơm, báo động (alarm), đồng hồ đo (meter) Chủ yếu dữ liệu dạng analog, digital (on/off), hoặc dữ liệu xung (như đếm số vòng xung của các meter). Nhiều RTU giữ thông tin thu thập được trong bộ nhớ và đợi yêu cầu từ MTU để truyền dữ liệu. Các RTU hiện đại hơn có các máy vi tính và các PLCs có thể điều khiển trực tiếp qua địa điểm từ xa không cần định hướng của MTU. MTU Outputs to Other Devices Inputs from Operator Outputs to RTU Inputs from RTU Tài liệu DAQ Chương 4 Trang 109 GV: Phạm Hùng Kim Khánh Hình 4.2: Các phần nhập và xuất của RTU. CPU của RTU nhận luồng dữ liệu nhị phân theo giao thức truyền thông. Các giao thức có thể mở rộng như TCP/IP (Transmission Control Protocol and Internet Protocol) hoặc các giao thức riêng. Những luồng dữ liệu tổng quát chứa các thông tin được tổ chức theo mô hình 7 lớp ISO/OSI. Mô hình OSI được sử dụng để đặt tiêu chuẩn cho cách trao đổi thông tin với các giao thức, truyền thông và dữ liệu. RTU nhận thông tin của nó nhờ vào mã nhận dạng của nó trong dữ liệu truyền. Dữ liệu này được diễn dịch và CPU điều khiển tác động thích hợp tại chỗ. 2. Các đặc tính chính của hệ thống SCADA 2.1. Kiến trúc hệ thống Hiện nay các hệ SCADA thế hệ mới được xây dựng theo kiến trúc phân tán, trong đó máy chủ được phân bố trên một số bộ xử lý được nối cùng với nhau bằng mạng nội bộ (LAN). Trong đó mỗi bộ xử lý có một trách nhiệm nhất định như : thu thập và xử lý, tạo hiển thị, thiết lập báo cáo, và một số bộ xử lý dùng để dự phòng. Nhờ vào các công nghệ diện rộng (WAN), hệ thống SCADA có thể được phân tán trên một miền địa lý rộng. Hệ thống được thiết kế theo hệ thống mở và cơ cấu server - client. RTU Outputs to Field Devices Inputs from Field Devices Outputs to MTU Inputs from MTU Tài liệu DAQ Chương 4 Trang 110 GV: Phạm Hùng Kim Khánh Kiến trúc tiêu biểu của một hệ SCADA phân tán: Hình 4.3: Kiến trúc tiêu biểu của một hệ SCADA phân bố. IOS: Data Input/Output Modules HMI: Human Machine Interface Module HDC: Historical Data Collection and Storage Module GW: Gateway for inter LAN communications APPS: Application Calculations and Processing Module. 2.2. Các đặc tính chính của hệ thống Các hệ thống SCADA hiện nay có các đặc tính sau: - Đồ họa hoàn toàn trong quá trình giám sát và điều khiển. - Có hệ thống lưu trữ dữ liệu (History) và hiển thị đồ thị quá trình, có khả năng hiển thị đa tín hiệu. - Hệ thống cảnh báo và ghi nhận sự kiện (Alarm/ Event System). - Hỗ trợ các chuẩn truyền thông nối tiếp, song song và giao thức TCP/IP. - Hệ thống báo cáo, báo biểu theo chuẩn công nghiệp. - Hỗ trợ các chuẩn giao diện OPC, OLE/DB và các giao diện công nghiệp khác. - Khả năng tích hợp tín hiệu Video động. - Khả năng đồng bộ về thời gian với hệ thống cũng như giữa các Server và Client. 2.3. Đặc điểm về giao tiếp giữa người và máy SCADA trang bị các VDU (Visual Display Unit = Đơn vị hiển thị) đầy đủ đồ họa có kèm mouse, trackball, joystick và bàn phím. Các nút điều khiển nối cứng được thay thế bằng các biểu tượng trên màn hình được tác động bằng chuột hay bàn phím. Các phương tiện này giúp cho người điều hành: - Nhanh chóng hoán đổi giữa các màn hình hiển thị. - Nhanh chóng xem được chi tiết các thông tin. IOS HDC APPS GW HMI Tài liệu DAQ Chương 4 Trang 111 GV: Phạm Hùng Kim Khánh - Tạo và sửa đổi các màn hình hiển thị trực tiếp ở hệ thống. Có những hiệu ứng đặc biệt để tăng khả năng phân biệt rõ dữ liệu (ví dụ các màu khác nhau cho các lô khác nhau trong một đường ống dẫn dầu). Với các VDU hoạt động trong môi trường Windows hay X-Windows, người điều hành cũng có thể: - Xem trên cùng một VDU nhiều mảng thông tin trải ra trên nhiều màn hình hiển thị. - Trên cùng màn hình, truy cập được các dữ liệu nằm rải rác theo vùng hoặc các dữ liệu thuộc các cơ sở dữ liệu khác nhau. Do đó, những phương tiện HMI hiện đại cho phép người điều hành truy cập số lượng thông tin lớn dễ hơn và nhanh hơn. Về các RTU, không còn là những thiết bị thụ động nữa mà chúng làm nhiệm vụ thu thập và lưu giữ dữ liệu vùng. Nhiều mức xử lý dữ liệu và điều khiển được thực hiện tại các RTU. Nhiều loại thiết bị có thể được nối vào các RTU như: PLC, máy đo lưu lượng, thiết bị lấy chuẩn trong các bin hay các bồn chứa Các RTU có thể được kết nối theo kiểu phân bố hoặc kiểu phân cấp. Dữ liệu của các RTU được xử lý tại trạm chủ. Về cơ sở dữ liệu, các dữ liệu được lưu trữ không chỉ là dữ liệu đo đạc từ xa được tính toán mà còn là các thông số bảo vệ, các sự kiện, các mẫu tin cũng như các cảnh báo. Do tính chất phân bố của SCADA nên cơ sở dữ liệu cũng được phân bố. Cơ sở dữ liệu cũng có thể liên hệ với hệ thống quản trị thông tin (Managerment Information System) và hệ thống thông tin địa lý GIS (Geographic Information System). Ngoài ra, các dữ liệu có thể được bảo mật bằng các password. 3. Nguyên tắc hoạt động của hệ thống SCADA Hệ thống SCADA hoạt động dựa trên nguyên tắc lấy tín hiện từ các cơ cấu cảm biến được gắn trên các thiết bị công tác hoặc trên dây chuyền sản xuất gửi về cho máy tính. Máy tính xử lý, kiểm tra trạng thái hoạt động của hệ thống, các yêu cầu kỹ thuật của sản phẩm đã được cài sẵn trong bộ nhớ. Đồng thời, máy tính sẽ hiển thị lại những thông tin kỹ thuật của hệ thống trên màn hình, cho phép tự động giám sát và điều khiển hệ thống và phát ra tín hiệu điều khiển đến máy công tác tạo nên vòng tín hiệu kín (thực hiện chức năng giám sát và điều khiển) Việc điều khiển giám sát ở đây bao hàm hai ý nghĩa : - Con người theo dõi và điều khiển. - Máy tính giám sát và điều khiển. Đối với các hệ thống sản xuất tự động trước đây, việc kiểm tra giám sát hoàn toàn do con người đảm trách. So với máy tính, tốc độ xử lý tính toán của con người rất chậm và dễ nhầm lẫn. Việc tính toán điều khiển của máy tính sẽ tránh được những hậu quả trên. Những sai sót nhỏ, đơn giản thường xuyên gặp phải sẽ được máy tính giám sát và xử lý Tài liệu DAQ Chương 4 Trang 112 GV: Phạm Hùng Kim Khánh theo chương trình được đặt sẵn. Đối với những sự cố lớn máy tính sẽ báo cho người theo dõi biết và tạm dừng hoạt động của hệ thống để chờ quyết định của người điều hành. Vì vậy, bên cạnh khả năng hoạt động toàn hệ thống theo một chương trình định trước, hệ SCADA còn cho phép người vận hành quan sát được trạng thái làm việc của từng thiết bị tại các trạm cơ sở, đưa ra các cảnh báo, báo động khi hệ thống có sự cố và thực hiện các lệnh điều khiển can thiệp vào hoạt động của hệ thống khi có tình huống bất thường hay có sự cố 4. Chức năng và nhiệm vụ cơ bản của hệ thống SCADA 4.1. Giám sát và phân tích hoạt động sản xuất Ngay khi nhận biết được những thông ti

Các file đính kèm theo tài liệu này:

  • pdftai_lieu_tong_quan_ve_daq_data_acquisition_and_control.pdf