v0.1.9.0(2024/07/10)
1. 完成了制动性能的自动化采集 2. 完善了modbus浮点数读写相关的功能 3. 修改了target.zip工程,该工程目前适配电机电流和制动性能
This commit is contained in:
parent
fa5a9f0f89
commit
40ddef1c39
@ -130,6 +130,15 @@ pyinstaller --noconfirm --onedir --windowed --add-data "C:/Users/Administrator/A
|
||||
2. excel 制动结果处理文件
|
||||
3. excel configs.xlsx 配置文件
|
||||
|
||||
> **需要注意的点**
|
||||
|
||||
1. 使用之前需要手动修改点位信息,确保所有点位不会发生撞击之后,再进行自动化测试
|
||||
2. 工程文件不能手动重命名,需要重命名存档,可以导入HMI,然后另存为
|
||||
3. 务必正确填写configs.xlsx中的Target页面,A1单元格可以选择正负方向急停,但不完全保证100%,大概有95%左右的准确度
|
||||
4. 由于xCore系统问题,运行过程中可能会出现机器人宕机问题,如果遇到,可以手动重启控制柜,重新运行
|
||||
5. 运行过程中,如果是因为机器问题无法达到额定百分比速度,会在日志输出框提示,注意观察
|
||||
6. 运行自动化程序之前,确保机器处于正常状态,无故障,未触发急停
|
||||
|
||||
#### 6) 电机电流自动化测试
|
||||
|
||||
只需要提前将如下文件放在指定路径下即可:
|
||||
@ -137,6 +146,9 @@ pyinstaller --noconfirm --onedir --windowed --add-data "C:/Users/Administrator/A
|
||||
2. excel 电机电流结果处理文件,一份模板即可
|
||||
3. excel configs.xlsx 配置文件
|
||||
|
||||
> **需要注意的点**
|
||||
|
||||
基本同第五点
|
||||
|
||||
#### 其他
|
||||
customtkinter的tabview组件不支持修改字体大小,可以参考 [Changing Font of a Tabview](https://github.com/TomSchimansky/CustomTkinter/issues/2296) 进行手动修改源码实现:
|
||||
@ -432,4 +444,9 @@ v0.1.8.1(2024/07/05)
|
||||
v0.1.8.2(2024/07/08)
|
||||
1. [APIs: do_brake.py]: 完成了制动性能测试逻辑,只不过制动信号传递生效延迟不可控,暂时pending
|
||||
2. [APIs: do_current.py]: 修改曲线数据时序,主要是value data取反即可,解决了波形锯齿明细的问题
|
||||
3. [APIs: openapi.py]: modbus新增了触发急停信号的寄存器 stop0_signal,并重写了解除急停,socket新增了register.set_value协议
|
||||
3. [APIs: openapi.py]: modbus新增了触发急停信号的寄存器 stop0_signal,并重写了解除急停,socket新增了register.set_value协议
|
||||
|
||||
v0.1.9.0(2024/07/10)
|
||||
1. 完成了制动性能的自动化采集
|
||||
2. 完善了modbus浮点数读写相关的功能
|
||||
3. 修改了target.zip工程,该工程目前适配电机电流和制动性能
|
Binary file not shown.
@ -6,8 +6,8 @@ VSVersionInfo(
|
||||
ffi=FixedFileInfo(
|
||||
# filevers and prodvers should be always a tuple with four items: (1, 2, 3, 4)
|
||||
# Set not needed items to zero 0.
|
||||
filevers=(0, 1, 8, 0),
|
||||
prodvers=(0, 1, 8, 0),
|
||||
filevers=(0, 1, 9, 0),
|
||||
prodvers=(0, 1, 9, 0),
|
||||
# Contains a bitmask that specifies the valid bits 'flags'r
|
||||
mask=0x3f,
|
||||
# Contains a bitmask that specifies the Boolean attributes of the file.
|
||||
@ -31,12 +31,12 @@ VSVersionInfo(
|
||||
'040904b0',
|
||||
[StringStruct('CompanyName', 'Rokae - https://www.rokae.com/'),
|
||||
StringStruct('FileDescription', 'All in one automatic toolbox'),
|
||||
StringStruct('FileVersion', '0.1.8.0 (2024-07-04)'),
|
||||
StringStruct('FileVersion', '0.1.9.0 (2024-07-10)'),
|
||||
StringStruct('InternalName', 'AIO.exe'),
|
||||
StringStruct('LegalCopyright', '© 2024-2024 Manford Fan'),
|
||||
StringStruct('OriginalFilename', 'AIO.exe'),
|
||||
StringStruct('ProductName', 'AIO'),
|
||||
StringStruct('ProductVersion', '0.1.8.0 (2024-07-04)')])
|
||||
StringStruct('ProductVersion', '0.1.9.0 (2024-07-10)')])
|
||||
]),
|
||||
VarFileInfo([VarStruct('Translation', [1033, 1200])])
|
||||
]
|
||||
|
Binary file not shown.
@ -1 +1 @@
|
||||
0.1.8.0 @ 07/04/2024
|
||||
0.1.9.0 @ 07/10/2024
|
@ -166,6 +166,8 @@ def run_rl(path, loadsel, hr, md, config_file, prj_file, result_dirs, w2t):
|
||||
{"name": "device_servo_trq_feedback", "channel": 5},
|
||||
{"name": "device_safety_estop", "channel": 0},
|
||||
]
|
||||
wb = load_workbook(config_file, read_only=True)
|
||||
ws = wb['Target']
|
||||
for condition in result_dirs:
|
||||
_reach = condition.split('_')[0].removeprefix('reach')
|
||||
_load = condition.split('_')[1].removeprefix('load')
|
||||
@ -193,7 +195,12 @@ def run_rl(path, loadsel, hr, md, config_file, prj_file, result_dirs, w2t):
|
||||
ssh = SSHClient()
|
||||
ssh.set_missing_host_key_policy(AutoAddPolicy())
|
||||
ssh.connect('192.168.0.160', 22, username='luoshi', password='luoshi2019')
|
||||
_rl_cmd = f"brake_E(j{axis}_{_reach}_p, j{axis}_{_reach}_n, p_speed, p_tool)"
|
||||
if ws.cell(row=1, column=1).value == 'positive':
|
||||
_rl_cmd = f"brake_E(j{axis}_{_reach}_n, j{axis}_{_reach}_p, p_speed, p_tool)"
|
||||
elif ws.cell(row=1, column=1).value == 'negative':
|
||||
_rl_cmd = f"brake_E(j{axis}_{_reach}_p, j{axis}_{_reach}_n, p_speed, p_tool)"
|
||||
else:
|
||||
w2t("configs.xlsx中Target页面A1单元格填写不正确,检查后重新运行...", 0, 111, 'red', 'Automatic Test')
|
||||
_rl_speed = f"VelSet {_speed}"
|
||||
cmd = 'cd /home/luoshi/bin/controller/; '
|
||||
cmd += 'sudo sed -i "/brake_E/d" projects/target/_build/brake/main.mod; '
|
||||
@ -238,8 +245,6 @@ def run_rl(path, loadsel, hr, md, config_file, prj_file, result_dirs, w2t):
|
||||
if item.get('channel', None) == axis-1 and item.get('name', None) == 'hw_joint_vel_feedback':
|
||||
_ = abs(RADIAN*sum(item['value'])/len(item['value']))
|
||||
speed_max = max(_, speed_max)
|
||||
wb = load_workbook(config_file, read_only=True)
|
||||
ws = wb['Target']
|
||||
speed_target = float(ws.cell(row=3, column=axis+1).value) * float(_speed) / 100
|
||||
if speed_max < speed_target*0.95 or speed_max > speed_target*1.05:
|
||||
w2t(f"Axis: {axis}-{count} | Speed: {speed_max} | Shouldbe: {speed_target}", 0, 0, 'indigo', 'Automatic Test')
|
||||
|
Reference in New Issue
Block a user