2022-04-08
## 1.IO输出读寄存器M128+IO数读不出来待测主机的IO输出。更换采用读R192,193寄存器。
再测试发现辅助测试主机可用读M寄存器方法,而测试主机不能使用。应该和主机程序有关。
原
```python
# 读测试机io当前输出,填写io对应数字,从0开始,到31
def read_test_io_one(io):
if (io >= 0) and (io <= 31):
io = 'M' + str(128 + io)
return udpServer.read(TEST_IP, io)
else:
raise Exception('读IO失败,输入值有误!')
```
修改后
```python
# 读io当前输出,填写io对应数字,从0开始,到31
def read_io_one(device_ip, io):
value = read_io_all(device_ip)
return (1 << io) & value >= 1
```
测试
```python
log.info(bin(read_io_all('192.168.11.10')))
log.info(bin(read_io_all('192.168.11.11')))
log.info(str(read_io_one(e, 1)))
log.info(str(read_io_one(e1, 1)))
for i in range(32):
log.info(str(str(i)+str(read_io_one(e, i))))
```
## 2.复位按键M100没有用。屏幕上可以复位,命令不能复位
1.重复开关复位无效
2.重启后等待5秒,延时复位无效。
代码写错了,都说是M100,写成M110,偶尔需要按两次所以有时候一次消除不了。
```python
log.info(str('告警栏:' + str(data['192.168.11.10'][get_reg_address('R2200')])))
w_one('192.168.11.10','M110',1)
delay(5)
w_one('192.168.11.10','M110',0)
delay(5)
w_one('192.168.11.10','M110',1)
delay(1)
w_one('192.168.11.10','M110',0)
delay(1)
log.info(str('告警栏:' + str(data['192.168.11.10'][get_reg_address('R2200')])))
log.info(r_one('192.168.11.10','M0120'))
```
## 3.测试调模差动,手动模式下,调模一段,有反应。
```python
from 测试用例1 import *
e1 = '192.168.11.11'
e = '192.168.11.10'
data = udpServer.data
# 初始化设置,取消告警,开启电热,马达
初始化()
# 关后安全门()
# AI校准,设置电压和位置,固定一二段
AI校准()
# 设置条件 关模差动 [不用、一段开,二段开]
value = [1, 2]
value1 = rt.手动
value2 = rb.关模差动使能
value4 = [0, 1, 2]
value3 = [10, 7, 4,2,0]
# 手动下
dic = {rb.关模差动使能: 1, rt.手动: 1}
# 关模,段数
ws(e, dic)
# 启动
w_one(e, rt.关模, 2)
for i in value3:
write_ao_one(0, i)
# 启动
w_one(e, 'M0120', 1)
log.info(str('告警栏:' + str(data['192.168.11.10'][get_reg_address('R2200')])))
io27 = '\t电压' + str(i) + '\t当前IO27:' + str(read_io_one(e, 27))
# 松开关模
w_one(e, 'M0120', 0)
log.info(io27)
delay(0.5)
```
## 4.一段半自动模式出现问题。前安全门未关。
## 5.手动模式测试通过
