S7-1200 S7-1500 send email với TMAIL_C

74 / 100

1- “TMAIL_C” là gì?

“TMAIL_C” là 1 cấu trúc có sẵn trong thư viện Tia portal dùng để gửi Email thông qua port Ethernet của PLC S7 1200 hoặc S7 1500, hoặc thông qua module truyền thông profinet mở rộng CM hay CP

Yêu cầu phần cứng tối thiểu:

  • Ethernet port của S7-1500 CPU (V2.5 hoặc higher version) hoặc S7-1200 CPU (V4.4 hoặc higher version), do đó ta sẻ phải dùng Tia V16 trở lên nhé
  • Ethernet port của các module CP of S7-1500 hay S7-1200

2- Nguyên lý gửi Mail

  • [1] là certificate của nhà cung cấp dịch vụ email, để load chứng chỉ này vào CPU hay CP, từ đó cho phép CPU có thể truy cập vào tài khoản Email thông qua a SMTP or
    SMTPS
  • [2] là import certificate đó vào chương trình Step 7
  • [3] cấu hình DNS Server (thường là 8.8.8.8 và 8.8.4.4), lập trình dùng “TMAIL_C”
  • Lưu ý cấu hình thời gian trong plc đúng thực tế
  • [4] Đổ chương trình xuống plc và kết nối plc với internet để gửi mail, lưu ý IP plc là tĩnh, khi kết nối vào router lưu ý cấu hình router để chấp nhận được ip của PLC

3- Diễn giải cấu trúc Tmail-C

Tham số

Đặc tính

Kiểu dữ liệu

Vùng nhớ

Mô tả

REQ

Input

BOOL

I, Q, M, D, L, T, C or constant

REQUEST: xung cạnh lên để gọi lệnh gửi email

TO_S

Input

STRING

D, L or constant

Địa chỉ Email người nhận

STRING tối đa 240 ký tự (bytes) và phải có

Theo đúng định dạng email, ví dụ: plctab.com@gmail.com

CC

Input

STRING

D, L or constant

CC: Địa chỉ Email nhận CC

STRING tối đa 240 ký tự (bytes) và nếu không có thì bỏ trống

Theo đúng định dạng email, ví dụ: plctab.com@gmail.com

SUBJECT

Input

STRING

D, L or constant

Subject: Chủ đề gửi

STRING tối đa 240 ký tự (bytes)

TEXT

Input

STRING

D, L or constant

Text: Nội dung mail gửi

STRING tối đa 240 ký tự (bytes)

ATTACHMENT

Input

VARIANT

D

E-mail attachment: file đính kèm nếu có

Có thể định dạng theo byte/word/double word field (ArrayOfByte, ArrayOfWord or ArrayOfDWord) với kích thước tối đa 64 Kb. có thể để trống nếu không gửi file đính kèm

ATTACHMENT_NAME

Input

STRING

D, L or constant

E-mail attachment name: Tên của file gửi đính kèm

Tối đa 50 ký tự (bytes), nếu không có thì file đính kèm lấy tên mặc định của nó

MAIL_ADDR_PARAM

Input

VARIANT

D

Thông tin kết nối và địa chỉ e-mail server mà PLC dùng để gửi mail

DONE

Output

BOOL

I, Q, M, D, L

Trạng thái hoàn thành:

  • DONE = 0: chưa hoặc đang thực hiện
  • DONE = 1: thực hiện xong và ok

BUSY

Output

BOOL

I, Q, M, D, L

Trạng thái gửi:

  • BUSY = 0:  “TMAIL_C” đang dừng
  • BUSY = 1: đang thực hiện gửi mail

ERROR

Output

BOOL

I, Q, M, D, L

Trạng thái lỗi:

  • ERROR = 0: không lỗi
  • ERROR = 1: có lỗi và kiểm tra xem lỗi gì ở STATUS

STATUS

Output

WORD

I, Q, M, D, L

Xem bảng mã lỗi trong phần help để biết chính xác lỗi gì

4- Cấu hình Email Server

Trong ví dụ này mình dùng Gmail, trong Gmail Server ta cần add thêm một ứng dụng để Gmail Server cấp phát 1 password và cho phép S7 1200 truy cập

PLC sẻ đóng vai trò là 1 Client, truy cập vào Gmail Server để thực hiện việc gửi mail đi,

Việc kết nối giữa PLC và Gmail Server sử dụng giao thức Transport Layer Security (TLS) để mã hóa giao tiếp gửi mail SMTP, nhằm đảm bảo kết nối là an toàn và bảo mật.

PLC sử dụng giao thức TLS do đó nó cần kèm 1 “Encryption Certificate” để Gmail Server xác nhận việc truy cập của PLC là an toàn.

Kích hoạt Security Setting của Tia portal, cài User và Password đầy đủ để kích hoạt certificate mặc định của Siemens.

Hoặc download Google Trusted Services – GlobalSign Root CA-R2 certificate và Import vào Project.

5- MAIL_ADDR_PARAM parameter (S7-1200, S7-1500)

Cấu trúc data cấu hình cho Tmail-C, tùy theo cách thức giao tiếp mà ta chọn cấu trúc:TMail_V4, TMail_V6 hay Tmail_FQDN.

Với port onboard PLC thì mặc định sẻ là TMail_V4, còn khi dùng port trên module CP hay CM hỗ trợ ta tùy chọn giao tiếp TMail_V4, TMail_V6 hay Tmail_FQDN

  • TMail_V4: xac định Mail Server là IP address (IPv4)

Parameter

Data type

Description

TMail_V4

Struct

InterfaceId

LADDR

Hardware identifier of the interface (check ở port mình kết nối internet)

ID

CONN_OUC

Connection ID (check ở port mình kết nối internet)

ConnectionType

BYTE

Kiểu kết nối. 16#20 với kiểu IPv4.

ActiveEstablished

BOOL

Set 1 để thiết lập kết nối

CertIndex

BYTE

  • =0: sử dụng SMTP (Simple Mail Transfer Protocol). nếu thông qua port onboard plc thì chọn cái này
  • ≠0: SMTPS chọn cái này nếu sử dụng qua module (CPs/CMs).

WatchDogTime

TIME

Xác định thời gian gửi data max

MailServerAddress

IP_V4

IP address của mail server. IPv4 định dạng: XXX.XXX.XXX.XXX (decimal).

Ví dụ: 192.142.131.237., để biết của gmail ta vào cmd gõ: ping smtp.gmail.com

UserName

STRING[254]

user truy cập mail

PassWord

STRING[254]

password truy cập mail

From

EMAIL_ADDR

E-mail sender address, ví dụ: “myname@mymailserver.com”.

LocalPartPlusAtSign

STRING[64]

Local part of sender address, including @ sign. Example: “myname@”

FullQualifiedDomainName

STRING[254]

Fully Qualified Domain Name (abbreviated to FQDN) of the mail server. Example: “mymailserver.com”

 

  • TMail_V6: xác định mail server theo IP address IPv6

Parameter

Data type

Description

TMail_V6

Struct

InterfaceId

LADDR

Hardware identifier of the interface (check ở port mình kết nối internet)

ID

CONN_OUC

Connection ID (check ở port mình kết nối internet)

ConnectionType

BYTE

Kiểu kết nối. 16#21 với kiểu IPv6.

ActiveEstablished

BOOL

Set 1 để thiết lập kết nối

CertIndex

BYTE

  • =0: SMTP used (Simple Mail Transfer Protocol). SMTP phải sử dụng nếu gửi mail qua S7-1500 CPU.
  • ≠0: SMTPS được sử dụng để bảo mật kết nối trước khi nó được thiết lập
    (with CPs/CMs). Bạn sử dụng tham số CertIndex để chỉ định chứng chỉ sẽ được sử dụng (xem “Project navigation” > “Global security settings” > “Certificate manager”).

WatchDogTime

TIME

Execution watchdog. Sử dụng tham số này để xác định thời gian thực hiện tối đa cho hoạt động gửi.

Lưu ý: Quá trình thiết lập kết nối có thể mất nhiều thời gian hơn (khoảng một phút) nếu kết nối chậm. Khi bạn chỉ định tham số WATCH_DOG_TIME, hãy nhớ cho phép khoảng thời gian cần thiết để thiết lập kết nối.

Kết nối sẽ bị chấm dứt sau khi thời gian được chỉ định trôi qua.

MailServerAddress

IP_V6

Địa chỉ IP của máy chủ thư (IPv6) ở định dạng sau: XXXX.XXXX.XXXX.XXXX.XXXX.XXXX.XXXX.XXXX (hexadecimal).

Địa chỉ được chia thành 8 khối, mỗi khối 2 byte (tổng cộng là 16 byte).

Ví dụ: 2001:db8:1f11:08d3:290:27ff:0370:2093

UserName

STRING[254]

user truy cập mail

PassWord

STRING[254]

password truy cập mail

From

EMAIL_ADDR

E-mail sender address, ví dụ: “myname@mymailserver.com”.

LocalPartPlusAtSign

STRING[64]

Mail người gửi nhớ bao gồm ký tự @ ví dụ “myname@”

FullQualifiedDomainName

STRING[254]

Fully Qualified Domain Name (FQDN) của mail server. Ví dụ:

“mymailserver.com”

 

  • TMail_FQDN: xác định mail server qua FQDN, thường dùng là “TMail_QDN_SEC”

Parameter

Data type

Description

TMail_FQDN

Struct

InterfaceId

LADDR

Hardware identifier of the interface (check ở port mình kết nối internet)

ID

CONN_OUC

Connection ID (check ở port mình kết nối internet)

ConnectionType

BYTE

Kiểu kết nối. 16#22 với kiểu FQDN.

ActiveEstablished

BOOL

Set 1 để thiết lập kết nối

CertIndex

BYTE

  • =0: SMTP used (Simple Mail Transfer Protocol). Phải sử dụng SMTP nếu e-mail được gửi qua giao diện của CPU S7-1500.
  • ≠0: SMTPS được sử dụng để bảo mật kết nối trước khi nó được thiết lập (với CP / CM). Bạn sử dụng tham số CertIndex để chỉ định chứng chỉ sẽ được sử dụng
    (see “Project navigation” > “Global security settings” > “Certificate manager”).

WatchDogTime

TIME

Execution watchdog. Sử dụng tham số này để xác định thời gian thực hiện tối đa cho hoạt động gửi.

Lưu ý: Quá trình thiết lập kết nối có thể mất nhiều thời gian hơn (khoảng một phút) nếu kết nối chậm. Khi bạn chỉ định tham số WATCH_DOG_TIME, hãy nhớ cho phép khoảng thời gian cần thiết để thiết lập kết nối.

Kết nối sẽ bị chấm dứt sau khi thời gian được chỉ định trôi qua.

MailServerAddress

STRING[254]

Fully Qualified Domain Name (FQDN) của mail server. Ví dụ:

“mymailserver.com”

UserName

STRING[254]

user truy cập mail

PassWord

STRING[254]

password truy cập mail

From

Struct

E-mail sender address, ví dụ: “myname@mymailserver.com”.

LocalPartPlusAtSign

STRING[64]

Local part of sender address, including @ sign. Example: “myname@”

FullQualifiedDomainName

STRING[254]

Fully Qualified Domain Name (FQDN) của mail server. Ví dụ:

“mymailserver.com”

Chi tiết cài đặt cho cấu trúc data cấu hình cho Tmail-C ta tải bài mẫu về xem sẻ thấy rõ nhé.

6- Download bài mẫu và hướng dẫn của Siemens

Tải bài mẫu và xem thêm tài liệu Siemens, thử nghiệm để hiểu sâu hơn, chúc bạn thành công!

Tải về Bài mẫu trên Tia V16

  • User name: admin
  • Password: Siemens.1

46817803_EMail_with_SimaticS7_en

 176 total views

Leave a Reply

Your email address will not be published. Required fields are marked *

0378029298

Exit mobile version