Bộ xử lý : là bộ xử lý trung tâm (CPU), chứa bộ vi xử lý, biên dịch các tín hiệu nhập và thực hiện các hoạt động điều khiển theo chương trình được lưu trong bộ nhớ của PLC. Truyền các quyết định dưới dạng tín hiệu hoạt động đến các thiết bị xuất.
Bộ nguồn : chuyển đổi điện áp AC thành điện áp DC (24V) cần thiết cho bộ xử lý và các mạch điện trong các module giao tiếp nhập và xuất hoạt động.
Bộ nhớ : là nơi lưu trữ chương trình được sử dụng cho các hoạt động điều khiển dưới sự kiểm soát của bộ vi xử lý.
Các thành phần nhập và xuất (INPUT/OUTPUT) : là nơi bộ nhớ nhận thông tin từ các thiết bị ngoại vi và truyền thông tin đến các thiết bị điều khiển. Tín hiệu nhập có
Board module truyền thông mở
rộng
3
Bộ đếm xung tốc độ
cao 3 bộ đếm tối đa 100 kHz; 3 bộ đếm tối đa 30 kHz
Thẻ nhớ SIMATIC SIMATIC
Thời gian lưu trữ
thời gian thực 20 ngày và ít nhất là 12 ngày ở 40 oC Cổng truyền thông PROFINET Ethernet 2 2 Tốc độ tính tốn thực 18 μs/ lệnh
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
33 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân
thể từ các công tắc, các bộ cảm biến,… Các thiết bị xuất có thể là các cuộn dây của bộ khởi động động cơ, các van solenoid…
3.2.3 Module mở rộng của PLC S7 – 1200
Bảng 3. 2: Module mở rộng của PLC S7 – 1200
Module Input Output Cả Input / Output
Module tín hiệu (SM – Signal Module) Kiểu Digital 8 x DC In 8 x DC out 8 x Rly out 8 x DC In / 8 x DC out 8 x DC In / 8 x Rly out 16 x DC In 16 x DC out 16 x Rly out 16 x DC In / 16 x DC out 16 x DC In / 16 x Rly out Kiểu Analog 4 x AI 8 x AI 2 x AI 4 x AI 4 x AI / 2 x AO Bảng tín hiệu (SB – Signal Board) Kiểu Digital None None 2 x DC In / 2 x Dc out Kiểu Analog None 1 x AI None
Module truyền thông (CM)
RS485 : PTP (Point to Point Comunication Module). RS232 : PTP (Point to Point Comunication Module).
3.2.4 Ngơn ngữ lập trình cho PLC S7 – 1200
Ở PLC S7 – 1200, Siemens đã phát triển ngơn ngữ lập trình và ưu tiên 3 ngơn ngữ là: FBD, SCL và được ưu tiên và ưu chuộng nhiều hơn là LAD.
FBD (Function Block Diagram): là ngơn ngữ lập trình dựa theo đại số Bool. SCL (Structure Language Control): là ngơn ngữ lập trình dựa theo dạng text và là ngôn ngữ dựa trên nền Pascal.
LAD (Ladder): là một ngơn ngữ lập trình dựa theo sơ đồ mạch điện, cực kì đơn giản, dễ hiểu và dễ chỉnh sửa
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
34 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân Hình 3. 9: Ngơn ngữ lập trình LAD
LAD là ngôn ngữ phổ biến được các kỹ sư sử dụng, mà ở đó các phần tử của một sơ đồ mạch điện gồm các cuộn dây, các tiếp điểm thường đóng hay thường mở, được nối với nhau tạo thành bậc thang.
Trong một network, có thể chèn vào các nhánh để tạo ra các mạch logic song song. Các nhánh song song được mở ra theo hướng xuống hay được kết nối trực tiếp đến thanh dẫn tín hiệu. Mỗi nhanh sẽ được nối lên trục chính để kết thúc.
Những chú ý khi sử dụng ngơn ngữ LAD trong lập trình:
- Mỗi network được viết bằng LAD phải kết thúc bằng lệnh hộp hay cuộn dây. Không được kết thúc network với cả như lệnh so sánh (Compare) hay lệnh phát hiện ngưỡng, sẽ tạo ra lỗi.
- Không thể tạo ra một nhánh mà có thể đưa lại kết quả là một dịng tín hiệu theo chiều ngược lại.
- Khơng thể tạo ra một nhánh mà có thể gây nên ngắn mạch.
3.2.5 Phương pháp lập trình PLC S7 – 1200
Ưu điểm của lập trình bằng PLC là linh động, không liên quan đến hệ thống đấu dây phần cứng. Từ đó, khi muốn thay đổi hay nâng cấp hệ thống, ta chỉ việc thay đổi chương trình chứ khơng cần phải thay đổi hệ thống đấu dây.
Phương pháp điều khiển lập trình gồm các bước:
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
35 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân Hình 3. 10: Phương pháp lập trình PLC
3.2.6 Các tập lệnh cơ bản của PLC S7 – 1200
3.2.6.1 Bit Logic
Tiếp điểm thường hở NO (Normally Open) được đóng lại (ON) khi giá trị bit được gán bằng 1 và tiếp điểm thường đóng NC (Normally Closed) được đóng lại (ON) khi giá trị bit được gán bằng 0.
Các tiếp điểm được nối nối tiếp sẽ tạo ra mạch logic AND. Các tiếp điểm được nối song song sẽ tạo ra mạch logic OR.
3.2.6.2 Bộ đảo logic NOT
Tiếp điểm NOT (LAD) chuyển đổi trạng thái logic của đầu vào tín hiệu. Nếu khơng có dịng tín hiệu vào trong tiếp điểm NOT, sẽ có tín hiệu ra. Nếu có dịng tín hiệu vào trong tiếp điểm NOT, sẽ khơng có tín hiệu ra.
3.2.6.3 Cuộn dây ngõ ra (LAD)
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
36 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân
Nếu có luồng tín hiệu chạy qua một cuộn dây ngõ ra, bit ngõ ra được đặt lên mức 1.
Nếu khơng có luồng tín hiệu chạy qua một cuộn dây ngõ ra, bit ngõ ra được đặt về mức 0.
Nếu có luồng tín hiệu chạy qua một cuộn dây ngõ ra đảo, bit ngõ ra được đặt về mức 0.
Nếu khơng có luồng tín hiệu chạy qua một cuộn dây ngõ ra đảo, bit ngõ ra được đặt lên mức 1.
3.2.6.4 Các lệnh Set và Reset
Lệnh S và R: Set và Reset 1 bit.
Khi lệnh S (Set) được kích hoạt, giá trị dữ liệu ở địa chỉ OUT được đặt lên mức 1. Khi lệnh S khơng được kích hoạt, ngõ ra OUT khơng bị thay đổi.
Khi lệnh R (Reset) được kích hoạt, giá trị dữ liệu ở địa chỉ OUT được đặt về mức 0.
Khi lệnh R khơng được kích hoạt, ngõ ra OUT khơng bị thay đổi. Những lệnh này có thể được đặt tại bất cứ vị trí nào trong mạch.
3.2.6.5 Lệnh dò ngưỡng dương và âm
Tiếp điểm P (LAD): trạng thái của tiếp điểm này là “TRUE” khi một sự quá độ dương (từ OFF sang ON) được phát hiện trên bit “IN” được gán. Trạng thái logic của tiếp điểm sau đó được kết hợp với dịng tín hiệu trong mạch để thiết lập trạng thái ngõ ra của dịng tín hiệu. Tiếp điểm P có thể được định vị tại bất kỳ vị trí nào trong mạch, ngoại trừ vị trí kết thúc của một nhánh.
Tiếp điểm N (LAD): trạng thái của tiếp điểm này là “TRUE” khi một sự quá độ âm (từ ON sang OFF) được phát hiện trên bit được gán. Trạng thái logic của tiếp điểm sau đó được kết hợp với dịng tín hiệu trong mạch để thiết lập trạng thái ngõ ra của
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
37 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân
dịng tín hiệu. Tiếp điểm N có thể được định vị tại bất kỳ vị trí nào trong mạch, ngoại trừ vị trí kết thúc của một nhánh.
3.2.6.6 Lệnh Timer
Sử dụng lệnh Timer để tạo một chương trình trễ định thời. Số lượng của Timer phụ thuộc vào người sử dụng và số lượng vùng nhớ của CPU. Mỗi timer sử dụng 16byte IEC_Timer dữ liệu kiểu cấu trúc DB. Step 7 tự động tạo khối DB khi lấy khối Timer.
Kích thước và tầm của kiểu dữ liệu Time là 32 bit, lưu trữ như là dữ liệu Dint: T#-14d_20h_31m_23s_648ms đến T#24d_20h_31m_23s_647ms hay là - 2.147.483.648 ms đến 2.147.483.647 ms.
Timer gồm có các loại timer:
- Timer tạo xung - TP
Timer TP tạo một chuỗi xung với độ rộng xung đặt trước. Thay đổi PT, IN không ảnh hưởng khi Timer đang chạy.
Khi đầu vào IN được tác động vào timer sẽ tạo ra một xung có độ rộng bằng thời gian đặt PT.
- Timer trễ sườn lên có nhớ - Timer TONR
Thay đổi PT không ảnh hưởng khi Timer đang vận hành, chỉ ảnh hưởng khi timer đếm lại.
Khi ngõ vào IN chuyển sang “FALSE” khi vận hành thì timer sẽ dừng nhưng khơng đặt lại bộ định thì. Khi chân IN “TRUE” trở lại thì Timer bắt đầu tính thời gian từ giá trị thời gian đã tích lũy.
- Timer trễ không nhớ - TON ; Timer trễ sườn xuống - TOF
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
38 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân
Khi ngõ vào IN ngừng tác động thì reset và dừng hoạt động Timer, thay đổi PT khi Timer vận hành khơng có ảnh hưởng gì.
3.2.6.7 Bộ đếm Counter
Lệnh Counter được dùng để đếm các sự kiện ở ngồi hay các sự kiện q trình ở trong PLC. Mỗi Counter sử dụng cấu trúc lưu trữ của khối dữ liệu DB để làm dữ liệu của Counter. Step 7 tự động tạo khối DB khi lấy lệnh.
Tầm giá trị đếm phụ thuộc vào kiểu dữ liệu mà bạn chọn lựa. Nếu giá trị đếm là một số Interger khơng dấu, có thể đếm xuống tới 0 hoặc đếm lên tới tầm giới hạn. Nếu giá trị đếm là một số interder có dấu, có thể đếm tới giá trị âm giới hạn hoặc đếm lên tới một số dương giới hạn.
- Counter đếm lên - CTU
Giá trị bộ đếm CV được tăng lên 1 khi tín hiệu ngõ vào CU từ 0 lên 1. Ngõ ra Q được tác động lên 1 khi CV>=PV.
Nếu trạng thái R = Reset được tác động thì bộ đếm CV = 0.
- Counter đếm xuống – CTD
Giá trị bộ đếm được giảm 1 khi tín hiệu ngõ vào CD chuyển từ 0 lên 1. Ngõ ra Q được tác động lên 1 khi CV <=0.
Nếu trạng thái LOAD được tác động thì CV = PV.
- Counter đếm lên xuống – CTUD
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
39 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân
Giá trị bộ đếm CV được tăng lên 1 khi tín hiệu ngõ vào CU chuyển từ 0 lên 1. Ngõ ra QU được tác động lên 1 khi CV >=PV. Nếu trạng thái R = Reset được tác động thì bộ đếm CV = 0.
Giá trị bộ đếm CV được giảm 1 khi tín hiệu ngõ vào CD chuyển từ 0 lên 1. Ngõ ra QD được tác động lên 1 khi CV <=0. Nếu trạng thái Load được tác động thì CV = PV.
3.2.6.8 Lệnh so sánh
So sánh 2 kiểu dữ liệu giống nhau, nếu lệnh so sánh thỏa thì ngõ ra sẽ là mức 1 = TRUE.
Kiểu dữ liệu so sánh là: SInt, Int, Dint, USInt, UDInt, Real, LReal, String, Char, Time, DTL, Constant.
Lệnh so sánh dùng để so sánh hai giá trị IN1 và IN2 bao gồm IN1 = IN2, IN1 >= IN2, IN1 <= IN2, IN1 < IN2, IN1 > IN2 hoặc IN1 <> IN2.
Kiểu so sánh Sự so sánh là đúng nếu:
== INT1 bằng INT2
<> IN1 không bằng INT2
>= INT1 lớn hơn hay bằng INT2
<= INT1 nhỏ hơn hay bằng INT2
> IN1 lớn hơn INT2
< IN1 nhỏ hơn INT2
Kiểu dữ liệu so sánh là: SInt, Int, Dint, USInt, UDInt, Real, LReal, String, Char, Time, DTL, Constant.
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
40 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân
3.2.6.9 Các lệnh tính tốn
Cơng dụng: thực hiện phép tốn từ các giá trị ngõ vào IN1, IN2, IN(n) theo công thức OUT=… (+, -, *, /) rồi xuất kết quả ra ngõ ra OUT.
Các thông số ngõ vào dùng trong khối phải chung định dạng.
Lệnh cộng ADD: OUT = IN1 + IN2.
Lệnh trừ SUB: OUT = IN1 – IN2. Lệnh nhân MUL: OUT = IN1*IN2. Lệnh chia DIV: OUT = IN1/IN2.
Tham số IN1, IN2 phải cùng kiểu dữ liệu: SInt, Int, Dint, USInt, UInt, UDInt, Real, LReal, Constant.
Tham số OUT có kiểu dữ liệu: SInt, Int, Dint, USInt, UInt, UDInt, Real, LReal. Tham số ENO = 1 nếu khơng có lỗi xảy ra trong quá trình thực thi. Ngược lại ENO = 0 khi có lỗi.
3.2.6.10 Lệnh giá trị nhỏ nhất và lớn nhất
Lệnh Min/Max so sánh các giá trị đầu vào và trả lại giá trị nhỏ nhất/ lớn nhất ở đầu ra. Tham số:
EN: cho phép ngõ vào.
IN: Toán tử đầu vào, có thể lên tới 32 đầu vào. OUT: Tốn tử ngõ ra.
ENO: Cho phép ngõ ra.
3.3 Phần mềm lập trình cho PLC S7 – 1200
3.3.1 Tổng quan về phần mềm TIA Portal V16
Totally Integrated Automation Portal (TIA Portal): là phần mềm cung cấp một môi trường thân thiện với người dùng, từ lập trình hiệu chỉnh, thư viện, và bộ điều chỉnh logic cần thiết đến ứng dụng điều khiển.
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
41 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân Hình 3. 11: Phần mềm TIA PORTAL V16
Phần mềm lập trình TIA Portal V16 giúp người dùng dễ dàng phát triển, tích hợp các hệ thống tự động hóa một cách thuận tiện, giảm thiểu thời gian trong việc tích hợp, xây dựng ứng dụng từ những phần mềm riêng biệt, gây khó khăn và dễ gặp lỗi.
TIA Portal là phần mềm cơ sở để tích hợp các phần mềm lập trình của Siemens lại với nhau, cùng một cơ sở dữ liệu chung. Từ đó tạo nên tính thống nhất trong giao diện và tính tồn vẹn cho các ứng dụng. Tất cả các bộ điều khiển PLC, màn hình HMI, các bộ truyền động của Siemens đều được lập trình, cấu hình trên TIA Portal. Việc này giúp giảm thời gian trong việc thiết lập truyền thông giữa các thiết bị này.
3.3.2 Giao diện phần mềm TIA Portal
Phần mền TIA PORTAL V16 làm nhiệm vụ trung gian giữa người dùng, người lập trình và PLC. Các bước để tạo một project trên phần mềm :
Bước 1: Kích đúp vào biểu tượng của TIA Portal V16.
Bước 2: Ở phần Start, kích chuột vào Create New Project để tạo dự án mới.
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
42 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân Bước 3: Tạo tên của Project,sau đó kích Create.
Bước 4: Kích vào Configure a device trước khi kích vào Write PLC program để chọn cấu hình PLC được sử dụng trong Project.
Bước 5: Kích Add new device, chọn loại CPU định sử dụng, ở đây chúng ta sử dụng CPU 1214 DC/DC/DC.
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC
43 SVTH: Bùi Anh Dũng
Phạm Lê Bảo Hoàng
Người hướng dẫn: ThS. Phan Thị Thanh Vân Bước 6: Giao diện của TIA PORTAL.
3.3.3 Sử dụng bảng Tag trong PLC
Sau khi có được giao diện, ta tiến hành gắn Tag được sử dụng trong chương trình. Tag dùng để khai báo các biến sử dụng trong chương trình, được sử dụng mọi khối chứng năng trong PLC.
Tên đề tài: Ứng dụng xử lý ảnh để phân loai sản phẩm theo hình dạng, điều khiển và giám sát qua WinCC