CHƯƠNG 3: TỔNG QUAN VỀ PLC S7-200 .1. Tổng quan về PLC. PLC là chữ viết tắt của programmable logic control, là thiết bị điều khiển logic khả trình, cho phép thực hiện linh hoạt các thuật toán điều khiển logic thông qua một ngôn ngữ lập trình. Trong lĩnh vực tự động điều khiển, bộ điều khiển PLC là thiết bị có khả năng lập trình được sử dụng rộng rãi. Đặc trưng của PLC là việc sử dụng vi mạch để xử lí thông tin và ta có thể thay đổi công nghệ, cải tạo dựa trên chương trình và phần mở rộng chứ không thay thế toàn bộ công nghệ mới. .2. Giới thiệu về PLC S7-200. .2.1. Cấu trúc phần cứng. PLC gồm ba khối chức năng cơ bản : Bộ vi xử ly, bộ nhớ, bộ vào/ra. Trạng thái ngõ vào của PLC được phát hiện và lưu vào bộ nhớ đệm PLC thực hiện các lệnh logic trên các trạng thái của chúng và thông qua chương trình trạng thái ngỏ ra được cập nhật và lưu trữ vào bộ nhớ đệm sau đó trạng thái ngỏ ra trong bộ nhớ đệm được dùng để đóng mở các tiếp điểm kích hoạt các thiết bị tương ứng, như vậy sự hoạt động của các thiết bị được điều khiển hoàn toàn tự động theo chương trình trong bộ nhớ, chương trình được nạp vào PLC thông qua thiết bị lập trình chuyên dùng. Bộ xử lý trung tâm (CPU - Center - Processing - Unit). Bộ xử lý trung tâm điều khiển và quản lý tất cả hoạt động bên trong của PLC.Việc trao đổi thông tin giữa CPU, bộ nhớ và khối vào/ra được thực hiện thông qua hệ thống bus dưới sự điều khiển của CPU. Một mạch dao động thạch anh cung cấp xung clock tần số chuẩn cho CPU thường là 1 hay 8 MHz, tùy thuộc vào bộ xử lý được sử dụng. Tần số xung clock xác định tốc độ hoạt động của PLC và được dùng để thực hiện sự đồng bộ cho tất cả các phần tử trong hệ thống . a. Bộ nhớ và bộ phận khác : Tất cả các PLC đều dùng các loại bộ nhớ sau : - RAM ( Random Access Memory ): là bộ nhớ truy xuất ngẫu nhiên, đây là bộ nhớ thông dụng, bộ nhớ để cất giữ chương trình và dữ liệu tạm thời của người sữ dụng. Dữ liệu trong RAM sẽ bị mất khi mất điện. Do đó điều này được giải quyết bằng cách luôn nuôi RAM bằng một nguồn Pin riêng. - ROM ( Read Only Memory ):ROM là bộ nhớ chỉ đọc. Bộ nhớ có dặc tính trái ngược với bộ nhớ RAM là rất khó xoá, nên khi có sự cố về điện thì nội dung chương trình vẫn còn trong bộ nhớ . Nhưng hiện nay đối với bộ nhớ ROM người ta có thể thay đổi nội dung của nó. Tuỳ thuộc vào cách tạo nội dung, cách xoá nội dung , cách nạp một nội dung mới vào nó mà ta có các loại bộ nhớ ROM khác nhau như : PROM, EPROM, RPROM, EEPROM, EAROM. - EPROM (Erasable Programmable Read-Only Memory ): Bộ nhớ ROM có thể xoá nội dung chương trình. Bộ nhớ này được xoá bằng các tia cực tím, sau khi nội dung cũ bị xoá thì người ta dùng một thiết bị đặc biệt để ghi nội dung chương trình mới vào trong ROM. Loại này rất phức tạp vì phải dùng những thiết bị đắt tiền. - EEPROM ( Electrically Erasable Programmable Read- Only Memory ): Đây là bộ nhớ mà nó kết hợp sự truy xuất linh hoạt của RAM và bộ nhớ chi đọc không thay đổi ROM trên cùng một khối, nội dung của nó có thể xoá hoặc ghi bằng điện tuy nhiên cũng chỉ được vài lần. - Bộ nguồn cung cấp : Bộ nguồn cung cấp của PLC sữ dụng hai loại điện áp AC hoặc DC, thông thường nguồn dùng cấp điện áp từ 100 đến 240V, tần số 50/60 Hz, những nguồn DC thì có các giá trị: 5V, 24VDC. - Nguồn nuôi bộ nhớ: Thông thường là Pin để mở rộng thời gian lưu giữ các dữ liệu có trong bộ nhớ, nó tự chuyển sang trạng thái tích cực nếu dung lượng tụ cạn kiệt và nó phải thay vào vị trí đó để dữ liệu trong bộ nhớ không bị mất. - Cổng truyền thông: PLC luôn dùng cổng truyền thông để trao đổi dữ liệu chương trình, các loại cổng truyền thông thường dùng là :RS232, RS432, RS48. b. Khối vào ra. Mọi hoạt động xử lý tin hiệu bên trong PLC có mức điện áp 5V DC ;15V DC(điện áp cho TTL, CMOS) trong khi tín hiệu điều khiển bên ngoài có thể lớn hơn nhiều, thường là 24V DC đến 240V DC với dòng lớn .Như vậy khối vào ra có vai trò là mạch giao tiếp giữa mạch vi điện tử của PLC với các mạch công suất bên ngoài, kích hoạt các cơ cấu tác động : Nó thực hiện sự chuyển đổi các mức điện áp tín hiệu và cách ly. Tuy nhiên khối vào ra cho phép PLC kết nối trực tiếp với các cơ cấu tác động có công suất nhỏ (<= 2 A) nên không cần các mạch công suất trung gian hay rơle trung gian .Có thể lựa chọn các thông số cho các ngõ ra, vào với các yêu cầu điều khiển cụ thể : - Ngõ vào : 24 V DC ; 110 V AC hoặc 220V AC - Ngõ ra : Dạng rơle, transistor hay triac . Loại ngõ ra dùng rơle: có thể nối với cơ cấu tác động làm việc với điện áp AC hay DC, cách ly dạng cơ nên đáp ứng chậm, tuổi thọ phụ thuộc dòng tải qua rơle và tần số đóng tiếp điểm . Loại ngõ ra dùng Triac : Kết nối được giữa cơ cấu tác động làm việc với điện áp AC hoặc DC có giá trị từ 5 v đến 242v, chiu được dòng nhỏ hơn so với dùng rơle nhưng tuổi thọ cao và tần số đóng mở nhanh . Loại ngõ ra dùng transistor : Chỉ nối cơ cấu tác động làm việc với điện áp từ 5 đến 30v DC, tuổi thọ cao và tần số đóng mở nhanh . c. Thiết bị lập trình. Trên các PLC loại lớn kết hợp với máy tính thường lập trình với sự hổ trợ của phần mềm VDU (Visua Display Unit) ở đây bàn phím, màn hình được nối với PLC thông qua cổng nối tiếp, thường là RS485, các VDU hổ trợ rất tốt cho việc lập trình dạng ngôn ngữ lad để kể các chú thích trong chương trình để dễ đọc hơn. 3.3 Nguyên tắc hoạt động. Khi chương trình được nạp vào PLC chúng được đặt trong 1 vùng nhớ riêng được gọi là bộ nhớ chương trình. Bộ xử lý có thanh ghi bộ đếm lệnh dùng để trỏ đến lệnh kế tiếp sẽ được thi hành khi CPU thực thi 1 lệnh nào đó. Khi 1 lệnh được lấy từ CPU thì nó được đặt vào thanh ghi lệnh để giải mã thành các vi lệnh bên trong CPU. 3.3 Giới thiệu về Timer và Counter. .3.1. Timer. Timer là bộ tạo thời gian trễ giữa tín hiệu vào và tín hiệu ra nên trong điều khiển thường được gọi là khâu trễ. S7-200 từ CPU 214 trở lên có 128 Timer được chia làm hai loại khác nhau đó là: Timer tạo thời gian trễ không có nhớ có nghĩa là khi tín hiệu logic vào IN ở mức không thì Timer sẽ bị Reset. Timer Txx này có thể Reset bằng hai cách đó là cho tín hiệu logic vào bằng không hoặc dùng lệnh R Txx để Reset lại Timer Txx. Timer này được dùng để tạo thời gian trể trong một thời gian liên tục kí hiệu là TON. Timer tạo thời gian trễ có nhớ có nghĩa là khi tín hiệu logic vào IN ở mức không thì Timer này không chạy nữa nhưng khi tín hiệu lên mức cao lại thì Timer lại tiếp tục chạy tiếp. Timer Txx này có thể Reset bằng cách dùng lệnh R Txx để Reset lại Timer Txx. Timer này được dùng để tạo thời gian trể trong một thời gian gián đoạn kí hiệu là TONR. Cả hai loại Timer trên đều chạy đến giá trị đặt trước PT thì nó tự dừng lại nếu muốn cho nó hoạt động lại thì ta phải Reset lại. Timer có những tính chất sau: Các bộ Timer đều được điều khiển bởi một cổng vào và một giá trị đếm tức thời. Giá trị đếm tức thời được lưu trong một thanh ghi 2 byte (gọi là Tword) của Timer xác định khoảng thời gian trể được kích. Giá trị đếm tức thời của Timer luôn luôn được so sánh với giá trị PT đặt trước. Timer có 3 độ phân giải đó là 1ms, 10ms, 100ms và phân bố của các Timer trong CPU214 như sau: Lệnh Độ phân giải Giá trị cực đại Tên Timer TON 1ms 32,767s T32;T96 10ms 327,67s T33→T36; T97→ T100 100ms 3276,7s T37→T63;T101→ T127 TONR 1ms 32,767s T0; T64 10ms 327,67s T1→ T4;T65→T68 100ms 3276,7s T5→T31;T69→T95 .3.2. Counter. Counter là bộ đếm thực hiện chức năng đếm sườn xung trong S7-200. Các bộ đếm của S7-200 được chia làm 2 loại: Bộ đếm tiến (CTU) và bộ đếm tiến lùi (CTUD). Bộ đếm tiến (CTU) đếm số sườn lên của tín hiệu logic đầu vào tức là đếm số lần thay đổi trạng thái logic từ 0 lên 1. 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 C-word, gọi là giá trị đếm tức thời của bộ đếm, luôn được so sánh với giá trị đặt trước của bộ đếm, được ký hiệu là PV. Khi giá trị đếm tức thời bằng hoặc lớn hơn giá trị đặt trước này thì bộ đếm báo ra ngoài bằng cách đặt giá trị logic 1 vào một bit đặc biệt của nó, được gọi là C-bit. Trường hợp giá trị đếm tức thời nhỏ hơn giá trị đặt trước thì C-bit có giá trị logic 0. Chân nối với tín hiệu điều khiển xoá để thực hiện đặt lại chế độ khởi phát ban đầu (Reset) cho bộ đếm được ký hiệu bằng chữ R (trong LAD). Bộ đếm được Reset khi tín hiệu xoá này có mức logic 1 hoặc khi lệnh R được thực hiện với C- bit. Khi bộ đếm được Reset, cả C-bit và C-word đều nhận giá trị 0. Bộ đếm tiến- lùi (CTUD) đếm tiến khi gặp sườn lên của xung vào cổng đếm tiến, ký hiệu là CU trong LAD hoặc bit thứ 3 của ngăn xếp trong STL, và đếm lùi khi gặp sườn lên của xung vào cổng đếm lùi, ký hiệu là CD trong LAD hoặc bit thứ hai cuả ngăn xếp trong STL. CTUD cũng được đưa về trạng thái ban đầu bằng hai cách: - Khi đầu vào của logic của chân xoá, ký hiệu R trong LAD hoặc bit thứ nhất của ngăn xếp trong STL, có giá trị logic 1. - Bằng lệnh Reset với C-bit của bộ đếm. CTUD có giá trị đếm tức thời đúng bằng giá trị đang đếm và được ghi trong thanh ghi hai byte C-word của bộ đếm. Giá trị đếm tức thời luôn được so sánh với giá trị đặt trước PV của bộ đếm. Nếu giá trị đếm tức thời lớn hơn hoặc bằng giá trị đặt trước thì C-bit có giá trị logic bằng 1. Còn các trường hợp khác C-bit có giá trị logic bằng 0. Bộ đếm tiến CTU có miền giá trị đếm tức thời từ 032.767. Bộ đếm tiến lùi CTUD có miền gái trị đếm tức thời là: -32.76732.767. • Khi tín hiệu đầu vào I0.0 có giá trị logic 1 thì bộ đếm bắt đầu hoạt động, bộ đếm sẽ đếm số lần thay đổi trạng thái logic từ 0 lên 1 của tín hiệu đầu vào. Số sườn xung đếm được, được ghi vào thanh ghi 2 byte của bộ đếm (C-word). Giá trị đếm này luôn được so sánh với giá trị đặt trước của bộ đếm (PV), khi giá trị đếm tức thời lớn hơn hoặc bằng giá trị đặt trước này thì bộ đếm báo ra ngoài bằng cách đặt giá trị logic 1 vào bit đặc biệt của nó (C-bit). Khi cổng R được kích, tức là khi đầu vào I0.3 có giá trị logic 1 thì bộ đếm được reset , đặt lại từ đầu. .4. Ngôn ngữ lập trình. .4.1. Phương pháp lập trình. S7-200 biểu diễn một mạch logic cứng bằng một dãy các lệnh lập trình. Chương trình bao gồm một tập dãy các lệnh. S7-200 thực hiện chương trình bắt đầu từ lệnh lập trình đầu tiên và kết thúc ở lệnh lập trình cuối trong một vòng. Một vòng như vậy được gọi là một vòng quét (Scan). Một vòng quét (Scan cycle) được bắt đầu bằng việc đọc trạng thái của đầu vào, và sau đó thực hiện chương trình. Scan cycle kết thúc bằng việc thay đổi trạng thái đầu ra. Trước khi bắt đầu một vòng quét tiếp theo S7-200 thực thi nhiệm vụ bên trong và nhiệm vụ truyền thông. Cách lập trình cho S7-200 nói riêng và cho các PLC của Siemens nói chung dựa trên hai phương pháp cơ bản: phương pháp hình thang (Ladder Logic viết tắt LAD) và phương pháp liệt kê lệnh (Statement List viết tắt thành STL). a. Ngôn ngữ LAD. LAD là một ngôn ngữ lập trình bằng đồ họa. Những thành phần cơ bản dùng trong LAD tương ứng với các thành phần của bảng điều khiển bằng rơle. Trong chương trình LAD các phần tử cơ bản dùng để biểu diễn lệnh logic như sau: - Tiếp điểm là biểu tượng mô tả các tiếp điểm của rơle. Các tiếp điểm đó có thể là thường hở hoặc thường đóng - Cuộn dây (coil): Là biểu tượng ( ) mô tả rơle được mắc theo chiều dòng điện cùng cấp cho rơle. - Hộp (box): Là biểu tượng mô tả các hàm khác nhau nó làm việc khi dòng điện chạy đến hộp. Những dạng hàm thường biểu diễn bằng hộp là các bộ thời gian (Timer), bộ đếm (Counter) và các hàm toán học. Cuộn dây và các hộp phải mắc đúng chiều dòng điện. - Mạng LAD: Là đường nối các phần tử thành một mạch hoàn thiện, đi từ đường nguồn bên trái sang đường nguồn bên phải. Đường nguồn bên trái là dây nóng, đường nguồn bên phải là dây trung hoà hay là đường trở về nguồn cung cấp. Dòng điện chạy từ trái qua tiếp điểm đóng đến cuộn dây hoặc các hộp trở về bên phải nguồn. b. Ngôn ngữ STL. Phương pháp liệt kê lệnh (STL) là phương pháp thể hiện chương trình dưới dạng tập hợp các câu lệnh. Mỗi câu lệnh trong chương trình, kể cả những câu lệnh hình thức biểu diễn một chức năng của PLC Để tạo ra một chương trình dạng STL, người lập trình cần phải hiểu rõ những phương thức sử dụng 9 bit ngăn xếp logic của S7-200. .4.2. Tập lệnh của S7-200. Tập lệnh của S7-200 được chia ra làm ba nhóm: - Các lệnh mà khi thực hiện thì làm việc độc lập không phụ thuộc vào giá trị logic của ngăn xếp (lệnh vô điều kiện). - Các lệnh chỉ thực hiện được khi bit đầu tiên của ngăn xếp có giá trị logic bằng 1 (lệnh có điều kiện). - Các nhãn lệnh đánh dấu vị trí trong tập lệnh. Cả hai phương pháp LAD và STL sử dụng ký hiệu I để chỉ định việc thực hiện tức thời ,tức là giá trị được chỉ định trong lệnh vừa được chuyển vào thanh ghi ảo đồng thời được chuyển tới tiếp điểm được chỉ dẫn trong lệnh ngay khi lệnh được thực hiện chứ không phải chờ tới giai đoạn trao đổi tới ngoại vi của vòng quét. Một số lệnh cơ bản dùng trong lập trình: - Các lệnh vào ra: Load (LD): Lệnh nạp giá trị logic của một tiếp điểm vào trong bit đầu tiên của ngăn xếp, các giá trị cũ còn lại trong ngăn xếp bị đẩy lùi xuống một bit. Load Not (LDN): Lệnh LDN nạp giá trị logic nghịch đảo của một tiếp điểm trong bit đầu tiên của ngăn xếp, các giá trị còn lại trong ngăn xếp bị đẩy lùi xuống một bit. - Các lệnh ghi/xoá giá trị cho tiếp điểm: + Set (S): Lệnh dùng để đóng/ngắt tiếp điểm gián đoạn đã được thiết kế + Reset (R): Lệnh dùng để đóng và cắt các tiếp điểm gián đoạn đã được thiết kế, trong LAD logic điều khiển dòng điện đóng/cắt các cuộn dây đầu ra. Khi dòng điều khiển đến các cuộn dây thì các cuộn dây đóng/mở các tiếp điểm (hoặc một dãy các tiếp điểm). Kết luận: + Chương 3 giới thiệu chung về PLC S7-200 tạo tiền đề để ứng dụng viết chương trình trong thiết kế trạm trộn bê tông. . hổ trợ rất tốt cho việc lập trình d ng ngôn ng lad để kể các ch th ch trong ch ng trình để dễ đọc hơn. 3. 3 Nguyên tắc hoạt đ ng. Khi ch ng trình được. trong bộ nhớ kh ng bị mất. - C ng truyền th ng: PLC luôn d ng c ng truyền th ng để trao đổi dữ liệu ch ng trình, các loại c ng truyền th ng thư ng dùng