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)
87 trang |
Chia sẻ: huongnhu95 | Lượt xem: 400 | Lượt tải: 0
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:
- tai_lieu_tong_quan_ve_daq_data_acquisition_and_control.pdf