| | |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="PLC类型" prop="plcType"> |
| | | <el-select v-model="deviceForm.plcType" placeholder="选择PLC类型" style="width: 100%;" clearable> |
| | | <el-form-item label="通讯类型" prop="plcType"> |
| | | <el-select v-model="deviceForm.plcType" placeholder="选择通讯类型" style="width: 100%;" clearable> |
| | | <el-option label="西门子 S7-1200" value="S1200" /> |
| | | <el-option label="西门子 S7-1500" value="S1500" /> |
| | | <el-option label="Modbus 控制器" value="MODBUS" /> |
| | | <el-option label="Modbus TCP" value="MODBUS" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | |
| | | /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="通讯协议" prop="protocolType"> |
| | | <el-select |
| | | v-model="deviceForm.protocolType" |
| | | placeholder="选择通讯协议" |
| | | style="width: 100%;" |
| | | @change="handleProtocolTypeChange" |
| | | > |
| | | <el-option label="S7 Communication" value="S7 Communication" /> |
| | | <el-option label="Modbus TCP" value="Modbus TCP" /> |
| | | <el-option label="OPC UA" value="OPC UA" /> |
| | | <el-option label="EtherNet/IP" value="EtherNet/IP" /> |
| | | <el-option label="Profinet" value="Profinet" /> |
| | | <el-option label="其他" value="其他" /> |
| | | </el-select> |
| | | <span class="form-tip">S7系列PLC通常使用S7 Communication协议</span> |
| | | </el-form-item> |
| | | |
| | | |
| | | <el-form-item label="超时时间(秒)" prop="timeout"> |
| | | <el-input-number |
| | |
| | | moduleName: [ |
| | | { required: true, message: '请输入模块名称', trigger: 'blur' } |
| | | ], |
| | | protocolType: [ |
| | | { required: true, message: '请选择通讯协议', trigger: 'change' } |
| | | ], |
| | | |
| | | timeout: [ |
| | | { required: true, message: '请输入超时时间', trigger: 'blur' }, |
| | | { type: 'number', min: 1, max: 300, message: '超时时间在 1 到 300 秒之间', trigger: 'blur' } |
| | |
| | | } |
| | | }) |
| | | |
| | | // 处理通讯协议变化 |
| | | const handleProtocolTypeChange = (value) => { |
| | | if (!deviceForm.plcType || !value) { |
| | | return |
| | | } |
| | | |
| | | if (value !== 'S7 Communication' && S7_PLC_TYPES.includes(deviceForm.plcType)) { |
| | | ElMessage.warning('S7系列PLC通常使用S7 Communication协议,请确认协议选择是否正确') |
| | | return |
| | | } |
| | | |
| | | if (value !== 'Modbus TCP' && MODBUS_PLC_TYPES.includes(deviceForm.plcType)) { |
| | | ElMessage.warning('Modbus 类型PLC通常使用 Modbus TCP 协议,请确认协议选择是否正确') |
| | | } |
| | | } |
| | | |
| | | // 方法定义 |
| | | // 加载设备类型列表 |