hệ thống thu thập dữ liệu và điều khiển ,giao diện điều khiển được viết bằng visual basic

104 793 0
hệ thống thu thập dữ liệu và điều khiển ,giao diện điều khiển được viết bằng visual basic

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

LỜI NÓI ĐẦU Đề tài thực hiện trong luận văn tốt nghiệp này là thiết kế “ Hệ thống thu thập dữ liệuđiều khiển ”. Hệ thống này sẽ thu thập dữ liệu từ các kênh chuyển đổi Analog sang Digital, điều khiển hệ thống bằng tín hiệu điện áp được xuất ra, thiết bò hiển thò là màn hình tinh thể lỏng (LCD). Hệ thống được kết nối với máy tính qua cổng nối tiếp, giao diện điều khiển được viết bằng ngôn ngữ Visual Basic. Đễ có thể hoàn thành đề tài này em xin chân thành cám ơn thầy hướng dẫn HUỲNH HỮU PHƯƠNG, toàn bộ các anh trong công ty Control nói chung phòng Điện tử nói riêng đã chỉ bảo tận tình tạo điều kiện tốt nhất cho em trong quá trình thực hiện luận văn. Ngày 10 tháng 1 năm 2002 Sinh viên Nguyễn hoàng Huy MỤC LỤC Trang I/ Chuyển đổi AD dùng ADS7841 A/ Sơ lược về ADS7841 1/ Giới thiệu 1 2/ Mô tả chân 2 -3 3/ Kỹ thuật điều khiển 3 - 12 B/ p dụng vào luận văn 1/ Kết nối phần cứng 13 2/ Phần mềm điều khiển 14 - 16 II/ Chuyển đổi DA dùng DAC7611 A/ Sơ lược về DAC7611 1/ Giới thiệu 17 -18 2/ Mô tả chân 18 - 20 3/ Hoạt động 20 - 23 B/ p dụng vào luận văn 1/ Kết nối phần cứng 23 - 24 2/ Phần mềm điều khiển 24 - 26 III/ Truyền thông nối tiếp với Visual Basic A/ Sơ lược về truyền thông nối tiếp 27 - 28 B/ Các đặc tính của MSComm 28 - 39 C/ Sự kiện OnComm 39 - 40 D/ Thông báo lỗi 40 - 41 E/ Hỏi vòng ở cổng RS-232 41 - 42 IV/ Màn hình tinh thể lỏng LCD A/ Chức năng các chân 43 - 44 B/ Nguồn cung cấp hoạt động 44 - 45 C/ Tập lệnh điều khiển 45 - 48 D/ p dụng vào luận văn 1/ Sơ đồ kết nối 48 2/ Phần mềm nạp cho 8951 49 V/ Hoạt động port nối tiếp của 8951 A/ Giới thiệu 50 - 51 B/ Thanh ghi điều khiển port nối tiếp 51 - 52 C/ Các chế độ hoạt động 52 - 56 D/ Khởi động truy xuất các thanh ghi cổng nối tiếp 57 - 58 E/ Tốc độ baud port nối tiếp 59 - 61 VI/ Hệ thống thu thập số liệu điều khiển A/ Giới thiệu 62 B/ Kết nối phần cứng phần mềm điều khiển 62 - 71 C/ Giao diện điều khiển 77 1/ Chuyển đổi AD 80 - 84 2/ Chuyển đổi DA 84 - 87 3/ Hiển thò trên LCD 87 - 89 4/ Các nút lệnh khác 90 VII/ Các hộp điều khiển ActiveX A/ Hộp điều khiển chuyển đổi AD 91 - 94 B/ Hộp điều khiển chuyển đổi DA 94 - 95 C/ Hộp điều khiển LCD 95 - 100 Sinh viên: Nguyễn Hoàng Huy CHUYỂN ĐỔI AD DÙNG ADS7841 Chuyển đổi từ Analog sang Digital (ADC) là quá trình không thể thiếu trong các hệ thống điều khiển tự động. Ngoài IC ADC0809 quen thuộc trên thò trường có rất nhiều IC thực hiện việc chuyển đổi AD, ADC0809 có một số nhược điểm là độ chính xác không cao (chuyển đổi 8 bit), thời gian chuyển đổi cao (khoảng 120 µs) giao tiếp dữ liệu dạng song song chỉ thích hợp cho các hệ thống cần độ chính xác không cao tốn nhiều chân port hoặc phải giao tiếp dữ liệu qua data bus. Trong đề tài thực hiện trong luận văn này ta thực hiện việc biến đổi AD bằng IC ADS7841 của hãng BURR-BROWN. ADS7841 có một số đặc tính nổi trội so với ADC0809 đó là độ chính xác tương đối cao (chuyển đổi 12 bit), tốc độ chuyển đổi cao có thể đạt tới tốc độ 5µs. đặc biệt là giao tiếp dữ liệu dạng nối tiếp do đó tốn ít chân port của vi xử lí (có thể chỉ cần tốn 3 chân port). Ngoài ra đối với ADS7841 ta còn có thể sử dụng ở chế độ chuyển đổi 8 bit đễ tăng tốc độ chuyển đổi dữ liệu đối với các hệ thống không cần độ chính xác cao. Trước khi áp dụng vào hệ thống ta giới thiệu sơ lược về ADS7841. A/ SƠ LƯC VỀ ADS7841 1/ GIỚI THIỆU : ADS7841 là IC chuyển đổi tín hiệu analog sang tín hiệu số 12 bit bằng giao tiếp nối tiếp do công ty BURR-BROWN sản xuất . ADS7841 gồm 4 kênh chuyển đổi cho phép ta lập trình đễ chọn chuyển đổi AD 12 bit hoặc 8 bit tùy theo nhu cầu sử dụng. Công suất tiêu thụ khoảng 2mw , nguồn cung cấp đơn V CC =+5V , áp chuẩn V REF được cung cấp trong khoảng từ 100mV đến V CC . Tầm điện áp ngõ vào cần đo trong khoảng từ 0V đến V REF . 1 Sinh viên: Nguyễn Hoàng Huy Sơ đồ chân của ADS7841 Tiêu thụ năng lượng thấp , làm việc ở tốc độ cao có khả năng phân kênh dễ dàng nên ADS7841 được dùng rất hữu dụng trong các hệ thống đo lường điều khiển công nghiệp , kiểm tra đo lường các nguồn năng lượng với độ chính xác cao . Ngoài ra do sử dụng giao tiếp dữ liệu dạng nối tiếp nên ADS7841 thuận lợi trong việc trao đổi dữ liệu từ xa . ADS7841 bao gồm 16 chân có sơ đồ chân được vẽ ở hình trên . Nhà sản xuất bảo đảm hoạt động tốt trong tầm nhiệt độ môi trường từ-40 0 C đến +85 0 C . 2/MÔ TẢ CHÂN : _ 1- +VCC : Chân cung cấp nguồn từ 2.7V đến 5V _ 2- CH0 : Ngõ vào kênh 0 _ 3- CH1 : Ngõ vào kênh 1 _ 4- CH2 : Ngõ vào kênh 2 _ 5- CH3 : Ngõ vào kênh 3 _ 6- COM : Ground của ngõ vào analog , nối với GND ở chế độ đơn cực , ở chế độ visai nối với cực “−” _ 7- SHDN : Khi tích cực (mức 0) IC sẽ ở chế độ nghó , tiêu thụ rất ít năng lượng _ 8- V REF : Ngõ vào áp chuẩn _ 9- +VCC : Chân cung cấp nguồn từ 2.7V đến 5V 2 Sinh viên: Nguyễn Hoàng Huy _ 10- GND : Ground _ 11- MODE : Chọn chế độ chuyển đổi , khi ở mức thấp luôn là chuyển đổi 12 bit , khi ở mức cao chế độ chuyển đổi được quyết đònh bởi bit mode trong byte điều khiển (sẽ nói ở phần sau). _ 12- DOUT : Ngõ ra của dữ liệu nối tiếp , dữ liệu được dòch ra dựa trên xung clock DCLK. Ngõ ra này sẽ ở dạng tổng trở cao khi chân “CS” ở mức 1. _ 13- BUSY : Ngõ ra này sẽ ở dạng tổng trở cao khi chân “CS” ở mức 1. _ 14- DIN : Ngõ vào dữ liệu nối tiếp , dữ liệu được đưa vào dựa trên xung clock ở chân DCLK . _ 15- CS : Tín hiệu chọn chip _ 16- DCLK : Ngõ vào xung clock, xung clock này đễ nhận biết dữ liệu được đưa vào (chân DIN) hoặc đưa ra(chân DOUT). 3/ KỸ THUẬT ĐIỀU KHIỂN : 3 Sinh viên: Nguyễn Hoàng Huy Hình trên là một cách kết nối phần cứng cơ bản của ADS7841. Trong trường hợp này các kênh chuyển đổi luôn ở dạng đơn cực nên ta nối thẳng chân “COM” với “GND”. ADS7841 được cung cấp nguồn đơn cực +5V, tụ 0.1µF được dùng đễ lọc nguồn cung cấp . Chân “SHDN” luôn được đặt ở mức 1 (nối với V CC ). Áp chuẩn cung cấp cho chân V REF lấy bằng nguồn V CC . Chân “MODE” được đặt ở mức 0 đễ chọn chế độ chuyển đổi 12 bit . Chân “BUSY” khôg cần sử dụng tới , các chân “DCLK”, “CS”, “DIN”, “DOUT” được nối tới các chân của vi xử lí . ADS7841 cần được cung cấp xung clock từ bên ngoài thông qua chân “DCLK”, một áp chuẩn từ bên ngoài vào chân V REF , áp chuẩn này có thểø dao động từ +100mV đến +V CC , nguồn cung cấp V CC từ +2.7V tới +5.25V . Giá trò áp chuẩn sẽ trực tiếp đặt tầm ngõ vào của bộ biến đổi . Dòng điện chuẩn ngõ vào phụ thuộc vào tốc độ chuyển đổi của ADS7841 . Ngõ vào analog của tín hiệu cần chuyển đổi có thể ở dạng đơn cực hoặc vi sai được đưa vào một trong bốn kênh (CH0, CH1, CH2, CH3). Điện áp này phải nằm trong tầm từ điện áp chuẩn V REF đến áp của chân “COM”(trong trường hợp này là đất) hoặc trong trường hợp áp vi sai ta sử dụng hai trong bốn kênh (CH0, CH1, CH2, CH3). • NGÕ VÀO ANALOG: 4 A2 − A0 (Trường hợp : 001 B ) CH0 CH1 CH2 CH3 COM SGL/DIF (Trường hợp mức cao) +IN BỘ BIẾN ĐỔI -IN Sinh viên: Nguyễn Hoàng Huy Hình trên là sơ đồ khối của khối phân kênh ngõ vào của ADS7841. Ngõ vào của bộ biến đổi là áp của một trong bốn kênh so với chân “COM” hoặc hai trong bốn kênh này . Hai bảng sau sẽ chỉ mối quan hệ giữa các bit A2, A1, A0 bit điều khiển SGL/DIF trong việc phân kênh ngõ vào analog . Điện áp đơn cực (trường hợp bit SGL/DIF ở mức cao) A2 A1 A0 CH0 CH1 CH2 CH3 COM 0 0 1 +IN -IN 1 0 1 +IN -IN 0 1 0 +IN -IN 1 1 0 +IN -IN Điện áp vi sai (trường hợp bit SGL/DIF ở mức thấp) A2 A1 A0 CH0 CH1 CH2 CH3 COM 0 0 1 +IN -IN 1 0 1 -IN +IN 0 1 0 +IN -IN 1 1 0 -IN +IN Những bit điều khiển này được đưa tuần tự thông qua chân “DIN”. Ta sẽ thấy giao tiếp nối tiếp này một cách chi tiết hơn ở phần sau. Khi bộ biến đổi nhập vào chế độ làm việc , sai lệch điện áp giữa chân +IN –IN sẽ được bảo vệ bởi dãy tụ điện có sẵn trong ADS7841. Điện áp ở ngõ vào –IN được giới hạn trong khoản từ –0.2V đến 1.25V. Ngõ vào +IN có tầm từ –0.2V đến V CC + 0.2V . Dòng điện ngõ vào của tín hiệu analog phụ thuộc tốc độ chuyển đổi của ADS7841. Suốt quá trình lấy mẫu nguồn phải nạp điện cho các tụ điện lấy mẫu nằm trong ADS7841 (khoảng 25pF), sau khi tụ điện này được nạp điện đầy đủ nó sẽ giải phóng ra một dòng điện ở ngõ vào. Tốc độ nạp từ nguồn analog tới bộ chuyển đổi thì phụ thuộc vào tốc độ chuyển đổi. • NGÕ VÀO ÁP CHUẨN : 5 Sinh viên: Nguyễn Hoàng Huy Nguồn chuẩn bên ngoài đưa vào sẽ đặt tầm cho ngõ vào cần chuyển đổi . ADS7841 sẽ điều khiển điện áp chuẩn này trong tầm từ 100mV đến +V CC . Phải giữ sai lệch điện áp analog của 2 chân ngõ vào cần chuyển đổi +IN –IN trong khoảng cho phép . Ví dụ như trong chế độ đơn cực với điện áp chuẩn là 1.25V , với chân “COM” được nối đất thì kênh ngõ vào được chọn ( CH0, CH1, CH2, CH3 ) phải nằm trong tầm từ 0V đến 1.25V . Nếu chân “COM”được kết nối với 0.5V thì tầm áp vào của kênh được chọn sẽ từ 0.5V đến 1.75V. Có một vài vấn đề về cách đònh chuẩn áp ngõ vào. Khi áp chuẩn được cung cấp không phải là ước số của 4096 ( 2 12 ) thì với cùng lượng điện áp ngõ vào analog cần đo , giá trò của ngõ ra (dạng số) sẽ bò giảm xuống . Điều này rất thường xảy ra ở bit có trọng số thấp nhất (LSB). Do đó khi sử dụng áp chuẩn là những con số này ta phải bù lại lượng đã mất đi. Ví dụ như khi sử dung áp chuẩn là 2.5V thì ta phải bù lại 2LSBs ( tức phải cộng 2 vào giá trò (dạng số) ngõ ra của bộ biến đổi. Khi sử dung áp chuẩn là 0.5V thì ta phải bù lại 10LSBs. Trong mỗi trường hợp này giá trò bù lại khoảng 1.22mV. Ở những trường hợp không cần thiết phải dùng áp chuẩn nhỏ ta nên sử dụng áp chuẩn là 4.095mV, điều này sẽ làm giảm sai số của quá trình chuyển đổi đồng thời giúp ta dễ dàng tính được giá trò áp ngõ vào cần đo (1 LSB bằng 1mV). Tương tự như trên thì nhiễu của ngõ ra sẽ tăng khi giá trò của một LSB thấp. Với điện áp chuẩn là 100 mV thì giá trò của mỗi LSB sẽ là 24µV. Đây là mức thấp so với các loại nhiễu có trong thiết bò. Kết quả là ngõ ra (dạng số) sẽ không ổn đònh sẽ thay đổi xung quanh một giá trò chính bằng một số LSBs. Với áp chuẩn thấp ta cần phải mắc một tụ bypass đễ lọc nguồn , áp chuẩn cung cấp phải ít nhiễu, tín hiệu ngõ vào cần đo phải ít nhiễu. Điện áp chuẩn đưa vào chân V REF sẽ không được đệm mà trực tiếp lái các tụ điện có chức năng biến đổi AD của ADS7841, cụ thể là dòng điện đi vào là 13µA ứng với áp chuẩn 2.5V. Dòng chuẩn này sẽ trực tiếp làm giảm tốc độ chuyển đổi lẫn điện áp chuẩn. 6 Sinh viên: Nguyễn Hoàng Huy • XỬ LÍ GIAO TIẾP SỐ t ACQ CS 1 8 1 8 1 8 DCLK 1 2 3 4 5 6 7 8 DIN BUSY 1110 9 8 7 6 5 4 3 2 1 0 (MSB) (LSB) DOUT Giản đồ thời gian của một sự chuyển đổi trong 24 chu kỳ xung clock Hình trên chỉ ra cách điều khiển cơ bản của việc xử lí số của ADS7841. Giản đồ trên mô phỏng nguồn của tín hiệu số là các chân Port của một vi điều khiển hoặc một bộ xử lí tín hiệu số với giao tiếp nối tiếp cơ bản ( chú ý rằng tín hiệu số đi vào không được vượt quá 5.5V). Trong mỗi lần giao tiếp giữa vi xử lí bộ điều khiển bao gồm tám chu kỳ xung clock. Một chuyển đổi được hoàn tất có thể bao gồm ba lần giao tiếp nối tiếp , trong tổng 24 chu kỳ xung clock trên ngõ vào DCLK. Tám xung clock đầu tiên được sử dụng đễ cung cấp byte điều khiển được đưa vào ở chân DIN. Khi bộ chuyển đổi có đủ thông tin cho quá trình chuyển đổi sắp tới đễ đặt kênh ngõ vào , chế độ chuyển đổi. Sau khi byte điều khiển được hoàn thành thì ở 12 xung clock kế tiếp sẽ là kết quả chuyển đổi analog sang digital, xung clock thứ 13 cho bit cuối cùng của kết quả chuyển đổi . Ba xung clock kế tiếp cần thiết đễ hoàn thành byte cuối 7 [...]... trong 2 bộ đệm Điều này có nghóa là dữ liệu mới có thể được nhập vào DAC mà không có bò chèn lên dữ lệu cũ điện áp ra của sự chuyển đổi Tại thời điểm sau khi dữ liệu được nhập vào thanh ghi dòch , dữ liệu này có thể được đưa vào thanh ghi DAC Quá trình chuyển đổi này sẽ hoàn tất khi chân LD được chuyển từ mức cao sang mức thấp (1 sang 0) Nếu dữ liệu mới được dòch vào thanh ghi dòch trong khi LD ở... phần có thể được bổ sung thêm vào Hộp công cụ Microsoft Comm của Visual Basic là một trong nhiều công cụ có thể được bổ sung vào đễ tham gia vào các ứng dụng chuyển nhận dữ liệu qua cổng nối tiếp Như vậy ngoài việc sử dụng các tệp DLL, trong Visual Basic còn có sẵn các hộp điều khiển khác, MSComm là một trong các hộp điều khiển đó Bản thân Visual Basic có rất nhiều hộp điều khiển mà ta chỉ gọi ra khi... khả năng đễ điều khiển việc trao đổi dữ liệu đó là điều khiển sự kiện hỏi vòng • Điều khiển sự kiện : Phương pháp điều khiển sự kiện là phương pháp tốt nhất được sử giải phóng máy tính đễ làm những công việc khác , tương tự như khái niệm ngắt trong vi xử lí 8951 Ví dụ như sự kiện Oncomm cho phép ta biết được khi nào có một kí tự được gửi tới trong quá trình điều khiển việc trao đổi dữ liệu nối tiếp,... bao gồm dòng điện số dòng điện analog đều được đổ về chân này Do đó chân GND nên được kết nối trực tiếp đến ground của analog Điện áp cung cấp tới V DD phải được điều chỉnh tốt ít nhiễu DAC7611 được sử dụng trong nhiều lónh vực như : _ Điều khiển quá trình _ Các hệ thống thu thập dữ liệu _ Điều khiển các hệ thống tùy động vòng kín 2/ MÔ TẢ CHÂN : - 1 2 3 4 VDD CS CLK SDI : : : : - 5 LD :... TIẾP VỚI VISUAL BASIC A/ SƠ LƯC VỀ TRUYỀN THÔNG NỐI TIẾP Trong phần này ta sẽ tìm hiểu về cách thức truyền nhận dữ liệu từ máy tính với vi xử lí 8951 thông qua cổng COM ( dữ liệu dạng nối tiếp) bằng ngôn ngữ Visual Basic Bình thường khi cho chạy phần mềm Visual Basic ta chỉ thấy một số thành phần quan thu c trên thanh công cụ (toolbar) Nhưng Visual Basic còn cho phép nhiều thành phần có thể được bổ... cung cấp Tín hiệu chọn chip Xung clock đễ trao đổi dữ liệu Ngõ vào của dữ liệu nối tiếp (12 bit) Dữ liệu được đưa vào thông qua xung clock CLK Đọc dữ liệu từ thanh ghi nội Dac Thanh ghi Dac sẽ được chuyển đổi LD ở mức thấp (trong trường hợp CS ở mức thấp Xung xóa thanh ghi Dac , khi CLR ở mức thấp thanh ghi DAC được đặt giá trò 000H, điện áp ngõ ra bằng 0V Đất Điện áp chuyển đổi ngõ ra , tầm điện áp... luôn được đặt ở mức một Dữ liệu được đònh dạng ở hệ nhò phân bit đầu tiên là bit có trọng số lớn nhất (MSB) Tầm điện áp ra từ 0V đến 4.095V, đây là biến đổi DA 12 bit nên độ phân giải sẽ là 1mv (212 = 4095) Mã nhò phân ngõ vào Điện áp ngõ ra (V) FFFH + 4.095 801H +2.049 800H +2.048 7FFH +2.047 000H 0 Bảng chuyển đổi dữ liệu của DAC 7611 Dữ liệu số đưa vào trong DAC7611 được chứa trong 2 bộ đệm Điều. .. 0 Cú pháp của câu lệnh này là: MSComm1.InBufferCount = [count] Kiểu dữ liệu của đặc tính này là số nguyên (Integer) 5/ Xuất dữ liệu Có ba đặc tính chính được sử dụng đễ viết dữ liệu vào bộ đệm truyền (tức truyền dữ liệu ra ngoài qua chân TXD) là Output , OutBufferCount OutBufferSize • Output Đặc tính Output sẽ viết một xâu kí tự vào bộ đệm truyền Cú pháp của câu lệnh này là: MSComm1.Output = [Outstring]... sẽ được bộ chuyển đổi bỏ qua • BYTE ĐIỀU KHIỂN: Phần trên ta đã biết việc chọn các thông số cho bộ chuyển đổi được thông qua byte điều khiển, ta sẽ xem xét chi tiết về các chức năng của từng bit trong byte điều khiển này Bit đầu tiên là ‘S’ bit (start bit) phải luôn ở mức cao báo hiệu cho sự bắt đầu của byte điều khiển ADS7841 sẽ bỏ qua những giá trò ngõ vào trên chân “DIN“ cho đến khi bit ‘S’ được. .. bit được dòch vào Đễ ngăn ngừa điều này chân LD phải được trả về mức cao trong khi ta dòch dữ liệu mới vào Ở bất kỳ thời điểm nào giá trò của thanh ghi DAC đều có thể được đặt giá trò 000H (điện áp ra bằng 0) bằng việc cho chân CLR xuống mức thấp Thanh ghi DAC sẽ duy trì giá trò này cho đến khi chân CLR trở lại mức cao chân LD phải ở mức thấp đễ cho phép giá trò của thanh ghi dòch được chuyển vào . là thiết kế “ Hệ thống thu thập dữ liệu và điều khiển ”. Hệ thống này sẽ thu thập dữ liệu từ các kênh chuyển đổi Analog sang Digital, điều khiển hệ thống bằng tín hiệu điện áp được xuất ra,. Ngõ vào dữ liệu nối tiếp , dữ liệu được đưa vào dựa trên xung clock ở chân DCLK . _ 15- CS : Tín hiệu chọn chip _ 16- DCLK : Ngõ vào xung clock, xung clock này đễ nhận biết dữ liệu được đưa vào. hiển thò là màn hình tinh thể lỏng (LCD). Hệ thống được kết nối với máy tính qua cổng nối tiếp, giao diện điều khiển được viết bằng ngôn ngữ Visual Basic. Đễ có thể hoàn thành đề tài này em

Ngày đăng: 28/04/2014, 13:34

Từ khóa liên quan

Mục lục

  • CLR CS

  • A 21H

  • RLC A

    • DIN C

    • Vdd

      • Xung nhòp tốc độ baud

      • Biến đổi AD

      • Vi xử lí

      • Máy

        • LCALL KHAIBAOPORT

        • LCALL NUTNHAN

          • LCALL THU

          • B A

            • LCALL THU

            • LCALL DAC

            • LCALL THU

            • R1 A

              • A B

              • DELAY 100ms

              • DELAY 100ms

              • CLR C

              • SETB C

              • RLC C

                • Giản đồ thời gian của một sự chuyển đổi trong 24 chu kỳ xung clock

                • Thứ tự của những bit điều khiển trong byte điều khiển

                  • tCH 150 ns

                  • Giản đồ thời gian chi tiết

                    • CS

                    • CHUYỂN ĐỔI DA DÙNG DAC7611

                      • A/ SƠ LƯC VỀ DAC7611

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

  • Đang cập nhật ...

Tài liệu liên quan