Giáo trình Lý thuyết thực hành

IN: BOOL: cho phép Timer.

PT: Int: giá trị đặt cho timer(VW, IW, QW, MW, SW,

SMW, LW, AIW, T, C, AC, Constant, *VD, *LD, *AC)

Txxx: số hiệu Timer.

Khi Ngõ vào I0.0 = 1 thì bit T33 lên 1 ( Ngõ ra Q0.0 lên 1)

Khi I0.0 xuống 0, thời gian Timer bắt đầu tính, đủ thời gian 1s = 100x10ms thì bit

T33 sẽ tắt (Q0.0 tắt)

Nếu I0.0 xuống 0 trong khoảng thời gian chưa đủ 1s đã lên 1 lại thì bit T33 vẫn giữ

nguyên trạng thái

 

pdf 138 trang kimcuc 5800
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Lý thuyết thực hành", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Giáo trình Lý thuyết thực hành

Giáo trình Lý thuyết thực hành
Bản thảo giáo trình thực hành PLC 5 – 2009
 Bản thảo giáo trình thực hành PLC
 Phần 1
 LÝ THUYẾT THỰC HÀNH
 Biên soạn: Th.s Trần Văn Trinh 1
Bản thảo giáo trình thực hành PLC 5 – 2009
 Giới thiệu mô hình
 Biên soạn: Th.s Trần Văn Trinh 2
Bản thảo giáo trình thực hành PLC 5 – 2009
Tập Lệnh Trong S7_200:
1. Lệnh về bit:
 : tiếp điểm thường hở.
 : tiếp điểm thường đóng.
 : Cuộn coil, ngõ ra.
 : đảo trạng thái bit.
 : Set bit
 : Reset bit
 : Vi phân cạnh lên
 : Vi phân cạnh xuống.
 Biên soạn: Th.s Trần Văn Trinh 3
Bản thảo giáo trình thực hành PLC 5 – 2009
Ví dụ: Hãy viết chương trình theo yêu cầu sau:
Bài 1: Hệ thống gồm hai công tắc và 1 bóng đèn chỉ cần 1 trong hai công tắc ON thì
đèn sẽ sáng.
Input: công tắc 1: I0.0 Output: đèn: Q0.0
 công tắc 2: I0.1
Bài 2: Hệ thống 2 nút nhấn và 1 motor, 1 nút quy định Start và 1 nút Stop. Khi Start
được nhấn thì motor chạy, Start buông ra motor vẫn chạy và chạy cho đến khi Stop
được nhấn thì motor dừng.
Bài 3: Sử dụng các lệnh về bit,viết chương trình để điều khiển Q0.4 và Q0.5 lên mức
cao trong một chu kì khi có I0.4.
 Biên soạn: Th.s Trần Văn Trinh 4
Bản thảo giáo trình thực hành PLC 5 – 2009
Ý nghĩa Các Network tương ứng.
2. Timer: Có 3 loại Timer : TON, TOF, TONR.
 Biên soạn: Th.s Trần Văn Trinh 5
Bản thảo giáo trình thực hành PLC 5 – 2009
TON: Delay On.
TOF: Delay Off.
TONR: Delay On có nhớ
2.1 TON:
 Txxx: số hiệu Timer.
 IN: cho phép Timer( BOOL).
 PT:giá trị đặt cho timer(VW, IW, QW, MW, SW,
 SMW,
 LW, AIW, T, C, AC, Constant, *VD, *LD, *AC) .
Trong S7_200 có 256 Timer, ký hiệu từ T0-T255
Các số hiệu Timer trong S7_200 như sau:
Timer Type Resolution Maximum Value Timer Number
TONR 1 ms 32.767 s T0, T64
 10 ms 327.67 s T1-T4, T65-T68
 100 ms 3276.7 s T5-T31, T69-T95
TON, TOF 1 ms 32.767 s T32, T96
 10 ms 327.67 s T33-T36, T97-T100
 100 ms 3276.7 s T37-T63, T101-T255
Ví dụ: Sử dụng lệnh Delay ON để tạo thời gian trễ trong 1s.
 Biên soạn: Th.s Trần Văn Trinh 6
Bản thảo giáo trình thực hành PLC 5 – 2009
Khi ngõ vào I0.0 =1 Timer T37 được kích, nếu sau 10x100ms =1s I0.0 vẫn giữ trạng
thái thì Bit T37 sẽ lên 1 ( Khi đó Q0.0 lên 1 ).
Nếu I0.0 =1 không đủ thời gian 1s thì bit T37 sẽ không lên 1.
2.2 TOF:
 IN: BOOL: cho phép Timer.
 PT: Int: giá trị đặt cho timer(VW, IW, QW, MW, SW,
 SMW, LW, AIW, T, C, AC, Constant, *VD, *LD, *AC)
 Txxx: số hiệu Timer.
Ví dụ: Sử dụng lệnh Delay OFF để tạo thời gian trễ .
 Biên soạn: Th.s Trần Văn Trinh 7
Bản thảo giáo trình thực hành PLC 5 – 2009
Khi Ngõ vào I0.0 = 1 thì bit T33 lên 1 ( Ngõ ra Q0.0 lên 1)
Khi I0.0 xuống 0, thời gian Timer bắt đầu tính, đủ thời gian 1s = 100x10ms thì bit
T33 sẽ tắt (Q0.0 tắt)
Nếu I0.0 xuống 0 trong khoảng thời gian chưa đủ 1s đã lên 1 lại thì bit T33 vẫn giữ
nguyên trạng thái
Giản đồ thời gian:
2.3 TONR:
 Biên soạn: Th.s Trần Văn Trinh 8
Bản thảo giáo trình thực hành PLC 5 – 2009
 IN: BOOL: cho phép Timer.
 PT: Int: giá trị đặt cho timer(VW, IW, QW, MW, SW,
 SMW, LW, AIW, T, C, AC, Constant, *VD, *LD, *AC)
 Txxx: số hiệu Timer.
Ví dụ:Dùng lệnh Delay ON có duy trì để tạo thời gian trễ.
Ngõ vào I0.0 có tác dụng kích thời gian cho Timer, khi ngõ I0.0 =1 thời gian Timer
được tính, khi I0.0=0 thời gian không bị Reset về 0. Khi đủ thời gian thì Bit T1 sẽ
lên1.
Thời gian Timer chỉ bị Reset khi có tín hiệu Reset Timer ( tín hiệu từ ngõ I0.1)
Giản đồ thời gian:
 Biên soạn: Th.s Trần Văn Trinh 9
Bản thảo giáo trình thực hành PLC 5 – 2009
Bài tập:
Điều khiển Đèn xanh đỏ tại ngã tư với yêu cầu sau:
 Xanh A : Trong 15s
 Vàng A : Trong 3s
 Xanh B : Trong 25s
 Vàng B : Trong 4s
Ta có thể mở rộng bài toán điều khiển đèn giao thông có thêm đường dành cho người
đi bộ.
Lưu đồ giải thuật:
 Biên soạn: Th.s Trần Văn Trinh 10
Bản thảo giáo trình thực hành PLC 5 – 2009
 start
 1 0
 Đặt thời gian
 Xanh A T37 là 15s
 1
 Đỏ B
 1 0
 Đặt thời gian
 Vàng A T38 là 3s
 1
 1 0
 Đặt thời gian
 Xanh B T39 là 25s
 1
 Đỏ A
 1 0
 Đặt thời gian
 Vàng B T40 là 4s
 1
 Biên soạn: Th.s Trần Văn Trinh 11
Bản thảo giáo trình thực hành PLC 5 – 2009
 Biên soạn: Th.s Trần Văn Trinh 12
Bản thảo giáo trình thực hành PLC 5 – 2009
3.Counter :Có 3 loại Counter.
3.1 Counter Up(đếm lên):
 Cxxx: Số hiệu counter (0-255)
 CU: Kích đếm lên Bool
 R: Reset Bool
 PV: Giá trị đặt cho counter INT
 PV: VW, IW, QW, MW, SMW, LW, AIW, AC, T, C, Constant,
 *VD, *AC, *LD, SW
Mô tả:
 Biên soạn: Th.s Trần Văn Trinh 13
Bản thảo giáo trình thực hành PLC 5 – 2009
 Khi có một cạnh lên ở chân CU, giá trị bộ đếm (1 Word) được tăng lên 1. Khi
giá trị hiện tại lớn hơn hoặc bằng giá trị đặt PV(Preset value), ngõ ra sẽ được bật lên
ON.
 Khi chân Reset được kích (sườn lên) giá trị hiện tại bộ đếm và ngõ ra được trả
về 0. Bộ đếm ngưng đếm khi giá trị bộ đếm đạt giá trị tối đa là 32767 (216 – 1).
Ví dụ:Dùng counter đếm lên đếm số xung từ I0.0 ,giá trị đặt là 4.
Giản đồ xung:
 3.2 Counter Down(đếm xuống):
 Cxxx: số hiệu counter (0-255)
 Biên soạn: Th.s Trần Văn Trinh 14
Bản thảo giáo trình thực hành PLC 5 – 2009
CD: kích đếm xuống Bool
LD: Load Bool
PV: giá trị đặt cho counter INT
PV: VW, IW, QW, MW, SMW, LW, AIW, AC, T, C,
 Constant, *VD, *AC, *LD, SW
Mô tả:
Khi chân LD có cạnh lên giá trị PV được nạp cho bộ đếm.
Mỗi khi có cạnh lên ở chân CD, giá trị bộ đếm (1 Word) được giảm xuống 1. Khi giá
trị hiện tại của bộ đếm bằng 0, ngõ ra sẽ được bật lên ON và bộ đếm sẽ ngưng đếm.
Ví dụ :Dùng counter đếm xuống đếm số xung từ I0.0.
Giản đồ xung:
 Biên soạn: Th.s Trần Văn Trinh 15
Bản thảo giáo trình thực hành PLC 5 – 2009
3.3 Counter Up/Down (đếm lên/xuống):
 Cxxx: số hiệu counter (0-255)
 CU: kích đếm lên Bool
 CD: kích đếm xuống Bool
 R:reset Bool
 PV:giá trị đặt cho counter INT
 (PV: VW, IW, QW, MW, SMW, LW, AIW, AC, T, C, Constant,
 *VD, *AC, *LD, SW ).
Mô tả:
 Khi có cạnh lên ở chân CU, giá trị bộ đếm (1 Word) được tăng lên 1. Khi có
 một cạnh lên ở chân CD, giá trị bộ đếm được giảm xuống 1. Khi giá trị hiện tại
 lớn hơn hoặc bằng giá trị đặt PV(Preset value), ngõ ra sẽ được bật lên ON.
 Khi chân R được kích (sườn lên) giá trị bộ đếm và ngõ Out được trả về 0.
 Giá trị cao nhất của bộ đếm là 32767 và thấp nhất là –32768.Bộ đếm ngừng
 đếm khi giá trị bộ đếm đạt ngưỡng.
Ví dụ:Sử dụng counter đếm lên xuống.
 Biên soạn: Th.s Trần Văn Trinh 16
Bản thảo giáo trình thực hành PLC 5 – 2009
Giản đồ xung:
Bài tập:
 Biên soạn: Th.s Trần Văn Trinh 17
Bản thảo giáo trình thực hành PLC 5 – 2009
1. Hãy thiết kế và viết chương trình đếm sản phẩm sao cho khi đếm đủ 100 sản phẩm,
băng tải ngưng và chuông reo cho tới khi có tín hiệu Reset.Hệ thống sẽ đếm lại 100
sản phẩm mới,và ngưng khi nút Stop được nhấn.
2. Giống như bài tập 1 nhưng khi đủ 100 sản phẩm băng tải tự động ngừng trong 5s
sau đó tự động chạy trở lại.
Chương trình bài tập 2:
Input: Cảm biến phát hiện sản phẩm: I0.4
 Nút nhấn 1: reset: I0.3
 Nút nhấn 2: start: I0.0
 Nút nhấn 3: stop: I0.1
 Nút nhấn 4: auto/manual: I0.2
Output: Chuông: Q0.0
 Motor: Q0.1
Lưu đồ giải thuật:
Chương trình:
 Biên soạn: Th.s Trần Văn Trinh 18
Bản thảo giáo trình thực hành PLC 5 – 2009
4. Lệnh MOVE:
Trong S7_200 có các lệnh Move sau:
 Biên soạn: Th.s Trần Văn Trinh 19
Bản thảo giáo trình thực hành PLC 5 – 2009
 Move_B: Di chuyển các giá trị cho nhau trong giới hạn 1 Byte
 Move_W: Di chuyển các giá trị nguyên cho nhau trong giới hạn 1 Word
 Move_DW: Di chuyển các giá trị nguyên cho nhau trong giới hạn 1 DWord
 Move_R: Di chuyển các giá trị thực cho nhau trong giới hạn 1 Dint
4.1 Move_B:
 EN: ngõ vào cho phép
 IN Ngõ vào: VB, IB, QB, MB, SB, SMB, LB, AC,
 Constant, *VD, *LD, *AC
 OUT Ngõ ra: VB, IB, QB, MB, SB, SMB, LB,
 AC, *VD, *LD, *AC
Khi có tín hiệu ở ngõ cho phép, lệnh sẽ chuyển nội dung của ô nhớ trong (IN) sang ô
nhớ trong OUT
4.2 MOVE_W:
 EN: ngõ vào cho phép
 IN Ngõ vào: VW, IW, QW, MW, SW, SMW, LW,
 T, C, AIW, Constant, AC, *VD, *AC, *LD.
 OUT Ngõ ra: VW, T, C, IW, QW, SW,
 MW,SMW, LW, AC, AQW, *VD, *AC, *LD.
Khi có tín hiệu ở ngõ cho phép,lệnh sẽ chuyển nội dung của ô nhớ trong (IN) sang ô
nhớ trong OUT
4.3 MOVE_DW
 EN: ngõ vào cho phép
 IN Ngõ vào: VD, ID, QD, MD, SD, SMD, LD, HC,
 &VB, &IB, &QB, &MB, &SB, &T, &C, &SMB,
 &AIW, &AQW AC, Constant, *VD, *LD, *AC
 OUT Ngõ ra: VD, ID, QD, MD, SD, SMD, LD,
 AC, *VD, *LD, *AC
Khi có tín hiệu ở ngõ cho phép,lệnh sẽ chuyển nội dung của ô nhớ trong (IN) sang ô
nhớ trong OUT
 Biên soạn: Th.s Trần Văn Trinh 20
Bản thảo giáo trình thực hành PLC 5 – 2009
4.4 MOVE_R
 EN: ngõ vào cho phép
 IN Ngõ vào: VD, ID, QD, MD, SD, SMD, LD,
 AC, Constant, *VD, *LD, *AC
 OUT Ngõ ra: VD, ID, QD, MD, SD, SMD, LD,
 AC, *VD, *LD, *AC
Khi có tín hiệu ở ngõ cho phép,lệnh sẽ chuyển nội dung của ô nhớ trong (IN) sang ô
nhớ trong OUT
Các tín hiệu ngõ vào cũng như ngõ ra của các lệnh Move phải được chọn đúng loại
theo đã định dạng như vùng Dword đối với Move_R và Move_DW
Nếu chọn sai định dạng thì chương trình biên dịch sẽ bị sai.
Ví dụ:
Khi I0.0 lên 1 thì chương trình sẽ chuyển nội dung ô nhớ trong VD100 sang ô nhớ
VD200
5. Các lệnh về dịch bit:
Lệnh Dịch trái, phải Byte:
 EN : Bit cho phép thực hiện lệnh dịch trái,dịch phải
 Biên soạn: Th.s Trần Văn Trinh 21
Bản thảo giáo trình thực hành PLC 5 – 2009
IN : Byte được dịch
OUT: Kết quả
N : Số bit dịch
Các Bit dịch ra ngoài bị loại bỏ, các số 0 được chèn vào.
Ví dụ:
Sau lệnh dịch VB100= 0001 1011
( 3 Bit 000 mới được thêm vào bit 101 bị đẩy ra)
Lệnh dịch trái:
 Carry 0
Lệnh dịch trái chuyển bit thấp sang bit cao tương đương với nhân 2n.
Lệnh dịch phải:
 0 Carry
Dịch chuyển bit cao sang bit thấp tương đương với chia 2n
Tương tự có lệnh xoay phải, trái Word, Dword.
Ví dụ:
1. Chương trình dịch trái cho bit thấp dịch chuyển sang bit cao, trước khi thực hiện
dịch trái ta phải đạt giá trị ban đầu cho biến
 Biên soạn: Th.s Trần Văn Trinh 22
Bản thảo giáo trình thực hành PLC 5 – 2009
2. Viết chương trình sao led đang sáng tắt dần theo thứ tự từ trái sang phải và chỉ thực
hiện một 1 lần.
 Biên soạn: Th.s Trần Văn Trinh 23
Bản thảo giáo trình thực hành PLC 5 – 2009
3. Viết chương trình sao cho khi nhấn nút Run thì led sáng đơn chạy từ trái sang phải
và từ phải sang trái. Khi nhấn nút Stop thì led dừng chạy và nhấn nút Run thì led chạy
tiếp từ vị trí dừng. Một nút Reset cho phép xóa toàn bộ quá trình.
 Biên soạn: Th.s Trần Văn Trinh 24
Bản thảo giáo trình thực hành PLC 5 – 2009
Input: Run: I0.0 Output: 8 led: QB0
 Stop: I0.1 LSB Q0.0: led 0
 Reset: I0.2 MSB Q0.7: led 1
Chương trình:
 :
 Biên soạn: Th.s Trần Văn Trinh 25
Bản thảo giáo trình thực hành PLC 5 – 2009
6.Các lệnh số học:
 Biên soạn: Th.s Trần Văn Trinh 26
Bản thảo giáo trình thực hành PLC 5 – 2009
6.1 Lệnh cộng trừ:
 ADD_I: Cộng hai số nguyên 16 bit
 SUB_I: Trừ hai số nguyên 16 bit
 EN: ngõ vào cho phép
 IN1 + IN2 = OUT
 IN1 – IN2 = OUT
Khi ngõ vào cho phép lên 1 chương trình sẽ thực hiện việc cộng ( hay trừ) 2 số
nguyên 16 Bit ở IN1và IN2 ,kết quả đưa vào OUT.
Tương tự, ta có:
 ADD_DI: Cộng hai số nguyên 32 Bit .
 SUBB_DI: Trừ hai số nguyên 32 Bit .
 ADD_R: Cộng hai số thực .
 SUBB_R: Trừ hai số thực.
6.2 Lệnh nhân chia:
 MUL_I: Nhân hai số nguyên 16 bit
 DIV_I: Chia hai số nguyên 16 bit
 EN: ngõ vào cho phép
 IN1 * IN2 = OUT
 Biên soạn: Th.s Trần Văn Trinh 27
Bản thảo giáo trình thực hành PLC 5 – 2009
 IN1 / IN2 = OUT
Nếu kết quả chia có dư thì phần dư sẽ được bỏ.
Khi ngõ vào EN lên 1, chương trình sẽ thực hiện việc nhân ( hay chia) 2 số nguyên 16
Bit, kết quả cất vào số nguyên 16 Bit .
Trường hợp chia: Do OUT là số nguyên 16 Bit, nên phần dư của phép chia sẽ bị bỏ.
Trường hợp nhân: Nếu bị tràn bộ nhớ thì OUT sẽ chứa phần Byte thấp.
Tương tự, ta có:
 MUL_DI: Nhân hai số nguyên 32 bit
 DIV_DI: Chia hai số nguyên 32 bit
 MUL_R: Nhân hai số thực
 DIV_R: Chia hai số thực
Lệnh MUL, DIV : Tương tự lệnh nhân và chia, nhưng trong trường hợp này ngõ ra
OUT là 32 Bit.
 Ta sẽ sử dụng lệnh MUL hay DIV khi không
 biết ngõ ra có bị tràn 16 Bit hay không.
Ví dụ:
 Biên soạn: Th.s Trần Văn Trinh 28
Bản thảo giáo trình thực hành PLC 5 – 2009
Khi I0.0 = ON, chương trình thực thi:
 IN1 IN2 OUT
 40 + 60 = 100
 AC1 AC0 AC0
 40 * 20 = 800
 AC1 VW100 VW100
 4000 / 40 = 100
 VW200 VW10 VW200
6.3 Lệnh tăng giảm:
 INC_B: Tăng Byte
 DEC_B: Giảm Byte
 Biên soạn: Th.s Trần Văn Trinh 29
Bản thảo giáo trình thực hành PLC 5 – 2009
 EN:Ngõ vào cho phép
 IN1 + 1 = OUT
 EN:Ngõ vào cho phép
 IN1 - 1 = OUT
Các hàm tương tự:
 INC_W: Tăng Word
 DEC_W: Giảm Word
 NC_DW: Tăng DWord
 DEC_DW: Giảm Dword
Ngoài ra còn một số hàm khác như: SQRT(khai căn), SIN, COS, TAN, LN, EXP
6.4 Các lệnh so sánh: So sánh byte
 so sánh bằng: Khi IN1=IN2 thì ngõ ra được tích cực.
 so sánh khác.
 So sánh lớn hơn hoặc bằng.
 So sánh nhỏ hơn hoặc bằng.
 So sánh lớn hơn
 So sánh nhỏ hơn
 Tương tự các lệnh so sánh cho Byte, ta cũng có các lệnh so sánh
cho số Int, Dint, Real
Khi thực hiện các lệnh so sánh thì IN1, IN2 phải được chọn đúng kiểu dữ liệu.
 Biên soạn: Th.s Trần Văn Trinh 30
Bản thảo giáo trình thực hành PLC 5 – 2009
7. Lệnh về đồng hồ thời gian thực RTC
7.1 Lệnh đọc thời gian thực Read_RTC:
 Bit EN : Bit cho phép đọc thời gian thực
 T ( 8byte): VB,IB,QB,MB,SB,LB,*AC,*VD,*LD
 Được định dạng như sau:
 T (byte) Giá trị ( định dạng BCD)
 0 (năm) 0-99
 1 (tháng) 0 -12
 2 (ngày) 0 - 31
 3 (giờ) 0 - 23
 4 (phút) 0 - 59
 5 (giây) 0 - 59
 6 (00) 00
 7 (ngày trong tuần) 1 – 7; 1: Sunday
7.2 Lệnh Set thời gian thực Set_RTC:
 Khi có tín hiệu EN thì thời gian thực sẽ được
 set lại thông qua T
 Cách định dạng Byte T hoàn toàn giống ở trên.
8. Lệnh gọi chương trình con:
 XXX: 00-99
Khi giá trị điều kiện bằng 1 thì chương trình sẽ gọi chương trình con
Bài tập:
Sử dụng lệnh đọc thời gian thực để ứng dụng trong điều khiển đèn giao thông tự
động, tưới cây tự động.
- Điều khiển đèn giao thông tự động:
 Biên soạn: Th.s Trần Văn Trinh 31
Bản thảo giáo trình thực hành PLC 5 – 2009
 Thời gian từ 5 giờ đến 23 giờ: hoạt động bình thường
 Từ 23 giờ sáng đến 5 giờ sáng ngày hôm sau: Đèn vàng chớp tắt xung 1s.
- Điều khiển tưới cây tự động: Để phục vụ cho việc tưới cây ( trong phòng kiếng),
 Lan đòi hỏi nhu cầu tưới nước rất khắc nghiệt, đòi hỏi cách 1 khoảng thời gian
 nhất định cho việc tưới cây và còn phụ thuộc theo từng tháng.Tháng mùa nóng
 nhu cầu tưới nước nhiều hơn mùa mưa.
- Chương trình bài đèn giao thông tự động:
Input: lấy giá trị của bộ thời gian thực trong PLC.
Output: Xanh A: Q0.0 Xanh B: Q0.3
 Vàng A: Q0.1 Vàng B: Q0.4
 Đỏ A: Q0.2 Đỏ B: Q0.5
Lưu đồ giải thuật:
Lưu đồ giải thuật chương trình con 1: đèn hoạt động bình thường
 Biên soạn: Th.s Trần Văn Trinh 32
Bản thảo giáo trình thực hành PLC 5 – 2009
 Start
 Yes Đỏ A Đỏ B Yes
 No No
 Yes Xanh B Xanh A Yes
 No No
 Yes Vàng B Vàng A Yes
 No No
 0 Nuôi T38: Nuôi T37: 0 0 Nuôi T39: Nuôi T40: 0
 38s 35s 27s 30s
 1 1 1 1
 Đỏ B Xanh A Đỏ B Xanh A
 0 0
 Đỏ B Đỏ A
 1 1
 Vàng A Vàng B
Chương trình: Main
 Biên soạn: Th.s Trần Văn Trinh 33
Bản thảo giáo trình thực hành PLC 5 – 2009
Subroutine 0
 Biên soạn: Th.s Trần Văn Trinh 34
Bản thảo giáo trình thực hành PLC 5 – 2009
 Biên soạn: Th.s Trần Văn Trinh 35
Bản thảo giáo trình thực hành PLC 5 – 2009
Subroutine 1
 ... P CÁC GIÁ TRỊ VÀO BỘ PID
 GỌI CHƯƠNG TRÌNH PID.
 TÍNH TOÁN TỐC ĐỘ RA DỰA VÀO SỐ XUNG, THỜI GIAN LẤY MẪU..
 LẤY GIÁ TRỊ XUNG ĐƯA VÀO BỘ PHÁT XUNG RA ĐỘNG CƠ.
 CẬP NHẬT CÁC GIÁ TRỊ HIỆN TẠI VÀ TRƯỚC ĐÓ VÀO BỘ ĐIỀU
 KHIỂN PID.
 RET
2. Sơ đồ kết nối:
 Kênh A : I0.6
 Biên soạn: Th.s Trần Văn Trinh 98
Bản thảo giáo trình thực hành PLC 5 – 2009
 Kênh B : I0.7
 Động cơ : Q0.0
3. Chương trình và giới thiệu các câu lệnh dùng:
Khai báo các biến dùng trong chương trình:
 a.
3.1 MAIN:
 Biên soạn: Th.s Trần Văn Trinh 99
Bản thảo giáo trình thực hành PLC 5 – 2009
Dùng V48.2 để tạo biến START cho chương trình. Khi có START thì sẽ gọi chương
trình con HSC , PID, PWM, reset ngõ ra Q0.0 ở chu kì đầu tiên và gọi chương trình
ngắt để đưa giá trị xung liên tục vào Q0.0. khi hết ngắt thì gọi lại chương trình HSC
và đưa giá trị ban đầu vào thông số PID.
 Biên soạn: Th.s Trần Văn Trinh 100
Bản thảo giáo trình thực hành PLC 5 – 2009
Đưa giá trị vận tốc đặt vào VD24, chuẩn hóa tốc độ do ra từ 0 = > 1.
Cho phép ngắt timer 0 không cho phép chạy PID và HSC. Tiếp theo gọi chương trình
HSC và đưa vào các giá trị ban đầu cho các thông số PID.
3.2 Chương trình đếm xung ENCODER (HSC):
 Biên soạn: Th.s Trần Văn Trinh 101
Bản thảo giáo trình thực hành PLC 5 – 2009
3.3 Bộ điều khiển (PID):
 Biên soạn: Th.s Trần Văn Trinh 102
Bản thảo giáo trình thực hành PLC 5 – 2009
Cài đặt các thông số ban đầu cho công thức tính toán: tốc độ cài đặt, thời gian lấy mẫu
3.4 Chương trình xuất xung(PWM):
 Biên soạn: Th.s Trần Văn Trinh 103
Bản thảo giáo trình thực hành PLC 5 – 2009
Khai báo thông số PWM: chu ky xung 1000, Ton =0 và thời gian xuất 1 xung mẫu là
16#D3 ứng với 1micros /chu kỳ xuất xung.
 Biên soạn: Th.s Trần Văn Trinh 104
Bản thảo giáo trình thực hành PLC 5 – 2009
3.5 Chương trình ngắt:
Chuẩn hóa tốc độ đặt và cài đặt các thông số và đưa vào ô nhớ sau đó gọi chương
trình PID và sau đó các thông số ngõ ra sẽ được đưa vào các ô nhớ. Để tính toán tốc
độ ra thì từ HC1 là giá trị ENCODER ta chia cho số xung tối đa của ENCODER và
nhân cho thời gian lấy mẫu ta sẽ có được tốc độ thưc tế.
 Biên soạn: Th.s Trần Văn Trinh 105
Bản thảo giáo trình thực hành PLC 5 – 2009
 Biên soạn: Th.s Trần Văn Trinh 106
Bản thảo giáo trình thực hành PLC 5 – 2009
Giá trị ngõ ra của bộ PID sẽ được chuẩn hóa lại và đưa vào thay đổi độ rộng xung ra.
4. Thiết lập giao diện và vẽ đồ thị đáp ứng:
4.1 Tạo các biến:
 Bảng địa chỉ của các biến :
 BIẾN địa chỉ
 START1 V48.2
 STOP V48.0
 DAT VD12
 DO VD28
 DORONGXUNG VW32
 KP VD112
 TI VD120
 TD VD124
 Vào PC ACCESS:
 Biên soạn: Th.s Trần Văn Trinh 107
Bản thảo giáo trình thực hành PLC 5 – 2009
Sau đó đặt tên và địa chỉ:
Cứ thế tiếp tục thiết lập các biến khác như hình:
 Biên soạn: Th.s Trần Văn Trinh 108
Bản thảo giáo trình thực hành PLC 5 – 2009
Sau đó save lại và gán các biến vừa tạo vào WinCC:
Và tiếp tục chọn như hình:
Chọn như hình và nhấn next:
 Biên soạn: Th.s Trần Văn Trinh 109
Bản thảo giáo trình thực hành PLC 5 – 2009
Tiếp tục quét tất cả các biến và chọn Add Items:
Tiếp tục làm theo hình và nhấn Finish:
 Biên soạn: Th.s Trần Văn Trinh 110
Bản thảo giáo trình thực hành PLC 5 – 2009
4.2 Gán biến vào tag logging:
Tiếp theo đặt tên và các giá trị khác như hình:
 Biên soạn: Th.s Trần Văn Trinh 111
Bản thảo giáo trình thực hành PLC 5 – 2009
Tiếp theo:
Tiếp theo chọn next:
Đặt tên và chọn next:
 Biên soạn: Th.s Trần Văn Trinh 112
Bản thảo giáo trình thực hành PLC 5 – 2009
Tiếp theo chọn select:
Và chọn biến cần hiển thị lên đồ thị và nhân OK => finish:
 Biên soạn: Th.s Trần Văn Trinh 113
Bản thảo giáo trình thực hành PLC 5 – 2009
Khi đó sẽ có
Tiếp theo chọn thời gian lấy mẫu:
 Biên soạn: Th.s Trần Văn Trinh 114
Bản thảo giáo trình thực hành PLC 5 – 2009
Và chọn thời gian như hình:
4.3 Thiết lập giao diện:
Trong giao diện để lấy đồ thị thì vào:
 Biên soạn: Th.s Trần Văn Trinh 115
Bản thảo giáo trình thực hành PLC 5 – 2009
Kéo rộng ra và nhấp dúp vào giao diện để cài đặt thông số, nhấp + để thêm giá trị hiển
thị, - để xóa giá trị hiển hiện và đạt tên cho giá trị đó:
Để kết nối với biến thì nhấn vào selection và chọn biến:
 Biên soạn: Th.s Trần Văn Trinh 116
Bản thảo giáo trình thực hành PLC 5 – 2009
Ngoài ra tạo thêm các nút nhấn, các trường I/O để nhập và hiển thị các thông số như
hình:
Để kết nối các trương I/O với biến ta click chuột phải trường đó và chọn:
Và chọn biển tượng hình trong thanh tag:
 Biên soạn: Th.s Trần Văn Trinh 117
Bản thảo giáo trình thực hành PLC 5 – 2009
Và chọn biến kết nối:
Làm tiếp tục với các trường I/O và các biến khác như sau:
 +Trường I/O Ki : TI
 Biên soạn: Th.s Trần Văn Trinh 118
Bản thảo giáo trình thực hành PLC 5 – 2009
 +Trường I/O Kd : TD
 +Trường I/O tốc độ đặt : dat
 +Trường I/O tốc độ đo : do
 +Trường I/O do rong xung : dorongxung
 +Nút nhấn START nối với biến START1, STOP với biến STOP.
5. Một số kết quả mô phỏng:
 Cài đặt:
 Kp : 0.25
 Ki : 0.002
 Kd : 0.002
 Tốc độ : 95
 Cài đặt:
 Kp : 0.25
 Ki : 0.002
 Biên soạn: Th.s Trần Văn Trinh 119
Bản thảo giáo trình thực hành PLC 5 – 2009
 Kd : 0.001
 Tốc độ : 60
Cài đặt:
 Kp : 0.3
 Ki : 0.002
 Kd : 0.002
 Tốc độ : 70
 Biên soạn: Th.s Trần Văn Trinh 120
Bản thảo giáo trình thực hành PLC 5 – 2009
Bài 12: Tổng hợp
 Biên soạn: Th.s Trần Văn Trinh 121
Bản thảo giáo trình thực hành PLC 5 – 2009
Nội dung: Kiểm tra sản phẩm theo các tiêu chuẩn chiều cao,có nhiễm kim loại không
và mức nước trong chai.Nếu sản phẩm cao quá yêu cầu hoặc là bị nhiễm kim loại thì
loại sản phẩm đó.Đếm các sản phẩm đạt 2 tiêu chuẩn trên,sau đó nếu mức nước cao
hơn yêu cầu thì sản phẩm cũng bị loại bỏ.Tốc độ băng tải 1,3 được điều khiển bằng
tay,băng tải 2 điều khiển bằng PID có encoder hỗ trợ.Tạo giao diện giám sát bằng
WinCC.
 1. Sơ đồ kết nối:
 2. Chương trình:
 2.1Chương trình chính:
 Biên soạn: Th.s Trần Văn Trinh 122
Bản thảo giáo trình thực hành PLC 5 – 2009
 Gọi các chương trình con khởi tạo HSC,PID và PWM ,reset ngõ ra phát xung ở chu kì đầu tiên.
 Biên soạn: Th.s Trần Văn Trinh 123
Bản thảo giáo trình thực hành PLC 5 – 2009
Đưa tốc độ đo đưa lên WinCC
 Đưa giá trị độ rộng
 xung lên WinCC.
 Biên soạn: Th.s Trần Văn Trinh 124
Bản thảo giáo trình thực hành PLC 5 – 2009
 Biên soạn: Th.s Trần Văn Trinh 125
Bản thảo giáo trình thực hành PLC 5 – 2009
 Biên soạn: Th.s Trần Văn Trinh 126
Bản thảo giáo trình thực hành PLC 5 – 2009
 Biên soạn: Th.s Trần Văn Trinh 127
Bản thảo giáo trình thực hành PLC 5 – 2009
2.2 Chương trình đọc xung tốc độ cao(HSC):
 Biên soạn: Th.s Trần Văn Trinh 128
Bản thảo giáo trình thực hành PLC 5 – 2009
2.3 Chương trình cài đặt các thông số PID:
 Biên soạn: Th.s Trần Văn Trinh 129
Bản thảo giáo trình thực hành PLC 5 – 2009
 Đưa tốc độ từ PC xuống,chuẩn hóa
 đưa vào tính PID.
 Nạp giá trị đặt đã được chuẩn hóa
 Cài thời gian lấy mẫu.
2.4 Chương trình phát xung tốc độ cao PWM:
 Biên soạn: Th.s Trần Văn Trinh 130
Bản thảo giáo trình thực hành PLC 5 – 2009
2.5 Chương trình ngắt:
 Biên soạn: Th.s Trần Văn Trinh 131
Bản thảo giáo trình thực hành PLC 5 – 2009
 Biên soạn: Th.s Trần Văn Trinh 132
Bản thảo giáo trình thực hành PLC 5 – 2009
3. Chương trình trên WinCC:
Giao diện lúc khởi động:
 Biên soạn: Th.s Trần Văn Trinh 133
Bản thảo giáo trình thực hành PLC 5 – 2009
 Nút nhấn Start
 Nút nhấn mở đồ thị điều khiển tốc độ động cơ dùng PID
 Nút nhấn Stop chương trình.
 Nút nhấn Close
Giao diện lúc hoạt động:
 Biên soạn: Th.s Trần Văn Trinh 134
Bản thảo giáo trình thực hành PLC 5 – 2009
Đồ thị đáp ứng PID:
Chú thích đồ thị:
Phương pháp kết nối PLC S7-200 với WinCC tương tự các bài trên, kết quả sau khi
gán biến:
 Biên soạn: Th.s Trần Văn Trinh 135
Bản thảo giáo trình thực hành PLC 5 – 2009
 Biên soạn: Th.s Trần Văn Trinh 136
Bản thảo giáo trình thực hành PLC 5 – 2009
 MỤC LỤC
 Phần 1 .........................................................................................................................................1
 Giới thiệu mô hình.......................................................................................................................... 2
 Tập Lệnh Trong S7_200 ................................................................................................................ 3
 1. Lệnh về bit............................................................................................................................... 3
 Bài 1 ......................................................................................................................................... 4
 Bài 2 ......................................................................................................................................... 4
 2. Timer ....................................................................................................................................... 5
 2.1 TON ................................................................................................................................... 6
 2.2 TOF.................................................................................................................................... 7
 2.3 TONR ................................................................................................................................ 8
 3.Counter................................................................................................................................... 13
 3.1 Counter Up(đếm lên) ..................................................................................................... 13
 3.2 Counter Down(đếm xuống) ........................................................................................... 14
 3.3 Counter Up/Down (đếm lên/xuống).............................................................................. 16
 4. Lệnh MOVE.......................................................................................................................... 19
 4.1 Move_B............................................................................................................................ 20
 4.2 MOVE_W ....................................................................................................................... 20
 4.3 MOVE_DW..................................................................................................................... 20
 4.4 MOVE_R......................................................................................................................... 21
 5. Các lệnh về dịch bit .............................................................................................................. 21
 6.Các lệnh số học ...................................................................................................................... 26
 6.1 Lệnh cộng trừ ................................................................................................................. 27
 6.2 Lệnh nhân chia ............................................................................................................... 27
 6.3 Lệnh tăng giảm............................................................................................................... 29
 7. Lệnh về đồng hồ thời gian thực RTC ................................................................................. 31
 7.1 Lệnh đọc thời gian thực Read_RTC............................................................................. 31
 7.2 Lệnh Set thời gian thực Set_RTC................................................................................. 31
 8. Lệnh gọi chương trình con .................................................................................................. 31
 9. Các lệnh về ngắt.................................................................................................................... 36
 10. Xuất xung tốc độ cao.......................................................................................................... 38
 10.1 Điều rộng xung 50% (PTO)......................................................................................... 39
 10.2 Điều rộng xung theo tỉ lệ (PWM)................................................................................ 44
 11. Đọc xung tốc độ cao............................................................................................................ 49
 Mô phỏng PLC S7-200............................................................................................................. 63
 1.Tạo file mộ phỏng.............................................................................................................. 64
 2.Giới thiếu tổng quát về phần mềm mô phỏng ................................................................ 64
 3.Thực hiện mô phỏng ......................................................................................................... 66
 3.1Load Program.............................................................................................................. 66
 3.2Mô phỏng ..................................................................................................................... 67
 Phần 2 ........................................................................................................................................... 68
 CÁC BÀI TẬP THỰC HÀNH.................................................................................................... 68
 Tổng quan mô hình ...................................................................................................................... 69
 CÁC BÀI TẬP THỰC HÀNH .................................................................................................... 69
 Bài 1: Đếm sản phẩm trên băng tải. ....................................................................................... 69
 Bài 2: Phân loại sản phẩm theo chiều cao.............................................................................. 72
 Bài 3: Phân loại và đếm số sản phẩm hoàn chỉnh. ............................................................... 74
 Bài 4: Loại bỏ các sản phẩm có tính kim loại. ....................................................................... 75
 Bài 5: Kiểm tra và đếm số sản phẩm không nhiễm kim loại................................................ 78
 Bài 6: Kiểm tra mức nước. ...................................................................................................... 79
 Biên soạn: Th.s Trần Văn Trinh 137
Bản thảo giáo trình thực hành PLC 5 – 2009
 Bài 7: Kiểm tra và đếm số chai đạt yêu cầu........................................................................... 82
 Bài 8: Đếm xung các encoder. ................................................................................................. 82
 Bài 9: Đo tốc độ quay từng băng tải (vận tốc). ...................................................................... 89
 Bài 10: Điều khiển vòng hở băng tải bằng phương pháp PWM. ......................................... 94
 Bài 11: Điều khiển tốc động băng tải theo giá trị đặt trước. ................................................ 96
 Bài 12: Tổng hợp .................................................................................................................... 122
 Biên soạn: Th.s Trần Văn Trinh 138

File đính kèm:

  • pdfgiao_trinh_ly_thuyet_thuc_hanh.pdf