Tham số HSC DIR CV RV PERIOD NEW_DIR NEW_CV NEW_RV NEW_PERIOD
Số xung Encoder lưu ở ô nhớ ID1000 đang ở kiểu dữ liệu số nguyên Dint cần chuyển sang kiểu sô thực Real để tiện tính toán
Hình 5. 36 Chuyển đổi giá trị xung Encoder đếm được
Hình 5. 37 Lệnh chuyển đổi kiểu dữ liệu (CONV) 71
Báo cáo đồ án tốt nghiệp Lớp: TĐH & ĐK - K55
Lập trình tính tốc độ dịch chuyển của băng tải
Cứ sau mỗi 100“xungms,_hiệnchương_tại”trình NGẮT sẽtốcđọcđộgiádịchtrịchuyểnxungencodercủabăngvề vàtải
gán cho vùng nhớ sau đó tính theo công thức.
=( × × )/ ( 0.1 × ) ( / )
Với:
: xung Encoder đếm được
Gán
: đường kính con lăn bị dẫn (
phép toán trên vào lệnh CALCULATE
Hình 5. 38 Lệnh CALCULAT
Các phép toán biểu thức được ghi ở ô “OUT:=”, IN1, IN2,IN3,IN4 và IN5
là tham số đầu vào tương ứng lần lượt với , , , 0.1 và . OUT là kết quả phép toán.
Hình 5. 39 Tính tốc độ dịch chuyển của băng tải
72
GVHD: SV: Phạm Khắc Hải
K55
5.3.4.Lập trình xử lí tín hiệu Analog
Để xử lí tín hiệu Analog trả về tín hiệu áp 0-10v từ bộ khuếch đại tín hiệu Loadcell ,ta sử dụng kết hợp 2 tập lệnh NORM_X và SCALE_X
Hình 5. 40 Lệnh NORM_XBảng 5. 3 Tham số của lệnh NORM_X Bảng 5. 3 Tham số của lệnh NORM_X
Tham số EN MIN VALUE MAX OUT
Tín hiệu analog dạng điện áp sẽ được chuyển tuyến tính sang giá trị số và lưu vào vùng nhớ IW64
Hình 5. 41 Quy đổi tín hiệu Analog sang tín hiệu số
73
K55
Lệnh NORM_X làm chuẩn hóa thông số VALUE bên trong phạm vi giá trị được xác định bởi các thông số MIN và MAX:
OUT = (VALUE – MIN) /(MAX – MIN) = IW64/27648
với (0,0 <= OUT <= 1,0).
Hình 5. 42 Lệnh SCALE_X Bảng 5. 4 Tham số của lệnh SCALE_X
Tham số EN MIN VALUE MAX OUT
Lệnh SCALE_X định tỷ lệ của thông số số thực được chuẩn hóa VALUE, với (0,0 <= VALUE <= 1,0), để chuyển đổi giá trị VALUE sang một tầm giá trị mới phù hợp với yêu cầu sử dụng. Ở đây là thành giá trị khối lượng vật lý và phạm vi giá trị được xác định bởi các thông số MIN và MAX.
Khối lượng đo bởi loadcell được tính theo công thức:
OUT = VALUE *(MAX –MIN) + MIN= MD50*10 (kg)
5.3.5.Lập trình giao thức truyền thông Modbus RTU
Để PLC có thể giao tiếp với biến tần LS IG5A qua giao thức truyền thông Modbus RTU cần phải dùng 2 khối lệnh của TIA Portal là: MB_COMM_LOAD và MB_MASTER.
74
GVHD: SV: Phạm Khắc Hải
Báo cáo đồ án tốt nghiệp Lớp: TĐH & ĐK - K55
Khối MB_COMM_LOAD: dùng để thiết lập port giao tiếp cho Modbus RTU. Bất kì khối MB_COMM_LOAD nào được tạo thì hê thống cũng sẽ sinh ra 1 khối instance data block cho khối lệnh đó.
Hình 5. 43 Khối MB_COMM_LOAD
Hình 5. 44 Khối Data block đi kèm với khối
MB_COMM_LOAD Bảng 5. 5 Bảng chức năng các chân của khối MB_COMM_LOAD Thông số REQ PORT BAUD PARITY MB_DB DONE ERROR GVHD:
Báo cáo đồ án tốt nghiệp Lớp: TĐH & ĐK - K55
STATUS
Đầu tiên, thêm bit FirstScan cho thông số REQ. Thông số này sẽ kích hoạt khối lệnh khởi tạo khi có cạnh lên
Hình 5. 45 Thêm bit FirstScan
Tiếp theo là chọn Port giao tiếp cho MODBUS. Giá trị của PORT chính là giá trị của thông số Hardware indentifier trong quá trình thiết lập module lúc đầu. Sau khi chọn Module CM 1241 thì chương trình sẽ tự gán Port phù hợp cho khối lệnh như hình dưới.
Hình 5. 46 Định danh phần cứng của Module SM1241 RS422/485
Hình 5. 47 Chọn cổng PORT
76
Báo cáo đồ án tốt nghiệp Lớp: TĐH & ĐK - K55
Sau đó, chọn thêm tốc độ BAUD và kiểm tra tính chẵn lẻ cho khối khởi tạo. Chọn giá trị baud phổ biến là 9600 và không kiểm tra tính chẵn lẻ
( Parity=0).
Khối MB_MASTER: thiết lập chương trình hiện tại như 1 master có thể gửi các yêu cầu xuống Biến tần LS IG5A. Bất kì khối MB_MASTER nào được tạo ra thì 1 instance dasta block cũng sẽ tương ứng được tạo ra.
Hình 5. 48 Khối MB_MASTER
Hình 5. 49 Khối Data block đi kèm với khối MB_MASTER Bảng 5. 6 Bảng chức năng các chân của MB_MASTER Bảng 5. 6 Bảng chức năng các chân của MB_MASTER
Chân
REQ
MB_ADDR MODE
TIEU LUAN MOI download : skknchat@gmail.com
Báo cáo đồ án tốt nghiệp
DATA_ADDR DATA_LEN DATA_PTR DONE ERROR STATUS BUSY
Sau khi chọn xong khối MB_MASTER, quay trở lại khối MB_COMM_LOAD, chọn thông số MB_DB và chọn khối lệnh MB_MASTER_DB như hình dưới
Hình 5. 50 Thêm Data block MB_MASTER_DB vào MD_DB
Tiếp theo, ta thêm các thông số cần thiết cho khối MB_MASTER để thiết lập truyền dữ liệu cho Biến tần LS IG5A.
GVHD: SV: Phạm Khắc Hải
K55
Đầu tiên, ta khai báo 1 bit tên là “REQ” vào chân REQ để cho phép việc truyền dữ liệu cho Biến tần được thực hiện. Sau đó khai báo địa chỉ là M2.4 bằng cách chọn chuột phải và chọn “Define tag…”
Hình 5. 51 Khai báo bit điều khiển truyền dữ liệu
Tiếp theo, ta khai báo địa chỉ Biến tần LS IG5A trong mạng MODBUS. Trong đồ án, biến tần LS IG5A có địa chỉ là 1. Vì vậy, ta nhấn đúp vào thông số MB_ADDR và thêm giá trị 1 như hình dưới
Hình 5. 52 Khai báo địa chỉ biến tần LS IG5A
Sau đó, ta sẽ chọn chế độ giao tiếp truyền thông với biến tần. Trong đồ án, ta cần truyền lệnh điều khiển và giá trị tần số xuống biến tần LS IG5A nên sẽ chọn chế độ là GHI, Vì vậy, ta sẽ chọn giá trị MODE là 1
Hình 5. 53 Chọn chế độ GHI dữ liệu xuống biến tần
Tiếp tục, thêm địa chỉ thanh ghi bắt đầu gần GHI trên biến tần LS IG5A vào thông số DATA_ADDR. Trong đề tài, ta cần thay đổi tần số, và điều khiển biến tần chạy, dừng thông qua giao tiếp truyền thông Modbus RTU. Theo tài liệu
79
K55
biến tần LS IG5A, địa chỉ thanh ghi Tần số yêu cầu và thanh ghi Lệnh điều khiển lần lượt là 0x0005 và 0x0006.
Hình 5. 54 Địa chỉ thanh ghi trên biến tần LS IG5A
Vì vậy, ta sẽ điền giá trị thông số DATA_ADDR là 40005, DATA_LEN là 2
Hình 5. 55 Gán địa chỉ thanh ghi cho DATA_ADDR
Sau đó,ta tạo 1 Data block để chứa giá trị cần truyền xuống biến tần. Và thông số DATA_PTR như một con trỏ để trỏ đến khối dữ liệu này.
Hình 5. 56 Khối dữ liệu chứa giá trị truyền
80
K55
Hình 5. 57 Gán giá trị cho thông số DATA_PTR
5.3.6.Lập trình PID
Để giải quyết bài toán ổn định lưu lượng nguyên liệu trên băng tải trong đề tài, ta sử dụng giải thuật PID. Trong phần mềm TIA Portal đã được tích hợp sẵn hàm PID hỗ trợ người lập trình trong quá trình xây dựng ứng dụng của mình.
Trong Tia Portal có 2 khối PID:
+PID_Compact: được sử dụng cho hầu hết các ứng dụng theo kiểu tự chỉnh.
+PID_3Step: sử dụng cho các đối tượng điều khiển là động cơ bước. Trong chương trình này sẽ sử dụng bộ PID_Compact.
Để thêm khối vào chương trình ta làm như sau: Instructions ▶ Technology ▶ PID Control ▶ Compact PID ▶ PID_Compact.
Hình 5. 58 Lựa chọn khối PID_Compact
81
K55
Hình 5. 59 Khối PID_Compact
Khi tạo khối PID_Compact thì mô hình sẽ tự tạo 1 khối Instance Data block để lưu trữ dữ liệu của khối PID_Compact.
Hình 5. 60 Khối Data block đi kèm với PID_Compact
Thuật toán PID luôn cần lấy mẫu theo chu kì nên cần đặt khối PID vào chương trình ngắt. Cách tạo chương trình ngắt theo chu kì 100ms:
Add new block ▶ Organization block ▶ Cyclic interrupt ▶ OK
82
K55
Hình 5. 61 Tạo khối Cyclic interrupt
Cấu hình thông số bộ PID: đối với khối PID_Compact, ta cần cấu hình trước khi chuyển sang chế độ vận hành (Commissioning).
Có 2 cách cấu hình:
-Cách 1 – kích chuột phải vào bộ PID và chọn Properties.
-Cách 2 – kích chuột vào biểu tượng configuration màu xanh góc trên bên phải. Tiến hành cấu hình như sau:
Basic setting:
+ Controller type: tùy vào đối tượng điều khiển mà sinh viên lựa chọn
cho phù hợp với ứng dụng. + Mục Input: có 2 lựa chọn sau:
- Input_PER (Analog): bộ PID sẽ tự động scale giá trị analog hồi tiếp
về.
- Input: phải xử lý giá trị analog trước khi đưa vào bộ PID.
+ Mục Output: có 3 lựa chọn:
- Output: Ngõ ra của PID định dạng theo số thực
- Output_PER: Ngõ ra của PID định dạng theo Anaalog ouput
- Output_PWM : Ngõ ra của PID định dạng theo độ rộng xung
83
K55
Dựa vào vào yêu cầu đề tài, cần kết hợp tín hiệu analog của loadcell và tín hiệu xung của Encoder để có được tín hiệu lưu lượng phản hồi về bộ PID nên ta thiết lập Basic setting như sau:
- Controller type : Flow (lb/hr)
- Chọn Activate Mode after CPU Reset giúp giữ được trạng thái hoạt động của bộ PID khi đã cấu hình hoàn chỉnh xong , dù CPU khởi động lại hay mất điện
- Input : Input
- Ouput : Output_PER
Hình 5. 62 Thiết lập Basic setting
PID parameter: thể hiện các thông số PID. Các thông số này sẽ được
mô hình tự động tìm ra, nếu muốn thay đổi thì chọn vào Enable manual entry.
Hình 5. 63 PID Parameter trong PID_Compact.
84
TIEU LUAN MOI download : skknchat@gmail.com
Báo cáo đồ án tốt nghiệp
Sau đó, ta quay trở lại cấu hình các tham số của khối PID_Compact được sử dụng bên trên.
Bảng 5. 7 Tham số khối PID_Compact
Thông số Setpoint Input Output_PER State Error
Hình 5. 64 Cấu hình các tham số khối PID
Khối “Xuất giá trị xuống biến tần” sẽ nhận số analog từ khối “PID” và thực hiện 1 phép toán scale giá trị analog này từ dãy giá trị của PLC (0-27648) sang dãy giá trị của biến tần (0 – 16384 ứng với 0 – 60Hz) sau đó gửi giá trị này xuống thanh ghi 0x0005 và gửi lệnh điểu khiển xuống thanh ghi 0x0006 của biến tần thông qua Modbus RTU để điểu khiển tốc độ của động cơ.
85
Báo cáo đồ án tốt nghiệp Lớp: TĐH & ĐK - K55
Hình 5. 65 Quy đổi tín hiệu analog sang giá trị tần số
Các bước tiến hành tìm hệ số PID :
Bước 1. Các bước chuẩn bị trước khi chạy Commissioning
- Ta sẽ không tiến hành quá trình Zero Calibration để loadcell có tính hiệu trả về cố định hoặc sai lệch rất ít giống như khi mô hình đã ổn định.
- Nhập giá trị Setpoint và bắt đầu chạy chế độ Auto. - Mở cửa sổ Commissioning và làm như sau:
Bước 2. Tại Measurement: Chọn thời gian lấy mẫu để giám sát đồ thị hoạt
động của PID với sampling time là 0.3s và nhấn Start
Hình 5. 66 Bắt đầu quá trình Commissioning
Bước 3. Bắt đầu chạy Pretuning. Để đạt được kết quả tốt nhất nên chạy
Pretuning trước khi chạy Fine tuning.
Hình 5. 67 Bắt đầu chạy Pretuning
86
Báo cáo đồ án tốt nghiệp Lớp: TĐH & ĐK - K55
Bước 4. Sau khi quá trình Pretuning kết thúc sinh viên chọn sang
Fine tuning và nhấn Start.
Hình 5. 68 Bắt đầu quá trình Fine tuning
Hình 5. 69 Bộ số PID tìm được
Bước 5. Sau khi kết thúc quá trình Fine tuning, phần mềm TIA Portal sẽ
tìm ra 1 bộ số PID nào đó. Sau đó upload các hệ số PID vào khối PID_Compact.
Hình 5. 70 Nạp các hệ số PID vào khối PID_Compact
Bước 6. Tiếp theo, ta tiến hành chạy mô hình như bình thường bao gồm cả
quá trình Zero Calibration để xem đáp ứng mô hình.
Nếu mô hình chưa được như mong muốn ta có thể tùy chỉnh hệ số ở phần PID Parameter ở trang Configuration của PID_Compact.
Sau quá trình chỉnh và tìm hệ số, ta có bộ số PI như sau: = 57,83889
87
i
Báo cáo đồ án tốt nghiệp
là
5.4. d
Với thời gian tích phân,
Thiết kế giao diện giám sát và điều khiển HMI
Trên Tia portal có tích hợp sẵn phần thiết kế giao diện HMI giúp tiện lợi hơn cho người lập trình. Hỗ trợ thiết kế các màn hình vận hành, các hình báo lỗi, màn hình đăng nhập.
Bước 1. Khởi tạo màn hình HMI để thiết kế : Nhấn đúp vào Add new device ▶ HMI ▶ 4” Display ▶ KTP 400 Basic ▶ 6AV2 123-2DB03-0AX0 ▶ Version màn hình ▶ Bỏ chọn chế độ Start device wizard ▶ OK
Hình 5. 71 Thêm màn hình HMI
Bước 2.Thay đổi địa chỉ IP của HMI, ta chọn HMI_1 ▶ Device
configuration ▶ Enthernet. ▶ General ▶ PROFINET interface [1] ▶ Enthernet adresses
88
GVHD: SV: Phạm Khắc Hải
K55
Hình 5. 72 Thay đổi địa chỉ IP của HMI
Bước 3. Thực hiện kết nối truyền thông giữa PLC S7-1200 và Simatic HMI:
Device. configuration ▶ Network view ▶ Connections ▶ HMI Connection Thực hiện thao tác giữ chuột kéo và nhả cổng Enthernet PLC và Enthernet HMI
Hình 5. 73 Kết nối truyền thông HMI và PLC
Bước 4. Thiết kế giao diện điều khiển cho HMI bằng cách chọn HMI_1 [KTP 400 Basic PN] ▶ Screens ▶ Screen_1
Hình 5. 74 Chọn màn hình để thiết kế
Màn hình thiết kế hiện ra với các Toolbox ở phía bên phải. Vào Element , chọn biểu tượng button
89
K55
Hình 5. 75 Đặt Button lên màn hình HMI
Thiết lập các thuộc tính cho button bằng cách vào thuộc tính General của button như ở hình trang bên, trong phần Text when button is “not press” ta đặt tên cho button là RUN
Hình 5. 76 Đặt tên cho nút nhấn
Sau đó chọn thuộc tính Events ▶ Press. Vào Add function gõ Setbit sau đó chọn hàm
Setbit , sau đó nhấp vào biểu tượng chọn tag, một cửa sổ mưới xuất hiện. Chọn PLC_1
[CPU 1214C AD/DC/Rly]˅’▶ PLCđểhoànTagthành▶Defaultviệc tạoag tablehàm
Setbit,chọn chotag sựONkiệnHMIbuttonsađóđượcnhấpnhấpvào. dấu ‘
90
K55
Tương tự, ta tạp
hàmHìnhreset5.77khiTạorờisựconkiệntrỏkhikhỏinhấnbuttonButtonON
Hình 5. 78 Tạo sự kiện khi nhả Button
Tiếp đó, để hiển thị và nhập các thông số, sô liệu ,ta kéo I/O field vào
Hình 5. 79 Tạo I/O field
Để gắn Tag cho I/O field, ta vào Properties ▶ General ▶ Tag, và dẫn tới
Tag ta cần hiển thị tương tự như Button. Sau đó, ta có thể tùy chỉnh các thuộc tính của I/O field theo ý muốn
Hình 5. 80 Gắn Tag cho I/O field
91
GVHD: SV: Phạm Khắc Hải
Báo cáo đồ án tốt nghiệp Lớp: TĐH & ĐK - K55
Hình 5. 81 Thiết kế hoàn thiện giao diện màn hình HMI
Sau khi thiết kế xong, ta tiến hành tải chương trình thiết kế xuống HMI. Gắn cáp Enther kết nối PLC với HMI qua cổng Profinet
Hình 5. 82 Giao diện HMI khi hoạt động mô phỏng
92
Lớp: TĐH & ĐK - K55
Vì phễu của mô hình thực nghiệm chỉ chứa được khoảng 4 ( ) liệu và công suất động cơ khá nhỏ nên sinh viên thực nghiệm như sau: cho vào trong phễu 4 ( ) liệu sau đó thay đổi giá trị Setpoint và quan sát giá trị lưu lượng thực tế trên màn hình
Sau quá trình thực nghiệm sinh viên nhận thấy:
Động cơ chỉ bắt đầu quay khi biến tần cấp tần số từ 15Hz trở lên, khi đặt lưu lượng quá nhỏ thì tần số biến tần không đủ lớn để làm động cơ quay. Còn khi lưu lượng quá lớn động cơ chạy nhanh, mô hình cơ khí rung lắc nhiều dẫn đến sai số khi vận hành.
Sau quá chạy thử sinh viên thấy khoảng lưu lượng từ: 0.25( /ℎ) – 0.5( /ℎ) mô hình chạy ổn định nên sinh viên sẽ tiến hành thực nghiệm trên khoảng giá trị này cụ thể ở 4 mức lưu lượng 0.25 ( /ℎ),0.3 ( /ℎ),0.4 ( /ℎ),0.5 ( /ℎ).
Chạy với Setpoint là 0.3 (T/h).
Hình 5. 83 Hiển thị giao diện trên thiết bị HMI
93
Chạy thực nghiệm