Bài giảng Siemens PLC S7-300
Chương mở đầu: Giới thiệu dòng sản phẩm Siemens
Chương 1: Nhập môn PLC S7 – 300
Chương 2: Cấu trúc PLC S7 – 300
Chương 3: Hướng dẫn sử dụng phần mềm lập trình PLC
S7-300
Chương 4: Ngôn ngữ lập trình STL
Chương 5: Kỹ thuật lập trình
Chương 6: Bài tập thực hành
CC0 = 0). Noù ñöôïc söû duïng ñeå reõ nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû döông. Reõ nhaùnh khi CC1=0 vaø CC0=0 Cuù phaùp: JZ Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 = 0 vaø CC0 = 0). Noù ñöôïc söû duïng ñeå reõ nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû baèng 0. Reõ nhaùnh khi CC1 khaùc CC0 Cuù phaùp: JN Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 khaùc CC0). Noù ñöôïc söû duïng ñeå reõ nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû khaùc 0. Reõ nhaùnh khi CC1=CC0=0 hoaëc (CC1=0 vaø CC0=1) Cuù phaùp: JMZ Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 =CC0= 0 hoaëc (CC1=0 vaø CC0 = 1)). Noù ñöôïc söû duïng ñeå reõ nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû laø moät soá khoâng döông. Reõ nhaùnh khi CC1=CC0=0 hoaëc (CC1=1 vaø CC0=0) Cuù phaùp: JPZ Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn neáu nhö Bit ( CC1 =CC0= 0 hoaëc (CC1=1 vaø CC0 = 0)). Noù ñöôïc söû duïng ñeå reõ nhaùnh neáu nhö pheùp tính tröôùc ñoù coù keát quaû laø moät soá khoâng aâm. Reõ nhaùnh voâ ñieàu kieän Cuù phaùp: JU Leänh seõ thöïc hieän vieäc nhaûy tôùi Nhaõn voâ ñieàu kieän khoâng phuï thuoäc vaøo bit traïng thaùi naøo. 4.12. Leänh xoay voøng Cuù phaùp: LOOP Khi gaëp leänh LOOP, CPU seõ töï giaûm noäi dung cuûa töø thaáp trong thanh ghi ACCU1 ñi moät ñôn vò vaø kieåm tra xem keát quaû coù baèng 0 hay khoâng. Neáu keát quaû khaùc 0, CPU seõ thöïc hieän böôùc nhaûy ñeán ñoaïn chöông trình ñöôïc ñaùnh daáu bôûi “nhãn”. Ngược lại CPU sẽ thực hiện leänh keá tieáp. Ñoaïn chöông trình naèm giöõa nhaõn vaø leänh LOOP seõ ñöôïc thöïc hieän cho tôùi khi noäi dung thanh ghi ACCU1 baèng 0. Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi 4.13. Leänh ñoåi kieåu döõ lieäu: 4.13.1. Chuyeån ñoåi soá BCD thaønh soá nguyeân vaø ngöôïc laïi Leänh chuyeån ñoåi BCD thaønh soá nguyeân 16 bits: Cuù phaùp: BTI Leänh khoâng coù toaùn haïng Tác dụng: Chuyeån ñoåi moät soá BCD coù 3 chöõ soá naèm trong 12 Bits ñaàu cuûa ACCU1 thaønh soá nguyeân 16 bits. Keát quaû ñöôïc caát laïi vaøo 16 bits cuoái (töø thaáp) cuûa ACCU1. Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi. Neáu soá BCD caàn chuyeån ñoåi coù caáu truùc sai, ví duï nhö coù 1 chöõ soá 4 bits nhò phaân khoâng naèm trong khoaûng töø 0 ñeán 9, CPU seõ goïi chöông trình ngaét xöû lí loãi OB121 hoaëc chuyeån qua cheá ñoä Stop (neáu OB121 khoâng coù chöông trình). Leänh chuyeån ñoåi BCD thaønh soá nguyeân 32 bits: Cuù phaùp: BTD Leänh khoâng coù toaùn haïng Tác dụng: Chuyeån ñoåi moät soá BCD coù 7 chöõ soá naèm trong 28 Bits ñaàu cuûa ACCU1 thaønh soá nguyeân 32 bits. Keát quaû ñöôïc caát laïi vaøo thanh ghi ACCU1. Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi. Leänh chuyeån ñoåi soá nguyeân 16 bits thaønh soá BCD: Cuù phaùp: ITB Leänh khoâng coù toaùn haïng Tác dụng: Chuyeån ñoåi moät soá nguyeân 16 bits thaønh soá BCD coù 3 chöõ soá. Keát quaû ñöôïc caát laïi vaøo töø thaáp cuûa thanh ghi ACCU1. Neáu soá nguyeân 16 bits caàn chuyeån ñoåi coù giaù trò tuyeät ñoái lôùn hôn 999, CPU seõ thoâng baùo trong thanh ghi traïng thaùi döôùi daïng keát quaû traøn. Leänh chuyeån ñoåi soá nguyeân 32 bits thaønh soá BCD: Cuù phaùp: DTB Leänh khoâng coù toaùn haïng Tác dụng: Chuyeån ñoåi moät soá nguyeân 32 bits thaønh soá BCD coù 7 chöõ soá. Keát quaû ñöôïc caát laïi vaøo thanh ghi ACCU1. Neáu soá nguyeân 32 bits caàn chuyeån ñoåi coù giaù trò tuyeät ñoái lôùn hôn 9999999, CPU seõ thoâng baùo trong thanh ghi traïng thaùi döôùi daïng keát quaû traøn. 4.13.2. Chuyeån ñoåi soá nguyeân 16 bits thaønh soá nguyeân 32 bits Cuù phaùp: ITD Leänh khoâng coù toaùn haïng Tác dụng: Thöïc hieän vieäc chuyeån ñoåi moät soá nguyeân 16 bits trong töø thaáp cuûa ACCU1 thaønh soá nguyeân 32 bits. Keát quaû ñöôïc caát vaøo laïi ACCU1. Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi. 4.13.3. Chuyeån ñoåi soá nguyeân 32 bits thaønh soá thöïc Cuù phaùp: DTR Leänh khoâng coù toaùn haïng Tác dụng: Thöïc hieän vieäc chuyeån ñoåi moät soá nguyeân 32 bits trong thanh ghi ACCU1 thaønh soá thöïc. Keát quaû ñöôïc caát vaøo laïi ACCU1. Leänh khoâng laøm thay ñoåi noäi dung cuûa thanh ghi traïng thaùi. 4.14. Boä thôøi gian ( Timer) 4.14.1. Nguyên tắc làm việc Bộ thời gian (Timer) là bộ tạo thời gian trễ τ mong muốn giữa tín hiệu logic đầu vào u(t) và tín hiệu logic đầu ra y(t). Thời gian trễ τ mong muốn được khai báo với Timer bằng một giá trị 16 bits, bao gồm hai thành phần: - Độ phân giải với đơn vị ms. - Một số nguyên (BCD) trong khoảng 0 – 999 được gọi là PV (Preset Value) Như vậy, thời gian τ mong muốn: τ = Độ phân giải*PV 4.14.2. Khai báo sử dụng: Vieäc khai baùo söû duïng Timer bao goàm caùc böôùc: -Khai baùo tín hieäu enable neáu muoán söû duïng tín hieäu chuû ñoäng kích -Khai baùo tín hieäu ñaàu vaøo u(t) -Khai baùo thôøi gian treã mong muoán -Khai baùo loaïi Timer ñöôïc söû duïng (SD,SS,SP,SE,SF) -Khai baùo tín hieäu xoaù Timer neáu muoán söû duïng cheá ñoä reset chuû ñoäng Trong taát caû 5 böôùc treân, caùc böôùc 2, 3, 4 laø baét buoäc. 1. Khai baùo tín hieäu enable (chuû ñoäng kích) Cuù phaùp: A FR Toán hạng thứ nhất “Địa chỉ bit” xác định tín hiệu sẽ được sử dụng làm tín hiệu chủ động kích cho Timer coù teân trong toaùn haïng thöù hai. 2. Khai baùo tín ñaàu vaøo Cuù phaùp: A “Địa chỉ bit” trong toán hạng xác định tín hiệu đầu vào u(t) cho Timer. 3. Khai baùo thôøi gian treã mong muoán Cuù phaùp: L “Hằng số” trong toán hạng xác định giá trị thời gian treã τ ñaët tröôùc cho Timer. Haèng soá naøy coù 2 daïng: - S5T#giôøH_phuùtM_giaâyS_miligiaâyMS. Ñaây laø daïng döõ lieäu thôøi gian tröïc tieáp. - Daïng moät soá nguyeân 16 bits coù caáu truùc nhö sau: 4. Khai baùo loaïi Timer S7_300 coù 5 loaïi timer ñöôïc khai baùo baèng caùc leänh: - SD: treã coù söôøn leân khoâng coù nhôù - SS: Treã theo söôøn leân coù nhôù - SP: Taïo xung khoâng coù nhôù - SE: Taïo xung coù nhôù - SF : Treã theo söôøn xuoáng. Những lệnh này tác động vào thanh ghi trạng thái như sau: 5. Khai baùo tín hieäu xoaù (Reset) Cuù phaùp: A R Toán hạng thứ nhất “Địa chỉ bit” xác định tín hieäu seõ ñöôïc söû duïng laøm tín hieäu chuû ñoäng xoaù cho timer coù teân trong toaùn haïng thöù 2. Khi tín hieäu xoaù baèng 1, T-Word (Thanh ghi CV) vaø T- bit cuøng ñoàng thôøi ñöôïc ñöa veà 0. Neáu tín hieäu xoaù veà 0, Timer seõ chôø ñöôïc kích laïi. 4.15. Boä ñeám ( Counter) 4.15.1. Nguyên tắc làm việc Couter là bộ đếm thực hiện chức năng đếm sườn xung của các tín hiệu đầu vào. Ký hiệu: Cx Trong đó, x là số nguyên trong khoảng từ 0-255 4.15.2. Khai baùo söû duïng Vieäc khai baùo söû duïng Counter bao goàm caùc böôùc: - Khai baùo tín hieäu enable neáu muoán söû duïng tín hieäu chuû ñoäng kích. - Khai baùo tín hieäu ñaàu vaøo CU ñöôïc ñeám tieán - Khai baùo tín hieäu ñaàu vaøo CD ñöôïc ñeám luøi - Khai baùo tín hieäu ñaët (set) vaø giaù trò ñaët tröôùc (PV) - Khai baùo tín hieäu xoaù (reset). Trong taát caû 5 böôùc treân,caùc böôùc 2,3 laø baét buoäc 1. Khai baùo tín hieäu enable (kích ñeám) Cuù phaùp: A FR Toán hạng thứ nhất “Địa chỉ bit” xác định tín hiệu sẽ được sử dụng làm tín hiệu kích đếm cho boä ñeám coù teân cho trong toaùn haïng thöù hai. 2. Khai baùo tín hieäu ñöôïc ñeám tieán theo söôøn leân Cuù phaùp: A CU Toán hạng thứ nhất “Địa chỉ bit” xác định tín hieäu maø söôøn leân cuûa noù ñöôïc boä ñeám vôùi teân cho trong toaùn haïng thöù hai ñeám tieán. Moãi khi xuaát hieän moät söôøn leân cuûa tín hieäu ,boä ñeám seõ taêng noäi dung cuûa thanh ghi C Word (CV) leân 1 ñôn vò. 3. Khai baùo tín hieäu ñöôïc ñeám luøi theo söôøn leân Cuù phaùp: A CD Toán hạng thứ nhất “Địa chỉ bit” xác định tín hieäu maø söôøn leân cuûa noù ñöôïc boä ñeám vôùi teân cho trong toaùn haïng thöù hai ñeám luøi. Moãi khi xuaát hieän moät söôøn leân cuûa tín hieäu, boä ñeám seõ giaûm noäi dung cuûa thanh ghi C-Word ñi 1 ñôn vò. 4. Khai baùo tín hieäu ñaët (set) giaù trò ñaët tröôùc (PV) Cuù phaùp: A L C# S 5. Khai baùo tín hieäu xoaù (reset) Cuù phaùp: A R Toán hạng thứ nhất “Địa chỉ bit”xác định tín hieäu maø moãi khi xuaát hieän söôøn leân cuûa noù, thanh ghi C-Word cuûa boä ñeám coù teân trong toaùn haïng cuûa leänh thöù hai seõ ñöôïc xoaù veà 0. CHƯƠNG 5: KỸ THUẬT LẬP TRÌNH 5.1. Lập trình tuyến tính 5.2. Lập trình có cấu trúc 5.1. Lập trình tuyến tính Kỹ thuật lập trình tuyến tính là phương pháp lập trình mà toàn bộ chương trình ứng dụng sẽ chỉ nằm trong một khối OB1. Local block của OB1 Khi thực hiện khối OB1, hệ điều hành luôn cấp một local block có kích thước mặc định là 20bytes trong Work memory để OB1 có thể lấy được những dữ liệu từ hệ điều hành. Mặc dù kích thước chỉ là 20 bytes mặc định, nhưng nguời sử dụng có thể mở rộng local block để sử dụng thêm các biến nhớ cho chương trình. Local block được giải phóng ở cuối mỗi vòng quét và được cấp lại ở đầu vòng quét sau nên các giá trị có trong local block của vòng quét trước cũng bị mất khi bắt đầu vòng quét mới. 5.2. Lập trình có cấu trúc Ngoài khối chương trình chính OB1, ta còn sử dụng thêm các khối chương trình con OB, FB, FC. Trong một chương trình, khối OB1 luôn được quét qua, còn các khối chương trình con khác chỉ được quét khi có lệnh gọi đến nó. Khi có lệnh gọi, chương trình chính OB1 dừng tạm thời, và chương trình con được gọi sẽ được thực hiện. Sau khi thực hiện xong chương trình con, chu trình tiếp tục quét dòng lệnh tiếp theo của OB1. CHƯƠNG 6: BÀI TẬP THỰC HÀNH 6.1. Phân loại sản phẩm dùng một cảm biến 6.2. Phân loại sản phẩm dùng hai cảm biến 6.3. Đếm số sản phẩm dùng một cảm biến 6.4. Phân loại và đếm sản phẩm dùng hai cảm biến 6.5. Hiển thị số sản phẩm trên led 7 đoạn 6.6. Điều khiển đèn giao thông
File đính kèm:
- bai_giang_siemens_plc_s7_300.pdf