1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thiết kế PLC dùng cho hệ thống điều khiển tự động

93 19 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế PLC
Tác giả Đỗ Huy Nam
Người hướng dẫn PGS.TS. Nguyễn Hồng Quang
Trường học Học viện Công nghệ Bưu chính Viễn thông
Chuyên ngành Tự động hóa
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2018
Thành phố Hà Nội
Định dạng
Số trang 93
Dung lượng 49,88 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đượcchế tạo ra để thỏa mãn các yêu cầu cơ bản như dễ dàng thay đổi chương trình điều khiển,theo các yêu cầu khác nhau nhưng vẫn giữ nguyên phần cứng, dễ dàng lập trình, dễ dàngsửa chữa t

Trang 1

LỜI CAM ĐOAN

Em xin cam đoan bản đồ án tốt nghiệp “Thiết kế PLC” do em tự thiết kế dưới sựhướng dẫn của thầy giáo PGS.TS.Nguyễn Hồng Quang Các số liệu và thực nghiệm cókết quả hoàn toàn đúng với thực tế những gì em làm

Trong đồ án này em chỉ sử dụng những tài liệu ghi trong danh mục tham khảo, khôngsao chép hay sử dụng bất kỳ tài liệu nào khác Nếu phát hiệu có dấu hiệu sao chép em xinchịu hoàn toàn trách nhiệm!

Hà nội tháng 06 năm 2018

Sinh viên thực hiện

Trang 2

MỤC LỤC

Trang 3

Lời nói đầu

Trước tiên em xin gửi lời cảm ơn chân thành đến thầy Nguyễn Hồng Quang đã giúp

đỡ em rất nhiều trong quá trình làm đồ án và giúp em hoàn thành đồ án này Em cũng gửilời xin lỗi đến thầy vì nhiều lúc chúng em vẫn lơ là chưa tập trung làm đồ án Về đồ án

“THIẾT KẾ PLC”, đây là một đề tài rất hay và rất phù hợp với chuyên ngành tự độnghóa công nghiệp em theo học Hiện nay PLC đang là thiết bị phổ thông trong môi trườngcông nghiệp bởi những ưu điểm vượt trội độ tin cậy cao, chính vì vậy khi thực hiện đề tài

“THIẾT KẾ PLC” giúp em có thể hiểu rõ hơn, nắm chắc hơn về PLC cũng như cách thiết

kế một hệ thống, những kiến này chắc chắn sẽ giúp ích chúng em rất nhiềucho nhữngcông việc sẽ làm sau này Tuy đồ án hiện tại đã hoàn thành những bước cơ bản ban đầucủa một PLC Tuy vậy đồ án còn nhiều thiếu xót em hy vọng có thể hoàn thiện nó và đưavào những ứng dụng thực tế để có thể hoàn thành được mục đích của việc thiết kế mộtsản phẩm là đưa vào ứng dụng

Do kiến thức còn hạn chế Em rất mong nhận được sự chỉ dạy và hướng dẫn của thầy

cô để đề tài của em có thêm những kiến thức quý báu và hoàn thiện đề tài của mình hơn

Em xin chân thành cám ơn!

Hà nội tháng 06 năm 2018Sinh viên thực hiện

Trang 4

Chương 1 Giới thiệu đề tài “Thiết kế PLC”

Mục mục tiêu đề tài

Với sự phát triển của nền công nghiệp hóa hiện đại hóa hiện nay, thiết bị tự động hóa

và điều khiển tự động hóa là những yếu tố quan trọng để có thể tăng năng suất và hiệuquả công việc Một trong những thiết bị thiết yếu trong công nghiệp đó là PLC, PLC vớinhững ưu điểm vượt trội độ tin cậy cao, đơn giản hiệu quả đã trở lên phổ biến trong tất cảcác ngành công nghiệp Để nắm rõ và hiểu hơn về PLC em đã chọn đề tài “Thiết kế PLC”

để làm đồ án tốt nghiệp

Mục tiêu đồ án

- Về phần cứng thiết kế một board mạch PLC cơ bản với 8 ngõ vào, 8 ngõ ra, điềukhiển hệ logic có chức năng tương tự như PLC hiện hành trên thị trường Có khảnăng mở rộng ngõ vào ngõ ra….tương lai có thể truyền thông trong mạng côngnghiệp và các chức năng hoàn thiện như một PLC hoàn thiện Về chương trình

- Về phần mềm sử dụng phần mềm lập trình của các hãng, thiết kế một chương trình

để dịch code ladder từ chương trình được viết về code C nạp vào board PLC

1.1 PLC là gì?

Trang 5

Hình 1.1 PLC của một số hãng Rocwell, Toshiba, Siemens, Omron, MishubisiPLC (Programmable Logic Control) là bộ điều khiển logic khả trình, có khả năngthực hiện linh hoạt các thuật toán điều khiển logic thông qua ngôn ngữ lập trình Đượcchế tạo ra để thỏa mãn các yêu cầu cơ bản như dễ dàng thay đổi chương trình điều khiển,theo các yêu cầu khác nhau nhưng vẫn giữ nguyên phần cứng, dễ dàng lập trình, dễ dàngsửa chữa thay thế, hoạt động ổn định… PLC dùng để thay thế cho các hệ thống rơ lecồng kềnh và được tạo ra đầu tiên bởi các nhóm kỹ sư hãng General Motors năm 1968PLC được ứng dụng lần đầu tiên trong công nghiệp ô tô năm 1969 đã đem lại ưu việthơn hẳn so với hệ thống điều khiển trên rơ le, vì vậy PLC đã nhanh chóng mở rộng ra tất

cả các ngành công nghiệp sản xuất khác và trở thành yếu tố quan trọng trong công nghiệp

Ưu điểm và nhược điểm

Ưu điểm:

- Hai ưu điểm nổi trội của PLC đó là độ tin cậy cao và khả năng lập trình dễ dàng

- Độ tin cậy cao vỏ làm bằng vật liệu cứng, mạch được thiết kế khả năng chốngnhiễu, rung, chịu được ẩm, dầu, bụi… trong môi trường khắc nghiệt

- Ngôn ngữ lập trình dễ hiểu LAD, ngoài ra còn có ngôn ngữ STL, FBD…

- Thay đổi chương trình đơn giản (tính linh hoạt cao)

- Giao diện trực quan có các led báo trạng thái các I/O rõ ràng

- Không cần đấu dây như dùng hệ rơ le

- Lắp đặt đơn giản Không gian lắp đặt ít Mở rộng vào ra đơn giản

- Giá thành rẻ so với 1 hệ nhiều rơ le (giá thành PLC tương đương 5-10 rơ le)

Nhược điểm:

- Giá thành cao so với những hệ thống điều khiển đơn giản

- Cần có kiến thức chuyên môn về PLC

Ngôn ngữ lập trình

Ngôn ngữ phổ biến nhất là LADDER, nó thể hiện logic mạch rơ le và nó được coi làngôn ngữ chính trong PLC:

Trang 6

Ngôn ngữ STL cũng được sử dụng nhưng ít hơn, ngôn ngữ này phù hợp với ngườiquen lập trình vi xử lý

Hình 1.3 Câu lệnh ở dạng STL trong PLC của Siemens S7-200

1.2 Cấu trúc của một PLC

Cấu trúc PLC cơ bản gồm 2 phần zlà khối xử lý trung tâm và, hệ thống giao tiếp vào ra

Hình 1.4 Cấu trúc hệ thống điều khiển cơ bản của PLCKhối xử lý trung tâm gồm bộ vi xử lý (CPU)

Hệ thống giao tiếp vào, ra gồm các I/O để giao tiếp với đối tượng điều khiển và traođổi thông tin môi trường xung quanh Các đối tượng ngõ vào như các công tắc, cảmbiến các đối tượng ngõ ra như động cơ, máy bơm, rơ le, xi lanh

PLC gồm các module sau

1.2.1 Module Nguồn

Module nguồn có chức năng cung cấp điện áp cho CPU và các ngõ vào, ngõ ra.Nguồn nuôi PLC từ 20.4VDC đến 28.8VDC hoặc 85VAC đến 264VAC (47-63Hz)

1.2.2 Module CPU xử lý trung tâm

Module xử lý trung tâm có chức năng tiếp nhận các thông tin vào, lưu thông tin vàovào bộ nhớ đệm, tính toán xử lý thông tin, đưa thông tin ra bộ nhớ đệm, từ bộ nhớ đệmxuất các tín hiệu điều khiển đến ngõ ra

Một chu kỳ từ khi nhận thông tin ngõ vào, xử lý rồi xuất ngõ ra được gọi là một vòngquét của PLC PLC xử lý vòng quét theo 5 bước

Trang 7

- Đọc ngõ vào, lưu các giá trị đầu vào ở bộ nhớ đệm

- Thực hiện tuần tự các lệnh của chương trình và lưu các giá trị vào vùng nhớ

- Xử lý yêu cầu truyền thông

- Thực hiện tự chuẩn đoán CPU, kiểm tra đảm bảo PLC đang làm việc bình thường

- Xuất dữ liệu Các dữ liệu lưu trong vùng đệm sẽ được xuất tới các ngõ ra vật lý

Hình 1.5 Vòng quét của PLCThời gian để CPU thực hiện hết 1 vòng chương trình gọi là chu kỳ quét Một chu kỳquét dài hay ngắn tùy thuộc vào độ dài chương trình (trung bình từ 1ms đến 100ms)

1.2.3 Module ngõ vào

Module ngõ vào có chức năng nhận biết tín hiệu vào Đưa tín hiệu ngõ vào tới bộ xử

lý trung tâm đồng thời cách ly ngõ vào với bộ xử lý trung tâm Module ngõ vào có thể ởdạng logic “0”, “1” như công tắc, công tắc hành trình cảm biến hồng ngoại, cảm biếntiệm cận, cảm biến kim loại, cảm biến áp suất … module vào còn có dạng analog nhưcảm biến lưu lượng, cảm biến nhiệt, vị trí, tốc độ…

Ngõ vào có thể DC hoặc AC Ngõ vào DC được sử dụng nhiều hơn do ngõ vào DC có

Trang 8

Hình 1.6 Sơ đồ mạch điện 1 ngõ vào sử dụng nguồn cũng cấp DC và AC

1.2.4 Module ngõ ra

Module có ngõ ra có chức năng đưa mức logic tới ngõ ra để điều khiển thiết bị Có 3dạng ngõ ra chính là ngõ ra transistor, ngõ ra rơ le, ngõ ra triac Ngõ ra rơ le có ưu điểmhơn là có thể sử dụng các thiết bị cần điều khiển ở dạng xoay chiều và một chiều Cácthiết bị cần điều khiển được nối với ngõ ra như động cơ, van khí nén, đèn báo, đèn chiếusáng, chuông báo

Hình 1.7 Mạch ngõ ra với các loại ngõ ra khác nhaua) Ngõ ra transistor b) Ngõ ra relay c) Ngõ ra triac

1.3 Kết Luận

PLC là thiết bị phổ thông và hữu ích trong công nghiệp, với khả năng mạnh mẽ thaythế cho hệ rơ le cồng kềnh, có độ tin cậy cao, phương pháp lập trình đơn giản Cấu trúccủa PLC cũng khá đơn giản gồm các ngõ vào, ngõ ra, bộ xử lý trung tâm nhưng đem lạihiệu quả và tiện ích rất lớn Đề tài “Thiết kế PLC” là một đề tài hay và sẽ giúp em traudồi được nhiều kiến thức về thiết kế hệ thống, thiết kế mạch, tính toán công suất, lập trìnhnhúng… Ở các chương tiếp theo em đi thiết kế phần cứng và phần mềm cho PLC

Trang 9

Chương 2 Thiết kế phần cứng cho PLC

Mục tiêu: Thiết kế được board PLC cơ bản gồm CPU, module nguồn, module vào, ra

Hình 2.1 Sơ đồ khối cấu trúc PLC

Trang 10

Hình 2.2 Sơ đồ nguyên lý mạch nguồnNguyên lý hoạt động của mạch:

- Điện áp 220VAC đi qua biến áp sau đó được đưa qua bộ chỉnh lưu cầu cho ra điện

áp một chiều 30VDC

- Cho tiếp qua tụ lọc C1, C2, C3 lọc phẳng

- Qua bộ bảo vệ quá dòng đi vào IC LM2576

- Điện áp ra khỏi LM2576 đi qua cực K của đi ốt D2 sau đó đi qua bộ lọc điện ápgồm tụ điện C4 và cuộn cảm L1

- Lúc này điện áp đầu ra nằm trong khoảng 1,2VDC đến 50VDC Điện áp ra đượcđiều chỉnh qua biến trở VR2 (điều chỉnh về 5V và 24V)

- Mạch có các khối bảo vệ và led báo

Bảo vệ quá dòng Nguyên lý điện áp cực B (U2) của T1 lớn hơn điện áp cực E (U3)của T1 nên T1 dẫn Điều chỉnh biến trở sao cho sụt áp tại U4 so với U3 là = 2V Chọn R2

= 1Ω Ở chế độ làm việc bình thường U5 lớn hơn U4 nên T2 không dẫn, mạch hoạt độngbình thường Khi dòng tải lớn hơn 2A thì U5 nhỏ hơn U4 nên T2 dẫn Lúc này sẽ có điện

áp đặt vào cực G của TH1 làm cho TH1 dẫn Lúc này điện áp đi theo chiều U1 U2 GND làm ngắt mạch tải khỏi nguồn bảo vệ mạch Muốn mạch hoạt động lại thì khởiđộng lại, ngắt nguồn, reset mạch

-Tính toán chọn thông số các linh kiện:

- Biến áp loại 30V-3A

- Đi ốt chỉnh lưu phải chịu được dòng 3A chọn 4 đi ốt loại 1N5408-5A, 1000V

Trang 11

- Vì điều chỉnh biến trở sao cho sụt áp giữa U3 và U4=2V, mà dòng cần bảo vệ 2A,khi UR2 lớn hơn 2V thì mạch sẽ được bảo vệ, nên điện trở R2 là 2:2 = 1Ω và 2W

- Chọn R1 không quá nhỏ để khi T1 không dẫn dòng qua R1 không quá lớn, chọnR1 không quá lớn để khi T1 dẫn thì không gây sụt áp nhiều tại U3 Giả sử dòngmax bằng 2A, dòng qua R1 bằng 0,02A Giả sử chọn R1=220Ω thì sụt áp tại U3

- Led báo là 1 là led đỏ 3mm , Trở R4=1kΩ

2.2 Khối xử lý trung tâm

Trang 12

Hình 2.3 Sơ đồ nguyên lý khối xử lý trung tâmNguyên lý hoạt động:

- Để có thể đọc trạng thái các ngõ vào sử dụng các chân 33, 34, 35 Vi điều khiểnđiều khiển chân CLOCK và LOAD để đọc dữ liệu từ chân DATA_OUT (Đây làngõ vào nối tiếp của 74HC165) Từ đó có thể biết trạng thái các ngõ vào, sau đó viđiều khiển sẽ xử lý vào xuất các tín hiệu đến ngõ ra

- Đối với ngõ vào truyền thông, thì vi điều khiển sử dụng hai chân Tx, Rx (chân 25,chân 26) để có thể giao tiếp với các thiết bị khác

- Sau khi đọc và xử lý các tín hiệu ngõ vào, vi điều khiển sẽ sử dụng các chân SCL,SCK, DATA_IN để xuất các tín hiệu điều khiển ngõ ra DATA_IN là chân truyềntín hiệu nối tiếp đến 74HC595, từ đó xuất ra các ngõ ra song song rơ le

Tính toán lựa chọn các linh kiện:

- Sử dụng vi điều khiển PIC16F887 làm bộ xử lý trung tâm Một vài thông số củaPIC16F887:

+ Điện áp hoạt động rộng từ 2-5,5V

+ Có nguồn công suất thấp 220uA ở tần số hoạt động 4MHz, nguồn 2V

+ Có bảo vệ code đã lập trình, không cho sao chép

+ Bộ nhớ flash cho phép xóa và lập trình 100000 lần

+ Bộ nhớ chương trình 8K word (1 word = 14 bit)

+ Có 35chân I/O mỗi ngõ ra có thể nhận hoặc cấp dòng lớn khoảng 25mA

+ Có 14 ngõ vào ADC với độ phân giải 10 bit

+ Có 3 timer:

Trang 13

Timer 0 : 8bit (làm bộ định thời/ đếm xung ngoại) có bộ chia trước có thể lập trìnhTimer 1: 16 bit (làm bộ định thời/ đếm xung ngoại)

Timer 2: 8 bit (làm bộ định thời )

+ Hỗ trợ chuẩn giao tiếp SPI, I2C, USART

- Tụ điện dùng với thạch anh để PIC hoạt động từ 20pF đến 33pF (chọn 22pF)

- Để PIC làm việc ở tần số tối đa chọn Thạch anh 20MHz

- Vì mạch Reset của PIC hoạt động khi tín hiệu Reset ở mức thấp nên kéo nút Resetbằng điện trở kéo 10k lên nguồn

- Một Jump 6 chân làm mạch nạp cho chip, sử dụng 1 đi ốt để bảo vệ mạch nạp choPIC Chọn đi ốt SS14 với sụt áp 0,7V

- Cách ly ngõ vào điện áp cao với bộ xử lý trung tâm

- Hệ thống leb báo ngõ vào

Yêu cầu:

Trang 14

- Phải truyền được tín hiệu vào tới vi điều khiển chính xác

- Có hệ thống led báo ngõ vào

- Có thể mở rộng ngõ vào dễ dàng

Hìn

h 2.5 Sơ đồ một ngõ vàoNguyên lý hoạt động:

- Công tắc, nút ấn, cảm biến … được đưa vào CT0 đến CT7 (điện áp vào từ 0-30Vtương đương với mức logic cao 5V, mức logic thấp 0V của vi điều khiển)

- Sau đó đi qua 4N35, 4N35 có nhiệm vụ cách ly điện áp 24V (ngõ vào) với điện ápvào vi điều khiển 5V

- Đầu ra của 4N35 được đưa vào cổng song song từ D0 đến D7 của 74HC165 Với

8 cổng đầu vào 74HC165 thì cổng ra nối tiếp gồm 8 bit được đưa đến vi điềukhiển, vi điều khiển xử lý và xuất tín hiệu điều khiển ngõ ra

- Với thiết kế ngõ vào sử dụng 74HC165 thì có thể ghép nối nối tiếp nhiềuIC74HC165 lại tạo để mở rộng ngõ vào (ghép nối tiếp bằng cách với mỗi boardmạch được thiết kế, ta chỉ cần ghép chân số 10 của 74HC165 thứ 2 vào chân 9 của74HC165 thứ nhất) Ưu điểm là mở rộng ngõ vào đơn giản và được nhiều ngõvào, nhược điểm càng nhiều ngõ vào thì tín hiệu xử lý càng chậm do phải chuyểntừng bit một vào vi điều khiển

- Hệ thống led báo sẽ sáng tương đương ngõ vào ở mức logic 1, led báo tắt khi ngõvào ở mức logic 0

- Nút bấm giúp kiểm tra mạch khi chưa có đầy đủ thiết bị như cảm biến (bấm tươngđương mức logic 1, tắt tương đương mức logic 0 và led báo sáng tương tự như khi

có cảm biến thật), hoặc dùng thay thế ngõ vào khi ngõ vào là nút nhấn, công tắc.Tính toán thông số (tính toán các thông cho sơ đồ một ngõ vào):

- Điện áp ngõ vào từ 0-30VDC (các ngõ vào CT0 đến CT7)

- Điện trở R1 có chức năng hạn dòng, chọn R1=1kΩ, tụ C1 có chức năng khử độrung của nút nhấn, chọn C1 = 100nF

Trang 15

- Sử dụng OPTO 4N35 để làm bộ cách ly quang Ta đi xác định các ngưỡng điện ápngõ vào CT0 để có được mức logic 1 và 0 đưa vào vi điều khiển.

Mức logic 1 của 74HC165 từ 3,5 đến 5V, mức logic 0 từ 0 đến 1,5V (khi 74HC165 cómức 1 tương đương vi điều khiển có mức 1, khi 74HC165 ở mức 0 cũng tương đương viđiều khiển có mức 0)

Xác định giá trị điện trở R2, R3 khi sử dụng với điện áp cực đại và dòng cực đại đểmạch luôn ổn định k bị hỏng hoặc bị ảnh hưởng từ công suất

Với điện áp CT1=30V, dòng điện max ngõ vào của 4N35 là 60mA thì

IR3 = (3,5 - 2)/220 = 0,0068 A

Hình 2.6 Đường đặc tính mối liên hệ ICE và IF của 4N35Tra bảng với IR3 = 0,0068A ta có IF (IR2) lúc này bằng 8mA Vậy 8mA là dòng tối thiểungõ vào để có điện áp U4 bằng 3.5V

Điện áp tối thiểu CT1 để ngõ ra có mức 1 là:

UCT1 = 0,008.470 + 1.5 = 5,26 V

Trang 16

Đi xác định khoảng điện áp đưa tới ngõ vào để vi điều khiển nhận mức 0

Với U4 = 1,5V lúc này dòng điện là

IR3 = (1,5 - 0,7)/220 = 0,00364

Tra bảng IR2 = 0,004A

Vậy điện áp đầu vào là

UCT1 = 0,004.470 + 1.5 = 3.38V

Vậy mức logic 0 của ngõ vào (UCT1) là trong khoảng 0 đến 3,38

Điện áp ngõ vào từ 3,38 đến 5,26 là trạng thái không xác định của vi điều khiển

- Có 8 ngõ ra kiểu rơ le, do ngõ ra dạng rơ le nên có thể dùng được điện AC và DC

- Điều khiển ngõ ra chính xác với tín hiệu bộ xử lý trung tâm xuất ra

- Cách ly điện áp từ vi điều khiển đến ngõ ra hoàn toàn

Trang 17

- Có hệ thống LED báo đầu ra

- Có thể mở rộng ngõ ra

Nguyên lý hoạt động:

- Vi điều khiển truyền 8 bit dữ liệu nối tiếp vào chân 14 của 74HC595, sau đó74HC595 truyền dữ liệu đó ra 8 cổng song song từ OUT0 đến OUT8

- Do dòng ra khỏi 74HC595 (35mA) k đủ để kích rơ le (rơ le cần 100mA kể kích)

Và để đảm bảo an toàn thì các tín hiệu ra khỏi 74HC595 được đưa vào chân số 1của Opto PC817 tạo thành lớp cách ly thứ nhất cho vi điều khiển

- Do dòng ra khỏi Opto (25mA) cũng không đủ kể kích rơ le nên sử dụng IC đệmULN2803 để kích dòng rơ le Dòng của ULN2803 có thể lên đến 500mA

- Đầu ra của ULN2803 nối tới rơ le để kích mở điều khiển đóng cắt rơ le tạo thànhlớp cách ly thứ 2

- Rơ le điều khiển các thiết bị điện ở ngõ ra

- Các LED báo tương đương với các thiết bị được điều khiển

- Mạch có đi ốt D1 bảo vệ nguồn

- Mạch có đi ốt D2 đi kèm rơ le bảo vệ ULN2803 và bộ xử lý trung tâm

- Mạch có khối chọn nguồn cho ngõ ra, nguồn AC, DC

Hình 2.8 Sơ đồ một ngõ ra

Tính toán các thông số cho một ngõ ra:

- Điện áp ngõ ra có thể sử dụng từ 0 đến 220VAC hoặc có thể sử dụng nguồn DC

- Các ngõ ra của 74HC595 là 5V

Trang 18

- Chọn rơ le loại rơ le 5V, 10A.

Điện áp xoay chiều 220V, 10A

Điện áp một chiều 30V, 10A

- Mạch được thiết kế với Jump chốt để chọn nguồn, khi cắm Jump chốt JC1, JC2 thì

sử dụng nguồn 24V Khi sử dụng nguồn AC thì không cắm Jump chốt

2.5 Khối truyền thông

Hình 2.9 Sơ đồ nguyên lý khối truyền thôngChức năng:

- Sử dụng để giao tiếp PLC với máy tính hoặc với các thiết bị khác

- Một cổng truyền thông RS 232 kết nối trực tiếp với máy tính

- Một cổng truyền thông RS485 để có thể kết nối được đi xa

Yêu cầu:

- Có module truyền thông chuẩn RS232 kết nối trực tiếp với máy tính

- Có module truyền thông RS485 để có thể kết nối được đi xa với 2 dây A, B

Trang 19

Nguyên lý hoạt động của mạch:

- Mạch truyền thông RS232

Chuẩn RS232 có mức logic 1 từ -3 đến -12V, mức logic 0 từ 3 đến 12V Chuẩn TTLmức logic 1 từ 2.2 đến 5V, mức logic 0 từ 0-0.8V Do đó muốn truyền thông giữa vi điềukhiển và máy tính phải chuyển đổi tín hiệu từ TTL sang RS232 và ngược lại

Khi truyền, dữ liệu từ chân Tx của vi điều khiển đến Max232, Max232 chuyển đổiTTL sang RS232, dữ liệu ra chân Tout, chân này được nối vào cổng COM tới máy tính.Khi nhận, máy tính truyền dữ liệu vào chân Rin, Max232 chuyển đổi RS232 sangTTL, dữ liệu ra chân Rout, chân này được nối với Rx của vi điều khiển

Khi nhận dữ liệu chân |RE được đưa mức thấp, lúc đó dữ liệu từ A, B được mã hóa về

dữ liệu TTL và đưa đến chân RO về vi điều khiển RO có mức logic cao khi A lớn hơn B200mV, RO có mức logic thấp khi B lớn hơn A 200mV

Tính toán lựa chọn linh kiện:

- Chọn IC MAX232 chuyển đổi TTL sang RS232 Tụ để MAX232 hoạt động 1uF

- Chọn cổng COM DP9 để kết nối với máy tính

- Chọn IC MAX485 chuyển đổi TTL sang RS485 Điện trở đầu cuối R=120 Ω

Trang 20

2.6 Ghép nối mở rộng

Hình 2.10 Nguyên lý ghép nối mở rộngChức năng: Mở rộng ngõ vào ra cho PLC

Lựa chọn cách ghép nối: Ghép nối bởi 2 cổng COM và 2 thanh Jump cong với nhau

2.7 Mạch thiết kế, mạch thực tế dựa trên các phần đã tính toán và thiết kế

Trang 22

Hình 2.11 Mạch PCB thiết kế dựa trên tính toán các mục trên

Hình 2.12 Board mạch PLC đã được thiết kế

Trang 23

Chương 3 Thiết kế phần mềm

Mục tiêu: Thiết kế một chương trình để chuyển đổi code từ ngôn ngữ ladder sang ngôn

ngữ C để nạp vào vi điều khiển

3.1 Phương án thiết kế phần mềm

Để dịch code từ ngôn ngữ ladder sang C cần chuyển ladder qua STL sau đó xử lýchuỗi có dạng ngôn ngữ STL và chuyển sang C

Mối liên hệ giữa các ngõ vào và ngõ ra được biểu diễn bằng các biểu thức toán học

mô tả sự phụ thuộc của biến ngõ ra bởi các biến ngõ vào

Hàm mô tả sự phụ thuộc biến ngõ ra bởi n biến đầu vào có dạng

y = f(x1, x2, x3 … xn)

Việc mô tả sự phụ thuộc biến ra bởi các biến vào dựa trên các phép ^ (AND), v (OR),

- (NOT), và các phép logic so sánh biến đếm, biến thời gian timer Ngõ ra sẽ là kết quảcủa phép toán logic các đầu vào

Trang 24

Hình 3.1 Các phép logic cơ bảnMột số quy tắc khi xử lý file:

- Các lệnh LD, LDN, A, AN, O, ON, ALD, OLD, NOT… (các lệnh khai báo tiếpđiểm thường đóng hoặc mở) không dùng để kết thúc chương trình

- Các lệnh phát hiện sườn lên xuống (EU, ED) đặt ở nhánh chính, hoặc trước ngõ ra

- Ngõ ra M, SM, Q, TON, TOF, CTU, CTUD … phải ở cuối chương trình, thườngngăn cách ngõ vào và được nhận diện bởi dấu “ = ”

- Trong một Network các nhánh nhỏ bắt đầu bằng LD Thực hiện ghép các nhánhnhỏ bằng ALD, OLD

3.2 Các lệnh cơ bản trong PLC

3.2.1 Load (LD)

Lệnh LD có chức năng khai báo một biến vào, biến ở dạng thường hở, là lệnh bắt đầumột nhánh, bắt đầu một Network, có thể dùng để nhận biết 1 network khi kết hợp với một

số lệnh ở trước và một số ký tự đặc biệt trước

Hình 3.2 Bảng chân lý, lệnh ở dạng Ladder và STL của lệnh Load

3.2.2 AND (A)

Lệnh A có chức năng thực hiện phép logic AND hai biến, biến trước A và biến A khaibáo (biến A khai báo ở dạng thường hở) Lệnh AND thường đặt giữa Network

Trang 25

Hình 3.3 Bảng chân lý, lệnh ở dạng Ladder, STL của lệnh AND

Lệnh LDN tương tự như lệnh LD nhưng biến khai báo ở trạng thái thường đóng

Hình 3.5 Bảng chân lý, lệnh ở dạng Ladder, STL của lệnh Load NOT

Trang 26

3.2.5 AND NOT (AN)

Lệnh AN tương tự như lệnh AND nhưng biến của AN ở dạng thường đóng

Hình 3.6 Bảng chân lý, lệnh ở dạng Ladder, STL của lệnh AND NOT

3.2.6 OR NOT (ON)

Lệnh ON tương tự như lệnh OR nhưng biến của ON ở dạng thường đóng

Hình 3.7 Bảng chân lý, lệnh ở dạng Ladder, STL của lệnh ON

3.2.7 NOT (|NOT|)

Lệnh NOT thực hiện nghịch đảo giá trị đầu vào NOT, lệnh NOT được đặt ở giữachương trình,

Trang 27

Hình 3.8 Bảng chân lý, lệnh ở dạng Ladder, STL của lệnh NOT

3.2.8 EU (|P|)

Lệnh EU nhận biết sườn lên Khi một xung từ 0-1 tới EU Ngõ ra = 1 trường hợp khácngõ ra = 0, EU thường được đặt ở nhánh chính hoặc trước lệnh ngõ ra Thường dùng lệnhnày trong counter hoặc TOF

Trang 28

Hình 3.11 Bảng chân lý, lệnh ở dạng Ladder, STL của lệnh OLD

3.2.11 AND LOAD (ALD)

Lệnh ALD thực hiện phép logic AND hai chuỗi lệnh thẳng trước lệnh ALD

Hình 3.12 Bảng chân lý, lệnh ở dạng Ladder, STL của lệnh ALD

Trang 29

Cú pháp STL:

LD IN // ngõ vào cho phép timer hoạt động

TON T, R // T địa chỉ Timer, R là giá trị tính toán trễ

Hình 3.14 Ví dụ TON với lệnh Ladder tương ứng STL

Trang 30

Hình 3.15 Ví dụ TOF với lệnh Ladder tương ứng STL

3.2.15 COUNTER CTU

Chức năng:

- Là bộ đếm, đếm số xung (từ 0 lên 1) tại ngõ vào

- So sánh số xung với giá trị đặt

- Nếu số xung lớn hơn hoặc bằng giá trị thì ngõ ra bộ đếm = 1

- Ngõ ra bộ đếm được Reset bằng ngõ vào Reset (R)

Cú pháp:

LD IN1 // IN1 là đầu vào đếm xung

LD IN2 // IN2 là đầu vào Reset

CTU C, N // C là địa chỉ nhớ, N giá trị đặt số xung

Hình 3.16 Ví dụ CTU với lệnh Ladder tương ứng STL

3.2.16 COUNTER CTUD

Chức năng:

- Là bộ đếm lên xuống Khi có tín hiệu đếm lên bộ đếm tăng một đơn vị

- Khi có tín hiệu đếm xuống bộ đếm giảm một đơn vị

- Khi giá trị bộ đếm lớn hơn hoặc bằng với giá trị thiết lập thì ngõ ra = 1

Trang 31

Hình 3.17 Ví dụ CTUD với lệnh Ladder tương ứng STL

Cú pháp:

LD IN2 // ngõ vào đếm xuống

CTUD C, N // ngõ ra đếm và giá trị thiết lập đếm

3.3 Thuật toán xử lý

Các bước tổng quát từ viết chương trình đến chạy chương trình hoạt động

- Viết chương trình PLC dưới dạng ladder sau đó export file chương trình

- Chạy chương trình dịch code

- Mở file C và nạp chương trình vào PLC

- Cấp nguồn hoạt động

Trang 32

Hình 3.18 Sơ đồ khối các bước thực hiện từ lập trình đến nạp chương trình cho PLC

Các bước viết trong chương trình dịch code

Bước 1: Mở file đã được export từ chương trình ladder, tạo một file ghi chương trình chỉ chứa code STL

Bước 2: Chuyển file chứa code STL thành list, xử lý list sao cho thuận tiện bước 3 nhấtBước 3: Lập các biểu thức ngõ ra dựa trên các biến ngõ vào từ list đã được xử lý

Bước 4: Tạo file c ghi vào file cấu trúc một chương trình viết cho vi điều khiển, các chương trình con timer, ngắt timer, đọc ngõ vào, xuất ngõ ra… quan trọng nhất là ghi cácbiểu thức toán học đã được xử lý ở bước 3 vào vòng lặp chính của chương trình chính

Bước 1: Tạo file chứa mã code STL

Ban đầu mở file được export để đọc, đồng thường mở một file để ghi dữ liệu cần thiếtsang (file code chương trình)

Trang 33

Thực hiện đọc từng dòng lệnh từ dòng đầu tiên đến dòng cuối cùng trong file đượcexport, nếu dòng lệnh đó là code dạng STL thì thêm code đó vào file code chương trìnhTrong quá trình đọc file nếu xác định được kết thúc một network nhỏ thì thêm ký tự

‘N’ để đánh dấu kết thúc một network

Sau khi hoàn thành quá trình sẽ tạo ra được một file chỉ chứa code dạng STL

Hình 3.19 Hình ảnh file ban đầu và file sau khi thực hiện

Thuật toán xử lý file, tạo ra file chứa code STL

Trang 34

Hình 3.20 Sơ đồ khối thuật toán xử lý file, tạo file chứa mã code STL

Trang 35

Bước 2: Chuyển file chứa code STL thành list, xử lý lại các ký tự trong list, tách các nhánh

Sau khi có file chứa code STL, chuyển file code STL sang list, sau đó thay thế các ký

tự cho phù hợp với ngôn ngữ C, như dấu “.” chuyển thành dấu “_’ Dấu “,” thì bỏ qua vàtiếp điểm thường đóng thêm ký tự “H” đằng sau

Thuật toán chuyển file chương trình STL thành list

Hình 3.21 Sơ đồ khối chuyển file code chương trình thành list Với ví dụ ở Hình 3.19 chuyển file thành list ta sẽ có list sau:

listcodebd = ['LD', 'I0.0', 'TON', 'T97', ',', '1000', 'N', 'LDN', 'T97', '=', 'Q0_0', 'N']

Thuật toán chuyển “.” thành “_” “,” bỏ qua Thêm “H” vào tiếp điểm thường đóng

Trang 36

Hình 3.22 Sơ đồ khối xử lý chuỗi chuyển đổi phù hợp sang ngôn ngữ C

Sau khi chuyển đổi các ký tự phù hợp với ngôn ngữ C ta có list sau:

listcode = ['LD', 'I0_0', 'TON', 'T97', '1000', 'N', 'LDN', 'T97H', '=', 'Q0_0', 'N']

Thuật toán tách các nhánh

Nhánh là chuỗi các lệnh thẳng không rẽ nhánh trong ladder

Tách các nhánh có nhiệm vụ quan trọng để thực hiện các biểu thức ở bước 3 dễ dànghơn Tách nhánh bằng cách thực hiện kiểm tra điều kiện mở đầu nhánh, mở đầu network,kết thúc nhánh, kết thúc network để đặt dấu “(“ hoặc “)” cho phù hợp

Trang 37

Hình 3.23 Sơ đồ khối tách các nhánh trong code STLVới ví dụ ở Hình 3.19 Sau khi tách các nhánh nhỏ ta có kết quả sau

listcode=['(', 'LD', 'I0_0', ')', 'TON', 'T97', '1000', 'N', '(', 'LDN', 'T97H', ')', '=', 'Q0_0', 'N']

Bước 3: Lập các biểu thức ngõ ra từ list đã được xử lý

Trang 38

LD tương ứng với khai báo biến thường mở

LDN tương ứng với khai báo biến thường đóng

A tương ứng với lệnh nhân với biến thường mở

AN tương ứng với lệnh nhân với biến thường đóng

O tương ứng với lệnh cộng biến thường mở

ON tương ứng với lệnh cộng biến thường đóng

NOT tương ứng với lệnh đảo ngõ ra

ALD tương ứng với nhân 2 nhánh lệnh nhỏ trong network

OLD tương ứng với cộng 2 nhánh lệnh nhỏ trong network

EU tương ứng với lệnh xác định sườn lên của ngõ vào

ED tương ứng với lệnh xác định sườn xuống của ngõ vào

= tương ứng với lệnh khai báo ngõ ra

TON tương ứng với lệnh gọi chương trình timer đóng chậm

TOF tương ứng với lệnh gọi chương trình timer mở chậm

CTU tương ứng với lệnh gọi chương trình đếm lên

CTUD tương ứng với lệnh gọi chương trình đếm lên xuống

Thuật toán xử lý là đọc từng network Mỗi network đọc từ ký tự đầu tiên đến ký tựcuối cùng của network (nhận biết hết network bằng ký tự “N”)

Sau khi đọc xong network thì xóa network đó để đọc được network tiếp theo, rồi lặplại quá trình đọc cho đến khi hoàn thành

Kết thúc mỗi lần đọc network chương trình sẽ xử lý được một biểu thức thể hiện mốiliên hệ ngõ vào và ngõ ra Biểu thức này sẽ được viết vào chương trình chính của file cBiểu thức có dạng:

Trang 39

Dưới đây là thuật toán xử lý list để đưa ra các biểu thức toán học ngõ ra

Trang 40

Thuật toán xử lý list đưa ra biểu thức ngõ ra.

Ngày đăng: 25/08/2021, 21:02

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w