Giáo trình Điện tử công nghiệp

Bước thứ hai là phải xác định vị trí kết nối giữa các thiết bị vào/ra với PLC. Thiết bị vào có thể là tiếp điểm, cảm biến, công tắc hành trình, nút nhấn, Thiết bị ra có thể là Rơle điện từ, motor, đèn, contactor, Mỗi vị trí kết nối được đánh số tương tự ứng với PLC sử dụng. 3. Soạn thảo chương trình: Chương trình điều khiển được soạn thảo dưới dạng lưu đồ hình thang như đã trình bày ở bước 1. 4. Nạp chương trình vào bộ nhớ: Cấp nguồn cho PLC, cài đặt cấu hình khối giao tiếp I/O nếu cần (Phụ thuộc vao từng loại PLC). Sau đó nạp chương trình soạn thảo trên màn hình vào bộ nhớ của PLC. Sau khi hoàn tất nên kiểm tra lỗi bằng chức năng tự chuẩn đoán và nếu có thể thì chạy chương trình mô phỏng hoạt động của hệ thống (Ví dụ chương trình S7-SIM, S7- VISU,.).

doc107 trang | Chia sẻ: huyhoang44 | Lượt xem: 662 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Giáo trình Điện tử công nghiệp, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
bản quyền, nhưng nó vẫn là một đĩa đặc biệt có chỗ chứa bản quyền. Bản quyền khi sao chép sang ổ đĩa cứng sẽ nằm trong thư mục Ax nf zz. Nếu thư mục này bị hỏng, ta sẽ mất bản quyền. Bởi vậy mỗi khi muốn cài đặt lại hệ thống hay dọn dẹp lại ổ đĩa cứng thì trước đó ta phải thực hiện rút bản quyền khỏi ổ đĩa C: và chuyển ngược về ổ đĩa mềm Author cũng bằng chương trình AuthorsW.EXE. 4.2.4. Khai báo thiết bị dốt EPROM: Chương trình step7 có khả năng đốt chương trình ứng dụng lên thẻ EPROM cho PLC. Nếu máy tính PC của ta có thiết bị đốt EPROM thì cần phải thông báo cho Step7 biết khi trên màn hình xuất hiện cửa sổ: Hình 4-3: Khai báo thiết bị đốt EPROM 4.2.5. Chọn giao diện cho PLC: Chương trình Step7 được cài đặt trên PC (máy tính cá nhân) hoặc PG (lập trình bằng tay) để hỗ trợ việc sọan thảo cấu hình cứng cũng như chương trình cho PLC, tức là sau đó toàn bộ những gì đã sọan thảo sẽ được dịch sang PLC. Không những thế, Step7 còn có khả năng quan sát việc thực hiện chương trình của PLC. Muốn như vậy ta cần phải có bộ giao diện ghép nối giữa PC với PLC để truyền thông tin, dữ liệu. Step7 có thể ghép nối với PLC bằng nhiều bộ phương thức ghép nối khác nhau như qua Card MPI, qua bộ chyển đổi PC/PPI, qua thẻ PROFIBUS (CP) nhưng chúng phải được khai báo sử dụng. Ngay sau khi Step7 được cài đặt xong, trên màn hình xuất hiện cửa sổ thông báo cho ta chọn các bộ giao diện sẽ được sử dụng. Cửa sổ này có dạng sau (hình vẽ 4-4): Muốn chọn bộ giao diện nào, ta đánh dấu bộ giao diện đó ở phía trái rồi ấn phím Install.... Những bộ giao diện đó được chọn sẽ được ghi vào ô bên phải. Sau khi chọn xong các bộ giao diện sử dụng, ta còn phải đặt tham số làm việc cho những bộ giao diện đó bao gồm tốc độ truyền , cổng ghép nối với máy tính. Chẳng hạn khi đã chọn bộ giao diện MPI -ISA Card ta phải đặt tham số làm việc cho nó thông qua cửa sổ màn hình. Hình4-4: Khai báo dạng kết nối PC với CPU 4.3. Đặt tham số làm việc: Sau khi cài đặt xong Step7, trên màn hình (Destop) sẽ xuất hiện biểu tượng icon của nó. Đồng thời trong Menu của Window cũng có thư mục Simatic với tất cả các tên của những thành phần liên quan, từ các phần mềm trợ giúp đến các phần mềm cài đặt cấu hình, chế độ làm việc của Step7. Khi vừa được cài đặt, step7 có cấu hình mặc định về chế độ làm việc của Simatic, chẳn hạn cú pháp các lệnh lại được viết theo tiếng Đức ví dụ như AND thì viết thành UND, muốn chuyển thành dạng thông dụng quốc tế ta phải cài đặt lại cấu hình cho Step7. Tất nhiên, bên cạnh việc chọn ngôn ngữ cho cú pháp lệnh ta còn có thể sửa đổi nhiều chức năng khác của Step 7 như nơi sẽ chứa chương trình trên đĩa cứng, những thanh ghi sẽ được hiển thị nội dung khi gỡ rối chương trình, song các việc đó không ảnh hưởng quyết định tới việc sử dụng Step7 theo thói quen của ta như ngôn ngữ cú pháp lệnh. 4.4. Sọan thảo một Project: Khái niệm Project không đơn thuần chỉ là chương trình ứng dụng mà rộng hơn bao gồm tất cả những gì liên quan đến việc thiết kế phần mềm ứng dụng để điều khiển, giám sát một hay nhiều trạm PLC. Theo khái niệm như vậy, trong một Project sẽ có: 1. Bảng cấu hình cứng về tất cả các module của từng trạm PLC. Bảng tham số xác định chề độ làm việc cho từng module của mỗi trạm PLC. Các Logic block chứa chuơng trình ứng dụng của từng trạm PLC. Cấu hình ghép nối và truyền thông giữa cac trạm PLC. Các cửa sổ giao diện phục vụ việc giám sát toàn bộ mạng hoặc giám sát từng trạm PLC của mạng. 4.4.1. Khai báo và mở một Project mới: Để khai báo một Project, từ màn hình chính của Step 7 ta chọn File-> New hoặc kích chuột tại biểu tuợng "New Project/ Library". Khai báo một Project mới Mở một Project đó có Hình 4-5: Mở một Project mới Khi đó trên màn hình sẽ xuất hiện hộp thọai như hình 4-6. Gõ tên Project rồi ấn phím OK và như vậy ta đã khai báo xong một Project mới. Ngoài ra ta còn có thể chọn nơi Project sẽ được cất lên đĩa. Mặc định, nơi cất sẽ là thư mục đã được quy định khi cài đặt Step 7, ở đây là thư mục F:\S7_ projects. Hình 4-6: Đặt tên cho một Project mới Trong trường hợp muốn mở một Project đã có, ta chọn File -> Open hoặc kích chuột tại biểu tượng"Open Project/ Library" từ cửa sổ chính của Step7 rồi chọn tên Project muốn mở từ hộp hội thọai có dạng như hình 4-7. Cuối cùng ấn phím OK để kết thúc. Hình 4-7: Mở một Project đã có. Tên của một Project đọ cú s1/2n 4.4.2. Xây dựng cấu hình cứng cho trạm PLC: Phần mềm simatic S7 300 Sau khi mở một Project mới ta sẽ có màn hình như hình vẽ với một khối quản lý Project (quản lý dạng cây) và một khối các đơn vị bên trong. Hình 1 Tạo Project mới: Để tạo một Project mới một cách tuần tự: File à New. Khi đó xuất hiện một cửa sổ cho phép ta: đặt tên cho Project mới, chọn thư mục để lưu Project. Sau đó nhấn OK Hình 2 - Để thêm vào các thành phần của bộ PLC hoàn chỉnh ta nhấn phải chuột vào tên của Project : Tan_PhatàInsert New Objectà SIMATIC 300 Station Hoặc thực hiện từ Menu chính: InsertàStationàSIMATIC 300 Station Hình 3 Chọn các thiết bị phần cứng cho PLC bằng cách nháy chuột vào biểu tượng Hardware Hình 4 Trong cửa sổ cài đặt phần cứng trước tiên ta phải tạo ra một Rack để gá các Module của PLC lên bằng cách chọn SIMATIC 300à RACK 300àRail khi đó ta sẽ có một bảng để nhập các thiết bị phần cứng của PLC, để nhập các thiết bị phần cứng của PLC vào các Rack ta phải nhập đúng vị trí của chúng: + Rack 1: sử dụng cho Module nguồn của PLC, để chọn Module nguồn ta thực hiện: SIMATIC 300à PS-300 trong đó ta chọn Module nguồn mà ta có trong thực tế Hình 5 + Rack 2: Sử dụng để chứa CPU, để lấy ra Module CPU thích hợp: SIMATIC 300à CPU-300 trong đó ta sẽ có rất nhiều loại CPU để lựa chọn cho phù hợp + Các Module vào ra mở rộng ta có thể đưa chúng vào các Rack từ 4 đến 11. Để chọn các Module mở rộng thích hợp: SIMATIC 300àSM-300. Trong đó ta có thể chọn các Module mở rộng rạng AI, AO,AI/AO, DI, DO,DI/DO. Bản thân bên trong các khối Module mở rộng cũng bao gồm rấ nhiều các Module nhỏ để ta lựa chọn. Hình 6 Sau khi chọn xong các Module cần thiết ta sẽ có một bảng bao gồm các Module: Hình 7 Địa chỉ của các Module sẽ được hiển thị ở bảng : (các địa chỉ này có là do hệ thống tự đặt, ta hoàn toàn có thể đặt lại theo ý mình) Hình 8 Ghi lại (Save) cấu hình phần cứng vừa thiết lập. Sau đó ta sẽ có một Project để lập trình Hình 9 Thực hiện viết chương trình: Sau khi thiết lập xong một Project chương trình sẽ tự tạo ra cho ta khối OB1 là khối chương trình chính. Để tạo ra các khối chương trình khác ta thực hiện: từ Menu chọn Insertà S7 Block hoặc nhấp chuột phải vào Blockà Insert New Object (hình 9) Hình 10 Hình 11 Thực hiện lập trình trong từng khối. Đặt tên hình thức (khi lập trình các tên hình thức này sẽ có tác dụng gợi nhớ về ý nghĩa của biến đó) cho các địa chỉ trong PLC: chọn S7 ProgramàSymbols Hình 12 Hình 13 Download chương trình. Để Download chương trình trước tiên ta phải thiết lập truyền thông hệ thống Chọn Optionsà PC/PG Interface Hình 14 Hình 15 Chọn PC Adapter(MPI) rồi chọn Properties Hình 16 Sau khi thiết lập truyền thông ta có thể tiến hia2nh Download : chọn PLCà Download hoặc nhấn vào biểu tượng Download trên thanh công cụ. Hình 17 4.4.3. Đặt tham số quy định chế độ làm việc cho modul: Với bảng cấu hình cứng phần mềm Step7 cũng xác định luôn cho ta địa chỉ từng module. Chẳng hạn Step7 có hỗ trợ việc tích cực ngắt theo thời điểm cho module CPU để module này phát một tín hiệu ngắt gọi khối OB10 một lần vào đúng ngày 16/02/2003 lúc 10 giờ 30. Để làm được điều này ta nháy đúp chuột tại tên của module CPU ở vị trí 2 rồi chọn ô Time-Of-Day Interrupt, trên màn hình sẽ xuất hiện hộp hội thoại như hình 4-12. Điền thời điểm, tần suất phát tín hiệu ngắt rồi đánh dấu tích cực chế độ ngắt vào các ô tương ứng trong hộp hội thoại. Cuối cùng ấn phím OK. Hình 4-12: Đặt tham số cho Modul CPU Cũng trong hộp hội thoại ta thấy module CPU3 14 chỉ cho phép sử dụng OB10 trong số các module OB10 - OB17 với mức ưu tiên là để chứa chương trình xử lý tín hiệu ngắt theo thời điểm. Các chế độ làm việc khác của module CPU cũng được quy định nhờ Step7. Ví dụ để sửa đổi thời gian vòng quét cực đại cho phép từ giá trị mặc định 150ms thành 100 ms, ta chọn Cycle/Clock memory trong hộp hội thoại rồi sửa nội dung ô Scan time thành 100. Hoàn toàn tương tự ta cũng có thể sử dụng Step7 để quy định chế độ làm việc cho các module mở rộng khác, như xác định chế độ làm việc với dạng tín hiệu điện áp, với dải ± 5V cho module AI: Hình 4-13: Đặt chế độ cho Modul Analog 4.4.4. Sọan thảo chương trình cho các khối logic: Sau khi khai báo cấu hình cứng cho một trạm PLC và quay trở về cửa sổ chính của Step7 ta thấy trong thư mục Simatic 300(1) bây giờ có thêm các thư mục con và tất nhiên ta có thể đổi tên các thư mục đó. Tất cả các khối Logic (OB, FC, FB, DB) chứa chương trình ứng dụng sẽ nằm trong thư mục Block. Mặc định trong thư mục này đã có sẳn khối OB1. 1. Sọan thảo chương trình cho khối OB1: Ta nháy chuột tại biểu tượng OB1 bên nửa cửa sổ bên phải. Trên màn hình sẽ xuất hiện cửa sổ của chế độ sọan thảo chương trình như hình 4-14. Chức năng chương trình sọan thảo của Step7 về cơ bản cũng giống như các chương trình soạn thảo khác, tức là cũng có các phím nóng để gõ nhanh, có chế độ cắt và dán, có chế độ kiểm tra lỗi cú pháp lệnh. Phần Local block của khối OB1 Phần chú thích của Chương trình Phần soạn thảo Ch ơng trình Hình 4-14: Soạn thảo chương trình trong OB1 Để khai báo và soạn thảo chương trình cho các khối OB khác hoặc cho các khối FC, FB hoặc DB, ta có thể tạo một khối mới ngay trực tiếp từ chương trình soạn thảo bằng cách kích chuột phải vào phần trống như hình vẽ sau: Hình 4-15: Mở một khối logic khác. Hoặc cũng có thể chèn thêm khối mới đó trước từ cửa sổ chính của Step7 bằng phím Insert -> S7 Block rồi sau đó mới vào soạn thảo chương trình cho khối mới được chèn thêm như đã làm với OB1. Trong màn hình soạn thảo chương trình cho các khối Logic, ta có thể thay đổi không riêng phần chương trình mà cả phần local block của khối đó bao gồm tên hình thức, kiểu dữ liệu, giá trị ban đầu, Chú ý rằng không được thay đổi 20 bytes đầu trong local block của các khối OB. Các bước soạn thảo một khối logic cho chương trình ứng dụng được tóm tắt như sau: - Tạo khối logic hoặc từ cửa sổ màn hình chính của Step7 bằng cách chọn Einfuegen (Insert) trên thanh công cụ rồi vào S7 Block dể chọn lại khối logic mong muốn ( OB, FB, FC ) hoặc vào chương trình soạn thảo rồi từ đó kích biểu tượng New. - Thiết kế local block cho khối logic vừa tạo. Với tất cả các khối để hoàn thành công việc thiết kế Local Block ta cần phải chú ý việc khai báo theo bảng sau: Loại biến ý nghĩa chức năng Khối thực hiện IN Nhận các tín hiệu từ đầu vào đọc FB, FC OUT Xuất các tín hiệu ra xuất FB, FC IN_OUT Nhận và gửi các tín hiệu đọc, xuất FB, FC STAT Nội dung của biến hình thức, có khả năng lưu giữ lại khi kết thúc chương trình trong FB đọc, xuất FB TEMP Biến tạm thời, nội dung sẽ bị mất đi khi kết thúc chương trình trong FB, FC hoặc OB đọc , xuất FB, FC, OB - Soạn thảo chương trình: chương trình có thể được soan thảo theo rất nhiều ngôn ngữ khác nhau ví dụ: FBD, LAD, STL.... xem trong mục 2.2. 2. Soạn thảo một chương trình trong khối logic FC1: Ta thực hiện các bước như sau: a/ Tạo khối: Hình 4-16: Tạo một khối logic mới Sau khi chọn thư mục như hình vẽ trên trên màn hình sẽ hiện ra một cửa sổ sau: Hình 4-17: Đặt tên và chọn chế độ làm việc cho khối logic mới. Trong hộp hội thoại cho phép ta chọn tên của FC ví dụ FC2. Trong thực tế Step7 luôn mặc định thứ tự của các FC và ta chỉ cần OK nếu ta chấp nhận tên như đã mặc định, ngoài ra ta còn có thể chọn chế độ viết chương trình trong khối hàm FC2 dưới dạng FBD, LAD hay STL. Cuối cùng ta nhấn nút OK. Trên màn hình sẽ xuất hiện cửa sổ chính của Step7 nhu sau: Hình 4-18: Gọi màn hình soạn thảo. Để soạn thảo chương trình trong FC2 ta chỉ cần nhấy đúp chuột trái vào biểu tượng của FC2 và lập tức sẽ hiện ra cửa sổ soạn thảo chương trình cho FC2: b/ Xây dựng Local block: Trong cửa sổ màn hình soạn thảo ta xây dựng local block cho khối FC2 như sau: Hình 4-20: Nhập dữ liệu vào khối Lokal block của khối FC c/ Soạn thảo chương trình: Toàn bộ chương trình có thể viết trong khối logic FC2 như− sau: Hình 4-21: Soạn thảo chương trình trong khối logic FC1. 3. Soạn thảo chương trình cho khối FB. a/Tạo khối FB: Ta có thể tạo khối FB bằng cách từ cửa sổ màn hình chính của Step7 ta dùng chuột phải và chọn các đối tượng như hình sau: Hình 4-22: Tạo khối FB Sau khi chọn thư mục Funktionsblock trên màn hình xuất hiện một cửa sổ: Trong cửa sổ đó ta cần phải đặt tên cho khối FB mà ta mới chọn ví dụ FB1 (thông thường S7 tự gán cho một tên theo thứ tự mà nguời lập trình đó chọn khi đó nếu đồng ý ta chỉ cần nhấn nút OK). Ngoài ra ta còn có thể đặt tên cho khối FB; ví dụ: test_1, chọn cách viết chương trình AWL, KOP, FUP hay S7- GRAPH, Sau khi đó điền đủ các thông tin vào cửa sổ màn hình ta nhấn nút OK. Muốn soạn thảo chương trình trong khối FB ta chỉ cần nhấn đúp chuột trái vào biểu tượng FB trên màn hình chính. Sau khi thực hiện xong bước này ta sẽ có cửa sổ soạn thảo chương trình cho khối FB1 và công việc tiếp theo cũng được thực hiện giống như ta đó thực hiện đối với khối FC ở trên, đó là các bước như xây dựng Local block, soạn thảo chương trình. Hình 4-23: Chọn ngôn ngữ viết chương trìnhtrong khối FB1 b/Thủ tục gọi khối FB: Vì khối FB bao giờ cũng làm việc với khối dữ liệu DB dùng để lưu giữ nội dung các biến kiểu STAT của Local block. Vì vậy để thực hiện việc gọi khối FB ta phải đặt tên cho khối dữ liệu DB tương ứng. Lệnh gọi khối hàm FB như sau: Hình 4-24:Gọi khối FB1 Tuỳ theo nhu cầu sử dụng mà ta sử dụng một , hai hay nhiều khối DB ta phải đặt tên cho khối DB mà ta vừa chọn ví dụ DB1, DB2,... Sau khi đó chọn xong bước trên ta có thể soạn thảo chương trình cho khối DB1 và DB2 như sau: Hình 4-25:Màn hình soạn thảo trong khối FBs. 4.4.5. Sử dụng biến hình thức: Step7 cung cấp một khả năng sử dụng tên hình thức trong lập trình thay vì các ký hiệu địa chỉ , chữ s6 kh6i FB, FC,. . .khó nhớ. Các tên hình thức được thay bởi một địa chỉ hay một tên khối tuỳ ý theo nguời lập trình tự đặt. Để làm đuợc điều này, người lập trình cần phải khai báo trước trong một bảng có tên là Symbols. Kích chuột vào thư mục mẹ của Block, ở đây là thư mục với tên mặc định là S7 Program(1), sau đó nháy phím chuột trái tại biểu tượng Symbole như hình vẽ ta sẽ có màn hình soạn thảo bằng các tên hình thức sau: Hình4-26: Sử dụng biến hình thức. Hình 4-27: Ghi các ký hiệu biến hình thức vào bảng Symbol. Sau khi điền đày đủ tên hình thức, địa chỉ ô nhớ mà nó thay thế ( hầu hết kiểu dữ liệu đều được S7 tự xác định căn cứ vào địa chỉ ô nhớ) và cất vào Project, ta sẽ quay trở lại màn hình chính của S7. Mở một khối chương trình, ví dụ OB1 và chọn biểu tượng dùng biến hình thức ta sẽ chuyển sang dạng soạn thảo với những biến hình thức như đã đặt sẳn trong bảng Symbole. ví dụ : Hình 4-28: Màn hình soạn thảo với các tên biến hình thức. Muốn quay trở về để sử dụng lại các ký hiệu địa chỉ tuyệt đối ta nhấn lại nút Đã chọn ban đầu là biểu tượng này nằm trên thanh công cụ . 4.5. Nạp chương trình và giám sát viêc thực hiện chương trình. 4.5.1. Nạp chương trình soan thảo từ PC xuống CPU: Chương trình sau khi đó soạn thảo cần được truyền xuống CPU. Để làm được điều này, ta nhấn chuột trái vào biểu tuợng này trên thanh công cụ và trả lời đầy đủ các câu hỏi. Chú ý khi nạp chương trình cần phải đặt CPU ở trạng thái Stop hoặc đặt CPU ở trạng thái RUN-P. 4.5.2. Xoá chương trình đã có trong CPU: Để thực hiện việc nạp chương trình mới từ PC xuống CPU ta cần thực hiện công việc xoá chương trình đã có sẳn trong CPU. Điều này ta thực hiện các bước như sau: - Đưa trạng thái của CPU về STOP : Từ màn hình chính của Step7 ta chọn lệnh: Hình 4-29 4.5.3.Quan sát việc thực hiên chương trình: Sau khi đã nạp chương trình soạn thảo xuống CPU lúc này chương trình đã được ghi vào bộ nhớ của CPU. Khi đó ta có thể tách rời PC và CPU của S7 mà chương trình vẫn hoạt động bình thuờng. Để thực hiện việc quan sát quá trình hoạt động của chương trình và CPU ta sử dụng chức năng giám sát chương trình bằng cách nhấn vào biểu tuợng này trên thanh công cụ. Sau khi chọn chức năng giám sát chương trình này thì trên màn hình sẽ xuất hiện một cửa sổ sau: Tuỳ theo kiểu viết chương trình mà ta nhận được sự khác nhau về kiểu hiển thị trên màn hình (Dưới đây sử dụng kiểu viết chương trình FBD). Hình 4-30: Quan sát quá trình hoạt động. Ngoài ra ta còn có thể quan sát được nội dung của ô nhớ. Những ô nhớ muốn quan sát cần phải khai báo trong bảng Variable. Hình 4-31: Quan sát nội dung của ô nhớ. Sau khi khai báo tất cả các biến cần quan sát ta kích vào phím quan sát trên màn hình xuất hiện cửa sổ như hình trên. Tuỳ theo yêu cầu mà ta kích vào phím quan sát tương ứng trên màn hình sẽ hiển thị nội dung của ô nhớ tại thời điểm hiện tại hay liên tục quan sát theo từng thời điểm. Phần mềm Simulation: Siemens cung cấp phần mềm Simulation cho phép người sử dụng mô phỏng các thuật toán của mình mà không cần có PLC. Đây thực sự là một công cụ hữu ích cho những người lập trình PLC, không những thể Simulation còn cho phép ta kết nối với WinCC. Phần mềm mô phỏng Simulation Sau khi cài đặt xong phần mềm mô phỏng Simulation ta sẽ thấy biểu tượng của phần mềm được sáng lên trên thanh công cụ của màn hỡnh chính S7 300. Để sử dụng mô phỏng ta có thể nhấp chuột vào biểu tượng này hoặc từ menu chính chọn OptionàSimulate Modules, khi đó màn hình của Simulation sẽ hiện ra: Hình 26 Để hiển thị các đầu vào, đầu ra, Timer, Counter ta nhấn chuột trực tiếp lên biểu tượng của chúng trên thanh công cụ, hoặc chọn từ menu chính: Insertà chọn vùng nhớ cần hiển thị. Sau khi chọn xong các cửa sổ của các vùng nhớ cần thiết, nếu muốn thay đổi vùng nhớ ta chỉ cần đánh địa chỉ của vùng nhớ đó vào các cửa sổ tương ứng. Cụ thể: + Nếu muốn sử dụng Timer hay Counter số bao nhiêu ta chỉ cần thay đổi chỉ số của Timer (x nằm trong khoảng 0 đến 255). + Để thay đổi đầu vào ra số ta cũng chỉ phải thay đổi địa chỉ của các Byte đầu vào ra. + Nếu sử dụng các đầu vào ra tương tự ta cần phải thay đổi cả phần chữ của địa chỉ. Ví dụ ta cần mô phỏng đầu vào tương tự tại cổng PIW10 thì ta phải đánh toàn bộ PIW10 tại đầu ra (hình 23). Hình 27 Hình 28 - Điều khiển hoạt động của chương trình mô phỏng: Ta có thể sử dụng trực tiếp nhờ bảng hoặc từ Menu chính chọn: Executeà Key Swith Positon rồi chọn chế độ cần thiết + Trên bảng điều khiển ta có thể điều khiển được các chế độ của PLC nhứ trong thực tế. + Các chế độ: Stop, Run, Run-P (chế độ cho phép vừa chạy vừa thay đổi chương trình và thông số của chương trình). Các chế độ hoạt động và lỗi đều được hiển thị bằng đèn ở bên cạnh. + Để xoá và khởi động lại hệ thống ta nhấn MRES. Hình 29 Trong chế độ hoạt động (RUN) ta có thể cho chương trình hoạt động ở chế độ quét từng vòng hoặc liên tục: Executeà Scan Mode. Thực hiện mô phỏng Sau khi viết xong các chương trình trong các khối ta tiến hành mô phỏng. Bật chương trình Simulation. Download chương trình từ S7 300 sang Simulation: từ màn hình chính của S7 ta chọn Block sau đó nhân Download để download toàn bộ các khối chương trình trong S7. Thực hiện mô phỏng nhờ Simulation. + Để thực hiện mô phỏng các đẩu vào ra số ta chỉ cần tích vào vị trí của các bit tương ứng. + Để mô phỏng đầu vào ra tương tự ta đánh toàn bộ địa chỉ của đầu vào ra đó vào bảng rồi tiến hành mô phỏng bằng cách điền giá trị của cổng vào bảng. Phụ lục: Đặt các thông số cho CPU Mở cửa sổ lưu các thông tin về cấu hình phần cứng của PLC rồi nháy đúp chuột vào Rack chứa CPU, khi đó sẽ xuất hiện cửa sổ cho phép ta đặt cấu hình cho máy: Hình 30 Từ những tab của cửa sổ này ta có thể thiết lập các cấu hình khác nhau cho CPU Thiết lập thời gian ngắt cho khối OB 35 Mở cửa sổ thuộc tính của CPUàCyclic Interrupt (hình 26 ): ở đây ta có thể thay đổi được chu kỳ gọi khối OB 35 bằng cách nhập giá trị tương ứng cho khối (đơn vị của chu kỳ là ms). Hình 31 Thiết lập cho ngõ vào ra số Ngắt cứng đầu vào của PLC chỉ có đối với các ngõ vào onboard Trong cửa sổ phần cứng của PLC chọn cổng vào ra onboard (nháy đúp chuột vào rack này) ta sẽ có cửa sổ thuộc tính của module này: General: ta có thể đổi tên và đặt giải thích cho Module Address: Đặt địa chỉ cho các Module vào ra Onboard, hệ thống đã tự động đặt địa chỉ cho Module này, nếu ta muốn đổi địa chỉ của Module ta bỏ lựa chọn “Systerm Selection” rồi chọn địa chỉ bất kỳ mà ta muốn. Có thể đặt địa chỉ cho cả đầu vào và đầu ra. Input: Cho phép ta cài đặt chế độ ngắt ngoài cho Module: xảy ra ngắt khi gặp sườn lên hay sườn xuống của tín hiệu đầu vào, đặt thời gian trễ khi xảy ra ngắt, khoảng thời gian trễ này sẽ có một số giá trị đặc biệt cho ta lựa chọn (0.1ms, 0.5ms, 3ms, 15ms). Hình 32 Thiết lập cho ngõ vào ra tương tự Tương tự như ngõ vào ra số, trước tiên ta thực hiện mở cửa sổ thuộc tính của ngõ vào ra tương tự: ta cũng có thể thay đổi địa chỉ của Moule. Ngoài ra đối với Module tương tự ta có thể đặt giải điện áp đầu vào ra hoặc là 0 ¸10V hoặc là ±10V hoặc giải dòng điện vào (±20mA, 0¸20mA, 4¸20mA) : chọn Tab InputàMeasuring Arange. Để chọn dạng tín hiệu vào: InputàMesurment types ở đây ta có thể chọn dạng tín hiệu cho ngõ vào tương tự là dòng, áp hoặc không có ngõ vào này hoạt động. Tương tự với ngõ ra ta cũng có thể chọn dải đo tương ứng với dạng tín hiệu ra (dòng, áp hoặc cấm không cho hoạt động) Hình 33 BÀI 5: TẬP LỆNH PLC S7-300 Mục tiêu: - Trình bày các hàm logic tiếp điểm theo nội dung đã học. - Kiểm tra nối dây bằng phần mềm chính xác theo nội dung đă học. - Thực hiện cài đặt phần mềm đạt các yêu cầu kỹ thuật. 5.1. Nhóm hàm Logic tiếp diểm: 1/ Hàm AND : Toán hạng là kiểu dữ liệu BOOL hay địa chỉ bit I,Q, M, T, C, D, L FBD LAD STL Hình 5-1: Cách khai báo hàm AND 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 2/ Hàm OR : Toán hạng là kiểu dữ liệu BOOL hay địa chỉ bit I,Q, M, T, C, D, L. FBD LAD STL Hình 5-2: Khai báo hàm OR 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 3/ Hàm NOT: FBD LAD STL Hình 5-3: Khai báo hàm thực hiện chức năng phủ định. Tín hiệu ra sẽ là nghịch đảo của tín hiệu vào. Dữ liêu vào và ra: Vào : I0.0 : BOOL Ra : Q4.0 : BOOL 4/ Hàm XOR: Toán hạng là kiểu dữ liệu BOOL hay địa chỉ bit I, Q, M, T, C, D, L. FBD LAD STL Hình 5-4: Khối thực hiên chức năng XOR. 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 5/ Lệnh xoá RESET: Toán hạng là địa chỉ bit I, Q, M, T, C, D, L. FBD LAD STL Hình 5-5: Khối thực hiện chức năng RESET Tín hiệu ra Q4.0 = 0 (Q4.0 sẽ được xoá ) khi I0.0 =1 . Dữ liệu vào và ra: Vào: I0.0 : BOOL Ra : Q4.0 : BOOL 6/ Lệnh SET: Toán hạng là địa chỉ bit I, Q, M, T, C, D, L. Hình 5-6: Khối thực hiện chức năng SET. 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 Lệnh RS: Nếu I0.0=1 , I0.1=0 thì M0.0=1, Q0.0=0 Nếu I0.0=0 ,I0.1=1 thì M0.0=0 ,Q0.0=1 Nếu I0.0=I0.1=0 Thì không có gì thay đổi. Nếu I0.0=I0.1=1 thì M0.0=Q0.0=1 Lệnh SR: Nếu I0.0=1 , I0.1=0 thì M0.0=1, Q0.0=1 Nếu I0.0=0 ,I0.1=1 thì M0.0=0 ,Q0.0=0 Nếu I0.0=I0.1=0 Thì không có gì thay đổi. Nếu I0.0=I0.1=1 thì M0.0=Q0.0=0 Vi phân cạnh lên: M0.0 lưu giá trị KQ ở vòng quét trước Khi I0.0 chuyển trạng thái từ 0 sang 1 và M0.0 =0 thì Q0.0 =1 Vi phân cạnh xuống: M0.0 lưu giá trị KQ ở vòng quét trước Khi I0.0 chuyển trạng thái từ 1 xuống 0 và M0.0=1 thì Q0.0=1 5.2. Nhóm hàm so sánh: 5.2 .1 . Nhóm hàm so sánh số nguyên 16 bit: FBD LAD STL Hình 5-9: Khối thực hiện chức năng so sánh bằng nhau Có các dạng so sánh hai số nguyên 16 bits như− sau : - Hàm so sánh bằng nhau giữa hai số nguyên 16 bits: == - Hàm so sánh khác nhau giữa hai số nguyên 16 bits: - Hàm so sánh lớn hơn giữa hai số nguyên 16 bits: > - Hàm so sánh nhỏ hơn giữa hai số nguyên 16 bits: < - Hàm so sánh lớn hơn hoặc bằng nhau giữa hai số nguyên 16 bits: >= - Hàm so sánh nhỏ hơn hoặc bằng nhau giữa hai số nguyên 16 bits: <= Trong ví dụ trên đầu ra Q4.0 sẽ là "1" khi MW0 = MW1. 5.2.2. Nhóm hàm so sánh hai số nguyên 32 bits: FBD LAD STL Hình 5-10: Khối thực hiện chức năng so sánh Trong ví dụ trên đầu ra Q4.0 sẽ là "1" khi MD0 = MD4. • Hàm so sánh bằng nhau giữa hai số nguyên 32 bits: == - Hàm so sánh khác nhau giữa hai số nguyên 32 bits: - Hàm so sánh lớn hơn giữa hai số nguyên 32 bits: > - Hàm so sánh nhỏ hơn giữa hai số nguyên 32 bits: < - Hàm so sánh lớn hơn hoặc bằng nhau giữa hai số nguyên 32 bits: >= - Hàm so sánh nhỏ hơn hoặc bằng nhau giữa hai số s6 nguyên 32 bits: <= 5.2 .3 . Nhóm hàm so sánh các số thực 32 bits FBD LAD STL Hình 5-11: Khối thực hiện chức năng so sánh hai số thực. Trong ví dụ trên đầu ra Q4.0 sẽ là "1" khi MD0 < MD1 . Các dạng so sánh hai số thực 32 bits như− sau : - Hàm so sánh bằng nhau giữa hai số thực 32 bits: == - Hàm so sánh khác nhau giữa hai số thực 32 bits: - Hàm so sánh lớn hơn giữa hai số thực 32 bits: > - Hàm so sánh nhỏ hơn giữa hai số thực 32 bits: < - Hàm so sánh lớn hơn hoặc bằng nhau giữa hai số thực 32 bits: >= - Hàm so sánh nhỏ hơn hoặc bằng nhau giữa hai số thực 32bits: <= 5.3. Các hàm toán học: 5.3.1. Nhóm hàm làm việc với số nguyên 16 bits: 1/ Cộng hai số nguyên 16 bits: FBD LAD STL Hình 5-12: Khối thực hiện chức năng cộng hai số nguyên 16 bits. Dữ liệu vào và ra: EN: BOOL IN1: INT IN2: INT OUT: INT ENO: BOOL Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện cộng hai số nguyên 16 bits MW0 với MW2. Kết quả đ−ợc cất vào MW10. Trong tr−ờng hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. 2/ Trừ hai số nguyên 16 bits: Hình 5-13: Khối thực hiện chức năng trừ hai số nguyên 16 bits Dữ liệu vào và ra: EN : BOOL IN1: INT IN2: INT OUT: INT ENO: BOOL Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện trừ hai số nguyên 16 bits MW0 với MW2. Kết quả được cất vào MW 10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. 3/ Nhân hai số nguyên 16 bits: FBD LAD STL Hình 5-14: Khối thực hiện chức năng nhân hai số 16 bits. Dữ liệu vào và ra: EN: BOOL IN1: INT IN2: INT OUT: IN ENO: BOOL Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện nhân hai số nguyên 16 bits MW0 với MW2. Kết quả được cất vào MW 10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. 4/ Chia hai số nguyên 16 bits: FBD LAD STL Hình 5-15: Khối thực hiện chức năng chia hai số nguyên 16 bits Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện chia hai số nguyên 16 bits MW0 với MW2. Kết quả được cất vào MW10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. 5.3 .2 . Nhóm hàm làm việc với số nguyên 32 bits: 1/ Cộng hai số nguyên 32 bits: Dữ liệu vào và ra: EN: BOOL IN1: DINT IN2: DINT OUT: DINT ENO: BOOL Hình 4-16: Khối thực hiện chức năng cộng hai số nguyên 32 bits Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện công hai số nguyên 32 bits MD0 với MD4. Kết quả được cất vào MD 10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. 2/ Trừ hai số nguyên 32 bits: Dữ liệu vào và ra: EN: BOOL IN1: DINT IN2: DIN OUT: DINT ENO: BOOL Hình 5-17: Khối thực hiện chức năng trừ hai số nguyên 32 bits Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện trừ hai số nguyên 32 bits MD0 với MD4. Kết quả được cất vào MD10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. 3/ Nhân hai số nguyên 32 bits: Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện nhân hai số nguyên 32 bits MD0 với MD4. Kết quả đ−ợc cất vào MD10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. FBD LAD STL Hình 5-18: Khối thực hiện chức năng nhân hai số nguyên 32 bit Dữ liệu vào và ra: EN: BOOL IN1: DINT IN2: DINT OUT: DINT ENO: BOOL 4/ Chia hai số nguyên 32 bits : Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện chia hai s6 nguyên 32 bits MD0 với MD4. Kết quả đ−ợc cất vào MD 10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. Dữ liệu vào và ra: EN: BOOL IN1: DINT IN2: DINT OUT: DINT ENO: BOOL FBD LAD STL Hình 5-19: Khối thực hiện chức năng chia hai số nguyên 32 bits 5.3 .3 . Nhóm hàm làm việc với số thực: 1/ Cộng hai số thực: Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện cộng hai số thực MD0 + MD4. Kết quả được cất vào MD10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. Hình 5-20: Khối thực hiện chức năng cộng hai số thực Dữ liệu vào và ra: EN: BOOL IN1: REAL IN2: REAL OUT: REAL ENO: BOOL 2/ Hàm trừ hai số thực: Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện trừ hai số thực MD0 - MD4. Kết quả được cất vào MD10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. Hình 5-21: Khối thực hiện chức năng trừ hai số thực. Dữ liệu vào và ra: EN: BOOL IN1: REAL IN2: REAL OUT: REAL ENO: BOOL 3/ Nhân hai số thực: Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện nhân hai số thực MD0 . MD4. Kết quả được cất vào MD 10. FBD LAD STL Hình 5-22: Khối thực hiện chức năng nhân hai số thực. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. Dữ liệu vào và ra: EN: BOOL IN1: REAL IN2: REAL OUT: REAL ENO: BOOL 4/ Chia hai số thực: Khi tín hiệu vào I0.0 = 1 đầu ra Q4.0 = 1 và hàm sẽ thực hiện chia hai số thực MD0 : MD4. Kết quả được cất vào MD10. Trong trường hợp tín hiệu vào I0.0 = 0 đầu ra Q4.0 = 0 và hàm sẽ không thực hiện chức năng. Hình 5-23: Khối thực hiện chức năng nhân hai số thực Dữ liệu vào và ra: EN: BOOL IN1: REAL IN2: REAL OUT: REAL ENO: BOOL 5.5. Bộ thời gian (Timer): 5.5.1. Nguyên tắc làm việc của Timer Bộ định thời là bộ tạo thời gian trễ t mông muốn giữa tín hiệu đầu vào và tín hiệu đầu ra. S7 300 có 5 loại Timer khác nhau, nhưng tất cả đều được tác động khi có tín hiệu tích cực ở đầu vào, thời điểm tín hiệu đầu vào được chuyển từ 0 lên 1 (thời điểm kích). Khoảng thời gian trễ được khai báo bằng một giá trị 16 bit bao gồm hai phần + Độ phân giải của Timer bao gồm: 10ms, 100ms, 1s, 10s + Một số nguyên (BCD) có giá trị trong khoảng 0¸999. Đây là giá trị đặt trước của Timer (PV). Khi đó thời gian trễ mong muốn sẽ là : T= độ phân giải x PV Timer có hai giá trị đặc trưng cho sự làm việc của mình đó là thanh ghi T_Word và T_bit. + Thanh ghi T_Word sẽ lưu giá trị PV của Timer tại thời điểm có tín hiệu kích, giá trị này sẽ được đếm ngược về 0, khi đó Timer sẽ tạo được thời gian trễ mông muốn. + Bit T_Bit : là bit sẽ được SET khi Timer hoạt động, tuy nhiên thời điểm SET sẽ phụ thuộc vào lạoi Timer sử dụng. + Cả T_Word và T_Bit đều được ký hiệu là Tx (x là chỉ số của Timer), tuy nhiên hệ điều hành sẽ tự phân biệt nó là T_Word hay T_Bit tuỳ thuộc vào lện gọi Tx. Khi Timer bị Reset cả CV và T_bit đều được đưa về 0. 5.5.2. Khai bảo sử dụng Timer Các bước khai báo sử dụngTimer: Khai báo tín hiệu Enable nếu muốn sử dụng tín hiệu kích chủ động. Khai báo tín hiệu đầu vào. Khai báo thời gian trễ mong muốn. Khai báo loại Timer được sử dụng (SD, SS, SP, SE, SF). Khai báo tín hiệu xoá nếu muốn xoá Timer một cách chủ động. Trong 5 bước trên các bước 2,3,4 là bắt buộc. Khai báo tín hiệu Enable Cú pháp: A FR Khai báo tín hiệu đầu vào Cú pháp: A Khai báo thời gian trễ mong muốn Khai báo thời gian dạng thời gian thực: S5T# giờH_phutM_giâyS_ minigiây MS Khai báo thời gian dạng số nguyên 16 bit, cấu trúc của 16 bit sẽ là: 15 14 13 12 11 0 Hai bit 15,14 không sử dụng Tác dụng của hai bit 13, 12: Bit 13 Bit 12 Độ phân giải 0 0 10ms 0 1 100ms 1 0 1s 1 1 10s Các bit từ 0¸11 là số nguyên dạng BCD ghi giá trị đặt trước PV VD: Khai báo một timer có thời gian trễ là 120s A I0.0 // Khai báo tín hiệu kích chủ động FR T1 A I0.1 // Khai báo tín hiệu đầu vào L S5T#2m12s // Khai báo thời gian trễ mong muốn //Hoặc khai báo dạng số nguyên 16 bit A I0.0 // Khai báo tín hiệu kích chủ động FR T1 A I0.1 // Khai báo tín hiệu đầu vào L W#16#2132 // Khai báo thời gian trễ mong muốn (1s x 132) Khai báo loại Timer Các loại Timer trong S7 300 SD: Trễ theo sườn lên không có nhớ. SS : Trễ theo sườn lên có nhớ. SP : Tạo xung không có nhớ. SE : Tạo xung có nhớ. SF : Trễ theo sườn xuống. Khai báo từng Timer: Timer trễ theo sườn lên không có nhớ : SD Cú pháp: SD Giá trị PV sẽ đựơc nạp vào T_word khi có sườn lên của tín hiệ đầu vào hoặc có sườn lên của tín hiệu kích chủ động (trong khi tín hiệu đầu vào đang ở mức 1). Khoảng thời gian trễ chính là khoảng thời gian tính từ khi gặp sườn lên của tín hiệu đầu vào vá sườn lên của T_bit. Là loại Timer không có nhớ do vậy trong thời gian tạo trễ (PV > 0) nếu tín hiệu đầu vào về 0 thì thời gian PV=0, quá trình trễ kết thúc, T_bit =0. Vi dụ: A I2.0 // Tín hiệu kích chủ động FR T1 A I2.1 // Tín hiệu đầu vào L S5T#12S30MS // Đặt thời gian trễ SD T1 // Khai báo Timer SD A I2.2 // Tín hiệu Reset R T1 A T1 // Đọc giá trị T_bit = Q4.0 // Gán ra đầu ra Q4.0 L T1 // Đọc T_word T MW0 // Ghi vào MW0 Với ví dụ trên ta sẽ có giản đồ xung của đầu ra ứng với các tín hiệu đầu vào như sau: Hình 19 Timer trễ theo sườn lên có nhớ: SS Cú pháp: SS Cũng như loại Timer tạo trễ không có nhớ, khoảng thời gian trễ của Timer được tính từ khi có sườn lên của tín hiệu đầu vào cho đến khi có sườn lên của T_bit. T_bit sẽ được lên 1 khi T_word giảm từ giá trị PV về 0. Khác với Timer tạo trễ không có nhớ, đối với Timer tạo trễ có nhớ thì trong quá trình tạo trễ thời gian nếu có sự thay đổi tín hiệu đầu vào đầu ra và T_word sẽ thay đổi như sau: Gặp sườn xuống của tín hiệu đầu vào thì Timer vẫn hoạt động và giá trị thời gian trong T_word vẫn đựơc chạy lùi về 0, khi đó T_bit=1, kết thúc quá trình tạo trễ. Vi dụ: A I2.0 // Tín hiệu kích chủ động FR T1 A I2.1 // Tín hiệu đầu vào L S5T#12S30MS // Đặt thời gian trễ SS T1 // Khai báo Timer thời gian có nhớ A I2.2 // Tín hiệu Reset R T1 A T1 // Đọc giá trị T_bit = Q4.0 // Gán ra đầu ra Q4.0 L T1 // Đọc T_word T MW0 // Ghi vào MW0 Giản đồ xung tín hiệ đầu vào ra của loại Timer này sẽ là: Hình 20 Timer tạo xung không có nhớ: SP Cú pháp: SP Thời gian trễ được tính từ khi có sườn lên của tín hiệu đầu vào (hoặc sườn lên của tín hiệu kích chủ động khi tín hiệ đầu vào đang ở mức 1). Khi đó giá tri PV sẽ được gán vào T_word, và giá trị này bắt đầu được giảm cho đến khi về 0, lúc đó kết thúc thời gian tạo xung. Khi T_word ≠ 0 thì T_bit=1 còn các trường hợp khác thì T_bit=0. Chưa hết thời gian tạo trễ mà đầu vào trở về 0 thì cả T_word và T_bit đều về 0 Giản đồ xung của Timer(với vi dụ tương tự ở trên): Hình 21 Timer tạo xung có nhớ: SE Cú pháp: SE Thời gian trễ được tính từ khi có sườn lên của tín hiệu đầu vào (hoặc sườn lên của tín hiệu kích chủ động khi tín hiệu đầu vào đang ở mức 1). Khi đó giá tri PV sẽ được gán vào T_word, và giá trị này bắt đầu được giảm cho đến khi về 0, lúc đó kết thúc thời gian tạo xung. Khi T_word ≠ 0 thì T_bit=1 còn các trường hợp khác thì T_bit=0. Khác với Timer tạo xung không có nhớ khi chưa hết thời gian tạo trễ mà đầu vào trở về 0 thì Timer vẫn hoạt động tức T_word vẫn được đếm lùi về 0 và T_bit=1. Giản đồ xung của Timer(với vi dụ tương tự ở trên): Hình 22 Timer trễ theo sườn xuống: SF Cú pháp: SF Thời gian trễ được tính từ khi có sườn xuống của tín hiệu đầu vào, tức là ở thời điểm xuất hiện sườn xuống của tín hiệu đầu vào, giá trị PV được chuyển vào trong T_word. Trong khoảng thời gian giữa sườn lên của tín hiệu vào hoặc T_word ≠ 0 thì T_bit có giá trị bằng 1. Ngoài khoảng đó T_bit có giá trị 0. Vẫn ví dụ trên ứng với Timer trễ theo sườn xuống ta có giản đồ xung: Hình 23 Khai báo tín hiệu xoá Cú pháp: A R Khi gặp sườn lên của tín hiệu Reset toàn bộ Timer bị xoá về 0. 5.6 Bộ đếm (COUNTER): 5.6.1. Nguyên lý làm việc: Counter thực hiện chức năng đếm tức 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 lo1i bộ đếm thuờ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ể đuợ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 truớc R : BOOL là tín hiệu xoá 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 . Hình 5.49 Sơ đồ khối bộ đếm counter Quá trình làm việc của bộ đếm đuợc mô tả như sau: Số sườn xung đếm đuợc, đuợ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 đuợ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 C- Word ra ngoà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 xoá tứ thời bằng tín hiệu xoá R (Reset). Khi bộ đếm được xóa cả C-Word và C- bit đều nhận giá trị 0. 5.6.2 .Khai báo sử dụng: Việc khai báo sử dụng một Counter bao gồm các buớ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 xoá: 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. 1. Bộ đếm tiến-lùi : - Sơ đồ khối : Hình 5-50: Sơ đồ khối bộ đếm tiến lùi. - 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 suờ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 suờ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 suờn lên của chân R ( I0.3) Bộ đếm tiến : CU FBD LAD STL Hình 5-51: sơ đồ khối 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 đuợc đặt giá trị là 55. Giá trị đầu ra Q4.0 =1 . Bộ đếm sẽ thực hien đếm tiến tại các suờ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" Giá trị của bộ đếm sẽ trở về 0 khi có tín hiệu tai suờn lên của chân R (I0.3) BO đếm sẽ chỉ đếm đến giá trị <= 999. 3. Bộ đếm lùi: CD FBD LAD STL Hình 5-52: Sơ đồ khối bộ đếm lùi. - Nguyên lý hoạt động: Khi tín hiệu I0.2 chuyển từ "0" lên "1" bộ đếm đuợc đặt giá trị là 55. Giá trị đầu ra Q4.0 =1 . Bộ đếm sẽ thực hien đếm lùi tại các sườn lên của tín hiệu tại chân CD khi tín hiệu I0.0 chuyển giá trị 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 sẽ chỉ đếm đến giá trị >= 0. 5.7.Khối chuyển dữ liệu: FBD LAD STL Hình 5-53: Sơ đồ khối MOV - Nguyên lý hoạt động: Khi có tín hiệu kích I0.0 khối Copy đuợc thiết lập , tín hiệu đầu ra ENO là Q4.0 =1. Đồng thời số liệu ở đầu vào IN là MW0 đuợc Copy sang đầu ra OUT là MW2. Khi tín hiệu kích I0.0 = 0 tín hiệu đầu ra Q4.0 = 0. Trong truờng hợp muốn thay đổi số liệu trong bộ nhớ (tức là thay đổi giá trị trong MW2) ta có thể không cần sử dụng tín hiệu kích I0.0. 5.8. Cácbộ ghi dịch và quay số liệu trên thanh ghi: 1. Dich phải số nguyên 16 bits: FBD LAD STL Hình 5-54: Sơ đồ khối dịch phải. Hình 5-55: Nguyên lý hoạt động. Khi tín hiệu kích I0.0 = 1 Khối sẽ thực hiện chức năng dich chuyển sang phải số liệu trong thanh ghi. Đồng thời tín hiệu ra tại ENO là Q4.0 có giá trị là 1. Số liệu đư−a vào IN là MW0 Số bit sẽ dich chuyển là MW2 (tại chân N). Kết quả sau khi dịch được cất vào MW4. Trên sơ đồ cho ta thấy kết quả của bộ dịch phải 4 bit. 2. Dich phải số nguyên 32 bits: - Sơ đồ khối: FBD LAD STL Hình 5-56: Khối dịch phải. Khi tín hiệu kích I0.0 = 1. Kh6i sẽ thực hiện chức năng dich chuyển sang phải số liệu trong thanh ghi. Đồng thời tín hiệu ra tại ENO là Q4.0 có giá trị là 1. Số liệu đư−a vào tại IN là MD0 Số bit sẽ dịch chuyển là MW2 (tại chân N). Kết quả sau khi dịch được cất vào MW4. Trên sơ đồ cho ta thấy kết quả của bộ dịch phải 4 bit. 3. Dich trái 16 bit: - Sơ đồ khối: FBD LAD STL Hình 5-57: Khối dịch trái. - Nguyên lý hoạt động: Khi có tín hiệu kích I0.0 = 1 tín hiệu ra Q4.0 đ−ợc thiết lập và có giá trị 1. Dữ liệu ở đầu vào MW0 được dịch sang trái với số bit được đặt tại chân N (MW2). Kết quả sau khi dịch được ghi vào MW4. - Giản đồ thời gian: Hình 5-58: Giản đồ thời gian bộ dịch trái 6 vị trí. Chú ý: Trong tr−ờng hợp cần dich trái một số 32 bits ta chỉ cần khai báo dữ Liệu ở đầu vào IN dưới dạng MD ví dụ: MD0 và kết quả đầu ra cũng sẽ được lưu giữ ở MD Ví dụ: MD4 4. Quay trái số 32 bits: - Sơ đồ khối: FBD LAD STL Hình 4-59: Sơ đồ khối quay trái. - Nguyên lý hoạt động: Khi có tín hiệu kích I0.0 = 1 tín hiệu ra Q4.0 được thiết lập và có giá trị 1. Dữ liệu ở đầu vào MD0 được quay sang trái với số bit đ−ợc đặt tại chân N (MW4). Kết quả sau khi dịch đ−ược ghi vào MD 10. Hình 5-60: Giản đồ thời gian. 5. Quay phải số 32 bits: -Sơ đồ khối: Hình 5-61: sơ đồ khối bộ quay phải. -Nguyên lý hoạt động: Khi có tín hiệu kích I0.0 = 1 tín hiệu ra Q4.0 đ−ợc thiết lập và có giá trị 1. Dữ liệu ở đầu vào MD0 đ−ược quay phải với số bit được đặt tại chân N (MW4). Kết quả sau khi dịch được ghi vào MD10. - Giản đồ thời gian: Hình 5-62: Giản đồ thời gian của bộ dịch phải 3 vị trí số BÀI 6 : BÀI TẬP ỨNG DỤNG PLC S7-300 Mục tiêu: - Trình bày cách kết nối giữa PLC và thiết bị ngoại vi theo nội dung đã học. - Kiểm tra nối dây bằng phần mềm chính xác theo nội dung đă học. - Thực hiện cài đặt phần mềm đạt các yêu cầu kỹ thuật. PHẦN I: BÀI TẬP ÁP DỤNG CÁC LỆNH CƠ BẢN Bài 1: Viết chương trình điều khiển ngõ ra Q0.0 và Q0.1 hoạt động theo yêu cầu sau: - Khi nhấn Start1, Q0.0 =1. - Khi nhấn Start2, Q0.1 =1. - Khi nhấn Stop1, Q0.1 =0. - Khi nhấn Stop2, Q0.0 = 0. Điều kiện là Q0.0 chỉ bằng 0 khi Q0.1 đã bằng 0. Yêu cầu: Viết chương trình dùng các lệnh Vào/ Ra thông thường. Bài 2: Viết chương trình điều khiển ngõ ra Y0 và Y1 hoạt động theo yêu cầu sau: - Khi nhấn Start1, Y0 =1. - Khi nhấn Start2, Y1 =1. - Khi nhấn Stop1, Y1 =0. - Khi nhấn Stop2, Y0 = 0. Điều kiện là Y0 chỉ bằng 0 khi Y1 đã bằng 0. Yêu cầu: Viết chương trình dùng các lệnh SET,RESET. Bài 3: Điều khiển mạch rửa xe tự động: Yêu cầu: Khi xe đến nhờ băng chuyền đưa xe đến cảm biến L1, động cơ M1 lau và Val 1 phun nước. Khi xe đến cảm biến L2 thì Val 2 thổi hơi. Khi đến cảm biến L3 thì đưa xe ra ngoài. - Đèn xanh báo hệ thống sẵn sàng. - Đèn đỏ báo hệ thống đang hoạt động. Bài 4: Điều khiển trò chơi “Đường lê đỉnh OLYMPIA“: Yêu cầu: Sau khi người dẫn chương trình đã nêu xong các câu hỏi, các thí sinh sẽ nhấn nút phía trước mặt để dành quyền trả lời câu hỏi. Ai nhấn trước thì được quyền trả lời, chuông sẽ kiêu trong 5 giây sau khi bất kỳ thí sinh nào nhấn nút. Cùng lúc đó đèn trước mặt của thí sinh sẽ sáng lên. Nó sẽ được tắt bởi người dẫn chương trình. Bài 5: Lập trình cho điều khiển cửa tự động ở các siêu thị, nhà hàng, khách sạn, toà nhà cao ốc, bệnh viện, ...Theo yêu cầu: Cửa thường đóng: nếu có người ở ngoài đi vào hay có người đi ra thì cửa sẽ tự động mở trong 10 giây (cửa phải ở trạng thái mở 10 giây để lối vào đón khách cho tới khi không còn người đến gần). Nếu không có người vào đến gần thì cửa phải tự động đóng lại sau một thời gian ngắn 10 giây. Việc xác định người Ra/Vào nhờ cảm biến, Đóng/Mở cửa dừng lại nhờ vào công tắc hành trình. Bài 6: Viết chương trình điều khiển 4 động cơ với bảng điều khiển như sau: Khi nhấn START thì động cơ 1 chạy , 5 giây sau động cơ 2 chạy, 5 giây sau thì động cơ 3 chạy và 5 giây sau thì động cơ 4 chạy Khi nhấn STOP thì động cơ 4 dừng, 5 giây sau động cơ 3 dừng, 5 giây sau động cơ 2 dừng và 5 giây sau thì động cơ 1 dừng chạy. Bài 7: Điều khiển dây chuyền đóng gói: Yêu cầu: Khi nút nhấn PB1 được nhấn băng tải hộp bắt đầu chuyển động. Khi phát hiện có mặt của hộp thì băng tải hộp dừng lại và băng tải táo bắt đầu hoạt động. Cảm biến táo sẽ đếm số lượng táo cho đến khi được 10 quả thì băng tải táo dừng lại và băng tải hộp bắt đầu chuyển động trở lại. Chu kỳ được lặp đi lặp lại cho đến khi nhấn nút dừng. Bài 8: Chương trình điều khiển bồn trộn hóa chất: Yêu cầu: Có hai bồn trộn hóa chất, mỗi bồn được kéo bởi một động cơ. Bồn 1 trộn hóa chất a. Bồn 2 trộn hóa chất b. Trên bảng điều khiển có 3 lựa chọn: - Nếu nhấn nút PB thì cả hai bồn đều được chọn làm việc trong 30s. Nếu nhấn nút PB1 thì chỉ có bồn 1 làm việc trong 30s. Nếu nhấn nút PB2 thì chỉ có bồn 2 làm việc trong 30s. Khi đang trộn hoá chất, nếu bồn hóa chất bị hở van thì phải báo động ngay và lập tức dừng quá trình trộn lại. Bài 9: Điều khiển 2 động cơ theo chế độ đặt trước: Yêu cầu: Hai động cơ được yêu cầu hoạt động theo chế độ như sau: Động cơ 1 chạy 5 giây rồi ngừng. Sau đó động cơ 2 chạy 5 giây rồi ngừng 5 giây, động cơ 2 lặp lại 5 lần như vậy. Sau đó động cơ 1 chạy trở lại, hai động cơ này lặp lại 10 lần rồi nghỉ . Muốn làm việc trở lại thì nhấn nút khởi động. Bài 10: Viết chương trình điều khiển 8 đèn dùng 4 nút nhấn: - Khi nhấn ON: tất cả 8 đèn sáng. - Khi nhấn L: 8 đèn tắt dần từ phải sang trái, lặp lại. - Khi nhấn R: 8 đèn tắt dần từ trái sang phải, lặp lại. - Khi nhấn OFF: 8 đèn đều tắt Bài 11: Viết chương trình điều khiển 6 đèn bằng 3 nút nhấn: L, R và OFF: - Khi nhấn L: 6 đèn sáng dần tắt dần từ trái sang phải, lặp lại. - Khi nhấn R: 6 đèn sáng dần tắt dần từ phải sang trái, lặp lại. - Khi nhấn OFF: 6 đèn đều tắt. Bài 12: Chương trình điều khiển 8 động cơ: Viết chương trình điều khiển động cơ từ D1 đến D8 với các yêu cầu sau: Nhấn nút START thì động cơ D1 chạy. Nhấn nút NEXT thì động cơ đang chạy sẽ dừng lại và động cơ bên phải của nó chạy. Nhấn nút BACK thì động cơ đang chạy sẽ dừng lại và động cơ bên trái của nó chạy. Nhấn nút STOP thì động cơ đang chạy sẽ dừng lại. Bài 13: Viết chương trình điều khiển WQ0 hoạt động như sau. - Nhấn Up, WQ0 tăng thêm 1. - Nhấn Down, WQ0 giảm đi 1. - Nhấn Start, WQ0 =1. - Nhấn Stop, WQ0 = 0. Viết chương trình dùng các lệnh tăng, giảm . Bài 14: Viết chương trình điều khiển WY0 hoạt động như sau. - Nhấn Up, WY0 tăng thêm 1. - Nhấn Down, WY0 giảm đi 1. - Nhấn Start, WY0 =1. - Nhấn Stop, WY0 = 0. Điều kiện : Khi WY0 tăng lên đến 10 thì không tăng được nữa và khi WY0 giảm tới 0 thì không giảm được nữa. Viết chương trình dùng các lệnh tăng, giảm, so sánh . Bài 15: Viết chương trình điều khiển WY0 hoạt động như sau. - Nhấn Up, WY0 tăng thêm 1. - Nhấn Down, WY0 giảm đi 1. - Nhấn Start, WY0 =1. - Nhấn Stop, WY0 = 0. Điều kiện : Khi WY0 tăng lên đến 10 thì không tăng được nữa và khi WY0 giảm tới 0 thì không giảm được nữa. Viết chương trình dùng các lệnh cộng, trừ, so sánh PHẦN II: BÀI TẬP ỨNG DỤNG TRÊN MÔ HÌNH THỰC TẾ Bài 1: Viết chương trình cho mô hình Complex Bridge Circuit. Bài 2: Viết chương trình cho mô hình Two Speed Motor Started With Reverse. Bài 4: Viết chương trình cho mô hình Automatic Garage. Bài 5: Viết chương trình cho mô hình Auto – Drinks Selling Machine. Bài 6: Viết chương trình cho mô hình Traffic Light System. TÀI LIỆU THAM KHẢO 1. Đề cương môđun/môn học nghề Sửa chữa thiết bị điện tử công nghiệp”, Dự án Giáo dục kỹ thuật và Dạy nghề (VTEP), Tổng cục Dạy Nghề, Hà Nội, 2003 2. automatisieren mit sps - Guenter, Wellenreuther, Dieter Zastrow. nxb Viweg 3. stuerung von - ELWE 4. tự động hóa với simatic s7-300. Nguyễn Doãn Phước. nxb nông nghiệp 5.Kỹ thuật điều khiển lập trình. Trung tâm Việt Đức Trường ĐHSPKT DANH SÁCH BAN BIÊN SOẠN GIÁO TRÌNH DẠY NGHỀ TRÌNH ĐỘ TRUNG CẤP, CAO ĐẲNG (font chữ Time News Roman, in hoa, cỡ chữ 14 Bold) Tên giáo trình: Tên nghề: Ông (bà) Chủ nhiệm Ông (bà) Phó chủ nhiệm Ông (bà) Thư ký Ông (bà) Thành viên Ông (bà) Thành viên Ông (bà) Thành viên Ông (bà) Thành viên Ông (bà) Thành viên Ông (bà) Thành viên DANH SÁCH HỘI ĐỒNG NGHIỆM THU GIÁO TRÌNH DẠY NGHỀ TRÌNH ĐỘ TRUNG CẤP, CAO ĐẲNG (font chữ Time News Roman, in hoa, cỡ chữ 14 Bold) Ông (bà) Chủ tịch Ông (bà) Phó chủ tịch Ông (bà) Thư ký Ông (bà) Thành viên Ông (bà) Thành viên Ông (bà) Thành viên Ông (bà) Thành viên Ông (bà) Thành viên Ông (bà) Thành viên Mẫu chữ trình bày cụ thể trong văn bản: Sử dụng font chữ Time News Roman, in hoa, cỡ chữ 14 Căn lề: + Trang mặt trước: lề trái cách mép 3 – 3,2 cm; lề phải cách mép 1,8 – 2 cm; lề trên cách mép 2 – 2,5 cm; lề dưới cách mép 1,8 – 2cm. + Trang mặt sau: lề trái cách mép 1,5 – 2 cm; lề phải cách mép 3 – 3,5 cm; lề trên cách mép 2 – 2,5 cm; lề dưới cách mép 1,8 – 2cm. Đánh số trang lên đầu văn bản, đặt ở giữa trang; Khoảng cách các dòng đơn (singe) Các Mô đun được ký hiệu chung là MĐ kèm theo 2 chữ số (MĐ01, MĐ02). Thứ tự các mô đun đun được ghi kế tiếp nhau, liên tục từ 01 đến hết số lượng các mô đun trong toàn bộ văn bản.

Các file đính kèm theo tài liệu này:

  • docplcnangcao_140930083206_phpapp01_4627.doc