Tôi muốn bạn đóng vai một kỹ sư điều khiển đang viết một khối Sơ đồ Khối Chức năng (Function Block Diagram - FBD) cho . Khối này thực hiện chuyển đổi tỷ lệ (scale) một ngõ vào analog và phát hiện các tín hiệu lỗi.
Tín hiệu: , , dải kỹ thuật từ đến . Dải giá trị thô của module (raw card range): .
Yêu cầu:
1. Chuyển đổi giá trị thô sang đơn vị kỹ thuật bằng công thức toán tuyến tính hoặc lệnh chuyển đổi tỷ lệ có sẵn của nền tảng.
2. Các trạng thái chất lượng tín hiệu: Tốt (Good), Đứt dây (Wire break - tương đương dưới khoảng 3.6 mA), Vượt ngưỡng (Over-range - tương đương trên khoảng 21 mA). Trạng thái Lỗi (Bad) phải duy trì mức TRUE liên tục trong thời gian trước khi chốt giữ (latch), để một mẫu nhiễu đơn lẻ không làm nhảy báo lỗi.
3. Khi ở trạng thái Bad, giữ lại giá trị tốt cuối cùng và bật cờ Value_Hold. Không truyền giá trị đã quy đổi từ một đường dây bị đứt ra ngoài.
4. Cờ báo động Alarm_Bad được chốt giữ và chỉ xóa khi có tín hiệu Reset đồng thời tín hiệu đo đã trở lại trạng thái Good.
Nếu dải giá trị thô là UNKNOWN (không rõ), đừng tự giả định một dải bất kỳ. Hãy chỉ rõ vị trí điền thông số đó và liệt kê nó thành một câu hỏi cần xác nhận.
Hãy cung cấp: sơ đồ FBD theo từng nhánh mạng (network) dưới dạng văn bản (khối, ngõ vào, ngõ ra, kết nối), cùng logic đó viết bằng ngôn ngữ Structured Text để tôi đối chiếu kiểm tra, các giả định của bạn, và một bảng kiểm thử tiêm lỗi (fault-injection test table):
Giá trị thô ghi vào | Thời lượng | Giá trị kỹ thuật kỳ vọng | Chất lượng | Alarm_Bad | Value_Hold