1/ Dùng phím tắt cho Toggle bit Control + T
Troubleshoot hệ thống PLC nhiều khi giống như việc bạn có 10 cái công tắc cần bật đúng thứ tự thì 1 cái đèn mới sáng, và bạn cần bật tắt từng cái công tắc một để kiểm tra. Việc toggle bit được hiểu giống như việc bạn force PLC bật tắt cái công tắc đó vậy. Nếu bit đó đang là 0, thì chuyển sang 1, đang là 1 thì chuyển sang 0, vậy thôi. Việc sử dụng phím tắt sẽ làm cho việc toggle nhanh hơn nhiều so với việc bấm chuột 2 lần, hay là sửa giá trị trong Controller Tags
2/ Dùng phím tắt cho cross-reference Ctrl + E
Cùng quay lại ví dụ như vừa nãy, để kiểm tra xem 1 trong 10 cái nút đang được sử dụng ở đâu, cái nào bật tắt cái nào thì mình sẽ dùng lệnh Ctrl+ E : Go to cross-refrence. Trong quá trình troubleshoot, việc này phải được lặp đi lặp lại nhiều lần, và việc thuộc phím tắt Ctrl + E sẽ giúp việc này nhanh hơn rất nhiều so với chuột phải – tìm go to cross reference.
Cùng quay lại ví dụ như vừa nãy, để kiểm tra xem 1 trong 10 cái nút đang được sử dụng ở đâu, cái nào bật tắt cái nào thì mình sẽ dùng lệnh Ctrl+ E : Go to cross-refrence. Trong quá trình troubleshoot, việc này phải được lặp đi lặp lại nhiều lần, và việc thuộc phím tắt Ctrl + E sẽ giúp việc này nhanh hơn rất nhiều so với chuột phải – tìm go to cross reference.
Khi mình xử dụng lệnh go-to cross-referernce, hệ thống sẽ hiện ta 1 bảng các vị trí đang sử dụng bit này. Nếu mình đang tìm hiểu tại sao bit này đang bật / không bật, mình sẽ tìm vị trí nào đang sử dụng OTE hoặc các subroutine lớn có thể tạo ra trạng thái, và click đúp vào đó. Hệ thống sẽ tự động đưa bạn tới Rung đó, và việc đọc hiểu sẽ rất nhanh
3/ Dùng phím tắt cho tạo tag mới : Ctrl + W
Trong quá trình viết chương trình mới, bạn sẽ cần tạo thêm tag rất nhiều mỗi khi cần. Việc tạo tag thường khá lỉnh kỉnh :
Cách 1 :Vào controller tags hoặc vào parameters and local tag, edit tags rồi sau đó tạo thêm từng dòng
- ưu điểm: làm nhanh với số lượng lớn -
nhược điểm: lâu nếu chỉ cần 1 vài tag.
Cách 2: viết tới đâu tạo tag tới đó
- ưu điểm: siêu nhanh. - tên tùy hứng
Trong quá trình viết chương trình mới, bạn sẽ cần tạo thêm tag rất nhiều mỗi khi cần. Việc tạo tag thường khá lỉnh kỉnh :
Cách 1 :Vào controller tags hoặc vào parameters and local tag, edit tags rồi sau đó tạo thêm từng dòng
- ưu điểm: làm nhanh với số lượng lớn -
nhược điểm: lâu nếu chỉ cần 1 vài tag.
Cách 2: viết tới đâu tạo tag tới đó
- ưu điểm: siêu nhanh. - tên tùy hứng
Bạn viết nguyên dòng lệnh, tag có thể có có thể chưa. Đối với các tag chưa, bạn vào tag đó, bấm chuột phải : New tag, hoặc bấm phím tắt Ctrl + W . Thuộc phím tắt thì cho chuột vào rồi phím tắt là xong. Menu hiện ra với tên tag có sẵn, thường sẽ là dạng BOOL hoặc DINT. Nếu mà tag tạo để test dạng BOOL thì mình bấm Enter luôn, tay khỏi rời bàn phím.
4/ Tách dòng và khu vực bằng [NOP]
Với các bạn mới viết chương trình PLC, 1 lần mình nhìn thấy các bạn thường viết chỉ có 1-2 routine dài loằng ngoằng 20-30 dòng. Nếu bạn chưa quen việc tách routine sang các sub-routine thì việc bạn có thể làm để cho chương trình dễ nhìn hơn bằng cách tách ra khu nào cho việc gì. Ví dụ như trong hình, khu phía trên xử lý tag T1101, khu bên dưới xử lý T1102.
Chương trình nhìn sẽ đỡ rối hơn, còn lại không có tác dụng gì khác.
Với các bạn mới viết chương trình PLC, 1 lần mình nhìn thấy các bạn thường viết chỉ có 1-2 routine dài loằng ngoằng 20-30 dòng. Nếu bạn chưa quen việc tách routine sang các sub-routine thì việc bạn có thể làm để cho chương trình dễ nhìn hơn bằng cách tách ra khu nào cho việc gì. Ví dụ như trong hình, khu phía trên xử lý tag T1101, khu bên dưới xử lý T1102.
Chương trình nhìn sẽ đỡ rối hơn, còn lại không có tác dụng gì khác.
5/ Thuộc các lệnh cơ bản:
Việc tìm kéo thả các instruction cơ bản hay dùng của Studio5000 nhiều khi mất thời gian, nên việc thuộc một số lệnh cơ bản sẽ là
XIO – Examine On
XIC – Examine Off
OTE – Output Energize
OTL – Output Latch
OTU – Output Unlatch
MOV - Move
EQU - Equal
GRT – Greater than
GEQ – Greater or equal than
LES – Less than
LEQ – Less or equal than
JSR – Jump to subroutine
CPT - Compute
ADD - Add
SUB - Subtract
MUL - Mutiply
TON – Time On Delay
AFI – Always Fault Instruction
Trong cả 1 hệ thống lớn mình làm, toàn bộ chương trình cũng chỉ cần xoay quanh 80-90% là các lệnh này, và việc thuộc nó sẽ hỗ trợ bạn làm rất nhanh. Mình hay làm nhất là Ctrl C Ctrl V 1 instruction bất kì trong Rung, sau đó sửa tên cho đúng.
Việc tìm kéo thả các instruction cơ bản hay dùng của Studio5000 nhiều khi mất thời gian, nên việc thuộc một số lệnh cơ bản sẽ là
XIO – Examine On
XIC – Examine Off
OTE – Output Energize
OTL – Output Latch
OTU – Output Unlatch
MOV - Move
EQU - Equal
GRT – Greater than
GEQ – Greater or equal than
LES – Less than
LEQ – Less or equal than
JSR – Jump to subroutine
CPT - Compute
ADD - Add
SUB - Subtract
MUL - Mutiply
TON – Time On Delay
AFI – Always Fault Instruction
Trong cả 1 hệ thống lớn mình làm, toàn bộ chương trình cũng chỉ cần xoay quanh 80-90% là các lệnh này, và việc thuộc nó sẽ hỗ trợ bạn làm rất nhanh. Mình hay làm nhất là Ctrl C Ctrl V 1 instruction bất kì trong Rung, sau đó sửa tên cho đúng.
6/ Comment từng dòng lệnh và tag
- Đối với từng dòng lệnh, bạn nên dành thời gian comment lên các dòng có tính chất quan trọng và giải thích tại sao. Cách tạo comment là bấm vào dòng đó, sau đó tạo Edit Rung Comment, hoặc phím tắt là Ctrl + D. Việc comment sẽ giúp bạn theo dõi được tiến độ mình đang làm tới đâu rồi, cũng như hỗ trợ người phía sau sửa.
Mình không khuyến khích tạo comment cho từng dòng lệnh, mà tạo cho từng cụm chức năng. kết hợp NOP, bạn sẽ chia nó ra thành từng cụm cụ thể.
Mình khuyến khích tạo comment cho các AOI / UserDefine Data Type từ lúc tạo đầu tiên. Lý do là bạn tạo ra thì bạn nhớ, nhưng người sau dùng thì cần comment. Ngoài ra, khi tag đó được sử dụng, comment sẽ được tạo lên trên tag đó một cách tự động. Các bản RSLogix, thì mỗi lần upload từ PLC thì bạn sẽ mất comment, nhưng với các bản Studio 5000 thì việc này không bị nữa, vì thế nếu có thời gian, mình khuyên bạn nên update hệ thống lên V32 hoặc V33 mới nhất.
- Đối với từng dòng lệnh, bạn nên dành thời gian comment lên các dòng có tính chất quan trọng và giải thích tại sao. Cách tạo comment là bấm vào dòng đó, sau đó tạo Edit Rung Comment, hoặc phím tắt là Ctrl + D. Việc comment sẽ giúp bạn theo dõi được tiến độ mình đang làm tới đâu rồi, cũng như hỗ trợ người phía sau sửa.
Mình không khuyến khích tạo comment cho từng dòng lệnh, mà tạo cho từng cụm chức năng. kết hợp NOP, bạn sẽ chia nó ra thành từng cụm cụ thể.
Mình khuyến khích tạo comment cho các AOI / UserDefine Data Type từ lúc tạo đầu tiên. Lý do là bạn tạo ra thì bạn nhớ, nhưng người sau dùng thì cần comment. Ngoài ra, khi tag đó được sử dụng, comment sẽ được tạo lên trên tag đó một cách tự động. Các bản RSLogix, thì mỗi lần upload từ PLC thì bạn sẽ mất comment, nhưng với các bản Studio 5000 thì việc này không bị nữa, vì thế nếu có thời gian, mình khuyên bạn nên update hệ thống lên V32 hoặc V33 mới nhất.