HỆ THỐNG GIAO TIẾP GIỮA KHÁCH HÀNG VÀ BÃI ĐỖ XE

Một phần của tài liệu plc s7 1200 dieu khien mo hinh bai do xe cao tang (Trang 92)

Sau khi đưa xe vào khoang trước, hệ thống lập trỡnh PLC sẽ tự động đưa xe vào vị trớ đỗ, người lỏi xe khụng cần thao tỏc bất kỳ động tỏc nào ngoài việc nhập mó pass hay bấm nỳt xỏc định vị trớ khoang lấy cất xe.

Khi cú sự cố quỏ tải thỡ đốn sẽ bỏo, yờu cầu khỏch khụng được cất loại xe này. 5.2. NGUYấN TẮC HOẠT ĐỘNG CỦA BÃI ĐỖ XE

5.2.1. Chế độ 1 khoang

+ Mỗi khoang được mặc định một mó số (tương tự như dựng thẻ điện tử). Mó số trong thẻ điện tử sẽ được đăng ký thành viờn.

+ Nếu muốn cất xe: Khỏch hàng sau khi đưa xe vào khoang trước, sẽ nhập mó Pass của khoang được chọn rồi nhấn Cất xe, hệ thống sẽ đưa xe lờn đỳng vị trớ khoang cú mó Pass đú.

+ Nếu muốn lấy xe: Khỏch hàng sẽ nhấp đỳng mó Pass lỳc cất xe, hệ thống sẽ tự động lấy xe tại khoang đú và trả xe cho khỏch.

Chỳ ý: Nếu trong khoang khụng cú xe, mà khỏch hàng cứ nhấn nỳt Lấy xe thỡ

hệ thống sẽ tự động cảnh bỏo tại màn hỡnh điều khiển.

5.2.2. Chế độ nhiều khoang

+ Mỗi khoang cú thể nhập bất kỳ mó Pass nào (tương tự như dựng thẻ điện tử). Mỗi thẻ điện tử cú một mó Pass riờng nờn khụng bao giờ cú trường hợp nhập mó trựng nhau được.

+ Nếu muốn cất xe: Khỏch hàng sau khi đưa xe vào khoang trước, sẽ nhập mó Pass rồi nhấn Cất xe (cần nhớ mó Pass đó nhập vào), hệ thống sẽ tự động kiểm tra cỏc khoang lần lượt từ dưới lờn trờn, khoang nào trống thỡ sẽ cất xe tại khoang đú. Nếu đó hết, sẽ bỏo hệ thống full xe tại màn hỡnh điều khiển.

+ Nếu muốn lấy xe: Khỏch hàng sẽ nhấp đỳng mó Pass lỳc cất xe, hệ thống sẽ tự động lấy xe tại khoang ứng với mó Pass đú và trả xe cho khỏch.

Chỳ ý: Nếu chưa cất xe mà khỏch hàng cứ nhấn nỳt Lấy xe thỡ hệ thống sẽ tự

5.3. HƯỚNG DẪN SỬ DỤNG VÀ ỨNG DỤNG Mễ HèNH

5.3.1. Hướng dẫn dowload chương trỡnh xuống S7-1200

Tải từ màn hỡnh soạn thảo chương trỡnh bằng cỏch kớch vào biểu tượng download trờn thanh cụng cụ của màn hỡnh.

Chọn cấu hỡnh Type of the PG/PC interface và PG/PC interface sau đú nhấn chọn load.

5.3.2. Kết nối S7-1200 với Wincc qua KEPServerEX 5 Configuration

Bước 1: Giao tiếp giữa Wincc V7.0 với KEPServerEX 5 Configuration

Khởi động KEPServerEX 5 Configuration chọn new file, click chuột trỏi chon nỳt Yes,Update

Nhấn next, chọn Device driver

Nhấn next, chọn địa chỉ mỏy

Click vào ụ click to add device rồi đặt tờn, chọn next

Chọn PLC S7-1200

Nhập địa chỉ PLC

Bước 2: Giao tiếp giữa KEPServerEX 5 Configuration với PLC S7-1200 Sau khi tạo cỏc tag tương ứng với địa chỉ vào ra của PLC và Wincc V7.0 trờn phần mềm KEPServerEX 5 Configuration. Click vào Quick Client

Chạy chương trỡnh trờn PLC và Wincc, KEPServerEX 5 Configuration sẽ tự động kết nối cỏc tag địa chỉ vào ra

5.3.3. Bảng điều khiển

+ Start/Stop: Cho phộp hệ thống bắt đầu hoạt động

+ Dừng khẩn cấp: Chỉ sử dụng cho qua trỡnh thang nõng hạ hoạt động

+ Bỏo quỏ tải: Mụ phỏng trạng thỏi xe vào cú trọng lượng lớn, khụng thớch hợp cất xe tại hệ thống.

+ Đốn Start/Stop: Bỏo trạng thỏi hệ thống hoạt động

+ Đốn Dừng khẩn cấp: Bỏo dừng hệ thống khẩn cấp khi cú sự cố + Đốn Bỏo quỏ tải: Bỏo xe quỏ trọng lượng cho phộp

Bảng 5.1 Quy định vị trớ khoang trong hệ thống ở mỗi tầng

3 1 5

4 2 6

+ Cất xe trước: Yờu cầu hệ thống cất xe tại vị trớ số 4, 2, 6 + Cất xe sau: Yờu cầu hệ thống cất xe tại vị trớ số 3, 1, 5 + Lấy xe trước: Yờu cầu hệ thống lấy xe tại vị trớ số 4, 2, 6 + Lấy xe sau: Yờu cầu hệ thống cất xe tại vị trớ số 3, 1, 5 + Tầng 1: Yờu cầu hệ thống cất lấy xe ở tầng 1

+ Tầng 2: Yờu cầu hệ thống cất lấy xe ở tầng 2 + Tầng 3: Yờu cầu hệ thống cất lấy xe ở tầng 3 + Bờn trỏi: Yờu cầu hệ thống lấy cất xe ở vị trớ số 3,4 + Bờn phải: Yờu cầu hệ thống lấy cất xe ở vị trớ số 5,6

K2 K6 K8 K1K5K7

éC PALET éC NGANG DC dọc

5.4. ỨNG DỤNG CÁC BÀI THỰC HÀNH TRấN Mễ HèNH

5.4.1. Cỏc bài tập cơ bản

Bài tập 01: Viết chương trỡnh điều khiển động cơ quay thuận nghịch (nhấn N1 động

cơ DC dọc quay thuận, nhấn N2 động cơ DC dọc quay nghịch, nhấn N3 động cơ dừng. Chu trỡnh tương tự cho động cơ DC Pallet và ĐC Ngang).

12V DC

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Vẽ sơ đồ đấu dõy phần cứng. + Viết chương trỡnh trờn S7-1200.

Bài tập 02: Viết chương trỡnh đếm số lượng xe đi vào bói. Mỗi khi cú xe đi vào, bộ

đếm tăng 1 giỏ trị, khi cú xe đi ra thỡ bộ đếm sẽ giảm xuống. Khi số lượng xe đó đầy, đốn cảnh bỏo ở lối vào sẽ sỏng.

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Viết chương trỡnh trờn S7-1200.

Bài tập 03: Viết chương trỡnh điều khiển hoạt động của Pallet lấy xe trước. Nhấn

I0.0 động cơ Pallet dịch chuyển ra phớa trước, chạm cụng tắc hành trỡnh trước I0.2 dừng. Nhấn I0.1 động cơ Dọc đưa Pallet lờn 3s thỡ dừng, đồng thời động cơ Pallet dịch chuyển ra lại phớa sau, nhấn I0.3 dừng động cơ Pallet.

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Vẽ sơ đồ đấu dõy phần cứng. + Viết chương trỡnh trờn S7-1200.

Bài tập 04: Viết chương trỡnh điều khiển hoạt động của Pallet lấy xe sau. Nhấn I0.0

động cơ Pallet dịch chuyển ra phớa sau, chạm cụng tắc hành trỡnh sau I0.2 dừng. Nhấn I0.1 động cơ Dọc đưa Pallet lờn 3s thỡ dừng, đồng thời động cơ Pallet dịch chuyển ra lại phớa trước, nhấn I0.3 dừng động cơ Pallet.

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Vẽ sơ đồ đấu dõy phần cứng. + Viết chương trỡnh trờn S7-1200.

Bài tập 05: Viết chương trỡnh điều khiển hoạt động của Pallet cất xe trước. Nhấn

I0.0 động cơ Dọc đưa Pallet lờn 3s thỡ dừng, đồng thời động cơ Pallet dịch chuyển ra phớa trước, chạm cụng tắc hành trỡnh trước I0.2 thỡ dừng. Nhấn I0.1 động cơ Dọc đưa Pallet xuống 3s thỡ dừng, đồng thời động cơ Pallet dịch chuyển ra phớa sau, nhấn I0.3 dừng động cơ Pallet.

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Vẽ sơ đồ đấu dõy phần cứng. + Viết chương trỡnh trờn S7-1200.

Bài tập 06: Viết chương trỡnh điều khiển hoạt động của Pallet cất xe sau. Nhấn I0.0

động cơ Dọc đưa Pallet lờn 3s thỡ dừng, đồng thời động cơ Pallet dịch chuyển ra phớa sau, chạm cụng tắc hành trỡnh sau I0.2 thỡ dừng. Nhấn I0.1 động cơ Dọc đưa

Pallet xuống 3s thỡ dừng, đồng thời động cơ Pallet dịch chuyển ra phớa trước, nhấn I0.3 dừng động cơ Pallet.

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Vẽ sơ đồ đấu dõy phần cứng. + Viết chương trỡnh trờn S7-1200.

Bài tập 07: Viết chương trỡnh điều khiển tỡm vị trớ khoang.

Nhấn I0.0 kớch hoạt lấy xe trước ( M0.0 lờn mức 1 ), nhấn I0.1 kớch hoạt cất xe trước ( M0.1 lờn mức 1 ), nhấn I0.2 kớch hoạt lấy xe sau ( M0.2 lờn mức 1 ), nhấn I0.3 kớch hoạt cất xe sau ( M0.3 lờn mức 1 ).

Nhấn I0.5 kớch hoạt tầng 1 ( M0.5 lờn mức 1 ), nhấn I0.6 kớch hoạt tầng 2 ( M0.6 lờn mức 1 ), nhấn I0.7 kớch hoạt tầng 3 ( M0.7 lờn mức 1 ).

Nhấn I1.0 kớch hoạt bờn trỏi ( M1.0 lờn mức 1 ), nhấn I1.1 kớch hoạt bờn phải ( M1.1 lờn mức 1 ).

Nhúm tiếp điểm M0.0, M0.1, M0.2, M0.3: Kớch hoạt từng chương trỡnh con cất lấy xe tương ứng.

Nhúm tiếp điểm M0.5, M0.6, M0.7: Chọn tầng cất lấy xe.

Nhúm tiếp điểm M1.0, M1.1: Chọn phớa trỏi hay phải để cất lấy xe.

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Vẽ sơ đồ đấu dõy phần cứng. + Viết chương trỡnh trờn S7-1200.

5.4.2. Bài tập nõng cao

Bài tập 01: Tạo giao diện giỏm sỏt và điều khiển trờn Wincc. Sử dụng phần mềm

Wincc để tạo giao diện điều khiển.

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Tạo giao diện điều khiển và viết chương trỡnh điều khiển bằng ngụn ngữ C hay VB trờn Wincc.

Bài tập 02: Viết chương trỡnh điều khiển và giỏm sỏt toàn bộ hệ thống. Kết cỏc bài

tập cơ bản trờn thành một bài hoàn chỉnh điều khiển toàn bộ hệ thống. Giỏm sỏt điều khiển sử dụng bài tập 01 phần bài tập nõng cao.

Yờu cầu:

+ Túm tắt ngừ vào ra.

+ Vẽ sơ đồ đấu dõy phần cứng. + Viết chương trỡnh trờn S7-1200.

+ Tạo giao diện điều khiển và viết chương trỡnh điều khiển bằng ngụn ngữ C hay VB trờn Wincc.

PHỤ LỤC

 Phụ lục 1: Tập lệnh cơ bản sử dụng lập trỡnh Wincc

 C Editor:

SetTagBit("tờn đối tượng",giỏ trị); // đưa giỏ trị vào đối tượng GetTagBit("tờn đối tượng"); // lấy giỏ trị của đối tượng SetLeft("tờn projects.pdl"," tờn đối tượng ",giỏ trị); // tọa độ X của đối tượng SetTop("tờn projects.pdl "," tờn đối tượng ", giỏ trị); // tọa độ Y của đối tượng a=GetLeft("tờn projects.pdl "," tờn đối tượng "); // lấy tọa độ X của đối tượng b=GetTop("tờn projects.pdl "," tờn đối tượng "); // lấy tọa độ Y của đối tượng SetRotationAngle("tờn projects.pdl "," tờn đối tượng ",p); // quay một đối tượng b=GetRotationAngle("tờn projects.pdl "," tờn đối tượng ")

SetHeight("tờn projects.pdl "," tờn đối tượng ",giatri); // tăng giảm chiều cao b=GetHeight("tờn projects.pdl "," tờn đối tượng ") ;

SetWidth("tờn projects.pdl "," tờn đối tượng ",giatri); // tăng giảm chiều rộng b=GetWidth ("tờn projects.pdl "," tờn đối tượng ") ;

 VBS Editor:

+ Đọc/Ghi giỏ trị Tag:

Dim objTag ‘định nghĩa một biến

Set objTag = HMIRuntime.Tags(“Tag1”) ‘gỏn biến này tới tag

objTag.Read ‘đọc giỏ trị của tag

objTag.Value = objTag.Value + 1 ‘tăng giỏ trị này lờn 1 đơn vị

objTag.Write ‘ghi giỏ trị này ra tag

+ Chuyển màu nền của hỡnh chữ nhật cú tờn Rectangle1 thành màu đỏ:

Dim objRectangle ‘định nghĩa một biến

Set objRectangle = Screenltems(“Rectangle1”) ‘gỏn biến này thành đối tượng “Rectangle1” trong picture

objRectangle.BackColor = RGB(255,0,0) ‘thay đổi màu nền của đối tượng thành màu đỏ

Sub Tag_setting(Byval specified_amount_Tag, Byref Control_Tag)

Dim start_time ‘định nghĩa biến

Start_time = Now() ‘gỏn thời gian hiện tại Control_Tag.value = 1 ‘set bit của Tag

Control_Tag.write ‘ghi giỏ trị ra Tag

specified_amount_Tag.read(1) ‘đọc giỏ trị của Tag chứa khoảng thời gian While ((Hour(Now())*3600 + Minute(Now))*60 + Second(Now()))- (Hour(Start_time)*3600 + Minute(Start_time)*60 + Second(Start_time))) <= (specified_amount_Tag.Value) ‘so sỏnh hiệu số giõy với khoảng thời gian ‘nếu hiệu số giõy của thời gian hiện tại và bắt đầu > specified_amount thỡ gỏn 0 cho Tag

Control_Tag.value = 0 Control_Tag.write End Sub

+ Chế độ chạy tự động của cỏc Valve khi Tag Auto_manual lờn 1 Dim auto ‘khai bỏo cỏc biến chứa trạng thỏi

Dim Valve_A Dim Valve_B Dim Valve_C Dim Mixer Dim Time_VA Dim Time_VB Dim Time_VC Dim Time_M

Set auto = HMIRuntime.Tags(“Auto_manual”) Set Valve_A = HMIRuntime.Tags(“Valve_A”) Set Valve_B = HMIRuntime.Tags(“Valve_B”) Set Valve_C = HMIRuntime.Tags(“Valve_C”) Set Mixer = HMIRuntime.Tags(“Mixer”)

Set Time_VA = HMIRuntime.Tags(“Time_Valve_A”) Set Time_VB = HMIRuntime.Tags(“Time_Valve_B”) Set Time_VC = HMIRuntime.Tags(“Time_Valve_C”) Set Time_M = HMIRuntime.Tags(“Time_Mixer”) auto.Read

If auto.Value Then ‘nếu Tag auto chuyển từ 0 -> 1 thỡ chạy tự động Tag_setting Time_VA, Valve_A ‘mở Valve A trong thời gian Time_VA Tag_setting Time_VB, Valve_B ‘mở Valve B trong thời gian Time_VB Tag_setting Time_VC, Valve_C ‘mở Valve C trong thời gian Time_VC Tag_setting Time_M, Mixer ‘mở Valve Mixer trong thời gian Time_M Else

Valve_A.Value 0, 1 ‘nếu Tag auto chuyển từ 1 ->0 thỡ ngừng chạy tự động Valve_B.Value 0, 1

Valve_C.Value 0, 1 Mixer.Value 0, 1 End if

End Function

+ Tag Auto_Manual là 1 thỡ tag Lock_Button là 0 và ngược lại

Dim auto ‘khai bỏo biến

Dim lock

Set auto = HMIRuntime.Tags(“Auto_manual”) ‘kết nối với Tags Set lock = HMIRuntime.Tags(“Lock_button”)

Auto.Read(1) ‘đọc giỏ trị của tag

Auto_manual

‘nếu tag Auto_manual là 1 thỡ tag Lock_button là 0 If auto.Value Then

Lock.Write 0, 1 Else

Lock.Write 1, 1 End If

End Funtion

 Phụ lục 2: Lập trỡnh chương trỡnh trờn Wincc

 Chương trỡnh chế độ 1: Tương tự chế độ nhiều khoang

 Chương trỡnh chế độ nhiều khoang:

if ( ( GetTagBit("layxe")==1 ) && ( GetTagBit("chedo_nhieukhoang")==1 ) ) {

if ( (GetTagFloat("oluu_1")!=0) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_1") == GetTagFloat("matma") ) { SetTagBit("layxetruoc",1) ; // Return-Type: BOOL

SetTagBit("tang2",1); SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_12",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang12",1) ;

SetTagBit("catxe_khoang12",0) ;

SetTagBit("layxe_khoang12_anhien",1) ; } }

if ( (GetTagFloat("oluu_2")!=0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_2") == GetTagFloat("matma") ) { SetTagBit("layxetruoc",1) ; // Return-Type: BOOL

SetTagBit("tang2",1); SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_32",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang32",1) ;

SetTagBit("catxe_khoang32",0) ;

SetTagBit("layxe_khoang32_anhien",1) ; } }

if ( (GetTagFloat("oluu_3")!=0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_3") == GetTagFloat("matma") ) { SetTagBit("layxesau",1); // Return-Type: BOOL

SetTagBit("tang2",1); SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_42",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang42",1) ;

SetTagBit("catxe_khoang42",0) ;

SetTagBit("layxe_khoang42_anhien",1) ; } }

if ( (GetTagFloat("oluu_4")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_4") == GetTagFloat("matma") ) { SetTagBit("layxesau",1); // Return-Type: BOOL

SetTagBit("tang2",1); SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_62",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang62",1) ;

SetTagBit("catxe_khoang62",0) ;

SetTagBit("layxe_khoang62_anhien",1) ; } }

if ( (GetTagFloat("oluu_5")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_5") == GetTagFloat("matma") ) { SetTagBit("layxetruoc",1) ;// Return-Type: BOOL

SetTagBit("tang3",1); SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_13",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang13",1) ;

SetTagBit("catxe_khoang13",0) ;

SetTagBit("layxe_khoang13_anhien",1) ; } }

if ( (GetTagFloat("oluu_6")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_6") == GetTagFloat("matma") ) { SetTagBit("layxetruoc",1) ;// Return-Type: BOOL

SetTagBit("tang3",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_23",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang23",1) ;

SetTagBit("catxe_khoang23",0) ;

SetTagBit("layxe_khoang23_anhien",1) ; } }

if ( (GetTagFloat("oluu_7")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_7") == GetTagFloat("matma") ) { SetTagBit("layxetruoc",1) ;// Return-Type: BOOL

SetTagBit("tang3",1); SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("layxe_khoang33",1) ; SetTagBit("catxe_khoang33",0) ;

SetTagBit("layxe_khoang33_anhien",1) ; } }

if ( (GetTagFloat("oluu_8")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_8") == GetTagFloat("matma") ) { SetTagBit("layxesau",1); // Return-Type: BOOL

SetTagBit("tang3",1); SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_43",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang43",1) ;

SetTagBit("catxe_khoang43",0) ;

SetTagBit("layxe_khoang43_anhien",1) ; } }

if ( (GetTagFloat("oluu_9")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_9") == GetTagFloat("matma") ) { SetTagBit("layxesau",1); // Return-Type: BOOL

SetTagBit("tang3",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_53",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang53",1) ;

SetTagBit("catxe_khoang53",0) ;

SetTagBit("layxe_khoang53_anhien",1) ; } }

if ( (GetTagFloat("oluu_10")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_10") == GetTagFloat("matma") ) { SetTagBit("layxesau",1); // Return-Type: BOOL

SetTagBit("tang3",1); SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_63",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang63",1) ;

SetTagBit("catxe_khoang63",0) ;

SetTagBit("layxe_khoang63_anhien",1) ; } }

if ( (GetTagFloat("oluu_11")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_11") == GetTagFloat("matma") ) { SetTagBit("layxetruoc",1) ;// Return-Type: BOOL

SetTagBit("tang4",1); SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_14",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang14",1) ;

SetTagBit("catxe_khoang14",0) ;

SetTagBit("layxe_khoang14_anhien",1) ; } }

if ( (GetTagFloat("oluu_12")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_12") == GetTagFloat("matma") ) { SetTagBit("layxetruoc",1) ;// Return-Type: BOOL

SetTagBit("tang4",1); SetTagBit("kiemtra",1);

SetTagBit("layxe_khoang24",1) ; SetTagBit("catxe_khoang24",0) ;

SetTagBit("layxe_khoang24_anhien",1) ; } }

if ( (GetTagFloat("oluu_13")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_13") == GetTagFloat("matma") ) { SetTagBit("layxetruoc",1) ;// Return-Type: BOOL

SetTagBit("tang4",1); SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_34",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang34",1) ;

SetTagBit("catxe_khoang34",0) ;

SetTagBit("layxe_khoang34_anhien",1) ; } }

if ( (GetTagFloat("oluu_14")==0 ) && (GetTagBit("kiemtra") == 0 ) ) {

if ( GetTagFloat("oluu_14") == GetTagFloat("matma") ) { SetTagBit("layxesau",1); // Return-Type: BOOL

SetTagBit("tang4",1); SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_44",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang44",1) ;

SetTagBit("catxe_khoang44",0) ;

SetTagBit("layxe_khoang44_anhien",1) ;} }

{

if ( GetTagFloat("oluu_15") == GetTagFloat("matma") ) { SetTagBit("layxesau",1); // Return-Type: BOOL

SetTagBit("tang4",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_54",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang54",1) ;

SetTagBit("catxe_khoang54",0) ;

SetTagBit("layxe_khoang54_anhien",1) ;} }

if ( (GetTagFloat("oluu_16")==0 ) && (GetTagBit("kiemtra") == 0 ) ) { if ( GetTagFloat("oluu_16") == GetTagFloat("matma") )

{ SetTagBit("layxesau",1); // Return-Type: BOOL SetTagBit("tang4",1);

SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_64",0) ; // da tien hanh lay xe SetTagBit("layxe_khoang64",1) ;

SetTagBit("catxe_khoang64",0) ;

SetTagBit("layxe_khoang64_anhien",1) ; } }

Else

{ // ma pass nhap vao khong dung } }

if ( ( GetTagBit("catxe")==1 ) && ( GetTagBit("chedo_nhieukhoang")==1 ) ) { if ( (GetTagFloat("oluu_1")==0) && (GetTagBit("kiemtra") == 0 ) )

{ SetTagFloat("oluu_1", GetTagFloat("matma") ) ; SetTagBit("catxetruoc",1); // Return-Type: BOOL SetTagBit("tang2",1);

SetTagBit("kiemtra",1);

SetTagBit("khoang_12",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang12",1) ;

SetTagBit("layxe_khoang12",0) ;

SetTagBit("catxe_khoang12_anhien",1) ; SetTagBit("xevao", 1) ; }

if ( (GetTagFloat("oluu_2")==0 ) && (GetTagBit("kiemtra") == 0 ) ) { SetTagFloat("oluu_2", GetTagFloat("matma") ) ;

SetTagBit("catxetruoc",1); //Return-Type: BOOL SetTagBit("tang2",1);

SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_32",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang32",1) ;

SetTagBit("layxe_khoang32",0) ;

SetTagBit("catxe_khoang32_anhien",1) ; SetTagBit("xevao", 1) ; }

if ( (GetTagFloat("oluu_3")==0 ) && (GetTagBit("kiemtra") == 0 ) ) { SetTagFloat("oluu_3", GetTagFloat("matma") ) ;

SetTagBit("catxesau",1); //Return-Type: BOOL SetTagBit("tang2",1);

SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_42",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang42",1) ;

SetTagBit("layxe_khoang42",0) ;

SetTagBit("catxe_khoang42_anhien",1) ; SetTagBit("xevao", 1) ; }

{ SetTagFloat("oluu_4", GetTagFloat("matma") ) ; SetTagBit("catxesau",1); //Return-Type: BOOL SetTagBit("tang2",1);

SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_62",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang62",1) ;

SetTagBit("layxe_khoang62",0) ;

SetTagBit("catxe_khoang62_anhien",1) ; SetTagBit("xevao", 1) ; }

if ( (GetTagFloat("oluu_5")==0 ) && (GetTagBit("kiemtra") == 0 ) ) { SetTagFloat("oluu_5", GetTagFloat("matma") ) ;

SetTagBit("catxetruoc",1); //Return-Type: BOOL SetTagBit("tang3",1);

SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_13",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang13",1) ;

SetTagBit("layxe_khoang13",0) ;

SetTagBit("catxe_khoang13_anhien",1) ; SetTagBit("xevao", 1) ; }

if ( (GetTagFloat("oluu_6")==0 ) && (GetTagBit("kiemtra") == 0 ) ) { SetTagFloat("oluu_6", GetTagFloat("matma") ) ;

SetTagBit("catxetruoc",1); //Return-Type: BOOL SetTagBit("tang3",1);

SetTagBit("kiemtra",1);

SetTagBit("khoang_23",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang23",1) ;

SetTagBit("catxe_khoang23_anhien",1) ; SetTagBit("xevao", 1) ; }

if ( (GetTagFloat("oluu_7")==0 ) && (GetTagBit("kiemtra") == 0 ) ) { SetTagFloat("oluu_7", GetTagFloat("matma") ) ;

SetTagBit("catxetruoc",1); //Return-Type: BOOL SetTagBit("tang3",1);

SetTagBit("benphai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_33",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang33",1) ;

SetTagBit("layxe_khoang33",0) ;

SetTagBit("catxe_khoang33_anhien",1) ; SetTagBit("xevao", 1) ; }

if ( (GetTagFloat("oluu_8")==0 ) && (GetTagBit("kiemtra") == 0 ) ) { SetTagFloat("oluu_8", GetTagFloat("matma") ) ;

SetTagBit("catxesau",1); //Return-Type: BOOL SetTagBit("tang3",1);

SetTagBit("bentrai",1); SetTagBit("kiemtra",1);

SetTagBit("khoang_43",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang43",1) ;

SetTagBit("layxe_khoang43",0) ;

SetTagBit("catxe_khoang43_anhien",1) ; SetTagBit("xevao", 1) ; }

if ( (GetTagFloat("oluu_9")==0 ) && (GetTagBit("kiemtra") == 0 ) ) { SetTagFloat("oluu_9", GetTagFloat("matma") ) ;

SetTagBit("catxesau",1); //Return-Type: BOOL SetTagBit("tang3",1);

SetTagBit("khoang_53",1) ; // da tien hanh cat xe SetTagBit("catxe_khoang53",1) ;

Một phần của tài liệu plc s7 1200 dieu khien mo hinh bai do xe cao tang (Trang 92)

Tải bản đầy đủ (DOCX)

(128 trang)
w