| | |
| | | [ |
| | | |
| | | |
| | | [ |
| | | { |
| | | |
| | | { |
| | | "button": { |
| | | "name": "D01输送", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | |
| | | |
| | | }, |
| | | "type": "3" |
| | | |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "D02输送", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "D03输送", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "D04输送", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "D05输送", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "D06输送", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "A01输送正向", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "A01输送反向", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | |
| | | }], |
| | | [ |
| | | |
| | | |
| | | { |
| | | "button": { |
| | | "name": "A01行走点动", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "A01翻转", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "A01输送正向", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | |
| | | "button": { |
| | | "name": "A01注电泵", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "A02输送正向", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "A02输送反向", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | }], |
| | | [ |
| | | |
| | | |
| | | { |
| | | "button": { |
| | | "name": "A02行走点动", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "A02翻转", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | |
| | | |
| | | |
| | | { |
| | | "button": { |
| | | "name": "A02注电泵", |
| | | "name": "A02输送正向", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "B01输送", |
| | | "name": "A02注电泵", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | "state": 0 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | }], |
| | | [ |
| | | |
| | | { |
| | | "button": { |
| | | "name": "B01行走点动", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | |
| | | { |
| | | "button": { |
| | | "name": "B01翻转气缸", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "B01升降气缸", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | | "type": "3" |
| | | }, { |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "B01吹气", |
| | | "name": "B01输送", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "B02输送", |
| | | "name": "B01吹气", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | | "type": "3" |
| | | }, |
| | | |
| | | }], |
| | | [ |
| | | |
| | | |
| | | |
| | | { |
| | | "button": { |
| | | "name": "B02行走点动", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "B02翻转气缸", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | |
| | | "button": { |
| | | "name": "B02升降气缸", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 0 |
| | | }, |
| | |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "B02吹气", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | }, |
| | | "type": "3" |
| | | } |
| | | |
| | | |
| | | ], |
| | | [ |
| | | { |
| | | "button": { |
| | | "name": "A01原点记忆", |
| | | "name": "B02输送", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "A02原点记忆", |
| | | "name": "B02吹气", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | |
| | | }, |
| | | "type": "3" |
| | | } |
| | | |
| | | |
| | | ] |
| | | |
| | | ] |
| | |
| | | |
| | | |
| | | ] |
| | | |
| | | , |
| | | [ |
| | | { |
| | | "button": { |
| | | "name": "A01原点记忆", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | |
| | | },"type": "1" |
| | | |
| | | }, |
| | | { |
| | | "button": { |
| | | "name": "A02原点记忆", |
| | | "value": 0, |
| | | "value2": 0, |
| | | "address": "DB10.0", |
| | | "state": 1 |
| | | |
| | | }, |
| | | "type": "1" |
| | | |
| | | } |
| | | ] |
| | | |
| | | |
| | | |
| | |
| | | { |
| | | "button": { |
| | | "name": "未回零", |
| | | "value":0, |
| | | "value":1, |
| | | "address":"DB10.0", |
| | | "type":"66" |
| | | } |
| | |
| | | "button": { |
| | | "name": "未回零", |
| | | |
| | | "value":0, |
| | | "value":1, |
| | | "address":"DB10.0", |
| | | "type":"66" |
| | | } |
| | |
| | | "B02 OUT pos error": "B02 OUT pos error"
|
| | | },
|
| | | "Electrical": "Electrical",
|
| | | "Parameter": "Parameter",
|
| | | "Parameter": "Manual/Automatic",
|
| | | "Action": "Action",
|
| | | "Sign": "Sign",
|
| | | "State": "State",
|
| | |
| | | "A02翻转实时位置": "A02FlipPosition",
|
| | | "故障": "Fault",
|
| | | "复位": "Reset",
|
| | | "未回零": "NotZero",
|
| | | "未回零": "Homing Failure",
|
| | | "回零": "Home",
|
| | | "目标格子": "Target Grid",
|
| | | "A02 所在格子": "A02 Current Grid",
|
| | |
| | | "翻转实时位置": "FlipPosition",
|
| | | "故障": "Fault",
|
| | | "复位": "Reset",
|
| | | "未回零": "NotZero",
|
| | | "未回零": "Homing Failure",
|
| | | "回零": "Zero",
|
| | | "目标格子": "Target Grid",
|
| | | "格子间距": "GridSpacing",
|
| | |
| | | "190#格地址": "grid address190#",
|
| | | "出片格位置设定": "OutgoingGridPositionSetting",
|
| | | "B01格位置设定":"B01PositionSetting",
|
| | | "B02位置设定":"B02PositionSetting"
|
| | | "B02位置设定":"B02PositionSetting",
|
| | | "A01原点记忆":"A01 Calibration Pos",
|
| | | "A02原点记忆":"A02 Calibration Pos"
|
| | | },
|
| | | "langPositioning2": {
|
| | |
|
| | |
| | | "B01启动": "B01 Start",
|
| | | "复位": "Reset",
|
| | | "回零": "Home",
|
| | | "未回零": "NotZero",
|
| | | "未回零": "Homing Failure",
|
| | | "B02手动格子": "B02 Target grid(Manual)",
|
| | | "B02定位速度": "B02 TRAVEL POS Velocity manual",
|
| | | "B02当前格子": "B02 Current Grid",
|
| | | "B02启动": "B02 Start",
|
| | | "复位": "Reset",
|
| | | "A01实时位置": "A01 tavel Actual Position",
|
| | | "A02实时位置": "A02 tavel Actual Position",
|
| | | "B01实时位置": "B02 tavel Actual Position",
|
| | | "B02实时位置": "B02 tavel Actual Position"
|
| | | "A01实时位置": "A01 Actual Position",
|
| | | "A02实时位置": "A02 Actual Position",
|
| | | "B01实时位置": "B02 Actual Position",
|
| | | "B02实时位置": "B02 Actual Position"
|
| | | },
|
| | | "Manualoneposition2lang": {
|
| | | "A01手动位置": "A01 turn Target Angle(Manual)",
|
| | | "A01定位速度": "A01 TURN POS Velocity manual",
|
| | | "A01翻转实时位置": "A01 turn Actual angle",
|
| | | "A01翻转启动": "A01 SERVE TURN",
|
| | | "A01翻转启动": "A01 Tilt",
|
| | | "故障": "Fault",
|
| | | "复位": "Reset",
|
| | | "未回零": "NotZero",
|
| | | "未回零": "Homing Failure",
|
| | | "回零": "Home",
|
| | | "A02手动位置": "A02 turn Target Angle(Manual)",
|
| | | "A02定位速度": "A02 TURN POS Velocity manual",
|
| | | "A02翻转实时位置": "A02 turn Actual angle",
|
| | | "A02翻转启动": "A02 SERVE TURN",
|
| | | "A02翻转启动": "A02 Tilt",
|
| | | "A02复位": "Reset"
|
| | |
|
| | |
|
| | |
| | | "手动速度": "Manual Speed"
|
| | | },
|
| | | "ManualJoglang": {
|
| | | "D01输送": "D01 VFD conveyor",
|
| | | "D02输送": "D02 VFD conveyor",
|
| | | "D03输送": "D03 VFD conveyor",
|
| | | "D04输送": "D04 VFD conveyor",
|
| | | "D05输送": "D05 VFD conveyor",
|
| | | "D06输送": "D06 VFD conveyor",
|
| | | "A01输送正向": "A01 VFD conveyor",
|
| | | "A02输送正向": "A02 VFD conveyor",
|
| | | "B01输送": "B01 VFD conveyor",
|
| | | "B02输送": "B02 VFD conveyor",
|
| | | "A01翻转": "A01 SERVE TURN",
|
| | | "A02翻转": "A02 SERVE TURN",
|
| | | "A01行走点动": "A01 SERVE TRAVEL",
|
| | | "A02行走点动": "A02 SERVE TRAVEL",
|
| | | "B01行走点动": "B01 SERVE TRAVEL",
|
| | | "B02行走点动": "B02 SERVE TRAVEL",
|
| | | "B02翻转气缸": "B02 Solenoid TURN",
|
| | | "B02升降气缸": "B02 Solenoid UP DOWN",
|
| | | "B02吹气": "B02 Solenoid Gassing",
|
| | | "B01翻转气缸": "B01 Solenoid TURN",
|
| | | "B01升降气缸": "B01 Solenoid UP DOWN",
|
| | | "B01吹气": "B01 Solenoid Gassing",
|
| | | "A01输送反向": "A01 VFD conveyor reverse",
|
| | | "A02输送反向": "A02 VFD conveyor reverse",
|
| | | "A01注电泵": "A01 oil pump",
|
| | | "A02注电泵": "A02 oil pump",
|
| | | "A01行走伺服回零":"A01 SERVE TRAVEL Home",
|
| | | "A02行走伺服回零":"A02 SERVE TRAVEL Home"
|
| | | "D01输送": "D01",
|
| | | "D02输送": "D02",
|
| | | "D03输送": "D03",
|
| | | "D04输送": "D04",
|
| | | "D05输送": "D05",
|
| | | "D06输送": "D06",
|
| | | "A01输送正向": "ConvCyor",
|
| | | "A02输送正向": "ConvCyor",
|
| | | "B01输送": "ConvCyor",
|
| | | "B02输送": "ConvCyor",
|
| | | "A01翻转": "Tilt",
|
| | | "A02翻转": "Tilt",
|
| | | "A01行走点动": "Drive",
|
| | | "A02行走点动": "Drive",
|
| | | "B01行走点动": "Drive",
|
| | | "B02行走点动": "Drive",
|
| | | "B02翻转气缸": "Tilt Cyl",
|
| | | "B02升降气缸": "V Cylinder",
|
| | | "B02吹气": "Air blow",
|
| | | "B01翻转气缸": "Tilt Cyl",
|
| | | "B01升降气缸": "V Cylinder",
|
| | | "B01吹气": "Air blow",
|
| | | "A01输送反向": "ConvCyor",
|
| | | "A02输送反向": "ConvCyor",
|
| | | "A01注电泵": "Oil Pump",
|
| | | "A02注电泵": "Oil Pump",
|
| | | "A01原点记忆":"A01 Calibration Pos",
|
| | | "A02原点记忆":"A02 Calibration Pos"
|
| | | },
|
| | | "A01行走伺服回零":"A01 SERVE TRAVEL Home",
|
| | | "A02行走伺服回零":"A02 SERVE TRAVEL Home",
|
| | | |
| | | "Set":"Set"
|
| | |
|
| | |
|
| | |
| | | "Sign": "IO状态",
|
| | | "State": "状态",
|
| | | "Alarm": "报警信息",
|
| | |
|
| | | "Cage Positions":"笼子定位",
|
| | | "PLC-MES Info":"PLC交互",
|
| | | |
| | | "Distribute": "下发",
|
| | | "Search": "搜索",
|
| | | "dvstate": {
|
| | |
| | | "D05.State": "D05.状态",
|
| | | "D06.State": "D06.状态"
|
| | | },
|
| | | "Automatic State":"自动状态",
|
| | | "Glass Data":"自动状态",
|
| | | "ManualJog":"开关控制",
|
| | | "ManualonePosition":"手动定位",
|
| | | "Manual Control":"手动定位",
|
| | | "Servomanualone":"半自动",
|
| | | "Address parameter settings":"地址参数设置",
|
| | | "Speed parameter settings":"速度参数设置",
|
| | |
| | | <template> |
| | | <div class="app"> |
| | | <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb"> |
| | | <router-link to="/Electrical/alarm" tag="el-button" type="text" active-class="blue-button">{{ $t('Alarm') |
| | | }}</router-link> |
| | | <!-- <router-link to="/Electrical/State" tag="el-button" type="text" active-class="blue-button">{{ $t('State') |
| | | }}</router-link> --> |
| | | <router-link |
| | | to="/Electrical/alarm" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Alarm") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/State" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("State") }}</router-link |
| | | > --> |
| | | <!-- <router-link to="/Electrical/Action" tag="el-button" type="text" active-class="blue-button">{{ $t('Action') |
| | | }}</router-link> --> |
| | | }}</router-link> --> |
| | | <!-- <router-link to="/Electrical/Parameter" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter') |
| | | }}</router-link> --> |
| | | <router-link to="/Electrical/Sign" tag="el-button" type="text" active-class="blue-button">{{ $t('Sign') |
| | | }}</router-link> |
| | | <router-link to="/Electrical/Servomanual" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Parameter') |
| | | }}</router-link> |
| | | }}</router-link> --> |
| | | <router-link |
| | | to="/Electrical/Sign" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("I/O") }}</router-link |
| | | > |
| | | <router-link |
| | | to="/Electrical/Servomanual" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Parameter") }}</router-link |
| | | > |
| | | </el-breadcrumb> |
| | | |
| | | <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb"> |
| | | <router-link to="/Electrical/Parameter2" tag="el-button" type="text" active-class="blue-button">{{ $t('Automatic State') |
| | | }}</router-link> |
| | | <!-- <router-link to="/Electrical/ManualJog" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('ManualJog') |
| | | }}</router-link> --> |
| | | |
| | | <router-link to="/Electrical/ManualonePosition" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('ManualonePosition') |
| | | }}</router-link> |
| | | <router-link |
| | | to="/Electrical/Parameter2" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Glass Data") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/ManualJog" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("ManualJog") }}</router-link |
| | | > --> |
| | | |
| | | <router-link to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Servomanualone') |
| | | }}</router-link> |
| | | <router-link |
| | | to="/Electrical/ManualonePosition" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Manual Control") }}</router-link |
| | | > |
| | | |
| | | <router-link |
| | | to="/Electrical/Servomanualone" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" v-show="false" |
| | | >{{ $t("Servomanualone") }}</router-link |
| | | > |
| | | <!-- <router-link to="/Electrical/Parameter1" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter1') |
| | | }}</router-link> --> |
| | | |
| | | <router-link to="/Electrical/Positioning1" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Address parameter settings') |
| | | }}</router-link> |
| | | |
| | | <router-link |
| | | to="/Electrical/Positioning1" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Cage Positions") }}</router-link |
| | | > |
| | | <!-- <router-link to="/Electrical/Positioning2" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Positioning2') |
| | | }}</router-link> --> |
| | | |
| | | |
| | | <!-- <router-link to="/Electrical/ManualonePosition2" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('ManualonePosition2') |
| | | }}</router-link> --> |
| | | <router-link to="/Electrical/AutomaticParameterSetting" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Speed parameter settings') |
| | | }}</router-link> |
| | | <router-link |
| | | to="/Electrical/AutomaticParameterSetting" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Speed parameter settings") }}</router-link |
| | | > |
| | | |
| | | <router-link |
| | | <router-link |
| | | to="/Electrical/InteractionState" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("InteractionState") }}</router-link |
| | | >{{ $t("PLC-MES Info") }}</router-link |
| | | > |
| | | |
| | | </el-breadcrumb> |
| | | |
| | | <el-row :gutter="18" class="card"> |
| | |
| | | <script> |
| | | import LanguageMixin from '../../lang/LanguageMixin' |
| | | import data from '../../configuration/AutomaticParameterSetting' |
| | | import {SelectPassword} from "../../api/home"; |
| | | |
| | | let socket; |
| | | |
| | |
| | | mixins: [LanguageMixin], |
| | | data () { |
| | | return { |
| | | jsonData: data // 加载整个data.json文件作为jsonData |
| | | jsonData: data , |
| | | password: 1// 加载整个data.json文件作为jsonData |
| | | } |
| | | }, |
| | | activated () { |
| | | |
| | | document.body.style.zoom = "90%"; |
| | | this.initWebSocket(); |
| | | const language = this.$i18n.locale; |
| | | console.log(language); |
| | |
| | | } |
| | | this.$forceUpdate(); |
| | | |
| | | this.load(); |
| | | |
| | | }, |
| | | |
| | | methods: { |
| | | load(){ |
| | | |
| | | SelectPassword().then(res => { |
| | | this.password = res.data.password; |
| | | console.log(this.password) |
| | | }); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | // console.log(this.jsonData) |
| | | |
| | | |
| | | |
| | | }, |
| | | closeSocket () { |
| | | // 关闭 WebSocket 连接 |
| | | socket.close(); |
| | |
| | | |
| | | // 提交数据到后端 |
| | | const jsonString = JSON.stringify(jsonObject); |
| | | console.log('提交以下数据到后端:', jsonString); |
| | | this.$prompt( |
| | | this.$t('Are you sure to perform this operation?'), |
| | | this.$t('prompt'), |
| | | { |
| | | inputType: 'password', |
| | | inputPlaceholder: this.$t('Please enter the password'), |
| | | confirmButtonText: this.$t('Yes'), |
| | | cancelButtonText: this.$t('No'), |
| | | type: 'warning', |
| | | } |
| | | ).then(({ value }) => { |
| | | // 验证密码是否正确 |
| | | if (value !== this.password) { |
| | | this.$message.error(this.$t('Incorrect password')); |
| | | return ; |
| | | }else{ |
| | | |
| | | console.log("提交以下数据到后端:", jsonString); |
| | | socket?.send(jsonString); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | }).catch(() => { |
| | | // 取消操作 |
| | | console.log('取消1'); |
| | | }); |
| | | |
| | | // console.log("提交以下数据到后端:", jsonString); |
| | | // socket?.send(jsonString); |
| | | event.target.blur(); // 取消输入框焦点 |
| | | |
| | | }, |
| | |
| | | active-class="blue-button" |
| | | >{{ $t("State") }}</router-link |
| | | > --> |
| | | <!-- <router-link |
| | | to="/Electrical/Action" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Action") }}</router-link |
| | | > --> |
| | | <!-- <router-link to="/Electrical/Action" tag="el-button" type="text" active-class="blue-button">{{ $t('Action') |
| | | }}</router-link> --> |
| | | <!-- <router-link to="/Electrical/Parameter" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter') |
| | | }}</router-link> --> |
| | | }}</router-link> --> |
| | | <router-link |
| | | to="/Electrical/Sign" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Sign") }}</router-link |
| | | >{{ $t("I/O") }}</router-link |
| | | > |
| | | <router-link |
| | | to="/Electrical/Servomanual" |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Automatic State") }}</router-link |
| | | >{{ $t("Glass Data") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/ManualJog" |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("ManualonePosition") }}</router-link |
| | | >{{ $t("Manual Control") }}</router-link |
| | | > |
| | | |
| | | <router-link |
| | | to="/Electrical/Servomanualone" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | active-class="blue-button" v-show="false" |
| | | >{{ $t("Servomanualone") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/Parameter1" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Parameter1") }}</router-link |
| | | > --> |
| | | <!-- <router-link to="/Electrical/Parameter1" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter1') |
| | | }}</router-link> --> |
| | | |
| | | <router-link |
| | | to="/Electrical/Positioning1" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Address parameter settings") }}</router-link |
| | | >{{ $t("Cage Positions") }}</router-link |
| | | > |
| | | <!-- <router-link to="/Electrical/Positioning2" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Positioning2') |
| | | }}</router-link> --> |
| | | |
| | | <!-- <router-link |
| | | to="/Electrical/ManualonePosition2" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("ManualonePosition2") }}</router-link |
| | | > --> |
| | | <!-- <router-link to="/Electrical/ManualonePosition2" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('ManualonePosition2') |
| | | }}</router-link> --> |
| | | <router-link |
| | | to="/Electrical/AutomaticParameterSetting" |
| | | tag="el-button" |
| | |
| | | active-class="blue-button" |
| | | >{{ $t("Speed parameter settings") }}</router-link |
| | | > |
| | | <router-link |
| | | |
| | | <router-link |
| | | to="/Electrical/InteractionState" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("InteractionState") }}</router-link |
| | | >{{ $t("PLC-MES Info") }}</router-link |
| | | > |
| | | |
| | | |
| | | </el-breadcrumb> |
| | | |
| | | <el-row :gutter="30" class="card"> |
| | |
| | | }; |
| | | }, |
| | | activated() { |
| | | document.body.style.zoom = "90%"; |
| | | this.initWebSocket(); |
| | | const language = this.$i18n.locale; |
| | | console.log(language); |
| | |
| | | |
| | | </el-breadcrumb> --> |
| | | |
| | | <el-row :gutter="40" > |
| | | <el-col :span="26" v-for="(dataGroup, groupIndex) in jsonData" :key="groupIndex"> |
| | | <el-card class="json-block" style="width:100%;"> |
| | | <el-row :gutter="40"> |
| | | <el-col :span="26" v-for="(dataGroup, groupIndex) in jsonData" :key="groupIndex"> |
| | | <el-card class="json-block" style="width:100%;"> |
| | | <!-- 使用容器显示文字 --> |
| | | <div style="position: relative;"> |
| | | <div class="extra-data" style="margin-top: 2px; display: flex;"> |
| | | <div v-for="(extraItem, extraIndex) in extraData[groupIndex]" :key="extraIndex" > |
| | | {{ extraItem }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="button-row" style="display: flex; justify-content: flex-start;flex-wrap:wrap;"> |
| | | <div v-for="(item, itemIndex) in dataGroup" :key="itemIndex" style="margin: 10px;"> |
| | | <el-button v-if="item.button" v-model="item.button.value" :name="item.button.name" style='width:200px;' |
| | | :class="{ 'dow': item.button.value === 0, 'op': item.button.value === 1 }" class="action-button" |
| | | @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ |
| | | item.button.name |
| | | }}</el-button> |
| | | </div> |
| | | |
| | | |
| | | <div class="button-row" style="display: flex; justify-content: flex-start; flex-wrap: wrap;"> |
| | | <div v-for="(item, itemIndex) in dataGroup" :key="itemIndex" style="margin: 10px;"> |
| | | <el-button v-if="item.button" v-model="item.button.value" :name="item.button.name" style='width:160px;' |
| | | :class="{ 'dow': item.button.value === 0, 'op': item.button.value === 1 }" class="action-button" |
| | | @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);"> |
| | | {{ item.button.name }} |
| | | </el-button> |
| | | </div> |
| | | </el-card> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | | <!-- <el-button @click="submitDataToBackend">提交数据到后端</el-button> --> |
| | | </div> |
| | | </template> |
| | |
| | | return { |
| | | jsonData: data, // 加载整个data.json文件作为jsonData |
| | | password: 1, |
| | | extraData: [ |
| | | "Infeed/Outfeed Conveyos", |
| | | "A01", |
| | | "A02", |
| | | "B01", |
| | | "B02", |
| | | |
| | | ] |
| | | } |
| | | }, |
| | | activated () { |
| | |
| | | |
| | | |
| | | }, |
| | | submitDataToBackend (currentButtonName) { |
| | | |
| | | if (currentButtonName === 'A01 SERVE TRAVEL Home' || currentButtonName === 'A02 SERVE TRAVEL Home' || currentButtonName === 'A01行走伺服回零' || currentButtonName === 'A02行走伺服回零') { |
| | | this.$prompt( |
| | | this.$t('Are you sure to perform this operation?'), |
| | | this.$t('prompt'), |
| | | { |
| | | inputType: 'password', |
| | | inputPlaceholder: this.$t('Please enter the password'), |
| | | confirmButtonText: this.$t('Yes'), |
| | | cancelButtonText: this.$t('No'), |
| | | type: 'warning', |
| | | } |
| | | ).then(({ value }) => { |
| | | // 验证密码是否正确 |
| | | if (value !== this.password) { |
| | | this.$message.error(this.$t('Incorrect password')); |
| | | return; |
| | | } |
| | | |
| | | // 密码正确,继续提交数据到后端 |
| | | const inputData = this.jsonData.map(dataGroup => { |
| | | return dataGroup.map(item => { |
| | | if (item.type === '3') { |
| | | return { value: item.button.value2 }; |
| | | } |
| | | return null; |
| | | }); |
| | | }); |
| | | |
| | | const values = inputData.flat().filter(item => item !== null).map(item => item.value); |
| | | |
| | | const jsonObject = { data: values }; |
| | | |
| | | // 提交数据到后端 |
| | | const jsonString = JSON.stringify(jsonObject); |
| | | console.log('Type为3的value:', jsonString); |
| | | socket?.send(jsonString); |
| | | |
| | | }).catch(() => { |
| | | // 取消操作 |
| | | console.log('取消'); |
| | | }); |
| | | } else { |
| | | // 如果不是 A01 SERVE TRAVEL Home 按钮,继续提交数据到后端 |
| | | const inputData = this.jsonData.map(dataGroup => { |
| | | return dataGroup.map(item => { |
| | | if (item.type === '3') { |
| | | return { value: item.button.value2 }; |
| | | } |
| | | return null; |
| | | }); |
| | | }); |
| | | |
| | | const values = inputData.flat().filter(item => item !== null).map(item => item.value); |
| | | |
| | | const jsonObject = { data: values }; |
| | | |
| | | // 提交数据到后端 |
| | | const jsonString = JSON.stringify(jsonObject); |
| | | console.log('Type为3的value:', jsonString); |
| | | socket?.send(jsonString); |
| | | } |
| | | }, |
| | | |
| | | |
| | | initWebSocket () { |
| | | let viewname = "ManualJog"; |
| | |
| | | <template>
|
| | | <div class="app">
|
| | | <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb">
|
| | | <router-link to="/Electrical/alarm" tag="el-button" type="text" active-class="blue-button">{{ $t('Alarm')
|
| | | }}</router-link>
|
| | | <!-- <router-link to="/Electrical/State" tag="el-button" type="text" active-class="blue-button">{{ $t('State')
|
| | | }}</router-link> -->
|
| | | <!-- <router-link to="/Electrical/Action" tag="el-button" type="text" active-class="blue-button">{{ $t('Action')
|
| | | }}</router-link> -->
|
| | | <!-- <router-link to="/Electrical/Parameter" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter')
|
| | | }}</router-link> -->
|
| | | <router-link to="/Electrical/Sign" tag="el-button" type="text" active-class="blue-button">{{ $t('Sign')
|
| | | }}</router-link>
|
| | | <router-link to="/Electrical/Servomanual" tag="el-button" type="text" active-class="blue-button">{{
|
| | | $t('Parameter')
|
| | | }}</router-link>
|
| | | <router-link
|
| | | to="/Electrical/alarm"
|
| | | tag="el-button"
|
| | | type="text"
|
| | | active-class="blue-button"
|
| | | >{{ $t("Alarm") }}</router-link
|
| | | >
|
| | | |
| | | <router-link
|
| | | to="/Electrical/Sign"
|
| | | tag="el-button"
|
| | | type="text"
|
| | | active-class="blue-button"
|
| | | >{{ $t("I/O") }}</router-link
|
| | | >
|
| | | <router-link |
| | | to="/Electrical/Servomanual"
|
| | | tag="el-button"
|
| | | type="text"
|
| | | active-class="blue-button"
|
| | | >{{ $t("Parameter") }}</router-link
|
| | | >
|
| | | </el-breadcrumb>
|
| | | <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb">
|
| | | <router-link to="/Electrical/Parameter2" tag="el-button" type="text" active-class="blue-button">{{ $t('Automatic State')
|
| | | }}</router-link>
|
| | | <!-- <router-link to="/Electrical/ManualJog" tag="el-button" type="text" active-class="blue-button">{{
|
| | | $t('ManualJog')
|
| | | }}</router-link> -->
|
| | | |
| | | <router-link to="/Electrical/ManualonePosition" tag="el-button" type="text" active-class="blue-button">{{
|
| | | $t('ManualonePosition')
|
| | | }}</router-link>
|
| | |
|
| | | <router-link v-if="hasPermission" to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button">
|
| | | <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb">
|
| | | <router-link
|
| | | to="/Electrical/Parameter2"
|
| | | tag="el-button"
|
| | | type="text"
|
| | | active-class="blue-button"
|
| | | >{{ $t("Glass Data") }}</router-link
|
| | | >
|
| | |
|
| | |
|
| | | <router-link
|
| | | to="/Electrical/ManualonePosition"
|
| | | tag="el-button"
|
| | | type="text"
|
| | | active-class="blue-button"
|
| | | >{{ $t("Manual Control") }}</router-link
|
| | | >
|
| | |
|
| | | <router-link v-show="false" v-if="hasPermission" to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button">
|
| | | {{ $t('Servomanualone') }}
|
| | | </router-link>
|
| | |
|
| | |
|
| | | <router-link v-if="hasPermission" to="/Electrical/Positioning1" tag="el-button" type="text" active-class="blue-button">{{
|
| | | $t('Address parameter settings')
|
| | | $t('Cage Positions')
|
| | | }}</router-link>
|
| | |
|
| | | <router-link v-if="hasPermission" to="/Electrical/AutomaticParameterSetting" tag="el-button" type="text" active-class="blue-button">{{
|
| | |
| | | tag="el-button"
|
| | | type="text"
|
| | | active-class="blue-button"
|
| | | >{{ $t("InteractionState") }}</router-link
|
| | | >{{ $t("PLC-MES Info") }}</router-link
|
| | | >
|
| | | |
| | | </el-breadcrumb>
|
| | |
|
| | | <el-row :gutter="10">
|
| | |
| | | <div v-for="(item, itemIndex) in dataGroup" :key="itemIndex">
|
| | | <el-button v-if="item.button && language === 'en-US' && item.state != 0" :name="item.button.name"
|
| | | v-model="item.button.value"
|
| | | :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'NotZero' && item.button.value === 1,'error-button3': item.button.name === 'Zero' && item.button.value === 0,'greenbutton': item.button.name !== 'NotZero' && item.button.name !== 'Fault' && item.button.value === 1 }"
|
| | | :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'Homing Failure' && item.button.value === 1,'error-button3': item.button.name === 'Homing Complete' && item.button.value === 0,'greenbutton': item.button.name !== 'Homing Failure' && item.button.name !== 'Fault' && item.button.value === 1 }"
|
| | | @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{
|
| | | item.button.name }}</el-button>
|
| | | <el-button v-if="item.button && language === 'zh-CN' && item.state != 0" :name="item.button.name"
|
| | |
| | | }
|
| | | },
|
| | | activated () {
|
| | |
|
| | | document.body.style.zoom = "90%";
|
| | | this.initWebSocket();
|
| | | const language = this.$i18n.locale;
|
| | | //console.log(language);
|
| | |
| | | for (let j = 2; j < arr2.length; j++) {
|
| | | let obj3 = arr2[j];
|
| | | if (obj3.button) {
|
| | | if (obj3.button && (obj3.button.name === "未回零" || obj3.button.name === "NotZero" || obj3.button.name === "已回零" || obj3.button.name === "Zero")) {
|
| | | if (obj3.button && (obj3.button.name === "未回零" || obj3.button.name === "Homing Failure" || obj3.button.name === "已回零" || obj3.button.name === "Homing Complete")) {
|
| | | obj3.button.value = weihuiling[0][i];
|
| | | // console.log(obj3.button.value)
|
| | | }
|
| | |
| | | if ( obj.button.name==="未回零" && this.language==="zh-CN") {
|
| | | obj.button.name =obj.button.name.replace("未回零","已回零") ;
|
| | | }
|
| | | if ( obj.button.name==="NotZero") {
|
| | | obj.button.name =obj.button.name.replace("NotZero","Zero") ;
|
| | | if ( obj.button.name==="Homing Failure") {
|
| | | obj.button.name =obj.button.name.replace("Homing Failure","Homing Complete") ;
|
| | | }
|
| | | }
|
| | | if (obj.button && obj.button.value===1) {
|
| | | if ( obj.button.name==="已回零"&& this.language==="zh-CN") {
|
| | | obj.button.name =obj.button.name.replace("已回零","未回零") ;
|
| | | }
|
| | | if ( obj.button.name==="Zero") {
|
| | | obj.button.name =obj.button.name.replace("Zero","NotZero") ;
|
| | | if ( obj.button.name==="Homing Complete") {
|
| | | obj.button.name =obj.button.name.replace("Homing Complete","Homing Failure") ;
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | <div class="button-row" style="display: flex; justify-content: space-between;">
|
| | | <div v-for="(item, itemIndex) in dataGroup" :key="itemIndex">
|
| | | <el-button v-if="item.button && language === 'en-US' " :name="item.button.name" v-model="item.button.value"
|
| | | :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'NotZero' && item.button.value === 1,'error-button3': item.button.name === 'Zero' && item.button.value ===0,'greenbutton': item.button.name !== 'NotZero' && item.button.name !== 'Fault' && item.button.value === 1 }"
|
| | | :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'Homing Failure' && item.button.value === 1,'error-button3': item.button.name === 'Homing Complete' && item.button.value ===0,'greenbutton': item.button.name !== 'Homing Failure' && item.button.name !== 'Fault' && item.button.value === 1 }"
|
| | | @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{
|
| | | item.button.name }}</el-button>
|
| | | <el-button v-if="item.button && language === 'zh-CN' " :name="item.button.name" v-model="item.button.value"
|
| | |
| | | },
|
| | | //提交方法
|
| | | submitDataToBackend (currentButtonName) {
|
| | | if (currentButtonName === 'A01翻转启动' || currentButtonName === 'A01 SERVE TURN') {
|
| | | if (currentButtonName === 'A01翻转启动' || currentButtonName === 'A01 Tilt') {
|
| | | const data = [];
|
| | |
|
| | | const values = [this.jsonData[0][3].button.value]
|
| | |
| | |
|
| | | }
|
| | |
|
| | | if (currentButtonName === 'A02翻转启动' || currentButtonName === 'A02 SERVE TURN') {
|
| | | if (currentButtonName === 'A02翻转启动' || currentButtonName === 'A02 Tilt') {
|
| | | const data = [];
|
| | |
|
| | | const values = [this.jsonData[0][3].button.value]
|
| | |
| | | for (let j = 0; j < arr2.length; j++) {
|
| | | let obj3 = arr2[j];
|
| | | if (obj3.button) {
|
| | | if (obj3.button && (obj3.button.name === "未回零" || obj3.button.name === "NotZero" || obj3.button.name === "已回零" || obj3.button.name === "Zero")) {
|
| | | if (obj3.button && (obj3.button.name === "未回零" || obj3.button.name === "Homing Failure" || obj3.button.name === "已回零" || obj3.button.name === "Homing Complete")) {
|
| | | obj3.button.value = weihuiling[0][i];
|
| | | // console.log(obj3.button.value)
|
| | | }
|
| | |
| | | if ( obj.button.name==="未回零" && this.language==="zh-CN") {
|
| | | obj.button.name =obj.button.name.replace("未回零","已回零") ;
|
| | | }
|
| | | if ( obj.button.name==="NotZero") {
|
| | | obj.button.name =obj.button.name.replace("NotZero","Zero") ;
|
| | | if ( obj.button.name==="Homing Failure") {
|
| | | obj.button.name =obj.button.name.replace("Homing Failure","Homing Complete") ;
|
| | | }
|
| | | }
|
| | | if (obj.button && obj.button.value===1) {
|
| | | if ( obj.button.name==="已回零"&& this.language==="zh-CN") {
|
| | | obj.button.name =obj.button.name.replace("已回零","未回零") ;
|
| | | }
|
| | | if ( obj.button.name==="Zero") {
|
| | | obj.button.name =obj.button.name.replace("Zero","NotZero") ;
|
| | | if ( obj.button.name==="Homing Complete") {
|
| | | obj.button.name =obj.button.name.replace("Homing Complete","Homing Failure") ;
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | active-class="blue-button" |
| | | >{{ $t("Alarm") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/State" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("State") }}</router-link |
| | | > --> |
| | | <!-- <router-link |
| | | to="/Electrical/Action" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Action") }}</router-link --> |
| | | |
| | | <!-- <router-link to="/Electrical/Parameter" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter') |
| | | }}</router-link> --> |
| | | |
| | | <router-link |
| | | to="/Electrical/Sign" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Sign") }}</router-link |
| | | >{{ $t("I/O") }}</router-link |
| | | > |
| | | <router-link |
| | | to="/Electrical/Servomanual" |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Automatic State") }}</router-link |
| | | >{{ $t("Glass Data") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/ManualJog" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("ManualJog") }}</router-link |
| | | > --> |
| | | |
| | | |
| | | <router-link |
| | | to="/Electrical/ManualonePosition" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("ManualonePosition") }}</router-link |
| | | >{{ $t("Manual Control") }}</router-link |
| | | > |
| | | |
| | | <router-link v-if="hasPermission" to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button"> |
| | | <router-link v-show="false" v-if="hasPermission" to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button"> |
| | | {{ $t('Servomanualone') }} |
| | | </router-link> |
| | | |
| | | |
| | | <router-link v-if="hasPermission" to="/Electrical/Positioning1" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Address parameter settings') |
| | | $t('Cage Positions') |
| | | }}</router-link> |
| | | |
| | | <router-link v-if="hasPermission" to="/Electrical/AutomaticParameterSetting" tag="el-button" type="text" active-class="blue-button">{{ |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("InteractionState") }}</router-link |
| | | >{{ $t("PLC-MES Info") }}</router-link |
| | | > |
| | | </el-breadcrumb> |
| | | |
| | |
| | | }, |
| | | |
| | | activated() { |
| | | document.body.style.zoom = "90%"; |
| | | this.initWebSocket(); |
| | | this.filteredData(); |
| | | const language = this.$i18n.locale; |
| | |
| | | active-class="blue-button" |
| | | >{{ $t("State") }}</router-link |
| | | > --> |
| | | <!-- <router-link |
| | | to="/Electrical/Action" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Action") }}</router-link |
| | | > --> |
| | | <!-- <router-link to="/Electrical/Action" tag="el-button" type="text" active-class="blue-button">{{ $t('Action') |
| | | }}</router-link> --> |
| | | <!-- <router-link to="/Electrical/Parameter" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter') |
| | | }}</router-link> --> |
| | | }}</router-link> --> |
| | | <router-link |
| | | to="/Electrical/Sign" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Sign") }}</router-link |
| | | >{{ $t("I/O") }}</router-link |
| | | > |
| | | <router-link |
| | | to="/Electrical/Servomanual" |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Automatic State") }}</router-link |
| | | >{{ $t("Glass Data") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/ManualJog" |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("ManualonePosition") }}</router-link |
| | | >{{ $t("Manual Control") }}</router-link |
| | | > |
| | | |
| | | <router-link |
| | | to="/Electrical/Servomanualone" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | active-class="blue-button" v-show="false" |
| | | >{{ $t("Servomanualone") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/Parameter1" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Parameter1") }}</router-link |
| | | > --> |
| | | <!-- <router-link to="/Electrical/Parameter1" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter1') |
| | | }}</router-link> --> |
| | | |
| | | <router-link |
| | | to="/Electrical/Positioning1" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Address parameter settings") }}</router-link |
| | | active-class="blue-button" |
| | | >{{ $t("Cage Positions") }}</router-link |
| | | > |
| | | <!-- <router-link to="/Electrical/Positioning2" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Positioning2') |
| | | }}</router-link> --> |
| | | |
| | | <!-- <router-link |
| | | to="/Electrical/ManualonePosition2" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("ManualonePosition2") }}</router-link |
| | | > --> |
| | | <!-- <router-link to="/Electrical/ManualonePosition2" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('ManualonePosition2') |
| | | }}</router-link> --> |
| | | <router-link |
| | | to="/Electrical/AutomaticParameterSetting" |
| | | tag="el-button" |
| | |
| | | >{{ $t("Speed parameter settings") }}</router-link |
| | | > |
| | | |
| | | <router-link |
| | | <router-link |
| | | to="/Electrical/InteractionState" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("InteractionState") }}</router-link |
| | | >{{ $t("PLC-MES Info") }}</router-link |
| | | > |
| | | </el-breadcrumb> |
| | | |
| | | <el-row :gutter="18" class="card" style="width: 1400px"> |
| | | <el-row :gutter="18" class="card" style="width: 1400px"> |
| | | <el-col |
| | | :span="7" |
| | | v-for="(dataGroup, groupIndex) in jsonData" |
| | | :key="groupIndex" |
| | | > |
| | | <el-card class="json-block" style="width: 400px"> |
| | | <el-card class="json-block" style="width: 400px"> |
| | | <div |
| | | class="button-row" |
| | | style="display: flex; justify-content: space-between" |
| | |
| | | v-if="item.type === '0'" |
| | | style="width: 120px" |
| | | v-model="item.value" |
| | | class="input-box" :oninput="`value=value.replace(/^0|[^0-9]/g,'');if(value<`+item.min+`){value=`+item.value+`}else if(value>`+item.max+`){value=`+item.value+`}`" |
| | | class="input-box" |
| | | :oninput=" |
| | | `value=value.replace(/^0|[^0-9]/g,'');if(value<` + |
| | | item.min + |
| | | `){value=` + |
| | | item.value + |
| | | `}else if(value>` + |
| | | item.max + |
| | | `){value=` + |
| | | item.value + |
| | | `}` |
| | | " |
| | | @keyup.enter.native="submitDataToBackend($event)" |
| | | ></el-input> |
| | | <span v-if="item.unit" :name="item.unit">{{ item.unit }}</span> |
| | | |
| | | <el-button |
| | | v-if="item.type === '0' && item.name !== '格子间距' && item.name !== 'GridSpacing' " |
| | | <el-button |
| | | v-if=" |
| | | item.type === '0' && |
| | | item.name !== '格子间距' && |
| | | item.name !== 'GridSpacing' |
| | | " |
| | | class="input-box" |
| | | @click="updateButtonValue(dataGroup, itemIndex, groupIndex)" |
| | | >{{ $t("Set") }}</el-button |
| | | > |
| | | |
| | | class="input-box" @click="updateButtonValue(dataGroup, itemIndex,groupIndex);">{{ $t("Set") }}</el-button> |
| | | <div |
| | | class="button-row" |
| | | style=" |
| | | display: flex; |
| | | justify-content: flex-start; |
| | | flex-wrap: wrap; |
| | | " |
| | | > |
| | | <el-button |
| | | v-if="item.button" |
| | | v-model="item.button.value" |
| | | :name="item.button.name" |
| | | style="width: 160px" |
| | | :class="{ |
| | | dow: item.button.value === 0, |
| | | op: item.button.value === 1, |
| | | }" |
| | | class="action-button" |
| | | @click=" |
| | | updateButtonValue2(dataGroup, itemIndex); |
| | | submitDataToBackend2(item.button.name); |
| | | " |
| | | > |
| | | {{ item.button.name }} |
| | | </el-button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | |
| | | let socket; |
| | | import LanguageMixin from "../../lang/LanguageMixin"; |
| | | import data from "../../configuration/Positioning1"; |
| | | import {SelectPassword} from "../../api/home"; |
| | | |
| | | export default { |
| | | name: "Positioning1", |
| | |
| | | data() { |
| | | return { |
| | | jsonData: data, // 加载整个data.json文件作为jsonData |
| | | A01:"", |
| | | A02:"", |
| | | B01:"", |
| | | B02:"", |
| | | jianju:"" |
| | | |
| | | A01: "", |
| | | A02: "", |
| | | B01: "", |
| | | B02: "", |
| | | password: 1, |
| | | jianju: "", |
| | | }; |
| | | }, |
| | | activated() { |
| | | document.body.style.zoom = "90%"; |
| | | this.initWebSocket(); |
| | | const language = this.$i18n.locale; |
| | | console.log(language); |
| | |
| | | this.replaceChineseWithEnglish(); |
| | | } |
| | | this.$forceUpdate(); |
| | | this.load(); |
| | | |
| | | }, |
| | | methods: { |
| | | updateButtonValue(dataGroup, itemIndex,groupIndex) { |
| | | load(){ |
| | | |
| | | if(groupIndex==1){ |
| | | const value = parseFloat(this.A01); |
| | | SelectPassword().then(res => { |
| | | this.password = res.data.password; |
| | | console.log(this.password) |
| | | }); |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | console.log(value) |
| | | } |
| | | if(groupIndex==2){ |
| | | const value = parseFloat(this.A02) ; |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | console.log(value) |
| | | } |
| | | |
| | | if(groupIndex==3){ |
| | | const value = parseFloat(this.A01) + parseFloat(this.jianju); |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | console.log(value) |
| | | } |
| | | if(groupIndex==4){ |
| | | const value=parseFloat(this.A02)+parseFloat(this.jianju) |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | } |
| | | if(groupIndex==5){ |
| | | const value=parseFloat(this.B01)-parseFloat(this.jianju) |
| | | console.log(this.jsonData) |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | } |
| | | if(groupIndex==6){ |
| | | const value=parseFloat(this.B02)+parseFloat(this.jianju) |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | } |
| | | |
| | | this.submitDataToBackend(event); |
| | | |
| | | |
| | | }, |
| | | |
| | | updateButtonValue2 (dataGroup, itemIndex) { |
| | | if (dataGroup[itemIndex].button.value2 === 0) { |
| | | // 如果当前按钮的值是 0,将其设为 1 |
| | | this.$set(dataGroup[itemIndex].button, 'value2', 1); |
| | | } else { |
| | | // 否则将其设为 0 |
| | | this.$set(dataGroup[itemIndex].button, 'value2', 0); |
| | | } |
| | | }, |
| | | updateButtonValue(dataGroup, itemIndex, groupIndex) { |
| | | if (groupIndex == 1) { |
| | | const value = parseFloat(this.A01); |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | console.log(value); |
| | | } |
| | | if (groupIndex == 2) { |
| | | const value = parseFloat(this.A02); |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | console.log(value); |
| | | } |
| | | |
| | | if (groupIndex == 3) { |
| | | const value = parseFloat(this.A01) + parseFloat(this.jianju); |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | console.log(value); |
| | | } |
| | | if (groupIndex == 4) { |
| | | const value = parseFloat(this.A02) + parseFloat(this.jianju); |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | } |
| | | if (groupIndex == 5) { |
| | | const value = parseFloat(this.B01) - parseFloat(this.jianju); |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | } |
| | | if (groupIndex == 6) { |
| | | const value = parseFloat(this.B02) + parseFloat(this.jianju); |
| | | |
| | | this.$set(dataGroup[itemIndex], "value", value); |
| | | } |
| | | |
| | | this.submitDataToBackend(event); |
| | | }, |
| | | //提交数据到后端 |
| | | submitDataToBackend(event) { |
| | |
| | | return dataGroup.map((item) => { |
| | | if (item.type === "0") { |
| | | return { value: parseInt(item.value) }; |
| | | } else if (item.button) { |
| | | return { value: parseInt(item.title.value) }; |
| | | } |
| | | return null; |
| | | }); |
| | |
| | | |
| | | // 提交数据到后端 |
| | | const jsonString = JSON.stringify(jsonObject); |
| | | console.log('提交以下数据到后端:', jsonString); |
| | | |
| | | this.$prompt( |
| | | this.$t('Are you sure to perform this operation?'), |
| | | this.$t('prompt'), |
| | | { |
| | | inputType: 'password', |
| | | inputPlaceholder: this.$t('Please enter the password'), |
| | | confirmButtonText: this.$t('Yes'), |
| | | cancelButtonText: this.$t('No'), |
| | | type: 'warning', |
| | | } |
| | | ).then(({ value }) => { |
| | | // 验证密码是否正确 |
| | | if (value !== this.password) { |
| | | this.$message.error(this.$t('Incorrect password')); |
| | | return ; |
| | | }else{ |
| | | console.log("提交以下数据到后端:", jsonString); |
| | | socket?.send(jsonString); |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | }).catch(() => { |
| | | // 取消操作 |
| | | console.log('取消1'); |
| | | }); |
| | | |
| | | |
| | | |
| | | event.target.blur(); // 取消输入框焦点 |
| | | }, |
| | | |
| | | submitDataToBackend2 (currentButtonName) { |
| | | |
| | | if (currentButtonName === 'A01 Calibration Pos' || currentButtonName === 'A02 Calibration Pos' || currentButtonName === 'A01原点记忆' || currentButtonName === 'A02原点记忆') { |
| | | this.$prompt( |
| | | this.$t('Are you sure to perform this operation?'), |
| | | this.$t('prompt'), |
| | | { |
| | | inputType: 'password', |
| | | inputPlaceholder: this.$t('Please enter the password'), |
| | | confirmButtonText: this.$t('Yes'), |
| | | cancelButtonText: this.$t('No'), |
| | | type: 'warning', |
| | | } |
| | | ).then(({ value }) => { |
| | | // 验证密码是否正确 |
| | | if (value !== this.password) { |
| | | this.$message.error(this.$t('Incorrect password')); |
| | | return; |
| | | } |
| | | |
| | | // 密码正确,继续提交数据到后端 |
| | | const inputData = this.jsonData.map(dataGroup => { |
| | | return dataGroup.map(item => { |
| | | if (item.type === '1'&& item.button) { |
| | | |
| | | return { value: item.button.value2 }; |
| | | } |
| | | return null; |
| | | }); |
| | | }); |
| | | |
| | | const values = inputData.flat().filter(item => item !== null).map(item => item.value); |
| | | const data = []; |
| | | data.push(values); |
| | | |
| | | data.unshift([], [], [],[],[],[],[]); |
| | | const jsonObject = { data }; |
| | | |
| | | // 提交数据到后端 |
| | | const jsonString = JSON.stringify(jsonObject); |
| | | console.log('Type为3的value:', jsonString); |
| | | socket?.send(jsonString); |
| | | |
| | | }).catch(() => { |
| | | // 取消操作 |
| | | console.log('取消1'); |
| | | }); |
| | | } else { |
| | | console.log('取消2'); |
| | | } |
| | | }, |
| | | initWebSocket() { |
| | | let viewname = "Positioning1"; |
| | | |
| | |
| | | }; |
| | | |
| | | // 收到消息 |
| | | // let isMouseInInputBox = false; // 标记鼠标是否在输入框内 |
| | | // let isMouseInInputBox = false; // 标记鼠标是否在输入框内 |
| | | |
| | | // const inputBox = document.querySelectorAll('.input-box'); |
| | | // inputBox.forEach(box => { |
| | | // box.addEventListener('mouseenter', () => { |
| | | // isMouseInInputBox = true; |
| | | // }); |
| | | // box.addEventListener('mouseleave', () => { |
| | | // isMouseInInputBox = false; |
| | | // }); |
| | | // }); |
| | | // const inputBox = document.querySelectorAll('.input-box'); |
| | | // inputBox.forEach(box => { |
| | | // box.addEventListener('mouseenter', () => { |
| | | // isMouseInInputBox = true; |
| | | // }); |
| | | // box.addEventListener('mouseleave', () => { |
| | | // isMouseInInputBox = false; |
| | | // }); |
| | | // }); |
| | | |
| | | socket.onmessage = (msg) => { |
| | | if (!msg.data) { |
| | | return; // 如果收到空数据,则直接返回,不执行后续逻辑 |
| | | } |
| | | if (document.activeElement.tagName.toLowerCase() === 'input') { |
| | | return; |
| | | } |
| | | socket.onmessage = (msg) => { |
| | | if (!msg.data) { |
| | | return; // 如果收到空数据,则直接返回,不执行后续逻辑 |
| | | } |
| | | if (document.activeElement.tagName.toLowerCase() === "input") { |
| | | return; |
| | | } |
| | | |
| | | let obj = JSON.parse(msg.data); |
| | | const jsonData2 = this.jsonData; |
| | | let obj = JSON.parse(msg.data); |
| | | const jsonData2 = this.jsonData; |
| | | |
| | | const parms = obj.params; |
| | | const parms = obj.params; |
| | | |
| | | if(parms ){ // 只有在鼠标不在输入框内时才更新数据 |
| | | // console.log(parms) |
| | | |
| | | let index = 0; |
| | | for (let i = 0; i < jsonData2.length; i++) { |
| | | let arr = jsonData2[i]; |
| | | for (let j = 0; j < arr.length; j++) { |
| | | let obj = arr[j]; |
| | | if ( |
| | | obj.type === "0" && |
| | | Object.prototype.hasOwnProperty.call(obj, "value") |
| | | ) { |
| | | obj.value = parms[0][index]; |
| | | index++; |
| | | } |
| | | } |
| | | } |
| | | if (parms) { |
| | | // 只有在鼠标不在输入框内时才更新数据 |
| | | // console.log(parms) |
| | | |
| | | let index = 0; |
| | | for (let i = 0; i < jsonData2.length; i++) { |
| | | let arr = jsonData2[i]; |
| | | for (let j = 0; j < arr.length; j++) { |
| | | let obj = arr[j]; |
| | | if ( |
| | | obj.type === "0" && |
| | | Object.prototype.hasOwnProperty.call(obj, "value") |
| | | ) { |
| | | obj.value = parms[0][index]; |
| | | index++; |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | this.A01 = obj.shishi1[0][0]; |
| | | this.A01 = obj.shishi1[0][0]; |
| | | |
| | | this.A02 = obj.shishi1[0][1]; |
| | | |
| | | this.B01= obj.shishi1[0][2]; |
| | | this.A02 = obj.shishi1[0][1]; |
| | | |
| | | this.B02 = obj.shishi1[0][3]; |
| | | this.jianju = obj.params[0][0]; |
| | | |
| | | this.B01 = obj.shishi1[0][2]; |
| | | |
| | | this.B02 = obj.shishi1[0][3]; |
| | | this.jianju = obj.params[0][0]; |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | }; |
| | | |
| | | jsonData2[7][0].button.value = obj.PLCOriginmarkingarraylist[0][0]; |
| | | jsonData2[7][1].button.value = obj.PLCOriginmarkingarraylist[0][1]; |
| | | } |
| | | }; |
| | | |
| | | // 关闭事件 |
| | | socket.onclose = function () { |
| | |
| | | $t('ManualonePosition') |
| | | }}</router-link> |
| | | |
| | | <router-link to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button">{{ |
| | | <router-link to="/Electrical/Servomanualone" tag="el-button" type="text" v-show="false" active-class="blue-button">{{ |
| | | $t('Servomanualone') |
| | | }}</router-link> |
| | | <!-- <router-link to="/Electrical/Parameter1" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter1') |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Sign") }}</router-link |
| | | >{{ $t("I/O") }}</router-link |
| | | > |
| | | <router-link |
| | | to="/Electrical/Servomanual" |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Automatic State") }}</router-link |
| | | >{{ $t("Glass Data") }}</router-link |
| | | > |
| | | <!-- <router-link |
| | | to="/Electrical/ManualJog" |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("ManualonePosition") }}</router-link |
| | | >{{ $t("Manual Control") }}</router-link |
| | | > |
| | | |
| | | <router-link |
| | | to="/Electrical/Servomanualone" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | active-class="blue-button" v-show="false" |
| | | >{{ $t("Servomanualone") }}</router-link |
| | | > |
| | | <!-- <router-link to="/Electrical/Parameter1" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter1') |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Address parameter settings") }}</router-link |
| | | >{{ $t("Cage Positions") }}</router-link |
| | | > |
| | | <!-- <router-link to="/Electrical/Positioning2" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Positioning2') |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("InteractionState") }}</router-link |
| | | >{{ $t("PLC-MES Info") }}</router-link |
| | | > |
| | | </el-breadcrumb> |
| | | |
| | |
| | | 'error-button': |
| | | item.button.name === 'Fault' && item.button.value === 1, |
| | | 'error-button2': |
| | | item.button.name === 'NotZero' && item.button.value === 1, |
| | | item.button.name === 'Homing Failure' && item.button.value === 1, |
| | | 'error-button3': |
| | | item.button.name === 'Zero' && item.button.value === 0, |
| | | item.button.name === 'Homing Complete' && item.button.value === 0, |
| | | fuwei: |
| | | item.button.name === 'Reset' && item.button.value === 1, |
| | | huiling: |
| | |
| | | item.button.name === 'Abort/ResumeTasks' && |
| | | item.button.value === 1, |
| | | yihuiling: |
| | | item.button.name === 'Zero' && item.button.value === 1, |
| | | item.button.name === 'Homing Complete' && item.button.value === 1, |
| | | }" |
| | | @click=" |
| | | updateButtonValue(dataGroup, itemIndex); |
| | |
| | | }, |
| | | |
| | | activated() { |
| | | document.body.style.zoom = "90%"; |
| | | this.initWebSocket(); |
| | | const language = this.$i18n.locale; |
| | | // console.log(language); |
| | |
| | | // console.log(jsonData2[5][4].button.value) |
| | | if ( |
| | | jsonData2[2][3].button.value === 0 && |
| | | (jsonData2[2][3].button.name === "NotZero" || |
| | | (jsonData2[2][3].button.name === "Homing Failure" || |
| | | jsonData2[2][3].button.name === "未回零") |
| | | ) { |
| | | jsonData2[2][3].button.name = jsonData2[2][3].button.name.replace( |
| | |
| | | "已回零" |
| | | ); |
| | | jsonData2[2][3].button.name = jsonData2[2][3].button.name.replace( |
| | | "NotZero", |
| | | "Zero" |
| | | "Homing Failure", |
| | | "Homing Complete" |
| | | ); |
| | | } |
| | | if ( |
| | | jsonData2[3][3].button.value === 0 && |
| | | (jsonData2[3][3].button.name === "NotZero" || |
| | | (jsonData2[3][3].button.name === "Homing Failure" || |
| | | jsonData2[3][3].button.name === "未回零") |
| | | ) { |
| | | jsonData2[3][3].button.name = jsonData2[3][3].button.name.replace( |
| | |
| | | "已回零" |
| | | ); |
| | | jsonData2[3][3].button.name = jsonData2[3][3].button.name.replace( |
| | | "NotZero", |
| | | "Zero" |
| | | "Homing Failure", |
| | | "Homing Complete" |
| | | ); |
| | | } |
| | | if ( |
| | | jsonData2[4][4].button.value === 0 && |
| | | (jsonData2[4][4].button.name === "NotZero" || |
| | | (jsonData2[4][4].button.name === "Homing Failure" || |
| | | jsonData2[4][4].button.name === "未回零") |
| | | ) { |
| | | jsonData2[4][4].button.name = jsonData2[4][4].button.name.replace( |
| | |
| | | "已回零" |
| | | ); |
| | | jsonData2[4][4].button.name = jsonData2[4][4].button.name.replace( |
| | | "NotZero", |
| | | "Zero" |
| | | "Homing Failure", |
| | | "Homing Complete" |
| | | ); |
| | | } |
| | | if ( |
| | | jsonData2[5][4].button.value === 0 && |
| | | (jsonData2[5][4].button.name === "NotZero" || |
| | | (jsonData2[5][4].button.name === "Homing Failure" || |
| | | jsonData2[5][4].button.name === "未回零") |
| | | ) { |
| | | jsonData2[5][4].button.name = jsonData2[5][4].button.name.replace( |
| | |
| | | "已回零" |
| | | ); |
| | | jsonData2[5][4].button.name = jsonData2[5][4].button.name.replace( |
| | | "NotZero", |
| | | "Zero" |
| | | "Homing Failure", |
| | | "Homing Complete" |
| | | ); |
| | | } |
| | | |
| | | if ( |
| | | jsonData2[2][3].button.value === 1 && |
| | | (jsonData2[2][3].button.name === "Zero" || |
| | | (jsonData2[2][3].button.name === "Homing Complete" || |
| | | jsonData2[2][3].button.name === "已回零") |
| | | ) { |
| | | jsonData2[2][3].button.name = jsonData2[2][3].button.name.replace( |
| | |
| | | "未回零" |
| | | ); |
| | | jsonData2[2][3].button.name = jsonData2[2][3].button.name.replace( |
| | | "Zero", |
| | | "NotZero" |
| | | "Homing Complete", |
| | | "Homing Failure" |
| | | ); |
| | | } |
| | | if ( |
| | | jsonData2[3][3].button.value === 1 && |
| | | (jsonData2[3][3].button.name === "Zero" || |
| | | (jsonData2[3][3].button.name === "Homing Complete" || |
| | | jsonData2[3][3].button.name === "已回零") |
| | | ) { |
| | | jsonData2[3][3].button.name = jsonData2[3][3].button.name.replace( |
| | |
| | | "未回零" |
| | | ); |
| | | jsonData2[3][3].button.name = jsonData2[3][3].button.name.replace( |
| | | "Zero", |
| | | "NotZero" |
| | | "Homing Complete", |
| | | "Homing Failure" |
| | | ); |
| | | } |
| | | if ( |
| | | jsonData2[4][4].button.value === 1 && |
| | | (jsonData2[4][4].button.name === "Zero" || |
| | | (jsonData2[4][4].button.name === "Homing Complete" || |
| | | jsonData2[4][4].button.name === "已回零") |
| | | ) { |
| | | jsonData2[4][4].button.name = jsonData2[4][4].button.name.replace( |
| | |
| | | "未回零" |
| | | ); |
| | | jsonData2[4][4].button.name = jsonData2[4][4].button.name.replace( |
| | | "Zero", |
| | | "NotZero" |
| | | "Homing Complete", |
| | | "Homing Failure" |
| | | ); |
| | | } |
| | | if ( |
| | | jsonData2[5][4].button.value === 1 && |
| | | (jsonData2[5][4].button.name === "Zero" || |
| | | (jsonData2[5][4].button.name === "Homing Complete" || |
| | | jsonData2[5][4].button.name === "已回零") |
| | | ) { |
| | | jsonData2[5][4].button.name = jsonData2[5][4].button.name.replace( |
| | |
| | | "未回零" |
| | | ); |
| | | jsonData2[5][4].button.name = jsonData2[5][4].button.name.replace( |
| | | "Zero", |
| | | "NotZero" |
| | | "Homing Complete", |
| | | "Homing Failure" |
| | | ); |
| | | } |
| | | } |
| | |
| | | <template> |
| | | <div class="app"> |
| | | <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb"> |
| | | <router-link to="/Electrical/alarm" tag="el-button" type="text" active-class="blue-button">{{ $t('Alarm') |
| | | }}</router-link> |
| | | <!-- <router-link to="/Electrical/State" tag="el-button" type="text" active-class="blue-button">{{ $t('State') |
| | | }}</router-link> --> |
| | | <!-- <router-link to="/Electrical/Action" tag="el-button" type="text" active-class="blue-button">{{ $t('Action') |
| | | }}</router-link> --> |
| | | <!-- <router-link to="/Electrical/Parameter" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter') |
| | | }}</router-link> --> |
| | | <router-link to="/Electrical/Sign" tag="el-button" type="text" active-class="blue-button">{{ $t('Sign') |
| | | }}</router-link> |
| | | <router-link to="/Electrical/Servomanual" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Parameter') |
| | | }}</router-link> |
| | | |
| | | <router-link |
| | | to="/Electrical/alarm" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Alarm") }}</router-link |
| | | > |
| | | |
| | | <router-link |
| | | to="/Electrical/Sign" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("I/O") }}</router-link |
| | | > |
| | | <router-link |
| | | to="/Electrical/Servomanual" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Parameter") }}</router-link |
| | | > |
| | | </el-breadcrumb> |
| | | |
| | | <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb"> |
| | | <router-link to="/Electrical/Parameter2" tag="el-button" type="text" active-class="blue-button">{{ $t('Automatic State') |
| | | }}</router-link> |
| | | <!-- <router-link to="/Electrical/ManualJog" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('ManualJog') |
| | | }}</router-link> --> |
| | | |
| | | <router-link to="/Electrical/ManualonePosition" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('ManualonePosition') |
| | | }}</router-link> |
| | | <router-link |
| | | to="/Electrical/Parameter2" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Glass Data") }}</router-link |
| | | > |
| | | |
| | | <router-link v-if="hasPermission" to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button"> |
| | | |
| | | <router-link |
| | | to="/Electrical/ManualonePosition" |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("Manual Control") }}</router-link |
| | | > |
| | | |
| | | <router-link v-show="false" v-if="hasPermission" to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button"> |
| | | {{ $t('Servomanualone') }} |
| | | </router-link> |
| | | |
| | | |
| | | <router-link v-if="hasPermission" to="/Electrical/Positioning1" tag="el-button" type="text" active-class="blue-button">{{ |
| | | $t('Address parameter settings') |
| | | $t('Cage Positions') |
| | | }}</router-link> |
| | | |
| | | <router-link v-if="hasPermission" to="/Electrical/AutomaticParameterSetting" tag="el-button" type="text" active-class="blue-button">{{ |
| | |
| | | tag="el-button" |
| | | type="text" |
| | | active-class="blue-button" |
| | | >{{ $t("InteractionState") }}</router-link |
| | | >{{ $t("PLC-MES Info") }}</router-link |
| | | > |
| | | |
| | | </el-breadcrumb> |
| | | |
| | | |
| | |
| | | }}</router-link> -->
|
| | | <!-- <router-link to="/Electrical/Parameter" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter')
|
| | | }}</router-link> -->
|
| | | <router-link to="/Electrical/Sign" tag="el-button" type="text" active-class="blue-button">{{ $t('Sign')
|
| | | <router-link to="/Electrical/Sign" tag="el-button" type="text" active-class="blue-button">{{ $t('I/O')
|
| | | }}</router-link>
|
| | | <router-link to="/Electrical/Servomanual" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter')
|
| | | }}</router-link>
|
| | |
| | | <!-- <router-link to="/Electrical/State" tag="el-button" type="text" active-class="blue-button">{{ $t('State') }}</router-link> --> |
| | | <!-- <router-link to="/Electrical/Action" tag="el-button" type="text" active-class="blue-button">{{ $t('Action') }}</router-link> --> |
| | | <!-- <router-link to="/Electrical/Parameter" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter') }}</router-link> --> |
| | | <router-link to="/Electrical/Sign" tag="el-button" type="text" active-class="blue-button">{{ $t('Sign') }}</router-link> |
| | | <router-link to="/Electrical/Sign" tag="el-button" type="text" active-class="blue-button">{{ $t('I/O') }}</router-link> |
| | | <router-link to="/Electrical/Servomanual" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter') |
| | | }}</router-link> |
| | | </el-breadcrumb> |
| | |
| | | List<Short> fanzhuan2 = S7control.getinstance().ReadWord("DB100.8", 1); |
| | | List<Short> xiaoche2 = S7control.getinstance().ReadWord("DB100.12", 1); |
| | | |
| | | // System.out.println("messageValue:"+ arraylist ); |
| | | |
| | | // Short[] values1 = { 1, 2, 3, 4, 5, 6, 7, 8 }; |
| | | // List<Short> arraylist = new ArrayList<>(Arrays.asList(values1)); |
| | | // Short[] fanzhuan = { 4 }; |
| | |
| | | S7control.getinstance().WriteWord(waddresses1, mergedList2); |
| | | System.out.println("messageValue:" + mergedList2 + " written to PLC at address " + waddresses1); |
| | | } |
| | | //原点记忆 |
| | | |
| | | |
| | | // 清空消息列表 |
| | | webserver.clearMessages(); |
| | | } |
| | |
| | | import cn.hutool.json.JSONObject;
|
| | |
|
| | | import java.util.ArrayList;
|
| | | import java.util.List;
|
| | | import java.util.Arrays;
|
| | | import java.util.List;
|
| | | import java.io.BufferedReader;
|
| | | import java.io.File;
|
| | | import java.io.FileInputStream;
|
| | |
| | | config = new Configuration("config.properties");
|
| | | }
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | | @Override
|
| | | public void run() {
|
| | | while (this != null) {
|
| | |
| | | Thread.sleep(1000);
|
| | | // System.out.println(stt);
|
| | | // 存片格 出片格读取
|
| | | List<String> PLCOriginmarking = Arrays.asList(config.getProperty("PLCOriginmarking").split(","));
|
| | |
|
| | |
|
| | | List<Boolean> PLCOriginmarkingarraylist = S7control.getinstance().readBits(PLCOriginmarking);
|
| | |
|
| | | short[] params = new short[PLCOriginmarkingarraylist.size()];
|
| | | for (int i = 0; i < PLCOriginmarkingarraylist.size(); i++) {
|
| | | boolean value = PLCOriginmarkingarraylist.get(i);
|
| | | params[i] = value ? (short) 1 : (short) 0;
|
| | | }
|
| | |
|
| | | String address = config.getProperty("PlcPositioning1.address");
|
| | | List<Short> arraylist = S7control.getinstance().ReadWord(address, 33);
|
| | |
| | |
|
| | | jsonObject.append("params", arraylist);
|
| | | jsonObject.append("shishi1", arraylist5);
|
| | |
|
| | | jsonObject.append("PLCOriginmarkingarraylist", params);
|
| | | // WebSocketServer sendwServer = WebSocketServer.sessionMap.get("Positioning1");
|
| | | // if (sendwServer != null) {
|
| | | // sendwServer.sendMessage(jsonObject.toString());
|
| | |
| | | "messageValue:" + mergedList + " written to PLC at address " + address);
|
| | | }
|
| | |
|
| | | customS7Control.writeBitToPLC(messageArray, PLCOriginmarking, 7);
|
| | |
|
| | | // 清空消息列表
|
| | | webserver.clearMessages();
|
| | | }
|
| | |
| | |
|
| | | // System.out.println(stt);
|
| | | //B01格位置 地址读取
|
| | |
|
| | | List<Short> arraylist = S7control.getinstance().ReadWord("DB100.88", 10);
|
| | |
|
| | | // Short[] values1 = { 1,2, 3, 4, 5 , 11, 12,13,14,15};
|
| | |
| | | // |
| | | System.out.println("启动完成"); |
| | | |
| | | new PlcHold().start(); |
| | | new Plchome().start(); |
| | | new PlcLayout().start(); |
| | | //new PlcHold().start(); |
| | | // new Plchome().start(); |
| | | //new PlcLayout().start(); |
| | | new Plcalarm().start(); |
| | | new Plcsign().start(); |
| | | new Plcstate().start(); |
| | |
| | | {
|
| | | "plcAddressBegin": "DB104.0.0",
|
| | | "plcAddressLenght": "91",
|
| | | "dataType": "bit",
|
| | | "parameteInfor": [
|
| | | {
|
| | | "codeId": "D01VFDerror",
|
| | | "addressIndex": 0
|
| | | },
|
| | | {
|
| | | "codeId": "D02VFDerror",
|
| | | "addressIndex": 1
|
| | | },
|
| | | {
|
| | | "codeId": "D03VFDerror",
|
| | | "addressIndex": 2
|
| | | },
|
| | | {
|
| | | "codeId": "D04VFDerror",
|
| | | "addressIndex": 3
|
| | | },
|
| | | {
|
| | | "codeId": "D05VFDerror",
|
| | | "addressIndex": 4
|
| | | },
|
| | | {
|
| | | "codeId": "D06VFDerror",
|
| | | "addressIndex": 5
|
| | | },
|
| | | {
|
| | | "codeId": "B01VFDerror",
|
| | | "addressIndex": 6
|
| | | },
|
| | | {
|
| | | "codeId": "B02VFDerror",
|
| | | "addressIndex": 7
|
| | | },
|
| | | {
|
| | | "codeId": "A01VFDerror",
|
| | | "addressIndex": 8
|
| | | },
|
| | | {
|
| | | "codeId": "A02VFDerror",
|
| | | "addressIndex": 9
|
| | | },
|
| | | {
|
| | | "codeId": "A01servoturnerror",
|
| | | "addressIndex": 10
|
| | | },
|
| | | {
|
| | | "codeId": "A02servoturnerror",
|
| | | "addressIndex": 11
|
| | | },
|
| | | {
|
| | | "codeId": "A01servotravelerror",
|
| | | "addressIndex": 12
|
| | | },
|
| | | {
|
| | | "codeId": "A02servotravelerror",
|
| | | "addressIndex": 13
|
| | | },
|
| | | {
|
| | | "codeId": "B01servotravelerror",
|
| | | "addressIndex": 14
|
| | | },
|
| | | {
|
| | | "codeId": "B02servotravelerror",
|
| | | "addressIndex": 15
|
| | | },
|
| | | {
|
| | | "codeId": "D01DECerror",
|
| | | "addressIndex": 16
|
| | | },
|
| | | {
|
| | | "codeId": "D01poserror",
|
| | | "addressIndex": 17
|
| | | },
|
| | | {
|
| | | "codeId": "D02DECerror",
|
| | | "addressIndex": 18
|
| | | },
|
| | | {
|
| | | "codeId": "D02poserror",
|
| | | "addressIndex": 19
|
| | | },
|
| | | {
|
| | | "codeId": "D03DECerror",
|
| | | "addressIndex": 20
|
| | | },
|
| | | {
|
| | | "codeId": "D03poserror",
|
| | | "addressIndex": 21
|
| | | },
|
| | | {
|
| | | "codeId": "D04DECerror",
|
| | | "addressIndex": 22
|
| | | },
|
| | | {
|
| | | "codeId": "D04poserror",
|
| | | "addressIndex": 23
|
| | | },
|
| | | {
|
| | | "codeId": "D05DECerror",
|
| | | "addressIndex": 24
|
| | | },
|
| | | {
|
| | | "codeId": "D05poserror",
|
| | | "addressIndex": 25
|
| | | },
|
| | | {
|
| | | "codeId": "D06DECerror",
|
| | | "addressIndex": 26
|
| | | },
|
| | | {
|
| | | "codeId": "D06poserror",
|
| | | "addressIndex": 27
|
| | | },
|
| | | {
|
| | | "codeId": "A01DECerror",
|
| | | "addressIndex": 28
|
| | | },
|
| | | {
|
| | | "codeId": "A01poserror",
|
| | | "addressIndex": 29
|
| | | },
|
| | | {
|
| | | "codeId": "A02DECerror",
|
| | | "addressIndex": 30
|
| | | },
|
| | | {
|
| | | "codeId": "A02poserror",
|
| | | "addressIndex": 31
|
| | | },
|
| | | {
|
| | | "codeId": "B01INDECerror",
|
| | | "addressIndex": 32
|
| | | },
|
| | | {
|
| | | "codeId": "B01INposerror",
|
| | | "addressIndex": 33
|
| | | },
|
| | | {
|
| | | "codeId": "B01OUTDECerror",
|
| | | "addressIndex": 34
|
| | | },
|
| | | {
|
| | | "codeId": "B01OUTposerror",
|
| | | "addressIndex": 35
|
| | | },
|
| | | {
|
| | | "codeId": "B02INDECerror",
|
| | | "addressIndex": 36
|
| | | },
|
| | | {
|
| | | "codeId": "B02INposerror",
|
| | | "addressIndex": 37
|
| | | },
|
| | | {
|
| | | "codeId": "B02OUTDECerror",
|
| | | "addressIndex": 38
|
| | | },
|
| | | {
|
| | | "codeId": "B02OUTposerror",
|
| | | "addressIndex": 39
|
| | | },
|
| | | {
|
| | | "codeId": "D01Scanglassexceedinglimit",
|
| | | "addressIndex": 40
|
| | | },
|
| | | {
|
| | | "codeId": "emergencystopalarm",
|
| | | "addressIndex": 41
|
| | | },
|
| | | {
|
| | | "codeId": "Moreglassthanknown",
|
| | | "addressIndex": 42
|
| | | },
|
| | | {
|
| | | "codeId": "lessglassthanknown",
|
| | | "addressIndex": 43
|
| | | },
|
| | | {
|
| | | "codeId": "D01conveyortimeoutalarm",
|
| | | "addressIndex": 44
|
| | | },
|
| | | {
|
| | | "codeId": "D02conveyortimeoutalarm",
|
| | | "addressIndex": 45
|
| | | },
|
| | | {
|
| | | "codeId": "D03conveyortimeoutalarm",
|
| | | "addressIndex": 46
|
| | | },
|
| | | {
|
| | | "codeId": "D04conveyortimeoutalarm",
|
| | | "addressIndex": 47
|
| | | },
|
| | | {
|
| | | "codeId": "D05conveyortimeoutalarm",
|
| | | "addressIndex": 48
|
| | | },
|
| | | {
|
| | | "codeId": "D06conveyortimeoutalarm",
|
| | | "addressIndex": 49
|
| | | },
|
| | | {
|
| | | "codeId": "A01conveyortimeoutalarm",
|
| | | "addressIndex": 50
|
| | | },
|
| | | {
|
| | | "codeId": "A02conveyortimeoutalarm",
|
| | | "addressIndex": 51
|
| | | },
|
| | | {
|
| | | "codeId": "B01conveyortimeoutalarm",
|
| | | "addressIndex": 52
|
| | | },
|
| | | {
|
| | | "codeId": "B02conveyortimeoutalarm",
|
| | | "addressIndex": 53
|
| | | },
|
| | | {
|
| | | "codeId": "A01conveyorLeftsafetyalarm",
|
| | | "addressIndex": 54
|
| | | },
|
| | | {
|
| | | "codeId": "A01conveyorrightsafetyalarm",
|
| | | "addressIndex": 55
|
| | | },
|
| | | {
|
| | | "codeId": "A02conveyorLeftsafetyalarm",
|
| | | "addressIndex": 56
|
| | | },
|
| | | {
|
| | | "codeId": "A02conveyorrightsafetyalarm",
|
| | | "addressIndex": 57
|
| | | },
|
| | | {
|
| | | "codeId": "1#buffersafetyalarm",
|
| | | "addressIndex": 58
|
| | | },
|
| | | {
|
| | | "codeId": "2#buffersafetyalarm",
|
| | | "addressIndex": 59
|
| | | },
|
| | | {
|
| | | "codeId": "3#buffersafetyalarm",
|
| | | "addressIndex": 60
|
| | | },
|
| | | {
|
| | | "codeId": "4#buffersafetyalarm",
|
| | | "addressIndex": 61
|
| | | },
|
| | | {
|
| | | "codeId": "A01.SRrightinposerror",
|
| | | "addressIndex": 62
|
| | | },
|
| | | {
|
| | | "codeId": "A02.SRleftinposerror",
|
| | | "addressIndex": 63
|
| | | },
|
| | | {
|
| | | "codeId": "B01.SRleftinposerror",
|
| | | "addressIndex": 64
|
| | | },
|
| | | {
|
| | | "codeId": "B01.SRleftdecerror",
|
| | | "addressIndex": 65
|
| | | },
|
| | | {
|
| | | "codeId": "B01.SRrightdecerror",
|
| | | "addressIndex": 66
|
| | | },
|
| | | {
|
| | | "codeId": "B01.SRrightinposerror",
|
| | | "addressIndex": 67
|
| | | },
|
| | | {
|
| | | "codeId": "B02.SRleftinposerror",
|
| | | "addressIndex": 68
|
| | | },
|
| | | {
|
| | | "codeId": "B02.SRleftdecerror",
|
| | | "addressIndex": 69
|
| | | },
|
| | | {
|
| | | "codeId": "B02.SRrightdecerror",
|
| | | "addressIndex": 70
|
| | | },
|
| | | {
|
| | | "codeId": "B02.SRrightinposerror",
|
| | | "addressIndex": 71
|
| | | },
|
| | | {
|
| | | "codeId": "A01servoturnhomed",
|
| | | "addressIndex": 72
|
| | | },
|
| | | {
|
| | | "codeId": "A02servoturnhomed",
|
| | | "addressIndex": 73
|
| | | },
|
| | | {
|
| | | "codeId": "A01servotravelhomed",
|
| | | "addressIndex": 74
|
| | | },
|
| | | {
|
| | | "codeId": "A02servotravelhomed",
|
| | | "addressIndex": 75
|
| | | },
|
| | | {
|
| | | "codeId": "B01servotravelhomed",
|
| | | "addressIndex": 76
|
| | | },
|
| | | {
|
| | | "codeId": "B02servotravelhomed",
|
| | | "addressIndex": 77
|
| | | },
|
| | | {
|
| | | "codeId": "resetDelay",
|
| | | "addressIndex": 78
|
| | | },
|
| | | {
|
| | | "codeId": "A01travelNegativelimit",
|
| | | "addressIndex": 79
|
| | | },
|
| | | {
|
| | | "codeId": "A01travelPositivelimit",
|
| | | "addressIndex": 80
|
| | | },
|
| | | {
|
| | | "codeId": "A01turnuplimit",
|
| | | "addressIndex": 81
|
| | | },
|
| | | {
|
| | | "codeId": "A01turndownlimit",
|
| | | "addressIndex": 82
|
| | | },
|
| | | {
|
| | | "codeId": "A02travelNegativelimit",
|
| | | "addressIndex": 83
|
| | | },
|
| | | {
|
| | | "codeId": "A02travelPositivelimit",
|
| | | "addressIndex": 84
|
| | | },
|
| | | {
|
| | | "codeId": "A02turnuplimit",
|
| | | "addressIndex": 85
|
| | | },
|
| | | {
|
| | | "codeId": "A02turndownlimit",
|
| | | "addressIndex": 86
|
| | | },
|
| | | {
|
| | | "codeId": "B01travelNegativelimit",
|
| | | "addressIndex": 87
|
| | | },
|
| | | {
|
| | | "codeId": "B01travelPositivelimit",
|
| | | "addressIndex": 88
|
| | | },
|
| | | {
|
| | | "codeId": "B02travelNegativelimit",
|
| | | "addressIndex": 89
|
| | | },
|
| | | {
|
| | | "codeId": "B02travelPositivelimit",
|
| | | "addressIndex": 90
|
| | | }
|
| | | ]
|
| | | } |
| | | {"plcAddressBegin":"DB100.0","plcAddressLenght":"182","dataType":"bit","parameteInfor":[{"codeId":"D01VFDerror","addressIndex":0},{"codeId":"D02VFDerror","addressIndex":1},{"codeId":"D03VFDerror","addressIndex":2},{"codeId":"D04VFDerror","addressIndex":3},{"codeId":"D05VFDerror","addressIndex":4},{"codeId":"D06VFDerror","addressIndex":5},{"codeId":"B01VFDerror","addressIndex":6},{"codeId":"B02VFDerror","addressIndex":7},{"codeId":"A01VFDerror","addressIndex":8},{"codeId":"A02VFDerror","addressIndex":9},{"codeId":"A01servoturnerror","addressIndex":10},{"codeId":"A02servoturnerror","addressIndex":11},{"codeId":"A01servotravelerror","addressIndex":12},{"codeId":"A02servotravelerror","addressIndex":13},{"codeId":"B01servotravelerror","addressIndex":14},{"codeId":"B02servotravelerror","addressIndex":15},{"codeId":"D01DECerror","addressIndex":16},{"codeId":"D01poserror","addressIndex":17},{"codeId":"D02DECerror","addressIndex":18},{"codeId":"D02poserror","addressIndex":19},{"codeId":"D03DECerror","addressIndex":20},{"codeId":"D03poserror","addressIndex":21},{"codeId":"D04DECerror","addressIndex":22},{"codeId":"D04poserror","addressIndex":23},{"codeId":"D05DECerror","addressIndex":24},{"codeId":"D05poserror","addressIndex":25},{"codeId":"D06DECerror","addressIndex":26},{"codeId":"D06poserror","addressIndex":27},{"codeId":"A01DECerror","addressIndex":28},{"codeId":"A01poserror","addressIndex":29},{"codeId":"A02DECerror","addressIndex":30},{"codeId":"A02poserror","addressIndex":31},{"codeId":"B01INDECerror","addressIndex":32},{"codeId":"B01INposerror","addressIndex":33},{"codeId":"B01OUTDECerror","addressIndex":34},{"codeId":"B01OUTposerror","addressIndex":35},{"codeId":"B02INDECerror","addressIndex":36},{"codeId":"B02INposerror","addressIndex":37},{"codeId":"B02OUTDECerror","addressIndex":38},{"codeId":"B02OUTposerror","addressIndex":39},{"codeId":"D01Scanglassexceedinglimit","addressIndex":40},{"codeId":"emergencystopalarm","addressIndex":41},{"codeId":"Moreglassthanknown","addressIndex":42},{"codeId":"lessglassthanknown","addressIndex":43},{"codeId":"D01conveyortimeoutalarm","addressIndex":44},{"codeId":"D02conveyortimeoutalarm","addressIndex":45},{"codeId":"D03conveyortimeoutalarm","addressIndex":46},{"codeId":"D04conveyortimeoutalarm","addressIndex":47},{"codeId":"D05conveyortimeoutalarm","addressIndex":48},{"codeId":"D06conveyortimeoutalarm","addressIndex":49},{"codeId":"A01conveyortimeoutalarm","addressIndex":50},{"codeId":"A02conveyortimeoutalarm","addressIndex":51},{"codeId":"B01conveyortimeoutalarm","addressIndex":52},{"codeId":"B02conveyortimeoutalarm","addressIndex":53},{"codeId":"A01conveyorLeftsafetyalarm","addressIndex":54},{"codeId":"A01conveyorrightsafetyalarm","addressIndex":55},{"codeId":"A02conveyorLeftsafetyalarm","addressIndex":56},{"codeId":"A02conveyorrightsafetyalarm","addressIndex":57},{"codeId":"1#buffersafetyalarm","addressIndex":58},{"codeId":"2#buffersafetyalarm","addressIndex":59},{"codeId":"3#buffersafetyalarm","addressIndex":60},{"codeId":"4#buffersafetyalarm","addressIndex":61},{"codeId":"A01.SRrightinposerror","addressIndex":62},{"codeId":"A02.SRleftinposerror","addressIndex":63},{"codeId":"B01.SRleftinposerror","addressIndex":64},{"codeId":"B01.SRleftdecerror","addressIndex":65},{"codeId":"B01.SRrightdecerror","addressIndex":66},{"codeId":"B01.SRrightinposerror","addressIndex":67},{"codeId":"B02.SRleftinposerror","addressIndex":68},{"codeId":"B02.SRleftdecerror","addressIndex":69},{"codeId":"B02.SRrightdecerror","addressIndex":70},{"codeId":"B02.SRrightinposerror","addressIndex":71},{"codeId":"A01servoturnhomed","addressIndex":72},{"codeId":"A02servoturnhomed","addressIndex":73},{"codeId":"A01servotravelhomed","addressIndex":74},{"codeId":"A02servotravelhomed","addressIndex":75},{"codeId":"B01servotravelhomed","addressIndex":76},{"codeId":"B02servotravelhomed","addressIndex":77},{"codeId":"resetDelay","addressIndex":78},{"codeId":"A01travelNegativelimit","addressIndex":79},{"codeId":"A01travelPositivelimit","addressIndex":80},{"codeId":"A01turnuplimit","addressIndex":81},{"codeId":"A01turndownlimit","addressIndex":82},{"codeId":"A02travelNegativelimit","addressIndex":83},{"codeId":"A02travelPositivelimit","addressIndex":84},{"codeId":"A02turnuplimit","addressIndex":85},{"codeId":"A02turndownlimit","addressIndex":86},{"codeId":"B01travelNegativelimit","addressIndex":87},{"codeId":"B01travelPositivelimit","addressIndex":88},{"codeId":"B02travelNegativelimit","addressIndex":89},{"codeId":"B02travelPositivelimit","addressIndex":90}]} |
| | |
| | | #addressList21.add("DB101.3.1");
|
| | | #addressList21.add("DB101.3.3");
|
| | | #按钮
|
| | | PLCManualJog.button=DB101.0.0,DB101.0.1,DB101.0.2,DB101.0.3,DB101.0.4,DB101.0.5,DB101.0.6,DB101.3.4,DB101.1.4,DB101.1.2,DB101.5.2,DB101.0.7,DB101.3.5,DB101.1.5,DB101.1.3,DB101.5.3,DB101.1.0,DB101.1.6,DB101.2.6,DB101.2.7,DB101.3.2,DB101.1.1,DB101.1.7,DB101.3.0,DB101.3.1,DB101.3.3,DB101.10.5,DB101.10.6
|
| | | PLCManualJog.button=DB101.0.0,DB101.0.1,DB101.0.2,DB101.0.3,DB101.0.4,DB101.0.5,DB101.1.4,DB101.1.2,DB101.5.2,DB101.0.6,DB101.1.5,DB101.1.3,DB101.5.3,DB101.0.7,DB101.1.6,DB101.2.6,DB101.2.7,DB101.1.0,DB101.3.2,DB101.1.7,DB101.3.0,DB101.3.1,DB101.1.1,DB101.3.3
|
| | |
|
| | |
|
| | |
|
| | | PLCOriginmarking=DB101.10.5,DB101.10.6
|
| | | #AUto----------------------------------------------------------------
|
| | | #List<String> addresses = new ArrayList<>();
|
| | | #addresses.add("DB100.0");
|