This commit is contained in:
unknown 2024-09-17 14:19:51 +03:00
parent d9d13224e8
commit 0abafb4ed0
3 changed files with 109 additions and 133 deletions

View File

@ -12,10 +12,10 @@ s.connect((host, port))
# print(s) # print(s)
def send_data(data): def send_data(data):
response = None response = None
if data["reqType"] != 'AddRCC': # if data["reqType"] != 'AddRCC':
s.send(str.encode(json.dumps(data))) s.send(str.encode(json.dumps(data)))
response_data = s.recv(1024) response_data = s.recv(1024)
response = json.loads(response_data) response = json.loads(response_data)
if data["reqType"] == 'query': if data["reqType"] == 'query':
# pprint({"request":data["queryAddr"], "response":response["queryData"]}) # pprint({"request":data["queryAddr"], "response":response["queryData"]})
@ -50,21 +50,21 @@ print('world', world_coord)
print('remote command count', send_data(make_query_data(['RemoteCmdLen']))) print('remote command count', send_data(make_query_data(['RemoteCmdLen'])))
def make_world_step(type, p): def make_world_step(type, p):
speed= 10.0 speed= 80.0
smooth= 9 smooth= 9
step = { step = {
"oneshot": "1", "oneshot": "0",
"delay":"0.0", "delay":"0.0",
"speed":str(speed),"smooth":str(smooth), "speed":str(speed),"smooth":str(smooth),
"coord":"0","tool":"1", "coord":"0","tool":"1",
"ckStatus":"0xFF", "ckStatus":"0x3F",
} }
if type == 'line': if type == 'line':
m0,m1,m2,m3,m4,m5=p m0,m1,m2,m3,m4,m5=p
step.update({ step.update({
"action": "10", "action": "10",
"m0": x + m0, "m1": y + m1, "m2": z + m2, "m0": round(x + m0,3), "m1": round(y + m1,3), "m2": round(z + m2,3),
"m3": u + m3, "m4": v + m4, "m5": w + m5, "m3": round(u + m3,3), "m4": round(v + m4,3), "m5": round(w + m5,3),
"m6": 0, "m7": 0, "m6": 0, "m7": 0,
}) })
elif type == 'curve': elif type == 'curve':
@ -82,30 +82,6 @@ def make_world_step(type, p):
for s in step: for s in step:
step[s] = str(step[s]) step[s] = str(step[s])
return step return step
k = 4
# data = [
# ('line',(10*k, 10*k, 0,
# 0, 0, 0)),
# ('line',(0, 20*k, 0,
# 0, 0, 0)),
# ('line',(-10*k, 10*k, 0,
# 0, 0, 0)),
# ('line',(0, 0, 0,
# 0, 0, 0)),
# ('line',(0, 0, 0,
# 0, -10, 0)),
# ('curve',(0, -10*k, 0,
# -10, 0, 0,
# -20*k, -10*k, 0,
# 0, -10, 0)),
# ('line',(-20*k, -10*k, 0,
# 0, 0, 0)),
# ('curve',(0, -20*k, 0,
# 0, 0, 0,
# 0, -10*k, 0,
# 0, 0, 0)),
# ]
result = [] result = []
with open('data/half-sphere.nc.result', 'r') as fp: with open('data/half-sphere.nc.result', 'r') as fp:
for line in fp: for line in fp:
@ -114,7 +90,7 @@ with open('data/half-sphere.nc.result', 'r') as fp:
for item in data: for item in data:
prep[item[:1]] = float(item[1:]) prep[item[:1]] = float(item[1:])
result.append( result.append(
( make_world_step(
'line', 'line',
( (
prep.get('X', 0), prep.get('Y', 0), prep.get('Z', 0), prep.get('X', 0), prep.get('Y', 0), prep.get('Z', 0),
@ -123,23 +99,23 @@ with open('data/half-sphere.nc.result', 'r') as fp:
) )
) )
# Изменили глобальную скорость на 11% # Изменили глобальную скорость на 11%
send_data(make_command_data(['modifyGSPD', str(20 * 10)])) send_data(make_command_data(['modifyGSPD', str(50 * 10)]))
# Поставили Y026 в TRUE # Поставили Y026 в TRUE
# send_data(make_addrcc_data([ # send_data(make_addrcc_data([
# {"oneshot":"0", "action":"200","type":"0","io_status":"0", "point":"15"}, # {"oneshot":"0", "action":"200","type":"0","io_status":"0", "point":"15"},
# {"oneshot":"0", "action":"200","type":"0","io_status":"0", "point":"15", "delay":"1"}, # {"oneshot":"0", "action":"200","type":"0","io_status":"0", "point":"15", "delay":"1"},
# ])) # ]))
send_data(make_addrcc_data( send_data(make_addrcc_data([
[ {"oneshot":"0", "action":"200","type":"0","io_status":"1", "point":"14"},
# {"oneshot":"0", "action":"200","type":"0","io_status":"1", "point":"14"},
# {"oneshot":"0", "action":"51","isUse":"1","speed":str(8*1000)} # {"oneshot":"0", "action":"51","isUse":"1","speed":str(8*1000)}
] ]))
+[make_world_step(*p) for p in result] for r in result:
+[ send_data(make_addrcc_data([r], '0'))
# send_data(make_addrcc_data(result[10:20]))
send_data(make_addrcc_data([
{"oneshot":"0", "action":"200","type":"0","io_status":"0", "point":"14"},
# {"oneshot":"0", "action":"51","isUse":"0"}, # {"oneshot":"0", "action":"51","isUse":"0"},
# {"oneshot":"0", "action":"200","type":"0","io_status":"0", "point":"14"}, ], '0'))
]
))
print('remote command count', send_data(make_query_data(['RemoteCmdLen']))) print('remote command count', send_data(make_query_data(['RemoteCmdLen'])))
send_data(make_command_data(['actionSingleCycle'])) send_data(make_command_data(['actionSingleCycle']))
# send_data(make_command_data(['actionStop'])) # send_data(make_command_data(['actionStop']))

View File

@ -1,89 +1,89 @@
X115.708 Y-36.446 Z-0.642 X115.708 Y-36.446 Z-0.642
X116.491 Y-33.849 U-9826.202 X116.491 Y-33.849 U-98.26201999999999
X117.134 Y-31.563 U-9825.081 X117.134 Y-31.563 U-98.25081
X117.807 Y-28.934 U-9823.799 X117.807 Y-28.934 U-98.23799000000001
X118.35 Y-26.622 U-9822.677 X118.35 Y-26.622 U-98.22677
X118.849 Y-24.3 U-9821.555 X118.849 Y-24.3 U-98.21555000000001
X119.367 Y-21.635 U-9820.273 X119.367 Y-21.635 U-98.20272999999999
X119.818 Y-18.957 U-9818.991 X119.818 Y-18.957 U-98.18991
X120.165 Y-16.607 U-9817.869 X120.165 Y-16.607 U-98.17869
X120.468 Y-14.251 U-9816.746 X120.468 Y-14.251 U-98.16745999999999
X120.726 Y-11.889 U-9815.624 X120.726 Y-11.889 U-98.15624
X120.938 Y-9.522 U-9814.502 X120.938 Y-9.522 U-98.14502
X121.099 Y-7.151 U-9813.379 X121.099 Y-7.151 U-98.13379
X121.214 Y-4.777 U-9812.257 X121.214 Y-4.777 U-98.12257
X121.284 Y-2.401 U-9811.134 X121.284 Y-2.401 U-98.11134
X121.308 Y-0.035 U-9810.017 X121.308 Y-0.035 U-98.10016999999999
X121.287 Y2.323 U-9808.903 X121.287 Y2.323 U-98.08903000000001
X121.222 Y4.679 U-9807.789 X121.222 Y4.679 U-98.07789000000001
X121.105 Y7.034 U-9806.676 X121.105 Y7.034 U-98.06675999999999
X120.944 Y9.387 U-9805.562 X120.944 Y9.387 U-98.05562
X120.739 Y11.736 U-9804.448 X120.739 Y11.736 U-98.04448000000001
X120.488 Y14.081 U-9803.334 X120.488 Y14.081 U-98.03334000000001
X120.193 Y16.421 U-9802.22 X120.193 Y16.421 U-98.0222
X119.853 Y18.755 U-9801.106 X119.853 Y18.755 U-98.01106
X119.464 Y21.081 U-9799.992 X119.464 Y21.081 U-97.99992
X119.03 Y23.4 U-9798.878 X119.03 Y23.4 U-97.98878
X118.552 Y25.71 U-9797.764 X118.552 Y25.71 U-97.97764
X118.03 Y28.011 U-9796.649 X118.03 Y28.011 U-97.96649
X117.464 Y30.302 U-9795.535 X117.464 Y30.302 U-97.95535
X116.855 Y32.581 U-9794.421 X116.855 Y32.581 U-97.94421
X116.197 Y34.847 U-9793.306 X116.197 Y34.847 U-97.93306000000001
X115.495 Y37.101 U-9792.191 X115.495 Y37.101 U-97.92191000000001
X114.726 Y39.417 U-9791.039 X114.726 Y39.417 U-97.91039
X113.876 Y41.82 U-9789.835 X113.876 Y41.82 U-97.89835
X112.914 Y44.34 U-9788.561 X112.914 Y44.34 U-97.88561
X112.03 Y46.528 U-9787.446 X112.03 Y46.528 U-97.87446
X111.104 Y48.7 U-9786.331 X111.104 Y48.7 U-97.86331
X110.136 Y50.853 U-9785.216 X110.136 Y50.853 U-97.85216
X109.128 Y52.988 U-9784.101 X109.128 Y52.988 U-97.84101000000001
X108.074 Y55.1 U-9782.986 X108.074 Y55.1 U-97.82986000000001
X106.98 Y57.193 U-9781.87 X106.98 Y57.193 U-97.8187
X105.846 Y59.264 U-9780.755 X105.846 Y59.264 U-97.80754999999999
X104.673 Y61.313 U-9779.64 X104.673 Y61.313 U-97.79639999999999
X103.461 Y63.34 U-9778.525 X103.461 Y63.34 U-97.78524999999999
X102.21 Y65.343 U-9777.409 X102.21 Y65.343 U-97.77409
X100.728 Y67.599 U-9776.134 X100.728 Y67.599 U-97.76134
X99.392 Y69.547 U-9775.019 X99.392 Y69.547 U-97.75019
X98.02 Y71.469 U-9773.903 X98.02 Y71.469 U-97.73903
X96.611 Y73.365 U-9772.787 X96.611 Y73.365 U-97.72787
X95.166 Y75.234 U-9771.672 X95.166 Y75.234 U-97.71672000000001
X93.681 Y77.071 U-9770.556 X93.681 Y77.071 U-97.70556
X92.161 Y78.88 U-9769.44 X92.161 Y78.88 U-97.6944
X90.607 Y80.659 U-9768.324 X90.607 Y80.659 U-97.68324000000001
X89.019 Y82.409 U-9767.208 X89.019 Y82.409 U-97.67208000000001
X87.398 Y84.128 U-9766.092 X87.398 Y84.128 U-97.66092
X85.745 Y85.816 U-9764.976 X85.745 Y85.816 U-97.64976
X83.811 Y87.701 U-9763.701 X83.811 Y87.701 U-97.63700999999999
X82.086 Y89.317 U-9762.584 X82.086 Y89.317 U-97.62584000000001
X80.331 Y90.899 U-9761.468 X80.331 Y90.899 U-97.61468
X78.546 Y92.448 U-9760.352 X78.546 Y92.448 U-97.60352
X76.731 Y93.962 U-9759.236 X76.731 Y93.962 U-97.59236000000001
X74.884 Y95.438 U-9758.119 X74.884 Y95.438 U-97.58119
X73.01 Y96.877 U-9757.003 X73.01 Y96.877 U-97.57003
X71.108 Y98.281 U-9755.886 X71.108 Y98.281 U-97.55886000000001
X69.18 Y99.649 U-9754.77 X69.18 Y99.649 U-97.5477
X67.225 Y100.979 U-9753.653 X67.225 Y100.979 U-97.53653
X65.246 Y102.272 U-9752.537 X65.246 Y102.272 U-97.52537000000001
X62.95 Y103.696 U-9751.26 X62.95 Y103.696 U-97.5126
X60.917 Y104.903 U-9750.144 X60.917 Y104.903 U-97.50144
X58.861 Y106.071 U-9749.027 X58.861 Y106.071 U-97.49027
X56.783 Y107.199 U-9747.91 X56.783 Y107.199 U-97.4791
X54.684 Y108.288 U-9746.793 X54.684 Y108.288 U-97.46793
X52.562 Y109.331 U-9745.676 X52.562 Y109.331 U-97.45675999999999
X50.42 Y110.334 U-9744.559 X50.42 Y110.334 U-97.44559
X48.259 Y111.295 U-9743.442 X48.259 Y111.295 U-97.43441999999999
X46.08 Y112.215 U-9742.325 X46.08 Y112.215 U-97.42325000000001
X43.884 Y113.094 U-9741.208 X43.884 Y113.094 U-97.41208
X41.672 Y113.93 U-9740.091 X41.672 Y113.93 U-97.40091000000001
X39.442 Y114.719 U-9738.974 X39.442 Y114.719 U-97.38974
X37.197 Y115.464 U-9737.856 X37.197 Y115.464 U-97.37856
X34.938 Y116.167 U-9736.739 X34.938 Y116.167 U-97.36739
X32.646 Y116.835 U-9735.611 X32.646 Y116.835 U-97.35611
X30.357 Y117.452 U-9734.492 X30.357 Y117.452 U-97.34492
X28.06 Y118.02 U-9733.374 X28.06 Y118.02 U-97.33373999999999
X25.753 Y118.543 U-9732.257 X25.753 Y118.543 U-97.32257
X23.436 Y119.022 U-9731.139 X23.436 Y119.022 U-97.31138999999999
X21.11 Y119.457 U-9730.021 X21.11 Y119.457 U-97.30021
X18.776 Y119.848 U-9728.904 X18.776 Y119.848 U-97.28904
X16.435 Y120.193 U-9727.786 X16.435 Y120.193 U-97.27786

View File

@ -25,7 +25,7 @@ with open(file, 'r') as fp:
step = prep['G'] step = prep['G']
if step == '01': if step == '01':
if 'C' in prep: if 'C' in prep:
prep['U'] = prep.pop('C') prep['U'] = float(prep.pop('C')) / 100
result.append([f"{p}{prep[p]}" for p in prep if p in ['X', 'Y', 'Z', 'U', 'V', 'W']]) 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: with open(f"{file}.result", 'w') as fp: