Thời gian trễ t mong muốn được khai báo với Timer bằng 1 giá trị 16 bits trong đó 2 bits cao nhất không sử dụng, 2bits cao kế tiếp là độ phân giải của Timer, 12 bits thấp là 1 số nguyên
Trang 1Chương 3: Các lệnh toán học
* Với số nguyên
a Lệnh cộng số nguyên
Ví dụ:
Số nguyên 16 bits Số nguyên 32 bits
b- Lệnh trừ số nguyên
Ví dụ:
Số nguyên 16 bits Số nguyên 32 bits
c- Lệnh nhân số nguyên
Ví dụ:
Trang 2Số nguyên 16 bits Số nguyên 32 bits
d- Lệnh chia số nguyên
Ví dụ:
Số nguyên 16 bits Số nguyên 32 bits
* Với số thực
a- Lệnh cộng số thực b- Lệnh trừ số thực
Ví dụ:
c- Lệnh nhân số thực d- Lệnh chia số thực
Ví dụ:
Trang 31.2.3.4 Lệnh đổi kiểu dữ liệu
Các lệnh chuyển:
a-Số BCDsố nguyên 16 bits b- Số BCDsố nguyên 32 bits
Ví dụ:
c-Số nguyên 16 bitsBCD d- Số nguyên32 bitsBCD
Trang 4Ví dụ:
e- Số nguyên16 bitssố nguyên32bits
Ví dụ:
f- Số nguyên 32bitssố thực
Ví dụ:
g- Lệnh làm tròn số (số thựcsố nguyên 32 bits)
Ví dụ:
1.2.3.5 Bộ thời gian (Timer)
Trang 5Bộ thời gian là bộ tạo thời gian trễ t mong muốn giữa tín hiệu logic đầu vào u(t) và tín hiệu logic đầu
ra y(t)
S7_300 có 5 loại Timer khác nhau Thời gian trễ
t mong muốn được khai báo với Timer bằng 1 giá trị
16 bits trong đó 2 bits cao nhất không sử dụng, 2bits cao kế tiếp là độ phân giải của Timer, 12 bits thấp là
1 số nguyên BCD trong khoảng 0999 được gọi là PV(Preset Value)
Thời gian trễ t chính là tích:
t=Độ phân giải*PV
Trang 6
Không sử dụng Giá trị PV dưới dạng mã BCD
0 PV 999
Độ phân giải
Thời gian có thể được khai báo dưới dạng bằng kiểu S5T
Ví dụ: S5T#3s
Trong luận văn sử dụng loại Timer SD là loại Timer trễ theo sườn lên không có nhớ (On Delay Timer):Ngõ ra lên mức 1 khi ngõ vào EN=1 và giá trị CV (Current
Value)=0
Ví dụ:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 10ms
0 1 100ms
1 1 10s
Trang 7Khi ngõ vào I0.0 lên mức 1 thì sau 2s T1 sẽ ON
1.2.3.6 Bộ đếm (Counter)
Counter là bộ đếm có chức năng đếm sườn xung của tín hiệu đầu vào Có tối đa 256 Counter được kí hiệu từ C0C255
Ví dụ: Loại Counter đếm lên và đếm xuống
- CU : tín hiệu đếm lên (BOOL)
- CD : tín hiệu đếm (BOOL)
- S : tín hiệu đặt (BOOL), khi có sườn lên thì giá trị đặt được nạp cho CV
- PV : giá trị đặt (WORD)
- R : tín hiệu xoá (BOOL), khi có sườn lên thì giá trị CV được xoá về 0
- Q : ngõ ra
- CV : giá trị hiện tại của bộ đếm dạng Integer
Trang 8- CV_BCD : giá trị hiện tại của bộ đếm dạng BCD
Loại Counter đếm lên
Giống loại Counter trên nhưng không có chân kích đếm xuống
Giải pháp mạng
Mạng công nghiệp là hệ thống đo lường và điều khiển hiện đại bao gồm máy tính, PLC, vi xử lý ghép nối với cảm biến và chấp hành, thông thường các thiết bị này không tập trung mà phân tán, việc trao đổi thông tin được thực hiện dưới dạng số và truyền nối tiếp
Mạng công nghiệp thường gồm 7 lớp: Lớp vật lý, lớp liên kết dữ liệu, lớp mạng, lớp vận chuyển, lớp phiên, lớp trình và lớp ứng dụng Tuy nhiên có 1 số mạng người ta chỉ thiết kế trên hai hoặc ba lớp cơ bản, tuỳ vào mỗi hãng mà có các mạng khác nhau Sau đây là 1 số mạng công nghiệp đã được sử dụng rộng rãi:
Trang 9- Mạng Ethernet
- Foundation FieldBus, MPI, Profibus
- Can
- DiviceNet
- ModBus
- SDS (Smart distributed System)
- InterBus-S
- AS-Interface (Actuaator Sensor Interface)
- Combobus-S, Combobus-D
Trong luận văn này chỉ giới thiệu một số mạng công nghiệp đang được sử dụng và đi sâu vào tìm hiểu sự hỗ trợ của PLC S7_300 vào kết nối mạng và giao tiếp với máy tính
Hiện nay, để giao tiếp giữa PLC với máy tính, đơn giản nhất là sử dụng phần mềm WinCC được cài đặt trên máy tính cùng với cáp chuyển đổi PPI hoặc MPI (Nếu
muốn kết nối nhiều PLC) chuyển đổi tín hiệu RS485 sang RS232 truyền sang máy tính vào cổng Com RS232 WinCC là phần mềm tương đối mạnh bao gồm các thư viện được viết sẵn tuy nhiên WinCC chưa phải là 1 ngôn ngữ lập trình hướng đối tượng hoàn chỉnh như C++, Delphi hay
Visual Basic mà là phần mềm đóng gói các thao tác, ứng dụng, hoạt động thông dụng trong công nghiệp dựa trên ngôn ngữ lập trình C Vì thế sẽ đỡ mất công sức rất nhiều để lập trình trên PLC và trên máy tính khi sử dụng phần mềm WinCC và ngược lại, nếu dùng các ngôn ngữ lập trình như C++, Delphi hay Visual Basic, khi đó ta phải lập
Trang 10trình mạng cho hệ thống và phải dựa vào các hàm lập sẵn cho Module truyền thông của PLC S7_300
Không phải mọi CPU đều có Module truyền thông CP (Communication Processor), CP có ưu điểm là có sự hỗ trợ mạnhvề hàm thư viện và tính năng vượt trội như tốc độ, số Byte dữ liệu và sự tương thích cao Tuy nhiên hầu hết các CPU đều có ít nhất 1 cổng MPI là cổng COM RS485 dùng để đổ chương trình vào ROM của PLC, giao tiếp và nối mạng Một số hàm được lập trình sẵn để phục vụ cho cổng COM:
- SFC60”GD_SND” (global data send): gởi dữ liệu dưới dạng gói GD, gói GD phải đươc tạo trước bằng phần mềm STEP7 (sẽ được trình bày kĩ ở trong chương truyền thông bằng MPI)
- SFC61”GD_RCV” (global data receive): nhận dữ liệu dưới dạng gói GD
- SFC65”X_SEND”: gởi dữ liệu đến đối tác truyền thông khác
- SFC66”X_RCV” : nhận dữ liệu từ đối tác truyền thông khác