ứng dụng Labview để thu thập tín hiệu từ cảm biến

16 1.3K 5
ứng dụng Labview để thu thập tín hiệu từ cảm biến

Đ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

nhatoiodanang@gmail.com LabVIEW COM 1.Đặt vấn đề Điều khiển là quá trình thu thập thông tin, xữ lý thông tin và tác động lên hệ thống để đạt được mục đích. Như vậy quá trình thu thập thông tin quyết định đến việc điều khiển đối tượng, thông tin trên hệ thống điều khiển nhiên liệu điện tử được xác định qua tín hiệu tiền định từ các cảm biến như VTG,OXY,n, vv. Việc ứng dụng Labview để thu thập tín hiệu từ cảm biến giúp người điều khiển có cái nhìn trực quan về hệ thống, phát hiện những tín hiệu bất thường trong việc điều khiển từ đó đưa ra hướng điều khiển. 2. Cơ sở lý thuyết về cảm biến và tín hiệu cảm biến và trên động cơ đốt trong 2.1. Cảm biến trên động cơ đốt trong Cảm biến là thiết bị dùng để cảm nhận sự biến đối của đại lượng vật lí và đại lượng không có tính điện thành các đại lượng điện có thể đo và xữ lý. Cảm biến sử dụng trên động cơ đốt trong có nhiệm vụ thu thập các tín hiệu về trạng thái các thông số trong động cơ như cảm biến tốc độ trục khuỷu cho biết số vòng quay của trục khuỷu trên một đơn vị thời gian, cảm biến oxy xác định trạng thái hỗn hợp nhiên liệu sau khi đốt cháy, cảm biến vị trí ga cho biết phần trăm tải khi chạy trên đường. Để thu thập tín hiệu từ cảm biến ta cần xác định dạng tín hiệu của cảm biến Các chỉ tiêu đánh giá cảm biến trên động cơ đốt trong • Dải đo: Chênh lệch giữa giá trị lớn nhất và giá trị nhỏ nhất của tham số cần đo. • Độ phân giải: Thay đổi nhỏ nhất mà cảm biến có thể phân biệt được. • Độ chính xác: Sai khác giữa giá trị đo được và giá trị thực. • Tính chính xác: Khả năng lặp lại kết quả đo với độ chính xác cho trước. • Độ nhạy: Là tỷ số của thay đổi đầu ra trên một đơn vị thay đổi của đầu vào. • Thời gian đáp ứng: Độ trễ giữa đầu vào và đầu ra. • Nhiệt độ hoạt động: Khoảng nhiệt độ mà tại đó cảm biến hoạt động được. • Vùng chết: Dải đầu vào mà trong dải đó sẽ không có đầu ra. 2.2. Tín hiệu từ cảm biến động cơ đốt trong Tín hiệu là biểu diễn của một đại lượng vật lý chứa đựng tham số thông tin và truyền dẫn được. nhatoiodanang@gmail.com Tín hiệu thường được biểu diễn theo miền thời gian hoặc theo miền tần số. Đối với những tín hiệu có sự thay đổi tuyến tính, hoặc phi tuyến trong điều khiển như tín hiệu từ cảm biến vị trí ga, cảm biến nhiệt độ nước làm mát thì thường biểu diễn trên miền thời gian. Với tín hiệu tuần hoàn như cảm biến kích nổ, cảm biến tốc độ thì được biểu diễn trong miền tần số Hình 2.1 Biểu diễn tín hiệu trong miền thời gian và tần số Cảm biến động cơ đốt trong cho ra hầu hết là tín hiệu tiền định ( dạng tín hiệu xác định trước). Việc khảo sát các tín hiệu từ cảm biến giúp ta xác định miền làm việc của tín hiệu các đường đặc tính là cơ sỡ cho việc thay thế các cảm biến, củng như thiết kế các bộ lọc (bộ lọc thông thấp, bộ lọc dãi, bộ lọc thông cao), các mạch khuếch đại tín hiệu để phù hợp với chuẩn đầu vào ECU. 3. Thiết kế Card giao tiếp với Labview qua chuẩn RS232 để thu thập tín hiệu 3.1. Giao thức UART và cổng RS232 a) Giao thức UART UART (Universal Asynchronous Receiver/Transmitter) là vi mạch điện tử được sử dụng rộng rãi cho việc truyền dữ liệu bits nối tiếp cũng như chuyển đổi song song/nối tiếp giữa đường truyền và bus máy tính. Việc truyền tải được thực hiện theo từng kí tự 7 hoặc 8 bits, được bổ sung hai bít dấu đầu cuối và một bít kiễm tra lỗi chẵn lẽ (parity bit) Start 0 1 2 3 4 5 6 7 P Stop 0 LSB MSB 1 Bit khởi đầu (Start bit) bao giờ cũng là 0 và bits kết thúc (Stop bit) bao giờ cũng là 1. Các bit trong một kí tự được được truyền theo thứ tự từ bit thấp (LSB) tới bit cao (MSB). Bit P (parity) dùng để kiểm tra chẵn lẽ. b) Cổng RS232 Là một chuẩn phát triển bởi Electronic Industries Asiociation (EIA) và các tổ chức liên quan khác chỉ ra giao diện nối tiếp giữa thiết bị đầu cuối dữ liệu (DTE) và thiết bị truyền tin dữ liệu (DCE). nhatoiodanang@gmail.com Hình 3.1 Sơ đồ chân DB-9 Số chân Mô tả 1 Data carrier detect (DCD) Tránh tín hiệu mạng dữ liệu 2 Received data (RxD) Dữ liệu được nhận 3 Transmitted data (TxD) D ữ liệu đ ư ợc gửi 4 Data terminal ready (DTR) Đầu dữ liệu sẵn sàng 5 Signal ground (GND) Đất của tín hiệu 6 Data set ready (DSR) Dữ liệu sẵn sàng 7 Request to send (RTS) Yều cầu gửi 8 Clear to s end (CTS) Xóa đ ể gửi 9 Ring indicator (RL) Báo chuông 3.2 Giới thiệu về Labview và tính năng giao tiếp qua RS232 a) Giới thiệu về Labview Giao diện LabView và mã lập trình Việc lập trình trên Labview chỉ đơn giản là các biểu tượng thay vì các dòng văn bản để tạo các ứng dụng.Trong LabView việc xây dựng giao diện điều khiển củng như thu thập tín hiệu rất đơn gian do được hổ trở các thanh công cụ đồ họa mạnh, các hàm tính toán trong LabView được chuẩn hóa cao Tính năng giao tiếp giữa LabView với thiết bị ngoại vi được hổ trợ mạnh đặc biệt truyền thông nối tiếp, trong LabView có các thư viện và các hàm mặt định. nhatoiodanang@gmail.com Thư viện truyền thông nối tiếp qua RS232 b) Tính năng giao tiếp qua RS232 Để giao tiếp giữa LabView với thiết bị ngoại vi ta cần thiết lập cấu hình trong các thư viện truyền thông nối tiếp bao gồm *Thiết lập cấu hình cổng truyền thông : Với mục đích xác định chế độ baud, số bits truyền, kiễm tra lỗi. *Khối ghi dữ liệu : Với mục đích truyền dữ liệu từ máy tính xuống card *Khối đọc dữ liệu : Với mục đích nhận dữ hiệu từ card đưa lên 3.2. Sơ đồ điều khiển và lưu đồ thuật toán nhatoiodanang@gmail.com Sơ đồ kết nối điều khiển thực tế nhatoiodanang@gmail.com Hình 3.2 Sơ đồ thuật toán truyền và nhận dữ liệu giữa Card và máy tính a-Thuật toán trong Card; b-Thuật toán trong máy tính 3.3 Sơ đồ mạch thiết kế J62 CON2 1 2 Y1 12MHZ C1 33 C2 33 PVN1 PIC18F4331 RA0/AN0 2 RA1/AN1 3 RA2/AN2/VREF-/CAP1/INDX 4 RA3/AN3/VREF+/CAP2/QEA 5 RA4/AN4/CAP3/QEB 6 RA5/AN5/LVDIN 7 RB0/PWM0 33 RB1/PWM1 34 RB2/PWM2 35 RB3/PWM3 36 RB4/KBI0/PWM5 37 RB5/PGM/KBI1/PWM4 38 RB6/PGC/KBI2 39 RB7/PGD/KBI3 40 RC0/T1OSO/T1CKI 15 RC1/T1OSI/CCP2/FLTA* 16 RC2/CCP1/FLTB* 17 RC3/T0CKI/T5CKI/INT0 18 RC4/INT1/SDI/SDA 23 RC5/INT2/SCK/SCL 24 RC6/TX/CK/SS* 25 RC7/RX/DT/SDO 26 RD0/T0CKI/T5CKI 19 RD1/SDO 20 RD2/SDI/SDA 21 RD3/SCK/SCL 22 RD4/FLTA* 27 RD5/PWM4 28 RD6/PWM6 29 RD7/PWM7 30 OSC1/CLKIN/RA7 13 OSC2/CLKOUT/RA6 14 VDD 32 AVDD 11 VSS 31 AVSS 12 MCLR*/VPP/RE3 1 RE0/AN6 8 RE1/AN7 9 RE2/AN8 10 RST J1 JACK NAP ICSP 1 2 3 4 5 data +5V clock R1 10K TXD D40 1N4148 RXD CHAN DIEU KHIEN 1 2 3 4 5 6 RST CHAN DIEU KHIEN 1 2 3 4 5 6 data clock C10 +5V U2 MAX232 C1+ 1 C1- 3 C2+ 4 C2- 5 V+ 2 V- 6 R1OUT 12 R2OUT 9 T1IN 11 T2IN 10 R1IN 13 R2IN 8 T1OUT 14 T2OUT 7 GND 15 +5V 16 C6 +5V C8 CAM BIEN 1 2 3 4 5 6 RXDRXD C27 TXDTXD P1 CONNECTOR DB9 5 9 4 8 3 7 2 6 1 THU TIN HIEU 1 C9 THU TIN HIEU 2 THU TIN HIEU 3 THU TIN HIEU 4 THU TIN HIEU 5 THU TIN HIEU 6 DI EU KHIEN 1 2 3 4 5 6 CHAN DIEU KHIEN 1 CHAN DIEU KHIEN 2 CHAN DIEU KHIEN 3 THU TIN HIEU TOC DO CHAN DIEU KHIEN 4 CHAN DIEU KHIEN 5 +12V +5V C17 104 U10 LM7805C/TO IN 1 OUT 3 GND 2 + C3 1000uF C20 104 + C4 1000uF D2 LED R29 330 CARD GIAO TIEP Hình 3.3 Sơ đồ mạch nguyên lý CARD TME Card được thiết kế dùng Vi Điều Khiển (VĐK) PIC18F4331 để thu thập tín hiệu cảm biến và điều khiển, gồm 9 kênh thu thập tín hiệu, 8 kênh xuất xung PWM nhatoiodanang@gmail.com và 20 chân điều khiển số. Nguôn 5V nuôi VĐK được lấy từ IC ổn định nguồn LM7805. Vì điện áp giữa chuẩn RS232 và VĐK không tương thích nên cần sử dụng IC Max232 đã chuyển điện áp qua lại tương thích. J17 CON8 1 2 3 4 5 6 7 8 U12 L297 A 4 HOME 3 GND 2 SYN C 1 Control 11 B 6 Enable 10 D 9 VS 12 SENS2 13 Vref 15 SENS1 14 INH1 5 C 7 INH2 8 OSC 16 CW/CC W 17 CLOCK 18 HALF/ FULL 19 RESET 20 J18 CON4 1 2 3 4 5V A1 A2 A3 A4 U14 ULN 2803 COM 10 GND 9 IN1 1 IN2 2 IN3 3 IN4 4 IN5 5 IN6 6 IN7 7 IN8 8 OUT1 18 OUT2 17 OUT3 16 OUT4 15 OUT5 14 OUT6 13 OUT7 12 OUT8 11 5V D29 4007 D30 4007 D31 4007 D32 4007 R28 472 1 2 3 4 5 6 7 8 9 J19 4OPTOPC817 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 J22 MODU L STEPPER 1 2 3 4 5 6 7 8 12V C VANDIENTU1 C VANVOIPHUN C VANDIENTU3 C VANDIENTU2 RS297 12V 12V RS297 12V 12V D33 LED D34 LED D35 LED 12V D36 LED DK VANDIENTU 1 DK VANVOIPHUN DK VANDIENTU 3 DK VANDIENTU 2 C18 102 R30 0.5/2W VANDIENTU2VANVOIPHU N VANDI ENTU1 VANDIENTU3 D37 2A R31 0.5/2W R32 R2 R33 R2 D38 2A R34 R2 R35 R2 A5 Q16 IR F3250 Q17 IR F3250 D39 2A C19 104 Q18 IRF3250 C20 104 Q19 IRF3250 D40 2A J24 VAN1 1 2 J25 VAN2 1 2 J26 VAN3 1 2 U16 L298 1A1 5 1A2 7 2A1 10 2A2 12 1Y1 2 1Y2 3 2Y1 13 2Y2 14 GND 8 1EN 6 2EN 11 1E 1 2E 15 VCC1 9 VCC2 4 J27 VAN4 1 2 D41 2A J28 CON8 1 2 3 4 5 6 7 8 5V D42 2A R36 22k D43 2A D44 2A J29 CON4 1 2 3 4 U17 L297 A 4 HOME 3 GND 2 SYN C 1 Control 11 B 6 Enable 10 D 9 VS 12 SENS2 13 Vref 15 SENS1 14 INH1 5 C 7 INH2 8 OSC 16 CW/CC W 17 CLOCK 18 HALF/ FULL 19 RESET 20 12V R37 472 12 3 4 5 6 7 8 9 R38 10K R39 39K 5V U18 L298 1A1 5 1A2 7 2A1 10 2A2 12 1Y1 2 1Y2 3 2Y1 13 2Y2 14 GND 8 1EN 6 2EN 11 1E 1 2E 15 VCC1 9 VCC2 4 12V 12V 12V 12V Y5 12V VANVOIPHUN VANDIENTU1 VANDIENTU3 VANDIENTU2 VANDIENTU1 VANVOIPHUN VANDIENTU2 D45 1N4007 R41 3. 9K VANDIENTU3 Y5 MODULE DIEU KHIEN VOI PHUN R42 22k C26 102 C27 104 Q20 B562 Q21 B562 Q22 B562 Q23 B562 Q24 D468 Q25 D468 Q26 D468 Q27 D468 R43 0.5/2W R44 0.5/2W 5V MODUL DONG CO BUOC U20 74HC T244 A1 2 A2 4 A3 6 A4 8 1OE 1 Y1 18 Y2 16 Y3 14 Y4 12 VCC 20 GND 10 A5 11 A6 13 A7 15 A8 17 Y5 9 Y6 7 Y7 5 Y8 3 2OE 19 C VANDI ENTU2 C VANDI ENTU3 C VANDI ENTU1 C VANVOIPH UN C VANVOIPHU N C VANDI ENTU1 D47 2A C VANDI ENTU2 D48 2A C VANDI ENTU3 D49 2A D50 2A R46 470 R47 R48 R49 D51 2A D52 2A D53 2A D54 2A R50 472 1 2 3 4 5 6 7 8 9 Hình 3.3 Sơ đồ mạch nguyên lý module điều khiển động cơ bước và vòi phun Module điều khiển động cơ gồm hai IC L297 và L298, IC74HCT244 có tác dụng dụng chuẩn mức High-Low.Module điều khiển vòi phun là mạch khuếch đại công suất chế độ AB, gồm hai transistor khác loại D468 và B562 kéo, đẩy IRF3250 dứt khoát. 4. Kết quả trên giao diện Labview và đánh giá Hình 4.2 Số liệu thu thập từ Card giao tiếp Labview khi xe chạy xăng hoàn toàn ở tốc độ 2500 (vòng/phút) nhatoiodanang@gmail.com Hình 4.3 Số liệu thu thập từ Card giao tiếp Labview khi xe chạy xăng cồn ở tốc độ 2500 (vòng/phút) Qua kết quả thu thập card giao tiếp đáp ứng được khả năng nhận tín hiệu từ cảm biến. Việc truyền dữ liệu qua chuẩn RS232 đáp ứng tốc độ truyền tải dữ liệu lên máy tính. Tuy nhiên việc sữ dụng card còn hạn chế trong việc đo tốc độ ở động cơ đánh lữa do nhiễu cao áp, việc thu thập tín hiệu củng khó khăn khi không có băng thử nên phải mang máy tính chạy trên đường. Do vậy hướng phát triễn của đề tài sẽ tích hợp KIT KM9260 có nhúng hệ điều hành LINUX cho phép truyền dữ liệu qua mạng internet 3G. Chương trình PIC Master #include <18f4431.h> #fuses HS,NOWDT,NOPROTECT,NOLVP #use delay(clock=12000000) #use rs232(baud=9600,parity=n,xmit=PIN_C6,rcv=PIN_C7) #include <stdlib.h> #use i2c(master,SDA=PIN_C4,SCL=PIN_C5) /////////////////////////////////CHU Y///////////////////////////////////////////////////// //////////////////////////////MASTER DOC CAC CAM BIEN SAU: VI_TRI_GA;TOC_DO/////////////////// //////////////////////////////MASTER DIEU KHIEN VOI PHUN LPG//////////////////////////////////// /////////////////////////////MASTER NHAN TIN HIEU LUU LUONG,KICH NO,OXY/////////////////////// /////////////////////////////////////////////KHAI BAO BIEN TOAN CUC////////////////////////////// nhatoiodanang@gmail.com INT8 I,A[8],C,LUU_LUONG,vi_tri_ga,kich_no,oxy,DATA,xung,gia_tri=5; INT16 LPG,LAN_LPG,V,DIESEL,CAN_DIESEL; #INT_RDA VOID NHAN_DU_LIEU(){ data=GETC(); ////////////////////DIEU KHIEN VOI PHUN///////////////// IF (DATA=='#'){ FOR (I=1;I<=5;I++) {A[I]=GETC(); IF (A[I]=='$') {IF (I==2){ LPG=(A[1]-0X30); break;} IF (I==3) {LPG= (A[1]-0X30)*10+(A[2]-0X30); break;} IF (I==4){ LPG= (A[1]-0X30)*100+(A[2]-0X30)*10+(A[3]-0X30); break;} IF (I==5){ LPG= (A[1]-0X30)*1000+(A[2]-0X30)*100+10*(A[3]- 0X30)+(A[4]-0X30); break;} } } } IF (DATA=='%') { FOR(I=1;I<=4;I++){A[I]=GETC(); IF (A[I]=='^') {IF (I==2){ CAN_DIESEL=(A[1]-0X30); break;} IF (I==3) {CAN_DIESEL=(A[1]-0X30)*10+(A[2]-0X30); break;} IF (I==4){ CAN_DIESEL=(A[1]-0X30)*100+(A[2]-0X30)*10+(A[3]- 0X30); nhatoiodanang@gmail.com break;} } } } } #INT_RTCC VOID BODEMTIMER() {C++; } #INT_TIMER1 VOID PHUN_LPG() {SET_TIMER1(65386); LAN_LPG++; IF (LAN_LPG==1) OUTPUT_HIGH(PIN_C2); IF (LAN_LPG==LPG) OUTPUT_LOW(PIN_C2); IF (LAN_LPG>400) LAN_LPG=0; } #INT_TIMER5 VOID DIEU_KHIEN_CAN_DIESEL() {SET_TIMER5(65386); CAN_DIESEL++; IF (CAN_DIESEL==1) OUTPUT_HIGH(PIN_C1); IF (CAN_DIESEL==DIESEL) OUTPUT_LOW(PIN_C1); IF (CAN_DIESEL>400) CAN_DIESEL=0; } ////////////////////////Chuong trinh viet i2c///////////////////// void write_I2C(int8 value,int8 slave_addr) [...]... Understanding Automotive Electronics [3] Nguyễn Thị Lan Hương – Phạm Ngọc Yến – Nguyễn Việt Tùng LABVIEW Thiết bị đo và giao diện người – máy NXB khoa học và kỹ thu t [4] Nguyễn Văn Minh Trí – Lâm Tăng Đức Bài giảng Ghép nối và điều khiển thiết bị ngoại vi [5]Trần Quang Vinh Nguyên lí phần cứng và kỹ thu t ghép nối máy tính nhatoiodanang@gmail.com

Ngày đăng: 21/01/2015, 21:28

Từ khóa liên quan

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

Tài liệu liên quan