Ignition đọc bộ điều khiển ControlLogix và CompactLogix qua driver Allen-Bradley Logix, một driver trong module Allen-Bradley Ethernet của OPC UA server tích hợp sẵn. Driver kết nối được chỉ với một địa chỉ IP và duyệt (browse) tag của bộ điều khiển theo tên. Bài này đi qua các thiết lập, đường dẫn kết nối (connection path), tag group và phần chẩn đoán theo user manual Ignition 8.1 và 8.3, và ghi rõ chỗ hai bản khác nhau. Ignition là gì: xem bài Ignition là gì.
1. Driver nào cho bộ điều khiển nào
Manual bản 8.3 liệt kê các driver sau trong module Allen-Bradley Ethernet:
| Driver | Bộ điều khiển, theo các trang bản 8.3 |
|---|---|
| Logix | ControlLogix và CompactLogix firmware v20.19 trở lên |
| ControlLogix (Legacy) | ControlLogix firmware tới v20.18 |
| CompactLogix (Legacy) | CompactLogix firmware tới v20.18 |
| PLC5 | |
| SLC | SLC 5/05 và các CPU SLC tương thích; SLC không có cổng Ethernet sẵn cần |
| MicroLogix | MicroLogix 1100 và 1400 |
| Micro800 | Micro820, Micro850 và Micro870 |
Trang driver Logix ghi driver được tối ưu cho firmware từ bản 21 và vẫn chạy với firmware cũ hơn nhưng hiệu năng giảm nhiều. Cả hai bản manual đều ghi các driver Allen-Bradley chính thức hỗ trợ firmware từ bản 16; firmware cũ hơn có thể chạy nhưng không được hỗ trợ, và manual gợi ý dùng một OPC server khác cho trường hợp đó. Kết nối thẳng tới RSLinx Emulate 5000 không được hỗ trợ. Một chỗ khác nhau: trang tổng quan bản 8.1 liệt kê MicroLogix 1100, 1200, 1400 và 1500, còn trang MicroLogix bản 8.3 ghi 1200 và 1500 không được hỗ trợ đầy đủ và không duyệt tag được.
2. Tạo kết nối thiết bị
Ở bản 8.3, kết nối được tạo trên trang web Gateway, mục Connections > Devices > Connections: bấm Create Device Connection, chọn Allen-Bradley Logix Driver, nhập tên và hostname rồi tạo. Ở bản 8.1, trang này nằm ở Config > OPC UA > Device Connections, bấm Create new Device. Ở cả hai bản, thiết bị mới hiện Disconnected trước rồi chuyển sang Connected. Trang bản 8.3 ghi thêm: driver cần module OPC UA được cài và bật, nếu không thiết bị báo lỗi Missing Dependency.
Tên thiết bị nằm trong OPC item path của mọi tag đọc qua nó, nên chúng tôi chốt tên trước khi tạo tag. Bản 8.1 yêu cầu tên chỉ gồm chữ và số; bản 8.3 yêu cầu tên bắt đầu bằng chữ cái hoặc dấu gạch dưới và không có ký tự đặc biệt.
3. Các thiết lập và ý nghĩa
Giá trị mặc định ở cột cuối là giá trị in trên trang bản 8.1; trang bản 8.3 mô tả cùng các thiết lập này và chỉ in mặc định của cổng.
| Thiết lập | Ý nghĩa | Mặc định |
|---|---|---|
| Hostname | địa chỉ IP của module Ethernet mà driver đi qua; dùng EtherNet/IP trên cổng TCP 44818 | không ghi |
| Port | cổng TCP | 44818 (trang 8.3) |
| Local Address | địa chỉ cục bộ dùng cho kết nối TCP; để trống thì driver tự chọn | không ghi |
| Timeout | số mili giây chờ phản hồi trước khi coi yêu cầu là thất bại | không ghi |
| Slot Number | slot của CPU trong chassis, đếm từ 0; trang 8.3 ghi dùng 0 khi bộ điều khiển không nằm trong rack | không ghi |
| Connection Path | đường đi tới CPU; khi đã điền thì Slot Number bị bỏ qua; đường dẫn phải kết thúc bằng backplane và số slot | không ghi |
| Max Concurrent Requests | số yêu cầu gửi tới thiết bị cùng lúc; tăng lên có thể tăng lưu lượng, tăng quá mức có thể làm CPU quá tải | không ghi |
| Automatic Rebrowse | tự duyệt lại khi tag hoặc UDT thay đổi; khi tắt, tag chỉ được duyệt lúc kết nối và kết nối lại | true |
| Identity Request Frequency | số mili giây giữa hai lần đọc CIP Identity Object | 5.000 |
| CIP Connection Size | kích thước dùng trong yêu cầu CIP Forward Open | 500 |
| CIP Connection Timeout | số mili giây, cho kết nối CIP và RPI | 16.000 |
Ở bản 8.3, Slot Number và Max Concurrent Requests nằm trong nhóm Advanced thay vì Connectivity.
4. Slot Number hay Connection Path
Driver Logix mô tả hostname là module Ethernet mà driver đi qua, và Slot Number là slot của bộ điều khiển, đếm từ 0. Các trang tổng quan ghi thêm: cần connection path khi CPU được nối qua một thiết bị cầu (bridge) hoặc một module Ethernet rời như ENBT hay EN2T, ví dụ qua cái mà manual gọi là ControlLogix Gateway. Khi đó hostname trỏ tới module Ethernet của chassis làm cầu, còn driver được chọn theo loại bộ điều khiển đích.
Đường dẫn được viết theo từng cặp, một bước ra khỏi module và một bước vào module kế tiếp:
- Bắt đầu bằng 1, nghĩa là ra backplane. Không cần ghi slot của module Ethernet đầu tiên.
- Tiếp theo là slot của module cần tới, rồi cổng để ra khỏi module đó: trên ENET, ENBT hay EN2T, 2 là cổng Ethernet; trên CNB, 2 là cổng ControlNet; trên DHRIO, 2 là kênh DH+ A và 3 là kênh B. Trong mọi module, 1 là backplane.
- Sau đó là địa chỉ của điểm vào kế tiếp: địa chỉ IP, địa chỉ ControlNet, hoặc số trạm DH+ hệ bát phân (octal) từ 0 đến 77.
- Với bộ điều khiển Logix, đường dẫn kết thúc bằng 1 và slot của CPU.
Một đường dẫn đúng luôn có số phần tử chẵn; số lẻ nghĩa là thiếu một bước. Ví dụ 1,3,2,192.168.0.56,1,0 của bản 8.3 đọc là: ra backplane, tới ENBT ở slot 3, ra cổng Ethernet của nó, vào module có địa chỉ 192.168.0.56, ra backplane của chassis đó, tới CPU ở slot 0.
5. Duyệt tag và cách tag hiện ra
Mọi driver Allen-Bradley dùng địa chỉ theo tên tag (symbolic): Ignition duyệt bộ điều khiển để lấy danh sách tag. Trong Designer bản 8.3, lệnh Add > Browse Devices trong Tag Browser mở cửa sổ Connected Devices, nơi chọn tag và thêm vào tag provider. Khi kéo một item vào, các ký tự ! @ # $ ^ & * + [ ] trong tên được đổi thành dấu gạch dưới.
Các trang driver ghi những điểm sau về tag được duyệt:
- Một BOOL[64] trong bộ điều khiển hiện thành DWORD[2], nên phần tử 32 trở thành bit 0 của word thứ hai.
- Driver Logix đọc thêm các kiểu DT, LDT, LTIME, TIME và TIME32 (mới từ 8.1.28).
- Allen-Bradley không hỗ trợ đọc thành phần của một Add-On Instruction (AOI) lồng trong AOI khác, và các tag này không duyệt được trong RSLogix và RSLinx; manual ghi có thể dùng tag alias để đọc ghi chúng.
- Trang ControlLogix (Legacy) ghi thêm: tag có External Access là None sẽ không được trả về; phải đặt Read Only hoặc Read/Write trong RSLogix 5000.
Nếu chính phần mềm Rockwell cũng không thấy bộ điều khiển, xem bài RSLinx hay FactoryTalk Linx không thấy PLC.
6. Tag group và tải lên bộ điều khiển
Tag group quyết định tag được đọc bao lâu một lần. Direct chạy một chu kỳ cố định và là chế độ của tag group mặc định; Driven chuyển giữa hai chu kỳ theo một điều kiện; Leased đọc các tag đang hiện trên một cửa sổ hay view đang mở theo Leased/Driven Rate, các tag còn lại theo Rate gốc. Data Mode chọn giữa đọc kiểu subscribed, giảm lưu lượng và tự chuyển sang polling nếu subscription lỗi, và đọc kiểu polled, cho tải dễ đoán trước. Manual ghi các hệ được tối ưu tốt thường dùng nhiều tag group để mỗi giá trị chỉ được đọc nhanh đúng mức cần, ví dụ nhóm 500 ms và nhóm 30 giây.
Driver gom các item thành yêu cầu (request), số item trong mỗi yêu cầu chủ yếu tùy giao thức, và mọi yêu cầu đều chờ trong hàng đợi trước khi chạy.
7. Trạng thái thiết bị và chẩn đoán
Danh sách thiết bị trên Gateway có cột Status, cột này phải hiện Connected. Mỗi kết nối thiết bị còn có các tag chẩn đoán: Connected (kiểu Boolean), State (ví dụ Connected hoặc Disconnected), Status (chi tiết hơn State), Hostname, Name và Port. Thư mục Sampling gồm một thư mục Aggregate và một thư mục cho mỗi chu kỳ lấy mẫu đang dùng.
Tag cần theo dõi là OverloadFactor: bằng 100 nhân thời gian trung bình yêu cầu nằm trong hàng đợi, chia cho chu kỳ lấy mẫu thực tế của nhóm (ví dụ trên trang bản 8.1 dùng chu kỳ đã đặt). Trên 100 %, yêu cầu được đọc chậm hơn chu kỳ đã đặt. Trang bản 8.1 ghi chỉ số này thay cho Load Factor từ bản 8.1.6 và nêu một ví dụ: nhóm 250 ms có yêu cầu chờ 4,24 ms thì cho khoảng 2 %. Ở bản 8.3, mục View Details của một thiết bị hiện số yêu cầu, lưu lượng, thời gian phản hồi trung bình, biểu đồ thời gian phản hồi và log của thiết bị.
| Hiện tượng | Manual ghi |
|---|---|
| thiết bị báo lỗi Missing Dependency | module OPC UA chưa cài hoặc đang tắt (8.3) |
| firmware bộ điều khiển cũ hơn v16 | không được hỗ trợ chính thức; dùng OPC server khác |
| connection path có số phần tử lẻ | thiếu một bước |
| OverloadFactor trên 100 % | yêu cầu được đọc chậm hơn chu kỳ của tag group |
Những gì TDL kiểm trước
Đây là cách làm của chính chúng tôi trước khi nối Ignition vào một bộ điều khiển Allen-Bradley, không phải yêu cầu của Inductive Automation:
- Chúng tôi kiểm phiên bản firmware của bộ điều khiển, vì nó quyết định dùng driver Logix hay driver legacy.
- Chúng tôi kiểm đường đi tới bộ điều khiển: module nào đứng sau hostname, slot của bộ điều khiển và mọi chassis làm cầu trên đường, để viết connection path từng cặp một.
- Chúng tôi kiểm số kết nối của module Ethernet. Tài liệu kỹ thuật
1756-TD003R của Rockwell ghi1756-EN2T có 256 kết nối CIP và 128 kết nối TCP,1756-ENBT có 128 CIP và 64 TCP, và kết nối CIP dùng được cho ứng dụng explicit hay implicit theo bất kỳ tỷ lệ nào. Chúng tôi liệt kê những gì đang kết nối qua module, như HMI, SCADA khác và lệnh MSG. Thêm về giới hạn của module: xem bài1756-ENBT hết vòng đời. - Chúng tôi kiểm tag nào thật sự cần chu kỳ nhanh, đặt tag group theo đó, và theo dõi OverloadFactor cùng thời gian phản hồi trung bình sau khi chạy.
- Chúng tôi kiểm External Access và AOI lồng nhau trên các tag mà màn hình cần.
TDL tiếp cận thế nào
TDL Industrial Automation là Ignition Certified Integrator. Phần lớn nhà máy chúng tôi làm việc dùng bộ điều khiển Allen-Bradley, nên việc bắt đầu từ chương trình PLC và bản vẽ mạng đang có ở nhà máy. Nếu nhà máy còn đang chọn nền tảng, xem bài HMI/SCADA đời cũ thay bằng gì. Thêm về các dịch vụ này: Tích hợp Ignition SCADA tại Việt Nam và Kết nối PLC và thiết bị hiện có vào SCADA.
Câu hỏi thường gặp
Driver Ignition nào kết nối với ControlLogix hoặc CompactLogix?
Driver Logix, cho firmware v20.19 trở lên. Firmware v20.18 trở về trước dùng driver ControlLogix hoặc CompactLogix bản legacy, còn firmware cũ hơn bản 16 không được hỗ trợ chính thức.
Điền gì vào Hostname và Slot Number?
Địa chỉ IP của module Ethernet mà driver đi qua, và slot của bộ điều khiển, đếm từ 0. Trang bản 8.3 ghi dùng slot 0 khi bộ điều khiển không nằm trong rack.
Khi nào cần connection path?
Khi CPU nằm sau module Ethernet mà hostname trỏ tới, ví dụ ở một chassis khác, đi qua cái mà manual gọi là ControlLogix Gateway; trang tổng quan bản 8.3 diễn đạt là qua thiết bị cầu hoặc module Ethernet rời. Nếu bộ điều khiển nằm cùng chassis với module đó thì Hostname và Slot Number là đủ. Đường dẫn viết theo từng cặp, luôn có số phần tử chẵn, và khi đã điền thì Slot Number bị bỏ qua.
Làm sao biết Ignition đang đọc bộ điều khiển quá nhanh?
Theo dõi tag chẩn đoán OverloadFactor của từng chu kỳ lấy mẫu. Trên 100 %, yêu cầu được đọc chậm hơn chu kỳ mà tag group đặt.
Vì sao một số tag của bộ điều khiển không hiện khi duyệt?
Allen-Bradley không hỗ trợ đọc thành phần của AOI lồng trong AOI khác; manual chỉ sang tag alias cho các thành phần này. Với driver ControlLogix bản legacy, tag có External Access là None cũng không được trả về.
Nguồn
- Inductive Automation, Allen-Bradley Ethernet (Ignition 8.3) và Allen Bradley Ethernet (Ignition 8.1), user manual
- Inductive Automation, Connecting to Logix (8.3) và Connecting to Logix (8.1)
- Inductive Automation, Connecting to ControlLogix, Connecting to CompactLogix, Connecting to MicroLogix, Connecting to PLC5 và Connecting to SLC, Ignition 8.3
- Inductive Automation, Allen-Bradley Connection Paths, Ignition 8.3
- Inductive Automation, Creating Tags và Tag Groups, Ignition 8.3
- Inductive Automation, OPC UA Drivers (8.3, tag chẩn đoán thiết bị) và Connections - Devices (8.1, overload)
- Rockwell Automation, 1756 ControlLogix Communication Modules Specifications Technical Data, publication
1756-TD003R-EN-E , tháng 1/2025, tr. 4 và 41
Đọc ngày 13/11/2026. Bài viết diễn giải, không trích nguyên văn; đọc tài liệu gốc trước khi thiết kế hoặc thao tác.