chương 6: Hàm SFC61 "GD_RCV" Với hàm SFC61 "GD_RCV" (global data receive), dữ liệu từ một khung vòng GD đến và chỉ chính xác một gói tin được nhận và đưa vào gói nhận. Điều này phải đã được nhận ra bằng phần mềm S700 . Hàm SFC61 "GD_SND" có thể được gọi ở bất kỳ vò trí nào trong chương trình của người sử dụng. Cách sử dụng vàthông số của hàm GD_RCV cũng tương tự như hàm GD_SND . Kiểu dữ liệu cũng hoàn toàn giống nhau 2.14. Hàm SFC63(AB_CALL) Hàm SFC63 gọi một khối mã viết bằng lập trình hợp ngữ. Khối mã viết bằng hợp ngữ cái mà được viết bằng lập trình ngôn ngữ C hoặc Assembler và rồi được dòch ra. Ta chỉ có thể sử dụng khối mã Assembly với CPU614. Để đọc được thông tin nay đủ hơn về thông số của hàm SFC63 ta có thể đọc tài liệu về CPU 614. Có một tài liệu hướng dẫn riêng cho khối mã hoá dùng ngôn ngữ Assembler . 2.15. Hàm SFC64 “TIME_TCK”(time tick) Ta có thể đọc thời gian hệthống của CPU bằng hàm này. Thời gian hệthống là một “thời gian đếm” đếm tuần hoàn từ 0 đến một giá trò lớn nhất là 2147483647ms. Trong trường hợp có một sự tràn thì thời gian hệthống được đếm lại với giá trò bắt đầu là 0. Độ phân giải và thời gian chính xác của hệthống là 1ms đối với S7_400 và S7_318, ø 10ms với tất cả các CPU 300 khác.Thời gian hệthống bò ảnh hưởng chỉ bới chức năng điều hành của CPU. Ta có thể dùng thời gian hệthống để đo lường quá trình bằng việc so sánh kết quả của 2 lần gọi hàm SFC64. Đầu ra RET_VAL chứa thông số của thời gian hệthống trong tầm từ 0 đến 231-1ms. Mode System time Start Liên tục update Run Hot restart(not with S7- 300 and S7-400 H) Warm restart Tiếp tục với giá trò được lưu khi chuyển sang stop mode Cold restart Bò xóa bỏ và khởi động lại với số Stop Bò stop và trả về giá trò hiện tại 2.16. Hàm SFC65 "X_SEND” Với hàm SFC65”X_SEND” ta gởi dữ liệu tới một CPU liên kết ở bên ngoài phạm vi trạm S7. Dữ liệu được nhận trên CPU này bằng việc sử dụng hàm SFC65 "X_SEND”. Ta có thể xác nhận dữ liệu với thông số vào REQ_ID. Danh đinh này sẽ được gởi kèm theo cùng với dữ liệu. Bạm có thể đặt giá trò cho thông số này trên CPU liên kết bên ngoài để tìm ra dữ liệu nguồn. Dữ liệu được gởi sau khi gọi hàm thì hàm SFC65 khai báo thông số REQ = 1. Phải chác rằng vùng dữ liệu gởi phải được xác đònh bởi SD( trên CPU gởi) nhỏ hơn hoặc giống kích thước với vùng dữ liệu được xác đònh là nhận bởi thông số RD( trên CPU liên kết). Nếu SD là dữ liệu kiểu BOOL thì RD cũng có kiểu dữ liệu là BOOL. Các thông số của hàm : DEST_ID :Thông số đòa chỉ đích ,chứa đại chỉ MPI của CPU liên kết (I, Q, M, D, L). REQ_ID : Thông số này được dùng để xác nhận dữ liệu dữ liệu trên CPU liên kết(I, Q, M, D, L) . SD : Tham chiếu đến vùng gởi (cho phép các kiểu dữ liệu sau: BOOL, BYTE, CHAR WORD, INT, DWORD DINT, REAL, DATE, TOD TIME, S5_TIME RET_VAL :Trả về mã của lỗi nếu quá trình sử lý có lỗi. BUSY o BUSY: kiểu BOOL, I, Q, M, D, L o BUSY=1: Gửi chưa xong. o BUSY=0: Gửi đã xong nhưng không có thêm hàm gởi tiếp. 2.17. Hàm SFC66"X_RCV” Với hàm SFC66 "X_RCV," ta có thể nhận dữ kiệu được gửi bởi 1 hoặc nhiều trạm khác. Và đồng thời cũng kiểm tra được có hay không dữ liẹu đang chờ để được sao chép, dữ liệu đã được nhập trong hàng chờ bởi hệđiều hành. Ta có thể chép một khối dữ liệu sau cùng của hàng chờ sang 1 vùng nhận đã chọn. Các thông số của hàm : cũng giống như hàm FSC65”X_SEND” 2.18 Hàm FB41”CONT_C” Sơ đồ cấu trúc FB41”CONT_C” được sử dụng để điềukhiển các quá trình kỹ thuật với các biến đầu vào và ra tương tự như trên cơ sở thiết bò khả trình Simatic. Trong khi thiết lập tham số, có thể tích cực hoặc không tích cực một số thành phần chức năng của bộ điềukhiển PID cho phù hợp với đối tượng. Module mềm PID bao gồm: Tín hiệu đầu vào SP_INT: Lệnh nhập mức tín hiệu điềukhiển, là số thực, tính theo giá trò % của tín hiệu cực đại thang điều khiển. Tín hiệu phản hồi PV_PER: Tínhiệu phản hồi lấy từ đối tượng được điều khiển. Nó thường được đọctừ một cảm biến Analog qua đầu vào Analog nên người ta chọn kiểu dữ liệu đầu vào này là số nguyên kiểu Word. Chức năng CRP_IN biến đổi kiểu dữ liệu từ số nguyên sang dạng số thực tính theo % cho phù hợp với lệnh. Do Module Analog có giới hạn thang đo tuyến tính là 27648 nên ta coi giới hạn đó là 100% và tín hiệu ra CRP_IN được tính: CRP_IN=PV_PER 27648 100 Để hiệu chỉnh giá trò cảm biến phản hồi, khối chức năng PV_NORM sẽ thực hiện biến đổi tuyến tính, hiệu chỉnh độ nhạy (PV_FAC) và độ trôi (PV_OFF): PV_NORM= CRP_IN PV_FAC +PV_OFF Khi thay thế cảm biến, ta cần hiệu chỉnh 2 giá trò trên để kết quả đo lường không đổi. Trong trường hợp tín hiệu phản hồi không thu được từ cảm biến có dữ liệu tương ứng đầu vàoPV_PER, ta có thể đưa qua tính toán khác và đưa đến đầu vào PV_IN dạng số thực, tính theo %, lúc đó lệnh PVPER_ON phải đặt về mức “0”. Khối sẽ so sánh 2 giá trò vào, cho ra tín hiệu sai lệch. Tín hiệu sai lệch được đưa qua khối chức năng DEADBAND để hệthống không hoạt động với các sai lệch nhỏ dưới mức cần tác động. Điều này cần thiết nếu các hệ làm việc trong môi trường nhiều nhiễu. Trong môi trường ít nhiễu, ta giảm DEAD_W về “0” để tăng độ nhạy, độ chính xác của hệ thống. Hệ số khuếch đại tín hiệu sai lệch của hệ chính là thành phần tỉ lệ Kp, được đặt bằng hệ số GAIN. GAIN là số thực, nếu chọn lớn hệ sẽ tác động nhanh, chính xác nhưng dễ mất ổn đònh. Khâu PID thực sự gồm 3 thành phần: - Thành phần tỉ lệ, được lựa chọn nhờ lệnh chuyển mạch P_SEL - Thành phần tích phân được hình thành bởi khối chức năng INT và được chọn nhờ lệnh chuyển mạch I_SEL. Tính chất khối tích phân xác đònh nhờ giá trò hằng số thời gian TI (Dữ liệu kiểu TIME), giá trò ban đầu I_ITLVAL (Dạng số thực tính theo %). Có sử dụng giá trò ban đầu hay không tuỳ thuộc lệnh I_ITL_ON, và có thể dùng quá trình tích phân giữ nguyên giá trò đầu ra bằng lệnh INT_HOLD. - Thành phần vi phân được hình thành bởi khối chức năng DIF, được lựa chọn nhờ lệnh chuyển mạch D_SEL. Tính chất khối vi phân được xác lập bởi hằng số thới gian TD (Dữ liệu kiểu TIME) và thời gian giữ chậm TM_LAG (Dữ liệu kiểu TIME). - Ba thành phần này được cộng với nhau. Nhờ các lệnh chuyển mạch P_SEL, I_SEL, D_SEL mà ta có thể thành lập các chế độ điềukhiển P, PI, PD, PID khác nhau. ° Tín hiệu sai lệch tổnghợp được cộng thêm thành phần DISV dùng để bù tác động hiễu theo chiều thuận. Giá trò của DISV có dạng số thực, tính theo %. ° Tín hiệu sai lệch được đưa qua bộ hạn chế mức tín hiệu điềukhiển LMNLIMIT. Mức hạn chế trên LMN_HLM và hạn chế dưới LMN_LLM được đưa vào dạng số thực, tính theo%. Đầu vào của khối được lựa chọn theo chế độ bằng tay hay tự động nhờ lệnh MAN_ON. Đầu vào MAN, dạng số thực, tính theo %, dùng để đặt mức tín hiệu ra LMN trong chế độ điềukhiển bằng tay. ° Khối LMN_NORM biến đổi tuyến tính, bù lệch tónh và độ nhạy của cơ cấu chấp hành. Tín hiệu điềukhiển đầu ra LMN có dạng số thực, tính theo %. LMN=LMNLIMIT LMN_FAC+LMN_OFF ° Khối CRP_OUT biến đổi tín hiệu ra dạng số thực ra dạng số nguyên LMN_PER thích ứng với dạng ra các Module ra Analog. LMN_PER=LMN 100 27648 ° Các đầu ra trung gian, kiểm tra: - PV_IN: Tín hiệu phản hồi, dạng số thực, tính theo % ở đầu vào mạch so sánh. - ER: Tín hiệu sai lệch sau khi truyền qua DEADBAND. - LMN_P, LMN_I, LMN_D: các thành phần tỉ lệ, tích phân, vi phân của tín hiệu sai lệch ở đầu vào bộ tổng hợp. - QLMN_HLM, QLMN_LLM: Tín hiệu báo độ sai lệch vượt mức hạn chế trên và dưới. Các tín hiệu đầu ra này có thể dùng theo dõi, báo hiệu hoặc các xử lý khác. 2.18.2 Sử dụng khối hàm FB41 ° Để sử dụng module mềm FB41, ta xét sơ đồ khối tín hiệu: Hình: Sơ đồ khối nối FB41 với đối tượng điều khiển. ° Lệnh điềukhiển được đặt vào dạng số thực (%) qua đầu vào SP_INT. Đầu ra LMN (số nguyên) hoặc LMN_PER (số thực) được đưa đến cơ cấu chấp hành, điềukhiển đối tượng. Tín hiệu phản hồi được đưa trở về đầu vào PV_PER (số nguyên) hoặc PV_IN (số thực). ° Đầu vào DISV sử dụng khi có tác động trực thuận có thể đo lường được, giảm sai lệch đầu ra, nâng cao độ chính xác cho hệ. . chương 6: Hàm SFC61 "GD_RCV" Với hàm SFC61 "GD_RCV" (global data receive), dữ liệu từ một khung vòng GD đến và chỉ chính xác một gói tin được nhận và đưa vào gói nhận. Điều. với đối tượng điều khiển. ° Lệnh điều khiển được đặt vào dạng số thực (%) qua đầu vào SP_INT. Đầu ra LMN (số nguyên) hoặc LMN_PER (số thực) được đưa đến cơ cấu chấp hành, điều khiển đối tượng là 0. Độ phân giải và thời gian chính xác của hệ thống là 1ms đối với S7_400 và S7_318, ø 10ms với tất cả các CPU 300 khác.Thời gian hệ thống bò ảnh hưởng chỉ bới chức năng điều hành của CPU. Ta