封膜仪、撕膜仪、耗材站接口

This commit is contained in:
Guangxin Zhang
2025-06-07 22:20:20 +08:00
committed by Xuwznln
parent 0c55147ee4
commit eed233fa76
3 changed files with 220 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
import serial
import time
class SealRemoverController:
def __init__(self, port='COM17', baudrate=9600, timeout=2):
self.ser = serial.Serial(port, baudrate, timeout=timeout)
def send_command(self, command):
full_cmd = f"{command}\r\n".encode('ascii')
self.ser.write(full_cmd)
time.sleep(0.5) # 稍等设备响应
return self.read_response()
def read_response(self):
lines = []
while self.ser.in_waiting:
line = self.ser.readline().decode('ascii').strip()
lines.append(line)
return lines
def reset(self):
return self.send_command("*reset")
def restart(self):
return self.send_command("*restart")
def check_status(self):
return self.send_command("*stat")
def move_in(self):
return self.send_command("*movein")
def move_out(self):
return self.send_command("*moveout")
def move_up(self):
return self.send_command("*moveup")
def move_down(self):
return self.send_command("*movedown")
def peel(self, param_set=1, adhere_time=1):
# param_set: 1~9, adhere_time: 1(2.5s) ~ 4(10s)
return self.send_command(f"*xpeel:{param_set}{adhere_time}")
def check_tape(self):
return self.send_command("*tapeleft")
def close(self):
self.ser.close()
if __name__ == "__main__":
remover = SealRemoverController(port='COM17')
remover.restart # "restart"
remover.check_status() # "检查状态:"
remover.reset() # 复位设备
remover.peel(param_set=4, adhere_time=1) #执行撕膜操作,慢速+2.5s
remover.move_out() # 送出板子
remover.close()