Cấu trúc chương trình

Một phần của tài liệu Giáo trình kỹ thuật điều khiển lập trình (Trang 95)

b) Những khốiOB đặc biệt

3.1. Cấu trúc chương trình

3.1.1. Giới thiệu chung

3.1.1.1. Quy trình cơ bản để lập một chương trình điều khiển

Thường khi viết một chương trình điều khiển theo một yêu cầu cơng nghệ nào đĩ thường ta phải thực hiện theo những yêu cầu sau:

- Xác định thiết bị lập trình, các địa chỉ vào ra.

- Xác định dõ yêu cầu cơng nghệ và tìm ra luật tác động của hệ thống, từ đĩ kết hợp với PLC để gán cho chương trình các địa vào ra cụ thể theo thiết bị lập trình đã chọn

- Viết chương trình điều khiển (cĩ thể thực hiện mơ phỏng bằng phần mềm)

- Download và thử nghiệm chương trình viết được - Vận hành và thử nghiệm hệ thống.

Nội dung cụ thể cần quan tâm:

+ Dùng loại thiết bị lập trình gì?

Mục này ta quan tâm đến thiết bị lập trình là loại gì cĩ phù hợp về kinh tế và khả năng khai thác sử dụng hay khơng? Thơng thường thiết bị được mua về theo yêu cầu cơng nghệ. Dựa trên yêu cầu cơng nghệ mới xác định được số lượng các đầu vào ra cần phải dùng tới trên thiết bị lập trình. Nếu như chương trình điều khiển nhỏ dưới 4 đầu ra ta cĩ thể dùng LOGO của SIEMENS hay ZEN của OMRON..hoặc như chương trình điều khiển khác dài yêu cầu khối lượng đầu vào ra lớn hơn cĩ thể dùng tới các loại như CPM1A hay CQM1A của OMRON Chương trình điều khiẻn phức tạp cĩ thể chọn đến S5, S7-200, S7-300 của SIEMENS….

Nĩi chung các bộ điều khiển khả trình với các đặc điểm nổi trội giêng biệt đều cho phép ta viết được một chương trình điều khiển như ý muốn song phải lựa chọn chủng loại cho phù hợp về mặt cơng nghệ kinh tế và vốn đầu tư và phù hợp ngay cả về trình độ chuyên mơn của đội ngũ kỹ thuật cơng ty.

+ Xác định các địa chỉ vào ra

Mỗi một thiết bị lập trình khác nhau cĩ các địa chỉ vào ra khác nhau. Ta phải xác định chính xác. Nếu địa chỉ sai đi thì chương trinhg điều khiển khơng tác dụng và coi như nĩ bị sai.

Ví dụ như LOGO cĩ địa chỉ đầu vào là I1-:-I6 dạng logic và đầu ra là Q1- :-Q4 dạng tiếp điểm, CPM1A địa chỉ đầu vào lại là X ra là Y

Địa chỉ vào ra cho S7-300 được xác định bằng các vị trí cắm của các mơ đun được trình bày trang 55. Do S7-300 cĩ số lượng đầu vào ra tương đối lớn phụ thuộc vào sử dụng nhiều hay ít và với đặc điểm vị trí cắm các mơdun do người sử dụng thực hiện nên phải chú ý tới địa chỉ .

Ví dụ: Một mơ đun mở rộng cắm ở vị trí SLOT thứ 4 địa chỉ đầu vào nhận là I 0.0 – I3.7 song nếu chuyển sang cắm ở SLOT thứ 5 thì địa chỉ nĩ được gán cho là I4.0-I7.7.

+Xác định yêu cầu cơng nghệ –Kết hợp với PLC chọn lựa địa chỉ

Yêu cầu cơng nghệ luơn cho trước người lập trình phải phân tích yêu cầu cơng nghệ để tìm ra thứ tự tác động mạch cái gì tác động rồi mới đến cái khác tiếp theo tác động.

Từ đĩ ta gán cho mỗi đối tượng đầu vào hay đầu ra mang địa chỉ của PLC ta sử dụng.

Ví dụ:

Sử dụng PLC S7-300 viết chương trình điều khiển sao cho khi nút M được ấn thì động cơ Đ1 chạy, 5 giây sau động cơ Đ2 chạy và 5 giây tiếp theo động cơ Đ3 chạy. Khi ấn nút D thì dừng cả 3 động cơ.

Cờu trúc phần cứng của PLC S7-300 như hình vẽ dưới.

Phân tích :

Yêu cầu cơng nghệ bài ra khơng cĩ gì là phức tạp cả và việc của ta chỉ cần gán địa chỉ sau đĩ đi viết chương trình là song. Cái ta cần quan tâm ở đây là xác định các địa chỉ đầu vào, ra là như thế nào? Giải pháp như sau:

+ Căn cứ vào các vị trí của các mơdun vào ra (ở SLOT nào) ta xác định được các địa chỉ theo hướng dẫn xác định địa chỉ đã trình bày ở phần trước:

Mơ đun DI (vào s) cắm ở SLOT thứ 4 nên địa chỉ vào là từ I0.0–I3.7. Mơ đun D0 (ra số) cắm ở SLOT thứ 5 nên địa chỉ ra là Q4.0—Q7.7.

+ Gán địa chỉ :

- Địa chỉ đầu vào: Ta gán cho các nút ấn các địa chỉ: Nút M là I0.0

Nút D là I0.1

Thực hiện kết nối: Tại các đầu vào số 0 và 1 trên mơ đun DI ta phải nối tới nút ấn, đầu kia của nút ấn đưa về nguồn (24vDC)

- Địa chỉ đầu ra : Ta gán cho các đầu ra các địa chỉ :

N gu ồn ( P S) C P U S7- 30 0 V ào s ố (D I) R a số (D O )

Q4.0 cho động cơ Đ1 (Số 0). Q4.1 cho động cơ Đ2 (Số 1). Q4.2 cho động cơ Đ3 (Số 2).

Thực hiện kết nối: Tại các đầu vào số 0, 1 và 2 trên mơ đun ra số D0 ta phải nối ra thiết bị đầu ra và thực hiện giao tiếp ra động cơ 3 pha. Nhớ rằng các đầu ra này với mỗi PLC khác nhau cĩ điện áp khác nhau ta căn cứ vào điện áp này để lựa chọn phương pháp kết nối cho phù hợp. Với S7-300 đầu ra cĩ điện áp là 24V DC. Giao tiếp ra động cơ 3 pha cĩ thể dùng rơle 24v sau đĩ lấy tiếp điểm rơle đĩng cho CONTACTOR và CONTACTOR nối ra động cơ 3 pha như ta đã học ở phần mạch máy.

Chú ý :

Với PLC S7-300 các địa chỉ vào ra cĩ thể được xác định khác nhau do người thiết lập phần cứng xác lập. Ngay khi khai báo phần cứng để viết một trình điều khiển ứng dụng bất kỳ nào ta cũng cĩ thể thay đổi địa chỉ bằng cách:

Từ file  new  đặt tên  chọn insert  stationS7-300 và tiếp tực từ đây khai báo cho các thiết bị hiện cĩ của PLC gồm: RACKkhối nguồn Power suuply ( PS) đến khối CPU các mơ đun vào ra. Khi khai báo các mơ đun vào ra này sẽ tìm ngay được địa chỉ ngầm định cho các mơ đun vào ra. Tuy nhiên với các PLC S7-300 thường địa chỉ vẫn xác định như trang luật căm mơ đun. Hãn hữu PLC S7-300 CPU 312C , 314C địa chỉ số vào ra onboard xác định ban đầu là 124.

Viết chương trình và chạy thử:

Mỗi PLC khác nhau cĩ một phần mềm khác nhau. PLC S7-300 sử dụng phần mềm simatic S7-300 để viết chương trình. Thường thì các phân mềm đều cĩ chức năng mơ phỏng hay một phiên bản mơ phỏng phù hợp. Trước khi chạy chương trình trên PLC thì cĩ thể chạy thử chương trình trên phần mềm này với mục tiêu kiểm tra nhanh. Sau khi PLC đã chứa chương trình ta tiến hành vận hành hệ thống, so sánh với nguyên lý chuẩn để hiệu chỉnh lại hệ thống.

3.1.1.2. Lưu đồ lập chương trình điều khiển dùng PLC

Hình 3-1: Lưu đồ lập chương trình điều khiển

NO Xác định yêu cầu

của hệ thống Vẽ lưu đồ điều

khiển

Liệt kê các thiết bị I/Otương ứng với các đầuI/O

của PLC Soạn thảo chương trình Nạp chương trình vào PLC Chạy mơ phỏng và tìm lỗi Sửa chữa chương trình Kết nối các thiết bị I/O vào PLC

Kiểm tra dây nối

Chạy thử chương trình

Kiểm tra

Nạp vào EPROM

Tạo tài liệu chương trình Chạy tốt Chạy tốt? YES NO YES Bắt đầu Kết thúc

Phần bộ nhớ của CPU dành cho chương trình ứng dụng cĩ tên gọi là logic block. Như vậy logic block là tên chung để gọi tất cả các khối chương trình bao gồm những khối chương trình tổ chức OB (organization blocks), khối chương trình FC (Functions), khối hàm FP (Function blocks). Trong các loại khối chương trình đĩ thì chỉ cĩ duy nhất khối OB1 được thực hiện trực tiếp theo vịng quét. Nĩ được hệ điều hành gọi theo chu kỳ lặp với khoảng thời gian khơng cách đều nhau mà phụ thuộc vào độ dài của chương trình. Các loại khối chương trình khác khơng tham gia trực tiếp vào vịng quét. Chương trình cho S7- 300 được lưu trong bộ nhớ của PLC ở vùng dành riêng cho chương trình và cĩ thể được lập với hai dạng cấu trúc khác nhau:

3.1.2. Cấu trúc và khai báo phần cứng

Khai báo phần cứng là cơng việc đầu tiên phải thực hiện khi tiến hành lập chương trình ứng dụng sử dụng một bộ PLC. (Tuy nhiên số ít các PLC loại nhỏ cĩ kết cấu compact cĩ thể tiến hành lập trình ngay sau khi khai báo tên dự án mà khơng cần phải khai báo cấu hình phần cứng). PLC S7-300 cĩ kết cấu Mơ đun, số lượng các mơ đun mở rộng được sử dụng tuỳ theo yêu cầu của bài tốn điều khiển hay do ý đồ của người lập trình. Như vậy với mỗi một ứng dụng cấu hình phần cứng cĩ thể khác nhau, vì lẽ đĩ việc khai báo sử dụng phần cứng là bắt buộc. Cấu trúc phần cứng thể hiện ở kết cấu các mơ đun được sử dụng và vị trí ghép nối của chúng trong Rack. Khai báo phần cứng đồng thời cũng chính là khai báo cấu trúc của nĩ. Cấu trúc và khai báo phần cứng được thực hiện trong phần mềm STEP 7 được thực hiện như sau: Vào File để đặt tên sau đĩ vào Insert chọn Insert Station –> S7-300 chèn Rack-> Rail khi đĩ được bảng vị trí các Slot. Khi đĩ ta chèn theo thứ tự mơ đun nguồn (Power supply), CPU, slot 3 dành riêng cho IM, từ slot 4 chèn các mơ đun tín hiệu SM (Signal Module). Khi chèn các mơ đun phải đúng với tên và mã hiệu của mơ đun. Sau khi khai báo xong tồn bộ phần cứng trong Hardware config ta cĩ được bảng các địa chỉ cổng hiện cĩ. Địa chỉ này thay đổi khi thay đổi vị trí các mơ đun, khi lập trình ứng dụng phải sử dụng đúng các địa chỉ này.

3.2. Lập trình tuyến tính

Kỹ thuật lập trình tuyến tính là phương pháp lập trình mà tồn bộ chương trình điều khiển nằm trong một khối bộ nhớ. Loại hình cấu trúc tuyến tính này phù hợp với những bài tốn tự động nhỏ, khơng phức tạp. Khối được chọn phải là khối OBI, là khối mà PLC luơn quét và thực hiện các lệnh trong nĩ thường xuyên, từ lệnh đầu tiên đến lệnh cuối cùng và quay lại lệnh đầu tiên. Do tồn bộ chương trình chỉ nằm trong khối OB1 nên khối OB1 sẽ gần như là thường trực trong vùng nhớ Work memory, trừ trường hợp khi hệ thống phải xử lý các tín

hiệu báo ngắt. Ngồi khối OB1 trong miền Work memory cịn miền nhớ địa phương (Local block) cấp phát cho OB1 và những khối DB được OB1 sử dụng hình 3-2 mơ tả quy trình thực hiện chương trình điều khiển tuyến tính. Khi thực hiện khối OB1, hệ điều hành cấp một local block cĩ kích thước mặc định là 20 bytes trong “Work memory” để OB1 cĩ thể lấy được các dữ liệu từ hệ điều hành.

Hình 3-2: Chu trình thực hiện chương trình tuyến tính

Lập trình tuyến tính ứng dụng cho các bài tốn điều khiển nhỏ và vừa mức độ phức tạp khơng cao ví dụ như điều khiển động cơ, bình trộn, ....

Ví dụ:

Lập trình điều khiển động cơ điện xoay chiều 3 pha thực hiện khởi động sao - tam giác, cĩ đảo chiều và hãm động năng.

Các cơng việc phải tiến hành như sau:

*Phân tích yêu cầu của bài để tìm ra số lượng các đầu vào và đầu ra của bộ điều khiển động cơ xoay chiều 3 pha:

+ Đầu vào: 4 đầu vào

- 2 nút ấn chọn chiều thuận và ngược. - Nút ấn dừng.

- Đầu vào bảo vệ ngắn mạch và quá tải. + Đầu ra: 6 đầu ra

- 2 Cặp tiếp điểm đảo chiều quay. - Cặp tiếp điểm đĩng cấp nguồn. - Cặp tiếp điểm đấu chụm sao. - Cắp tiếp điểm dùng đấu tam giác. - Cặp tiếp điểm đĩng cắt cuộn hãm.

* Chọn PLC cĩ cấu hình phù hợp với yêu cầu của bài: chủ yếu là số lượng ngõ vào và ngõ ra, đồng thời xác định các địa chỉ cổng hiện cĩ của PLC được chọn.

Chuyển OB1 từ load memory vào work memory và cấp phát

local block cho nĩ

Xĩa OB1 và giải phĩng local block trong Work memory

Hệ điều hành Thực hiện OB1 trong Work memory System memory Share DB Instance DB

Giả thiết ở dây PLC ta chọn cĩ địa chỉ ngõ vào số là I 4.0 đến I4.7 (Slot 5) và địa chỉ ra số Q8.0 đến Q8.7 (Slot6).

* Gán các địa chỉ vào ra của PLC với các đầu vào ra của yêu cầu điều khiển thơng qua bảng table symbol.

* Xây dựng lưu đồ điều khiển ( hay giản đồ xung tín hiệu vào và ra). * Lập trình điều khiển: chương trình điều khiển được viết như sau:

Trong chương trình điều khiển ta thấy tồn bộ chương trình chứa trong khối OB1. Chương trình viết xong được download xuống PLC và người vận hành cĩ thể thao tác hoạt động khi PLC ở chế độ RUN.

3.3. Lập trình cĩ cấu trúc và ứng dụng

Chương trình được chia thành những phần nhỏ với từng nhiệm vụ riêng và các phần này nằm trong những khối chương trình khác nhau (hình 2-5). Loại hình cấu trúc này phù hợp với những bài tốn điều khiển nhiều nhiệm vụ và phức tạp. PLC S7 – 300 cĩ bốn loại khối cơ bản:

- Loại khối OB (Organization block): Khối tổ chức và quản lý chương trình điều

khiển. Cĩ nhiều loại khối OB với những chức năng khác nhau, chúng được phân biệt với nhau bằng một số nguyên đi sau nhĩm ký tự OB, ví dụ như OB1, OB35, OB40, OB80,…

- Loại khối FC (Program block): Khối chương trình với những chức năng riêng

giống như một chương trình con hoặc một hàm (chương trình con cĩ biến hình thức). Một chương trình ứng dụng cĩ thể cĩ nhiều khối FC và các khối FC này được phân biệt với nhau bằng một số nguyên sau nhĩm ký tự FC. Chẳng hạn như loại FC1, FC2…

- Loại khối FB (Function block): Là loại khối FC đặc biệt cĩ khả năng trao đổi

một lượng dữ liệu lớn với các khối chương trình khác. Các dữ liệu này phải được tổ chức thành một khối dữ liệu riêng cĩ tên gọi là Data block. Một chương trình ứng dụng cĩ thể cĩ nhiều khối FB và các khối FB này được phân biệt với nhau bằng một số nguyên sau nhĩm ký tự FB. Chẳng hạn như loại FB1, FB2…

- Loại khối DB (Data block): Là loại khối chứa dữ liệu cần thiết để thực hiện

chương trình. Các tham số của khối do người dùng tự đặt. Một chương trình ứng dụng cĩ thể cĩ nhiều khối DB và các khối DB này được phân biệt với nhau bằng một số nguyên sau nhĩm ký tự DB. Chẳng hạn như loại DB1, DB2, .…

Chương trình trong các khối được liên kết bằng lệnh gọi khối, chuyển khối. Xem các phần chương trình trong các khối như là các chương trình con thì S7-300 cho phép gọi chương trình con lồng nhau, tức là từ chương trình con này gọi một chương trình con khác và từ chương trình con được gọi lại gọi tới chương trình con thứ 3 tiếp ….Số các lệnh gọi lồng nhau phụ thuộc vào từng chủng loại của CPU mà ta sử dụng. Ví dụ

như đối CPU 314 thì số lệnh gọi lồng nhau nhiều nhất cĩ thể cho phép là 8. Nếu số lần gọi khối lồng nhau mà vượt quá con số giới hạn cho phép thì PLC sẽ tự động chuyển sang chế độ STOP và đặt cờ bào lỗi.

Trong lập trình cĩ cấu trúc khối OB1 luơn luơn đươc quét và thực hiện các lệnh từ lệnh đầu tiên tới lệnh cuối cùng như hình bày ở hình 3-3.

Hình 3-3: Lập trình cĩ cấu trúc

Để đơn giản trong trình bày, khi một khối chương trình con này gọi một khối chương trình con khác, ta sẽ ký hiệu khối chứa lệnh gọi là khối mẹ và khối được gọi là khối con. H3.4 mơ tả quy trình thực hiện việc gọi một khối con FC10 từ khối mẹ OB1. Giữa khối mẹ và khối con cĩ sự liên kết thể hiện qua việc trao đổi các giá trị. Khi gọi khối con, khối mẹ cần cho những sơ kiện thơng qua các tham trị đầu vào để khối

Một phần của tài liệu Giáo trình kỹ thuật điều khiển lập trình (Trang 95)

Tải bản đầy đủ (PDF)

(177 trang)