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_2

82 144 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 82
Dung lượng 3,27 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ụ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êng tà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

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ết

quả 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ỳ

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 kinh

nghiệ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 iv

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 591

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

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

GUI Graphic User Interface

HTML Hypertex Markup Language

I/O Input/ Output

IEEE Institute of Electrical and Electronics Engineers

ISA Internet Security Aceleration

LAVIEW Laboratory Virtual Instrumentation Engineering Workbench

LSB Least Significant Bit

MATLAB Matrix Laboratory

NI National Instruments

PCI Peripheral Component Interconnect

PCMCIA Personal Computer memory Card International Association

PDA Personal Digital Assistant

PID Proportional Intergral Derivative

PLC Programable Logic Controller

USB Universal Serial Bus

Trang 6

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

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

2.10 Icon mặc định và Icon sau khi đƣợc tạo 26

2.13 Thƣ viện Advanced và thƣ viện Instrument I/O 29

2.16 Mối quan hệ giữa LABVIEW với thiết bị DAQ 32

2.18 Thu thập dữ liệu tại Cơ quan hàng không và vũ trụ -

Trang 9

3.5 Bơm hoạt động hút 1 chiều 42

3.8 Tín hiệu sơ cấp và thứ cấp trên MXP cổng A và B 45

3.9 Tín hiệu sơ cấp và thứ cấp trên MSP cổng C 45

3.12 Bố trí mặt ngoài của tủ điều khiển động cơ 49

3.13 Bố trí mặt bên trong tủ điều khiển động cơ 50

3.15 Đấu nối các thiết bị trong tủ điện chống nghiêng 51

3.16 Tạo hai cửa sổ Front Panel và Block Diagram 52

3.17 Tạo hai bồn chứa nước trong giao diện giám sát chống

nghiêng

52

3.19 Tạo các hiển thị trạng thái van và bơm trên giao diện 55

3.20 Giao diện giám sát chống nghiêng tàu thủy 56

3.22 Chương trình đọc tín hiệu và hiển thị trang thái chống

nghiêng

58

3.23 Chương trình xuất tín hiệu điều khiển ra ngoài 59

3.24 Giao diện báo chế độ tự động, góc nghiêng < 2o 60

3.25 Giao diện báo chế độ tự động, góc nghiêng >2o 60

3.26 Giao diện báo chế độ tự động, góc nghiêng > 5o 61

Trang 10

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ất

nhiề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 áp

dụ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ông

nghệ và thiết bị tự động hóa sản xuất đang dần được thay thế các công nghệ lạc

hậ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

1900

Với một hệ thống cảng biển trải dài trên mọi miền đất nước nên ngành công

nghiệp đóng tàu đã sản sinh ra những con tàu hiện đại có tải trọng lớn Vì vậy vấn

đề đặt ra cho ngành công nghiệp này là phải có hệ thống giám sát và điều khiển

hoàn thiện, nhanh nhạy, độ chính xác và an toàn cao để giảm bớt sức lao động của

con người Đặc biệt là trong quá trình xếp dỡ hàng hóa và khi tàu hành trình trên

biển trong điều kiện sóng gió đòi hỏi phải có sự giám sát về chống nghiêng

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 áp dụ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ều

nhữ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ềm

LAVIEW để giám sát để đạt được kết quả tối ưu nhất, tăng năng suất và giảm chi

phí 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 11

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êng

tà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ân

tí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ới

phươ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 ứng

dụng phần mềm laview và bộ điều khiển NI myRIO 1900 trong thiết kế giao diện

giá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 cao

quá 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ăng

suấ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 12

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ạy

họ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ào

thự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 13

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áy

mó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óa

khô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ên

liệ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àu

khiến cho trọng lượng của các két giảm xuống Để giải quyết vấn đề ổn định cho

tà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à hai

bê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át

chố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óc

nghiêng,van ,bơm để đưa đến hệ thống điều khiển bơm nước từ két trái sang két

phả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ủy

ngườ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ào

tính năng, kết cấu,hình dáng,kích thước của loại tàu

Trang 14

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ủa

con 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ụng

cá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ê ̣n

quá 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ống

nghiê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ính

toá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 cho

phé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ơle

trung gian để khởi đô ̣ng các bơm chống nghiêng tương ứng Hê ̣ thống này rất quan

trọ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 con

tà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ị đắm

tàu[10]

Trang 15

Hê ̣ thống giám sát và điều khiển chống nghiêng tàu có nhiệm vụ chín h là

nâng cao tính ổn đi ̣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ó ngoa ̣i lực tác du ̣ng lên tàu như sóng, gió[10]

Viê ̣c điều hành hoa ̣t đô ̣ng của hê ̣ thống chống nghiêng tàu sẽ được thực hiê ̣n theo lê ̣nh của sĩ quan boong , thông thường là đại phó (chief officer) khi đã nghiên

cứ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ần

thiế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ên quan đế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ặc ngườ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ên

cạnh đó là quan sát được trạng thái hoạt động của các bơm, van, quan sát được

mứ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 nguy

hiể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 động mứ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 16

- 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ác

van 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ên tà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ét

nà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ạy

bơ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ển

chố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ệu

khở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ều

khiể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à đa ̣i phó ) chịu

Trang 17

đ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ển

chố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ống

thì độ nguy hiểm đối với c on tàu sẽ rất lớn Ngày nay, đối với các tàu có yêu cầu

cao về đô ̣ ổn đi ̣nh như các tàu chở container , tàu chở hàng rời thì đ ược ứng dụng

loạ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ần

phải được thường xuyên theo dõi để đảm bảo không có hỏng hóc nào xảy ra đối

vớ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ử

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 18

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

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 ở

Trang 19

các van để đóng, mở đường ống khởi động bơm Nếu như tàu bị nghiêng sang bên

trá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ét

bê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ét nước, các bộ chuyển đổi mức, cảm biến để báo động trong trường hợp mức nước

quá 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ống

Ballast 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ác thông số của hệ thống chống nghiêng tàu như: góc nghiêng, mức nước trong hai

ké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ều khiể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…

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ủa tàu để bù lại góc tương ứng Như đã nói ở phần trên thì hệ thống chống nghiêng

tà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ặp

phả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]

Trang 20

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ến nghiêng được đặt ở trong các két nước của hệ thống sẽ báo tín hiệu để gửi đến

trung 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 ống

trướ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ồi

trạ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ại

vớ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ếu

tí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 cho

ngườ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 21

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 Engineering Workbench) là một phần mềm máy tính được phát triển bởi công ty National

Instruments[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ôn

ngữ 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ây

dẫn trông giống như một sơ đồ khối,nó thường được sử dụng cho những mục đích

như giao tiếp máy tính, đo lường , kiểm tra , đánh giá, xử lý, mô phỏng, và điều

khiể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 LABVIEW

dù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ự động

hó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ác

nước đặc biệt là Mỹ, Hàn quốc, Nhật Bản[2]

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àn toà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ường

soạ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ài

phiên bản LABVIEW cho các hệ điều hành Window, Linux, hãng NI đã phát

triển các modul LABVIEW cho máy hỗ trợ cá nhân PDA[2]

Trang 22

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ập

sẵ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ào

chứ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ội

suy 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ân

tích này làm cho phần mềm LabVIEW vô cùng dễ sử dụng Nhờ có hơn 15

Express 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ện

thị 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ực

quan 2D, 3D cài sẵn Nhờ đó ta có thể nhanh chóng hình dung và biểu hiện lại các

thuộ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 đó, qua

Internet bằng phần mềm LabVIEW có thể xem và điều khiển được VIs Nếu như

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ài

liệ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 NI

DIA[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 qua

cá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ên

cứu hay mục đích của hệ thống mà người lập trình mong muốn[2]

Trang 23

- 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ơn

nhiề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ột

cá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ình

minh 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ực

hiệ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ới

mọ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ới

hà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ết

hợ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 độp

chí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ới

I/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]

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]

Trang 24

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ách

thứ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ác

thiế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ất

trong 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ới ngườ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]

2.4.1.1 Front Panel

Front panel là một panel tương tự như panel của thiết bị thực tế Ví dụ các nút bấm, nút bật, các đồ thị và các bộ điều khiển Từ Front Panel người dùng chạy

và quan sát kết quả có thể dùng chuột, bàn phím để đưa dữ liệu vào sau đó cho

chương trình chạy và quan sát Front Panel thường gồm các bộ điều khiển

(Control) và các bộ hiển thị (Indicator)[13]

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

Trang 25

Hình 2.2 Cách lấy Control

Hình 2.3 Các Control thường dùng

Trang 26

Indicator 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]

trúc lệnh để chương trình thực hiện Block Diagram là một mã nguồn đồ họa của

một VI Các đối tượng trên Front Panel được thể hiện bằng các thiết bị đầu cuối

trê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 Front

panel[13]

Trang 27

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

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ác chương trình con Do đó để xây dựng một VI ta có thể chia thành nhiều VI thực

hiệ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ột

khối để thực thi những công việc cụ thể trong một chương trình

2.5 Các bảng trên LabVIEW

Điểm khác biệt của phần mềm LabVIEW so với các ngôn ngữ lập trình thông thường khác là ngôn ngữ lập trình LabVIEW còn sử dụng các bảng Có thể

kể đến ở đây là bảng Tools Palette, Controls Palette và Function Palette Những

bảng này tạo nên sự khác biệt tích cực đó là làm cho ngôn ngữ LabVIEW trở nên

dễ nhớ đơn giản không có những câu lệnh rườm rà, khó nhớ Chúng còn cung cấp

cho người sử dụng các chức năng để có thể tạo ra và thay đổi trên cửa sổ Front

Trang 28

Panel và Block Diagram chính bằng các biểu tượng, các hình ảnh trực quan giúp

ích trong việc ứng dụng trở nên dễ dàng và linh động hơn[13]

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 con

trỏ 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ủa

công cụ mà chúng ta đã lựa chọn trước đó Nếu muốn thiết lập một chế độ tự động

lự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 Front

Panel hoặc Block Diagram, LabVIEW sẽ tự động lựa chọn công cụ phù hợp trên

bảng Tool Palette[13]

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ều

khiển (control) và các bộ hiển thị (Indicator) Để có được bảng điều khiển controls

palette 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ển thị 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 do hã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ị do ngườ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ều khiển phong phú khác nhau Ta có thể sử dụng tất cả các thanh phần của bảng

controls, ở 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

Trang 29

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ương trình LabVIEW[13]

- 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ương trì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 đổi

giá 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úng

chỉ 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ể được xác lập ở chế độ đầu vào hay đầu ra hoặc chỉ đường dẫn đến các file cần hiển

thị[13]

2.5.3 Function palette

Cũng như bảng Controls Palette thì bảng Functions Palette cũng chỉ xuất hiện trên một cửa sổ nhưng không phải Front panel mà là Block Diagram Để tạo

dự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ứa

trong 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ảng

Function 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,

Trang 30

, 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ác

hà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ểu

tượ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ột

chứ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ông

việ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ủa

xử lý và thay đổi dữ liệu trở nên dễ dàng và thuận lợi hơn Trong lý thuyết về phần

mềm LabVIEW,cho thấy rằng các biến được chia làm 2 loại là biến toàn cục

(global variables) và các biến địa phương (local variables)

- Biến toàn cục Global variables: được dùng để thực hiện mọi công việc trao đổi giữa một vài VI là truyền và lưu trữ dữ liệu Trong LabVIEW biến toàn

cụ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ì ta

chỉ 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ến

toà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 and

Constants function” tiếp đó thả chúng lên của sổ Diagram Trên các Controls hoặc

cá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ải

tạ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ó

Trang 31

mỗi biến toàn cục Với các kiểu dữ liệu như numerics và Boolean tương đối đơn

giả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ốn

dù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ài

dị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ần

mề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ệc

thay đổ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 ưu

tiê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òng

lệ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

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ên các thiết bị điều khiển hoặc thiết bị hiển thị trên của sổ Front Panel Local Variable

giú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ển hoặ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 địa

phươ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ển hoặ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ều

khiể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ọn

sai 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]

Trang 32

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ụng chuỗ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 ta

chọn từ ô “String & path” từ control palette Không chỉ vậy có thể thực hiện việc

chuyể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ải

quyế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ỗi phần tử trong đó có thể được xử lý như từng thành phần riêng biệt, vì vậy mà ta

cầ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

mảng của mình mà trong đó chứa dữ liệu kiểu numberic, string, boolean… và rất

nhiề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ách

nà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ẽ được

gọ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ép rà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ướng

nào từ bảng Function Palette và đặt nó vào bên trong mảng hằng số Tất cả các

thành phần của mảng sẽ có dạng này Sử dụng Operating Tool để nhập giá trị cho

từng thành phần của mảng Ta không thể thay đổi được giá trị của mảng trong khi

Trang 33

2.6.3.2 Array Max & Min

Hình 2.8 Hàm Array Max & Min Hà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ố trong mả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ủa

bấ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 trong mả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 trong mảng[3]

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ển

luồng chương trình đó là: For Loop, While Loop, Case Structure, Sequence

Structure 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 quy

tắ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 đường viền của Structure Mỗi cấu trúc For Loop và While loop có một SubDiagram[13]

Trang 34

Hình 2.9 Vòng lặp While loop Cấu trúc Case và Sequence có thể có nhiều SubDiagram, nhưng chỉ có một Sub Diagram có thể thực hiện tại một thời điểm Cách xây dựng các SubDiagram

cũ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

được gọi là các đường ống (Tunel)[13]

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 Diagram

củ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ương

trì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ối

hơ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

Trang 35

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à Indicator

cho 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ên của Front Panel hoặc bấm chuột phải vào biểu tượng Icon và chọn Edit Icon… Sau

khi chọn Edit Icon… ta dùng các công cụ ở bên trái cửa sổ để tạo ra kiểu Icon

trong 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ùng

soạ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àu

hoặc 256 màu Ta có thể copy một Icon thành một Icon đen – trắng, và ngược

lại[3,13]

Hình 2.10 Icon mặc định và Icon sau khi được tạo Xác định kiểu Connector Terminal: SubVI nhận dữ liệu tới và gửi dữ liệu thông qua các Terminal ở trong ô vuông Connector của nó Ta có thể xác định các

mối liên hệ bằng cách chọn số Terminal cần thiết cho VI và gán một Front Panel

Control 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 Connector

Trang 36

thay 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ố Indicator

trên Front panel và số Terminal bên trái Connector bằng số Control trên Front

Panel 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ào

hoặ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ọn

Remove Terminal Sau khi đã chọn được Connector Terminal Pattern ta phải gán

cá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 Panel Control hoặc Front Panel Indicator muốn gán cho Terminal đã chọn Một khung

bao xung quanh Front Panel của Control hoặc Indicator được chọn xuất hiện và

nhấp nháy.[13]

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

nhau[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ọn một phần trong Block Diagram của VI, sau đó chọn Edit\Create SubVI Phần đó sẽ

Trang 37

SubVI sẽ thay thế phần được chọn trong Block Diagram của VI gốc Đối với

SubVI 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ác lớ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

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

- Easy VIs

- Intermadiate VIs

- Utility VIs

Trang 38

Ngoài ra, LabView còn có thư viện cho các hệ thống Card chuyên dụng của hãng NI[13]

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ẩn

củ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ác

dạ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ị

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, đo lườ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ềm

thà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ải

thay đổ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ệu vậ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ữa

thiế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ới

bus 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ài

cho 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ặc

cổ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ửi

chú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ềm

dẻ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ăng

rấ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ựa chọ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ới

nhau 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ị DAQ Trê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 bus PCMCIA có trong một số máy tính xách tay Một thiết bị PCMCIA liên kết với

má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ện

trong đồ 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: 25/05/2018, 22:42

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 đề: LabVIEW Thiế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 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À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