Sự khác biệt giữa bộ nhớ tĩnh và bộ nhớ tạm trong Siemens TIA Portal

Ví dụ về bộ nhớ tạm và bộ nhớ tĩnh

Phần mềm Tự động hóa (TIA) của Siemens là một trong những nền tảng phần mềm Tự động hóa PLC tốt nhất trên thế giới, nó cung cấp rất nhiều tính năng tuyệt vời. Và một trong những tính năng này là khả năng cấu hình bộ nhớ của bạn bằng cách sử dụng tĩnh và bộ nhớ tạm. Đối với một lập trình viên PLC, ta cần phải tổ chức tốt code và database vì điều này sẽ giúp quản lý PLC hoạt động nhanh hơn. Vì vậy, MTEE sẽ chia sẻ thêm về hai loại bộ nhớ (Static vs Temp) và xem sự khác biệt giữa chúng là gì?

Bộ nhớ tĩnh (Static Memory) là gì? 

Bộ nhớ tĩnh là loại bộ nhớ không thay đổi, nó lưu trữ dữ liệu vĩnh viễn với các địa chỉ cố định.

Dữ liệu được lưu trữ sẽ được thay đổi trong trường hợp ghi đè để nó có thể duy trì trong vài chu kỳ quét mà không thay đổi, loại bộ nhớ này chỉ được cấp phát tại các Khối chức năng (Function Blocks).

Bộ nhớ tạm (Temp Memory) là gì?

Đối với bộ nhớ tạm thời ta có thể nói rằng nó là một bộ nhớ dễ bay hơi vì dữ liệu không thể duy trì trong một chu kỳ.

Nó lưu trữ dữ liệu cho một chu kỳ quét duy nhất và sau đó, dữ liệu sẽ bị mất, loại bộ nhớ này được cấp phát trong các Khối tổ chức (Organizational Blocks), Chức năng (Function) hoặc Khối chức năng (Function Block).

Chúng ta có thể tóm tắt rằng: “Bộ nhớ tĩnh có một nơi dành riêng để lưu trữ dữ liệu nhưng bộ nhớ tạm thì không”.

Sử dụng bộ nhớ tĩnh và bộ nhớ tạm trong lập trình PLC

Bây giờ, chúng ta đã biết đâu là sự khác biệt giữa cả hai và đâu thực sự là bộ nhớ tĩnhbộ nhớ tạm thời. Nhưng vấn đề quan trọng là bạn phải biết cách và khi nào bạn nên sử dụng những bộ nhớ này.

Là một lập trình viên PLC chắc hẳn ai trong chúng ta cũng biết rất rõ về bộ nhớ tĩnh, nó là nơi lưu trữ dữ liệu của chúng ta như đọc nhiệt độ, công suất tiêu thụ cho nhà máy hay trạng thái của các cảm biến kỹ thuật số của bạn trong nhà máy.

Tất cả dữ liệu này nên được lưu trữ trong bộ nhớ tĩnh để đảm bảo rằng dữ liệu sẽ không bị mất khi ta muốn sử dụng lại nó ở những nơi khác trong code của bạn.

Đối với bộ nhớ tạm, bạn có thể sử dụng nó khi cần dữ liệu lưu trữ chỉ trong một chu kỳ quét, sau đó dữ liệu lưu trữ sẽ vô dụng nên chắc chắn không cần thiết phải dành chỗ cho dữ liệu này.

Ở đây chúng ta có thể lưu trữ nó vào bộ nhớ tạm thời cho đến khi công việc được hoàn thành sau đó bộ nhớ sẽ trống trở lại, điều này thực sự sẽ giúp giảm thiểu đáng kể bộ nhớ lưu trữ của bạn (đối với dự án lớn), có thể bạn có thể sử dụng loại bộ nhớ này trong toán học hoạt động hoặc chuyển đổi giữa các dữ liệu.

Ví dụ minh họa

Cách tốt nhất để hiểu bất cứ điều gì là liên hệ nó với một ví dụ, ở đây chúng ta với một đoạn code đơn giản theo dõi cấp độ của mười xe tăng, với mỗi xe tăng có bộ truyền mức riêng của nó. Và như tất cả chúng ta đều biết, đầu vào tương tự cho PLC Siemens được phát hiện bằng các input word (IW0, IW2, IW4..). Nhưng để tính toán chính xác hơn, hầu hết các lập trình viên chuyển đổi nó sang kiểu dữ liệu thực (Double word), vì vậy hiện tại chúng ta nên chuyển đổi mọi bộ truyền mức thành kiểu dữ liệu thực trước khi xử lý.

Vì vậy, tình huống này là dành cho bạn, bạn có muốn sử dụng mười vị trí bộ nhớ tĩnh để chuyển đổi cho mọi máy phát cấp độ không? Hoặc sử dụng một bộ nhớ tạm duy nhất có thể tạo ra điều tương tự cho mười máy phát.

Tốt hơn nhiều nếu ta sử dụng một bộ nhớ tạm duy nhất để tùy chỉnh và giảm thiểu dung lượng bộ nhớ.

Ví dụ về bộ nhớ tạm và bộ nhớ tĩnh
Ví dụ về bộ nhớ tạm và bộ nhớ tĩnh

Tóm tắt vấn đề

Bộ nhớ tạm thời sẽ thực sự giảm thiểu kích thước chương trình của bạn nếu nó có thể được sử dụng trong chương trình của bạn.

Bộ nhớ tĩnh có khả năng duy trì dữ liệu qua nhiều chu kỳ quét để sử dụng lại nó trong mã của bạn, cả hai đều quan trọng để sử dụng và để nâng cao chương trình PLC của bạn.

Tham khảo thêm tại đây

Trả lời

Email của bạn sẽ không được hiển thị công khai.