Trong tự động hóa công nghiệp và trạm cân xe thông minh, cổng nối tiếp RS-232 (COM Port) vẫn là chuẩn kết nối không thể thay thế của các đầu cân điện tử. Tuy nhiên, cơ chế khóa độc quyền truy cập cổng COM của hệ điều hành Windows từ lâu đã là rào cản lớn khi nhiều phần mềm cùng muốn nhận dữ liệu trọng lượng xe. Bài viết này chia sẻ giải pháp kiến trúc cổng ảo kết hợp xử lý đa luồng giúp giải quyết triệt để vấn đề này trong nền tảng Vận Hành Số.
01Xung đột khóa độc quyền cổng COM trên Windows
Trong giải pháp trạm cân tự động Vận Hành Số, toàn bộ quy trình cân diễn ra tự động 100%: Xe tiến vào bàn cân → Camera AI nhận diện biển số → Dịch vụ nền đọc dữ liệu liên tục từ đầu cân vật lý COM3 → Thuật toán phát hiện cân ổn định → Tự động chốt khối lượng và xuất phiếu cân số hóa tức thì.
Tuy nhiên, tại nhiều nhà máy, khách hàng đồng thời cần sử dụng song song nhiều phần mềm:
- Dịch vụ tự động hóa Vận Hành Số: Cần mở cổng COM liên tục để phân tích trạng thái rung lắc và chốt phiếu tự động.
- Phần mềm quản lý cân cũ của khách hàng: Nhân viên vẫn cần mở cổng COM đó để theo dõi và đối chiếu số liệu.
- Bảng LED ngoài trời / Hệ thống ERP kho: Cũng cần nhận tín hiệu trực tiếp từ đầu cân.
Trên Windows, cổng COM được quản lý theo cơ chế độc quyền. Khi một ứng dụng đã mở cổng COM, hệ điều hành sẽ từ chối mọi ứng dụng thứ hai mở cổng này với lỗi truy cập bị từ chối (Access Denied).
Thử nghiệm: Kết nối nhiều phần mềm vào 1 đầu cân
Bấm chuyển chế độ và phát dữ liệu để xem cách hệ thống xử lý xung đột
COM3💡 Hiện tượng thực tế: Khi dịch vụ chính đã mở cổng COM3, cơ chế bảo vệ của Windows khóa chặt cổng này. Khi nhân viên mở phần mềm cũ hoặc bật bảng LED, ứng dụng sẽ báo lỗi không tìm thấy cổng hoặc bị từ chối truy cập.
02Kiến trúc cặp cổng ảo đối xứng (Virtual COM Pairs)
Thay vì phải lắp đặt thêm các bộ chia phần cứng đắt đỏ và dễ gây suy hao tín hiệu, chúng tôi sử dụng mô hình Cặp Cổng Ảo Đối Xứng ở tầng hệ điều hành:
- Đầu ghi (ví dụ COM10): Dịch vụ Vận Hành Số nhận dữ liệu từ đầu cân thật và bơm luồng byte nhị phân vào cổng này.
- Đầu đọc (ví dụ COM11): Xuất hiện trong hệ thống như một cổng COM thật để các phần mềm cũ hoặc bảng LED mở và đọc dữ liệu bình thường.
Sơ đồ định tuyến cổng nối tiếp (Topology Editor)
Bấm vào từng cổng để xem thông số hoặc thêm cổng ảo mới cho các ứng dụng tại nhà máy
Click vào một cổng trên sơ đồ để xem chi tiết.
Mỗi cặp cổng ảo cho phép 1 phần mềm bên ngoài truy cập độc lập vào luồng dữ liệu cân.
03Cơ chế phân phối đa luồng & thuật toán hàng đợi Drop-Old
Một bài toán lớn trong môi trường thực tế là: Nếu một ứng dụng bên ngoài bị treo, đọc chậm hoặc tắt đột ngột thì hệ thống xử lý như thế nào?
Sơ đồ tuần tự tương tác (Kéo thả các thành phần & Quan sát luồng dữ liệu)
Bạn có thể tự do kéo thả các khối vị trí trên sơ đồ để sắp xếp theo ý muốn
Đầu cân liên tục đẩy các khung nhị phân trọng lượng qua cổng vật lý COM3 với tần suất 10 - 20 lần/giây.
Mỗi cổng ảo có hàng đợi đệm riêng. Khi một phần mềm đọc chậm làm đầy hàng đợi, hệ thống tự động thải hồi các gói tin cũ nhất để nhường chỗ cho dữ liệu trọng lượng mới nhất, đảm bảo tính tức thời và không làm nghẽn các kênh khác.
Nếu một cổng ảo bị ngắt kết nối đột ngột hoặc phần mềm bên ngoài khởi động lại, dịch vụ tự động kích hoạt cơ chế dò tìm và kết nối lại mượt mà trong nền mà không làm gián đoạn hệ thống.
Mô phỏng đa luồng & Hàng đợi Drop-Old (Tránh tắc nghẽn toàn hệ thống)
Bấm “Làm treo ứng dụng” ở bất kỳ kênh nào để quan sát cơ chế tự thải hồi gói tin cũ
Tổng kết & nền tảng Vận Hành Số
Bằng cách kết hợp linh hoạt giữa Driver Cổng Ảo ở tầng hệ thống và Bộ Phân Phối Đa Luồng hiệu năng cao, nền tảng Vận Hành Số đã giải quyết trọn vẹn bài toán chia sẻ tín hiệu đầu cân. Khách hàng có thể dễ dàng hiện đại hóa trạm cân tự động mà vẫn giữ nguyên tính tương thích với các phần mềm kế thừa.
Tự động hóa 100% quy trình cân xe: Tự nhận diện biển số OCR/ALPR không dừng, kiểm soát vị trí xe bằng cảm biến quang, phát hiện gian lận khối lượng và xuất hóa đơn điện tử tự động 24/7.

