D. Phương pháp nghiên cứu
F. Ứng dụng và nhu cầu thực tế của đề tài
3.2 Đặc trưng kỹ thuật của PLC S7-200 CPU22X
Đầu vào (Input): I0.0 → I0.7; I1.1 → I1.5. Đầu ra (Output): Q0.0 → Q0.7; Q1.0 → Q1.1. Bộđệm ảo đầu vào: I0.0 → I15.7 (128 đầu vào). Bộđệm ảo đầu ra: Q0.0 → Q15.7 (128 đầu ra). Đầu vào tương tự: AIW0 → AIW62.
Đầu ra tương tự: AQW0 → AQW62. Vùng nhớ V: VB0 → VB5119.
Vùng nhớ L(địa phương): LB0 → LB63. Vùng nhớ M: M0.0 → M31.7.
Vùng nhớ SM: SM0.0 → SM549.7.
Vùng nhớ Timer: T0 → T225. Vùng nhớ Counter: C0 → C225.
Vùng nhớ bộđếm tốc độ cao: HC0 → HC5.
Vùng nhớ trạng thái (logic tuần tự): S0.0 → S31.7. Vùng nhớ thanh ghi tổng: AC0 → AC3.
Khảnăng quản lý Label: 0 → 255.
Khảnăng quản lý chương trình con: 0 → 63. Khảnăng mở rộng chương trình ngắt: 0 → 127.
3.2.2Cấu hình vào ra của S7-200 CPU22X AC/DC/RELAY
Bảng 3.2 Các module mở rộng của S7-200 CPU224
Tên module mở rộng Kiểu
Module số
Đầu vào 8DI (VDC) 8DI (VAC)
Đầu ra 8DO (VDC) 8DO (VAC) 8DO (Relay)
Kết hợp 4DI/4DO 8DI/8DO 16DI/16DO
4DI/4DO(Relay) 8DI/8DO(Relay) 16DI/16DO(Relay) Module tương tự
Đầu vào 4AI 4AI(Thermocoupler) 2AI(RTD)
Đầu ra 2AO Kết hợp 4AI/1AO
Module thông minh Vị trí Modem PROFIBUS-DP
Module thu thập dữ
liệu hiện trường AS-Interface
3.2.3Cấu hình phần cứng
Mô tảcác đèn báo trên CPU 224.
SF (đèn đỏ): Đèn đỏ SF báo hiệu hệ thống bị lỗi. Đèn SF sáng lên khi PLC có lỗi.
RUN (đèn xanh): PLC đang làm việc và thực hiện chương trình được nạp vào trong bộ nhớ chương trình.
STOP (đèn vàng): PLC đang ở chếđộ dừng.
I.x.x (đèn xanh): Chỉ định trạng thái mức logic tức thời của cổng vào.
Q.x.x (đèn xanh): Chỉđịnh trạng thái mức logic tức thời của cổng ra. Chọn chếđộ làm việc trên CPU 224.
RUN: Cho phép PLC thực hiện chương trình trong bộ nhớ. PLC S7 – 200 chuyển sang chếđộ STOP khi CPU có sự cố hoặc gặp lệnh STOP.
STOP: Cưỡng bức PLC dừng chương trình đang chạy và chuyển sang chế độ STOP. Và ở chế độ STOP cho phép PLC hiệu chỉnh, nạp, xóa một chương trình.
TERM: Cho phép người dùng từ máy tính quyết định chọn một trong hai chếđộ làm việc cho PLC.
3.2.4Khối truyền thông
S7-200 sử dụng cổng truyền thông nối tiếp RS485để phục vụ việc ghép nối với thiết bị lập trình hoặc các trạm PLC khác.Tốc độ truyền cho máy lập trình kiểu PPI là 9.6 kbps, tốc độ truyền cung cấp của PLC theo kiểu tựdo là 300 baud đến 38400 baud.
Giao tiếp PLC – 200 với PC thông qua cổng RS 232 cần có cáp nối PC/PPI với bộ chuyển đổi RS232/RS485 và qua cổng USB dùng cáp USB/PPI.
3.2.5Card nhớ, pin, clock
S7 – 200 cung cấp nhiều biện pháp đảm bảo cho chương trình người dùng, dữ liệu không bị mất đi khi mất nguồn điện. Ví dụ CPU 224 khoảng 100 giờ. Vùng nhớ EEPROM cho phép lưu chương trình, các vùng nhớ được người dùng chọn chứa vào
EEPROM và cấu hình dữ liệu. Cho phép gắn thêm Pin để nuôi Ram, cho phép kéo dài thời gian lưu trữ dữ liệu, có thể lên tới 200 giờ khi mất nguồn điện.
Card nhớ: Được sử dụng để lưu trữ chương trình. Chương trình chứa trong card nhớ bao gồm: program block, data block, system block, công thức, dữ liệu đo, và các giá trịcưỡng bức.
Card pin: Dùng để tăng thời gian lưu trữ các dữ liệu trong bộ nhớ. Nguồn pin được tựđộng chuyển sang khi tụ trong PLC xả hết. Và có thể lên tới 200 ngày. Card block/ Battery module: Đồng hồ thời gian thực cho CPU và nguồn pin để
nuôi đồng hồvà lưu dữ liệu.
3.2.6Kết nối ngoại vi với PC
Đối với các thiết bị lập trình của hãng Siemens có các cổng giao tiếp PPI thì kết nối trực tiếp với máy tính thông qua một sợi cáp. Tuy nhiên đối với máy tính cá nhân cần thiết phải có cáp chuyển đổi PC/PPI. Có hai loại cáp chuyển đổi là cáp RS232/PPI Multi-Master, cáp USB/ PPI Multi Master.
a. Cáp RS232/PPI Multi-Master
Tùy theo tốc độ truyền giữa máy tính và CPU mà các công tắc 1, 2, 3 được đểở vị trí thích hợp. Thông thường đối với CPU 22X thì tốc độ truyền thường đặt là 9.6kbaud (tức công tắc 1,2,3 được đặt theo thứ tự 010).
Tùy theo truyền thông 10bit hay 11bit mà công tắc 7 được đặt ở vị trí thích hợp. Khi kết nối bình thường với máy tính thì công tắc 7 chọn ở chếđộ truyền thông 11bit (công tắc 7 đặt ở vị trí 0).
Công tắc 6 ở cáp RS232/PPI Multi-Master được sử dụng để kết nối port truyền thông RS232 của 1 modem với S7-200 CPU. Khi kết nối bình thường với máy tính thì công tắc 6 được đặt ở vị trí Data Communication Equipment (DCE) (công tắc 6 ở vị trí 0). Khi kết nối cáp PC/ PPI với một modem thì port RS232 của cáp PC/PPI được đặt ở vị trí Data Teminal Equipment (DTE) (công tắc 6 ở vị trí 1).
Công tắc 5 được sử dụng để đặt cáp RS232/PPI Multi-Masterthay thế cáp PC/PPI hoặc hoạt động ở chế độ Freeport thì đặt ở chếđộ PPI/Freeport (công tắc 5 ở vị trí 0). Nếu kết nối bình thường là PPI (master) với phần mềm Microwin Step 7 V3.2 SP4 hoặc cao hơn thì đặt ở chếđộ PPI (công tắc 5 ở vị trí 1).
b. Cáp USB/ PPI Multi Master
Hình 3.6 Hình dáng cáp USB/PPI
Cách thức kết nối của cáp USB/PPI Multi-Master cũng tương tự như cáp RS232/PPI Multi-Master. Để sử dụng cáp này, phần mềm cần phải là Step 7 Micro/Win V3.2 SP4( hoặc cao hơn). Cáp này chỉ có thể được sử dụng với loại CPU 22x hoặc sau này. Cáp USB không hỗ trợ truyền thông Freeport và Dowload cấu hình màn hình TP070 từ phần mềm TP Designer.
3.3 Những khái niệm cơ sở của PLC S7-200 3.3.1Khái niệm vòng quét của PLC 3.3.1Khái niệm vòng quét của PLC
a) Đọc dữ liệu đầu vào:
Đọc các trạng thái vật lý (Input) vào bộđệm ảo (IR – Input Register).
b) Thực thi chương trình:
CPU đọc dữ liệu từ IR, thực hiện chương trình phần mềm, kết quảđược lưu lại ở các vùng nhớ thích hợp và bộđệm ảo đầu ra (OR – Output Register).
c) Xử lý các yêu cầu truyền thông (option):
Nếu có yêu cầu truyền thông và xử lý ngắt.
d) Tự chuẩn đoán lỗi:
CPU kiểm tra lỗi của hệ điều hành trong ROM, các vùng nhớ và các trạng thái làm việc của các module mở rộng.
e) Xuất kết quảởđầu ra:
CPU đọc kết quả từ OR, và xuất kết quả ra các cổng vật lý.
Một sốlưu ý:
Đầu vào số
Nếu không dùng tính năng I (Immediately) thì dữ liệu đầu vào được cập nhật tại bộđệm ảo.
Nếu dùng tính năng này, chương trình bỏ qua bộđệm ảo. Đầu vào tương tự
Nếu bỏ qua tính năng lọc tương tự, thì chương trình sẽ lấy trục tiếp dữ liệu tại cỗng vật lý.
Mô tả vòng quét:
Hình 3.8Chu kỳ quét S7 – 200
Đọc tín hiệu ngõ vào: Sao chép trạng thái của các ngõ vào vật lý vào bộ đệm ngõ vào. Ngõ vào có thể là Digital inputs hoặc Analog inputs.
Thực thi chương trình: S7 – 200 thực hiện các lệnh trong chương trình và lưu giá trị vào vùng nhớ. Khi thực hiện chu kỳ quét thì lệnh được thực thi từđầu đến cuối. Nếu có sử dụng ngắt trong chương trình thì nó không được thực thi ở chu kỳ quét bình thường, nó được thực hiện khi có sự kiện ngắt tại bất kỳ thời điểm nào của chu kỳ quét.
Xử lý bất kỳ yêu cầu truyền thông nào: Trong chu kỳ quét, S7 – 200 xử lý bất kỳ thông tin nào nhận được từ cổng truyền thông hoặc các module truyền thông.
Thực hiện tự chuẩn đoán CPU: S7 – 200 tự kiểm tra để đảm bảo phần firmware, bộ nhớ chương trình, và bất kỳ các module mở rộng nào đang làm việc đúng.
Xuất ra ngõ ra: Các giá trịđược lưu trong vùng đệm ngõ ra sẽđược xuất ra các ngõ ra vật lý. Read Inputs (Đọc tín hiệu ngõ vào) Update Outputs (Cập nhật đầu ra) Execute Program (Thực thi chương trình) Diagnnostics Communicaitons
(Tự động kiểm tra vàtruyền
3.3.2Truy cập dữ liệu tại các vùng nhớ của S7-200 3.3.2.1Truy cập dữ liệu trực tiếp 3.3.2.1Truy cập dữ liệu trực tiếp
a. Truy cập theo bít
b. Truy cập theo byte
MSB LSB
VB100
c. Truy cập theo Word (từ)
MSB LSB 7 VB100 0 Địa chỉ theo bit Dấu phân cách (bắt buộc) Địa chỉ byte nhớ Tên vùng nhớ 1 2 . 4 1 2 3 4 5 6 7 8 Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Địa chỉ byte cao Kiểu truy cập Tên vùng nhớ V W 100 V B 100 Địa chỉ byte Kiểu truy cập Tên vùng nhớ
VW100
d. Truy cập theo Double Word (từ kép)
MSB LSB
31 VB100 23 VB101 16 15 VB102 8 7 VB103 0
3.3.2.2Phân chia vùng nhớ trong S7-200 a. Vùng đệm ảo đầu vào (I;I0.0-I15.7)
CPU sẽ truy cập các đầu vào vật lý tại đầu mỗi chu kỳ quét và ghi dữ liệu vào bộđệm ảo.
Định dạng truy cập:
Bit: I[byte address].[bit address] I0.1
Byte, Word, or Double Word I[size][starting byte address] IB4
b. Vùng đệm đầu ảo ra (Q;Q0.0-Q15.7)
Cuối mỗi chu kỳ quét, CPU S7-200 sẽ truy cập dữ liệu từ bộ đệm ảo xuất ra các đầu ra vật lý.
Định dạng truy cập:
Bit: Q[byte address].[bit address] Q1.1
Byte, Word, or Double Word Q[size][starting byte address] QB5
c. Vùng nhớ biến (V;VB0-VB5119)
Vùng nhớ này thường đểlưu các kết quả trung gian của chương trình. Định dạng truy cập: 15 VB100 8 7 VB101 0 Địa chỉ byte cao Kiểu truy cập Tên vùng nhớ V D 100 VD100
Bit: V[byte address].[bit address] V10.2 Byte, Word, or Double Word V[size][starting byte address] VW100
d. Vùng nhớ bít (M;M0.0-M31.7)
Vùng nhớ này thường đểlưu các kết quả trung gian của một thao tác hoặc các thông tin điều khiển khác.
Định dạng truy cập:
Bit: M[byte address].[bit address] M26.7
Byte, Word, or Double Word M[size][starting byte address] MD20
e. Vùng đếm bộ nhớ tốc độ cao (HC;HC0-HC5)
Bộđếm tốc độ cao hoạt động độc lập với chu kỳ quét của PLC. Current value là một giá trị đếm 32bit có dấu, là giá trị chỉ đọc và được gán địa chỉ dưới dạng double word.
Định dạng truy cập:
Format: HC[high-speed counter number] HC1
f. Vùng nhớ thời gian (T;T0-T225)
Vùng nhớ này dành cho các bộ thời gian của S7-200. Đối với một bộ Timer có hai hình thức truy cập vùng nhớ, truy cập theo Timer bit hoặc Current Value. Định dạng truy cập:
Format: T[timer number] T24
Tùy theo lệnh sử dụng trong chương trình mà cho phép ta truy cập theo Timer bit hay Current value.
g. Vùng nhớ bộđếm (C;C0-C225)
Vùng nhớ này dùng cho các bộ đếm của S7-200. Đối với một bộ Counter có hai hình thức truy cập vùng nhớ, truy cập theo Counter bit hoặc Current value. Định dạng truy cập:
Tùy theo lệnh sử dụng trong chương trình mà cho phép ta truy cập theo Counter bit hay Current value.
h. Vùng nhớ thanh ghi tổng (AC;AC0-AC3)
Thanh ghi tổng thường được dùng để truyền tham số vào và ra cho các thủ tục, lưu trữ các kết quả trung gian của một phép tính.
Định dạng truy cập:
Format: AC[accumulator numbet] AC0
i. Vùng nhớđặc biệt (SM)
Vùng nhớ này cung cấp các bit truyền thông giữa CPU và chương trình. Các bit này được dùng để lựa chọn và điều khiển một số chức năng đặc biệt của CPU S7-200.
Định dạng truy cập:
Bit: S[byte address].[bit address] S3.1
Byte, Word, or Double Word S[size][starting byte address] SB4
j. Vùng nhớđầu vào tương tự (AL)
S7-200 chuyển một giá trịtương tự thành một giá trị sốcó độ lớn 16bit. Do độ lớn dữ liệu truy cập là một từ, mặc khác khi truy cập đầu vào tương tự luôn sử dụng định dạng theo từ, do vậy địa chỉ byte cao luôn là số chẵn. Ví dụ ALW0, ALW2, ALW4. Giá trịđầu vào analog dưới dạng chỉđọc.
Định dạng truy nhập:
Format: AIW[starting byte address] AIW4
k. Vùng nhớđầu ra tương tự (AQ)
S7-200 chuyển một giá trị số có độ lớn 16 bit thành một giá trị tương tự dưới dạng dòng điện hoặc điện áp tỷ lệ với giá trị đó. Do độ lớn giá trị chuyển đổi là một từ, nên địa chỉ byte cao luôn là số chẵn. Ví dụ: AQW0, AQW2, AQW4. Giá trị đầu ra analog dưới dạng chỉ ghi.
Định dạng truy cập:
Format: AQW[starting byte address] AQW4
3.3.2.3Truy cập dữ liệu gián tiếp thông qua con trỏ a. Con trỏ (Pointer)
Là một ô nhớcó kích thước một từ kép (double word) chứa địa chỉ của một ô nhớ khác. Khi ta truy cập vào ô nhớ của con trỏ có nghĩa ta đang đọc địa chỉ của ô nhớ mong muốn.
Có 3 vùng nhớ trong S7-200 cho phép dùng làm con trỏ: V,L, AC1, AC2, AC3.
S7-200 cho phép dùng con trỏđể truy cập các địa chỉ nhớ AL, AQ, HC, SM, L và địa chỉ dưới dạng bit.
S7-200 cho phép dùng con trỏđể truy cập các địa chỉ nhớ sau: I, Q, V, M, S, T (timer value), C (current value).
Khi sử dụng cách truy cập thông qua con trỏ, trong S7-200 sử dụng 2 ký tự&và *.
Ký tự&: dùng để khởi tạo con trỏ.
Ví dụ: MOVD & VB200, AC1.
Chuyển địa chỉ VB200 (không chuyển nội dung) vào thanh ghi AC1. Thanh ghi AC1 trở thành con trỏ.
Ký tự*: dùng để truy cập nội dung ô nhớ có địa chỉ chứa trong con trỏ.
Ví dụ: MOVB *AC1, VB200.
Chuyển nội dung ô nhớ có địa chỉ lưu trong con trỏ AC1 vào ô nhớ có địa chỉ VB200.
b. Lưu ý: đểthay đổi nội dung con trỏ
Nếu truy cập theo byte: Tăng nội dung con trỏ lên 1. Nếu truy cập theo word: Tăng nội dung con trỏ lên 2.
Nếu truy cập theo double word: Tăng nội dung con trỏ lên 4.
3.3.2.4Lựa chọn ngôn ngữ lập trình
Trong S7-200 cho phép lựa chọn 3 ngôn ngữ lập trình: Ngôn ngữ LADDER (LAD).
Ngôn ngữ STL. Ngôn ngữ FBD.
Ba ngôn ngữ này về mặt hình thức có thể chuyển đổi lẫn cho nhau. Việc lựa chọn ngôn ngữ lập trình là tùy theo thói quen, sở thích cũng như kinh nghiệm của người sử dụng.
a. Ngôn ngữ LADDER
Là ngôn ngữ lập trình đồ họa dựa trên cơ sở sơ đồ trang bị điện, việc kết nối lập trình đồ họa giống với việc thiết lập các sơ đồ relay-contactor. Một chương trình nguồn viết bằng LAD được tổ chức thành các network, mỗi network thực hiện một công việc nhỏ.
S7-200 đọc chương trình từ trên xuống dưới, từ trái qua phải, sau đó lập lại ở vùng quét tiếp theo.
Hình 3.9 Lập trình bằng ngôn ngữ LADDER
b. Ngôn ngữ STL
Là ngôn ngữ lập trình dưới dạng Text gần giống với ngôn ngữ lập trình trong vi điều khiển và vi xử lý, là một ngôn ngữ mạnh cho phép tạo ra một chương trình mà LAD và FBD rất khó tạo ra. Một chương trình viết dưới dạng STL được tổ chức thành các network, mỗi network thực hiện một công việc nhỏ. S7-200 đọc chương trình từ trên xuống dưới, sau đó lập lại vòng quét tiếp
theo.
Hình 3.10 Lập trình bằng ngôn ngữ STL
c. Ngôn ngữ FBD
Là ngôn ngữ lập trình đồ họa dựa trên cơ sở kết nối các khối hàm, sử dụng các ký hiệu logic giống với đại số boolean. Các hàm toán học phức tạp cũng được thể hiện dưới dạng khối với các đầu vào đầu ra thích hợp.
S7-200 đọc chương trình từ trên xuống dưới, từ trái qua phải, sau đó lặp lại ở vòng quét tiếp theo.
CHƯƠNG 4: KẾT NỐI VÀ ĐIỀU KHIỂN GIỮA WINCC VÀ PLC
S7-200 PC ACCESS được dùng trong luận văn này với mục đích kết nối giữa S7-200 và WinCC, để làm được điều này ta tìm hiểu cách cài đặt và sử dụng của nó dưới đây.
4.1 Cài đặt S7-200 PC Access
Các bước thực hiện:
Tại thư mục chứa chương trình cài đặt. Chọn file Setup, rồi nhấp đôi để chạy