添加中转点和破袋点
This commit is contained in:
206
app.py
206
app.py
@ -17,9 +17,9 @@ from CU.Command import FeedCommand
|
||||
from CU.Feeding import FeedLine, FeedingConfig, Feeding, FeedStatus
|
||||
from Util.util_log import QTextEditLogger
|
||||
from Vision.camera_coordinate_dete import Detection
|
||||
from ui_untitled import Ui_MainWindow
|
||||
from ui_untitled import Ui_MainWindow
|
||||
from COM.COM_Robot import RobotClient
|
||||
from Expection import Error_Code
|
||||
from Expection import Error_Code
|
||||
from queue import Queue
|
||||
from Model.RobotModel import *
|
||||
import time
|
||||
@ -29,9 +29,7 @@ from threading import Thread
|
||||
from CU.Command import Status
|
||||
|
||||
|
||||
|
||||
|
||||
class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
class MainWindow(QMainWindow, Ui_MainWindow):
|
||||
def __init__(self):
|
||||
super(MainWindow, self).__init__()
|
||||
self.setupUi(self)
|
||||
@ -92,22 +90,19 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.pushButton_speed.clicked.connect(self.send_setSpeed_label_doubelClick)
|
||||
self.lineEdit_speed.returnPressed.connect(self.send_setSpeed_lineEdit_returePressed)
|
||||
|
||||
|
||||
|
||||
self.lineEdit_num.returnPressed.connect(self.send_custom_num_returnPressed)
|
||||
int_validator = QIntValidator(0, 100, self.lineEdit_num)
|
||||
self.lineEdit_num.setValidator(int_validator)
|
||||
|
||||
# self.horizontalSlider_J1.sliderReleased
|
||||
self.pushButton_startFeed.clicked.connect(self.send_startFeed_button_click)
|
||||
self.pushButton_stack_feedControl.clicked.connect(lambda _, index=0: self.send_stack_feedSet_button_click(index))
|
||||
self.pushButton_stack_feedSet.clicked.connect(lambda _,index=1:self.send_stack_feedSet_button_click(index))
|
||||
|
||||
self.pushButton_stack_feedControl.clicked.connect(
|
||||
lambda _, index=0: self.send_stack_feedSet_button_click(index))
|
||||
self.pushButton_stack_feedSet.clicked.connect(lambda _, index=1: self.send_stack_feedSet_button_click(index))
|
||||
|
||||
self.horizontalSlider_feedingNum.blockSignals(True)
|
||||
self.horizontalSlider_feedingNum.setMinimum(0)
|
||||
|
||||
|
||||
self.lineEdit_speed.hide()
|
||||
self.pushButton_stopFeed.hide()
|
||||
self.pushButton_pauseFeed.hide()
|
||||
@ -127,8 +122,8 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
port = int(self.configReader.get('Robot_Feed', 'Port'))
|
||||
|
||||
self.robotClient = RobotClient(ip, port, self.command_position_quene, self.status_address)
|
||||
self.feeding = Feeding(self.robotClient,self.detection) # 临时
|
||||
self.last_time=time.time()
|
||||
self.feeding = Feeding(self.robotClient, self.detection) # 临时
|
||||
self.last_time = time.time()
|
||||
|
||||
try:
|
||||
self.robotClient.CreatConnect()
|
||||
@ -142,18 +137,17 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
|
||||
def init_seting_frame(self):
|
||||
|
||||
rows = len(self.feedLine_dict.keys())+1
|
||||
rows = len(self.feedLine_dict.keys()) + 1
|
||||
self.tableWidget_feedSeting.setRowCount(rows)
|
||||
self.tableWidget_feedSeting.setColumnCount(19)
|
||||
# 设置第一重表头的合并 (三列一组)
|
||||
self.tableWidget_feedSeting_addtional_col_num = 2
|
||||
|
||||
self.tableWidget_feedSeting.setSpan(0, 0+self.tableWidget_feedSeting_addtional_col_num, 1, 6) # 合并前3列
|
||||
self.tableWidget_feedSeting.setSpan(0, 6+self.tableWidget_feedSeting_addtional_col_num, 1, 6) # 合并后3列
|
||||
self.tableWidget_feedSeting.setSpan(0, 12+self.tableWidget_feedSeting_addtional_col_num, 1, 6) # 合并后3列
|
||||
self.tableWidget_feedSeting.setSpan(0, 0 + self.tableWidget_feedSeting_addtional_col_num, 1, 6) # 合并前3列
|
||||
self.tableWidget_feedSeting.setSpan(0, 6 + self.tableWidget_feedSeting_addtional_col_num, 1, 6) # 合并后3列
|
||||
self.tableWidget_feedSeting.setSpan(0, 12 + self.tableWidget_feedSeting_addtional_col_num, 1, 6) # 合并后3列
|
||||
self.tableWidget_feedSeting.itemChanged.connect(self.send_tabelFeedSet_itemChanged)
|
||||
|
||||
|
||||
btn_safe = QPushButton("获取安全位置")
|
||||
|
||||
widget_safe = QWidget()
|
||||
@ -163,7 +157,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
layout_safe.setContentsMargins(0, 0, 0, 0)
|
||||
# 将布局设置到 QWidget 容器中
|
||||
widget_safe.setLayout(layout_safe)
|
||||
|
||||
|
||||
btn_photo = QPushButton("获取拍照位置")
|
||||
widget_photo = QWidget()
|
||||
layout_photo = QHBoxLayout()
|
||||
@ -172,8 +166,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
layout_photo.setContentsMargins(0, 0, 0, 0)
|
||||
# 将布局设置到 QWidget 容器中
|
||||
widget_photo.setLayout(layout_photo)
|
||||
|
||||
|
||||
|
||||
btn_feed = QPushButton("获取投料位置")
|
||||
widget_feed = QWidget()
|
||||
layout_feed = QHBoxLayout()
|
||||
@ -183,29 +176,31 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
# 将布局设置到 QWidget 容器中
|
||||
widget_feed.setLayout(layout_feed)
|
||||
|
||||
|
||||
btn_safe.clicked.connect(self.send_get_safe_position_button_click)
|
||||
btn_photo.clicked.connect(self.send_get_photo_position_button_click)
|
||||
btn_feed.clicked.connect(self.send_get_feed_position_button_click)
|
||||
# 添加第一重表头项
|
||||
|
||||
self.tableWidget_feedSeting.setCellWidget(0, 0+self.tableWidget_feedSeting_addtional_col_num, widget_safe)
|
||||
self.tableWidget_feedSeting.setCellWidget(0, 6+self.tableWidget_feedSeting_addtional_col_num, widget_photo)
|
||||
self.tableWidget_feedSeting.setCellWidget(0, 12+self.tableWidget_feedSeting_addtional_col_num, widget_feed) # 设置在合并的第2组
|
||||
self.tableWidget_feedSeting.setCellWidget(0, 0 + self.tableWidget_feedSeting_addtional_col_num, widget_safe)
|
||||
self.tableWidget_feedSeting.setCellWidget(0, 6 + self.tableWidget_feedSeting_addtional_col_num, widget_photo)
|
||||
self.tableWidget_feedSeting.setCellWidget(0, 12 + self.tableWidget_feedSeting_addtional_col_num,
|
||||
widget_feed) # 设置在合并的第2组
|
||||
|
||||
self.tableWidget_feedSeting.setSelectionBehavior(QTableWidget.SelectRows)
|
||||
self.tableWidget_feedSeting.setAutoScroll(True)
|
||||
# 添加第二重表头
|
||||
self.tableWidget_feedSeting.setHorizontalHeaderLabels(['header','线名','X1','Y1','Z1','U1','V1','W1','X2','Y2','Z2','U2','V2','W2','X3','Y3','Z3','U3','V3','W3'])
|
||||
self.tableWidget_feedSeting.setHorizontalHeaderLabels(
|
||||
['header', '线名', 'X1', 'Y1', 'Z1', 'U1', 'V1', 'W1', 'X2', 'Y2', 'Z2', 'U2', 'V2', 'W2', 'X3', 'Y3', 'Z3',
|
||||
'U3', 'V3', 'W3'])
|
||||
|
||||
self.tableWidget_feedSeting.hideColumn(0)
|
||||
# 填充数据行
|
||||
for row,(feed_line_key,feed_line)in enumerate(self.feedLine_dict.items()):
|
||||
self.tableWidget_feedSeting.setItem(row+1, 0, QTableWidgetItem(feed_line_key))
|
||||
self.tableWidget_feedSeting.setItem(row+1, 1, QTableWidgetItem(feed_line.name))
|
||||
self.set_position_to_tabel(row+1, 0, feed_line.safe_position)
|
||||
self.set_position_to_tabel(row+1, 1, feed_line.photo_position)
|
||||
self.set_position_to_tabel(row+1, 2, feed_line.feed_position)
|
||||
for row, (feed_line_key, feed_line) in enumerate(self.feedLine_dict.items()):
|
||||
self.tableWidget_feedSeting.setItem(row + 1, 0, QTableWidgetItem(feed_line_key))
|
||||
self.tableWidget_feedSeting.setItem(row + 1, 1, QTableWidgetItem(feed_line.name))
|
||||
self.set_position_to_tabel(row + 1, 0, feed_line.safe_position)
|
||||
self.set_position_to_tabel(row + 1, 1, feed_line.photo_position)
|
||||
self.set_position_to_tabel(row + 1, 2, feed_line.feed_position)
|
||||
|
||||
# 禁用自动表头
|
||||
self.tableWidget_feedSeting.verticalHeader().setVisible(True)
|
||||
@ -213,17 +208,18 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.pushButton_tableFeedSet_deleRow.clicked.connect(self.send_tabelFeedSet_delRow)
|
||||
self.pushButton_tableFeedSet_save.clicked.connect(self.send_tabelFeedSet_save)
|
||||
|
||||
|
||||
def init_FeedLine(self):
|
||||
line_count = self.configReader.get('Robot_Feed', 'LineCount', fallback=0)
|
||||
self.configReader.read(Constant.feedLine_set_file, encoding='utf-8')
|
||||
for i in range(int(line_count)):
|
||||
line_str = f'FeedLine{i+1}'
|
||||
line_str = f'FeedLine{i + 1}'
|
||||
safe_position = Real_Position()
|
||||
photo_position = Real_Position()
|
||||
mid_position = Real_Position()
|
||||
broken_position = Real_Position()
|
||||
feed_position = Real_Position()
|
||||
|
||||
safe_position.X = float(self.configReader.get(line_str, 'SafePosition_x', fallback=0))
|
||||
safe_position.X = float(self.configReader.get(line_str, 'SafePosition_x', fallback=0))
|
||||
safe_position.Y = float(self.configReader.get(line_str, 'SafePosition_y', fallback=0))
|
||||
safe_position.Z = float(self.configReader.get(line_str, 'SafePosition_z', fallback=0))
|
||||
safe_position.U = float(self.configReader.get(line_str, 'SafePosition_u', fallback=0))
|
||||
@ -237,6 +233,19 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
photo_position.V = float(self.configReader.get(line_str, 'PhotoPosition_v', fallback=0))
|
||||
photo_position.W = float(self.configReader.get(line_str, 'PhotoPosition_w', fallback=0))
|
||||
|
||||
mid_position.X = float(self.configReader.get(line_str, 'MidPosition_x', fallback=0))
|
||||
mid_position.Y = float(self.configReader.get(line_str, 'MidPosition_y', fallback=0))
|
||||
mid_position.Z = float(self.configReader.get(line_str, 'MidPosition_z', fallback=0))
|
||||
mid_position.U = float(self.configReader.get(line_str, 'MidPosition_u', fallback=0))
|
||||
mid_position.V = float(self.configReader.get(line_str, 'MidPosition_v', fallback=0))
|
||||
mid_position.W = float(self.configReader.get(line_str, 'MidPosition_w', fallback=0))
|
||||
|
||||
broken_position.X = float(self.configReader.get(line_str, 'BrokenPosition_x', fallback=0))
|
||||
broken_position.Y = float(self.configReader.get(line_str, 'BrokenPosition_y', fallback=0))
|
||||
broken_position.Z = float(self.configReader.get(line_str, 'BrokenPosition_z', fallback=0))
|
||||
broken_position.U = float(self.configReader.get(line_str, 'BrokenPosition_u', fallback=0))
|
||||
broken_position.V = float(self.configReader.get(line_str, 'BrokenPosition_v', fallback=0))
|
||||
broken_position.W = float(self.configReader.get(line_str, 'BrokenPosition_w', fallback=0))
|
||||
|
||||
feed_position.X = float(self.configReader.get(line_str, 'FeedPosition_x', fallback=0))
|
||||
feed_position.Y = float(self.configReader.get(line_str, 'FeedPosition_y', fallback=0))
|
||||
@ -246,7 +255,9 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
feed_position.W = float(self.configReader.get(line_str, 'FeedPosition_w', fallback=0))
|
||||
|
||||
name = self.configReader.get(line_str, 'Name', fallback='未命名')
|
||||
self.feedLine_dict[f'{Constant.feedLine_set_section}{i+1}'] = FeedLine(name ,safe_position, photo_position, feed_position)
|
||||
self.feedLine_dict[f'{Constant.feedLine_set_section}{i + 1}'] = FeedLine(name, safe_position,
|
||||
photo_position, mid_position,
|
||||
broken_position, feed_position)
|
||||
self.init_seting_frame()
|
||||
self.updateUI_Select_Line()
|
||||
pass
|
||||
@ -298,7 +309,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
|
||||
def send_startFeed_button_click(self):
|
||||
num = self.horizontalSlider_feedingNum.maximum()
|
||||
line_index = str(self.comboBox_lineIndex.currentIndex()+1)
|
||||
line_index = str(self.comboBox_lineIndex.currentIndex() + 1)
|
||||
line_head = self.comboBox_lineIndex.currentData()
|
||||
self.command_quene.put(FeedCommand(FeedingConfig(num, self.feedLine_dict[line_head])))
|
||||
self.stackedWidget_num.setCurrentIndex(1)
|
||||
@ -340,8 +351,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
pass
|
||||
elif 'j6' in btn_str:
|
||||
x6 = x6 - Constant.manual_adjust_accuracy
|
||||
self.send_position_command(x1,x2,x3,x4,x5,x6,MoveType.AXIS)
|
||||
|
||||
self.send_position_command(x1, x2, x3, x4, x5, x6, MoveType.AXIS)
|
||||
|
||||
def send_addOneAsix_button_click(self, btn):
|
||||
btn_str = self.sender().objectName()
|
||||
@ -370,12 +380,11 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
x6 = x6 + Constant.manual_adjust_accuracy
|
||||
self.send_position_command(x1, x2, x3, x4, x5, x6, move_type=MoveType.AXIS)
|
||||
|
||||
|
||||
def send_addNum_button_click(self):
|
||||
self.feeding.feedConfig.num +=1
|
||||
self.feeding.feedConfig.num += 1
|
||||
|
||||
def send_subNum_button_click(self):
|
||||
self.feeding.feedConfig.num -=1
|
||||
self.feeding.feedConfig.num -= 1
|
||||
|
||||
def send_custom_num_returnPressed(self):
|
||||
self.pushButton_num_free.show()
|
||||
@ -384,14 +393,12 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.horizontalSlider_feedingNum.setValue(0)
|
||||
self.label_maxNum.setText(self.lineEdit_num.text())
|
||||
|
||||
def send_stack_feedSet_button_click(self,index):
|
||||
#self.logger.info("This is an info message")
|
||||
def send_stack_feedSet_button_click(self, index):
|
||||
# self.logger.info("This is an info message")
|
||||
self.stackedWidget_feed.setCurrentIndex(index)
|
||||
if index == 0:
|
||||
self.updateUI_Select_Line()
|
||||
|
||||
|
||||
|
||||
def on_button_click(self):
|
||||
self.button.setText("Clicked!")
|
||||
|
||||
@ -402,6 +409,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
# request_command = vars(cmd_command)
|
||||
# self.robotClient.add_sendQuene(request_command)
|
||||
return
|
||||
|
||||
def send_position_returnPressed(self):
|
||||
|
||||
self.send_position_command(float(self.lineEdit_j1.text()),
|
||||
@ -415,6 +423,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.pushButton_speed.hide()
|
||||
self.lineEdit_speed.show()
|
||||
pass
|
||||
|
||||
def send_setSpeed_lineEdit_returePressed(self):
|
||||
Constant.speed = float(self.lineEdit_speed.text())
|
||||
self.lineEdit_speed.hide()
|
||||
@ -422,29 +431,32 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.pushButton_speed.show()
|
||||
pass
|
||||
|
||||
|
||||
def send_get_safe_position_button_click(self):
|
||||
real_position = self.robotClient.status_model.getRealPosition()
|
||||
row_i = self.tableWidget_feedSeting.currentRow()
|
||||
head = self.tableWidget_feedSeting.item(row_i, 0).text()
|
||||
self.feedLine_dict[head].safe_position.init_position(real_position.X,real_position.Y,real_position.Z,real_position.U,real_position.V,real_position.W)
|
||||
self.set_position_to_tabel(row_i,0,real_position)
|
||||
self.feedLine_dict[head].safe_position.init_position(real_position.X, real_position.Y, real_position.Z,
|
||||
real_position.U, real_position.V, real_position.W)
|
||||
self.set_position_to_tabel(row_i, 0, real_position)
|
||||
|
||||
def send_get_photo_position_button_click(self):
|
||||
real_position = self.robotClient.status_model.getRealPosition()
|
||||
row_i = self.tableWidget_feedSeting.currentRow()
|
||||
head = self.tableWidget_feedSeting.item(row_i, 0).text()
|
||||
self.feedLine_dict[head].photo_position.init_position(real_position.X, real_position.Y, real_position.Z, real_position.U, real_position.V, real_position.W)
|
||||
self.feedLine_dict[head].photo_position.init_position(real_position.X, real_position.Y, real_position.Z,
|
||||
real_position.U, real_position.V, real_position.W)
|
||||
self.set_position_to_tabel(row_i, 1, real_position)
|
||||
|
||||
def send_get_feed_position_button_click(self):
|
||||
real_position = self.robotClient.status_model.getRealPosition()
|
||||
row_i = self.tableWidget_feedSeting.currentRow()
|
||||
head = self.tableWidget_feedSeting.item(row_i, 0).text()
|
||||
self.feedLine_dict[head].feed_position.init_position(real_position.X, real_position.Y, real_position.Z, real_position.U, real_position.V, real_position.W)
|
||||
self.feedLine_dict[head].feed_position.init_position(real_position.X, real_position.Y, real_position.Z,
|
||||
real_position.U, real_position.V, real_position.W)
|
||||
self.set_position_to_tabel(row_i, 2, real_position)
|
||||
|
||||
def send_tabelFeedSet_addRow(self):
|
||||
for i in range(1,20):
|
||||
for i in range(1, 20):
|
||||
head = f'{Constant.feedLine_set_section}{i}'
|
||||
if head not in self.feedLine_dict:
|
||||
row_position = self.tableWidget_feedSeting.rowCount() # 当前行数
|
||||
@ -488,9 +500,8 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.send_clear_auto_command()
|
||||
#
|
||||
|
||||
|
||||
def send_pauseFeed_button_click(self):
|
||||
if self.pushButton_pauseFeed.text()=='暂停':
|
||||
if self.pushButton_pauseFeed.text() == '暂停':
|
||||
self.pushButton_pauseFeed.setText('继续')
|
||||
self.send_pause_command(True)
|
||||
else:
|
||||
@ -498,6 +509,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.send_pause_command(False)
|
||||
|
||||
pass
|
||||
|
||||
def send_tabelFeedSet_itemChanged(self, item):
|
||||
row = item.row()
|
||||
column = item.column()
|
||||
@ -505,48 +517,45 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
head = self.tableWidget_feedSeting.item(row, 0).text()
|
||||
if column == 1:
|
||||
self.feedLine_dict[head].name = value
|
||||
elif column==(0+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (0 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].safe_position.X = float(value)
|
||||
elif column == (1+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (1 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].safe_position.Y = float(value)
|
||||
elif column == (2+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (2 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].safe_position.Z = float(value)
|
||||
elif column == (3+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (3 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].safe_position.U = float(value)
|
||||
elif column == (4+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (4 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].safe_position.V = float(value)
|
||||
elif column == (5+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (5 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].safe_position.W = float(value)
|
||||
# elif column == 7:
|
||||
elif column==(6+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (6 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].photo_position.X = float(value)
|
||||
elif column == (7+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (7 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].photo_position.Y = float(value)
|
||||
elif column == (8+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (8 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].photo_position.Z = float(value)
|
||||
elif column == (9+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (9 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].photo_position.U = float(value)
|
||||
elif column == (10+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (10 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].photo_position.V = float(value)
|
||||
elif column == (11+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (11 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].photo_position.W = float(value)
|
||||
|
||||
elif column==(12+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (12 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].feed_position.X = float(value)
|
||||
elif column == (13+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (13 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].feed_position.Y = float(value)
|
||||
elif column == (14+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (14 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].feed_position.Z = float(value)
|
||||
elif column == (15+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (15 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].feed_position.U = float(value)
|
||||
elif column == (16+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (16 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].feed_position.V = float(value)
|
||||
elif column == (17+self.tableWidget_feedSeting_addtional_col_num):
|
||||
elif column == (17 + self.tableWidget_feedSeting_addtional_col_num):
|
||||
self.feedLine_dict[head].feed_position.W = float(value)
|
||||
|
||||
|
||||
|
||||
|
||||
def run(self):
|
||||
while True:
|
||||
time.sleep(0.2)
|
||||
@ -564,7 +573,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
print(Error_Code.SYS_NONEPoint)
|
||||
self.updateUI()
|
||||
|
||||
#pass #主线程
|
||||
# pass #主线程
|
||||
|
||||
def updateUI(self):
|
||||
if self.robotClient.connected:
|
||||
@ -572,7 +581,8 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
else:
|
||||
self.set_label_status_style(False)
|
||||
if self.feeding.feedStatus != FeedStatus.FNone:
|
||||
self.horizontalSlider_feedingNum.setValue(self.horizontalSlider_feedingNum.maximum()-self.feeding.feedConfig.num)
|
||||
self.horizontalSlider_feedingNum.setValue(
|
||||
self.horizontalSlider_feedingNum.maximum() - self.feeding.feedConfig.num)
|
||||
else:
|
||||
self.set_run_status_button(False)
|
||||
if self.feeding.feedStatus == FeedStatus.FNone:
|
||||
@ -586,8 +596,8 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
|
||||
def updateUI_Select_Line(self):
|
||||
self.comboBox_lineIndex.clear()
|
||||
for key,value in self.feedLine_dict.items():
|
||||
self.comboBox_lineIndex.addItem(value.name,key)
|
||||
for key, value in self.feedLine_dict.items():
|
||||
self.comboBox_lineIndex.addItem(value.name, key)
|
||||
|
||||
def updateUI_Position(self):
|
||||
self.horizontalSlider_J1.setValue(self.status_address.axis_0)
|
||||
@ -604,13 +614,19 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.label_j5.setText(str(self.status_address.axis_4))
|
||||
self.label_j6.setText(str(self.status_address.axis_5))
|
||||
|
||||
def set_position_to_tabel(self,row_i,position_j,real_Position:Real_Position):
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j*6+self.tableWidget_feedSeting_addtional_col_num, QTableWidgetItem(str(real_Position.X)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j*6+1+self.tableWidget_feedSeting_addtional_col_num, QTableWidgetItem(str(real_Position.Y)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j*6+2+self.tableWidget_feedSeting_addtional_col_num, QTableWidgetItem(str(real_Position.Z)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j*6+3+self.tableWidget_feedSeting_addtional_col_num, QTableWidgetItem(str(real_Position.U)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j*6+4+self.tableWidget_feedSeting_addtional_col_num, QTableWidgetItem(str(real_Position.V)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j*6+5+self.tableWidget_feedSeting_addtional_col_num, QTableWidgetItem(str(real_Position.W)))
|
||||
def set_position_to_tabel(self, row_i, position_j, real_Position: Real_Position):
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j * 6 + self.tableWidget_feedSeting_addtional_col_num,
|
||||
QTableWidgetItem(str(real_Position.X)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j * 6 + 1 + self.tableWidget_feedSeting_addtional_col_num,
|
||||
QTableWidgetItem(str(real_Position.Y)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j * 6 + 2 + self.tableWidget_feedSeting_addtional_col_num,
|
||||
QTableWidgetItem(str(real_Position.Z)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j * 6 + 3 + self.tableWidget_feedSeting_addtional_col_num,
|
||||
QTableWidgetItem(str(real_Position.U)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j * 6 + 4 + self.tableWidget_feedSeting_addtional_col_num,
|
||||
QTableWidgetItem(str(real_Position.V)))
|
||||
self.tableWidget_feedSeting.setItem(row_i, position_j * 6 + 5 + self.tableWidget_feedSeting_addtional_col_num,
|
||||
QTableWidgetItem(str(real_Position.W)))
|
||||
|
||||
def set_label_status_style(self, connected: bool):
|
||||
if connected:
|
||||
@ -634,7 +650,8 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
qproperty-alignment: 'AlignCenter'; /* 设置文本居中 */
|
||||
}
|
||||
""")
|
||||
def set_run_status_button(self, isRuning:bool):
|
||||
|
||||
def set_run_status_button(self, isRuning: bool):
|
||||
self.pushButton_pauseFeed.setText("暂停")
|
||||
if isRuning:
|
||||
self.pushButton_pauseFeed.show()
|
||||
@ -644,13 +661,15 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.pushButton_pauseFeed.hide()
|
||||
self.pushButton_stopFeed.hide()
|
||||
self.pushButton_startFeed.show()
|
||||
|
||||
def send_clear_auto_command(self):
|
||||
clear_command = CMDInstructRequest()
|
||||
request_command = clear_command.toString()
|
||||
print(request_command)
|
||||
log_str = f'清除自动指令'
|
||||
self.command_quene.put(request_command)
|
||||
def send_position_command(self,x1,x2,x3,x4,x5,x6,move_type:MoveType=MoveType.WORLD):
|
||||
|
||||
def send_position_command(self, x1, x2, x3, x4, x5, x6, move_type: MoveType = MoveType.WORLD):
|
||||
position_instruction = Instruction()
|
||||
position_instruction.m0 = float(x1)
|
||||
position_instruction.m1 = float(x2)
|
||||
@ -662,17 +681,17 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
instruction_command = CMDInstructRequest()
|
||||
instruction_command.instructions.append(position_instruction)
|
||||
request_command = instruction_command.toString()
|
||||
log_str = f'移动到位置:{"自由路径" if move_type==MoveType.AXIS else "姿势直线"}:' \
|
||||
log_str = f'移动到位置:{"自由路径" if move_type == MoveType.AXIS else "姿势直线"}:' \
|
||||
f'm0:{position_instruction.m0}-' \
|
||||
f'm2:{position_instruction.m1}-' \
|
||||
f'm3:{position_instruction.m2}-' \
|
||||
f'm4:{position_instruction.m3}-' \
|
||||
f'm3:{position_instruction.m2}-' \
|
||||
f'm4:{position_instruction.m3}-' \
|
||||
f'm5:{position_instruction.m4}-' \
|
||||
f'm6:{position_instruction.m5}'
|
||||
self.logger_textEdit.info(log_str)
|
||||
self.robotClient.add_sendQuene(request_command)
|
||||
|
||||
def send_pause_command(self,pause:bool):
|
||||
def send_pause_command(self, pause: bool):
|
||||
pause_command = CMDRequest()
|
||||
pause_command.cmdData.append("actionPause")
|
||||
if pause:
|
||||
@ -684,7 +703,7 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
log_str = f'暂停:{pause}'
|
||||
self.robotClient.add_sendQuene(request_command)
|
||||
|
||||
def send_clear_alarm_command(self,pause:bool):
|
||||
def send_clear_alarm_command(self, pause: bool):
|
||||
pause_command = CMDRequest()
|
||||
pause_command.cmdData.append("clearAlarmContinue")
|
||||
pause_command.cmdData.append("1")
|
||||
@ -712,7 +731,6 @@ class MainWindow(QMainWindow,Ui_MainWindow):
|
||||
self.robotClient.add_sendQuene(request_command)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
app = QApplication(sys.argv)
|
||||
window = MainWindow()
|
||||
|
||||
Reference in New Issue
Block a user