ĐỒ ÁN HỌC PHẦN 2A: CHƯƠNG 5 TẬP LỆNH LẬP TRÌNH

189 4 0
ĐỒ ÁN HỌC PHẦN 2A: CHƯƠNG 5 TẬP LỆNH LẬP TRÌNH

Đ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

ĐỒ ÁN HỌC PHẦN 2A: CHƯƠNG 5 TẬP LỆNH LẬP TRÌNH

Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Ch ng T p l nh l p trình CH NG 5: T P L NH L P TRÌNH Trang 5-1 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A 5.1 T p l nh c 5.1.1 Bit logic Các tiếp điểm ladder (LAD) Ta kết nối tiếp điểm với tạo mạch logic kết nối Nếu bit ngõ vào mà ta rõ sử dụng định danh I (ngõ vào) hay Q (ngõ ra), giá trị bit đọc từ ghi ảnh tiến trình Các tín hiệu tiếp điểm vật lý tiến trình điều khiển nối đến đầu cực I PLC CPU quét tín hiệu ngõ vào nối cập nhật liên tục giá trị tương ứng ghi ngõ vào ảnh tiến trình Ta ghi rõ kết tức th i ngõ vào vật lý cách sử dụng “:P” theo sau dịch chỉnh I (ví dụ: “%I3.4:P”) Đối với kết tức th i, giá trị liệu bit đọc cách trực tiếp từ ngõ vào vật lý thay từ ảnh tiến trình Một kết tức th i khơng cập nhật ảnh tiến trình Thơng s Kiểu li u Miêu tả IN Bool Bit gán giá trị  Tiếp điểm thư ng h NO (Normally Open) đóng lại (ON) giá trị bit gán  Tiếp điểm thư ng đóng NC (Normally Closed) đóng lại (ON) giá trị bit gán  Các tiếp điểm nối nối tiếp tạo mạch logic AND  Các tiếp điểm nối song song tạo mạch logic OR CH NG 5: T P L NH L P TRÌNH Trang 5-2 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Các hộp FBD: AND, OR XOR Trong lập trình FBD, mạng tiếp điểm LAD chuyển đổi thành mạng dùng khối logic AND (&), OR (> = 1) OR loại trừ (XOR) mà ta rõ giá trị bit cho ngõ vào ngõ hộp Ta cịn kết nối đến hộp logic khác tạo tổ hợp liên hợp logic riêng Sau hộp đặt mạng, ta kéo công cụ “Insert binary input” từ công cụ “Favorites” hay từ lệnh sau thả lên phía đầu vào hộp để thêm nhiều ngõ vào Ta cịn nhấp chuột phải lên kết nối ngõ vào hộp chọn “Insert input” Các ngõ vào ngõ hộp kết nối đến hộp logic khác, hay ta nhập vào địa bit hay tên ký hiệu bit ngõ vào chưa kết nối Khi lệnh hộp thực thi, trạng thái ngõ vào áp dụng cho mạch logic hộp nhị phân ngõ hộp Thông s Kiểu li u Miêu tả IN1, IN2 Bool Bit ngõ vào  Tất ngõ vào hộp AND phải “TRUE” để ngõ “TRUE”  Bất kỳ ngõ vào hộp OR phải “TRUE” để ngõ “TRUE”  Một số lẻ ngõ vào hộp XOR phải “TRUE” để ngõ “TRUE” CH NG 5: T P L NH L P TRÌNH Trang 5-3 Đ ÁN H C PH N 2A GVHD: ThS HỒNG ĐÌNH KHỌI Bộ đảo logic NOT Đối với lập tình FBD, ta kéo cơng cụ “Negate binary input” từ công cụ “Favorites” hay từ lệnh sau thả lên ngõ vào hay ngõ để tạo đảo logic kết nối hộp Tiếp điểm NOT (LAD) chuyển đổi trạng thái logic đầu vào dịng tín hiệu  Nếu khơng có dịng tín hiệu vào tiếp điểm NOT, có dịng tín hiệu  Nếu có dịng tín hiệu vào tiếp điểm NOT, khơng có dịng tín hiệu Cuộn dây ngõ (LAD) Lệnh xuất cuộn dây ghi giá trị cho bit ngõ Nếu bit ngõ ta sử dụng định danh nhớ Q, sau CPU chuyển bit ngõ ghi ảnh tiến trình on off, thiết lập giá trị bit gán với trạng thái luồng tín hiệu Các tín hiệu ngõ cho cấu điều khiển nối đến đầu cực Q S7 – 1200 Trong chế độ RUN, hệ thống CPU quét cách liên tục tín hiệu ngõ vào, xử lý trạng thái ngõ vào theo chương trình logic, sau tác động tr lại cách thiết lập giá trị trạng thái ngõ ghi ngõ ảnh tiến trình Sau chu trình thực thi chương trình, hệ thống CPU chuyển phản ứng trạng thái ngõ lưu trữ ghi ảnh tiến trình đến đầu cực nối dây ngõ Ta xác định kết ghi tức th i ngõ vật lý cách sử dụng “:P” theo sau độ dịch chuyển Q (ví dụ “%Q3.4:P”) Đối với kết ghi tức CH NG 5: T P L NH L P TRÌNH Trang 5-4 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A th i, giá trị liệu bit ghi đến ngõ ảnh tiến trình trực tiếp đến ngõ vật lý Thông s Kiểu li u Miêu tả OUT Bool Bit gán giá trị  Nếu có luồng tín hiệu chạy qua cuộn dây ngõ ra, bit ngõ đặt lên  Nếu khơng có luồng tín hiệu chạy qua cuộn dây ngõ ra, bit ngõ đặt  Nếu có luồng tín hiệu chạy qua cuộn dây ngõ đảo, bit ngõ đặt  Nếu khơng có luồng tín hiệu chạy qua cuộn dây ngõ đảo, bit ngõ đặt lên Hộp gán ngõ (FBD) Trong lập trình FBD, cuộn dây LAD chuyển đổi thành hộp gán (= /=) mà ta định rõ địa bit cho hộp ngõ Các ngõ vào ngõ hộp kết nối với khối logic khác hay ta nhập vào địa bit Thông s Kiểu li u Miêu tả OUT Bool Bit gán giá trị  Nếu tín hiệu vào hộp ngõ 1, bit OUT đặt lên  Nếu tín hiệu vào hộp ngõ 0, bit OUT đặt  Nếu tín hiệu vào hộp ngõ đảo 1, bit OUT đặt  Nếu tín hiệu vào hộp ngõ đảo 0, bit OUT đặt lên CH NG 5: T P L NH L P TRÌNH Trang 5-5 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A 5.1.1.1 Các lệnh Set (đặt) Reset (đặt lại) S R: Set Reset bit  Khi lệnh S (Set) kích hoạt, giá trị liệu địa OUT đặt lên Khi lệnh S không kích hoạt, ngõ OUT khơng bị thay đổi  Khi lệnh R (Reset) kích hoạt, giá trị liệu địa OUT đặt Khi lệnh R khơng kích hoạt, ngõ OUT khơng bị thay đổi  Những lệnh đặt vị trí mạch Thơng s Kiểu li u Miêu tả IN Bool Vị trí bit giám sát OUT Bool Vị trí bit đặt đặt lại SET_BF RESET_BF: Set Reset tr ờng bit Thông s Kiểu li u n Constant OUT Phần tử mảng Boolean CH NG 5: T P L NH L P TRÌNH Miêu tả Số lượng bit để ghi Phần tử bắt đầu trư ng bit đặt hay đặt lại Ví dụ #MyArray[3] Trang 5-6 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A  Khi SET_BF kích hoạt, giá trị liệu gán cho “n” bit bắt đầu địa OUT Khi SET_BF khơng kích hoạt, địa OUT không bị thay đổi  RESET_BF ghi giá trị liệu đến “n” bit bắt đầu địa OUT Khi RESET_BF khơng kích hoạt, địa OUT không bị thay đổi  Những lệnh phải lệnh nằm bên phải nhánh RS SR: mạch ch t bit set trội reset trội RS mạch chốt set trội mà set chiếm ưu Nếu tín hiệu set (S1) reset (R) đúng, địa ngõ OUT SR mạch chốt reset trội mà reset chiếm ưu Nếu tín hiệu set (S) reset (R1) địa ngõ OUT Thông số OUT định rõ địa bit set hay reset Ngõ OUT tùy chọn (Q ) phản ánh trạng thái tín hiệu địa OUT CH Thơng s Kiểu li u S, S1 Bool Ngõ vào set; số “1” biểu thị ưu R, R1 Bool Ngõ vào reset; số “1” biểu thị ưu OUT Bool Ngõ bit gán “OUT” Q Bool Trạng thái kèm theo bit “OUT” NG 5: T P L NH L P TRÌNH Miêu tả Trang 5-7 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A L nh S1 R Bit “OUT” 0 Trạng thái kề trước 1 1 1 S R1 0 Trạng thái kề trước 1 1 RS Bit “OUT” SR 5.1.1.2 Các lệnh ngưỡng dương âm Các dò độ d CH ng âm NG 5: T P L NH L P TRÌNH Trang 5-8 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Thông s Kiểu li u Miêu tả M_BIT Bool Bit nhớ trạng thái kề trước ngõ vào lưu trữ IN Bool Bit ngõ vào mà ngưỡng độ dùng để phát OUT Bool Bit ngõ ra, cho biết ngưỡng độ phát CLK Bool Q Bool Luồng tín hiệu hay bit ngõ vào mà ngưỡng độ chúng dùng để phát Ngõ biểu thị ngưỡng phát Tiếp điểm P (LAD): trạng thái tiếp điểm “TRUE” độ dương (từ OFF sang ON) phát bit “IN” gán Trạng thái logic tiếp điểm sau kết hợp với dịng tín hiệu mạch để thiết lập trạng thái ngõ dịng tín hiệu Tiếp điểm P định vị vị trí mạch, ngoại trừ vị trí kết thúc nhánh Tiếp điểm N (LAD): trạng thái tiếp điểm “TRUE” độ âm (từ ON sang OFF) phát bit gán Trạng thái logic tiếp điểm sau kết hợp với dịng tín hiệu mạch để thiết lập trạng thái ngõ dòng tín hiệu Tiếp điểm N định vị vị trí mạch, ngoại trừ vị trí kết thúc nhánh Hộp P (FBD): trạng thái logic ngõ “TRUE” độ dương (từ OFF sang ON) phát bit ngõ vào gán Hộp P định vị vị trí bắt đầu nhánh Hộp N (FBD): trạng thái logic ngõ “TRUE” độ âm (từ ON sang OFF) phát bit ngõ vào gán Hộp N định vị vị trí bắt đầu nhánh Cuộn dây P (LAD): bit gán “OUT” “TRUE” độ dương (từ OFF sang ON) phát dịng tín hiệu vào cuộn dây Dịng tín hiệu mạch ln chạy xun qua cuộn dây, đóng vai trị trạng thái ngõ dịng tín hiệu Cuộn dây P định vị bât kỳ vị trí mạch CH NG 5: T P L NH L P TRÌNH Trang 5-9 Đ ÁN H C PH N 2A GVHD: ThS HỒNG ĐÌNH KHỌI Cuộn dây N (LAD): bit gán “OUT” “TRUE” độ âm (từ ON sang OFF) phát dịng tín hiệu vào cuộn dây Dịng tín hiệu mạch ln chạy xun qua cuộn dây, đóng vai trị trạng thái ngõ dịng tín hiệu Cuộn dây N định vị bât kỳ vị trí mạch Hộp P= (FBD): bit gán “OUT” “TRUE” độ dương (từ OFF sang ON) phát trạng thái logic kết nối ngõ vào hộp gán bit ngõ vào, hộp định vị điểm kh i đầu nhánh Trạng thái logic ngõ vào chạy xuyên qua hộp giống trạng thái logic ngõ Hộp P= định vị vị trí nhánh Hộp N= (FBD): bit gán “OUT” “TRUE” độ âm (từ ON sang OFF) phát trạng thái logic kết nối ngõ vào hộp gán bit ngõ vào, hộp định vị điểm kh i đầu nhánh Trạng thái logic ngõ vào chạy xuyên qua hộp giống trạng thái logic ngõ Hộp N= định vị vị trí nhánh P_TRIG (LAD/FBD): dịng tín hiệu ngõ Q trạng thái logic “TRUE” độ dương (từ OFF sang ON) phát trạng thái ngõ vào CLK (FBD) hay dịng tín hiệu CLK (LAD) Trong ngôn ngữ LAD, lệnh P_TRIG định vị vị trí kh i đầu hay kết thúc mạch Trong ngôn ngữ FBD, lệnh P_TRIG định vị vị trí nào, ngoại trừ vị trí cuối nhánh N_TRIG (LAD/FBD): dịng tín hiệu ngõ Q trạng thái logic “TRUE” độ âm (từ ON sang OFF) phát trạng thái ngõ vào CLK (FBD) hay dịng tín hiệu CLK (LAD) Trong ngôn ngữ LAD, lệnh N_TRIG định vị vị trí kh i đầu hay kết thúc mạch Trong ngơn ngữ FBD, lệnh N_TRIG định vị vị trí nào, ngoại trừ vị trí cuối nhánh Tất lệnh ngưỡng sử dụng bit nhớ (M_BIT) để lưu trữ trạng thái kề trước tín hiệu ngõ vào giám sát Một ngưỡng phát cách so sánh trạng thái tín hiệu ngõ vào với trạng thái bit nhớ Nếu trạng thái cho biết thay đổi tín hiệu theo hướng cần quan tâm sau CH NG 5: T P L NH L P TRÌNH Trang 5-10 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Các kịch 11 12 thể tương ứng địa Modbus đến địa mảng Boolean Kịch 11: ghi bit ngõ địa Modbus 00001 Các ngõ Các giá tr ngõ vào ph n phụ MB_MASTER thuộc tr ớc Dữ li u DATA_PTR Các ngõ ph n phụ thuộc 27 MB_ADDR (ví phần dụ phụ 00001 ON “Data”.Bool[0] = FALSE OFF 00002 ON “Data”.Bool[1] = TRUE ON 00003 OFF “Data”.Bool[2] = TRUE ON 00004 ON “Data”.Bool[3] = FALSE OFF 00005 ON “Data”.Bool[4] = FALSE ON 00006 OFF Không bị thay đổi 00007 ON Không bị thay đổi 00008 ON Không bị thay đổi thuộc) MODE DATA_ADDR DATA_LEN DATA_PTR CH (Ghi) 00001 (các ngõ ra) “Data”.Bool NG 5: T P L NH L P TRÌNH Trang 5-175 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Kịch 12: đọc 15 bit ngõ địa Modbus 00003 Các giá tr ngõ vào MB_MASTER Giá tr Modbus phụ thuộc Dữ li u DATA_PTR sau MB_ADDR 27 (ví dụ phần phụ thuộc) 00001 ON MODE (Ghi) 00002 ON DATA_ADDR 00001 (các ngõ ra) 00003 OFF “Data”.Bool[0] = FALSE DATA_LEN 00004 ON “Data”.Bool[1] = TRUE 00005 ON “Data”.Bool[2] = TRUE 00006 OFF “Data”.Bool[3] = FALSE 00007 ON “Data”.Bool[4] = TRUE 00008 ON “Data”.Bool[5] = TRUE 00009 ON “Data”.Bool[6] = TRUE 00010 OFF “Data”.Bool[7] = FALSE 00011 OFF “Data”.Bool[8] = FALSE 00012 ON “Data”.Bool[9] = TRUE 00013 OFF “Data”.Bool[10] = FALSE 00014 ON “Data”.Bool[11] = TRUE 00015 OFF “Data”.Bool[12] = FALSE 00016 ON “Data”.Bool[13] = TRUE 00017 ON “Data”.Bool[14] = TRUE 00018 OFF 00019 ON DATA_PTR CH “Data”.Bool NG 5: T P L NH L P TRÌNH Trang 5-176 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Các mƣ điều ki n Giá tr STATUS Miêu tả (W#16# ) 0000 80C8 Khơng có lỗi Hết th i gian ch đáp ứng xác định (liên quan đến RCVTIME hay MSGTIME) Bộ nhận ban hành truy vấn điều khiển dòng để tạm ngưng truyền phát không bao gi cho phép tr lại truyền phát suốt th i 80D1 gian ch xác định Lỗi sinh suốt điều khiển dịng phần cứng nhận khơng giữ vững CTS khoảng th i gian ch xác định 80D2 từ DCE 80E0 Thông điệp kết thúc đệm nhận đầy 80E1 Thông điệp kết thúc kết lỗi chẵn lẻ 80E2 Thông điệp kết thúc kết lỗi lập khung 80E3 Thông điệp kết thúc kết lỗi chạy mức 80E4 Thông điệp kết thúc kết độ dài xác định vượt kích thước đệm tổng 8180 Giá trị ID cổng không hợp lệ 8186 Địa trạm Modbus không hợp lệ 8188 Giá trị Mode không hợp lệ hay chế độ ghi để đọc vùng địa phụ thuộc 8189 Giá trị Data Address không hợp lệ 818A Giá trị Data Length không hợp lệ 818B 818C 8200 CH Yêu cầu truyền phát bị bãi bỏ bì khơng có tín hiệu DSR nhận Con trỏ khơng hợp lệ đến nguồn/đích liệu nội vùng: kích cỡ không Con trỏ đến kiểu cho phép DB kiểu DATA_PTR (phải kiểu Classic DB) Cổng bận xử lý yêu cầu phát NG 5: T P L NH L P TRÌNH Trang 5-177 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A 5.3.2.3 MB_SLAVE Lệnh MB_SLAVE cho phép chương trình giao tiếp phần phụ thuộc Modbus sử dụng cổng module PtP CM 1241 RS485 hay CM 1241 RS232 Một phần chủ RTU Modbus ban hành u cầu sau chương trình đáp ứng qua việc thực thi MB_SLAVE Ta phải gán giá trị Instance Data Block đơn đặt lệnh MB_SLAVE chương trình Tên gọi Instance Data Block sử dụng ta xác định thông số MB_DB lệnh MB_COMM_LOAD Các mã hàm truyền thông Modbus (1, 2, 4, 15) đọc ghi bit từ trực tiếp PLC Input Process Image Output Process Image Bảng ánh xạ địa Modbus đến ý niệm tiến trình CPU Các chức Modbus MB_SLAVE Các mã Chức Vùng liệu S7 ậ 1200 Phạm vi địa Vùng liệu Địa CPU 01 Đọc bit Output Đến 8192 Output Process Image Q0.0 đến Q1023.7 02 Đọc bit Input 10001 Đến 18192 Input Process Image I0.0 đến I1023.7 04 Đọc từ Input 30001 Đến 30512 Input Process Image IW0 đến IW1022 05 Ghi bit Output Đến 8192 Output Process Image Q0.0 đến Q1023.7 15 Ghi bit Output Đến 8192 Output Process Image Q0.0 đến Q1023.7 Các mã hàm truyền thông Modbus (3, 6, 16) sử dụng khối liệu ghi giữ Modbus cách ly đơn mà ta phải tạo ra, trước ta định rõ thơng số MB_HOLD_REG lệnh MB_SLAVE Bảng sau thể ánh xạ ghi giữ Modbus đến địa MB_HOLD_REG PLC CH NG 5: T P L NH L P TRÌNH Trang 5-178 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Các Chức Vùng mã liệu 03 06 16 Đọc Holding từ Register Ghi từ Ghi từ Holding Register Holding Register Vùng liệu Phạm vi địa CPU DB 40001 đến 49999 Địa CPU DB Các từ đến 9999 MB_HOLD_REG 400001 đến 465535 Các từ đến 65535 40001 đến 49999 Các từ đến 9999 MB_HOLD_REG 400001 đến 465535 Các từ đến 65535 40001 đến 49999 Các từ đến 9999 MB_HOLD_REG 400001 đến 465535 Các từ đến 65535 Bảng thể chức chẩn đoán Modbus hỗ trợ Các chức chẩn đoán Modbus MB_SLAVE S7 ậ 1200 Các mã Chức 08 0000H 08 000AH Miêu tả Phản hồi việc kiểm tra báo hiệu tr lại liệu truy vấn: MB_SLAVE báo hiệu tr lại đến phần chủ Modbus từ liệu nhận Xóa đếm kiện truyền thơng: MB_SLAVE xóa hết đếm kiện truyền thông sử dụng hàm 11 Modbus Nhận đếm kiện truyền thông: MB_SLAVE sử dụng đếm kiện truyền thông nội dành cho việc ghi lại số lượng yêu cầu đọc 11 hay ghi Modbus thành công gửi đến phần phụ thuộc Modbus Bộ đếm không tăng lên Function 8, Function 11 hay yêu cầu phát rộng Nó cịn khơng tăng lên yêu cầu mà kết lỗi truyền thơng (ví dụ lỗi chẵn lẻ hay lỗi CRC) MB_SLAVE hỗ trợ yêu cầu ghi phát rộng từ phần chủ Modbus yêu cầu dành cho việc truy xuất vị trí hợp lệ Bất chấp tính có hiệu lực u cầu, MB_SLAVE không đưa đáp ứng đến phần chủ Modbus kết yêu cầu phát rộng CH NG 5: T P L NH L P TRÌNH Trang 5-179 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Thông s MB_ADDR Kiểu Kiểu thông s li u IN USInt Miêu tả Địa RTU Modbus (1 đến 247): Địa trạm phần phụ thuộc Modbus Con trỏ đến DB Holding Register Modbus DB MB_HOLD_REG IN Variant Holding Register phải DB kiểu cổ điển tổng thể Xem phần lưu ý MB_HOLD_REG phía Dữ liệu sẵn sàng: NDR OUT Bool   – khơng có liệu – chứng tỏ liệu vừa ghi b i phần chủ Modbus Dữ liệu đọc: DR OUT Bool   – liệu đọc – chứng tỏ liệu vừa đọc b i phần chủ Modbus Lỗi:  ERROR OUT Bool  – lỗi phát – chứng tỏ lỗi phát mã lỗi cung cấp thông số STATUS hợp lệ STATUS OUT Word Mã lỗi Các quy tắc truyền thông ph n phụ thuộc Modbus  MB_COMM_LOAD phải thực thi để cấu hình cổng, trước lệnh MB_SLAVE giao tiếp với cổng CH NG 5: T P L NH L P TRÌNH Trang 5-180 Đ ÁN H C PH N 2A GVHD: ThS HOÀNG ĐÌNH KHỌI  Nếu cổng để đáp ứng phần phụ thuộc đến phần chủ Modbus, cổng khơng thể sử dụng b i MB_MASTER Chỉ có đối tượng thực thi MB_SLAVE sử dụng với cổng cho  Các lệnh Modbus không sử dụng kiện ngắt truyền thơng để điều khiển q trình truyền thơng Chương trình phải điều khiển q trình truyền thơng việc kiểm tra vòng lệnh MB_SLAVE cho điều kiện hoàn chỉnh phát nhận  MB_SLAVE phải thực thi cách định kỳ tốc độ cho phép tạo đáp ứng lúc yêu cầu vào từ phần chủ Modbus  Ta nên gọi lệnh MB_SLAVE chu trình quét từ OB chu kỳ chương trình Hoạt động MB_SLAVE phải thực thi cách định kỳ để nhận yêu cầu từ phần chủ Modbus sau đáp ứng yêu cầu Tần số việc thực thi MB_SLAVE phụ thuộc theo chu kỳ hết th i gian ch đáp ứng phần chủ Modbus Điều minh họa biểu đồ sau Chu kỳ hết th i gian ch đáp ứng lượng th i gian mà phần chủ Modbus ch đợi bắt đầu đáp ứng từ phần phụ thuộc Modbus Chu kỳ th i gian không xác định giao thức Modbus, thông số phần chủ Modbus Tần số việc thực thi (th i gian thực thi với thực thi kế tiếp) MB_SLAVE phải dựa thông số riêng phần chủ Modbus ta Ít nhất, ta nên thực thi MB_SLAVE hai lần bên chu kỳ hết th i gian ch đáp ứng phần chủ Modbus CH NG 5: T P L NH L P TRÌNH Trang 5-181 Đ ÁN H C PH N 2A GVHD: ThS HỒNG ĐÌNH KHỌI Các ví dụ thơng s MB_HOLD_REG MB_HOLD_REG trỏ đến khối liệu (Data Block) Modbus Holding Register DB sử dụng để giữ giá trị liệu mà phần chủ Modbus cho phép để truy xuất (đọc hay ghi) Ta phải tạo khối liệu gán cấu trúc kiểu liệu mà đọc hay ghi, trước sử dụng với lệnh MB_SLAVE L uý Kh i li u Modbus Holding Register phải tham chiếu kh i li u tổng thể đ ợc tạo với hộp thuộc tính Symbolic Access Only không đ ợc đánh d u Ta phải không đánh dấu vào hộp “Symbolic Access Only” ta thêm vào khối liệu để tạo kiểu DB tổng thể cổ điển Các ghi giữ sử dụng cấu trúc liệu DB sau:  Mảng tiêu chuẩn từ  Cấu trúc từ đặt tên  Cấu trúc phức hợp đặt tên Các ví dụ chương tình sau thể cách sử dụng thông số MB_HOLD_REG để điều khiển cấu trúc liệu DB Ví dụ ậ mảng tiêu chuẩn từ Thanh ghi giữ ví dụ mảng gồm từ Các phép gán kiểu liệu thay đổi sang kiểu kích thước từ khác (Int UInt) Thuận lợi:  Kiểu cấu trúc ghi giữ nhanh đơn giản để tạo  Logic chương trình để truy xuất phần tử liệu đơn giản Bất lợi: CH NG 5: T P L NH L P TRÌNH Trang 5-182 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A  Mặc dù ta tham chiếu cách theo chương trình phần tử mảng tên ký hiệu (từ “HR_DB”.”Array”[1] đến “HR_DB”.”Array”[10]), tên gọi không miêu tả chức bên liệu  Mảng bao gồm kiểu liệu Việc chuyển đổi cần thiết chương trình ngư i dùng với điều khiển kiểu cứng Đây cách thức mà mảng gồm nhiều từ xuất trình soạn thảo khối liệu: Hình ảnh thể cách thức mảng gán giá trị đến ngõ vào MB_HOLD_REG lệnh MB_SLAVE Mỗi phần tử mảng truy xuất tên ký hiệu, thể phía Trong ví dụ này, giá trị di chuyển vào phần tử thứ hai mảng tương ứng với địa Modbus 40002 CH NG 5: T P L NH L P TRÌNH Trang 5-183 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Mỗi từ từ mảng, xác định khối liệu, cung cấp lệnh MB_SLAVE với địa ghi giữ Modbus Trong trư ng hợp này, có 10 phần tử mảng nên có 10 địa ghi có sẵn sử dụng lệnh MB_SLAVE truy xuất phần chủ Modbus Sự tương quan tên gọi phần tử mảng địa Modbus thể đây: “HR_DB”.Array[1] Địa Modbus 40001 “HR_DB”.Array[2] Địa Modbus 40002 “HR_DB”.Array[3] Địa Modbus 40003 … … “HR_DB”.Array[9] Địa Modbus 40009 “HR_DB”.Array[10] Địa Modbus 40010 Ví dụ ậ C u trúc từ đ ợc đặt tên Thanh ghi giữ ví dụ chuỗi từ với tên ký hiệu miêu tả Thuận lợi:  Mỗi phần tử cấu trúc có tên miêu tả với kiểu liệu xác định gán đến Bất lợi:  Để tạo kiểu cấu trúc phải nhiều th i gian so với mảng tiêu chuẩn gồm nhiều từ  Các phần tử đòi hỏi việc tham chiếu ký hiệu bổ sung sử dụng chương trình ngư i dùng Trong phần tử mảng đơn tham chiếu “HR_DB”.Array[0] phần tử kiểu tham chiếu “HR_DB”.Data>Temp[1] CH NG 5: T P L NH L P TRÌNH Trang 5-184 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A Sau cách thức cấu trúc từ đặt tên xuất trình soạn thảo khối liệu Mỗi phần tử có tên đơn kiểu Word, UInt hay Int Hình ảnh thể cách mà cấu trúc liệu gán giá trị đến ngõ vào MB_HOLD_REG lệnh MB_SLAVE chương trình Mỗi phần tử mảng truy xuất tên ký hiệu thể Trong ví dụ này, giá trị di chuyển vào phần tử thứ hai mảng tương ứng với địa Modbus 40002 Phép đối xạ tên phần tử liệu địa Modbus thể đây: “HR_DB”.Data.Temp_1 Địa Modbus 40001 “HR_DB”.Data.Temp_2 Địa Modbus 40002 CH NG 5: T P L NH L P TRÌNH Trang 5-185 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A “HR_DB”.Data.Temp_3 Địa Modbus 40003 “HR_DB”.Data.Good_Count Địa Modbus 40004 “HR_DB”.Data.Bad_Count Địa Modbus 40005 “HR_DB”.Data.Rework_Count Địa Modbus 40006 “HR_DB”.Data.Line_Stops Địa Modbus 40007 “HR_DB”.Data.Avg_Time Địa Modbus 40008 “HR_DB”.Data.Code_1 Địa Modbus 40009 “HR_DB”.Data.Code_2 Địa Modbus 40010 Ví dụ ậ C u trúc phức hợp đ ợc đặt tên Thanh ghi giữ ví dụ chuỗi kiểu liệu hòa trộn với tên ký hiệu miêu tả Thuận lợi:  Mỗi phần tử cấu trúc có tên miêu tả với kiểu liệu xác định gán cho  Nó cho phép chuyển tải trực tiếp kiểu liệu không dựa từ Bất lợi:  Để tạo kiểu cấu trúc phải nhiều th i gian so với mảng tiêu chuẩn gồm nhiều từ  Phần chủ Modbus cần cấu hình để nhận liệu nhận từ phần phụ thuộc Modbus Như thể hình ảnh phía dưới, Temp_1 giá trị thực byte Phần chủ đóng vai trị nhận cần phải có khả lắp ghép từ nhận tr lại vào giá trị thực mong đợi  Các phần tử đòi hỏi việc tham chiếu ký hiệu bổ sung chương trình ta Trong phần tử mảng đơn tham chiếu “HR_DB”.Array[0] phần tử kiểu liệu lại tham chiếu “HR_DB”.Data.Temp_1 CH NG 5: T P L NH L P TRÌNH Trang 5-186 Đ ÁN H C PH N 2A GVHD: ThS HỒNG ĐÌNH KHỌI Đây cách thức mà cấu trúc phức hợp đặt tên xuất trình soạn thảo khối liệu Mỗi phần tử có tên đơn với nhiều kích thước nhiều kiểu liệu: Phép đối xạ tên phần tử liệu địa Modbus thể đây: “HR_DB”.Data.Temp_1 Địa Modbus 40001 40002 “HR_DB”.Data.Temp_2 Địa Modbus 40003 40004 “HR_DB”.Data.Good_Count Địa Modbus 40005 40006 “HR_DB”.Data.Bad_Count Địa Modbus 40007 40008 “HR_DB”.Data.Rework_Count Địa Modbus 40009 40010 “HR_DB”.Data.Line_Stops Địa Modbus 40011 “HR_DB”.Data.Avg_Time Địa Modbus 40012 “HR_DB”.Data.Long_Code Địa Modbus 40013 40014 “HR_DB”.Data.Code_1 Địa Modbus 40015 “HR_DB”.Data.Code_2 Địa Modbus 40016 Một kiểu vận hành CPU S7 – 1200 khác giống phần chủ Modbus sử dụng lệnh MB_MASTER cấu trúc liệu đồng để nhận khối liệu từ kiểu vận hành CPU S7 – 1200 giống phần phụ thuộc Modbus Lệnh phần chủ Modbus chép tất 16 từ liệu cách trực tiếp từ khối liệu CH NG 5: T P L NH L P TRÌNH Trang 5-187 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A HR_DB phần phụ thuộc vào khối liệu Process Data phần chủ, thể đây: Một chuỗi vị trí khối liệu DATA_PTR phần chủ Modbus sử dụng để truyền phát cấu trúc giống hay khác từ nhiều phần phụ thuộc Modbus Các mƣ điều ki n Giá tr STATUS Miêu tả (W#16# ) 80C8 Hết th i gian ch đáp ứng xác định (liên quan đến RCVTIME hay MSGTIME) Bộ nhận ban hành truy vấn điều khiển dòng để tạm ngưng truyền phát hoạt động không bao gi cho phép tr lại truyền phát suốt th i 80D1 gian ch xác định Lỗi sinh suốt điều khiển dòng phần cứng nhận không giữ vững CTS khoảng th i gian ch xác định 80D2 80E0 CH Yêu cầu truyền phát bị bãi bỏ bì khơng có tín hiệu DSR nhận từ DCE Thông điệp kết thúc đệm nhận đầy NG 5: T P L NH L P TRÌNH Trang 5-188 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A 80E1 Thông điệp kết thúc kết lỗi chẵn lẻ 80E2 Thông điệp kết thúc kết lỗi lập khung 80E3 Thông điệp kết thúc kết lỗi chạy mức 80E4 Thông điệp kết thúc kết độ dài xác định vượt kích thước đệm tổng 8180 Giá trị ID cổng không hợp lệ 8186 Địa trạm Modbus không hợp lệ 8187 Con trỏ không hợp lệ đến MB_HOLD_REG 818C Con trỏ đến kiểu cho phép DB kiểu DATA_PTR (phải kiểu Classic DB) Giá tr STATUS Miêu tả (W#16# ) Mã đáp ứng gửi đến phần chủ Modbus (B#16# ) CH 8380 Không đáp ứng Lỗi CRC 8381 01 Mã hàm không hỗ trợ 8382 Không đáp ứng Lỗi độ dài liệu 8383 02 Lỗi địa liệu 8384 03 Lỗi giá trị liệu 8385 03 NG 5: T P L NH L P TRÌNH Giá trị mã chẩn đốn liệu khơng hỗ trợ (mã hàm 08) Trang 5-189 ... CH NG 5: T P L NH L P TRÌNH Trang 5- 15 Đ CH ÁN H C PH N 2A NG 5: T P L NH L P TRÌNH GVHD: ThS HỒNG ĐÌNH KHỌI Trang 5- 16 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A 5. 1.3 Các đếm (Counter) 5. 1.3.1... MB1 MB4 MB5 12 34 34 12 Word MSB LSB MSB LSB Địa MB0 MB MB2 MB3 MB4 MB5 MB6 MB7 12 34 56 78 78 56 34 12 LSB MSB W#16#1234 DW#16#123 456 78 DWord CH MSB NG 5: T P L NH L P TRÌNH LSB Trang 5- 48 Đ GVHD:... vận hành HSC CH NG 5: T P L NH L P TRÌNH Trang 5- 28 Đ CH ÁN H C PH N 2A NG 5: T P L NH L P TRÌNH GVHD: ThS HỒNG ĐÌNH KHỌI Trang 5- 29 Đ GVHD: ThS HỒNG ĐÌNH KHỌI ÁN H C PH N 2A 5. 1.4 So sánh Ta sử

Ngày đăng: 03/01/2023, 13:19

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

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

Tài liệu liên quan