1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu xây dựng hệ thống giám sát chống nghiêng tàu thủy

83 388 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 83
Dung lượng 5,95 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Một trong nhữngứng dụng đó là phần mềm LAVIEW được tích hợp với bộ điều khiển NI myRIO Cùng với sự phát triển lớn mạnh của thiết bị điện tử, tự động hóa đã được ápdụng rất nhiều vào ngàn

Trang 1

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi Các số liệu, kếtquả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳcông trình nào khác

Tôi xin cam đoan rằng các thông tin trích dẫn trong luận văn đều đã được chỉ

rõ nguồn gốc

Tác giả luận văn

Phạm Thị Thanh

Trang 2

LỜI CẢM ƠN

Tác giả xin chân thành cảm ơn TS Hoàng Đức Tuấn đã tận tình hướng dẫn,

giúp đỡ và các thầy cô trong Khoa Điện - Điện tử, Viện đào tạo sau đại học đãtruyền dạy những kiến thức quí báu trong chương trình cao học và những kinhnghiệm để luận văn hoàn thành thuận lợi

Những lời cảm ơn chân thành tiếp theo xin được đến tới gia đình và bạn bè,những người đã luôn động viên, khuyến khích và chia sẻ khó khăn trong suốt quátrình học tập và nghiên cứu khoa học của tác giả

Trang 3

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU v

DANH MỤC CÁC BẢNG vii

DANH MỤC CÁC HÌNH viii

MỞ ĐẦU 1

CHƯƠNG 1 KHÁI QUÁT CHUNG VỀ HỆ THỐNG

CHỐNG NGHIÊNG TÀU THỦY 4

1.1 Giới thiệu chung về hệ thống chống nghiêng tàu thủy 4

1.2 Nhiệm vụ của hệ thống chống nghiêng tàu thủy 5

1.3 Các yêu cầu cơ bản đối với hệ thống chống nghiêng tàu thủy 6

1.4 Phân loại hệ thống chống nghiêng tàu thủy 7

1.5 Cấu trúc chung của hệ thống chống nghiêng tàu thủy 8

1.6 Nguyên lý làm việc của hệ thống chống nghiêng tàu thủy 10

CHƯƠNG 2 TỔNG QUAN VỀ PHẦN MỀM LABVIEW 12

2.1 Khái niệm về LABVIEW 12

2.2 Các chức năng chính của LABVIEW 12

2.3 Môi trường phát triển và các tín hiệu đo được của LabVIEW 14

2.4 Cấu trúc một chương trình trong LabView 15

2.5 Các bảng trên LabVIEW 18

2.6 Các kiểu dữ liệu 21

2.7 SubVI và cách xây dựng SubVI 25

2.8 Kỹ thuật lập trình nâng cao trong LabVIEW 28

2.9 Ứng dụng của Labview 35

CHƯƠNG 3 ỨNG DỤNG PHẦN MỀM LABVIEW VÀO THIẾT KẾ HỆ THỐNG GIÁM SÁT CHỐNG NGHIÊNG TÀU THỦY 39

3.1 Cấu trúc của hệ thống giám sát chống nghiêng tàu thủy 39

Trang 4

3.2 Các phần tử trong hệ thống chống nghiêng tàu thủy 39

3.3 Thiết kế giao diện giám sát trên LABVIEW 48

3.4 Thử nghiệm phần mềm giám sát trên máy tính 61

KẾT LUẬN VÀ KIẾN NGHỊ 62

TÀI LIỆU THAM KHẢO 64 PHỤ LỤC

Trang 5

DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU Các chữ viết tắt:

ADC Analog Digital Converter

CAN Control Area Network

CNH_HĐH Công nghiệp hóa, hiện đại hóa

DAC Digital Analog Converter

DAQ Data Acquisition

DMA Direct Memory Access

DMM Digital Multimeter

DSP Digital Signal Processing

Trang 6

G Graphical

GUI Graphic User Interface

HTML Hypertex Markup Language

IEEE Institute of Electrical and Electronics Engineers

ISA Internet Security Aceleration

LAVIEW Laboratory Virtual Instrumentation Engineering WorkbenchLSB Least Significant Bit

MATLAB Matrix Laboratory

NI National Instruments

PCI Peripheral Component Interconnect

PCMCIA Personal Computer memory Card International AssociationPDA Personal Digital Assistant

PID Proportional Intergral Derivative

PLC Programable Logic Controller

USB Universal Serial Bus

VDR Voyage Data Recorder

VI Virtual Instruments

Các ký hiệu:

NC Tiếp điểm thường mở của rơle

NO Tiếp điểm đóng mở của rơle

C Chân chung của cặp tiếp điểm rơle

EN Chân tín hiệu điều khiển rơle

VSS Nguồn nuôi rơle

Trang 7

DANH MỤC CÁC BẢNG

Trang 8

DANH MỤC CÁC HÌNH

Trang 9

MỞ ĐẦU

1 Tính cấp thiết của đề tài

Khoa học kỹ thuật đang có những bước phát triển vượt bậc và nhanh chóngđạt được những thành tựu đáng kể trên thế giới hiện nay.Vì vậy đã cho ra đời rấtnhiều công cụ thiết bị hiện đại với độ chính xác cao

Việt Nam đang trên con đường phát triển CNH_HĐH đất nước nên việc ápdụng các thành tựu tiến bộ của thế giới là rất quan trọng Các dây chuyền côngnghệ và thiết bị tự động hóa sản xuất đang dần được thay thế các công nghệ lạchậu thiết bị cũ với độ chính xác không cao và độ tin cậy kém Kỹ thuật vi tính đãgóp phần thay đổi bộ mặt của các trung tâm điều khiển, giám sát Một trong nhữngứng dụng đó là phần mềm LAVIEW được tích hợp với bộ điều khiển NI myRIO

Cùng với sự phát triển lớn mạnh của thiết bị điện tử, tự động hóa đã được ápdụng rất nhiều vào ngành công nghiệp Tàu thủy trong nhiều hệ thống Vấn đề vềđiều khiển, giám sát, xu hướng hình thành trung tâm điều khiển đã và đang được

áp dụng Trong ngành công nghiệp tàu thủy đang từng bước ứng dụng rất nhiềunhững thành tựu khoa học kỹ thuật và công nhệ vào việc điều khiển và giám sát.Đặc biệt là trong hệ thống chống nghiêng tàu thủy đã ứng dụng phần mềmLAVIEW để giám sát để đạt được kết quả tối ưu nhất, tăng năng suất và giảm chiphí cho những ứng dụng kiểm tra và đo lường Chính vì lý do đó em đã chọn đềtài:

‘‘Nghiên cứu xây dựng hệ thống giám sát chống nghiêng tàu thủy.’’

Trang 10

2 Mục đích của đề tài

Nghiên cứu xây dựng hệ thống giám sát quá trình tự động chống nghiêngtàu thủy bằng phần mềm LAVIEW để có thể sử dụng trong việc giảng dạy, học tập

và trong hệ thống chống nghiêng tàu thủy trong các cảng biển

3 Đối tượng và phạm vi nghiên cứu của đề tài

- Đối tượng nghiên cứu của đề tài là hệ thống giám sát chống nghiêng tàu thủy

- Phạm vi nghiên cứu của đề tài:

+ Phân tích tổng quan hệ thống giám sát chống nghiêng tàu thủy

+ Thiết kế hệ thống giám sát chống nghiêng tàu thủy trên phần mềm LABVIEW + Xây dựng mô hình vật lý hệ thống

4 Phương pháp nghiên cứu của đề tài

Để đạt được những yêu cầu đề ra khi nghiên cứu chống nghiêng tàu thủy, đềtài đã dùng các phương pháp như sau: phương pháp chuyên gia, phương pháp phântích, phương pháp thực nghiệm để kiểm chứng kết quả trên phần mềm cùng vớiphương pháp mô hình hóa

5 Ý nghĩa khoa học và thực tiễn của đề tài

* Ý nghĩa khoa học đề tài:

Đây là kho kiến thức khá hữu dụng cho những người muốn tìm hiểu ứngdụng phần mềm laview và bộ điều khiển NI myRIO 1900 trong thiết kế giao diệngiám sát chống nghiêng tàu thủy Thể hiện rõ sự đóng góp của tiến bộ khoa học kỹthuật vào nghành đóng tàu của nước ta, giảm được chi phí nhân công và nâng caoquá trình tự động hóa trong sản xuất Nói được tầm quan trọng của kỹ thuật vi tính

đã đóng góp như thế nào vào quá trình giám sát tự động tạo nên sự tối ưu và năngsuất cao hơn Đề tài này sẽ đóng góp một phần vào công nghiệp hóa –hiện đại hóađất nước trong thời kỳ hiện nay đặc biệt là trong công nghiệp đóng tàu

* Ý nghĩa thực tiễn:

Trang 11

Kết quả được nghiên cứu của luận văn này có thể ứng dụng trong lĩnh vực dạyhọc trong các trường đào tạo kỹ thuật và sử dụng trong công nghiệp đóng tàuđang rất phát triển hiện nay đặc biệt là ở thành phố cảng Hải Phòng.

Kết quả của hệ thống giám sát đã được nghiên cứu của đề tài có thể dùng vàothực tế ở các cảng biển sao cho tiết kiệm được chi phí,nâng cao năng suất laođộng, an toàn cho tàu và thuyền viên

Trang 12

CHƯƠNG 1 KHÁI QUÁT CHUNG VỀ HỆ THỐNG

CHỐNG NGHIÊNG TÀU THỦY 1.1 Giới thiệu chung về hệ thống chống nghiêng tàu thủy

Khi con tàu ngả nghiêng về bên trái hoặc bên phải mà không thể trở về được

vị trí thẳng đứng lúc ban đầu thì có nghĩa là lúc đó tàu đã bị nghiêng đi một góc.Việc bị nghiêng này không những ảnh hưởng đến sự an toàn của con tàu, của máymóc mà còn ảnh hưởng đến thuyền viên trên tàu Theo lý thuyết tàu thủy có thểnhận thấy ngay nguyên nhân chính đưa đến điều này là do tàu vận hành trongđiều kiện gió mạnh, sóng, bão, tàu đổi hướng, và do tình trạng xếp dỡ hàng hóakhông cân Cũng có thể trong hành trình di chuyển của mình tàu bị tiêu hao nhiênliệu và nước ngọt dự trữ trong các két nước ở hai bên mạn trái và phải của con tàukhiến cho trọng lượng của các két giảm xuống Để giải quyết vấn đề ổn định chotàu trong quá trình hoạt động người ta sử dụng hệ thống chống nghiêng tàu[14]

Hệ thống chống nghiêng trên tàu thủy tự động phát hiện góc nghiêng của tàu

để bù lại góc tương ứng Hệ thống này giúp con tàu tiếp tục xếp dỡ hàng màkhông bị gián đoạn để cân chỉnh Điều này giúp tiết kiệm khá lớn thời gian ởcảng[10] Bản chất của hệ thống chống nghiêng tàu thủy được dùng trên tàu là haibên mạn trái và phải của tàu có các két nước để tạo nên sự cân bằng Trong hệthống này các két ballast được nối với nhau bởi các đường ống, van tự động vàcác hệ thống kiểm soát Khi tàu bị nghiêng về bất cứ mạn nào cảm biến nghiêng

sẽ gửi tín hiệu về sự biến đổi đó cho hệ thống kiểm soát[10] Hệ thống giám sátchống nghiêng tàu có nhiệm vụ báo cáo các trạng thái hoạt động của gócnghiêng,van ,bơm để đưa đến hệ thống điều khiển bơm nước từ két trái sang kétphải và ngược lại để tàu được cân bằng Trong thực tế hành trình của tàu thủyngười ta có thể dùng hai hay nhiều các két nước hai bên mạn tàu và nhiều hệthống điều khiển giám sát đóng, mở và đo lường dung tích các két tùy thuộc vàotính năng, kết cấu,hình dáng,kích thước của loại tàu

Trang 13

1.2 Nhiệm vụ của hệ thống chống nghiêng tàu thủy

Hệ thống chống nghiêng tàu thủy sẽ giúp chúng ta giải quyết được những vấn

đề sau[10]:

- Tàu xếp dỡ hàng được nhanh hơn và an toàn hơn

- Thời gian tàu ở cảng ít hơn, tiết kiệm chi phí

- Tránh nguy cơ hàng hóa và container bị lăn, trượt

- An toàn cho tàu và thuyền viên

Hệ thống chống nghiêng tàu là một hệ thống có tầm quan trọng hàng đầu củacon tàu, nó có chức năng giám sát và kiểm tra tất cả những sự sai lệch về độnghiêng thực tế của con tàu so với độ nghiêng tiêu chuẩn được thiết kế Trong thực

tế đã cho thấy rằng có rất nhiều nguyên nhân có thể dẫn đến tàu bị nghiêng khỏi vịtrí cân bằng ban đầu của nó như do tác động của sóng, gió, do quá trình xếp dỡhàng hoá ở cảng không cân giữa hai mạn tàu, do quá trình luân chuyển và sử dụngcác két dầu đốt, các két nước ngọt…[14] Hệ thống chống nghiêng đã thực hiệnquá trình giám sát thông qua các cảm biến mức nước được đặt trong các két chốngnghiêng, từ đó cảm biến này gửi tín hiệu thu nhận được tới trung tâm xử lý để nótính toán lại Từ các số liệu phản hồi từ trung tâm xử lý người vận hành sẽ tínhtoán và đưa ra quyết định để điều khiển các van, bơm chống nghiêng khác nhau ởcác vị trí két khác nhau nhằm giữ cho con tàu có thể cân bằng trong giới hạn chophép Đối với những con tàu có hệ thống tự động điều khiển chống nghiêng tàu thìkhi tín hiệu thu được từ các cảm biến mức nước đưa về bộ xử lí trung tâm nó sẽđược tính toán và từ bộ xử lí trung tâm này sẽ gửi tín hiệu điều khiển tới các rơletrung gian để khởi động các bơm chống nghiêng tương ứng Hệ thống này rất quantrọng đối với sự an toàn của con tàu và hàng hoá vì nếu có sai sót hỏng hóc nào đócủa hệ thống mà tín hiệu giám sát và điều khiển không đúng thì có thể dẫn đến contàu bị nghiêng quá nhiều gây ra tình trạng nước tràn vào tàu và có thể bị đắmtàu[10]

Trang 14

Hệ thống giám sát và điều khiển chống nghiêng tàu có nhiệm vụ chính lànâng cao tính ổn định cho con tàu, đảm bảo cho con tàu luôn luôn cân bằng (không

bị nghiêng, bị lệch)[10]

Nâng cao hiệu suất đối với hệ lực đẩy Hệ thống chống nghiêng tàu được sửdụng khi tàu đang trong quá trình xếp hàng không đều, khi tàu không chở hàng(tàu chạy ballast) hoặc khi có ngoại lực tác dụng lên tàu như sóng, gió[10]

Việc điều hành hoạt động của hệ thống chống nghiêng tàu sẽ được thực hiệntheo lệnh của sĩ quan boong, thông thường là đại phó (chief officer) khi đã nghiêncứu rõ ràng tính ổn định của con tàu trong điều kiện khai thác và vận hành thực tế.Sau đó mệnh lệnh này được đưa đến, sĩ quan máy sẽ thực hiện các thao tác cầnthiết để điều khiển van và bơm nước từ két này sang két kia để cân bằng tàu [10]

1.3 Các yêu cầu cơ bản đối với hệ thống chống nghiêng tàu thủy

Do đặc điểm và tính chất quan trọng của hệ thống chống nghiêng tàu, liênquan đến trực tiếp sự an toàn của con tàu,vì vậy hệ thống chống nghiêng phải đápứng được các yêu cầu đưa ra như[14]:

- Hệ thống này nhất định phải có 2 chế độ là bằng tay và tự động[10]

- Trên màn hình của hệ thống giám sát chống nghiêng người vận hành hoặcngười kiểm tra phải quan sát nhận định chính xác được góc nghiêng của tàu.Bêncạnh đó là quan sát được trạng thái hoạt động của các bơm, van, quan sát đượcmức nước trong hai két…[10]

- Các van chống nghiêng của hệ thống điều khiển đều có thể đóng hoặc mởđược bằng tay để tránh trường hợp khi không thể điều khiển từ xa dẫn đến nguyhiểm cho con tàu[10]

- Lắp đặt các thiết bị cảm biến nhanh nhạy để phục vụ cho việc báo độngmức nước trong mỗi két chống nghiêng và đưa ra thông số được hiển thị trên bảngđiều khiển cho người vận hành biết[10]

- Khi có tín hiệu báo góc nghiêng của tàu trong quá trình làm việc thì hệthống này cần đặt thời trễ để khẳng định chính xác độ nghiêng tránh sự nghiêng giảtức thời do sóng, gió gây ra[10]

Trang 15

- Phải có các chế độ bảo vệ hệ thống, các tín hiệu báo động để khống chếbơm,van hoạt động khi mức nước ở hai két quá cao hoặc quá thấp, hoặc khi cácvan không mở được[10].

- Phải có tín hiệu báo động cho người vận hành biết khi độ nghiêng của tàu

>5o, và khống chế hoạt động điều khiển tự động[10]

- Hệ thống nên trang bị thêm trạm điều khiển và giám sát trên buồng lái[10]

- Hệ thống nên được ghép nối với hệ thống máy in để có thể in nhật ký khi

có sự cố và cần được ghép nối với hệ thống VDR…[10]

1.4 Phân loại hệ thống chống nghiêng tàu thủy

Hiện nay có hai loại hệ thống chống nghiêng được sử dụng rộng rãi trêntàu[10]:

- Hệ thống chạy bằng khí: hệ thống này bao gồm hệ thống hút khí và hệthống van tác dụng lên phía trên của két ballast Khí được bơm vào một két và hút

ra ở két khác, tạo ra sự chênh lệch áp suất do đó lượng nước được di chuyển từ kétnày qua két khác

- Hệ thống bơm nước : hệ thống bơm nước bao gồm một mô tơ điện để chạybơm, bơm này là loại có thê đảo chu trình, kết nối với các bộ kiểm soát,các vanđiều khiển từ xa để chuyển nước qua lại các két

Trong phạm vi luận văn này sẽ nghiên cứu về hệ thống chống nghiêng bằng bơm nước.Hệ thống chống nghiêng tàu bằng bơm nước được chia thành hai loại chính [14]:

- Hệ thống chống nghiêng có chế độ giám sát nhưng không tự động điều khiểnchống nghiêng

- Hệ thống chống nghiêng tàu có giám sát và có thể tự động phát ra tín hiệukhởi động để điều khiển chống nghiêng

Đối với hệ thống chống nghiêng có giám sát nhưng không tự động điềukhiển chống nghiêng thì các tín hiệu giám sát được gửi đến cho sĩ quan boong.Người đưa ra các quyết định sau đó sẽ do sĩ quan boong (thường là đại phó) chịutrách nhiệm và người thực hiện sẽ là sĩ quan máy Hệ thống theo kiểu này có yếu

Trang 16

điểm là khiến cho công việc và trách nhiệm của đại phó nặng nề hơn Tuy vậy nólại có ưu điểm rất đáng lưu tâm là tính an toàn và độ chắc chắn cao hơn

Đối với hệ thống chống nghiêng có giám sát và lại có thể tự động điều khiểnchống nghiêng tàu thì đáp ứng được yêu cầu về tính tự động hoá cao trên tàu thuỷ,nâng cao được hiệu suất làm việc Tuy nhiên nó lại có một nhược điểm khá lớn lànếu có sự hỏng hóc hay trục trặc về kỹ thuật nào đó với các thiết bị trong hệ thốngthì độ nguy hiểm đối với con tàu sẽ rất lớn Ngày nay, đối với các tàu có yêu cầucao về độ ổn định như các tàu chở container, tàu chở hàng rời thì được ứng dụngloại hệ thống có tự động điều khiển chống nghiêng tàu nhưng hệ thống này cầnphải được thường xuyên theo dõi để đảm bảo không có hỏng hóc nào xảy ra đốivới hệ thống cũng là đảm bảo an toàn cho con tàu

Bên cạnh đó, hệ thống này còn có thể được phân loại theo loại bơm được sửdụng[10]:

- Bơm li tâm;

- Bơm cánh gạt;

- Bơm piston;

- Bơm bánh răng

1.5 Cấu trúc chung của hệ thống chống nghiêng tàu thủy

Hệ thống chống nghiêng tàu thủy có cấu trúc cơ bản bao gồm các thành phần chính sau [15,16]:

Trang 17

Hình 1.1 Cấu trúc hệ thống chống nghiêng tàu thủy

Trang 18

1.5.1 Kết cấu của hệ thống chống nghiêng

Hệ thống chống nghiêng tàu thủy bao gồm có hệ thống két chống nghiêng, van ống và các thiết bị ngoại vi lắp đặt bên ngoài

- Các két nước chống nghiêng và van ống[10]

+ Hệ thống chống nghiêng tàu thủy bao gồm có 2 két chứa nước được treo ở

2 bên mạn trái và phải của tàu nằm ở vị trí giữa của tàu Ngoài ra còn có hệ thốngđường ống nối 2 két nước với nhau thông qua bơm hút đẩy 1 chiều và hệ thốngcác van để đóng, mở đường ống khởi động bơm Nếu như tàu bị nghiêng sang bêntrái thì bơm sẽ khởi động hút nước đưa từ két chưa nước bên trái chuyển sang kétbên phải và từ két phải sang trái nếu tàu nghiêng phải

- Hệ thống các thiết bị ngoại vi lắp đặt bên ngoài bao gồm có:

+ Hệ thống các thiết bị điều khiển có thể lấy ví dụ như Bơm chống nghiêng,các van đóng và mở đường ống nước và các van phân phối

+ Hệ thống các thiết bị giám sát gồm có: cảm biến nghiêng đặt trong kétnước, các bộ chuyển đổi mức, cảm biến để báo động trong trường hợp mức nướcquá thấp hay quá cao …

1.5.2 Kết cấu của hệ thống giám sát chống nghiêng

Kết cấu của hệ thống điều khiển và giám sát chống nghiêng tàu chính làbuồng điều khiển giám sát của hệ thống được đặt trong buồng riêng của hệ thốngBallast Nó sẽ thực hiện các nhiệm vụ sau:

+ Điều khiển tự động các nhiệm vụ chống nghiêng từ xa

+ Đưa ra màn hình giao diện của hệ thống giám sát các trạng thái và cácthông số của hệ thống chống nghiêng tàu như: góc nghiêng, mức nước trong haikét, các trạng thái báo hiệu hoặt động của bơm và van…

+ Bảng điều khiển tại chỗ: sẽ nhận nhiệm vụ thực hiện các chức năng điềukhiển của hệ thống chống nghiêng tàu khi chế độ điều khiển tự động từ xa gặp sự

cố, hỏng hóc…

Trang 19

1.6 Nguyên lý làm việc của hệ thống chống nghiêng tàu thủy

Hệ thống chống nghiêng trên tàu biển tự động phát hiện góc nghiêng củatàu để bù lại góc tương ứng Như đã nói ở phần trên thì hệ thống chống nghiêngtàu thủy sẽ sử dụng các két nước chống nghiêng ở hai bên mạn tàu trái và phải.Trong quá trình tàu thực hiện nhiệm vụ xếp dỡ hàng hóa, hoặc trong hành trình gặpphải một lí do thời tiết nào đó làm cho tàu mát vị trí cân bằng thì hệ thống này cónhiệm vụ khởi động bơm để chuyển nước di chuyển từ két trái sang két phải vàngược lại để tàu không bị nghiêng[16]

Chẳng hạn khi tàu đang bị nghiêng trái hoặc phải thì nhờ có các cảm biếnnghiêng được đặt ở trong các két nước của hệ thống sẽ báo tín hiệu để gửi đếntrung tâm xử lý tín hiệu Nếu sau một khoảng thời gian trễ đã được cài đặt,nó sẽkhẳng định chính xác tàu bị nghiêng thật thì tín hiệu này được gửi đến trung tâm

xử lý Tiếp theo sau khi xử lý xong trung tâm này sẽ gửi tín hiệu để mở van ốngtrước Khi van nhận lệnh và được mở ra hoàn toàn thì thông qua bộ phận phản hồitrạng thái của van sẽ có tín hiệu khởi động bơm để bơm nước theo chiều ngược lạivới góc nghiêng của tàu Van được sử dụng là van một chiều để tránh trường hợp

bị bơm nước ngược trở lại gây mất cân bằng tàu Sau khi có sự điều chỉnh đó tàu

sẽ dần trở lại không bị mất cân bằng nữa Khi góc nghiêng không còn trung tâmđiều khiển sẽ xuất tín hiệu điều khiển làn lượt dừng bơm trước sau đó là tín hiệuđóng van

Trong suốt quá trình điều khiển và giám sát chống nghiêng tàu, cần chú ý nếutín hiệu gửi về cho thấy tàu đang bị nghiêng quá độ cho phép(>50) hoặc mức nước

ở trong các két chống nghiêng giảm quá thấp so với mức cho phép thì trung tâm xử

lý sẽ tự gửi tín hiệu ra báo động chung (được biểu hiện trên giao diện giám sát chongười vận hành biết) và xuất ra tín hiệu dừng bơm

Mạch kiểm soát mực nước cũng được lắp đặt ở các két ballast cùng với hệthống chống nghiêng để ngăn ngừa mực nước quá thấp hoặc quá đầy[10]

Trang 20

CHƯƠNG 2 TỔNG QUAN VỀ PHẦN MỀM LABVIEW

2.1 Khái niệm về LABVIEW

LABVIEW (viết tắt của Laboratory Virtual Instrumentation EngineeringWorkbench) là một phần mềm máy tính được phát triển bởi công ty NationalInstruments[2,3,12] Về thực chất nó là một môi trường phát triển dựa trên ngônngữ lập trình đồ họa bằng cách sử dụng các biểu tượng đồ họa trực quan và dâydẫn trông giống như một sơ đồ khối,nó thường được sử dụng cho những mục đíchnhư giao tiếp máy tính, đo lường , kiểm tra , đánh giá, xử lý, mô phỏng, và điềukhiển hệ thống, kết nối thiết bị ngoại với máy tính theo thời gian thực LABVIEWdùng trong hầu hết các phòng thí nghiệm, lĩnh vực khoa học kỹ thuật như tự độnghóa, điều khiển, điện tử, cơ điện tử, hàng không, hóa sinh, điện tử y sinh ở cácnước đặc biệt là Mỹ, Hàn quốc, Nhật Bản[2]

Trang 21

Hình 2.1 Mã nguồn viết bằng LabVIEW

2.2 Các chức năng chính của LABVIEW

LABVIEW được biết đến như là một ngôn ngữ lập trình với khái niệm hoàntoàn khác so với các ngôn ngữ lập trình truyền thống như ngôn ngữ C, Pascal.Bằng cách diễn đạt cú pháp thông qua các hình ảnh trực quan trong môi trườngsoạn thảo, LABVIEW đã được gọi với tên khác là lập trình G[2] Hiện tại ngoàiphiên bản LABVIEW cho các hệ điều hành Window, Linux, hãng NI đã pháttriển các modul LABVIEW cho máy hỗ trợ cá nhân PDA[2]

Các chức năng chính của LABVIEW có thể tóm tắt như sau:

- Thu thập tín hiệu từ các thiết bị bên ngoài như cảm biến nhiệt độ, hình ảnh từwebcam, vận tốc của động cơ,… [13]

- Trong ứng dụng của LabVIEW có một tính năng rất dễ sử dụng không thể thiếuđược đó là phân tích Ở phần mềm LabVIEW chứa hơn 500 chức năng đã được lậpsẵn để phục vụ cho việc trích xuất thông tin có ích từ những dữ liệu đã thu nhậnđược, các phép đo được phân tích nhanh chóng và tín hiệu được xử lý Để nhậnđược các số liệu thống kê quan trọng trong nhiều dữ liệu của bạn thì phải nhờ vàochức năng phân tích tần số, phát tín hiệu, toán học, chỉnh lý đường cong, phép nộisuy Dù cho thuật toán đưa ra có phức tạp đến nhường nào thì với tính năng phântích này làm cho phần mềm LabVIEW vô cùng dễ sử dụng Nhờ có hơn 15Express VIs nên đã làm giảm rất nhiều độ phức tạp trong khi phân tích các phép đo

có ở ứng dụng của bạn thông qua hộp thoại cấu hình tương tác để đưa ra kết quảphân tích[13]

- Chức năng hiển thị bao gồm: trực quan, tạo báo cáo và quản lý dữ liệu Để hiệnthị dữ liệu một cách hấp dẫn LabVIEW có các công cụ chức năng trực quan, trong

đó gồm các tiện ích có thể kể đến như vẽ biểu đồ hoặc đồ thị với các công cụ trựcquan 2D, 3D cài sẵn Nhờ đó ta có thể nhanh chóng hình dung và biểu hiện lại cácthuộc tính của bản vẽ chẳng hạn như màu sắc, kích cỡ phông, kiểu đồ thị, quay,phóng to thu nhỏ và quay quét (pan) đồ thị khi đang chạy Bên cạnh đó, quaInternet bằng phần mềm LabVIEW có thể xem và điều khiển được VIs Nếu như

Trang 22

tạo một báo cáo, NI cung cấp cho ta các tùy chọn khá đầy đủ như: công cụ tạo tàiliệu, báo cáo dạng HTML, báo cáo dạng Word/Excel và báo cáo tương tác với NIDIA[13].

- Giao tiếp với các thiết bị ngoại vi thông qua nhiều chuẩn giao tiếp thông quacác cổng giao tiếp: RS232, USB, PCI, Enthernet[2]

- Mô phỏng và xử lý các tín hiệu thu nhận được để phục vụ các mục đích nghiêncứu hay mục đích của hệ thống mà người lập trình mong muốn[2]

- Xây dựng các giao diện người dùng một cách nhanh chóng và thẩm mỹ hơnnhiều so với các ngôn ngữ khác như Visual basic, Matlab[2,13]…

- Cho phép thực hiện các thuật toán điều khiển như PID, logic M( Fuzzy) mộtcách nhanh chóng thông qua các chức năng tích hợp sẵn trong LABVIEW[2,13]

- Cho phép kết hợp với nhiều ngôn ngữ truyền thông như C, C++, [2]

- Cho phép triển khai những ứng dụng nhúng đến các bộ vi xử lý 32 bit[13]

2.3 Môi trường phát triển và các tín hiệu đo được của LabVIEW

Môi trường phát triển rộng rãi và nhanh chóng của LabVIEW là công nghệExpress Cho dù không cần lập trình trước,công nghệ này sử dụng Express VIs vàI/O nên đã tạo ra nhiều ứng dụng đo lường phổ biến Hàng nghìn chương trìnhminh họa, kiểu module và phân cấp, trợ giúp tích hợp, thư viện giao diện người sửdụng kéo và thả hàng nghìn chức năng lập sẵn, ngôn ngữ được biên dịch để thựchiện nhanh hơn Đến phát triển lớn, theo hướng nhóm (teamoriented) Ngôn ngữ

mở, gỡ rối bằng đồ họa tích hợp, phân phối ứng dụng đơn giản, nhiều công cụphát triển cấp cao, công cụ phát triển nhóm, điều khiển mã nguồn, quản lý đích.Thu thập, phân tích và hiển thị lập sẵn Môi trường LabVIEW mở tương thích vớimọi phần cứng đo với các trợ giúp tương tác, tạo mã nguồn và khả năng kết nối tớihàng nghìn thiết bị giúp tập hợp dữ liệu dễ dàng Chúng ta có thể hoàn toàn kếthợp được mọi ứng dụng của LabVIEW mới vào các hệ thống hiện tại đòi hỏi độpchính xác cao vì LabVIEW cung cấp tính kết nối tới hầu hết mọi thiết bị đo.LabVIEW luôn luôn cung cấp cho người dùng một giao diện để có thể kết nối tớiI/O một cách dễ dàng kể cả khi mọi yêu cầu của phần cứng không đáp ứng [13]

Trang 23

Các tín hiệu đo được của LabVIEW bao gồm có: Nhiệt độ, sức căng, độrung, âm thanh, điện áp, dòng, tần số, ánh sáng, điện trở, xung, thời gian (giaiđoạn), tín hiệu số, thu thập tín hiệu từ các thiết bị bên ngoài như cảm biến nhiệt độ,hình ảnh từ webcam, vận tốc của động cơ,[13]

2.4 Cấu trúc một chương trình trong LabView

Chương trình LABVIEW được gọi là các thiết bị ảo VI vì giao diện và cáchthức hoạt động của nó tương tự như thiết bị thật Các VI có giao diện với người sửdụng và một mã nguồn tương đương tiếp nhận các thông số từ VI cao hơn[12] Các thiết bị ảo (VI) chính là cơ sở thực hiện của lập trình Labview Một ưuđiểm vượt trội của LabVIEW so với các phần mềm khác đó là các đối tượng ở cácthiết bị ảo được dùng để mô phỏng cho các thiết bị thực mà không cần tới chúng.Các thiết bị ảo VI giống như các hàm khi sử dụng lập trình bằng ngôn ngữ khác.Một chương trình VI trong Labview bao gồm 3 phần chính:

- Front Panel là giao diện người sử dụng GUI

- Block Diagram là giao diện dạng sơ đồ khối cung cấp mã nguồn lập trình

- Biểu tượng kết nối Icon và Connecter

Trong đó Front Panel và Block Diagram là hai thành phần quan trọng nhấttrong Labview

2.4.1 Front Panel và Block Diagram

Một chương trình trong LabView gồm hai phần chính: một là giao diện vớingười sử dụng (Front Panel), hai là giao diện dạng sơ đồ khối cung cấp mã nguồn(Block Diagram) và các biểu tượng kết nối (Icon/Connector)[13]

Trang 24

Control là các đối tượng được đặt trên Front Panel để cung cấp dữ liệu chochương trình Nó tương tự như đầu vào cung cấp dữ liệu[2]

Hình 2.2 Cách lấy Control

Trang 25

Hình 2.3 Các Control thường dùngIndicator là đối tượng được đặt trên Front Panel dùng để hiện thị kết quả, nótương tự như bộ phận đầu ra của chương trình[2].

Hình 2.4 Cách lấy Indicator

Trang 26

Hình 2.5 Front Panel của chương trình LabVIEW

2.4.1.2 Block Diagram

Block diagram của một VI là một sơ đồ được xây dựng trong môi trườngLabVIEW, nó có thể gồm nhiều đối tượng và các hàm khác nhau để tạo các cấutrúc lệnh để chương trình thực hiện Block Diagram là một mã nguồn đồ họa củamột VI Các đối tượng trên Front Panel được thể hiện bằng các thiết bị đầu cuốitrên Block Diagram, không thể loại bỏ các thiết bị đầu cuối trên Block Diagram.Các thiết bị đầu cuối chỉ mất đi sau khi loại bỏ đối tượng tương ứng trên Frontpanel[13]

Cấu trúc của một Block Diagram gồm các thiết bị đầu cuối (Terminal), nút(Node) và các dây nối (wire).[13]

Hình 2.6 Block Diagram của chương trình LabVIEW

Trang 27

2.4.2 Icon và Connector

Icon (biểu tượng): là biểu tượng của VI, được sử dụng khi từ một VI muốn

sử dụng chức năng của một VI khác Khi đó VI đó được gọi là SubVI, nó tươngđương như một chương trình con trong các ngôn ngữ khác[3,13]

Connector (đầu nối): là một phần tử của Terminal dùng để nối các đầu vào

và đầu ra của các VI với nhau khi sử dụng Mỗi VI có một Icon mặc định hiển thịtrong bảng Icon ở góc trên bên phải cửa sổ Front Palette và Block Diagram[3,13]

Khi các VI được phân cấp và module hóa thì ta có thể dùng chúng như cácchương trình con Do đó để xây dựng một VI ta có thể chia thành nhiều VI thựchiện các chức năng đơn giản và cuối cùng kết hợp chúng lại với nhau thành mộtkhối để thực thi những công việc cụ thể trong một chương trình

2.5.1 Tool palette

Trên cả hai cửa sổ Font Panel và Block Diagram đều xuất hiện Tool Panel.Bảng này giúp chúng ta có thể xác lập được các chế độ làm việc đặc biệt của contrỏ chuột Biểu tượng của con trỏ chuột sẽ được biến đổi chính theo biểu tượng củacông cụ mà chúng ta đã lựa chọn trước đó Nếu muốn thiết lập một chế độ tự độnglựa chọn công cụ thì hãy nhớ di chuyển con trỏ chuột qua các đối tượng trên FrontPanel hoặc Block Diagram, LabVIEW sẽ tự động lựa chọn công cụ phù hợp trênbảng Tool Palette[13]

Trang 28

2.5.2 Controls Palette

Bảng điều khiển Controls Palette không như Tool palette mà chỉ duy nhất

xuất hiện trên của sổ Front panel Bảng điều khiển này sẽ bao gồm các bộ điềukhiển (control) và các bộ hiển thị (Indicator) Để có được bảng điều khiển controlspalette ta thao tác như sau: vào menu View, chọn controls palette như hình 2.7[13]

Bảng điều khiển được sử dụng để người sử dụng thiết kế cấu trúc mặt hiểnthị gồm các thiết bị ví dụ: các công tắc, các loại đèn, các loại màn hình hiển thị…[13] Với bảng điều khiển này, người sử dụng có thể chọn các bộ thiết bị chuẩn dohãng sản xuất cung cấp ví dụ công tắc nhưng cũng có thể chọn các thiết bị dongười sử dụng tự xây dựng Bảng điều khiển dùng để cung cấp dữ liệu đầu vào vàhiển thị kết quả đầu ra

Ta thấy rằng trên bảng điều khiển controls palette có rất nhiều các bộ điềukhiển phong phú khác nhau Ta có thể sử dụng tất cả các thanh phần của bảngcontrols, ở hình trên mục Express đang được mở, sau đây ta xem qua một số bộđiều khiển điển hình của LabVIEW

Hình 2.7 Bảng điều khiển (Controls Palette)

- Numeric controls / Indicators

Bộ công cụ này dùng để hiện thị và điều khiển dữ liệu dạng số trong chươngtrình LabVIEW[13]

Trang 29

- Boollean controls /Indicators

Bộ công cụ này cung cấp hai giá trị là True và False Khi thực hiện chươngtrình người sử dụng sử dụng chuột để điều khiển giá trị của thiết bị Việc thay đổigiá trị của các thiết bị chỉ có tác dụng khi các thiết bị đó được xác lập ở chế độ làcác Control Còn nếu ở chế độ là các Indicator thì giá trị không thay đổi vì chúngchỉ là các thiết bị hiển thị[13]

- String & Path

Các điều khiển này dùng để nhập và hiển thị các ký tự, nó cũng có thể đượcxác lập ở chế độ đầu vào hay đầu ra hoặc chỉ đường dẫn đến các file cần hiểnthị[13]

2.5.3 Function palette

Cũng như bảng Controls Palette thì bảng Functions Palette cũng chỉ xuấthiện trên một cửa sổ nhưng không phải Front panel mà là Block Diagram Để tạodựng thiết kế nên các khối lưu đồ thì người sử dụng phải nhờ vào các VI có chứatrong bảng này Chúng ta có thể lập trình để thực hiện các lệnh khác nhau với bảngFunction Palett bằng các lưu đồ như: các biểu thức toán học, các phép tính số học,, phép lựa chọn thông qua các nhóm hàm, các vòng lặp Ngoài những chức năng đãđược cung cấp ở trên ta thấy rằng bảng Function Palett này có thể tạo ra và sửdụng lại các hàm và chức năng mà người sử dụng tự mình xây dựng ra Tất cả cáchàm toán học và các chức năng khác đều được minh họa diễn giải bằng các biểutượng Vì vậy người sử dụng khi muốn lựa chọn hay thực hiện một hàm hoặc mộtchức năng nào đó thì phải chọn biểu tượng để thể hiện rõ ràng cho nó và muốnđến một vị trí nào trên cửa sổ Block Diagram thì chỉ việc kéo thả ở vị trí đó.Côngviệc tiếp theo rất đơn giản là xác định những đầu vào ra cần thiết theo yêu cầu củabài toán

Trang 30

- Biến toàn cục Global variables: được dùng để thực hiện mọi công việctrao đổi giữa một vài VI là truyền và lưu trữ dữ liệu Trong LabVIEW biến toàncục luôn được coi là một đối tượng Muốn tạo ra một “VI toàn cục” đặc biệt thì tachỉ việc tạo ra một biến toàn cục trong LabVIEW Cách thức để tạo ra các biếntoàn cục rất đơn giản, đầu tiên ta lựa chọn biến trên thanh công cụ “Structs andConstants function” tiếp đó thả chúng lên của sổ Diagram Trên các Controls hoặccác Indicators ta cần xác định chính xác kiểu dữ liệu cho nó ứng với kiểu dữ liệu

đã sử dụng theo yêu cầu Cần lưu ý rằng ứng với mỗi biến toàn cục nhất thiết phảitạo nên một VI có một tên riêng khác biệt không được trùng với các VI trước nó.Ngoà ra cũng cần xác định chế độ chỉ cho phép ghi hoặc chỉ cho phép đọc ứng vớimỗi biến toàn cục Với các kiểu dữ liệu như numerics và Boolean tương đối đơngiản thì việc truy xuất vào biến toàn cục trở nên vô cùng nhanh chóng Tuy vậy,đối với các dữ liệu dưới dạng mảng (arrays), Clusters hay các sâu (string) lớn thìlại yêu cầu thời gian xử lý và bộ nhớ cần thiết để xử lý sẽ tương đối lớn khi muốndùng biến toàn cục trong việc lưu trữ và xử lý các dữ liệu Vì nó đòi hỏi một vàidịch vụ quản lý bộ nhớ mỗi khi các biến đó gọi tới Nhược điểm lớn nhất của phầnmềm này là “sự tranh chấp dữ liệu” khi thao tác dùng cả hai các biến toàn cục vàcác biến cục bộ Khi hai hoặc nhiều hơn các đoạn mã lệnh thực hiện đồng thời việcthay đổi giá trị của một biến thì việc “tranh chấp dữ liệu” sẽ xảy ra không biết ưutiên cho bên nào Đầu ra của VI phụ thuộc vào thứ tự được thực thi của các dònglệnh Bởi vì nếu không có sự phụ thuộc dữ liệu giữa các biểu thức khác nhau thì sẽkhông xác định được cái nào chạy trước Nếu sử dụng các biến toàn cục trong Vis

Trang 31

mà được thực hiện song song, thì ta có thể sử dụng một biến toàn cục thêm vào đểxác định khi nào dữ liệu được phép thay đổi và được đọc giá trị mới[3,13].

- Local variable: giúp người lập trình đọc hoặc viết thông tin cần thiết lêncác thiết bị điều khiển hoặc thiết bị hiển thị trên của sổ Front Panel Local Variablegiúp chúng ta tạo được một biến địa phương từ bảng Structs & Constant Khi sửdụng biến địa phương cần chú ý một số thông tin sau:

+ Các biến địa phương chỉ có tác dụng duy nhất trên các thiết bị điều khiểnhoặc thiết bị hiển thị mà cùng ở trên một lược đồ Ta không thể sử dụng biến địaphương để truy cập tới một điều khiển mà không cùng trên một lược đồ[13]

+ Ta có thể có rất nhiều các biến địa phương cho mỗi thiết bị điều khiểnhoặc thiết bị hiển thị Tuy nhiên điều đó có thể gây ra sự phức tạp, cho rằng điềukhiển của bạn thay đổi trạng thái một cách khó hiểu bởi vì bạn ngẫu nhiên lựa chọnsai các phần tử trong một hoặc nhiều biến địa phương[13]

+ Giống như biến toàn cục, bạn có thể sử dụng biến địa phương không cómột “dòng dữ liệu” hợp lệ khác sử dụng[13]

2.6.2 String

Kiểu string (chuỗi) là một kiểu dữ liệu dạng chuỗi ký tự Ta có thể sử dụngchuỗi tham gia tính toán xử lý Để lựa chọn các ô text lưu trữ dữ liệu kiểu string tachọn từ ô “String & path” từ control palette Không chỉ vậy có thể thực hiện việcchuyển đổi từ dạng string sang các dạng khác như dạng số, dạng mảng (array).Trong LabVIEW, đôi khi người sử dụng có thể cần phải tạo ra hoặc hiển thị một số

ký tự trong bảng mã ASCII mà không thể hiển thị được như: Esc, tab… Để giảiquyết vấn đề đó, Labview đã cung cấp một số từ đại diện cho các từ đó, khi cần thểhiện các ký tự đó ta chỉ cần gõ vào những từ đại diện cho chúng trên Front Panel

2.6.3 Array

Trong việc lập trình đôi khi chúng ta cần xử lý một số các dãy số mà mỗiphần tử trong đó có thể được xử lý như từng thành phần riêng biệt, vì vậy mà tacần tới mảng Các mảng ở đây có thể là mảng một chiều (một cột hoặc một véc tơ),mảng 2 chiều, mảng 3 chiều Labview hỗ trợ cho người lập trình có thể tạo ra các

Trang 32

mảng của mình mà trong đó chứa dữ liệu kiểu numberic, string, boolean… và rấtnhiều dạng dữ liệu khác Các mảng thường được tạo ra bởi các vòng lặp Việc sửdụng vòng lặp là tốt cho các ứng dụng bởi vì nó xác định một vùng bộ nhớ xácđịnh từ khi nó bắt đầu Nếu không dùng các vòng lặp thì LabVIEW không có cáchnào biết được khi nào vòng lặp lại được lặp lại, việc quản lý bộ nhớ có thể sẽ đượcgọi lại nhiều lần và làm chậm việc xử lý.

Người sử dụng có thể sử dụng chức năng xây dựng mảng Nó còn cho phépràng buộc mảng gốc vào các mảng khác

2.6.3.1 Array Constant

Sử dụng hàm này sẽ tạo ra một mảng với các phần tử là các hằng số Đểđịnh nghĩa dạng dữ liệu của mảng hằng số ta lựa chọn bất kỳ hằng số vô hướngnào từ bảng Function Palette và đặt nó vào bên trong mảng hằng số Tất cả cácthành phần của mảng sẽ có dạng này Sử dụng Operating Tool để nhập giá trị chotừng thành phần của mảng Ta không thể thay đổi được giá trị của mảng trong khi

VI chạy

2.6.3.2 Array Max & Min

Hình 2.8 Hàm Array Max & MinHàm này có chức năng tìm kiếm số lớn nhất và số nhỏ nhất của các số trongmảng Hàm này thường trả về kết quả để hiển thị Mảng có thể là mảng n chiều củabất kỳ loại dữ liệu nào

Giá trị lớn nhất (max value) là cùng dạng dữ liệu như các thành phần trongmảng[3]

Chỉ số lớn nhất (max index) là chỉ số của phần tử lớn nhất

Giá trị nhỏ nhất (min value) là cùng dạng dữ liệu như các thành phần trongmảng[3]

Trang 33

Chỉ số nhỏ nhất (min index) là chỉ số của giá trị nhỏ nhất.

2.6.4 Các cấu trúc điều khiển luồng chương trình

Cấu trúc (Structures) là các phần tử điều khiển luồng chương trình luôn cómặt trong bất kể một ngôn ngữ lập trình nào Người lập trình luôn luôn phải gặp vàlàm việc với nó Trong một VI của LabVIEW bao gồm có 5 cấu trúc điều khiểnluồng chương trình đó là: For Loop, While Loop, Case Structure, SequenceStructure và Fomula Node[13]

Các cấu trúc đó thực hiện tự động khi dữ liệu đầu vào của chúng có sẵn vàthực hiện các công việc theo ý muốn cho tới khi hoàn thành thì mới cung cấp dữliệu tới các dây nối dữ liệu đầu ra Tuy nhiên, mỗi cấu trúc thực hiện theo các quytắc riêng (SubDiagram) của nó[13]

SubDiagram là tập hợp của các Node, Wire và Terminal bên trong đườngviền của Structure Mỗi cấu trúc For Loop và While loop có một SubDiagram[13]

Hình 2.9 Vòng lặp While loopCấu trúc Case và Sequence có thể có nhiều SubDiagram, nhưng chỉ có mộtSub Diagram có thể thực hiện tại một thời điểm Cách xây dựng các SubDiagramcũng giống như việc xây dựng các Block diagram mức đầu[13]

Việc truyền dữ liệu vào và ra các Structure thông qua các Terminal mà được

tự động tạo ra ở nơi dây nối đi qua đường viền của cấu trúc, các Terminal này đượcgọi là các đường ống (Tunel)[13]

Trang 34

2.7 SubVI và cách xây dựng SubVI

2.7.1 Khái niệm SubVI

Khi thiết kế chương trình trong LabView, ta thường chú ý thiết kế các VI vàxác định đầu vào và đầu ra cho chúng Khi đó mỗi VI thực hiện một chức năng xácđịnh Trong việc lập trình, các VI đó có thể được sử dụng trong các Block Diagramcủa một VI khác ở mức độ cao hơn Khi đó VI cao hơn đó được gọi là một SubVI Như vậy, một SubVI ta có thể coi như một chương trình con trong các chươngtrình khác như C++… Trong một chương trình labVIEW, không bị hạn chế sốSubVI và mỗi SubVI không bị hạn chế việc gọi đến các SubVI Với tiện ích này,một chương trình trên Labview sẽ trở nên dễ hiểu, gọn gàng và dễ gỡ rốihơn[2,3,13]

2.7.2 Xây dựng SubVI

Có hai cách đơn giản nhất để xây dựng một SubVI: tạo một SubVI từ một

VI và tạo một SubVI từ một phần của VI[13]

2.7.2.1 Tạo một SubVI từ một VI

Các SubVI được sử dụng thông qua Icon và Conector của nó Icon của một

VI là một biểu tượng đồ họa Conector của một VI gán các Control và Indicatorcho các Terminal đầu vào và đầu ra Muốn gọi một VI từ Block Diagram của một

VI khác, thì trước tiên ta phải tạo ra Icon và Conector cho VI đó[13]

Để tạo Icon, ta bấm đúp chuột trái vào biểu tượng Icon ở góc bên phía trêncủa Front Panel hoặc bấm chuột phải vào biểu tượng Icon và chọn Edit Icon… Saukhi chọn Edit Icon… ta dùng các công cụ ở bên trái cửa sổ để tạo ra kiểu Icontrong vùng soạn thảo điểm lớn Hình ảnh mặt định của Icon xuất hiện trong vùngsoạn thảo Phụ thuộc vào dạng màn hình đang sử dụng, ta có thể thiết kế kiểu Icon

ở dạng đơn sắc, 16 màu hoặc 256 màu Màu mặc định của Icon là Đen - Trắng(Black-White), nhưng nó có thể bấm vào mục chọn màu để chuyển sang 16 màuhoặc 256 màu Ta có thể copy một Icon thành một Icon đen – trắng, và ngượclại[3,13]

Trang 35

Hình 2.10 Icon mặc định và Icon sau khi được tạoXác định kiểu Connector Terminal: SubVI nhận dữ liệu tới và gửi dữ liệuthông qua các Terminal ở trong ô vuông Connector của nó Ta có thể xác định cácmối liên hệ bằng cách chọn số Terminal cần thiết cho VI và gán một Front PanelControl hoặc Indicator cho mỗi Terminal Nếu Connector của VI chưa xuất hiện ởgóc trái của Front Panel thì ta chọn Show Connector từ menu của Icon Connectorthay thế Icon ở góc bên phải phía trên của Front Panel Kiểu Terminal ban đầuđược chọn cho VI có số các Terminal bên phải của Connector bằng số Indicatortrên Front panel và số Terminal bên trái Connector bằng số Control trên FrontPanel Nếu điều này không thể có được thì phần mềm sẽ chọn kiểu Terminal phùhợp gần nhất Mỗi hình chữ nhật trong Connector sẽ tương ứng với một đầu vàohoặc đầu ra từ VI Ta có thể chọn một kiểu Terminal khác trong menu Pattern Ta

có thể thêm hoặc loại bỏ bớt Terminal bằng cách chọn Add Terminal hoặc chọnRemove Terminal Sau khi đã chọn được Connector Terminal Pattern ta phải gáncác Front Panel Control và Indicator cho các Terminal theo các bước sau[3,13]:

- Bấm vào một Termianl của Connector, sau đó bấm vào một Front PanelControl hoặc Front Panel Indicator muốn gán cho Terminal đã chọn Một khungbao xung quanh Front Panel của Control hoặc Indicator được chọn xuất hiện vànhấp nháy.[13]

Trang 36

- Bấm vào một vùng mở của Front Panel và bấm chuột, khung nhấp nháybiến mất Termianl và Front Panel Control hoặc Indicator đã chọn được gắn vớinhau[13].

Hình 2.11 Cách thức tạo Conector của một VI

2.7.2.2 Tạo một SubVI từ một phần của VI

Để biến đổi một phần của VI thành một SubVI được gọi từ VI khác, chọnmột phần trong Block Diagram của VI, sau đó chọn Edit\Create SubVI Phần đó sẽ

tự động thành một SubVI Các Control và Indicator được tự động khai báo choSubVI mới SubVI mới tự động nối dây với các đầu dây hiện có và một Icon củaSubVI sẽ thay thế phần được chọn trong Block Diagram của VI gốc Đối vớiSubVI này ta có thể điều chỉnh được Icon & Connector tương tự như trên[3,13]

2.8 Kỹ thuật lập trình nâng cao trong LabVIEW

2.8.1 Liên kết thiết bị ảo với thiết bị phần cứng

Thư viện DAQ VIs nằm trong Panel Functions → Data Acquisition gồm cáclớp khác nhau của DAQ DAQ được chia thành 6 lớp cơ bản sau[13]:

- Analog Input VIs

- Analog Output VIs

- Digital I/O VIs

- Counter VIs

- Calibration and Configuration VIs

- Signal Conditioning VI

Trang 37

Hình 2.12 Thư viện DAQCác DAQ được chia thành các mức khác nhau tùy theo mức độ tác động củachúng Các DAQ được chia thành 4 mức:[13]

Trang 38

Hình 2.13 Thư viện Advanced và thư viện Instrument I/O

Để đưa dữ liệu vào/ra các cổng song song, nối tiếp của máy tính ta có thể sửdụng các VIs vào ra của LabVIEW

2.8.2 Cấu trúc cơ bản của DAQ

Thiết bị ảo được xem như là một công cụ liên kết giữa thiết bị phần cứng vàphần mềm của thiết bị đo lường, được tạo ra bởi người sử dụng với các tiêu chuẩncủa máy tính Hãng National Instruments đã phát triển phần cứng và phần mềmđiều khiển để thu nhận dữ liệu (DAQ), phân tích, biểu diễn và lưu giữ dữ liệu ở cácdạng khác nhau Phần mềm điều khiển là một chương trình nối ghép giữa thiết bịphần cứng và các chức năng mở rộng của các thiết bị cơ bản Phần mềm ứng dụng

Trang 39

có thể là LabVIEW, LabWindows/CVI, ComponentWorks và các công cụ đo lường

cơ bản, mở rộng để hiển thị và phân tích các kết quả của thiết bị ảo[13]

Thiết bị ảo được sử dụng để tạo ra hệ thống theo yêu cầu của kiểm tra, đolường và kỹ thuật tự động hóa, phù hợp với phần cứng nối ghép và phần mềmthành phần Nếu hệ thống thay đổi, ta có thể thay đổi thiết bị ảo mà không cần phảithay đổi phần mềm và phần cứng

2.8.2.1 DAQ

Nhiệm vụ cơ bản của tất cả các hệ thống đo lường là đo và tạo ra các tín hiệuvật lý thực tế Điểm khác biệt lớn nhất của các thiết bị là phương thức truyền giữathiết bị đo lường và máy tính Thiết bị DAQ đa năng là thiết bị kết nối tới máy tính

và nó cho phép truy xuất tín hiệu số Thiết bị DAQ cho phép liên kết trực tiếp vớibus của máy tính thông qua khe cắm mở rộng Một vài thiết bị DAQ ở bên ngoàicho phép liên kết với máy tính thông qua cổng nối tiếp, IEEE 488 (GPIB), hoặccổng ethernet Thiết bị DAQ cho phép biến đổi tín hiệu và thành tín hiệu số và gửichúng tới máy tính (tới phần mềm bên trong máy tính) Phần mềm ứng dụng sửdụng các dữ liệu đó để đo lường, điều khiển và hiển thị dữ liệu bên trong máy tính,đồng thời gửi dữ liệu đó trở lại thiết bị đo lường Phương pháp này có tính mềmdẻo cao vì có thể sử dụng một thiết bị phần cứng cho nhiều dạng kiểm tra và có thểphát triển thêm các ứng dụng khác cho các dạng kiểm tra Thiết bị DAQ đa năngrất thích ứng sử dụng để số hóa dữ liệu của thiết bị đo lường

Hình 2.14 Thiết bị DAQ

Trang 40

Trên hình 2.15, trình bày hai dạng lựa chọn của thiết bị DAQ Trong lựachọn A, hệ thống thiết bị DAQ nằm bên trong máy tính Trong lựa chọn B, thiết bịDAQ nằm ở bên ngoài máy tính Với bảng mạch mở rộng nằm ở bên ngoài ta cóthể xây dựng hệ thống DAQ liên kết với máy tính mà không cần đến khe cắm mởrộng, ví dụ như máy tính xách tay Khi này, máy tính và modul DAQ giao tiếp vớinhau thông qua nhiều loại kênh khác nhau như: Cổng song song, cổng nối tiếp,Ethernet Đây là hệ thống thực hiện thu nhận dữ liệu từ xa và điều khiển ứng dụng.

Hình 2.15 Các dạng lựa chọn thiết bị DAQTrên hình 2.9 không thể hiện lựa chọn thứ 3, lựa chọn này sử dụng busPCMCIA có trong một số máy tính xách tay Một thiết bị PCMCIA liên kết vớimáy tính và truyền tín hiệu tới bo mạch như trong sự lựa chọn A Đây chính là sựlinh động và chặt chẽ của hệ thống DAQ

2.8.2.2 Mối quan hệ giữa LabVIEW với thiết bị DAQ

Máy tính thu nhận dữ liệu thô và chuyển đổi nó thành dạng chuẩn mà người

sử dụng có thể hiểu được Phần mềm mã hóa dữ liệu thành dạng có thể thể hiệntrong đồ thị, biểu đồ hoặc trong file của report Phần mềm không chỉ tác động vào

Ngày đăng: 08/03/2018, 13:16

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
2. T.S Nguyễn Bá Hải (2013), Lập trình LABVIEW, Nhà xuất bản Đại học Quốc gia TP. Hồ Chí Minh Sách, tạp chí
Tiêu đề: Lập trình LABVIEW
Tác giả: T.S Nguyễn Bá Hải
Nhà XB: Nhà xuất bản Đại học Quốc gia TP. Hồ Chí Minh
Năm: 2013
3. Nguyễn Thị Lan Hương, Phạm Thị Ngọc Yến, Nguyễn Việt Tùng, LabVIEW Thiết bị đo và giao diện người máy, Nhà xuất bản Khoa học kỹ thuật Hà Nội Sách, tạp chí
Tiêu đề: LabVIEWThiết bị đo và giao diện người máy
Nhà XB: Nhà xuất bản Khoa học kỹ thuật Hà Nội
10.Hoàng Đức Tuấn, Nguyễn Hữu Quyền, Đoàn Hữu Khánh, Nghiên cứu thiết kế hệ thống điều khiển tự động chống nghiêng tàu thủy, Báo nội san Khoa Điện-Điện tử Đại học Hàng Hải Việt Nam số ngày 1/4/2015 Sách, tạp chí
Tiêu đề: Nghiên cứu thiết kế hệ thống điều khiển tự động chống nghiêng tàu thủy
12. Diễn đang cơ điện tử, LaVIEW cơ bản, http://codientu.org/forums/367/ Link
13. Phần mềm LabVIEW, https://lib.lhu.edu.vn/ViewFile/10668 Link
15. Anti-Heeling Systems Catalogue, Nordic Group Limited http://www.nordicflowcontrol.com/pdtsSvcs_ah.html Link
16. Product Guide (Anti-Heeling Systems Philosophy), Bloomfoss Marine, http://www.bloomfoss.com/products/anti-heeling/ Link
1. Hoàng Minh Công ( 2004), Giáo trình cảm biến công nghiệp, Đại học Bách khoa Đà Nẵng Khác
4. Lưu Đình Hiếu (2004), Truyền động điện tàu thủy, Nhà xuất bản xây dựng Khác
5. Bùi Quốc Khánh, Nguyễn Văn Liễn, Phạm Quốc Hải, Dương Văn Nghi ( 2008), Điều chỉnh tự động truyền động điện, Nhà xuất bản Khoa học và Kỹ thuật Khác
6. Nguyễn Xuân Phú, Tô Đằng (2001), Khí cụ điện lý thuyết kết cấu tính toán lựa chọn và sử dụng, Nhà xuất bản Khoa học và kỹ thuật Khác
7. Phan Quốc Phô (2006), Giáo trình cảm biến, Nhà xuất bản Khoa học và kỹ thuật Khác
8. Lưu Kim Thành (2007) , Phần tử tự động, Nhà xuất bản Hải Phòng Khác
9. Nguyễn Trọng Thuần (2000), Điều khiển logic và ứng dụng, Nhà xuất bản khoa học và kỹ thuật Khác
11.Hoàng Minh Sơn (1996), Mạng truyền thông công nghiệp, nhà xuất bản Khoa học kỹ thuật Khác
14. Quy chuẩn kỹ thuật Quốc gia, quy phạm phân cấp và đóng tàu vỏ thép, QCVN 21:2010/ BGTVT.Tiếng Anh Khác
17. Technical document Anti- Heeling system of GDANSK Poland, Hoppe Marine GMBH Germany Khác
18.User guide and specifications NI myRIO-1900, National Instruments Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w