Cấu trúc phần cứng của S7-200

Một phần của tài liệu thiết kế và chế tạo module huấn luyện tự động hóa (Trang 43 - 106)

3.2.2.2.1 Hình dạng và cấu trúc bên ngoài.

 Các đầu vào/ra số:

- Đầu vào (Ix.x): kết nối với nút bấm, công tắc, sensor…với điện áp vào tiêu chuẩn 24VDC.

- Đầu ra (Qx.x): kết nối với thiết bị điều khiển với các điện áp 24VDC/220VAC ( tùy theo loại CPU ).

- Đầu vào nguồn: 24VDC/220VAC ( tùy theo loại CPU ).

 Đèn trạng thái:

- Đèn RUN (màu xanh): Chỉ báo PLC đang ở chế độ làm việc và thực hiện chương trình đã được nạp vào bộ nhớ chương trình.

- Đèn STOP (màu vàng): Chỉ báo PLC đang ở chế độ dừng và không thực hiện chương trình, các đầu ra đều ở trạng thái “OFF”.

- Đèn SF/DIAG: Chỉ báo hệ thống bị hỏng tức do lỗi phần cứng hoặc hệ điều hành.

- Đèn Ix.x(màu xanh): Chỉ báo trạng thái của đầu vào số(ON/OFF). - Đèn Qx.x(màu xanh): Chỉ báo trạng thái của đầu ra số(ON/OFF).

 Port truyền thông.

- Port truyền thông nối tiếp RS485: Giao tiếp với PC, PG, TD200, OP, mạng biến tần…

- Port cho module mở rộng: Kết nối với module mở rộng.

 Công tắc chuyển chế độ.

- RUN: Cho phép PLC thực hiện chương trình, khi chương trình lỗi hoặc gặp lệnh STOP thì PLC tự động chuyển sang chế độ STOP mặc dù công tắc vẫn ở vị trí RUN ( quan sát đèn trạng thái ).

- TERM: Cho phép người dùng chọn một trong hai chế độ RUN/STOP từ xa, ngoài ra còn được dùng để download chương trình người dùng.

 Vít chỉnh tương tự.

Mỗi PLC đều có từ một đến hai vít chỉnh tương tự ta có thể xoay được 270 độ để thay đổi giá trị của vùng nhớ biến trong chương trình.

Hình 3. 25: Chi tiết phần cứng PLC S7-200

3.2.2.2.2 Cấu trúc phần cứng.

Cấu trúc phần cứng của một PLC gồm có các module sau: - Module nguồn.

- Module đầu vào. - Module đầu ra.

- Module đơn vị xử lý trung tâm (CPU). - Module bộ nhớ.

- Module quản lý phối ghép vào ra.

Đơn vị xử lý trung tâm (CPU Central Processing Unit).

CPU dùng để xử lý, thực hiện những chức năng điều khiển phức tạp quan trọng của PLC. Mỗi PLC thường có một đến hai đơn vị xử lý trung tâm.

CPU thường được chia làm hai loại: đơn vị xử lý “một bit” và đơn vị xử lý “từ ngữ”:

- Đơn vị xử lý “một bit”: Chỉ áp dụng cho những ứng dụng nhỏ, đơn giản, chỉ đơn thuần xử lý ON/OFF nên kết cấu đơn giản, thời gian xử lý dài.

- Đơn vị xử lý “từ ngữ”: có khả năng xử lý nhanh các thong tin số, văn bản, phép toán, đo lường, đánh giá, kiểm tra nên cấu trúc phần cứng phức tạp hơn nhiều tuy nhiên thời gian xử lý được cải thiện nhanh hơn.

Bộ nhớ.

Bao gồm các loại bộ nhớ RAM, ROM, EEFROM, là nơi lưu trữ các thông tin cần xử lý trong chương trình của PLC. (adsbygoogle = window.adsbygoogle || []).push({});

Bộ nhớ được thiết kế thành dạng module để cho phép dễ dàng thích nghi với các chức năng điều khiển với các kích cỡ khác nhau. Muốn mở rộng bộ nhớ chỉ cần cắm thẻ nhớ vào rãnh cắm chờ sẵn trên module CPU.

Bộ nhớ có một tụ dùng để duy trì dữ liệu chương trình khi mất điện.

Khối vào/ra.

Khối vào ra dùng để giao tiếp giữa mạch vi điện tử của PLC (điện áp 5/15VDC) với mạch công suất bên ngoài (điện áp 24VDC/220VAC).

Khối ngõ vào thực hiện việc chuyển mức điện áp từ cao xuống mức tín hiệu tiêu chuẩn để đưa vào bộ xử lý.

Khối ngõ ra thực hiện việc chuyển mức tín hiệu từ tiêu chuẩn sang tín hiệu ngõ ra và cách ly.

Bộ nguồn.

Biến đổi từ nguồn cấp bên ngoài vào để cung cấp cho sự hoạt động của PLC.

Dùng để phối ghép giữa PLC với các thiết bị bên ngoài như máy tính, thiết bị lập trình, bảng vận hành, mạng truyền thong công nghiệp.

3.2.2.3 Cấu trúc bộ nhớ. 3.2.2.3.1 Phân chia bộ nhớ

Bộ nhớ của PLC S7-200 được chia thành bốn vùng cơ bản và hầu hết có thể đọc ghi được chỉ trừ vùng nhớ đặc biệt (SM) chỉ có thể truy cập để đọc.

Hình 3. 27: Cấu trúc bộ nhớ của PLC

- Vùng nhớ chương trình: Là miền nhớ được dùng để lưu trữ các lệnh được dùng

trong chương trình.Vùng này thuộc kiểu non-volatile có thể đọc và ghi được. - Vùng nhớ tham số: Dùng để lưu giữ các tham số như từ khóa, địa chỉ trạm… Vùng

này thuộc kiểu non-volatile có thể đọc và ghi được.

- Vùng dữ liệu: Dùng để cất giữ các dữ liệu của chương trình bao gồm kết quả các

phép tính, các hằng số được định nghĩa trong chương trình, bộ đệm truyền thông… - Vùng đối tượng: Bao gồm các bộ đếm, bộ định thì, các cổng vào ra tương tự. Vùng

này không thuộc kiểu non-volatile nhưng có thể đọc và ghi được.

Hai vùng nhớ cuối có ý nghĩa quan trọng trong việc thực hiện một chương trình.

3.2.2.3.2 Vùng nhớ chƣơng trình

- OB1: Chứa chương trình chính, các lệnh trong khối này luôn được quét trong mỗi vòng quét.

- SUBROUTIN: Chứa chương trình con, được tổ chức thành hàm và có biến hình thức để trao đổi dữ liệu, chương trình con sẽ được thực hiện khi có lệnh gọi từ chương trình chính.

- INTERRUPT: Miền chứa chương trình ngắt, được tổ chức thành hàm và có khả năng trao đổi dữ liệu với bất kỳ một khối chương trình nào khác. Chương trình này sẽ được thực hiện khi có sự kiện ngắt xảy ra.

3.2.2.3.3 Vùng nhớ dữ liệu

Vùng dữ liệu là một vùng nhớ động. Nó có thể được truy cập theo từng bit, từng byte, từng từ đơn (word) hay từ kép (double word) và được sử dụng làm miền lưu trữ dữ liệu cho các thuật toán, các hàm truyền thông, lập bảng, các hàm dịch chuyển, xoay vòng thanh ghi, con trỏ địa chỉ…

Vùng dữ liệu được chia thành những vùng nhớ nhỏ để phục vụ cho những mục đích và công dụng khác nhau, bao gồm các vùng sau:

- V (Variable memory): Vùng nhớ biến. - I (Input image register): Vùng đệm đầu vào. - Q (Output image register): Bùng đệm đầu ra. - M (Internal memory bits): Vùng nhớ các bit nội. - SM (Special memory): Vùng nhớ đặc biệt. Cách thức truy cập địa chỉ của vùng dữ liệu:

Truy cập trực tiếp.

- Truy cập theo bit: Tên miền nhớ + địa chỉ byte + • + chỉ số bit.Ví dụ:V10.4 chỉ bit

4 của byte 10 thuộc miền nhớ V. (adsbygoogle = window.adsbygoogle || []).push({});

- Truy cập theo byte: Tên miền nhớ + B + địa chỉ byte. Ví dụ VB15 chỉ byte 15 trong miền nhớ V.

từ đơn gồm hai byte là VB183 và VB184 trong đó VB183 là byte cao trong từ.

- Truy cập theo từ kép: Tên miền + D + địa chỉ byte cao trong miền.Ví dụ VD345 chỉ từ kép gồm 4 byte 345, 346, 347, 348 trong miền nhớ V trong đó 345 là byte cao trong từ kép.

Truy cập gián tiếp.

Truy cập địa chỉ gián tiếp thông qua con trỏ (pointer). Con trỏ là một miền nhớ từ kép chứa địa chỉ của vùng nhớ khác. Các vùng nhớ V, L và thanh ghi chỉ mục ( AC1,AC2,AC3 ) có thể được sử dụng như là con trỏ. Để sử dụng con trỏ phải sử dụng lệnh MOVE_D để chuyển địa chỉ của vùng nhớ được định địa chỉ gián tiếp vào vùng con trỏ. Con trỏ cũng có thể được chuyển tới chương trình con như là một tham số.

S7-200 cho phép con trỏ truy cập các vùng nhớ V,M,I,Q,S,T,C theo giá trị hiện hành và không cho phép truy cập theo từng bit và các vùng nhớ AI, AQ, HC, SM, L.

Để truy cập gián tiếp dữ liệu địa chỉ của một v ùng nhớ, phải tạo một con trỏ cho vùng đó bằng cách sử dụng ký tự & cùng với vùng nhớ có địa chỉ cần lấy. Toán hạng đầu vào của lệnh phải bắt đầu với ký tự & để chỉ rằng địa chỉ vùng nhớ, thay cho nội dung của nó được chuyển vào vùng định nghĩa toán hạng đầu ra của lệnh. Quy ước sử dụng con trỏ để truy nhập như sau:

- & địa chỉ byte (cao): Toán hạng lấy địa chỉ của byte, từ hoặc từ kép.

VD: MOVD &VW100,AC1: Tạo con trỏ bằng cách đưa địa chỉ byte cao VB100 vào trong thanh ghi AC1, thanh ghi AC1 sẽ chứa địa chỉ của VW100. - con trỏ: Toán hạng lấy nội dung của byte, từ hoặc từ kép mà con trỏ chỉ vào.

Theo ví dụ trên, khi đã tạo con trỏ ta có thể lấy nội dung của AC1 và chuyển vào VW300 bằng cách dùng toán hạng lấy nội dung trỏ vào thanh ghi AC1.

VD: MOVW &AC1,VW300: Nội dung của AC1 được chuyển vào VW300.

3.2.2.3.4 Vùng đối tƣợng

Vùng đối tượng được sử dụng để lưu giữ dữ liệu cho các đối tượng lập trình như các giá trị tức thời, giá trị đặt trước của bộ đếm, hay timer.

Dữ liệu kiểu đối tượng bao gồm các thanh ghi của Timer, Counter, HSC, bộ đệm vào ra tương tự và các thanh ghi chỉ mục.

3.2.2.4 Kiểu dữ liệu

Trong PLC S7-200 có các kiểu dữ liệu được cho trong bảng sau: Kiểu dữ liệu Kích thước Nội dung Dải giá trị

BOOL 1 bit Boolean 0;1

BYTE 8 bits Số nguyên không dấu 0 ÷ 255

BYTE 8 bits Số nguyên có dấu (chỉ áp dụng cho lệnh SHRB)

-128 ÷ 127

WORD 16 bits Số nguyên không dấu 0 ÷ 65535

INT 16 bits Số nguyên có dấu -32678 ÷32676

DWORD 32 bits Số nguyên không dấu 0 ÷ 4294967295

DINT 32 bits Số nguyên có dấu -2147383648÷2147383648 REAL 32 bits Số thực có dấu theo IEEE -2147383648÷2147383648 STRING 0–255 bytes Kiểu dữ liệu chuỗi ASCII Mã ASCII từ 128 ÷ 255

3.2.2.5 Thiết bị lập trình

Có hai loại thiết bị có thể dùng để lập trình cho PLC S7- 200 là PG và PC.

- PG: Là thiết bị lập trình chuyên dụng được dùng cho PLC S7-200 tuy nhiên chỉ sử dụng để lập trình với ngôn ngữ STL

mềm này cho phép lập trình với cả ba ngôn ngữ là STL, LAD và FBD. Để cài phần mềm này người phải có bản quyền và PC phải cài hệ điều hành WIN98/2000/NT/XP.Hiện nay hầu hết sử dụng STEP7MICROWIN 3.0, 3.2, 4.0 để lập trình cho S7 để có thể sử dụng được những ứng dụng nâng cao

3.2.2.5.1 Giao diện làm việc

Sau khi đã cài đặt phần mềm STEP7-MICROWIN và vào chương trình làm việc, giao diện làm việc sẽ được thể hiện như sau: (adsbygoogle = window.adsbygoogle || []).push({});

Hình 3. 28: Giao diện STEP7-MICROWIN

- Navigation Bar: Thể hiện các khối và các lệnh làm việc được tạo sẵn trong phần mềm. Để sử dụng các khối này ta chỉ cần kích vào nút biểu tượng tương ứng với khối cần dùng.

- Instruction Tree: Thể hiện tất cả các khối và lệnh sử dụng trong chương trình dưới dạng cây thư mục. muốn làm việc với lệnh nào chỉ việc Click đúp chuột vào vị trí đó để chọn thiết bị làm việc.

- Các khối Cross Reference, Data Block, Status Chart, Symbol Table sẽ được trình bày chi tiết ở phần sau.

- Program Editor: Đây là vùng chính để thực hiện chương trình bằng cách đưa các lệnh vào trong vùng và sắp xếp chúng theo cách thức của người dùng để tạo ra một chương trình.

- Menu bar và Toolbar: Là các thanh công cụ giúp thực hiện nhanh các lệnh và chức năng sử dụng trong chương trình.

3.2.2.5.2 Các khối sử dụng trong giao diện lập trình 32.2.5.2.1 Khối Programe Block 32.2.5.2.1 Khối Programe Block

.1. Khối OB1: Là khối chứa chương trình chính, luôn được quét trong mỗi vòng vòng quét. Đây là khối chính trong việc thiết kế chương trình và bắt buộc phải có.

2. Khối SUBROUTIN: Là khối chứa chương trình con. Chương trình chứa trong khối này sẽ được thực hiện mỗi khi có lệnh gọi thực hiện từ chương trình chính.

3. Khối INTERRUPT: Là khối chứa chương trình ngắt. Khối này sẽ được thực hiện mỗi khi có sự kiện ngắt xảy ra.

Hình 3. 29: Cách tạo chương trình con hay chương trình ngắt

Có thể tạo nhiều chương trình con hay chương trình ngắt tuy nhiên không thể tạo nhiều chương trình chính do chương trình chính chỉ có một. Có thể xóa hay đổi tên

chương trình con hay chương trình ngắt bằng cách click chuột phải vào biểu tượng chương trình và chọn “Delete” hay “ Rename”

3.2.2.5.2.2 Khối Data Block

Đây là khối chứa dữ liệu của một chương trình. Ta có thể định dạng dữ liệu trước trong khối này và sử dụng chúng trong chương trình. Khi tải chương trình vào PLC thì toàn bộ nội dung của khối sẽ được lưu vào bộ nhớ của PLC. Khối chỉ làm việc với dữ liệu của vùng nhớ V.

Để tạo dữ liệu trong khối này ta có click vào biểu tượng trên màn hình hoặc trên cây thư mục chọn khối và click vào biểu tượng “USER”, khi đó màn hình chương trình sẽ chuyển sang làm việc với khối. Cách tạo dữ liệu được thể hiện bên dưới.

Ví dụ về cách tạo một Data Block :

3.2.2.5.2.3 Khối Symbol Table

... Khối này cho phép người dùng đặt biểu tượng và chú thích các địa chỉ sử dụng trong chương trình. Khi ta đặt biểu tượng ( symbol ) và chú thích ( comment ) thì trong chương trình sẽ thể hiện các biểu tượng này thay cho địa chỉ. Công việc này sẽ giúp cho người dùng dễ dàng giám sát các địa chỉ được sử dụng trong

chương trình.

Ví dụ về cách lập một Symbol Table.

Hình 3. 31: Cửa sổ Symbol Table

3.2.2.5.2.4 Khối Comunication

Khối này giúp người dùng kết nối với thiết bị lập trình bằng cách định dạng cho cổng giao tiếp.

Các bước thực hiện như sau:

1. Click chuột vào biểu tượng của khối trên màn hình giao diện chương trình người dùng, khi đó sẽ hiện ra một bảng thong báo như sau:

Hình 3. 32: Cửa sổ Comunications

Trong bảng này ta chọn địa chỉ của PLC, thường mặc định là 2, sau ô đó chọn ô “Search all baud rates” để tìm tất cả các tốc độ truyền thong yêu cầu, tiếp theo Click chuột vào biểu tượng “Set PG/PC interface” để cài đặt giao diện truyền thong, một cửa sổ sẽ hiện ra như sau:

Hình 3. 33: Cửa sổ Set PG/PC interface

Trong cửa sổ này ta chọn Properties để định dạng cổng truyền thông. Nếu ta dùng cổng truyền thông loại nào thì ta chọn loại đó, sau đó chọn các thông số cho chuẩn truyền thông như thể hiện bên dưới. Sau khi chọn xong các thông số ta nhấn “OK”để thoát khỏi cửa sổ này và quay lại cửa sổ trước đó, tại đây ta chọn chuẩn là PC/PPI cable (PPI) nếu cáp sử dụng là PPI, sau đó nhấn “OK”để thoát về cử sổ ban đầu. Tại đây ta click đúp chuột vào biểu tượng “Double - Click to refresh ”. Nếu quá trình giao tiếp thành công tại (adsbygoogle = window.adsbygoogle || []).push({});

đó sẽ hiển thị loại PLC đang kết nối có nghĩa là chương trình đã nhận dạng được loại PLC, nếu không sẽ hiển thị cảnh báo lỗi. Nếu có lỗi xảy ra ta phải kiểm tra thông báo lỗi để tìm cách khắc phục lỗi sau đó thực hiện lại các bước như trên.

Sau khi kết nối thành công ta tiến hành viết hoặc đọc chương trình, nếu muốn viết chương trình vào PLC thì ta chọn “Download” còn ngược lại thì chọn “Upload”. Để Upload hay Download thì người dùng phải kết nối cáp với PLC và chuyển PLC sang chế độ STOP. Việc này được thực hiện như sau:

- Từ thanh menu ta chọn „File” và kéo thả xuống, tại đây ta chọn Upload hoặc DownLoad

- Trên thanh Toolbar ta chọn mũi tên xuống cho việc DownLoad và mũi tên lên cho việc Upload.

- Nhấn phím Ctrl + U cho việc Upload và Ctrl + D cho việc DownLoad.

Hình 3. 34: Cửa sổ Upload/Download chương trinh xuống PLC

3.2.3 TRẠM I

3.2.3.1 Lựa chọn thiết bị

 Hệ thống sử dụng thiết bị điều khiển là PLC S7-300 của hang SIEMENS, PLC có tổng cộng 16 ngõ vào (Input) và 16 ngõ ra (Output).

Một phần của tài liệu thiết kế và chế tạo module huấn luyện tự động hóa (Trang 43 - 106)