Đồ án PTO & PWM Trong SIMATIC S7 200 - Nguyễn Duy Thảo
MỤC LỤC
Trang
Mục lục -------------------------------------------------------------------------------------1
Lời nói đầu ---------------------------------------------------------------------------------3
Nhận xét của giáo viên hướng dẫn -----------------------------------------------------4
Chương I: Giới thiệu chung về thiết bị lập trình PLC -------------------------------5
I- Tổng quát------------------------------------------------------------5
1. Giôùi thieäu PLC -----------------------------------------------5
2. Caáu truùc , nguyeân lyù hoaït ñoäng cuûa PLC----------------6
3. Caùc hoaït ñoäng xöû lyù beân trong PLC ----------------------9
II- PLC SIMATIC S7 200 CPU 214 ----------------------------10
1. Caáu truùc phaàn cöùng cuûa CPU 214 ------------------------9
2. Vùng nhớ cổng ra vào ---------------------------------------13
3. Cấu trúc chương trình S7 200 -------------------------------14
4. Thực hiện chương trình --------------------------------------15
5. Các toán hạng lập trình cơ bản -----------------------------16
6. Ngôn ngữ lập trình của Simatic S7 200 -------------------17
Chương II: Lệnh phát xung ra PLS- Pulse Output Instruction --------------------19
I- Tổng quát ----------------------------------------------------------19
II- Phát chuỗi xung đầu ra ------------------------------------------19
1. Chuỗi xung đơn của PTO (Single–Segment Pipelining-20
2. Nhiều chuỗi xung cua PTO (Multiple- Segment Pipelining) -----------------------------------------------------21
III- Điều chế độ rộng xung ------------------------------------------22
IV- Sử dụng vùng nhớ đặc biệt để cấu hình cho hoạt động của bộ phát xung PTO/PWM --------------------------------------------23
V- Những trường hợp sau đây sẽ làm cho SM66.4 (hoặc SM76.4) và SM66.5 (hoặc SM76.5) ---------------------------24
VI- Tính toán giá trị của bảng mô tả chuỗi xung -----------------26
VII- Các bước khởi tạo bộ phát chuỗi xung PTO ------------------28
VIII- Các bước khởi tạo PWM ----------------------------------------30
Chương III- Bài tập ---------------------------------------------------------------------31
I- Bài tập -------------------------------------------------------------31
II- Hướng giải quyết ------------------------------------------------31
1- Giới thiệu thiết bị ----------------------------------------31
2- Tính toán thông số ---------------------------------------32
3- Sơ đồ kết nối phần cứng --------------------------------34
III- Chương trình điều khiển -----------------------------------------35
Kết luận -----------------------------------------------------------------------------------36
chương trình ngắt có thể được dùng với sự kiện ngắt là khi bộ phát xung hoàn thành chuỗi xung. (Tham khảo thêm phần lệnh về ngắt để có thêm chi tiết). Nếu bạn sử dụng chuỗi xung với nhiều đoạn thì sự kiện ngắt này sẽ xảy ra khi bảng mô tả các đoạn xung được lệnh điều khiển phát xung hoàn thành. V- Những trường hợp sau đây sẽ làm cho SM66.4 (hoặc SM76.4) và SM66.5 (hoặc SM76.5) : Việc thiết lập giá trị chu kỳ delta không hợp lý sau một số xung nhất định phát ra, phép tràn toán học sẽ phát sinh và ngắt hoạt động của PTO và làm cho bit chỉ báo lỗi chu kỳ delta lên mức 1 (SM66.4 hoặc SM76.4). Lúc này đầu ra sẽ được quản lý của thanh ghi process-image. Việc cấm một mô tả chuỗi xung (các tham số của một chuỗi xung) trong PTO khi nó đang được thực thi sẽ làm cho bit User Abort (bỏ qua bởi người dùng) lên 1 (SM66.5 hoặc SM76.5). Việc nạp một mô tả xung mới trong khi “đường ống” đang đầy sẽ gây ra một lỗi tràn và làm cho bit báo tràn lên 1 (SM66.6 hoặc SM76.6). Bạn cần phải xóa bit này sau khi sự kiện báo tràn xảy ra nếu bạn muốn phát hiện lần tràn tiếp theo. Bit này bằng 0 khi PLC chuyển sang trạng thái RUN. * Chú ý : Khi bạn nạp một giá trị số xung (SMD72 hoặc SMD82) mới, giá trị độ rộng xung (SMW70 hoặc SMW80) mới, hoặc một chu kỳ mới (SMW68 hoặc SMW78) thì bit cập nhật tương ứng của mỗi giá trị trong thanh ghi điều khiển cũng được set lên 1 trước khi bạn thực thi lệnh PLS. Để sử dụng được chức năng nhiều chuỗi xung bạn phải nạp giá trị offset bắt đầu cho bảng dữ liệu mô tả chuỗi xung (SMW168 hoặc SMW178) và cũng phải nạp giá trị cho bảng mô tả này trước khi bạn thực thi lệnh PLS. VI- Tính toán giá trị của bảng mô tả chuỗi xung : Khả năng cho phép nhiều đoạn chuỗi xung trong “đường ống” của bộ phát xung PTO/PWM rất hữu dụng trong nhiều ứng dụng đặc biệt là trong ứng dụng điều khiển động cơ bước. Ví dụ: Bạn có thể dùng bộ PTO với một bảng mô tả xung để điều khiển một động cơ bước bằng một cách đơn giản với một đoạn là tăng tốc, chạy ổn định và giảm tốc một cách tuần tự hoặc bạn có thể điều khiển một cách phức tạp hơn với việc định nghĩa một bảng mô tả xung có thể lên tới 255 đoạn xung với mỗi đoạn ứng với các chức năng tăng tốc, chạy ổn định hoặc giảm tốc. Hình 6-31 Biểu diễn một ví dụ về giá trị của bảng mô tả xung cần thiết lập để điều khiển xung ra cần thiết cho một động cơ bước tăng tốc (đoạn 1), hoạt động ở một tốc độ cố định (đoạn 2) và sau đó giảm tốc (đoạn 3). Đối với ví dụ này : Tần số xung cho quá trình khởi động và dừng của động cơ là 2kHZ, tần số xung lớn nhất là 10kHZ, và số xung cần thiết để đạt được một chu kỳ hoạt động như thế là 4000 xung. Bởi vì giá trị cho bảng mô tả xung được biểu diễn ở dạng là một khoảng thời gian (chu kỳ) chứ không phải ở dạng tần số, vì vậy bạn cần chuyển đổi từ giá trị tần số sang giá trị chu kỳ thời gian. Vì vậy, ở đây phần khởi động và phần kết thúc sẽ có chu kỳ thời gian là 500 uS và chu kỳ thời gian ứng với tần số lớn nhất (10kHZ) là 100 uS. Trong suốt phần thời gian tăng tốc của bảng mô tả xung đầu ra thì số xung lớn nhất nên dùng là 200 xung. Phần thời gian giảm tốc thì số xung cần dùng là khoảng 400 xung và phần còn lại là chạy với tốc độ ổn định 3400 xung. Bạn có thể sử dụng công thức dưới đây để tính ra giá trị của chu kỳ delta cho mỗi đoạn mà dựa vào đó bộ phát xung PTO/PWM dựa vào đó sẽ điều chỉnh chu kỳ của mỗi xung : Trong đó : End_CTseg = Thời gian chu kỳ kết thúc của đoạn Init_CTseg = Thời gian chu kỳ bắt đầu của đoạn Quantityseg = Số lượng xung của đoạn Với ví dụ đang xét và áp dụng công thức trên ta được giá trị chu kỳ delta cho các đoạn như sau : Đoạn 1 (tăng tốc) : giá trị chu kỳ delta = -2 (= (100-500)/200) Đoạn 2 (ổn định) : giá trị chu kỳ delta = 0 (=(100-100)/3400) Đoạn 3 (giảm tốc) : giá trị chu kỳ delta = 1 (=(500-100)/400) Bảng 6-38 liệt kê các giá trị cho việc phát xung với dạng xung như ví dụ (giả sử rằng bảng mô tả xung được đặt trong vùng nhớ V và địa chỉ bắt đầu là V500). Bạn có thể nạp các giá trị này bằng cách sử dụng các lệnh di chuyển, nạp dữ liệu vào vùng nhớ V hoặc bạn có thể định nghĩa các giá trị của bảng mô tả trong một khối dữ liệu DB. Nhằm mục đích xác định xem sự chuyển đổi dạng xung giữa các đoạn có chấp nhận được hay không bạn cần xác định chu kỳ của xung cuối cùng trong đoạn đó. Trừ khi chu kỳ delta là 0, các trường hợp còn lại bạn cần tính toán chu kỳ của xung cuối cùng một đoạn, bởi vì giá trị này không được chỉ định trong bảng mô tả xung. Sử dụng công thức dưới đây để tính toán chu kỳ xung cuối cùng của đoạn : Trong đó : Init_CT seg = Chu kỳ bắt đầu của đoạn Delta seg = Chu kỳ delta của đoạn Quantity seg = Số lượng xung của đoạn Ví dụ trên chỉ là một ví dụ đơn giản xem như một giới thiệu về bộ phát xung, trong các áp dụng thực tế có thể đòi hỏi những dạng xung phức tạp hơn. Nhớ rằng chu kỳ delta chỉ có thể được chỉ định ở dạng một số nguyên của uS hoặc mS và sự thay đổi chu kỳ được thực hiện trong mỗi xung. Ảnh hưởng của hai yếu tố này là việc tính toán giá trị chu kỳ delta cho một đoạn có thể phải lặp lại. Một vài giá trị thích hợp cho chu kỳ kết thúc hoặc số xung của một đoạn có thể cần thiết phải tính toán. Thời gian thực thi của một đoạn có thể được sử dụng để đánh giá độ chính xác của giá trị bảng mô tả. Sử dụng công thức dưới đây để tính toán độ dài thời gian cần thiết cho việc hoàn thành một đoạn : VII- Các bước khởi tạo bộ phát chuỗi xung PTO : Sử dụng chu kỳ quét đầu tiên để gọi chương trình con khởi tạo PTO. Trong chương trình con khởi tạo thực hiện các công việc sau đây : Nạp giá trị cho byte điều khiển để chọn chế độ phát theo yêu cầu Nạp giá trị thời gian để chọn chu kỳ Nạp giá trị để chọn số lượng xung phát Gán chương trình ngắt với sự kiện ngắt tương ứng Cho phép ngắt Thực hiện lệnh PLS Ví dụ : Khởi tạo PTO phát 10 xung vuông, tần số 1hZ Chương trình chính : Chương trình con khởi tạo PTO : VIII- Các bước khởi tạo bộ PWM : Sử dụng chu kỳ quét đầu tiên để gọi chương trình con khởi tạo bộ PWM. Trong chương trình con khởi tạo sẽ làm các công việc sau : Nạp giá trị cho byte điều khiển để chọn chế độ phát xung theo yêu cầu Nạp giá trị thời gian để chọn chu kỳ Nạp giá trị thời gian để chọn độ rộng xung Thực thi lệnh PLS Ví dụ : Khởi tạo PWM phát xung vuông tần số 1hZ tại ngõ ra Q0.1 Chương trình chính : Chương trình con : CHƯƠNG III- BÀI TẬP Bài tập: Một lò nhiệt được điều khiển bởi PLC S7 200. Nhiệt độ được đo dùng cảm biến nhiệt độ PT100. Yêu cầu: Vẽ sơ đồ kết nối phần cứng Viết chương trình điều khiển lò nhiệt theo yêu cầu: Khi nhiệt độ nhỏ hơn 50 độ c thì mở lò. Khi nhiệt độ lớn hơn 60 độ c thì tắt lò. Khi nhiệt độ nằm trong khoảng từ 50 đến 60 độ c thì lò mở 30 giây và dừng 20 giây. HƯỚNG GIẢI QUYẾT: Giới thiệu thiết bị: PT 100: Thiết bị đo nhiệt độ Pt100 hay còn gọi là can nhiệt Pt có cấu tạo là một điện trở nhiệt (điện trở thay đổi khi nhiệt độ thay đổi).Điện trở này là một dây kim loại có bọc các đoạn sứ bao quanh toàn bộ dây kim loại.Phần bao bọc này lại được đặt trong một ống bảo vệ(thermowell) thường có dạng hình tròn,chỉ đưa 2 đầu dây kim loại ra để kết nối với thiết bị chuyển đổi.Phần ống bảo vệ sẽ được đặt ở nơi cần đo nhiệt độ,thông thường can nhiệt Pt100 chỉ đo được nhiệt độ tối đa là 600°C. - Hai đầu dây kim loại để chừa ra ở phần ống bảo vệ được kết nối tới một thiết bị gọi là bộ chuyển đổi tín hiệu nhiệt thành tín hiệu điện phục vụ cho việc truyền tới phòng điều khiển giám sát.Thiết bị chuyển đổi có cấu tạo chẳng qua là một cầu điện trở có một nhánh chxính là Pt100 ( có điện trở là 100 ôm ở 0 độ C). - Pt 100 kết nối với PLC S7- 200 CPU 224 thông qua modut analog EM235. Ngõ vào: Cảm biến nhiệt độ PT 100 Ngõ ra: Q0.1: ngõ ra nối với tải là đèn đốt nóng lò nhiệt. Tính toán thông số: Công thức tính toán điện trở của Pt 100 Trong đó: α= 0.39 Rt : điện trở đo được điện trở ở 0 độ C (= 100 Ω) Sử dụng nguồn đòng 12.55mA cung cấp cho Pt 100 Vậy: (mA) Tại 0°C => Vin= 1.25V 50°C => Vin= 1.5V 60°C => Vin= 1.55V Chọn tầm đo 2.5 V Từ tầm đo đã chọn ta tìm được đặt tuyến ngõ vào của modul analog như sau 2.5V 1.55 1.5 0 x y 32000 Tương tự như trên: 2.5V => 32000 1.5V => x (AIW0) x = 19200 1.55V => y (AIW0) y = 19840 Vậy khi ở nhiệt độ 50°C giá trị ngỏ vào analog là 19200 (AIW0). 60°C giá trị ngỏ vào analog là 19840 (AIWM0). Sơ đồ kết nối phần cứng: Chương trình điều khiển: Gọi chương trình con khởi tạo PWM Khi nhiệt độ trong lò nhỏ hơn 50°C. Khi đó giá trị 50000 được move vào vùng nhớ VW2 Khi nhiệt độ trong lò lớn hơn 60°C. Khi đó giá trị 0 được move vào vùng nhớ VW2 Khi nhiệt độ trong lò khoảng 50°C - 60°C. Giá ttri 30000 được move vào vùng nhớ VW2 Chương trình con khởi tao PWM: Di chuyển giá trị 16#DB vào SMB77 để nạp giá trị byte điều khiển PLS. Di chuyển giá trị 50000 vào SMW78 để nạp giá trị cho byte điều khiển chọn chu kỳ là 50s. Di chuyển giá trị trong vùng nhớ VW2 vào SMW80 để chọn độ rộng xung theo yêu cầu: ● Nhiệt độ nhỏ hơn 50°C thì ON toàn chu kỳ (50000 vào SMW80) ● Nhiệt độ lớn hơn 60°C thì OFF toàn chu kỳ (0 vào SMW80) ● Nhiệt độ từ 50c đến 60C thì ON 60% và OFF 40% chu kỳ (30000 vào SMW80) Thực hiện lệnh phát xung điêu khiển Q0.1. KẾT LUẬN Sau thời gian tìm tòi nghiên cứu đồ án môn học 3 ( Điều khiển lập trình PLC S7- 200), với sự hướng dẫn của cô Nguyễn Trần Minh Nguyệt em đã hoàn thành đúng thời hạn và đáp ứng yêu cầu được giao. Qua thời gian nghiền cứu và làm đồ án đã giúp em nắm vũng hơn về những kiến thức đã học về PLC SIMATIC S7-200. Kiến thức tổng quát về PLC SIMATIC S7-200 Bộ phát xung PTO Bộ điều chỉnh độ rộng xung PWM Lập trình một bài PLC hoàn chỉnh Vì kiến thức bản thân còn hạn chế nên đồ án này không tránh khỏi những thiết sot, còn nhiều vấn đề chưa giải quyết hoàn chỉnh. Kính mong được sự chỉ bảo của quý thầy cô và các bạn để tập đò án này được tốt hơn. Em xin chân thành cảm ơn Cô Nguyễn Trần Minh Nguyệt đã hướng dẫn tận tình để giúp em hoàn thành đồ án này đúng thời hạn. Sinh viên thực hiện Nguyễn Duy Thảo
File đính kèm:
- đồ án 3 nguyễn duy thảo.doc
- bia do an.doc