Giáo trình Lập trình ứng dụng PLC - Trường Cao đẳng nghề kỹ thuật công nghệ

pdf 55 trang Gia Huy 17/05/2022 1931
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Lập trình ứng dụng PLC - Trường Cao đẳng nghề kỹ thuật công nghệ", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_lap_trinh_ung_dung_plc_truong_cao_dang_nghe_ky_th.pdf

Nội dung text: Giáo trình Lập trình ứng dụng PLC - Trường Cao đẳng nghề kỹ thuật công nghệ

  1. - 1 - TUYÊN BỐ BẢN QUYỀN Tài liệu này thuộc loại sách giáo trình nên các nguồn thơng tin cĩ thể được phép dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo. Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh thiếu lành mạnh sẽ bị nghiêm cấm.
  2. - 2 - LỜI GIỚI THIỆU Để thực hiện biên soạn giáo trình đào tạo nghề Cơ điện tử ở trình độ Cao đẳng và Trung cấp, giáo trình Lập trình ứng dụng PLC là một trong những giáo trình mơ đun đào tạo chuyên ngành được biên soạn theo nội dung chương trình chi tiết mơ đun Lập trình ứng dụng PLC. Nội dung biên soạn ngắn gọn, dễ hiểu, tích hợp kiến thức và kỹ năng chặt chẽ với nhau, logic. Nội dung của giáo trình “ Lập trình ứng dụng PLC” đã được xây dựng trên cơ sở kế thừa những nội dung giảng dạy các trường, kết hợp với những nội dung mới nhằm đáp ứng yêu cầu nâng cao chất lượng đào tạo, phục vụ sự nghiệp cơng nghiệp hĩa, hiện đại hĩa đất nước. Giáo trình nội bộ này do các nhà giáo cĩ nhiều kinh nghiệm nhiều năm làm cơng tác trong ngành đào tạo chuyên nghiệp. Giáo trình được biên soạn ngắn gọn, dễ hiểu, bổ sung nhiều kiến thức mới và biên soạn theo quan điểm mở, nghĩa là đề cập những nội dung cơ bản, cốt yếu để tùy theo tính chất của các ngành nghề đào tạo mà nhà trường tự điều chỉnh cho thích hợp và khơng trái với quy định của chương trình khung đào tạo cao đẳng nghề. Tuy tác giả đã cĩ nhiều cố gắng khi biên soạn, nhưng giáo trình chắc chắn khơng tránh khỏi những thiếu sĩt, rất mong nhận được sự tham gia đĩng gĩp ý kiến của các đồng nghiệp và các chuyên gia kỹ thuật đầu ngành. Xin trân trọng cảm ơn !!! Hà Nội, ngày tháng năm 2019 BAN CHỦ NHIỆM BIÊN SOẠN GIÁO TRÌNH NGHỀ: CƠ ĐIỆN TỬ TRƯỜNG CAO ĐẲNG NGHỀ KỸ THUẬT CƠNG NGHỆ
  3. - 3 - MỤC LỤC TRANG LỜI GIỚI THIỆU - 2 - BÀI 1: LẬP TRÌNH CÁC TẬP LỆNH CỦA DỮ LIỆU - 8 - 1. Lập trình các lệnh liên kết logic - 8 - 1.1. Các lệnh vào/ra và các lệnh tiếp điểm đặc biệt. - 8 - 1.2. Trình tự thực hiện - 13 - 1.3. Những lỗi thường gặp, cách khắc phục - 19 - 1.4. Bài tập ứng dụng liên quan - 19 - 2. Lập trình các lệnh ghi/xĩa giá trị cho tiếp điểm. - 21 - 2.1. Các lệnh các lệnh ghi/xĩa giá trị cho tiếp điểm. - 21 - 2.1.1. Lệnh SET (S) và RESET (R). - 21 - 2.1.2. Các bộ nhớ - 22 - 2.1.3. Timer. - 24 - 2.1.4. Couter (Bộ đếm). - 32 - 2.2. Trình tự thực hiện - 35 - 2.3. Những lỗi thường gặp, cách khắc phục - 36 - BÀI 2: LẬP TRÌNH CÁC PHÉP TỐN SỐ CỦA PLC - 37 - 1. Lập trình các lệnh chức năng truyền dẫn - 38 - 1.1. Các lệnh chức năng truyền dẫn - 38 - 1.1.2. Truyền một vùng nhớ dữ liệu. - 41 - 1.1.3. Chức năng dịch chuyển. - 43 - 1.1.4. Lệnh dịch phải số nguyên - 44 - 1.3. Những lỗi thường gặp, cách khắc phục - 45 - 1.4. Bài tập ứng dụng liên quan - 46 - 2. Lập trình các lệnh chức năng so sánh - 49 - 2.1. Các lệnh chức năng so sánh - 49 - 2.2. Trình tự thực hiện: - 52 - 2.3. Những lỗi thường gặp, cách khắc phục - 53 - 2.4. Bài tập ứng dụng liên quan - 53 - BÀI 3: LẬP TRÌNH VÀ VẬN HÀNH MƠ HÌNH ĐIỀU KHIỂN BẰNG PLC - 56 - 1. Lập trình và vận hành điều khiển mơ hình van điện từ hai cuộn dây. - 56 -
  4. - 4 - 1.1. Mơ hình van điện từ hai cuộn dây - 56 - 1.2. Trình tự thực hiện - 58 - 1.3. Những lỗi thường gặp, cách khắc phục - 58 - 1.4. Bài tập ứng dụng liên quan - 59 - 2. Lập trình và vận hành điều khiển hệ thống cung cấp khí nén. - 60 - 2.1. Mơ hình hệ thống cung cấp khí nén - 60 - 2.2. Trình tự thực hiện - 64 - 2.3. Những lỗi thường gặp, cách khắc phục - 64 - 2.4. Bài tập ứng dụng liên quan - 65 - 3. Lập trình và vận hành mơ hình điều khiển đảo chiều trực tiếp động cơ 3 pha roto lồng sĩc - 67 - 3.1. Mơ hình điều khiển đảo chiều trực tiếp động cơ 3 pha roto lồng sĩc - 67 - 3.2. Trình tự thực hiện - 69 - 3.3. Những lỗi thường gặp, cách khắc phục - 70 - 3.4. Bài tập ứng dụng liên quan - 70 - 4. Lập trình và vận hành mơ hình điều khiển đảo chiều gián tiếp động cơ 3 pha rơ to lồng sĩc - 70 - 4.1. Mơ hình điều khiển đảo chiều trực tiếp động cơ 3 pha roto lồng sĩc - 70 - 4.2. Trình tự thực hiện - 72 - 4.3. Những lỗi thường gặp, cách khắc phục - 73 - 4.4. Bài tập ứng dụng liên quan - 73 - 5. Lập trình và vận hành mơ hình điều khiển mở máy sao/tam giác động cơ khơng đồng bộ ba pha - 76 - 5.1. Mơ hình điều khiển mở máy sao/tam giác động cơ khơng đồng bộ ba pha 5.1.1. Yêu cầu bài tốn: - Khởi động hệ thống bằng nút ấn S1, động cở chạy ở chế độ Sao.Sau 10s động cơ tự động chuyển sang chế độ chạy Tam giác - Dừng động cơ bằng nút ấn S2, Cĩ bảo vệ quá tải bằng rơle nhiệt. - 76 - 5.2. Trình tự thực hiện - 78 - 5.3. Những lỗi thường gặp, cách khắc phục - 79 - 5.4. Bài tập ứng dụng liên quan - 79 - 6.1. Mơ hình điều khiển băng tải - 82 - 6.2. Trình tự thực hiện - 85 - 6.3. Những lỗi thường gặp, cách khắc phục - 86 -
  5. - 5 - 6.4. Bài tập ứng dụng liên quan - 86 - BÀI 4: LẬP TRÌNH VÀ ĐIỀU KHIỂN HỆ THỐNG CƠ ĐIỆN TỬ - 90 - 1. Lập trình và điều khiển mơ hình di chuyển vật liệu quay ngang. - 90 - 1.1. Mơ hình di chuyển vật liệu quay ngang - 90 - 1.2. Trình tự thực hiện - 96 - 1.3. Những lỗi thường gặp, cách khắc phục - 97 - 1.4. Bài tập ứng dụng liên quan - 98 - 2. Lập trình và điều khiển mơ hình di chuyển vật liệu quay đứng. - 98 - 2.1. Mơ hình di chuyển vật liệu quay đứng - 98 - 2.2. Trình tự thực hiện - 102 - 2.3. Những lỗi thường gặp, cách khắc phục - 102 - 2.4. Bài tập ứng dụng liên quan - 103 - TÀI LIỆU THAM KHẢO - 104 -
  6. - 6 - GIÁO TRÌNH MƠ ĐUN Tên mơ đun: Lập trình ứng dụng PLC Mã mơ đun: MĐ CĐT 21 Thời gian thực hiện mơ đun: 90 giờ; (Lý thuyết: 27 giờ; Thực hành, thí nghiệm, thảo luận, bài tập: 55 giờ; Kiểm tra: 8 giờ) I. Vị trí, tính chất của mơ đun: - Vị trí: Là mơn học chuyên mơn nghề trong chương trình đạo tạo trình độ cao đẳng cơ điện tử. - Tính chất: Là mơ đun chuyên mơn nghề II. Mục tiêu mơ đun: * Về kiến thức: - Phân tích được nguyên lý làm việc của hệ điều khiển lập trình PLC và so sánh được các ưu nhược điểm với các hệ thống điều khiển khác. - Lập được các bước lập trình, kết nối và điều khiển các mơ đun và mơ hình PLC ứng dụng - Biết phịng tránh các lỗi thường gặp khi lập trình, kết nối và điều khiển chương trình PLC * Về kỹ năng: - Viết được chương trình trên phần mềm PLC để điều khiển các mơ hình PLC ứng dụng - Kết nối và nạp được chương trình từ máy tính đến các mơ hình ứng dụng PLC - Vận hành được mơ hình ứng dụng PLC sau khi đã nạp chương trình vào PLC - Phịng tránh và sửa chữa được các lỗi thường gặp khi viết chương trình, nạp chương trình và vận hành mơ hình ứng dụng PLC * Về năng lực tự chủ và trách nhiệm: - Rèn luyện tính tỷ mỉ, chính xác và an tồn vệ sinh cơng nghiệp. - Tự chịu trách nhiệm khi thực hiện các việc được giao. Nội dung của mơn học/mơ đun: Thời gian (giờ) Thực hành, Số Tên các bài trong mơ đun Tổng Lý thí nghiệm, Kiểm TT số thuyết thảo luận, tra bài tập 1 Bài 1: Lập trình các tập lệnh của dữ 25 7 17 1
  7. - 7 - liệu. 2 Bài 2: Lập trình các phép tốn số của 10 3 6 1 PLC 3 Bài 3: Lập trình và vận hành mơ hình 40 10 28 2 điều khiển bằng PLC. 4 Bài 4: Lập trình và điều khiển hệ thống 12 2 9 1 cơ điện tử. 5 Thi kết thúc mơ đun 3 3 Cộng 90 22 60 8
  8. - 8 - BÀI 1: LẬP TRÌNH CÁC TẬP LỆNH CỦA DỮ LIỆU Mã mơ đun: MĐ CĐT21 - 1 Giới thiệu: Như đã biết, nước ta hiện nay đang trong quá trình cơng nghiệp hĩa, hiện đại hĩa. Vì thế, tự động hĩa sản xuất đĩng vai trị quan trọng, tự động hĩa giúp tăng năng suất, tăng độ chính xác và do đĩ tăng hiệu quả quá trình sản xuất. Để cĩ thể thực hiện tự động hĩa sản xuất, bên cạnh các máy mĩc cơ khí hay điện, các dây chuyền sản xuất v.v, cũng cần thiết phải cĩ các bộ điều khiển để điều khiển chúng.Trong đĩ, được yêu cầu đĩ.điều khiển lập trình là một trong các bộ điều khiển đáp ứng Mục tiêu: Sau khi học xong bài học này người học cĩ khả năng: + Kiến thức: - Phân tích được cấu trúc của các lệnh liên kết logic và các lệnh ghi/ xĩa giá trị cho tiếp điểm + Kỹ năng: - Lâp trình được các lệnh liên kết logic và các lệnh ghi/ xĩa giá trị cho tiếp điểm theo yêu cầu kỹ thuật. - Sửa được các lỗi thường gặp khi lập trình điều khiển. - Kiểm tra chính xác điều kiện hoạt động của thiết bị. + Năng lực tự chủ và trách nhiệm: - Rèn luyện tính tỷ mỉ, chính xác và an tồn vệ sinh cơng nghiệp. - Tự chịu trách nhiệm khi thực hiện các việc được giao Nội dung: 1. Lập trình các lệnh liên kết logic 1.1. Các lệnh vào/ra và các lệnh tiếp điểm đặc biệt. 1.1.1. Tiếp điểm thường mở(NO_Normally open contact) Ký hiệu:
  9. - 9 - n: Biểu diễn các tốn hạng địa chỉ ngõ vào như sau: I, Q, M, L, T, C, D. Lệnh này dung để đặt một cơng tắc logic thường mở vào chương trình, nĩ để kiểm tra trạng thái tín hiệu mức logic 1. Khi đĩ kết quả của phép tốn logic RLO=1 (Result Of Logic Operation). Tiếp điểm này sẽ đĩng tức là lên 1 khi n x.y=1. nếu n x.y=0 thì tiếp điểm sẽ về mức Logic 0 (RLO=0). Khi sử dụng tiếp điểm NO mắc nối tiếp thì kết quả giống như cổng Logic AND. Khi sử dụng tiếp điểm NO mắc song song thì kết quả giống như cổng Logic OR Lệnh này tác động lên thanh ghi trạng thái như sau (ký hiệu”-“ chỉ nội dung bit khơng bị thay đổi, “x” chỉ nội dung bit bị thay đổi theo trạng thái: 1.1.2. Tiếp điểm thường đĩng (NC_ Normally close contact) Ký hiệu: LAD FBD STL AN n x.y n: Biểu diễn các tốn hạng địa chỉ ngõ vào như sau: I, Q, M, L, T, C, D. Lệnh này dùng để đặt một cơng tắc logic thường đĩng vào chương trình, nĩ để kiểm tra trạng thái tín hiệu mức logic 0. Khi đĩ kết quả của phép tốn logic RLO=0(Result Of Logic Operation). Tiếp điểm này sẽ mở tức là xuống 0 khi n x.y=1. Nếu n x.y=0 thì tiếp điểm sẽ lên mức Logic 1 (RLO=1). Khi sử dụng tiếp điểm NO mắc nối tiếp thì kết quả giống như cổng Logic AND. Khi sử dụng tiếp điểm NO mắc song song thì kết quả giống như cổng Logic OR Lệnh này tác động lên thanh ghi trạng thái như sau (ký hiệu”-“ chỉ nội dung bit khơng bị thay đổi, “x” chỉ nội dung bit bị thay đổi theo trạng thái:
  10. - 10 - 1.1.3. Cuộn dây ngõ ra (output coil) Ký hiệu: n: Biểu diễn các tốn hạng địa chỉ ngõ vào như sau: I, Q, M, L, D. Chức năng của lệnh này giống như cuộn dây ở mạch Rơle. Lệnh này khơng duy trì trạng thái mà cĩ trạng thái giống như ở ngõ vào của lệnh. Nghĩa là: - Nếu cĩ tín hiệu chạy qua cuộn dây thì n x.y=1. - Nếu khơng cĩ tín hiệu chạy qua cuộn dây thì n x.y=0. Lệnh này tác động lên thanh ghi trạng thái như sau: Ví dụ: Mạch điều khiển động cơ hoạt động theo chu trình đĩng ngắt. Khi nhấn một nút thì động cơ chạy. Nhấn nút khác thì động cơ ngừng. Sơ đồ mạch: Hoạt động của mạch: Khi nhấn I0.0 thì ngõ ra Q4.0 cĩ điện điều khiển động cơ hoạt động, đồng thời tiếp điểm thường hở Q4.0 mắt song song với I0.0 giúp cho mạch duy trì hoạt động. Khi nhấn nút nhấn I0.1 thì làm ngắt mạch ngõ ra, động cơ ngừng hoạt động 1.1.4. Lệnh Not (Lệnh đảo tín hiệu _ invert power flow) Ký hiệu:
  11. - 11 - Lệnh NOT khơng cĩ tốn hạng là địa chỉ. Nĩ cĩ chức năng làm đảo trạng thái của kết quả phép tốn Logic (RLO). Lệnh này tác động lên thanh ghi trạng thái như sau: Ví dụ: Mạch đảo tín hiệu cĩ sơ đồ như sau: Hoạt động: Tín hiệu ngõ ra Q4.0=0 khi I0.0=1. Tín hiệu ngõ ra Q4.0=1 khi I0.0=0. 1.1.5. Lệnh kết nối (connector) Ký hiệu: LAD FBD STL n: Biểu diễn các tốn hạng địa chỉ ngõ vào như sau: I, Q, M, L, D. Địa chỉ L chỉ được sử dụng chỉ khi nĩ được khai báo trong bảng khai báo của các khối Logic (OB,FC, FB). Kết nối là phần tử trung gian dùng để lưu trữ RLO hiện hành tại một địa chỉ cụ thể, khi kết nối nối với các phần tử khác lệnh kết nối được chèn giống như chèn một tiếp điểm. - Một kết nối khơng bao giờ được - Nối vào một ray dẫn điện. - Trực tiếp sau một sự phân nhánh. - Sử dụng tại một điểm kết thúc một nhánh. - Cĩ thể tạo một kết nốiphủ định bằng phần tử NOT. Lệnh này tác động lên thanh ghi trạng thái như sau: Ví dụ:
  12. - 12 - Khi mức Logic ở tiếp điểm I0.0 và I0.1 lên 1 thì M0.0 lên 1, ngõ ra Q4.0=0 (Bình thường Q4.0=1) và I0.3 là tiếp điểm thường đĩng nên ngõ ra Q4.1 lên 1 1.1.6. Hàm AND Tốn hạng là kiểu dữ liệu BOOL hay địa chỉ bit I,Q, M, T,C, D, L Tín hiệu ra Q4.0 sẽ bằng 1 khi đồng thời tín hiệu I0.0=1 và I0.1=1. Dữ liệu vào và ra : Vào: I0.0, I0.1: BOOL Ra : Q4.0 : BOOL 1.1.7.Hàm OR : Tốn hạng là kiểu dữ liệu BOOL hay địa chỉ bit I,Q, M, T,C, D, L. Tín hiệu ra sẽ bằng 1 khi ít nhất cĩ một tín hiệu vào bằng 1. Dữ liệu vào và ra: Vào : I0.0, I0.1: BOOL Ra : Q4.0: BOOL 1.1.8.Hàm XOR Tốn hạng là kiểu dữ liệu BOOL hay địa chỉ bit I, Q, M, T,C, D, L.
  13. - 13 - Tín hiệu ra Q4.0= 1 khi I0.0 khác I0.2 Dữ liệu vào và ra: Vào: I0.0, I0.1 : BOOL Ra : Q4.0 : BOOL 1.2. Trình tự thực hiện 1.2.1 Điều kiện thực hiện - Máy vi tính - Module PLC S7 300. - Giắc cắm, Cáp MPI kết nối máy tính và mơ đun PLC S7 – 300. - Phần mềm lập trình Step7-300 - Nguồn 220V cung cấp cho module PLC S7 – 300 1.2.2 Các bước thực hiện: Bước 1: Tạo Project và khai báo phần cứng: - Khởi động phần mềm: - Tạo project mới
  14. - 14 - - Khai báo phần cứng: Giả sử ta đặt chương trình là ‘c’. Click chuột phải vào ký hiệu như trên, chọn : Tiếp theo, trong phần trạm SIMATIC 300 vừa chọn, ta Double Click vào phần Hardware để cấu hình phần cứng cho hệ thống S7 300 của ta.
  15. - 15 - Ta chọn các thiết bị phần cứng từ thư viện linh kiện bên cột phải. Ta phải chọn cho đúng với mã số ghi trên thiết bị. Bằng các thao tác rê kéo thả vào cửa sổ bên phải. Ví dụ như ta chọn một thanh Rail trước tiên, sau đĩ ta bỏ các thiết bị như CPU 312C, hai Module DI, hai Module DO lên thanh Rail * Thay đổi địa chỉ In / Out trên CPU S7-300 :
  16. - 16 - Giả sử ta cĩ một cấu hình phần cứng như sau, ta sẽ cĩ vùng địa chỉ quản lý Ta Double Click vào ngay trên Module muốn đổi địa chỉ Xuất hiện : Nếu ta để dấu kiểm tại System selection thì vùng địa chỉ này sẽ được chọn theo mặc định, vùng Start sẽ bị mờ đi làm ta khơng thay đổi được. Nếu muốn thay đổi vùng địa chỉ, ta bỏ dấu kiểm đi, đánh số địa chỉ vào vùng Start Xong nhấn OK. Tương tư như thế, ta cĩ thể thay đổi bất kỳ vùng địa chỉ nào nếu muốn, nhưng lưu ý là vùng địa chỉ thay đổi khơng được trùng với vùng địa chỉ đã sử
  17. - 17 - dụng trên Module khác và ta nên sử dụng vùng địa chỉ sao cho việc quản lý để viết chương trình được dễ dàng. Sau đĩ ta lưu lại chương trình. Quay về cửa sổ chương trình của SIMATIC Manager, ta sẽ thấy : Vào phần Blocks \ OB1. Double click vào OB1 để soạn thảo chương trình. * Khai báo kết nối PLC và Máy tính : Ta vào Option \ Set PG/PC Interface hay vào Control Panel \ Set PG/PC Interface :
  18. - 18 - Chọn mục PC Adapter(MPI). Vào Properties, chọn cổng COM kết nối, tốc độ truyền 187,5kbps. Sau khi khai báo xong, ta kết nối PLC với máy tính và nhấn nhút Download trên cửa sổchính SIMATIC Manager để Down load tồn bộ phần cứng và chương trình vừa viết vào PLC. Ta cũng cĩ thể Download phần cứng riêng trong cửa sổ HW, hay chỉ Download chương trình trong cửa sổ OB1. Bước 2: Lấy các lệnh liên kết logic - Tiếp điểm thường đĩng
  19. - 19 - 1.3. Những lỗi thường gặp, cách khắc phục Sai hỏng Nguyên nhân Cách khắc phục - Khai báo sai cấu hình phần cứng - Chọn sai loại CPU - Chọn đúng loại của PLC S7 – 300 trên phần mềm. - Chọn sai đầu vào, đầu CPU ra - Chọn đúng các đầu vào, đầu ra. - Khai báo sai các đầu vào/ra dữ - Ghi sai đầu vào, đầu - Ghi đúng đầu vào, liệu. ra dữ liệu trên phần đầu ra dữ liệu trên mềm phần mềm - Kết nối sai các đầu vào/ ra dữ liệu. - Kết nối sai dây giữa - Kết nối đúng dây PLC với thiết bị giữa PLC với thiết bị - Lập trình khơng đúng với yêu cầu - Chưa xác định đúng Xác định đúng yêu cơng nghệ đưa ra. yêu cầu cơng nghệ cầu cơng nghệ đưa ra - Khơng kết nối máy tính được với - Chọn sai loại cáp kết - Chọn đúng loại PLC nối cáp kết nối 1.4. Bài tập ứng dụng liên quan Bài tập 1: Cho sơ đồ mạch như hình vẽ dưới. Em hãy sử dụng các lệnh đã học và viết chương trình cho bài tốn. Hướng dẫn: 1. Xác lập bảng địa chỉ vào/ra: Xác lập vào / ra Ký hiệu Địa chỉ Chú thích S1 I0.1 Cơng tắc thường mở S2 I0.2 Cơng tắc thường mở S3 I0.3 Cơng tắc thường mở S4 I0.4 Cơng tắc thường mở H6 Q0.0 Đèn báo 2. Viết chương trình:
  20. - 20 - 3. Mơ tả: Ngõ ra Q0.1 chỉ cĩ tín hiệu bằng 1, nếu các ngõ vào I0.1 và I0.2 cuả cổng AND cĩ tín hiệu bằng 1 hoặc các ngõ vào I0.3 hoặc I0.4 cĩ tín hiệu bằng 1. Em hãy viết chương trình bằng thiết bị lập trình và chuyển vào PLC. Thử chương trình Bài tập 2: Cho sơ đồ mạch như hình vẽ dưới. Em hãy sử dụng các lệnh đã học và viết chương trình cho bài tốn. Hướng dẫn: 1. Xác lập bảng địa chỉ vào/ra: Xác lập vào/ra Kí hiệu Điạ chỉ Chú thích S1 I0.1 Cơng tắc thường mở S2 I0.2 Cơng tắc thường mở S3 I0.3 Cơng tắc thường mở S4 I0.4 Cơng tắc thường mở S5 I0.5 Cơng tắc thường mở H2 Q0.1 Đèn báo 2. Viết chương trình:
  21. - 21 - 3. Mơ tả: Ngõ ra Q0.1 ở hình 4.14 chỉ cĩ tín hiệu bằng 1, nếu cĩ ít nhất một ngõ vào cuả các cổng AND hoặc ngõ vào I0.5 cĩ tín hiệu 1. Em hãy viết chương trình bằng thiết bị lập trình và chuyển vào PLC. Thử chương trình Bài tập 3: Cho sơ đồ mạch như hình vẽ dưới. Em hãy sử dụng các lệnh đã học và viết chương trình cho bài tốn. Hướng dẫn: 1. Xác lập bảng địa chỉ vào/ra: Xác lập vào/ra Kí hiệu Điạ chỉ Chú thích S1 I0.1 Nút nhấn thường mở S2 I0.2 Nút nhấn thường đĩng S3 I0.3 Nút nhấn thường mở S4 I0.4 Nút nhấn thường đĩng K1 Q0.1 Khởi động từ K2 Q0.2 Khởi động từ 2. Viết chương trình: (HS tự viết) 3. Mơ tả: Khi nhấn S1, ngõ vào I0.1 cĩ tín hiệu 1, làm cho ngõ ra Q0.1 (K1) cĩ tín hiệu 1. Cuộn dây K1 cĩ điện. Khi nhấn S2 (ngõ vào I0.2) ngõ ra Q0.1 sẽ cĩ tín hiệu 0, cuộn dây K1 mất điện. 2. Lập trình các lệnh ghi/xĩa giá trị cho tiếp điểm. 2.1. Các lệnh các lệnh ghi/xĩa giá trị cho tiếp điểm. 2.1.1. Lệnh SET (S) và RESET (R). a. Lệnh SET Tốn hạng là địa chỉ bit I, Q, M, T, C, D, L.
  22. - 22 - Tín hiệu ra Q4.0 = 1 (Q4.0 sẽ đ-ợc thiết lập ) khi I0.0 =1. Dữ liệu vào và ra: Vào I0.0 : BOOL Ra Q4.0 : BOOL b. Lệnh xố RESET Tốn hạng là địa chỉ bit I, Q, M, T, C, D, L. Tín hiệu ra Q4.0 = 0 (Q4.0 sẽ được xố ) khi I0.0 =1 . Dữ liệu vào và ra: Vào: I0.0 : BOOL Ra : Q4.0 : BOOL 2.1.2. Các bộ nhớ a.Bộ nhớ RS Tốn hạng là địa chỉ bit I, Q, M, D, L
  23. - 23 - Khi I0.0 = 1 và I0.1 =0 Merker M0.0 bị Reset và đầu ra Q4.0 là "0". Nếu I0.0 = 0 và I0.1 = 1 thì Set cho M0.0 và đầu ra Q4.0 là "1". Khi cả hai đầu vào Set va Reset cùng đồng thời =1 thì M0.0 và Q4.0 cĩ giá trị là "1". Dữ liệu vào và ra: BOOL Vào I0.0, I0.1 Ra Q4.0 BOOL b.Bộ nhớ SR Tốn hạng là địa chỉ bit I, Q, M, D, L Khi I0.0 = 1 và I0.1 =0 thì Set cho Merker M0.0 và đầu ra Q4.0 là "1". Nếu I0.0 = 0 và I0.0 = 1 thì M0.0 bị Reset và đầu ra Q4.0 là "0". Khi cả hai đầu vào Set va Reset cùng đồng thời =1 thì M0.0 và Q4.0 cĩ giá trị là "0". Dữ liệu vào và ra: Vào I0.0, I0.1 BOOL Ra Q4.0 BOOL
  24. - 24 - 2.1.3. Timer. a. Nguyên lý làm việc chung của bộ Timer. Lập trình với SPS S7-300 Bộ thời gian Timer là bộ tạo thời gian trễ T mong muốn giữa tín hiệu logic đầu vào X(t) và đầu ra Y(t) S7-300 cĩ 5 bộ thời gian Timer khác nhau. Tất cả 5 loại Timer này cùng bắt đầu tạo thời gian trễ tín hiệu kể từ thời điểm cĩ sườn lên của tín hiệu đầu vào , tức là khi cĩ tín hiệu đầu vào U(t) chuyển trạng thái từ logic "0" lên logic"1", được gọi là thời điểm Timer được kích. Thời gian trễ T mong muốn được khai báo với Timer bằng giá trị 16 bits bao gồm hai thành phần : - Độ phân giải với đơn vị là mS. Timer của S7 cĩ 4 loại phân giải khác nhau là 10ms, 100ms, 1s và 10s. - Một số nguyên BCD trong khoảng từ 0 đến 999 được gọi là PV ( Preset Value giá trị đặt trước). Như vậy thời gian trễ T mong muốn sẽ được tính như sau : T= Độ phân giải x PV. Ngay tại thời điểm kích Timer, giá trị PV được chuyển vào thanh ghi 16 bits của Timer T-Word ( gọi là thanh ghi CV- Curren value- giá trị tức thời). Timer sẽ ghi nhớ khoảng thời gian trơi qua kể từ khi kích bằng cách giảm dần một cách tương ứng nội dung thanh ghi CV. Nếu nội dung thanh ghi CV trở về bằng 0 thì Timer đã đạt được thời gian mong muốn T và điều này được báo ra ngồi bằng cách thay đổi trạng thái tín hiệu đầu ra Y(t). Việc thơng báo ra ngồi bằng cách đổi trạng thái tín hiệu dầu ra Y(t) nh- thế nào cịn phụ thuộc vào loại Timer được sử dụng. Bên cạnh sườn lên của tín hiệu đầu vào U(t), Timer cịn cĩ thể kích bằng
  25. - 25 - sườn lên của tín hiệu kích chủ động cĩ tên là tín hiệu ENABLE nếu như tại thời điểm cĩ sườn lên của tín hiệu ENABLE, tín hiệu đầu vào U(t) cĩ gic là "1". Từng loại Timer được đánh số từ 0 đến 255 (tuỳ thuộc vào từng loại CPU). Một Timer được đặt tên là Tx, trong đĩ x là số hiệu của Timer ( 0<=x<=255). Ký hiệu Tx cũng đồng thời là tín hiệu hình thức của thanh ghi CV (T-Word) và đầu ra T-bits của Timer đĩ . Tuy chúng cĩ cùng địa chỉ hình thức , nhưng TWord và T-bits vẫn được phân biệt với nhau nhờ kiểu lệnh sử dụng tốn hạng Tx. Khi dùng làm việc với từ Tx đ-ợc hiểu là T-Word cịn khi làm việc với điểm thi Tx được hiểu là T-bit. Để xĩa tức thời trạng thái của T-word và T-bit người ta sử dụng một tín hiệu reset Timer . Tại thời điểm sườn lên của tín hiệu này giá trị T-Word và T-bit đồng thời cĩ giá trị bằng 0 tức là thanh ghi tức thời CV được đặt về 0 và tín hiệu đầu ra cũng cĩ trạng thái Logic là "0". Trong thời gian tín hiệu Reset cĩ giá trị logic là "1" Timer sẽ khơng làm việc. b. Khai báo sử dụng: Các tín hiệu điều khiển cho một bộ Timer phải được khai báo bao gồm các bước sau: - Khai báo tín hiệu ENABLE nếu muốn sử dụng tín hiệu chủ động kích. - Khai báo tín hiệu đầu vào U(t). - Khai báo thời gian trễ mong muốn TW. - Khai báo loại Timer được sử dụng (SP, SE, SD, SS, SF). - Khai báo tín hiệu xố Timer nếu muốn sử dụng chế độ Reset chủ động. Trong các bước trên thì bước 1 và 5 cĩ thể bỏ qua . - Dạng dữ liệu vào / ra của bộ Timer: S : BOOL BI (DUAL): WORD TW:S5TIME BCD (DEZ) : WORD R : BOOL Q : BOOL Bộ thời gian SP: -Sơ đồ khối:
  26. - 26 - - Nguyên lý làm việc: Tại thời điểm s-ờn lên của tín hiệu vào SET thời gian sẽ đựơc tính đồng thời giá trị Logic ở đầu ra là "1". Khi thời gian đặt kết thúc giá trị đầu ra cũng trở về 0. Khi cĩ tín hiệu RESET (R) thời gian tính lập tức trở về 0 và tín hiệu đầu ra cũng giá trị là "0". -Trường hợp khơng sử dụng các tín hiệu đầu vào SET(S), RESET ( R), BI và BCD ta sử dụng khối Timer SI sau: Tín hiệu đầu vào I0.0 chính là tín hiệu kích. S5T#2s là thời gian đặt 2s Tín hiệu ra của bộ thời gian tác động tới đầu ra Q4.0
  27. - 27 - Bộ thời gian SE -Nguyên lý làm việc: Hoạt động của Timer giữ độ rộng xung như sau: Timer hoạt động khi kết quả RLO tại ngõ vào S thay đổi từ 0 lên 1. Khi đĩ Timer hoạt động trong khoảng thời gian đặt trước tại ngõ vào TV. Nếu thời gian ở mức 1 của ngõ vào S lớn hơn hay nhỏ hơn thời gian đặt trước TV thì Timer cũng chỉ hoạt động trong khoảng thời gian đặt trước TV. Nếu tín hiệu tại ngõ vào S thay đổi từ 0 lên 1 trong khi Timer đang hoạt động thì Timer sẽ khởi động mới lại. Trạng thái tín hiệu tại ngõ ra Q=1 khi Timer hoạt động, ngược lại Q=0 khi Timer ngưng hoạt động. Ngõ ra BI và BCD dùng để quan sát giá trị hiện hành của Timer, ngõ ra BI để quan sát dạng số nhị phân, ngõ ra BCD để quan sát dạng số BCD. Giá trị thời gian hiện hành là giá trị ban đầu của TV trừ đi giá trị thời gian đã hoạt động của Timer, tính từ khi Timer hoạt động. Khi kết quả RLO tại ngõ vào R là 1 thì giá trị thời gian hiện hành và độ phân giải bị
  28. - 28 - xố, ngõ ra Q ở trạng thái reset hoặc khi Timer hoạt động thì ngõ ra Q cũng bị Reset. Nếu trạng thái tín hiệu tại hai ngõ vào R và S đều bằng 1 thì ngõ ra Q khơng được Set cho đến khi ngõ R=0. Ví dụ: Nếu trạng thái tín hiệu tại I0.0 thay đổi từ 0 lên 1 thì Q4.0=1, T5 hoạt động. Timer hoạt động đến 2s cho dù thời gian I0.0=1 lớn hơn hay nhỏ hơn 2s. Nếu I0.1 thay đổi từ 0 lên 1 trong thời gian Timer đang hoạt động thì Timer sẽ bị Reset. Ngõ ra Q4.0=1 trong thời gian Timer hoạt động, Q4.0=0 khi Timer Reset. Bộ thời gian SD - Ký hiệu - Giản đồ thời gian: Hoạt động của Timer đĩng mạch chậm khơng nhớ như sau: Timer hoạt động khi kết quả RLO tại ngõ vào S thay đổi từ 0 lên 1. Khi đĩ timer bắt
  29. - 29 - đầu hoạt động với giá trị thời gian đặt trước tại ngõ vào TV. Trạng thái tín hiệu tại ngõ ra Q=1 khi timer hoạt động song, khơng cĩ lỗi và ngõ vào S vẫn bằng 1. Nếu ngõ vào S thay đổi từ 1 về 0 trong khi Timer đang hoạt động thì ngõ ra Q trở về 0. Ngõ ra BI và BCD dùng để quan sát giá trị hiện hành của Timer, ngõ ra BI để quan sát dạng số nhị phân, ngõ ra BCD để quan sát dạng số BCD. Giá trị thời gian hiện hành là giá trị ban đầu của TV trừ đi giá trị thời gian đã hoạt động của Timer, tính từ khi Timer hoạt động. Khi kết quả RLO tại ngõ vào R là 1 thì giá trị thời gian hiện hành và độ phân giải bị xố, ngõ ra Q ở trạng thái reset. Ví dụ: Nếu trạng thái tín hiệu tại I0.0 thay đổi từ 0 lên 1 thì T5 hoạt động, timer hoạt động đến 2s nếu ngõ vào I0.0 vẫn bằng 1. Nếu Timer hoạt động trong thời gian nhỏ hơn 2s mà I0.0 trở về 0 thì Timer ngừng hoạt động. Nếu tín hiệu tại ngõ vào I0.1 thay đổi từ 0 lên 1 thì Timer sẽ bị Reset. Trong thời gian Timer hoạt động, nếu thời gian I0.0 ở mức 1 lớn hơn 2s thì ngõ ra Q4.0 sẽ lên mức 1 mãi cho đến khi I0.0 về 0. * Bộ thời gian SS - Ký hiệu: - Giản đồ thời gian:
  30. - 30 - Hoạt động của Timer đĩng mạch chậm cĩ nhớ như sau: Timer hoạt động khi kết quả RLO tại ngõ vào S thay đổi từ 0 lên 1. Khi đĩ timer bắt đầu hoạt động với giá trị thời gian đặt trước tại ngõ vào TV và tiếp tục hoạt động cho dù ngõ vào S thay đổi về 0 trong suốt thời gian đĩ. Nếu tín hiệu tại ngõ vào S thay đổi từ 0 lên 1 trong khi Timer đang hoạt động thì Timer sẽ khởi động mới lại. Trạng thái tín hiệu tại ngõ ra Q=1 khi timer hoạt động song, khơng cĩ lỗi thì khơng cần chú ý đến trạng thái tín hiệu ngõ vào S là 0 hay 1. Ngõ ra Q chỉ về 0 khi cĩ lệnh Reset. Ngõ ra BI và BCD dùng để quan sát giá trị hiện hành của Timer, ngõ ra BI để quan sát dạng số nhị phân, ngõ ra BCD để quan sát dạng số BCD. Giá trị thời gian hiện hành là giá trị ban đầu của TV trừ đi giá trị thời gian đã hoạt động của Timer, tính từ khi Timer hoạt động. Khi kết quả RLO tại ngõ vào R là 1 thì giá trị thời gian hiện hành và độ phân giải bị xố, ngõ ra Q ở trạng thái reset. Ví dụ: Nếu trạng thái tín hiệu tại I0.0 thay đổi từ 0 lên 1 thì T5 hoạt động, timer vẫn hoạt động cho dù ngõ vào S ở mức 0 hay 1. Nếu ngõ vào S thay đổi từ 0 lên 1 trong khi Timer đang hoạt động thì Timer sẽ khởi động mới trở lại. Nếu tín hiệu tại ngõ vào I0.1 thay đổi từ 0 lên 1 thì Timer sẽ bị Reset. Ngõ ra Q4.0 sẽ lên mức 1 mãi khi Timer hoạt động song, Q4.0 chỉ Reset khi I0.1=1.
  31. - 31 - * Bộ thời gian SA - Ký hiệu: - Giản đồ thời gian: Hoạt động của Timer mở mạch chậm như sau: Timer hoạt động khi kết quả RLO tại ngõ vào S thay đổi từ 1 về 0. Khi đĩ Timer hoạt động trong khoảng thời gian đặt trước tại ngõ vào TV. Nếu tín hiệu tại ngõ vào S thay đổi từ 0 lên 1 trong khi Timer đang hoạt động thì Timer sẽ dừng và thời gian kế tiếp trạng thái tín hiệu của S thay đổi từ 1 về 0 thì Timer sẽ bắt đầu hoạt động lại từ đầu. Trạng thái tín hiệu tại ngõ ra Q=1 khi ngõ vào S thay đổi từ 0 lên 1, nếu trạng thái của S trở về 0 thì Q cũng vẫn bằng 1, sau khi Timer hoạt động song ngõ ra Q mới trở về 0. Ngõ ra BI và BCD dùng để quan sát giá trị hiện hành của Timer, ngõ ra BI để quan sát dạng số nhị phân, ngõ ra BCD để quan sát dạng số BCD. Giá trị thời gian hiện hành là giá trị ban đầu của TV trừ đi giá trị thời gian đã hoạt động của Timer, tính từ khi Timer hoạt động. Khi kết quả RLO tại ngõ vào R là 1 thì giá trị thời gian hiện hành và độ phân giải bị xố, ngõ ra Q ở trạng thái reset. Nếu trạng thái tín hiệu tại hai ngõ vào R và S đều bằng 1 thì ngõ ra Q khơng được Set cho đến khi ngõ R=0. - Ví dụ:
  32. - 32 - Nếu trạng thái tín hiệu tại I0.0 thay đổi từ 0 lên 1 thì Q4.0=1, T5 chưa hoạt động. Khi S thay đổi từ 1 về 0 thì Timer hoạt động, Q4.0 vẫn bằng 1 đến khi Timer hoạt động song thì Q4.0 trở về 0. Nếu ngõ vào S thay đổi từ 0 lên 1 trong khi Timer đang hoạt động thì Timer sẽ dừng lại đến khi S thay đổi từ 1 về 0. Nếu tín hiệu tại ngõ vào I0.1 thay đổi từ 0 lên 1 thì Timer sẽ bị Reset. 2.1.4. Couter (Bộ đếm). a. Nguyên lý làm việc: Counter thực hiện chức năng đếm tại các sườn lên của các xung đầu vào. S7- 300 cĩ tối đa là 256 bộ đếm phụ thuộc vào từng loại CPU, ký hiệu bởi Cx. Trong đĩ x là số nguyên trong khoảng từ 0 đến 255. Trong S7-300 cĩ 3 loại bộ đếm thường sử dụng nhất đĩ là : Bộ đếm tiến lùi (CUD), bộ đếm tiến (CU)và bộ đếm lùi (CD). Một bộ đếm tổng quát cĩ thể được mơ tả như sau: trong đĩ: CU : BOOL là tín hiệu đếm tiến CD : BOOL là tín hiệu đếm lùi S : BOOL là tín hiệu đặt PV : WORD là giá trị đặt trước R : BOOL là tín hiệu xố CV : WORD Là giá trị đếm ở hệ đếm 16 CV_BCD: WORD là giá trị đếm ở hệ đếm BCD Q : BOOL Là tín hiệu ra .
  33. - 33 - Quá trình làm việc của bộ đếm đ-ợc mơ tả nh- sau: Số s-ờn xung đếm đ-ợc, đ-ợc ghi vào thanh ghi 2 Byte của bộ đếm, gọi là thanh ghi C- Word. Nội dung của thanh ghi C-Word đ-ợc gọi là giá trị đếm tức thời của bộ đếm và ký hiệu bằng CV và CV_BCD. Bộ đếm báo trạng thái của CWord ra ngồi C-bit qua chân Q của nĩ. Nếu CV <> 0 , C-bit cĩ giá trị "1". Ng-ợc lại khi CV = 0, C- bit nhận giá trị 0. CV luơn là giá trị khơng âm. Bộ đếm sẽ khơng đếm lùi khi CV = 0. Đối với Counter, giá trị đặt tr-ớc PV chỉ đ-ợc chuyển vào C-Word tại thời điểm xuất hiện s-ờn lên của tín hiệu đặt tới chân S. Bộ đếm sẽ đ-ợc xố tức thời bằng tín hiệu xố R (Reset). Khi bộ đếm đ-ợc xĩa cả C-Word và C- bit đều nhận giá trị 0. b. Khai báo sử dụng Việc khai báo sử dụng counter bao gồm các bước sau: - Khai báo tín hiệu Enable nếu muốn sử dụng tín hiệu chủ động kích đếm (S): dạng dữ liệu BOOL - Khai báo tín hiệu đầu vào đếm tiến CU : dạng dữ liệu BOOL - Khai báo tín hiệu đầu vào đếm lùi CD : dạng dữ liệu BOOL - Khai báo giá trị đặt tr-ớc PV: dạng dữ liệu WORD - Khai báo tín hiệu xố: dạng dữ liệu BOOL - Khai báo tín hiệu ra CV nếu muốn lấy giá trị đếm tức thời ở hệ 16. dạng dữ liệu WORD - Khai báo tín hiệu ra CV-BCD nếu muốn lấy giá trị đếm tức thời ở hệ BCD dạng dữ liệu WORD - Khai báo đầu ra Q nếu muốn lấy tín hiệu tác động của bộ đếm. dạng dữ liệu BOOL Trong đĩ cần chú ý các tín hiệu sau bắt buộc phải khai báo: Tên của bộ đếm cần sử dụng, tín hiệu kích đếm CU hoặc CD.
  34. - 34 - * Bộ đếm tiến lùi: - Sơ đồ khối: -Nguyên lý hoạt động: Khi tín hiệu I0.2 chuyển từ 0 lên 1bộ đếm đ-ợc đặt giá trị là 55. Giá trị đầu ra Q4.0 =1 . Bộ đếm sẽ thực hiên đếm tiến tại các s-ờn lên của tín hiệu tại chân CU khi tín hiệu I0.0 chuyển giá trị từ "0" lên "1" Bộ đếm sẽ đếm lùi tại các s-ờn lên của tín hiệu tại chân I0.1 khi tín hiệu chuyển từ "0" lên "1" Giá trị của bộ đếm sẽ trở về 0 khi cĩ tín hiệu tai s-ờn lên của chân R ( I0.3) Bộ đếm tiến: -Nguyên lý hoạt động: Khi tín hiệu I0.2 chuyển từ "0" lên "1" bộ đếm đ-ợc đặt giá trị là 55. Giá trị đầu ra Q4.0 =1 . Bộ đếm sẽ thực hiên đếm tiến tại các s-ờn lên của tín hiệu tại chân CU khi tín hiệu I0.0 chuyển giá trị từ "0" lên "1"
  35. - 35 - Giá trị của bộ đếm sẽ trở về 0 khi cĩ tín hiệu tai s-ờn lên của chân R (I0.3) Bộ đếm sẽ chỉ đếm đến giá trị = 0. 2.2. Trình tự thực hiện 2.2.1. Điều kiện thực hiện - Máy vi tính - Module PLC S7 300. - Giắc cắm, Cáp MPI kết nối máy tính và mơ đun PLC S7 – 300. - Phần mềm lập trình Step7-300 - Nguồn 220V cung cấp cho module PLC S7 – 300 2.2.2. Các bước thực hiện: TT Cơng việc Nội dung Yêu cầu kỹ thuật Soạn thảo Thực hiện các câu lệnh đã - Viết được chương trình theo yêu chương trình được học cầu cơng nghệ. trên phần - Viết chương trình đúng theo quy mềm trình cơng nghệ. 1 S7 300 - Cĩ đầy đủ các chú thích của đầu vào/ đầu ra. - Cĩ giải thích tại mỗi Network, tại mỗi phần chương trình (tên của mạch thiết kế)
  36. - 36 - Chạy thử Chạy thử các chương trình - Chương trình điều khiển đơn giản chương trình trên phần mềm mơ phỏng rễ kiểm tra. trên máy tính - Chạy mơ phỏng theo đúng yêu cầu cơng nghệ. - Độ chính xác của chương trình điều 2 khiển. - Độ hồn hảo của chương trình điều khiển. - Chương trình điều khiển hoạt động ổn định. - Lựa chọn các bit logic hợp lý. Kết nối và - Kết nối đầu vào, đầu ra: Chương trình chạy đúng yêu cầu chạy thử với Kết nối với các Module cơng nghệ mơ hình thực chấp hành khác để theo dõi - Thao tác chuẩn xác. tập PLC S7 – kết quả đầu ra (Đảm bảo - Thời gian 300 kết nối đúng theo mức - Đảm bảo an tồn về người và thiết 3 điện áp với từng Module bị - Load chương trình các - Thao tác và tổ chức nơi làm việc chương trình xuống mơ hình thực tập PLC và chạy thử 2.3. Những lỗi thường gặp, cách khắc phục Sai hỏng Nguyên nhân Cách khắc phục - Khai báo sai cấu hình phần cứng - Chọn sai loại CPU - Chọn đúng loại của PLC S7 – 300 trên phần mềm. - Chọn sai đầu vào, đầu CPU ra - Chọn đúng các đầu vào, đầu ra. - Khai báo sai các đầu vào/ra dữ - Ghi sai đầu vào, đầu - Ghi đúng đầu vào, liệu. ra dữ liệu trên phần đầu ra dữ liệu trên mềm phần mềm - Kết nối sai các đầu vào/ ra dữ liệu. - Kết nối sai dây giữa - Kết nối đúng dây PLC với thiết bị giữa PLC với thiết bị - Lập trình khơng đúng với yêu cầu - Chưa xác định đúng Xác định đúng yêu cơng nghệ đưa ra. yêu cầu cơng nghệ cầu cơng nghệ đưa ra - Khơng kết nối máy tính được với - Chọn sai loại cáp kết - Chọn đúng loại PLC nối cáp kết nối 2.4. Bài tập ứng dụng liên quan Bài tập 1: Cho thang máy xây dựng như hình vẽ:
  37. - 37 - - Mơ tả hoạt động: Thang máy xây dựng hoạt động như sau: Khi nhấn nút nhấn nâng thì gàu sẽ chạy lên đến cơng tắc giới hạn trên thì gàu dừng lại.Khi nhấn nút nhấn hạ thì gàu sẽ hạ xuống đến cơng tắc giới hạn dưới thì gàu dừng lại. Trong khi đang di chuyển nếu nhấn nút nhấn dừng thì gàu dừng lại và sau đĩ cĩ thể nâng gàu lên hay hạ gàu xuống theo mong muốn. Yêu cầu: - Viết bảng địa chỉ vào/ra - Viết chương trình điều khiển Hướng dẫn: * Bảng địa chỉ vào/ra: Xác định ngõ vào/ra Ký hiệu Địa chỉ Chú thích S1 I0.0 Nâng, thường mở S2 I0.1 Hạ, thường mở S3 I0.2 Dừng, thường đĩng S4 I0.3 Giới hạn trên thường đĩng S5 I0.4 Giới hạn dưới thường đĩng K1 Q0.0 Gàu chạy lên K2 Q0.1 Gàu chạy xuống H0 Q0.2 Đèn báo nâng H1 Q0.3 Đèn báo hạ H2 Q0.4 Đèn báo dừng Chương trình(hs viết) BÀI 2: LẬP TRÌNH CÁC PHÉP TỐN SỐ CỦA PLC Mã mơ đun: MĐ CĐT21 - 2
  38. - 38 - Giới thiệu: Trong bài này sẽ trình bày và hướng dẫn cụ thể về các bước lập trình các lệnh chức năng truyền dẫn và các lênh về chức năng so sánh Mục tiêu: Sau khi học xong bài học này người học cĩ khả năng: + Kiến thức: - Phân tích được cấu trúc của các lệnh chức năng truyền dẫn và các lệnh chức năng so sánh + Kỹ năng: - Lâp trình được các lệnh chức năng truyền dẫn và các lệnh chức năng so sánh theo yêu cầu kỹ thuật. - Sửa được các lỗi thường gặp khi lập trình điều khiển. - Kiểm tra chính xác điều kiện hoạt động của thiết bị. + Năng lực tự chủ và trách nhiệm: - Rèn luyện tính tỷ mỉ, chính xác và an tồn vệ sinh cơng nghiệp. - Tự chịu trách nhiệm khi thực hiện các việc được giao. Nội dung: 1. Lập trình các lệnh chức năng truyền dẫn 1.1. Các lệnh chức năng truyền dẫn 1.1.1. Truyền Byte, Word, Doubleword. * Nhĩm chức năng tốn học: Các lệnh trong nhĩm chức năng tốn học cơ bản cĩ ký hiệu tương tự nhau và tác động lên thanh ghi trạng thái như nhau, cĩ ký hiệu như sau: EN l ng vo cho php lệnh tốn học hoạt động (Enable Input). Biểu diễn tốn hạng l dữ liệu dạng số nhị phn. Biểu diễn tốn hạng l địa chỉ dạng: I, Q, L, M, D. ENO l ng cho php ng ra hoạt động (Enable Output). Ng ra ENO cĩ cng trạng thi với ng vo EN. Loại tốn hạng l dữ liệu dạng số nhị phn. Loại tốn hạng l địa chỉ dạng: I, Q, L, M, D. IN1, IN2: Cĩ chức năng phụ thuộc vo từng loại lệnh. Gi trị tại ng vo để thực
  39. - 39 - hiện lệnh tốn học, cĩ tốn hạng l dữ liệu ty vo dạng chuyển đổi như số nguyn 16 bit, số nguyn kp 32 bit, số thực, tốn hạng l địa chỉ: I, Q, L, M, D hoặc l hằng số nếu l số nguyn. Khi EN=1 thì lệnh tốn học thực hiện v gi trị được đọc vo địa chỉ ng ra OUT. OUT: Ng ra l kết quả của lệnh tốn học. Cĩ tốn hạng l dữ liệu ty vo dạng chuyển đổi như số nguyn 16 bit, số nguyn kp 32 bit, số thực, tốn hạng l địa chỉ: I, Q, L, M, D. * Lệnh số nguyên 16 bit: - Ký hiệu: Hoạt động: Khi trạng thái ngõ vào EN=1 thì lệnh ADD-I hoạt động, giá trị IN1 và IN2 được cộng lại và kết quả gửi ra ngõ ra OUT. Nếu kết quả vượt quá giới hạn cho phép của số nguyên 16 bit thì bit OV và OS lên 1 và ENO=0, nên những chức năng khác mà được nối với ngõ ENO sẽ khơng hoạt động - Ví dụ: Khi ngõ vào I0.0=1 thì lệnh ADD-I hoạt động, kết quả của lệnh cộng MW0+MW2 được xuất ra ngõ MW10. Nếu kết quả nằm ngồi vùng hoạt động của số nguyên 16 bit thì Q4.0=1. - Lệnh trừ số số nguyên 16 bít + Ký hiệu: Hoạt động:
  40. - 40 - Khi trạng thái ngõ vào EN=1 thì lệnh SUB-I hoạt động, giá trị IN1 trừ giá trị IN2 và kết quả gửi ra ngõ ra OUT. Nếu kết quả vượt quá giới hạn cho phép của số nguyên 16 bit thì bit OV và OS lên 1 và ENO=0, nên những chức năng khác mà được nối với ngõ ENO sẽ khơng hoạt động. - Ký hiệu: Khi ngõ vào I0.0=1 thì lệnh SUB-I hoạt động, kết quả của lệnh trừ MW0-MW2 được xuất ra ngõ MW10. Nếu kết quả nằm ngồi vùng hoạt động của số nguyên 16 bit hoặc I0.0=0 thì Q4.0=1. * Lệnh nhân số nguyên 16 bit: - Ký hiệu: Hoạt động: Khi trạng thái ngõ vào EN=1 thì lệnh MUL-I hoạt động, giá trị IN1 và IN2 được nhân lại và kết quả gửi ra ngõ ra OUT. Nếu kết quả vượt quá giới hạn cho phép của số nguyên 16 bit thì bit OV và OS lên 1 và ENO=0, nên những chức năng khác mà được nối với ngõ ENO sẽ khơng hoạt động. - Ví dụ:
  41. - 41 - Khi ngõ vào I0.0=1 thì lệnh MUL-I hoạt động, kết quả của lệnh nhân MW0*MW2 được xuất ra ngõ MW10. Nếu kết quả nằm ngồi vùng hoạt động của số nguyên 16 bit thì Q4.0=1. * Lệnh chia số nguyên 16 bit - Ký hiệu: Hoạt động: Khi trạng thái ngõ vào EN=1 thì lệnh DIV-I hoạt động, giá trị IN1 được chia bởi giá trị IN2 và kết quả gửi ra ngõ ra OUT. Nếu kết quả vượt quá giới hạn cho phép của số nguyên 16 bit thì bit OV và OS lên 1 và ENO=0, nên những chức năng khác mà được nối với ngõ ENO sẽ khơng hoạt động. - Ví dụ: Khi ngõ vào I0.0=1 thì lệnh DIV-I hoạt động, kết quả của lệnh chiaMW0 bởi MW2 được xuất ra ngõ MW10. Nếu kết quả nằm ngồi vùng hoạt động của số nguyên 16 bit thì Q4.0=1. 1.1.2. Truyền một vùng nhớ dữ liệu. * Lệnh MOVE - Ký hiệu:
  42. - 42 - Các ngõ vào/ra EN, ENO, IN, OUT biểu diễn các tốn hạng là địa chỉ ngõ vào/ra như sau: I, Q, M, L, D. EN là ngõ vào cho phép lệnh MOVE hoạt động (Enable Input). Loại dữ liệu dạng BOOL. ENO là ngõ ra cho phép các lệnh sau lệnh MOVE mà cĩ nối với ngõ ENO hoạt động (Enable Output). Ngõ ENO cĩ cùng trạng thái với ngõ vào EN. Loại dữ liệu dạng BOOL. IN là ngõ vào biểu diễn địa chỉ nguồn (Source Address). Loại dữ liệu cĩ chiều dài 8, 16, 32 Bit. OUT là ngõ ra biểu diễn địa chỉ đích (Destination Address). Loại dữ liệu cĩ chiều dài 8, 16, 32 Bit. Hoạt động của lệnh MOVE: Ở dạng LAD/FBD thì khi ngõ vào EN được kích hoạt thì giá trị ngõ vào IN được sao chép tới địa chỉ tại ngõ ra OUT. Ngõ ENO cĩ cùng trạng thái với ngõ EN. Ở dạng STL thì lệnh nạp và truyền dữ liệu khơng phụ thuộc vào kết quả RLO. Dữ liệu đuợc trao đổi nhờ bộ tích luỹ (ACCU). Lệnh L (Load) ghi giá trị từ địa chỉ nguồn bên phải vào bộ tích lũy ACCU1, nội dung của ACCU1 được chuyển vào bộ tích luỹ ACCU2. Trường hợp giá trị chuyển vào bộ tích luỹ cĩ kích thước nhỏ hơn 16 Bit (Double Word) thì chúng sẽ ghi vào bộ tích luỹ theo thứ tự Byte thấp của Word thấp đến Byte cao của Word thấp đến Byte thấp của Word cao đến Byte cao của Word cao. Những Bit cịn trống trong ACCU được ghi vào giá trị 0. Lệnh T (Transfer) sao chép một phần hoặt tất cả nội dung của bộ tích lũy ACCU1 đến địa chỉ cụ thể. Lệnh T khơng ảnh hưởng đến bộ tích luỹ ACCU2. * Sơ lược về bộ tích luỹ (ACCU): - Bộ tích luỹ là bộ nhớ phụ trong CPU dùng để trao đổi dữ liệu giữa những địa chỉ khác nhau và các phép tốn so sánh, tốn học. S7-300 cĩ 2 bộ tích luỹ là ACCU1 và
  43. - 43 - ACCU2, mỗi bộ cĩ 32 Bit. - ACCU1 là thanh ghi quan trọng nhất trong CPU. Khi một lệnh nạp (Load) được thi hành thì giá trị nạp được ghi vào ACCU1. Khi lệnh truyền (transfer) được thi hành thì đọc giá trị trong ACCU1, kết quả của các phép tính số học, các lệnh thay thế (Shift) và quay (Rotate) cũng được ghi vào trong ACCU1. - ACCU2: Khi lệnh nạp được thi hành, những nội dung cũ của ACCU1 trước tiên di chuyển sang ACCU2 và ACCU1 được xố trước khi giá trị mới được chuyển vào ACCU1. ACCU2 cũng được sử dụng cho các lệnh so sánh, các phép tính số, số học, lệnh dịch - Ví dụ: Khi I0.0=1 thì lệnh MOVE được thực hiện. Khi đĩ giá trị chứa trong Word nhớ MW10 được sao chép đến Word của khối dữ liệu DB12. 1.1.3. Chức năng dịch chuyển. Hầu hết các lệnh dịch và lệnh xoay đều cĩ ký hiệu tương tự nhau. Các lệnh này tác động lện thanh ghi trạg thái như nhau. Ký hiệu chung là (dạng LAD): EN là ngõ vào cho phép lệnh dịch/xoay hoạt động (Enable Input). Biểu diễn tốn hạng là dữ liệu dạng số nhị phân. Biểu diễn tốn hạng là địa chỉ dạng: I, Q, L,M, D. ENO là ngõ cho phép ngõ ra hoạt động (Enable Output). Ngõ ra ENO cĩ cùng trạng thái với ngõ vào EN. Loại tốn hạng là dữ liệu dạng số nhị phân. Loại tốn hạng là địa chỉ dạng: I, Q, L, M, D.
  44. - 44 - IN: là ngõ vào của dữ liệu cần dịch/xoay. Biểu diễn tốn hạng là dữ liệu dạng số nguyên, số nguyên kép, Word, Word kép. Biểu diễn tốn hạng là địa chỉ dạng: I, Q,L, M, D. N: Biểu diễn số bit cần dịch/xoay. Biểu diễn tốn hạng là dữ liệu dạng Word. Biểu diễn tốn hạng là địa chỉ dạng: I, Q, L, M, D. O/OUT: Là kết quả của lệnh dịch/xoay. Biểu diễn tốn hạng là dữ liệu dạng số nguyên, số nguyên kép, Word, Word kép. Biểu diễn tốn hạng là địa chỉ dạng: I, Q,L, M, D. Khi thựchiện lệnh dịch/xoay thì giá trị cần dịch/xoay được đưa vào bộ tích luỹ ACCU1 và thực hiện lệnh dịch/xoay, sau đĩ giá trị được chuyển đến ngõ ra OUT. 1.1.4. Lệnh dịch phải số nguyên - Ký hiệu: IN: là ngõ vào của dữ liệu cần dịch. Biểu diễn tốn hạng là dữ liệu dạng số nguyên. Biểu diễn tốn hạng là địa chỉ dạng: I, Q, L, M, D. N: Biểu diễn số bit cần dịch. Biểu diễn tốn hạng là dữ liệu dạng Word. Biểu diễn tốn hạng là địa chỉ dạng: I, Q, L, M, D. Nếu N>=16 thì lệnh vẫn được thực hiện như là N=16. O/OUT: Là kết quả của lệnh dịch. Biểu diễn tốn hạng là dữ liệu dạng số nguyên. Biểu diễn tốn hạng là địa chỉ dạng: I, Q, L, M, D. Hoạt động: Lệnh SHR-I hoạt động khi ngõ vào EN=1. Lệnh SHR-I thực hiện dịch 16 bit sang bên phải, 16 bit cao cịn lại khơng sử dụng. Ngõ vào N đặt số bit cần dịch. Kết quả dịch được lưu trữ vào địa chỉ ngõ ra OUT. Khi lệnh thực hiện thì ngõ ra ENO cho biết trạng thái bit cuối cùng của số bit bị dịch. Các lệnh phụ thuộc vào ENO khác sẽ khơng thực hiện nếu trạng thái của bit cuối cùng của số bit bị dịch là 0.
  45. - 45 - Ví dụ: Lệnh SHR-I hoạt động khi ngõ vào I0.0=1. MW0 bị dịch phải bởi số bit đặt trước tại ngõ vào N (MW2), kết quả được ghi ra MW4. Q4.0 được đặt lên 1. 1.2. Trình tự thực hiện 1.2.1. Điều kiện thực hiện - Máy vi tính - Module PLC S7 300. - Giắc cắm, Cáp MPI kết nối máy tính và mơ đun PLC S7 – 300. - Phần mềm lập trình Step7-300 - Nguồn 220V cung cấp cho module PLC S7 – 300 1.2.2. Các bước thực hiện: Sai hỏng Nguyên nhân Cách khắc phục - Khai báo sai cấu hình phần cứng - Chọn sai loại CPU - Chọn đúng loại của PLC S7 – 300 trên phần mềm. - Chọn sai đầu vào, đầu CPU ra - Chọn đúng các đầu vào, đầu ra. - Khai báo sai các đầu vào/ra dữ - Ghi sai đầu vào, đầu - Ghi đúng đầu vào, liệu. ra dữ liệu trên phần đầu ra dữ liệu trên mềm phần mềm - Kết nối sai các đầu vào/ ra dữ liệu. - Kết nối sai dây giữa - Kết nối đúng dây PLC với thiết bị giữa PLC với thiết bị - Lập trình khơng đúng với yêu cầu - Chưa xác định đúng Xác định đúng yêu cơng nghệ đưa ra. yêu cầu cơng nghệ cầu cơng nghệ đưa ra - Khơng kết nối máy tính được với - Chọn sai loại cáp kết - Chọn đúng loại PLC nối cáp kết nối 1.3. Những lỗi thường gặp, cách khắc phục Sai hỏng Nguyên nhân Cách khắc phục - Khai báo sai cấu hình phần cứng - Chọn sai loại CPU - Chọn đúng loại của PLC S7 – 300 trên phần mềm. - Chọn sai đầu vào, đầu CPU ra - Chọn đúng các đầu vào, đầu ra. - Khai báo sai các đầu vào/ra dữ - Ghi sai đầu vào, đầu - Ghi đúng đầu vào, liệu. ra dữ liệu trên phần đầu ra dữ liệu trên mềm phần mềm
  46. - 46 - - Kết nối sai các đầu vào/ ra dữ liệu. - Kết nối sai dây giữa - Kết nối đúng dây PLC với thiết bị giữa PLC với thiết bị - Lập trình khơng đúng với yêu cầu - Chưa xác định đúng Xác định đúng yêu cơng nghệ đưa ra. yêu cầu cơng nghệ cầu cơng nghệ đưa ra - Khơng kết nối máy tính được với - Chọn sai loại cáp kết - Chọn đúng loại PLC nối cáp kết nối 1.4. Bài tập ứng dụng liên quan * Mạch điều khiển đèn giao thơng Một nút giao thơng ngã tư, gồm cĩ 4 trục đèn điều khiển phương tiện giao thơng và 4 cột đèn điều khiển người đi bộ. Ký hiệu các tiếp điểm như sau: Chương trình được viết trong đĩ các bit điều khiển đèn người đi bộ sẽ được điều khiển thơng qua các bit điều khiển phương tiện giao thơng, trong đĩ: - Đèn đỏ đi bộ 1: Q0.7 lấy bit đảo của Q0.6 - Đèn xanh đi bộ 1: Q0.6 lấy bit Q0.0 điều khiển - Đèn đỏ đi bộ 2: Q1.1 lấy bit đảo của Q1.0 - Đèn xanh đi bộ 2: Q1.0 lấy bit Q0.3 điều khiển Do đĩ, chúng ta khơng vẽ các bit điều khiển đèn người đi bộ trên giản đồ thời gian.
  47. - 47 - Giản đồ thời gian của một chu kỳ đèn giao thơng: * Hướng dẫn: - Chương trình:
  48. - 48 -
  49. - 49 - 2. Lập trình các lệnh chức năng so sánh 2.1. Các lệnh chức năng so sánh Các phép so sánh cĩ thể sử dụng là so sánh ==, , >=, IN2, IN1 >=IN2, IN1 IN2
  50. - 50 - Inputs/Outputs Operands Data Types IB, QB, MB, SMB, VB, SB, LB, AC, Constant, IN BYTE *VD, *LD, *AC OUT I, Q, M, SM, T, C, V, S, L, Power Flow BOOL 2.1.2. So sánh số nguyên Integer IN1=IN2, IN1 > IN2, IN1 >=IN2, IN1 IN2 So sánh số nguyên cần chú ý đến dấu ( 16#7FFF > 16#8000) Phạm ví so sánh từ – 32768 đến + 32767.
  51. - 51 - Inputs/Outputs Operands Data Types IW, QW, MW, SW, SMW, T, C, VW, LW, AIW, IN INT AC, Constant, *VD, *LD,*AC OUT I, Q, M, SM, T, C, V, S, L, Power Flow BOOL 2.1.3. So sánh số nguyên kép Doubleword IN1=IN2, IN1 > IN2, IN1 >=IN2, IN1 IN2 So sánh số nguyên cần chú ý đến dấu ( 16#7FFFFFF > 16#8000000) Phạm vi so sánh từ – 2.147.483.647 đến + 2.147.483.647. Inputs/Outputs Operands Data Types ID, QD, MD, SD, SMD, VD, LD, HC, AC, IN DINT Constant, *VD, *LD, *AC OUT I, Q, M, SM, T, C, V, S, L, Power Flow BOOL Bảng giới hạn vùng tốn hạng và dạng dữ liệu hợp lệ 2.1.4. So sánh số thực Dùng để so sánh 2 số thực : IN1 với IN2. Các phép so sánh cĩ thể sử dụng là: IN1=IN2, IN1 > IN2, IN1 >=IN2, IN1 IN2
  52. - 52 - Inputs/Outputs Operands Data Types ID, QD, MD, SD, SMD, VD, LD, AC, Constant, IN REAL *VD, *LD, *AC OUT I, Q, M, SM, T, C, V, S, L, Power Flow BOOL 2.2. Trình tự thực hiện: 2.2.1. Điều kiện thực hiện - Máy vi tính - Module PLC S7 300. - Giắc cắm, Cáp MPI kết nối máy tính và mơ đun PLC S7 – 300. - Phần mềm lập trình Step7-300 - Nguồn 220V cung cấp cho module PLC S7 – 300 2.2.2. Các bước thực hiện: Sai hỏng Nguyên nhân Cách khắc phục - Khai báo sai cấu hình phần cứng - Chọn sai loại CPU - Chọn đúng loại của PLC S7 – 300 trên phần mềm. - Chọn sai đầu vào, đầu CPU ra - Chọn đúng các đầu vào, đầu ra. - Khai báo sai các đầu vào/ra dữ - Ghi sai đầu vào, đầu - Ghi đúng đầu vào, liệu. ra dữ liệu trên phần đầu ra dữ liệu trên mềm phần mềm - Kết nối sai các đầu vào/ ra dữ liệu. - Kết nối sai dây giữa - Kết nối đúng dây PLC với thiết bị giữa PLC với thiết bị - Lập trình khơng đúng với yêu cầu - Chưa xác định đúng Xác định đúng yêu cơng nghệ đưa ra. yêu cầu cơng nghệ cầu cơng nghệ đưa
  53. - 53 - ra - Khơng kết nối máy tính được với - Chọn sai loại cáp kết - Chọn đúng loại PLC nối cáp kết nối 2.3. Những lỗi thường gặp, cách khắc phục Sai hỏng Nguyên nhân Cách khắc phục - Khai báo sai cấu hình phần cứng - Chọn sai loại CPU - Chọn đúng loại của PLC S7 – 300 trên phần mềm. - Chọn sai đầu vào, đầu CPU ra - Chọn đúng các đầu vào, đầu ra. - Khai báo sai các đầu vào/ra dữ - Ghi sai đầu vào, đầu - Ghi đúng đầu vào, liệu. ra dữ liệu trên phần đầu ra dữ liệu trên mềm phần mềm - Kết nối sai các đầu vào/ ra dữ liệu. - Kết nối sai dây giữa - Kết nối đúng dây PLC với thiết bị giữa PLC với thiết bị - Lập trình khơng đúng với yêu cầu - Chưa xác định đúng Xác định đúng yêu cơng nghệ đưa ra. yêu cầu cơng nghệ cầu cơng nghệ đưa ra - Khơng kết nối máy tính được với - Chọn sai loại cáp kết - Chọn đúng loại PLC nối cáp kết nối 2.4. Bài tập ứng dụng liên quan * Viết chương trình mạch điều khiển trộn sơn Quá trình làm việc: 1. Ấn Start (I0.0, I0.2): Q0.0, Q0.1 làm việc để đổ hai loại sơn vào bình trộn. 2. Khi I0.4 (mức cao) tác động thì dừng Q0.0, Q0.1 và chạy động cơ khuấy Q0.2 trong 10 giây. 3. Dừng Q0.2, Mở Q0.4, Q0.5 để đưa sản phẩm ra khỏi bình trộn.
  54. - 54 - 4. Đếm số lần sản xuất theo bình liệu trộn được. Đến 12 bình thì dừng sản xuất. Hệ thống trở về trạng thái chờ làm việc. * Yêu cầu: - Viết bảng địa chỉ vào/ra - Viết chương trình điều khiển * Hướng dẫn: - Bảng địa chỉ vào/ra: - Q0.0: Bơm cấp liệu màu sơn thứ nhất - Q0.1: Bơm cấp liệu màu sơn thứ 2 - Q0.2: Động cơ khuấy để trộn đều - I0.4: Cơng tắc hành trình báo mức cao - I0.5: Cơng tắc hành trình báo mức thấp - Q0.4: Van điện mở vịi chảy sơn đã trộn - Q0.5: Bơm xả sơn đã trộn - I0.0: Cho bơm Q0.0 làm việc - I0.2: Dừng bơm Q0.0 - I0.1: Cho bơm Q0.2 làm việc - I0.3: Dừng bơm Q0.1 - I0.6: Để ngắt tức thời khi đang xả liệu - I0.7: Để reset counter đếm số bình trộn được - Chương trình”
  55. - 55 -