modbus_test/prepare.py

32 lines
882 B
Python

import glob
all_files = glob.glob("data/*.NC")
file = all_files[0]
def get_value(c, s):
[x] = [item.replace(s, '') for item in c if item.startswith(s)] or [0]
return float(x)
with open(file, 'r') as fp:
lines = fp.readlines()
# print(lines)
prev_x = None
prev_y = None
prev_z = None
result = []
step = None
for l in lines[20:120]:
data = l.strip().split(' ')
prep = {}
for item in data:
prep[item[:1]] = item[1:]
if 'G' in prep and prep['G'] == '01':
step = prep['G']
if step == '01':
if 'C' in prep:
prep['U'] = prep.pop('C')
result.append([f"{p}{prep[p]}" for p in prep if p in ['X', 'Y', 'Z', 'U', 'V', 'W']])
with open(f"{file}.result", 'w') as fp:
fp.write('\n'.join(' '.join(str(i) for i in x) for x in result))