Dự án kỹ thuật

Dự án ổn định phần mềm điều khiển thiết bị bán dẫn MBE và bàn giao Windows

Winge Technology đã chẩn đoán và ổn định ứng dụng điều khiển Windows Qt cho thiết bị quy trình bán dẫn, đồng thời xây dựng nhánh thử nghiệm kiến trúc độc lập gồm 10 bộ điều khiển nhiệt Modbus, van EI-BISYNCH, camera công nghiệp Galaxy, lưu trữ SQLite, bộ cài và kế hoạch nghiệm thu tại hiện trường.

Dự án ổn định phần mềm điều khiển thiết bị bán dẫn MBE và bàn giao Windows

Tổng quan dự án

Dự án xử lý một ứng dụng điều khiển cấp trên chạy Windows cho thiết bị quy trình bán dẫn. Hệ thống Qt/C++ giao tiếp với các bộ điều khiển nhiệt độ, van kim, đồng hồ chân không, bộ điều khiển cửa chắn và camera công nghiệp; SQLite lưu mẫu thiết bị, sự kiện lệnh và siêu dữ liệu khung hình. Phạm vi tập trung vào dữ liệu nhiệt độ bị gián đoạn, xác nhận lệnh chưa đầy đủ, suy giảm tốc độ camera và việc ghi hình dừng im lặng mà không làm gián đoạn ứng dụng đang chạy tại hiện trường.

Việc bàn giao được chia thành hai nhánh độc lập. Nhánh bảo trì áp dụng các thay đổi có giới hạn và có thể hoàn tác cho ứng dụng hiện có, sau đó tạo bộ cài Windows x64. Nhánh v2 dùng thư mục và AppId riêng để kiểm tra quyền sở hữu cổng nối tiếp, kết nối cơ sở dữ liệu, luồng camera và thực thi tập lệnh. Cấu hình cùng dữ liệu lịch sử được giữ lại; phần mềm có khả năng kết nối thiết bị không được khởi chạy khi chưa có khung thời gian an toàn do người vận hành xác nhận.

Phạm vi hệ thống và công nghệ

Khu vựcCông nghệ hoặc thiết bịCông việc đã thực hiện
Ứng dụng điều khiểnWindows 10/11 x64, Qt 5.12.12, C++, MSVCChẩn đoán, sửa ổn định, bản dựng Release và bộ cài
Điều khiển nhiệt10 bộ điều khiển Modbus RTU ở 9600 baudRút ngắn lệnh đọc, tuần tự giao dịch, phản hồi ghi và đọc lại SP
Van và cửa chắnEI-BISYNCH và phản hồi riêng của thiết bịPhân tích giao thức, ACK/NAK và xác minh trạng thái
Camera công nghiệpGalaxy SDK, phơi sáng cơ sở 125 msKhung mới nhất, sửa ACK, watchdog thu nhận và lưu trữ
Dữ liệu và tập lệnhSQLite, JPEG và tập lệnh quy trìnhMột đường ghi, tách dấu thời gian, mô phỏng và ranh giới lỗi

Chẩn đoán dựa trên bằng chứng

Phân tích chỉ đọc bao phủ khoảng 8,89 giờ nhật ký và cơ sở dữ liệu lịch sử. COM5 ghi nhận 5.168 lần xóa bộ đệm sau khi vùng nhận vượt 128 byte, còn thời gian cập nhật hữu hiệu của 10 bộ điều khiển nhiệt dài hơn rõ rệt so với chu kỳ cấu hình hai giây. Kiểm tra mã cho thấy mỗi lần thăm dò tần suất cao đọc khoảng 35 thanh ghi và nhận phản hồi điển hình khoảng 75 byte. Lập lịch GUI, các lô cơ sở dữ liệu chậm và cửa sổ chờ 150 ms làm tăng khả năng phản hồi đến muộn trộn với yêu cầu mới.

Hai bản ghi camera lịch sử trên cùng máy tính cho phép so sánh khác. Bản cơ sở cũ ghi JPEG ở 8,006 FPS, còn bản bị suy giảm ghi 3,919 FPS; không mẫu nào có hai JPEG liền kề hoàn toàn giống nhau. ACK của khung thô được đưa trở lại hàng đợi worker camera; một lần lấy hình chặn có thể chạy trước ACK nên khung mới thường xuyên bị bỏ qua khi khung trước vẫn ở trạng thái chờ. Các số liệu này dùng để xác định hồi quy, không phải kết quả nghiệm thu sau sửa.

Bảo trì có giới hạn cho ứng dụng hiện có

Nhánh bảo trì giữ nguyên giao diện, cấu hình thiết bị, thư mục dữ liệu và điểm vào tập lệnh quy trình. Tệp sửa đổi được sao lưu trước khi thay thế; gói vá và bộ cài đều có bản ghi SHA-256. Bộ cài giữ lại MBE_Data, Scriptfile và cấu hình thiết bị hiện có, đồng thời không tự khởi chạy phần mềm điều khiển sau cài đặt.

  • Lệnh đọc nhiệt tần suất cao được giới hạn ở các thanh ghi cần cho PV, SP và Working SP, làm phản hồi điển hình giảm từ khoảng 75 xuống khoảng 15 byte.
  • Lệnh ghi nhiệt độ Sub khớp chính xác phản hồi Modbus 0x06, sau đó đọc lại SP; thiếu phản hồi hoặc giá trị không khớp được báo lỗi.
  • Camera được worker tự điều khiển; xem trước và lưu khung thô mỗi đường chỉ cho phép một khung đang xử lý và ưu tiên khung mới nhất.
  • Giá trị kỹ thuật theo độ C không còn bị chia cho mười lần nữa trong thanh trạng thái và đường điều khiển cũ.

Đọc lại Ramp Rate từ phần cứng

Ô Ramp Rate bắt đầu bằng -- thay vì một giá trị cố định do phần mềm tạo ra. Ứng dụng sau đó đọc thanh ghi thiết bị 0x0023. Trong trạng thái ổn định, cứ ba giây đọc một bộ điều khiển và hoàn thành một vòng 10 thiết bị trong khoảng 30 giây. Ramp Rate không nằm trong yêu cầu PV/SP tần suất cao nên không kéo dài mọi phản hồi trên bus 9600 baud.

Thay đổi này sửa nguồn gốc của giá trị hiển thị: giao diện chỉ hiện số sau khi nhận dữ liệu thiết bị. Việc đồng bộ sau khi người vận hành đổi tham số trên bảng thiết bị vẫn cần chạy 1.0.3 với phần cứng thật và chưa được mô tả là nghiệm thu hoàn tất.

Đường thu nhận và lưu camera

Xem trước và ghi hình dùng ngữ nghĩa khung mới nhất. Khi GUI hoặc bộ mã hóa JPEG tạm thời chậm hơn camera, khung trung gian có thể được thay thế thay vì tạo hàng đợi sự kiện tăng liên tục. ACK khung thô giải phóng cờ nguyên tử trực tiếp, không chờ sau một lệnh camera chặn khác. Tên tệp và trường cơ sở dữ liệu dùng thời điểm thu nhận thật; thời điểm bắt đầu và hoàn tất lưu được ghi riêng.

Phiên bản 1.0.3 bổ sung hai watchdog. Nếu camera đang mở nhưng không có khung thô trong ba giây, phần mềm đóng và mở lại quá trình thu với khoảng nghỉ khởi động lại 10 giây. Nếu tác vụ lưu hoặc thời gian từ lần ghi bền cuối vượt ba giây, watchdog xóa trạng thái treo và thử lại bằng khung hiện tại. Cơ chế này xử lý việc dừng im lặng nhưng không thay thế chẩn đoán trình điều khiển, đường USB, thông lượng đĩa hoặc lỗi cơ sở dữ liệu tại hiện trường.

Nhánh thử nghiệm kiến trúc v2 độc lập

v2 dùng cây nguồn, AppId và thư mục cài đặt riêng, không thay thế ứng dụng cũ đang chạy. Theo mặc định, v2 không kết nối cổng nối tiếp, không bắt đầu giám sát, không mở camera và không gửi lệnh cửa chắn khi khởi động. Mỗi cổng vật lý chỉ thuộc một PortWorker; thăm dò, lệnh người vận hành và lệnh tập lệnh đi vào một hàng đợi giao dịch có ưu tiên.

SQLite chỉ có một kết nối ghi; mẫu thiết bị và siêu dữ liệu camera được cam kết theo ngưỡng thời gian hoặc kích thước lô. Truy vấn lịch sử sử dụng kết nối chỉ đọc riêng. Thu camera, xem trước và ghi JPEG là các trách nhiệm tách biệt. Tập lệnh quy trình tiến qua các bước máy trạng thái ngắn và dừng khi phản hồi lệnh hoặc giá trị đọc lại mục tiêu thất bại.

Biên dịch, đóng gói và giữ dữ liệu

Phiên bản bảo trì 1.0.3 được xây dựng bằng CMake và MSVC Release x64, sau đó đóng gói bằng Inno Setup 6.7.3. Tệp thực thi Release có kích thước 1.727.488 byte. Vùng đóng gói chứa 78 tệp với tổng 66.292.772 byte. Việc kiểm tra xác nhận Galaxy SDK, thư viện Qt, trình điều khiển SQLite, VC Runtime và cấu hình thiết bị đều có mặt, không có Qt Debug DLL.

Phiên bản bộ cài là 1.0.3.20260728, kích thước 19.884.961 byte. Giá trị SHA-256 đầy đủ của tệp thực thi, gói vá và bộ cài được lưu trong hồ sơ bàn giao. Bộ cài chưa ký Authenticode nên Windows có thể hiển thị cảnh báo nhà phát hành không xác định.

Bằng chứng xác minh và giới hạn

Mục xác minhKết quả ghi nhậnGiới hạn áp dụng
Chẩn đoán lịch sử8,89 giờ; 5.168 lần xóa bộ đệm COM5Xác nhận lỗi cũ, không phải kết quả sửa
So sánh camera lịch sửCơ sở 8,006 FPS; bản hồi quy 3,919 FPSDùng chẩn đoán ACK, không phải thử nghiệm 1.0.3
Release bảo trìBiên dịch Windows x64 và sáu kiểm tra tĩnh hoàn tấtKiểm tra biên dịch và đường mã, không phải nghiệm thu phần cứng
CTest bảo trìMã thoát 0 nhưng kết quả No tests were foundĐược ghi là không có kiểm thử tự động
Chương trình thử v2Biên dịch Debug đầy đủ; CTest 1/1; 11 nhóm không phần cứngGiao thức, trạng thái, tập lệnh, lưu trữ; chưa nối thiết bị
Phần cứng hiện trườngChưa chạy 1.0.3 hoặc v2 với thiết bị kết nốiRamp Rate, phục hồi, ghi Sub và 8 giờ vẫn chờ nghiệm thu

An toàn hiện trường và kế hoạch nghiệm thu

Sau khi khởi động, ứng dụng có thể kết nối thiết bị nối tiếp và camera, đồng thời gửi lệnh điều khiển. Vì vậy phiên làm việc từ xa không khởi chạy bản mới trên màn hình không có người giám sát và không dừng tiến trình hiện có. Khi người vận hành xác nhận thiết bị ở trạng thái an toàn, nghiệm thu nên đi từ chỉ giám sát, lệnh đơn lẻ, camera, van và cửa chắn, tập lệnh đến vận hành kết hợp.

  • Giám sát 30 phút và tính khoảng mẫu, tỷ lệ hết thời gian và khoảng trống lớn nhất của từng bộ điều khiển nhiệt.
  • Ghi nhiều mục tiêu Sub an toàn rồi so sánh phản hồi 0x06, SP đọc lại, bảng thiết bị và PV.
  • Cố định phơi sáng, độ phân giải và nơi lưu để đo FPS thu, FPS lưu, khung bỏ qua và độ trễ đầu cuối.
  • Ngắt và khôi phục liên kết camera, kiểm tra nhật ký watchdog cùng sự trở lại của xem trước và ghi hình.
  • Ghi tám giờ vận hành kết hợp trước khi quyết định thay ứng dụng cũ.

Phương pháp kỹ thuật có thể tái sử dụng

Phương pháp này phù hợp với phần mềm Windows công nghiệp đang vận hành, nơi cần giữ dịch vụ và khả năng hoàn tác: thiết bị bán dẫn, hệ chân không, điều khiển nhiệt, camera công nghiệp, thu thập nhiều cổng, thiết bị phòng thí nghiệm và điều khiển bằng tập lệnh. Bước đầu là tạo bằng chứng có thể tái hiện từ nhật ký, cơ sở dữ liệu và đường giao thức; sau đó chọn sửa có giới hạn hoặc thử nghiệm kiến trúc độc lập theo mức rủi ro.

Đầu vào cho dự án tương tự

Đánh giá ban đầu thường cần giao thức thiết bị, cấu trúc cổng nối tiếp, bản đồ thanh ghi, SDK camera và mẫu, mã nguồn và môi trường xây dựng, nhật ký cùng cơ sở dữ liệu lịch sử, giới hạn an toàn, phương án hoàn tác và chỉ tiêu đo được cho chu kỳ mẫu, thành công lệnh, tốc độ khung, độ trễ và vận hành liên tục. Chẩn đoán tĩnh, kiểm thử không phần cứng, kiểm tra bộ cài và kế hoạch nghiệm thu có thể thực hiện trước khi có cửa sổ thiết bị nhưng không thay thế nghiệm thu hiện trường.

Câu hỏi thường gặp

Đây là phát triển mới hay bảo trì hệ thống hiện có?

Cả hai nhánh được sử dụng. Nhánh bảo trì tạo các thay đổi có giới hạn và bộ cài 1.0.3. Nhánh v2 là đường thử độc lập để làm rõ quyền sở hữu luồng, giao dịch và dữ liệu, không thay thế ứng dụng cũ.

Tại sao không chạy bản mới qua phiên SSH?

Khởi động có thể chiếm camera, cổng nối tiếp và gửi lệnh thiết bị. Khi chưa xác nhận trạng thái an toàn, chỉ kiểm tra mã nguồn, biên dịch, đóng gói và kiểm tra tĩnh.

8,006 FPS có phải kết quả sau sửa không?

Không. Đây là bản ghi cơ sở lịch sử trên cùng máy; 3,919 FPS thuộc bản hồi quy. Cặp số dùng để tìm lỗi lập lịch ACK. Bản sửa vẫn cần đo lại trong điều kiện cố định.

Kiểm thử đã bao phủ mọi chức năng thiết bị chưa?

Chưa. Dự án bảo trì không đăng ký kiểm thử tự động. Một chương trình thử v2 bao phủ 11 nhóm giao thức, trạng thái, tập lệnh và lưu trữ không phần cứng. Thiết bị thật và vận hành dài giờ vẫn là mục nghiệm thu.

Dữ liệu và cấu hình hiện trường được bảo vệ thế nào?

Tệp được sao lưu trước khi thay đổi, hash được lưu, bộ cài giữ dữ liệu, tập lệnh và cấu hình cũ, còn v2 dùng AppId và thư mục riêng. Quyết định chuyển phiên bản phụ thuộc vào kết quả nghiệm thu.

Trao đổi dự án tương tự

Vui lòng gửi giao thức thiết bị, cấu trúc cổng nối tiếp, mẫu camera, phiên bản phần mềm, giới hạn an toàn và chỉ số nghiệm thu.

Online
Phone
13910119357
WeChat
WhatsApp
Winge Technology WhatsApp QR code Scan or click to contact us
Top